@p4code/cli 0.8.0 → 0.8.1
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/dist/{AcpMcpStdioBridge-CfALMbjp.mjs → AcpMcpStdioBridge-DBONIB-w.mjs} +120 -19
- package/dist/AcpMcpStdioBridge-D_JnxPWS.mjs +4 -0
- package/dist/{Effect-zfMCY1g4.mjs → Effect-BahT0mOQ.mjs} +2 -2
- package/dist/bin.mjs +2 -2
- package/dist/{binCli-C3s3kGWK.mjs → binCli-mL63pmet.mjs} +7185 -5813
- package/dist/claude-history-worker.mjs +1 -1
- package/dist/{claudeHistoryWorker-CMjiofbZ.mjs → claudeHistoryWorker-v_0uyLGp.mjs} +2 -2
- package/dist/client/.vite/manifest.json +2114 -2088
- package/dist/client/assets/{AnimatedHeight-BwS0L5jd.js → AnimatedHeight-CcLJhBdM.js} +2 -2
- package/dist/client/assets/{AuthSurfaceShell-B5dTwcVl.js → AuthSurfaceShell-DV9IfxfT.js} +2 -2
- package/dist/client/assets/{CSPContext-B1m61J9R.js → CSPContext-5fUBIm56.js} +2 -2
- package/dist/client/assets/ChatGptUsageButton-BjxGhmRJ.js +2 -0
- package/dist/client/assets/ChatMarkdown-S_dLZdsH.js +65 -0
- package/dist/client/assets/{CodexSetupSection.logic-BpefaM8S.js → CodexSetupSection.logic-CpyIRPfJ.js} +2 -2
- package/dist/client/assets/{ComboboxClear-CSnbXRcJ.js → ComboboxClear-DCanpiKf.js} +2 -2
- package/dist/client/assets/{CommandBlock-DcgLBXYD.js → CommandBlock-CCY3uLti.js} +2 -2
- package/dist/client/assets/{ComposerPromptEditor-oniaSNnQ.js → ComposerPromptEditor-CTei4iV_.js} +13 -13
- package/dist/client/assets/{CompositeRoot-ykxKqF8U.js → CompositeRoot-Dz15SC7i.js} +2 -2
- package/dist/client/assets/{ConnectionStatusDot-BvfbN2Tp.js → ConnectionStatusDot-BXxnqJgm.js} +2 -2
- package/dist/client/assets/{DevicePanel-wE6eEt9P.js → DevicePanel-hMvCLVG0.js} +2 -2
- package/dist/client/assets/{DeviceSetup-kaQqI-00.js → DeviceSetup--U2_cth3.js} +2 -2
- package/dist/client/assets/{DialogTitle-Cwi7QOum.js → DialogTitle-CdRWiE23.js} +2 -2
- package/dist/client/assets/{DiffCommentAnnotation-CnCPh4ot.js → DiffCommentAnnotation-BO9ZEof3.js} +3 -3
- package/dist/client/assets/DiffFileTree-DOh6vP89.js +2 -0
- package/dist/client/assets/DiffPanel-BdHAXHTV.js +2 -0
- package/dist/client/assets/{DiffWorkerPoolProvider-C8TyWhmO.js → DiffWorkerPoolProvider-HxohyeGq.js} +3 -3
- package/dist/client/assets/{EnvironmentMachineIcon-CBS8TSmT.js → EnvironmentMachineIcon-DYqBsAxl.js} +2 -2
- package/dist/client/assets/{ExpandableText-CWbIeyDn.js → ExpandableText-B9MQs34j.js} +3 -3
- package/dist/client/assets/{FieldControl-CWR3fEt0.js → FieldControl-DuWupdaP.js} +2 -2
- package/dist/client/assets/{FileDiff-BiIVs0i-.js → FileDiff-XdtrigfB.js} +2 -2
- package/dist/client/assets/{FilePreviewPanel-CXgaN8cb.js → FilePreviewPanel-Dj_tLsu8.js} +5 -5
- package/dist/client/assets/{FoldedSettingsSection-BimbnaOl.js → FoldedSettingsSection-CJhrFR0_.js} +2 -2
- package/dist/client/assets/{FormContext-DyOeI4sU.js → FormContext-DzMW0viI.js} +2 -2
- package/dist/client/assets/{Icons-BlUgSxml.js → Icons-DJ824_3l.js} +2 -2
- package/dist/client/assets/{KeybindingsSettings.logic-Dfld_XQx.js → KeybindingsSettings.logic-DBks3HZy.js} +2 -2
- package/dist/client/assets/{NoProjectsHero-ZE4gAFj0.js → NoProjectsHero-DyYs0dvZ.js} +2 -2
- package/dist/client/assets/{PanelLayoutControls-x5a58Pdn.js → PanelLayoutControls-DmAKKHlt.js} +10 -10
- package/dist/client/assets/{PierreEntryIcon-DeBbijxO.js → PierreEntryIcon-uqPwKknu.js} +2 -2
- package/dist/client/assets/{PreviewPanel-2vuw0skj.js → PreviewPanel-BQkFJlas.js} +2 -2
- package/dist/client/assets/ProjectDefaultsSettings-DglkVzkM.js +2 -0
- package/dist/client/assets/{ProjectFavicon-BhJj4G_1.js → ProjectFavicon-CDpXbAhP.js} +3 -3
- package/dist/client/assets/ProjectIconPickerDialog-yxBKY_6V.js +2 -0
- package/dist/client/assets/{ProjectMonogram-BgobvHld.js → ProjectMonogram-Dd6xeLhS.js} +2 -2
- package/dist/client/assets/{ProviderAuthTerminal-CJSJcjB9.js → ProviderAuthTerminal-DgUIYMm9.js} +2 -2
- package/dist/client/assets/{ProviderModelPicker-riIGf-PI.js → ProviderModelPicker-lxEwYGAB.js} +2 -2
- package/dist/client/assets/{ProviderSettingsForm-Dh_vspcE.js → ProviderSettingsForm-DGMc_kKy.js} +2 -2
- package/dist/client/assets/{PullRequestCodeTab-Do36z71f.js → PullRequestCodeTab-CXrKDJ3m.js} +3 -3
- package/dist/client/assets/{ReadOnlySourcePreview-BfLIaC5x.js → ReadOnlySourcePreview-DkXxXiTJ.js} +2 -2
- package/dist/client/assets/{RedactedSensitiveText-D5aX1wQs.js → RedactedSensitiveText-DtYR94zZ.js} +2 -2
- package/dist/client/assets/{RenderErrorBoundary-DTEG6arv.js → RenderErrorBoundary-Dla4qj6V.js} +2 -2
- package/dist/client/assets/ScheduledTasksSettings-2vzTutJz.js +4 -0
- package/dist/client/assets/ScopedSwitch-BdMg8rKM.js +2 -0
- package/dist/client/assets/{SettingsPanels-Betza2Al.js → SettingsPanels-XjjE56Xl.js} +7 -7
- package/dist/client/assets/{SettingsPanels.logic-Dn2Jcxyy.js → SettingsPanels.logic-DSOfF88n.js} +2 -2
- package/dist/client/assets/{SettingsScopeNotice-CAaNSKvu.js → SettingsScopeNotice-um2bOG_J.js} +2 -2
- package/dist/client/assets/{T3ConnectAccountPages-DEqOE3hy.js → T3ConnectAccountPages-Dx0LK6U5.js} +2 -2
- package/dist/client/assets/{T3ConnectSidebarSignIn-C4jpzdPh.js → T3ConnectSidebarSignIn-2r05ubXZ.js} +2 -2
- package/dist/client/assets/{ThemeEditorPanel-BBkly3jP.js → ThemeEditorPanel-CnhjGelD.js} +3 -3
- package/dist/client/assets/{ThreadTerminalDrawer-Z7ArIuq0.js → ThreadTerminalDrawer-BzElqolI.js} +4 -4
- package/dist/client/assets/{UsageLimits-7-_nKQT_.js → UsageLimits-B_IIjpyx.js} +2 -2
- package/dist/client/assets/{Virtualizer-EvXC5PAR.js → Virtualizer-DItXd38b.js} +2 -2
- package/dist/client/assets/WorkspaceBreadcrumb-Y41aNu4D.js +2 -0
- package/dist/client/assets/WorkspacePageContainer-D3YV5jc4.js +2 -0
- package/dist/client/assets/{WorkspacePageHeader-DB9Z9OtR.js → WorkspacePageHeader-Dduxade-.js} +2 -2
- package/dist/client/assets/_chat-B4G7pIId.js +58 -0
- package/dist/client/assets/{_chat.index-CTfxLY4F.js → _chat.index-BGOR58rk.js} +2 -2
- package/dist/client/assets/{_chat.new-B_FNmP8f.js → _chat.new-CioC4l4P.js} +3 -3
- package/dist/client/assets/_chat.pull-requests-Cs7eiOH6.js +2 -0
- package/dist/client/assets/{abnfDiagram-VCTEODGH-Du15a8Yu.js → abnfDiagram-VCTEODGH-l9yoycqs.js} +2 -2
- package/dist/client/assets/{alert-DUQHh6vz.js → alert-B49R80NU.js} +2 -2
- package/dist/client/assets/architecture-7GRP2DOG-B67w-l9F.js +1 -0
- package/dist/client/assets/{architectureDiagram-5GKGNRK7-DhXH9Bsf.js → architectureDiagram-5GKGNRK7-BQwAkSAo.js} +2 -2
- package/dist/client/assets/arrow-left-D1nB4UjJ.js +1 -0
- package/dist/client/assets/arrow-right-Cbg5uZyw.js +1 -0
- package/dist/client/assets/arrow-up-down-DRcJBavW.js +1 -0
- package/dist/client/assets/assets-CLIqG-m-.js +2 -0
- package/dist/client/assets/bell-D5jiydSo.js +1 -0
- package/dist/client/assets/{blockDiagram-I7D4REHJ-CZ4PIO64.js → blockDiagram-I7D4REHJ-C1YTuxst.js} +2 -2
- package/dist/client/assets/blocks-mHGBm843.js +1 -0
- package/dist/client/assets/bot-Db9dBVz5.js +1 -0
- package/dist/client/assets/{browserHistoryStore-D6A_83JY.js → browserHistoryStore-D6dhsqE8.js} +2 -2
- package/dist/client/assets/{browserLinkTarget-BuFHp5RQ.js → browserLinkTarget-D0HujxdB.js} +2 -2
- package/dist/client/assets/{c4Diagram-7LVT6UL2-tMXW_Jy8.js → c4Diagram-7LVT6UL2-DpPcyaba.js} +2 -2
- package/dist/client/assets/calendar-clock-KAbrMUlv.js +1 -0
- package/dist/client/assets/channel-D8Is9vbt.js +2 -0
- package/dist/client/assets/chart-no-axes-column-CnM4ppv4.js +1 -0
- package/dist/client/assets/checkbox-WRJ0D_10.js +2 -0
- package/dist/client/assets/{chunk-4HAMMTFA-gISFFADw.js → chunk-4HAMMTFA-C0t_GKFv.js} +2 -2
- package/dist/client/assets/{chunk-75Z2AOVW-iWd1WVXJ.js → chunk-75Z2AOVW-B6rgeqZP.js} +2 -2
- package/dist/client/assets/{chunk-DU6HZSFF-hD69jU_T.js → chunk-DU6HZSFF-BuYM0Cu8.js} +2 -2
- package/dist/client/assets/{chunk-F27PBJKO-DnDFIjHp.js → chunk-F27PBJKO-CvPd3lcw.js} +2 -2
- package/dist/client/assets/{chunk-GMAD6QVW-Chr0sR5B.js → chunk-GMAD6QVW-DbBkxyCE.js} +2 -2
- package/dist/client/assets/{chunk-GVQU2GXP-D84Xc6Vy.js → chunk-GVQU2GXP-CVZeJiG5.js} +2 -2
- package/dist/client/assets/{chunk-IMKFNOWR-DOdemMNR.js → chunk-IMKFNOWR-CbY3DGV3.js} +2 -2
- package/dist/client/assets/{chunk-L3NEJ4N5-CILnb7VE.js → chunk-L3NEJ4N5-Bhkym4YW.js} +2 -2
- package/dist/client/assets/{chunk-OSK3NFVY-Bxpu9Oo4.js → chunk-OSK3NFVY-B89_sN-h.js} +2 -2
- package/dist/client/assets/{chunk-P2QGCYS3-75l6wJUu.js → chunk-P2QGCYS3-zeIYnZbd.js} +2 -2
- package/dist/client/assets/{chunk-POPQ4Y6H-jYZ1RdM0.js → chunk-POPQ4Y6H-Bv7ZWEJI.js} +2 -2
- package/dist/client/assets/{chunk-PWAF6VOD-DtONZJrC.js → chunk-PWAF6VOD-BnsKTwi6.js} +2 -2
- package/dist/client/assets/{chunk-SHT3W25Y-NY6-WqgC.js → chunk-SHT3W25Y-Daoidttm.js} +2 -2
- package/dist/client/assets/{chunk-SVP7TREG-CGG6Z85U.js → chunk-SVP7TREG-BK4Qxtm6.js} +2 -2
- package/dist/client/assets/{chunk-TICWLB2K-DzB7PtXF.js → chunk-TICWLB2K-CihSBYRG.js} +2 -2
- package/dist/client/assets/classDiagram-ZZMXUADV-CxsiNRJs.js +2 -0
- package/dist/client/assets/classDiagram-v2-VYDZK3BY-CxsiNRJs.js +2 -0
- package/dist/client/assets/{collapsible-CLujF6F7.js → collapsible-DyaDJVJ5.js} +2 -2
- package/dist/client/assets/{color-picker-BG3Rpy98.js → color-picker-BWffD8SG.js} +2 -2
- package/dist/client/assets/{combobox-Cx4FP7Bk.js → combobox-zg5NNJOT.js} +2 -2
- package/dist/client/assets/{command-CVKxjYiJ.js → command-CBIpuXFt.js} +2 -2
- package/dist/client/assets/{connect-DeTNO4tO.js → connect-BVveo2H6.js} +2 -2
- package/dist/client/assets/{connect-agent-CTLxG7lp.js → connect-agent-Rlpt-C4T.js} +2 -2
- package/dist/client/assets/corner-left-up-DSgsQQJh.js +1 -0
- package/dist/client/assets/{cynefin-OW5HDTMX-C3y7gjYM.js → cynefin-OW5HDTMX-BTvkQvHj.js} +1 -1
- package/dist/client/assets/{cynefinDiagram-5FMLGOSQ-DEFegOUv.js → cynefinDiagram-5FMLGOSQ-glf_yMKF.js} +2 -2
- package/dist/client/assets/{dagre-GXQ25YYZ-C3YHw-ZL.js → dagre-GXQ25YYZ-XUkjXaQW.js} +2 -2
- package/dist/client/assets/device-Bu2mO4gL.js +2 -0
- package/dist/client/assets/{diagram-S7CK7UJ4-B04fDyJ1.js → diagram-S7CK7UJ4-CiNxlSJZ.js} +2 -2
- package/dist/client/assets/{diagram-UQ7AKVKN-DJ5yQdqn.js → diagram-UQ7AKVKN-C4_9QuDF.js} +2 -2
- package/dist/client/assets/{diagram-VSXAHHWV-DwQn4LJH.js → diagram-VSXAHHWV-BoRcnfst.js} +2 -2
- package/dist/client/assets/{diagram-VX7I27RA-BFeEJB2L.js → diagram-VX7I27RA-g5AlZjEL.js} +2 -2
- package/dist/client/assets/{diagram-Z3DM3KII-DjNPPgna.js → diagram-Z3DM3KII-Crw_yJrX.js} +2 -2
- package/dist/client/assets/{dialog-BBidAZq_.js → dialog-C5PVc2Dc.js} +2 -2
- package/dist/client/assets/{diffRendering-BcgWZBc6.js → diffRendering-DVfiIxj4.js} +2 -2
- package/dist/client/assets/{discovery-list-BOhsy2yk.js → discovery-list-Bb2RP3-9.js} +2 -2
- package/dist/client/assets/{dist-D-bAcBTo.js → dist-BTyn8sKm.js} +3 -3
- package/dist/client/assets/download-BrSkg4EE.js +1 -0
- package/dist/client/assets/{draft-input-Dk-JXf0v.js → draft-input-CwdApNsc.js} +2 -2
- package/dist/client/assets/{duoViewer-DELDCd_3.js → duoViewer-BsAzTMk3.js} +2 -2
- package/dist/client/assets/dynamic-COZhF9Vt.js +3 -0
- package/dist/client/assets/earth-D0ZhOX9I.js +1 -0
- package/dist/client/assets/{ebnfDiagram-PWID7BFC-R_zFp3Q4.js → ebnfDiagram-PWID7BFC-Co02q3t2.js} +2 -2
- package/dist/client/assets/ellipsis-Dze-H3uy.js +1 -0
- package/dist/client/assets/{embeddedScripts-S6heIv6s.js → embeddedScripts-cxUGD6UP.js} +2 -2
- package/dist/client/assets/{empty-B3wHlMsI.js → empty-B9cgefGv.js} +2 -2
- package/dist/client/assets/entities-B0tFBQjY.js +2 -0
- package/dist/client/assets/{erDiagram-RLTQ6QDP-DgSVOlTI.js → erDiagram-RLTQ6QDP-BuoWr1gw.js} +2 -2
- package/dist/client/assets/eventmodeling-NTZA5JFV-jDgS08dP.js +1 -0
- package/dist/client/assets/eye-OVEPp8Os.js +1 -0
- package/dist/client/assets/file-search-Y-7Ql86o.js +1 -0
- package/dist/client/assets/{fileLinks-M_i1pQMr.js → fileLinks-BBnShh-N.js} +2 -2
- package/dist/client/assets/{fileTreeExpansion-BoH-LpwD.js → fileTreeExpansion-DaFd8SRp.js} +2 -2
- package/dist/client/assets/flowDiagram-HODETNUW-DsHnGCQL.js +1 -0
- package/dist/client/assets/folder-git-2-DdgpEuW8.js +1 -0
- package/dist/client/assets/folder-open-B9DmXcog.js +1 -0
- package/dist/client/assets/folder-plus-CLFJj-Gh.js +1 -0
- package/dist/client/assets/{ganttDiagram-EL5Y4UJY-CsDp8eOV.js → ganttDiagram-EL5Y4UJY-CMAUkeMs.js} +2 -2
- package/dist/client/assets/{getDiffFileInput-y6l8uCrc.js → getDiffFileInput-D0WCXPuc.js} +2 -2
- package/dist/client/assets/git-branch-SJsNyJlB.js +1 -0
- package/dist/client/assets/{gitGraph-4MIJSDKK-ByZ8Ddcu.js → gitGraph-4MIJSDKK-B22BskFD.js} +1 -1
- package/dist/client/assets/{gitGraphDiagram-WWUBYQGX-QkPoZOxP.js → gitGraphDiagram-WWUBYQGX-D9yz6pSR.js} +2 -2
- package/dist/client/assets/grip-vertical-_2pxkeEI.js +1 -0
- package/dist/client/assets/{guideRunStore-Ca6LGvkb.js → guideRunStore-CPFfk-BJ.js} +2 -2
- package/dist/client/assets/hard-drive-DMfAIp4-.js +1 -0
- package/dist/client/assets/history-C7dJNEkM.js +1 -0
- package/dist/client/assets/house-BpsJcs6J.js +1 -0
- package/dist/client/assets/{htmlRender-Bs_dTcPz.js → htmlRender-Cdm053qU.js} +2 -2
- package/dist/client/assets/index-TkyxWt2Q.js +3 -0
- package/dist/client/assets/{info-A6RAGUB7-DWgAQmsU.js → info-A6RAGUB7-CicHHROU.js} +1 -1
- package/dist/client/assets/{infoDiagram-27XIBGKW-DqBsTg-0.js → infoDiagram-27XIBGKW-DAFhUj2V.js} +2 -2
- package/dist/client/assets/{input-BOT1WFGI.js → input-CN9xdIYL.js} +2 -2
- package/dist/client/assets/{input-group-13zF6rZl.js → input-group-CV0ZpOg5.js} +2 -2
- package/dist/client/assets/{ishikawaDiagram-5VMMS53U-DhvmZSIn.js → ishikawaDiagram-5VMMS53U-CBEywTMi.js} +2 -2
- package/dist/client/assets/{journeyDiagram-3NMN7TZE-sBAsW8ZW.js → journeyDiagram-3NMN7TZE-BIKjvqRL.js} +2 -2
- package/dist/client/assets/{kanban-definition-UXKFOSKX-7pB8050L.js → kanban-definition-UXKFOSKX-XOFfprGt.js} +2 -2
- package/dist/client/assets/kbd-Fa27fInv.js +2 -0
- package/dist/client/assets/{keybindings-B4uuYLfE.js → keybindings-C81QSEVL.js} +2 -2
- package/dist/client/assets/keyboard-C0H4XsBS.js +1 -0
- package/dist/client/assets/{lazyRouteComponent-C2UuNVTE.js → lazyRouteComponent-BTBK1UDq.js} +2 -2
- package/dist/client/assets/{line-CYcVbD9r.js → line-CEyB3WPo.js} +2 -2
- package/dist/client/assets/{link-DnyZixWB.js → link-C1pmqztR.js} +2 -2
- package/dist/client/assets/link-CsVCGX_A.js +1 -0
- package/dist/client/assets/{linkedPrompt-Cjzkkr18.js → linkedPrompt-B6Q0Cmi6.js} +2 -2
- package/dist/client/assets/list-BKOLPymO.js +1 -0
- package/dist/client/assets/main-CJvawsJJ.js +27 -0
- package/dist/client/assets/main-DjXoj7An.css +2 -0
- package/dist/client/assets/{mediaReference-DCRMHOD7.js → mediaReference-o1DLUGKI.js} +2 -2
- package/dist/client/assets/{mediaSource-C-YyAgza.js → mediaSource-Cfv5uiFj.js} +2 -2
- package/dist/client/assets/{mermaid-parser.core-CUhkd3Km.js → mermaid-parser.core-BT2QN4a3.js} +4 -4
- package/dist/client/assets/{mermaid.core-7L34oYGP.js → mermaid.core-EPDLhovC.js} +5 -5
- package/dist/client/assets/message-circle-question-mark-0PixhBRe.js +1 -0
- package/dist/client/assets/message-square-dashed-jX8EWVKo.js +1 -0
- package/dist/client/assets/message-square-xfL83Fxi.js +1 -0
- package/dist/client/assets/messages-square-DwkvqiPv.js +1 -0
- package/dist/client/assets/{mindmap-definition-YA3MSWOX-CpfzOIsM.js → mindmap-definition-YA3MSWOX-aqL3ALYK.js} +2 -2
- package/dist/client/assets/number-field-BiWh0ioY.js +2 -0
- package/dist/client/assets/{observeResize-CK9qVTLF.js → observeResize-DBJpB0Hu.js} +2 -2
- package/dist/client/assets/{onboarding-DWVdcMTo.js → onboarding-gue-HaiI.js} +2 -2
- package/dist/client/assets/{openFileInPreview-DsWLDsnf.js → openFileInPreview-BuKYchiT.js} +2 -2
- package/dist/client/assets/{p4ProjectFile-DVeZFEli.js → p4ProjectFile-DH7qoFHx.js} +2 -2
- package/dist/client/assets/{packet-AYTQ26CC-TJIgXg7Z.js → packet-AYTQ26CC-BkyzJMIf.js} +1 -1
- package/dist/client/assets/{pair-Ds7MhGzA.js → pair-DESVHftX.js} +2 -2
- package/dist/client/assets/palette-DvhXYFMC.js +1 -0
- package/dist/client/assets/panel-left-DCz3M7jv.js +1 -0
- package/dist/client/assets/{panel-tab-close-button-CeVf2Cp1.js → panel-tab-close-button-DKugpobT.js} +2 -2
- package/dist/client/assets/panels-top-left-C1xu8Xiu.js +1 -0
- package/dist/client/assets/{pegDiagram-XKGWAZYB-BWjyJv0r.js → pegDiagram-XKGWAZYB-DilAu2aa.js} +2 -2
- package/dist/client/assets/{phoneViewer-4yzlTfRU.js → phoneViewer-xqyGZwKn.js} +2 -2
- package/dist/client/assets/{pie-WAS4IAKB-DI1xrBNC.js → pie-WAS4IAKB-DgPx2D64.js} +1 -1
- package/dist/client/assets/{pieDiagram-E7YTZNPT-D5BJ4dMD.js → pieDiagram-E7YTZNPT-D9PFl5qt.js} +2 -2
- package/dist/client/assets/{pierre-icons-C4_Is1e6.js → pierre-icons-BVuUNHGs.js} +2 -2
- package/dist/client/assets/popover-aTTlR6NX.js +2 -0
- package/dist/client/assets/{preview-ChiUlq6M.js → preview-8KYmxrad.js} +2 -2
- package/dist/client/assets/{preview-BXSjnvc2.js → preview-DgLUnqIn.js} +2 -2
- package/dist/client/assets/{previewMiniPlayerStore-BWBB4WZZ.js → previewMiniPlayerStore-CZUX4gpf.js} +2 -2
- package/dist/client/assets/primary-GHQewxsn.js +2 -0
- package/dist/client/assets/primaryCloudLinkState-BS4O3v7M.js +2 -0
- package/dist/client/assets/{projectFilesQueryState-DLmHVuBp.js → projectFilesQueryState-DmDFr3yJ.js} +2 -2
- package/dist/client/assets/projectScriptEditor-DxxYqdMP.js +2 -0
- package/dist/client/assets/{pullRequestDetail.logic-CiIqeGLs.js → pullRequestDetail.logic-C6mxjZFd.js} +4 -4
- package/dist/client/assets/{pullRequestReviewStore-Ckm9o--D.js → pullRequestReviewStore-VIPIhGsh.js} +2 -2
- package/dist/client/assets/pullRequests-DEHxyBeZ.js +2 -0
- package/dist/client/assets/{quadrantDiagram-AXDQQJYC-USH3mFeD.js → quadrantDiagram-AXDQQJYC-36GcvWjt.js} +2 -2
- package/dist/client/assets/queries-BAbZ6wRj.js +2 -0
- package/dist/client/assets/{query-DG-FU00d.js → query-gfas_Faw.js} +2 -2
- package/dist/client/assets/{radar-RG4KPBEZ-BgwqseQY.js → radar-RG4KPBEZ-B_1p1XBS.js} +1 -1
- package/dist/client/assets/radio-group-BcuemB8E.js +2 -0
- package/dist/client/assets/{railroad-74A4TZTK-lU1hozFq.js → railroad-74A4TZTK-DjaD7aBa.js} +1 -1
- package/dist/client/assets/railroad-abnf-HS5TGJTU-CA1GF-5t.js +1 -0
- package/dist/client/assets/railroad-ebnf-LZEXJU2U-Beda5tl-.js +1 -0
- package/dist/client/assets/railroad-peg-WCYAUIDC-D2CRVbbY.js +1 -0
- package/dist/client/assets/{railroadDiagram-O6MQD6OU-BX2DBjFX.js → railroadDiagram-O6MQD6OU-BfFU3IUU.js} +2 -2
- package/dist/client/assets/{renderScheduler-e5LS9_r8.js → renderScheduler-DE6WzqZi.js} +2 -2
- package/dist/client/assets/{requirementDiagram-BXWQKSXE-Bp2BwkCA.js → requirementDiagram-BXWQKSXE-WVgmezGx.js} +2 -2
- package/dist/client/assets/{rightPanelStore-Dnc28mSJ.js → rightPanelStore-CsSGBQ8t.js} +2 -2
- package/dist/client/assets/rotate-ccw-CyPuoUiH.js +1 -0
- package/dist/client/assets/rotate-cw-B20Q7RJJ.js +1 -0
- package/dist/client/assets/runtime-C9evwoB9.js +2 -0
- package/dist/client/assets/runtime-CxeCZPZ3.js +6 -0
- package/dist/client/assets/{sankeyDiagram-P5KCCOFB-BklNNjEB.js → sankeyDiagram-P5KCCOFB-BsCi2aYb.js} +2 -2
- package/dist/client/assets/scheduledTasksSettings.logic-Bin7R9R3.js +3 -0
- package/dist/client/assets/{scroll-area-Cj3OF_L_.js → scroll-area-CRoS-lxP.js} +2 -2
- package/dist/client/assets/{select-BDMo6Fqt.js → select-BXOHHCMJ.js} +2 -2
- package/dist/client/assets/{sequenceDiagram-WJ2MYXX4-ufTHSg4p.js → sequenceDiagram-WJ2MYXX4-C_qj_Szb.js} +2 -2
- package/dist/client/assets/{server-DNo9AqHW.js → server-BBIVfjrf.js} +2 -2
- package/dist/client/assets/session-DZH3pyoG.js +2 -0
- package/dist/client/assets/session-logic-RDMPhilH.js +13 -0
- package/dist/client/assets/{settings-DxGY3RT5.js → settings-0qbtr9oy.js} +2 -2
- package/dist/client/assets/settings-2-DmZK5Wif.js +1 -0
- package/dist/client/assets/settings-Br2yM9q3.js +1 -0
- package/dist/client/assets/settings.appearance-CtG85Hzv.js +2 -0
- package/dist/client/assets/settings.archived-D1CPem1-.js +2 -0
- package/dist/client/assets/settings.computer-use-DvBtreaX.js +2 -0
- package/dist/client/assets/settings.connections-CeSH1Y-S.js +2 -0
- package/dist/client/assets/settings.decisions-FBz5pyct.js +2 -0
- package/dist/client/assets/settings.diagnostics-Ct39tZgQ.js +2 -0
- package/dist/client/assets/settings.general-YgAeT2ec.js +2 -0
- package/dist/client/assets/settings.integrations-DIuNSxXg.js +2 -0
- package/dist/client/assets/{settings.keybindings-CITYXalz.js → settings.keybindings-BHpTOm8T.js} +2 -2
- package/dist/client/assets/{settings.open-source-licenses-CTznEYnQ.js → settings.open-source-licenses-Dlp4u1NR.js} +2 -2
- package/dist/client/assets/settings.projects-BZP8BJZK.js +4 -0
- package/dist/client/assets/settings.providers-Dad6hRGg.js +3 -0
- package/dist/client/assets/settings.scheduled-tasks-B1Q7wnRI.js +2 -0
- package/dist/client/assets/settings.snap-shot-ZBGDHF90.js +2 -0
- package/dist/client/assets/settings.source-control-BXuO43FQ.js +2 -0
- package/dist/client/assets/{settings.storage-C4lRhJsq.js → settings.storage-Dl3cI_3U.js} +2 -2
- package/dist/client/assets/settingsLayout-DKjAOwp4.js +3 -0
- package/dist/client/assets/shield-question-mark-Cmz7w9_M.js +1 -0
- package/dist/client/assets/{sidebar-Bulbb3cX.js → sidebar-D6V5N0ZC.js} +2 -2
- package/dist/client/assets/{sidebarProjectGrouping-DEvzxecx.js → sidebarProjectGrouping-DVAIOuq4.js} +2 -2
- package/dist/client/assets/{skeleton-BFPHmDcq.js → skeleton-DuFqUDDw.js} +2 -2
- package/dist/client/assets/{sortable.esm-CHiRbsvI.js → sortable.esm-DdMawn0Y.js} +2 -2
- package/dist/client/assets/{sourceControl-DfhPxa0l.js → sourceControl-U8x7jR8g.js} +2 -2
- package/dist/client/assets/{spinner-rP6J82Of.js → spinner-C6X42yHv.js} +2 -2
- package/dist/client/assets/square-pen-Dew4fHbM.js +1 -0
- package/dist/client/assets/{standalone-page-BkHTM3MP.js → standalone-page-hDUmjFb0.js} +2 -2
- package/dist/client/assets/{stateDiagram-D77RDMKH-UnviM1_a.js → stateDiagram-D77RDMKH-FdsqVfsR.js} +2 -2
- package/dist/client/assets/stateDiagram-v2-MP3YSRHH-PvZEFfKe.js +2 -0
- package/dist/client/assets/{swimlanes-42K2YHIH-CpD6LDbC.js → swimlanes-42K2YHIH-D65Z1Od_.js} +2 -2
- package/dist/client/assets/swimlanesDiagram-VR7AAH4N-DIDrEY3U.js +9 -0
- package/dist/client/assets/{terminalSessions-C9u_KQdo.js → terminalSessions-DhPFaHUr.js} +2 -2
- package/dist/client/assets/text-search-Cchv2p-9.js +1 -0
- package/dist/client/assets/{textarea-D7qN_9_U.js → textarea-CCFZJhy-.js} +2 -2
- package/dist/client/assets/{themePalette-au2ZXbqB.js → themePalette-CxbxrCEH.js} +3 -3
- package/dist/client/assets/threadSort-TlzPAte9.js +2 -0
- package/dist/client/assets/{timeline-definition-24CTP7MA-CNy-4Mtq.js → timeline-definition-24CTP7MA-DrXF0NCa.js} +2 -2
- package/dist/client/assets/toast-B-l3XS_F.js +2 -0
- package/dist/client/assets/{toggle-4i71sOFB.js → toggle-DOFhC9C7.js} +2 -2
- package/dist/client/assets/{toggle-group-BtpeJU3C.js → toggle-group-B1ghB_yR.js} +2 -2
- package/dist/client/assets/tooltip-CYNXW1Ow.js +2 -0
- package/dist/client/assets/{treeView-Q6P3EWNA-fz73DkUg.js → treeView-Q6P3EWNA-D6bZIPSq.js} +1 -1
- package/dist/client/assets/{treemap-WGGIJYW6-CHp0lk61.js → treemap-WGGIJYW6-CJr_vK1t.js} +1 -1
- package/dist/client/assets/{usage-BoYlRHNx.js → usage-1aJeDf79.js} +2 -2
- package/dist/client/assets/{usageAccess-BmfDNhp2.js → usageAccess-9ld15_dP.js} +2 -2
- package/dist/client/assets/{usageFormat-DdjdHqj5.js → usageFormat-D7uBkeaA.js} +2 -2
- package/dist/client/assets/{usageShortcuts-RpypNfqZ.js → usageShortcuts--2waLBa-.js} +2 -2
- package/dist/client/assets/{use-atom-command-Bc7LgQy1.js → use-atom-command-DdGPgtPS.js} +2 -2
- package/dist/client/assets/{useAriaLabelledBy-B_3SmrJo.js → useAriaLabelledBy-Bp_qmGgf.js} +2 -2
- package/dist/client/assets/{useHandleNewThread-Csguf2GC.js → useHandleNewThread-DtCuKpGU.js} +2 -2
- package/dist/client/assets/{useLocation-DaTcl6iI.js → useLocation-yjRHv-GS.js} +2 -2
- package/dist/client/assets/useNavigate-DfvN7ISg.js +2 -0
- package/dist/client/assets/{useNavigateBack-C43_t49N.js → useNavigateBack-NMRi6phK.js} +2 -2
- package/dist/client/assets/{useParams-s9hrFQQQ.js → useParams-OFLEf5Ub.js} +2 -2
- package/dist/client/assets/{usePermissionStatus-CCpQkKk1.js → usePermissionStatus-D4K04nHy.js} +2 -2
- package/dist/client/assets/usePullRequestActions-DyXuVFpA.js +3 -0
- package/dist/client/assets/{useRegisterFieldControl-BVraoamc.js → useRegisterFieldControl-QWoLGfik.js} +2 -2
- package/dist/client/assets/useScopedModelAvailability-udJ9IYpQ.js +2 -0
- package/dist/client/assets/useSettings-C1hmCYRR.js +3 -0
- package/dist/client/assets/{useT3ConnectAuthPrompt-D3ARnr92.js → useT3ConnectAuthPrompt-NQ5SmnTg.js} +2 -2
- package/dist/client/assets/utils-Nv21__t3.js +37 -0
- package/dist/client/assets/vcsRefInvalidation-CEbBuVCf.js +2 -0
- package/dist/client/assets/{vennDiagram-4TSXK5OY-BBpGz6rf.js → vennDiagram-4TSXK5OY-BJt3j1aO.js} +2 -2
- package/dist/client/assets/{wardley-WFR3VGLG-M4Al1qCV.js → wardley-WFR3VGLG-D_UZZZRB.js} +1 -1
- package/dist/client/assets/{wardleyDiagram-VM6X3IG4-V-_mOkU8.js → wardleyDiagram-VM6X3IG4-gZMVt8-K.js} +2 -2
- package/dist/client/assets/{welcome-Bok5fRqT.js → welcome-BRjof1AW.js} +2 -2
- package/dist/client/assets/{xychartDiagram-S5SC5T6Z-CZOR99Bj.js → xychartDiagram-S5SC5T6Z-BwaDo7WT.js} +2 -2
- package/dist/client/index.html +1 -1
- package/package.json +1 -1
- package/dist/AcpMcpStdioBridge-Ch5bMyss.mjs +0 -4
- package/dist/client/assets/ChatGptUsageButton-GxPReM3u.js +0 -2
- package/dist/client/assets/ChatMarkdown-DOdrk8tK.js +0 -65
- package/dist/client/assets/DiffFileTree-D3P47wbG.js +0 -2
- package/dist/client/assets/DiffPanel-cvlTVhB4.js +0 -2
- package/dist/client/assets/ProjectDefaultsSettings-Cu80XFdb.js +0 -2
- package/dist/client/assets/ProjectIconPickerDialog-Dwmv78OH.js +0 -2
- package/dist/client/assets/ScheduledTasksSettings-Cp8h_lNS.js +0 -4
- package/dist/client/assets/ScopedSwitch-CLAFXjj6.js +0 -2
- package/dist/client/assets/WorkspaceBreadcrumb-fx0ZD7ay.js +0 -2
- package/dist/client/assets/WorkspacePageContainer-DFsaHi02.js +0 -2
- package/dist/client/assets/_chat-BerxDjpp.js +0 -58
- package/dist/client/assets/_chat.pull-requests-BwpBKnt3.js +0 -2
- package/dist/client/assets/architecture-7GRP2DOG-CT4QCEL3.js +0 -1
- package/dist/client/assets/arrow-left-BiKrB-pT.js +0 -1
- package/dist/client/assets/arrow-right-DWAwZU0q.js +0 -1
- package/dist/client/assets/arrow-up-down-CfYH5v22.js +0 -1
- package/dist/client/assets/assets-DwywdbuJ.js +0 -2
- package/dist/client/assets/bell-C3RUvq1T.js +0 -1
- package/dist/client/assets/blocks-CoLUV11Q.js +0 -1
- package/dist/client/assets/bot-CjcO3F5G.js +0 -1
- package/dist/client/assets/calendar-clock-CJyS1C-x.js +0 -1
- package/dist/client/assets/channel-kQEwHVv9.js +0 -2
- package/dist/client/assets/chart-no-axes-column-B3ZqbY05.js +0 -1
- package/dist/client/assets/checkbox-Cw_SXlJ5.js +0 -2
- package/dist/client/assets/classDiagram-ZZMXUADV-BO_GIPO1.js +0 -2
- package/dist/client/assets/classDiagram-v2-VYDZK3BY-BO_GIPO1.js +0 -2
- package/dist/client/assets/corner-left-up-D653FjvK.js +0 -1
- package/dist/client/assets/device-DrIICsXu.js +0 -2
- package/dist/client/assets/download-CNXPbBhc.js +0 -1
- package/dist/client/assets/dynamic-BRlOHH6g.js +0 -3
- package/dist/client/assets/earth-C1f0Qxwi.js +0 -1
- package/dist/client/assets/ellipsis-0J7zX441.js +0 -1
- package/dist/client/assets/entities-yblphBg3.js +0 -2
- package/dist/client/assets/eventmodeling-NTZA5JFV-bjJqzJYE.js +0 -1
- package/dist/client/assets/eye-CmsLgU-5.js +0 -1
- package/dist/client/assets/file-search-ClaIV60V.js +0 -1
- package/dist/client/assets/flowDiagram-HODETNUW-CsPXFMK4.js +0 -1
- package/dist/client/assets/folder-git-2-BxqGR5ht.js +0 -2
- package/dist/client/assets/folder-open-gQZmKQ4n.js +0 -1
- package/dist/client/assets/folder-plus-BVmedEeH.js +0 -1
- package/dist/client/assets/git-branch-Ba9jLbPu.js +0 -1
- package/dist/client/assets/grip-vertical-BmIJSASv.js +0 -1
- package/dist/client/assets/hard-drive-hWUfbbG9.js +0 -1
- package/dist/client/assets/history-jvN7Bdkc.js +0 -1
- package/dist/client/assets/house-ozmwce4p.js +0 -1
- package/dist/client/assets/index-FZqrCEhr.js +0 -3
- package/dist/client/assets/kbd-BR8-VeaN.js +0 -2
- package/dist/client/assets/keyboard-_YjrW4PX.js +0 -1
- package/dist/client/assets/link-BcMcYjHb.js +0 -1
- package/dist/client/assets/list-DEjg_Q5H.js +0 -1
- package/dist/client/assets/main-BQLZB-ZD.css +0 -2
- package/dist/client/assets/main-Ch0n0whg.js +0 -26
- package/dist/client/assets/message-circle-question-mark-DzWFFMDp.js +0 -1
- package/dist/client/assets/message-square-BqGKFtP8.js +0 -1
- package/dist/client/assets/message-square-dashed-FPkUUYSB.js +0 -1
- package/dist/client/assets/messages-square-BNeF2306.js +0 -2
- package/dist/client/assets/number-field-DsVu9T6C.js +0 -2
- package/dist/client/assets/palette-JCVMAFVd.js +0 -1
- package/dist/client/assets/panel-left-STqObAvQ.js +0 -1
- package/dist/client/assets/panels-top-left-B90U_rdS.js +0 -1
- package/dist/client/assets/popover-UOfX8iZ4.js +0 -2
- package/dist/client/assets/primary-BubJSDIO.js +0 -2
- package/dist/client/assets/primaryCloudLinkState-CFnZkCiA.js +0 -2
- package/dist/client/assets/projectScriptEditor-_TwHfcHY.js +0 -2
- package/dist/client/assets/pullRequests-C0Gr2876.js +0 -2
- package/dist/client/assets/queries-DbiotSzd.js +0 -2
- package/dist/client/assets/radio-group-DhxCP5q0.js +0 -2
- package/dist/client/assets/railroad-abnf-HS5TGJTU-DRzBu_EH.js +0 -1
- package/dist/client/assets/railroad-ebnf-LZEXJU2U-BuQh-rCG.js +0 -1
- package/dist/client/assets/railroad-peg-WCYAUIDC-DH1f3-__.js +0 -1
- package/dist/client/assets/rotate-ccw-98iN1bsB.js +0 -1
- package/dist/client/assets/rotate-cw-DdW3sRx4.js +0 -1
- package/dist/client/assets/runtime-BUB2ex14.js +0 -2
- package/dist/client/assets/runtime-BoEmkhOe.js +0 -6
- package/dist/client/assets/scheduledTasksSettings.logic-Bk1lq8Ri.js +0 -3
- package/dist/client/assets/session-CyPECDtf.js +0 -2
- package/dist/client/assets/session-logic-BBZj8pNB.js +0 -13
- package/dist/client/assets/settings-2-C-KVP40_.js +0 -1
- package/dist/client/assets/settings-D62zpRkD.js +0 -1
- package/dist/client/assets/settings.appearance-C-MzWdtB.js +0 -2
- package/dist/client/assets/settings.archived-BZ0wU-2j.js +0 -2
- package/dist/client/assets/settings.connections-B-h_wi7q.js +0 -2
- package/dist/client/assets/settings.diagnostics-ByUhN_HC.js +0 -2
- package/dist/client/assets/settings.general-DodDmaXX.js +0 -2
- package/dist/client/assets/settings.integrations-Dq9yt9c-.js +0 -2
- package/dist/client/assets/settings.projects-Bj9oI9dE.js +0 -4
- package/dist/client/assets/settings.providers-BPb4TbH8.js +0 -3
- package/dist/client/assets/settings.scheduled-tasks-TxnTVd7r.js +0 -2
- package/dist/client/assets/settings.snap-shot-DZaxUAEE.js +0 -2
- package/dist/client/assets/settings.source-control-BlHoYUC0.js +0 -2
- package/dist/client/assets/settingsLayout-De_r3pyr.js +0 -3
- package/dist/client/assets/shield-question-mark-B5w7j5aC.js +0 -1
- package/dist/client/assets/square-pen-DYBPSam-.js +0 -1
- package/dist/client/assets/stateDiagram-v2-MP3YSRHH-CJW4DyfF.js +0 -2
- package/dist/client/assets/swimlanesDiagram-VR7AAH4N-Buz7ig8b.js +0 -9
- package/dist/client/assets/text-search-DrO_MCzY.js +0 -1
- package/dist/client/assets/threadSort-R2JvSO3D.js +0 -2
- package/dist/client/assets/toast-CIGvRti2.js +0 -2
- package/dist/client/assets/tooltip-Ciaezkl4.js +0 -2
- package/dist/client/assets/useNavigate-CnhAAl0Z.js +0 -2
- package/dist/client/assets/usePullRequestActions-CiF7znkV.js +0 -3
- package/dist/client/assets/useScopedModelAvailability-kFNRNx2C.js +0 -2
- package/dist/client/assets/useSettings-CNd8OM7A.js +0 -3
- package/dist/client/assets/utils-geC9CGP4.js +0 -37
- package/dist/client/assets/vcsRefInvalidation-DMpp-BNA.js +0 -2
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{i as e}from"./rolldown-runtime-Dd_uD5pT.js";import{r as t}from"./Icon-l19w4AjM.js";import{
|
|
2
|
-
//# sourceMappingURL=PierreEntryIcon-
|
|
1
|
+
import{i as e}from"./rolldown-runtime-Dd_uD5pT.js";import{r as t}from"./Icon-l19w4AjM.js";import{Ld as n,Oc as r,ma as i,t as a,wx as o}from"./utils-Nv21__t3.js";import{t as s}from"./file-1cutE11R.js";import{t as c}from"./folder-CMIvEUJv.js";import{I as l,U as u,j as d,z as f}from"./runtime-CxeCZPZ3.js";import{a as p,r as m}from"./pierre-icons-BVuUNHGs.js";function h(e){return{createUploadUrl:d(e,{label:`environment-command:attachments:create-upload-url`,tag:r.attachmentsCreateUploadUrl}),remove:d(e,{label:`environment-command:attachments:delete`,tag:r.attachmentsDelete})}}function g(e){return typeof e==`object`&&!!e&&`_tag`in e&&e._tag===`AssetAttachmentNotFoundError`}async function _(e){let t=await l(e.registry,e.createAssetUrl({environmentId:e.environmentId,input:{resource:{_tag:`attachment`,attachmentId:e.attachmentId}}}),{reportFailure:!1,reportDefect:!1,refresh:!0});if(t._tag===`Success`)return{status:`verified`};let n=u(t);return g(n)?{status:`missing`}:{status:`failed`,error:n}}function v(e){f(e.registry,e.remove,{environmentId:e.environmentId,input:{attachmentId:e.attachmentId}},{reportFailure:!1,reportDefect:!1})}async function y(e){let t=await f(e.registry,e.createUploadUrl,{environmentId:e.environmentId,input:e.upload},{reportFailure:!1});if(t._tag!==`Success`)return{status:`failed`,step:`mint`,attachmentId:null,error:u(t)};let n=t.value.attachmentId;if(e.onMinted?.(n)===`cancel`)return v({registry:e.registry,remove:e.remove,environmentId:e.environmentId,attachmentId:n}),{status:`cancelled`,attachmentId:n};let r=e.resolveUploadUrl(t.value.relativeUrl);if(!r)return{status:`failed`,step:`resolve-url`,attachmentId:n,error:Error(`The environment is not connected.`)};let i=e.transport(r);e.onTransferStart?.(i.abort);try{await i.done}catch(e){return{status:`failed`,step:`transfer`,attachmentId:n,error:e}}return{status:`uploaded`,attachmentId:n}}function b(e){return Math.min(e,n)}function x(e){return e>=1048576?`${(e/1048576).toFixed(1)} MB`:`${Math.max(1,Math.ceil(e/1024))} KB`}function S(e,t){return`'${e}' exceeds the ${t>=1048576&&t%1048576==0?`${t/1048576} MB`:t>=1024&&t%1024==0?`${t/1024} KB`:`${t} ${t===1?`byte`:`bytes`}`} attachment limit.`}var C=o(),w=e(t(),1),T=e(i(),1),E={astro:[`#a631be`,`#d568ea`],babel:[`#d5a910`,`#ffd452`],bash:[`#199f43`,`#5ecc71`],biome:[`#1a85d4`,`#69b1ff`],bootstrap:[`#693acf`,`#9d6afb`],browserslist:[`#d5a910`,`#ffd452`],bun:[`#594c5b`,`#79697b`],c:[`#1a85d4`,`#69b1ff`],claude:[`#d47628`,`#ffa359`],cpp:[`#1a85d4`,`#69b1ff`],css:[`#693acf`,`#9d6afb`],database:[`#a631be`,`#d568ea`],default:[`#84848a`,`#adadb1`],docker:[`#1a85d4`,`#69b1ff`],eslint:[`#693acf`,`#9d6afb`],git:[`#ff8c5b`,`#d5512f`],go:[`#1ca1c7`,`#68cdf2`],graphql:[`#d32a61`,`#ff678d`],html:[`#d47628`,`#ffa359`],image:[`#d32a61`,`#ff678d`],javascript:[`#d5a910`,`#ffd452`],json:[`#d47628`,`#ffa359`],markdown:[`#199f43`,`#5ecc71`],mcp:[`#17a5af`,`#64d1db`],nextjs:[`#84848a`,`#adadb1`],npm:[`#d52c36`,`#ff6762`],oxc:[`#1ca1c7`,`#68cdf2`],postcss:[`#d52c36`,`#ff6762`],prettier:[`#17a5af`,`#64d1db`],python:[`#1a85d4`,`#69b1ff`],react:[`#1ca1c7`,`#68cdf2`],ruby:[`#d52c36`,`#ff6762`],rust:[`#d47628`,`#ffa359`],sass:[`#d32a61`,`#ff678d`],stylelint:[`#84848a`,`#adadb1`],svelte:[`#d52c36`,`#ff6762`],svg:[`#d47628`,`#ffa359`],svgo:[`#199f43`,`#5ecc71`],swift:[`#d47628`,`#ffa359`],table:[`#17a5af`,`#64d1db`],tailwind:[`#1ca1c7`,`#68cdf2`],terraform:[`#693acf`,`#9d6afb`],text:[`#84848a`,`#adadb1`],typescript:[`#1a85d4`,`#69b1ff`],vite:[`#a631be`,`#d568ea`],vscode:[`#1a85d4`,`#69b1ff`],vue:[`#199f43`,`#5ecc71`],wasm:[`#693acf`,`#9d6afb`],webpack:[`#1a85d4`,`#69b1ff`],yml:[`#d52c36`,`#ff6762`],zig:[`#d47628`,`#ffa359`],zip:[`#d47628`,`#ffa359`]},D=(0,w.memo)(function(e){let t=(0,C.c)(20),n;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(n=[],t[0]=n):n=t[0],(0,w.useInsertionEffect)(m,n);let r;t[1]!==e.kind||t[2]!==e.mimeType||t[3]!==e.pathValue?(r=p(e.pathValue,e.kind,e.mimeType),t[1]=e.kind,t[2]=e.mimeType,t[3]=e.pathValue,t[4]=r):r=t[4];let i=r;if(!i){let n;return t[5]!==e.className||t[6]!==e.kind?(n=e.kind===`directory`?(0,T.jsx)(c,{className:a(`size-4 text-icon-muted`,e.className)}):(0,T.jsx)(s,{className:a(`size-4 text-icon-muted`,e.className)}),t[5]=e.className,t[6]=e.kind,t[7]=n):n=t[7],n}let o=E[i.token??`default`]??E.default,l=i.name,u=i.token,d;t[8]===e.className?d=t[9]:(d=a(`size-4 shrink-0`,e.className),t[8]=e.className,t[9]=d);let f=o?.[e.theme===`light`?0:1],h;t[10]===f?h=t[11]:(h={color:f},t[10]=f,t[11]=h);let g=`#${i.name}`,_;t[12]===g?_=t[13]:(_=(0,T.jsx)(`use`,{href:g}),t[12]=g,t[13]=_);let v;return t[14]!==i.name||t[15]!==i.token||t[16]!==d||t[17]!==h||t[18]!==_?(v=(0,T.jsx)(`svg`,{"aria-hidden":`true`,"data-pierre-icon":l,"data-icon-token":u,className:d,style:h,viewBox:`0 0 16 16`,children:_}),t[14]=i.name,t[15]=i.token,t[16]=d,t[17]=h,t[18]=_,t[19]=v):v=t[19],v});export{S as a,_ as c,v as i,b as n,x as o,h as r,y as s,D as t};
|
|
2
|
+
//# sourceMappingURL=PierreEntryIcon-uqPwKknu.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{i as e}from"./rolldown-runtime-Dd_uD5pT.js";import{r as t}from"./Icon-l19w4AjM.js";import{Ao as n,Bs as r,E as i,Jl as a,Jn as o,Kn as s,Mo as c,Po as l,Qn as u,Ro as d,Sx as f,Un as p,Wn as m,Xn as h,Zn as g,ar as _,er as v,eu as y,ir as b,ma as x,nr as S,or as C,qn as w,rr as ee,t as T,wf as E}from"./utils-geC9CGP4.js";import{t as D}from"./camera-V1Ufc9sC.js";import{t as O}from"./ellipsis-vertical-fYTS1grT.js";import{t as te}from"./external-link-NWS0I_zo.js";import{t as k}from"./globe-BygqUCSx.js";import{t as ne}from"./minus-C7W28oE7.js";import{t as re}from"./mouse-pointer-click-DsDE4K7M.js";import{t as ie}from"./picture-in-picture-2-g5nsWFVw.js";import{t as ae}from"./plus-Cr075-cy.js";import{t as oe}from"./radio-tower-CT5Np78y.js";import{t as A}from"./x-CSwbgjBe.js";import{L as j,U as M}from"./runtime-BoEmkhOe.js";import{b as N}from"./entities-yblphBg3.js";import{a as se,n as P,t as F}from"./tooltip-Ciaezkl4.js";import{ct as ce}from"./ChatMarkdown-DOdrk8tK.js";import{i as I}from"./toast-CIGvRti2.js";import{C as le,O as L,S as ue,q as R}from"./useSettings-CNd8OM7A.js";import{i as de,n as z}from"./session-CyPECDtf.js";import{t as B}from"./use-atom-command-Bc7LgQy1.js";import{l as V}from"./rightPanelStore-Dnc28mSJ.js";import{n as H}from"./toastHelpers-Dsph6LwL.js";import{A as U,k as W}from"./PanelLayoutControls-x5a58Pdn.js";import{o as fe}from"./timestampFormat-wac2e_Jz.js";import{a as G,o as K,r as q,t as pe}from"./empty-B3wHlMsI.js";import{a as me,i as he,t as ge}from"./previewMiniPlayerStore-BWBB4WZZ.js";import{n as _e,t as ve}from"./discovery-list-BOhsy2yk.js";import{t as ye}from"./observeResize-CK9qVTLF.js";import{n as be}from"./openFileInPreview-DsWLDsnf.js";import{T as xe,a as Se,b as Ce,f as we,i as Te,n as Ee,o as De,r as Oe,t as ke,u as Ae,w as je}from"./browserHistoryStore-D6A_83JY.js";import{t as Me}from"./preview-ChiUlq6M.js";import{n as Ne,r as Pe,t as Fe}from"./preview-BXSjnvc2.js";import{n as Ie,r as Le,t as Re}from"./input-group-13zF6rZl.js";import{$o as ze,Bi as Be,Gi as Ve,Hi as He,Ki as Ue,Pa as We,Qi as J,Ri as Ge,Vi as Ke,Xi as qe,Zi as Je,Zo as Y,aa as Ye,ho as Xe,na as X,qa as Ze,qi as Qe,ta as $e,zi as et}from"./main-Ch0n0whg.js";import{a as tt,c as nt,d as rt,f as it,i as at,l as ot,n as st,o as ct,r as lt,s as ut,u as dt}from"./_chat-BerxDjpp.js";var Z=e(t(),1),Q=f(),ft=`data:image/png;base64,`;function pt(e){if(!e.screenshot)return{status:`none`};try{let{dataUrl:t}=e.screenshot;if(!t.startsWith(ft))return{status:`failed`};let n=Ye(t,`preview-annotation-${e.id}.png`,`image/png`);return n.size>0?{status:`captured`,file:n}:{status:`failed`}}catch{return{status:`failed`}}}var $=e(x(),1),mt=()=>{};function ht(e){let t=(0,Q.c)(78),{url:n,loading:r,canGoBack:i,canGoForward:a,refreshDisabled:o,inputDisabled:s,focusUrlNonce:c,onBack:l,onForward:u,onRefresh:d,onSubmit:f,onOpenInBrowser:p,onCapture:m,captureDisabled:h,recording:g,onPictureInPicture:_,pictureInPicture:v,pictureInPictureDisabled:y,onPickElement:b,pickActive:x,pickDisabled:S,pickDisabledReason:w,trailingActions:ee,leadingActions:E}=e,O=(0,Z.useRef)(null),[k,ne]=(0,Z.useState)(n),[ae,oe]=(0,Z.useState)(!1),A,j;t[0]===c?(A=t[1],j=t[2]):(A=()=>{if(c==null)return;let e=O.current;e&&e.focus()},j=[c],t[0]=c,t[1]=A,t[2]=j),(0,Z.useEffect)(A,j);let M;t[3]!==k||t[4]!==f?(M=e=>{e?.preventDefault();let t=k.trim();t.length!==0&&(f(t),O.current?.blur())},t[3]=k,t[4]=f,t[5]=M):M=t[5];let N=M,ce=i?l:mt,I=!i,le;t[6]===Symbol.for(`react.memo_cache_sentinel`)?(le=(0,$.jsx)(ze,{}),t[6]=le):le=t[6];let L;t[7]!==ce||t[8]!==I?(L=(0,$.jsx)(C,{variant:`ghost`,size:`icon-xs`,onClick:ce,disabled:I,"aria-label":`Back`,type:`button`,children:le}),t[7]=ce,t[8]=I,t[9]=L):L=t[9];let ue=a?u:mt,R=!a,de;t[10]===Symbol.for(`react.memo_cache_sentinel`)?(de=(0,$.jsx)(Y,{}),t[10]=de):de=t[10];let z;t[11]!==ue||t[12]!==R?(z=(0,$.jsx)(C,{variant:`ghost`,size:`icon-xs`,onClick:ue,disabled:R,"aria-label":`Forward`,type:`button`,children:de}),t[11]=ue,t[12]=R,t[13]=z):z=t[13];let B=o?mt:d,V=r?`Stop`:`Refresh`,H;t[14]!==o||t[15]!==B||t[16]!==V?(H=(0,$.jsx)(C,{variant:`ghost`,size:`icon-xs`,onClick:B,disabled:o,"aria-label":V,type:`button`}),t[14]=o,t[15]=B,t[16]=V,t[17]=H):H=t[17];let U;t[18]===r?U=t[19]:(U=(0,$.jsx)(We,{refreshing:r}),t[18]=r,t[19]=U);let W;t[20]!==H||t[21]!==U?(W=(0,$.jsx)(se,{render:H,children:U}),t[20]=H,t[21]=U,t[22]=W):W=t[22];let fe=r?`Loading…`:`Refresh`,G;t[23]===fe?G=t[24]:(G=(0,$.jsx)(P,{children:fe}),t[23]=fe,t[24]=G);let K;t[25]!==W||t[26]!==G?(K=(0,$.jsxs)(F,{children:[W,G]}),t[25]=W,t[26]=G,t[27]=K):K=t[27];let q;t[28]!==z||t[29]!==K||t[30]!==L?(q=(0,$.jsxs)(`div`,{className:`flex items-center gap-0.5`,role:`group`,"aria-label":`Navigation`,children:[L,z,K]}),t[28]=z,t[29]=K,t[30]=L,t[31]=q):q=t[31];let pe=ae?k:n,me;t[32]===Symbol.for(`react.memo_cache_sentinel`)?(me=e=>ne(e.target.value),t[32]=me):me=t[32];let he;t[33]===n?he=t[34]:(he=()=>{ne(n),oe(!0),queueMicrotask(()=>O.current?.select())},t[33]=n,t[34]=he);let ge;t[35]===Symbol.for(`react.memo_cache_sentinel`)?(ge=()=>{oe(!1)},t[35]=ge):ge=t[35];let _e;t[36]!==N||t[37]!==n?(_e=e=>{e.key===`Enter`&&N(e),e.key===`Escape`&&(e.preventDefault(),ne(n),O.current?.blur())},t[36]=N,t[37]=n,t[38]=_e):_e=t[38];let ve;t[39]!==s||t[40]!==pe||t[41]!==he||t[42]!==_e?(ve=(0,$.jsx)(F,{children:(0,$.jsx)(se,{render:(0,$.jsx)(Le,{ref:O,value:pe,onChange:me,onFocus:he,onBlur:ge,onKeyDown:_e,placeholder:`Search or enter URL`,spellCheck:!1,disabled:s,"data-preview-url-input":!0,size:`sm`})})}),t[39]=s,t[40]=pe,t[41]=he,t[42]=_e,t[43]=ve):ve=t[43];let ye;t[44]!==ae||t[45]!==p?(ye=p&&!ae?(0,$.jsx)(Ie,{align:`inline-end`,children:(0,$.jsx)(`span`,{className:`pointer-events-none flex opacity-0 transition-opacity focus-within:pointer-events-auto focus-within:opacity-100 group-hover/address:pointer-events-auto group-hover/address:opacity-100`,children:(0,$.jsx)(C,{variant:`ghost`,size:`icon-xs`,onClick:p,"aria-label":`Open in system browser`,type:`button`,children:(0,$.jsx)(te,{})})})}):null,t[44]=ae,t[45]=p,t[46]=ye):ye=t[46];let be;t[47]!==ve||t[48]!==ye?(be=(0,$.jsxs)(Re,{variant:`ghost`,className:`group/address h-7 flex-1`,children:[ve,ye]}),t[47]=ve,t[48]=ye,t[49]=be):be=t[49];let xe;t[50]!==b||t[51]!==x||t[52]!==S||t[53]!==w?(xe=b?(0,$.jsxs)(F,{children:[(0,$.jsx)(se,{render:(0,$.jsx)(C,{variant:x?`secondary`:`ghost`,size:`icon-xs`,onClick:b,disabled:S,"aria-label":x?`Cancel annotation`:`Annotate preview`,"aria-pressed":x?`true`:`false`,type:`button`}),children:(0,$.jsx)(re,{className:T(x&&`text-primary`)})}),(0,$.jsx)(P,{children:S&&w?w:x?`Cancel annotation (Esc)`:`Annotate elements, regions, and drawings`})]}):null,t[50]=b,t[51]=x,t[52]=S,t[53]=w,t[54]=xe):xe=t[54];let Se;t[55]!==h||t[56]!==m||t[57]!==g?(Se=m?(0,$.jsxs)(F,{children:[(0,$.jsxs)(se,{render:(0,$.jsx)(C,{variant:g?`secondary`:`ghost`,size:`icon-xs`,onClick:e=>m(e.shiftKey),"aria-label":g?`Stop recording`:`Capture screenshot`,type:`button`,className:`relative`,disabled:h}),children:[(0,$.jsx)(D,{className:T(g&&`text-destructive`)}),g?(0,$.jsx)(`span`,{className:`absolute right-0.5 top-0.5 size-1.5 animate-status-pulse rounded-full bg-destructive`}):null]}),(0,$.jsx)(P,{children:g?`Stop recording`:`Screenshot · Shift-click to record`})]}):null,t[55]=h,t[56]=m,t[57]=g,t[58]=Se):Se=t[58];let Ce;t[59]!==_||t[60]!==v||t[61]!==y?(Ce=_?(0,$.jsx)(C,{variant:v?`secondary`:`ghost`,size:`icon-xs`,onClick:_,"aria-label":v?`Close floating preview`:`Float preview over chat`,"aria-pressed":v?`true`:`false`,type:`button`,disabled:y,children:(0,$.jsx)(ie,{className:T(v&&`text-primary`)})}):null,t[59]=_,t[60]=v,t[61]=y,t[62]=Ce):Ce=t[62];let we;t[63]!==E||t[64]!==N||t[65]!==q||t[66]!==be||t[67]!==xe||t[68]!==Se||t[69]!==Ce||t[70]!==ee?(we=(0,$.jsxs)(`form`,{onSubmit:N,className:`flex h-10 min-h-10 shrink-0 items-center gap-1 border-b border-border/60 bg-background px-2 in-data-[preview-panel-mode=inline]:mb-3 in-data-[preview-panel-mode=inline]:h-7 in-data-[preview-panel-mode=inline]:min-h-7 in-data-[preview-panel-mode=inline]:border-b-transparent`,"data-surface-subheader":!0,children:[q,E,be,xe,Se,Ce,ee]}),t[63]=E,t[64]=N,t[65]=q,t[66]=be,t[67]=xe,t[68]=Se,t[69]=Ce,t[70]=ee,t[71]=we):we=t[71];let Te;t[72]===Symbol.for(`react.memo_cache_sentinel`)?(Te={boxShadow:`0 0 6px 1px var(--color-ring)`},t[72]=Te):Te=t[72];let Ee;t[73]===r?Ee=t[74]:(Ee=(0,$.jsx)(`div`,{"aria-hidden":!0,"data-loading":r,className:`preview-loading-progress pointer-events-none absolute bottom-0 left-0 z-10 h-0.5 w-full origin-left rounded-r-full bg-primary`,style:Te}),t[73]=r,t[74]=Ee);let De;return t[75]!==we||t[76]!==Ee?(De=(0,$.jsxs)(`div`,{className:`relative`,children:[we,Ee]}),t[75]=we,t[76]=Ee,t[77]=De):De=t[77],De}function gt(e){let t=(0,Q.c)(10),{threadRef:n,server:r,onOpen:i}=e,a;t[0]===r?a=t[1]:(a=_t(r),t[0]=r,t[1]=a);let o=a,s;t[2]!==r.requestedUrl||t[3]!==n?(s=(0,$.jsx)(W,{threadRef:n,url:r.requestedUrl}),t[2]=r.requestedUrl,t[3]=n,t[4]=s):s=t[4];let c=`${r.host}:${r.port}`,l;return t[5]!==i||t[6]!==o||t[7]!==s||t[8]!==c?(l=(0,$.jsx)(_e,{onClick:i,icon:s,title:o,description:c}),t[5]=i,t[6]=o,t[7]=s,t[8]=c,t[9]=l):l=t[9],l}function _t(e){return e.processName?e.processName:`Listening`}function vt(e){let t=(0,Q.c)(26),{threadRef:n,entry:r,onOpen:i,onRemove:a}=e,o;t[0]===r.url?o=t[1]:(o=new URL(r.url),t[0]=r.url,t[1]=o);let s=o,c=s.pathname===`/`?``:s.pathname,l=`${s.host}${c}${s.search}${s.hash}`,u;t[2]===r.lastVisitedAt?u=t[3]:(u=ke(r.lastVisitedAt)?fe(new Date(r.lastVisitedAt).toISOString()):``,t[2]=r.lastVisitedAt,t[3]=u);let d=u;ut();let f;t[4]!==r.url||t[5]!==n?(f=(0,$.jsx)(W,{threadRef:n,url:r.url}),t[4]=r.url,t[5]=n,t[6]=f):f=t[6];let p=r.title??l,m;t[7]===p?m=t[8]:(m=(0,$.jsx)(`span`,{className:`truncate text-sm font-medium text-foreground`,children:p}),t[7]=p,t[8]=m);let h=r.title?`${l} · `:``,g;t[9]!==h||t[10]!==d?(g=(0,$.jsxs)(`span`,{className:`truncate text-xs text-muted-foreground`,children:[h,d]}),t[9]=h,t[10]=d,t[11]=g):g=t[11];let _;t[12]!==m||t[13]!==g?(_=(0,$.jsxs)(`div`,{className:`flex min-w-0 flex-1 flex-col`,children:[m,g]}),t[12]=m,t[13]=g,t[14]=_):_=t[14];let v;t[15]!==i||t[16]!==f||t[17]!==_?(v=(0,$.jsxs)(`button`,{type:`button`,onClick:i,className:`flex w-full items-center gap-3 px-3 py-3 pr-10 text-left hover:bg-accent/40 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-ring`,children:[f,_]}),t[15]=i,t[16]=f,t[17]=_,t[18]=v):v=t[18];let y=`Remove ${l} from history`,b;t[19]===Symbol.for(`react.memo_cache_sentinel`)?(b=(0,$.jsx)(A,{className:`size-3.5`}),t[19]=b):b=t[19];let x;t[20]!==a||t[21]!==y?(x=(0,$.jsx)(`button`,{type:`button`,"aria-label":y,onClick:a,className:`absolute right-3 rounded p-1 text-muted-foreground opacity-0 hover:bg-accent hover:text-foreground focus-visible:opacity-100 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-ring group-hover:opacity-100`,children:b}),t[20]=a,t[21]=y,t[22]=x):x=t[22];let S;return t[23]!==x||t[24]!==v?(S=(0,$.jsxs)(`div`,{className:`group relative flex w-full items-center`,children:[v,x]}),t[23]=x,t[24]=v,t[25]=S):S=t[25],S}function yt(e){let t=(0,Q.c)(7),n=J(e.environmentId,e.configuredUrls),r;if(t[0]!==e.configuredUrls||t[1]!==e.environmentId||t[2]!==n.configuredUrlProbing||t[3]!==n.servers){let i;t[5]===e.environmentId?i=t[6]:(i=t=>({...t,url:De(e.environmentId,t.url),requestedUrl:t.url}),t[5]=e.environmentId,t[6]=i),r=bt({scanner:n.servers.map(i),configuredUrls:e.configuredUrls??[],configuredUrlProbing:n.configuredUrlProbing}),t[0]=e.configuredUrls,t[1]=e.environmentId,t[2]=n.configuredUrlProbing,t[3]=n.servers,t[4]=r}else r=t[4];return r}function bt(e){let t=new Map;for(let n of e.configuredUrls){let e=St(n);if(!e)continue;let r=xt(e.host,e.port);t.has(r)||t.set(r,e)}let n=[];for(let r of e.scanner){let i=xt(r.host,r.port),a=t.get(i);n.push({...r,requestedUrl:a&&e.configuredUrlProbing===!1?a.url:r.requestedUrl,source:a?`configured`:`scanner`})}return n.toSorted((e,t)=>{let n={configured:0,scanner:1};return n[e.source]===n[t.source]?e.port-t.port:n[e.source]-n[t.source]})}function xt(e,t){let n=e.toLowerCase();return`${Fe(n)?`loopback`:n}:${t}`}function St(e){try{let t=new URL(e);if(t.protocol!==`http:`&&t.protocol!==`https:`||!Fe(t.hostname))return null;let n=t.port?Number.parseInt(t.port,10):t.protocol===`http:`?80:443;return!Number.isFinite(n)||n<=0?null:{host:t.hostname,port:n,url:t.href}}catch{return null}}function Ct(e){let t=(0,Q.c)(24),{threadRef:n,environmentId:r,configuredUrls:i,recentEntries:a,onRemoveRecent:o,onOpenUrl:s}=e,c;t[0]!==i||t[1]!==r?(c={environmentId:r,configuredUrls:i},t[0]=i,t[1]=r,t[2]=c):c=t[2];let l=yt(c),u,d,f,p;if(t[3]!==s||t[4]!==o||t[5]!==a||t[6]!==l.length||t[7]!==n){p=Symbol.for(`react.early_return_sentinel`);bb0:{let e=a.filter(wt).slice(0,8);if(l.length===0&&e.length===0){let e;t[12]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,$.jsxs)(pe,{children:[(0,$.jsx)(G,{variant:`icon`,children:(0,$.jsx)(k,{className:`size-4.5 text-muted-foreground`})}),(0,$.jsx)(K,{children:`No preview yet`}),(0,$.jsx)(q,{children:`Type a URL above, or run a dev script. Browser-ready localhost servers will show up here automatically.`})]}),t[12]=e):e=t[12],p=e;break bb0}f=`scrollbar-gutter-both flex h-full min-h-0 overflow-y-auto px-5 py-8`,u=`mx-auto flex w-full max-w-xl flex-col gap-6`,d=e.length>0?(0,$.jsxs)(`div`,{className:`flex flex-col gap-3`,children:[(0,$.jsxs)(`div`,{className:`flex items-center gap-2 text-sm text-muted-foreground`,children:[(0,$.jsx)(Xe,{className:`size-4 shrink-0`}),(0,$.jsx)(`h2`,{className:`font-medium`,children:`Recently used`})]}),(0,$.jsx)(ve,{children:e.map(e=>(0,$.jsx)(vt,{threadRef:n,entry:e,onOpen:()=>s(e.url),onRemove:()=>o(e.url)},e.url))})]}):null}t[3]=s,t[4]=o,t[5]=a,t[6]=l.length,t[7]=n,t[8]=u,t[9]=d,t[10]=f,t[11]=p}else u=t[8],d=t[9],f=t[10],p=t[11];if(p!==Symbol.for(`react.early_return_sentinel`))return p;let m;t[13]!==s||t[14]!==l||t[15]!==n?(m=l.length>0?(0,$.jsxs)(`div`,{className:`flex flex-col gap-3`,children:[(0,$.jsxs)(`div`,{className:`flex items-center gap-2 text-sm text-muted-foreground`,children:[(0,$.jsx)(oe,{className:`size-4 shrink-0`}),(0,$.jsx)(`h2`,{className:`font-medium`,children:`Local servers`})]}),(0,$.jsx)(ve,{children:l.map(e=>(0,$.jsx)(gt,{threadRef:n,server:e,onOpen:()=>s(e.requestedUrl)},`${e.host}:${e.port}`))}),(0,$.jsx)(`p`,{className:`px-1 text-xs text-muted-foreground`,children:`Select a live local server to open it in this browser tab.`})]}):null,t[13]=s,t[14]=l,t[15]=n,t[16]=m):m=t[16];let h;t[17]!==u||t[18]!==d||t[19]!==m?(h=(0,$.jsxs)(`div`,{className:u,children:[d,m]}),t[17]=u,t[18]=d,t[19]=m,t[20]=h):h=t[20];let g;return t[21]!==f||t[22]!==h?(g=(0,$.jsx)(`div`,{className:f,children:h}),t[21]=f,t[22]=h,t[23]=g):g=t[23],g}function wt(e){return URL.canParse(e.url)}var Tt=[{value:`system`,label:`System`},{value:`light`,label:`Light`},{value:`dark`,label:`Dark`}],Et=()=>{let e=(0,Q.c)(1),t;return e[0]===Symbol.for(`react.memo_cache_sentinel`)?(t=(0,$.jsxs)(F,{children:[(0,$.jsx)(se,{render:(0,$.jsx)(_,{render:(0,$.jsx)(C,{variant:`ghost`,size:`icon-xs`,type:`button`,"aria-label":`Preview menu`})}),children:(0,$.jsx)(O,{})}),(0,$.jsx)(P,{children:`More`})]}),e[0]=t):t=e[0],t};function Dt(e){let t=(0,Q.c)(74),{enabled:n,actions:r,zoomFactor:i,colorScheme:a,deviceToolbarVisible:c,onToggleDeviceToolbar:l,nativePictureInPicture:u,profileName:d,move:f}=e,p;t[0]===i?p=t[1]:(p=Math.round(i*100),t[0]=i,t[1]=p);let _=`${p}%`,y=!n,x;t[2]===Symbol.for(`react.memo_cache_sentinel`)?(x=(0,$.jsx)(Et,{}),t[2]=x):x=t[2];let T;t[3]!==r.hardReload||t[4]!==y?(T=(0,$.jsx)(o,{onClick:r.hardReload,disabled:y,children:`Hard reload`}),t[3]=r.hardReload,t[4]=y,t[5]=T):T=t[5];let E;t[6]!==r.openDevTools||t[7]!==y?(E=r.openDevTools?(0,$.jsx)(o,{onClick:r.openDevTools,disabled:y,children:`Open DevTools`}):null,t[6]=r.openDevTools,t[7]=y,t[8]=E):E=t[8];let D;t[9]!==r.toggleNativePictureInPicture||t[10]!==y||t[11]!==u?(D=r.toggleNativePictureInPicture?(0,$.jsx)(o,{onClick:r.toggleNativePictureInPicture,disabled:y,children:u?`Close separate preview window`:`Open separate preview window`}):null,t[9]=r.toggleNativePictureInPicture,t[10]=y,t[11]=u,t[12]=D):D=t[12];let O;t[13]===f?O=t[14]:(O=f?(0,$.jsx)(o,{onClick:f.onMove,children:f.label}):null,t[13]=f,t[14]=O);let te=c?`Hide device toolbar`:`Show device toolbar`,k;t[15]!==y||t[16]!==l||t[17]!==te?(k=(0,$.jsx)(o,{onClick:l,disabled:y,children:te}),t[15]=y,t[16]=l,t[17]=te,t[18]=k):k=t[18];let re;t[19]===y?re=t[20]:(re=(0,$.jsx)(b,{disabled:y,children:`Appearance`}),t[19]=y,t[20]=re);let ie;t[21]===r?ie=t[22]:(ie=e=>r.setColorScheme(e),t[21]=r,t[22]=ie);let oe;t[23]===Symbol.for(`react.memo_cache_sentinel`)?(oe=Tt.map(kt),t[23]=oe):oe=t[23];let A;t[24]!==a||t[25]!==ie?(A=(0,$.jsx)(ee,{children:(0,$.jsx)(g,{value:a,onValueChange:ie,children:oe})}),t[24]=a,t[25]=ie,t[26]=A):A=t[26];let j;t[27]!==A||t[28]!==re?(j=(0,$.jsxs)(S,{children:[re,A]}),t[27]=A,t[28]=re,t[29]=j):j=t[29];let M;t[30]===Symbol.for(`react.memo_cache_sentinel`)?(M=(0,$.jsx)(v,{}),t[30]=M):M=t[30];let N;t[31]===Symbol.for(`react.memo_cache_sentinel`)?(N=(0,$.jsx)(`span`,{children:`Zoom`}),t[31]=N):N=t[31];let se;t[32]===Symbol.for(`react.memo_cache_sentinel`)?(se=(0,$.jsx)(ne,{}),t[32]=se):se=t[32];let P;t[33]!==r.zoomOut||t[34]!==y?(P=(0,$.jsx)(C,{variant:`outline`,size:`icon-xs`,type:`button`,onClick:r.zoomOut,"aria-label":`Zoom out`,disabled:y,children:se}),t[33]=r.zoomOut,t[34]=y,t[35]=P):P=t[35];let F;t[36]===_?F=t[37]:(F=(0,$.jsx)(`span`,{className:`min-w-12 text-center text-xs tabular-nums text-muted-foreground`,children:_}),t[36]=_,t[37]=F);let ce;t[38]===Symbol.for(`react.memo_cache_sentinel`)?(ce=(0,$.jsx)(ae,{}),t[38]=ce):ce=t[38];let I;t[39]!==r.zoomIn||t[40]!==y?(I=(0,$.jsx)(C,{variant:`outline`,size:`icon-xs`,type:`button`,onClick:r.zoomIn,"aria-label":`Zoom in`,disabled:y,children:ce}),t[39]=r.zoomIn,t[40]=y,t[41]=I):I=t[41];let le;t[42]===Symbol.for(`react.memo_cache_sentinel`)?(le=(0,$.jsx)(Ze,{}),t[42]=le):le=t[42];let L;t[43]!==r.resetZoom||t[44]!==y?(L=(0,$.jsx)(C,{variant:`ghost`,size:`icon-xs`,type:`button`,onClick:r.resetZoom,"aria-label":`Reset zoom`,disabled:y,children:le}),t[43]=r.resetZoom,t[44]=y,t[45]=L):L=t[45];let ue;t[46]!==P||t[47]!==F||t[48]!==I||t[49]!==L?(ue=(0,$.jsxs)(`span`,{className:`flex items-center gap-1`,children:[P,F,I,L]}),t[46]=P,t[47]=F,t[48]=I,t[49]=L,t[50]=ue):ue=t[50];let R;t[51]!==y||t[52]!==ue?(R=(0,$.jsxs)(o,{closeOnClick:!1,onClick:Ot,className:`justify-between`,disabled:y,children:[N,ue]}),t[51]=y,t[52]=ue,t[53]=R):R=t[53];let de;t[54]===Symbol.for(`react.memo_cache_sentinel`)?(de=(0,$.jsx)(v,{}),t[54]=de):de=t[54];let z;t[55]===d?z=t[56]:(z=d?(0,$.jsx)(w,{className:`max-w-64`,children:(0,$.jsxs)(`span`,{className:`block truncate`,children:[`Profile: `,d]})}):null,t[55]=d,t[56]=z);let B;t[57]===r.clearCookies?B=t[58]:(B=(0,$.jsx)(o,{onClick:r.clearCookies,children:`Clear cookies`}),t[57]=r.clearCookies,t[58]=B);let V;t[59]===r.clearCache?V=t[60]:(V=(0,$.jsx)(o,{onClick:r.clearCache,children:`Clear cache`}),t[59]=r.clearCache,t[60]=V);let H;t[61]!==z||t[62]!==B||t[63]!==V?(H=(0,$.jsxs)(s,{children:[z,B,V]}),t[61]=z,t[62]=B,t[63]=V,t[64]=H):H=t[64];let U;return t[65]!==j||t[66]!==R||t[67]!==H||t[68]!==T||t[69]!==E||t[70]!==D||t[71]!==O||t[72]!==k?(U=(0,$.jsxs)(m,{children:[x,(0,$.jsxs)(h,{align:`end`,sideOffset:6,children:[T,E,D,O,k,j,M,R,de,H]})]}),t[65]=j,t[66]=R,t[67]=H,t[68]=T,t[69]=E,t[70]=D,t[71]=O,t[72]=k,t[73]=U):U=t[73],U}function Ot(e){return e.preventDefault()}function kt(e){return(0,$.jsx)(u,{value:e.value,children:e.label},e.value)}function At(e){return d[e]||(e.length>0?e:`Network error`)}function jt(e){let t=(0,Q.c)(21),{url:n,fileName:r,downloadUrl:i,onOpen:a}=e,o;t[0]===n?o=t[1]:(o=Ft(n)??n,t[0]=n,t[1]=o);let s=o,c,l;t[2]===Symbol.for(`react.memo_cache_sentinel`)?(c=(0,$.jsx)(Pt,{className:`mb-6 size-12 text-muted-foreground/70`}),l=(0,$.jsx)(`h1`,{className:`mb-3 text-2xl font-semibold leading-tight text-foreground`,children:`This file can’t be shown here`}),t[2]=c,t[3]=l):(c=t[2],l=t[3]);let u;t[4]===r?u=t[5]:(u=(0,$.jsx)(`span`,{className:`font-semibold text-foreground`,children:r}),t[4]=r,t[5]=u);let d;t[6]!==s||t[7]!==u?(d=(0,$.jsxs)(`p`,{className:`text-sm leading-relaxed text-muted-foreground`,children:[u,` from `,s,` was downloaded instead.`]}),t[6]=s,t[7]=u,t[8]=d):d=t[8];let f;t[9]===Symbol.for(`react.memo_cache_sentinel`)?(f=(0,$.jsx)(`div`,{className:`flex-1`}),t[9]=f):f=t[9];let p;t[10]===a?p=t[11]:(p=(0,$.jsx)(C,{type:`button`,variant:`outline`,size:`sm`,onClick:a,children:`Open in browser`}),t[10]=a,t[11]=p);let m;t[12]!==i||t[13]!==r?(m=i?(0,$.jsx)(C,{type:`button`,size:`sm`,render:(0,$.jsx)(`a`,{href:i,download:r}),children:`Download`}):null,t[12]=i,t[13]=r,t[14]=m):m=t[14];let h;t[15]!==p||t[16]!==m?(h=(0,$.jsxs)(`div`,{className:`mt-auto flex items-center gap-2 pt-8`,children:[f,p,m]}),t[15]=p,t[16]=m,t[17]=h):h=t[17];let g;return t[18]!==d||t[19]!==h?(g=(0,$.jsx)(`div`,{className:`scrollbar-gutter-both relative flex h-full min-h-0 w-full overflow-y-auto bg-background`,children:(0,$.jsxs)(`div`,{className:`mx-auto flex w-full max-w-xl flex-1 flex-col px-8 py-12 sm:py-16`,children:[c,l,d,h]})}),t[18]=d,t[19]=h,t[20]=g):g=t[20],g}function Mt(e){let t=(0,Q.c)(36),{url:n,code:r,description:i,onReload:a,move:o}=e,[s,c]=(0,Z.useState)(!1),l;t[0]===n?l=t[1]:(l=Ft(n)??n,t[0]=n,t[1]=l);let u=l,d;t[2]===i?d=t[3]:(d=At(i),t[2]=i,t[3]=d);let f=d,p;t[4]!==r||t[5]!==i?(p=i.length>0?i:`ERR_${Math.abs(r)||`FAILED`}`,t[4]=r,t[5]=i,t[6]=p):p=t[6];let m=p,h,g;t[7]===Symbol.for(`react.memo_cache_sentinel`)?(h=(0,$.jsx)(Pt,{className:`mb-6 size-12 text-muted-foreground/70`}),g=(0,$.jsx)(`h1`,{className:`mb-3 text-2xl font-semibold leading-tight text-foreground`,children:`This site can’t be reached`}),t[7]=h,t[8]=g):(h=t[7],g=t[8]);let _;t[9]===u?_=t[10]:(_=(0,$.jsx)(`span`,{className:`font-semibold text-foreground`,children:u}),t[9]=u,t[10]=_);let v;t[11]!==f||t[12]!==_?(v=(0,$.jsxs)(`p`,{className:`text-sm leading-relaxed text-muted-foreground`,children:[_,`: `,f,`.`]}),t[11]=f,t[12]=_,t[13]=v):v=t[13];let y;t[14]!==o||t[15]!==s?(y=s?(0,$.jsxs)(`div`,{className:`mt-6 rounded-lg border border-border bg-muted/40 p-4 text-sm`,children:[(0,$.jsx)(`p`,{className:`mb-2 font-medium text-foreground`,children:`Try:`}),(0,$.jsxs)(`ul`,{className:`list-disc space-y-1 pl-5 text-muted-foreground`,children:[(0,$.jsx)(`li`,{children:`Checking your connection`}),(0,$.jsx)(`li`,{children:`Confirming the dev server is running`}),o?(0,$.jsx)(`li`,{children:`Opening it in the environment’s browser, which reaches its network`}):null,(0,$.jsx)(`li`,{children:`Checking the proxy and the firewall`})]})]}):null,t[14]=o,t[15]=s,t[16]=y):y=t[16];let b;t[17]===m?b=t[18]:(b=(0,$.jsx)(`div`,{className:`mt-8 text-xs uppercase tracking-wide text-muted-foreground/70`,children:m}),t[17]=m,t[18]=b);let x;t[19]===Symbol.for(`react.memo_cache_sentinel`)?(x=()=>c(Nt),t[19]=x):x=t[19];let S=s?`Hide details`:`Details`,w;t[20]===S?w=t[21]:(w=(0,$.jsx)(C,{type:`button`,variant:`outline`,size:`sm`,onClick:x,children:S}),t[20]=S,t[21]=w);let ee;t[22]===Symbol.for(`react.memo_cache_sentinel`)?(ee=(0,$.jsx)(`div`,{className:`flex-1`}),t[22]=ee):ee=t[22];let T;t[23]===o?T=t[24]:(T=o?(0,$.jsx)(C,{type:`button`,variant:`outline`,size:`sm`,onClick:o.onMove,children:o.label}):null,t[23]=o,t[24]=T);let E;t[25]===a?E=t[26]:(E=(0,$.jsx)(C,{type:`button`,size:`sm`,onClick:a,children:`Reload`}),t[25]=a,t[26]=E);let D;t[27]!==w||t[28]!==T||t[29]!==E?(D=(0,$.jsxs)(`div`,{className:`mt-auto flex items-center gap-2 pt-8`,children:[w,ee,T,E]}),t[27]=w,t[28]=T,t[29]=E,t[30]=D):D=t[30];let O;return t[31]!==D||t[32]!==v||t[33]!==y||t[34]!==b?(O=(0,$.jsx)(`div`,{className:`scrollbar-gutter-both relative flex h-full min-h-0 w-full overflow-y-auto bg-background`,children:(0,$.jsxs)(`div`,{className:`mx-auto flex w-full max-w-xl flex-1 flex-col px-8 py-12 sm:py-16`,children:[h,g,v,y,b,D]})}),t[31]=D,t[32]=v,t[33]=y,t[34]=b,t[35]=O):O=t[35],O}function Nt(e){return!e}function Pt(e){let t=(0,Q.c)(5),{className:n}=e,r,i,a;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(r=(0,$.jsx)(`path`,{d:`M16 12 L48 12 L48 52 L16 52 Z`}),i=(0,$.jsx)(`path`,{d:`M22 22 L42 22 M22 30 L36 30 M22 38 L40 38`,strokeLinecap:`round`}),a=(0,$.jsx)(`path`,{d:`M52 8 L12 56`,strokeLinecap:`round`}),t[0]=r,t[1]=i,t[2]=a):(r=t[0],i=t[1],a=t[2]);let o;return t[3]===n?o=t[4]:(o=(0,$.jsxs)(`svg`,{viewBox:`0 0 64 64`,fill:`none`,stroke:`currentColor`,strokeWidth:`2.5`,className:n,children:[r,i,a]}),t[3]=n,t[4]=o),o}function Ft(e){try{return new URL(e).host}catch{return null}}var It=1500,Lt=.001;function Rt(e){let t=(0,Q.c)(11),{zoomFactor:n}=e,[r,i]=(0,Z.useState)(!1),a=(0,Z.useRef)(n),o=(0,Z.useRef)(null),s,c;t[0]===n?(s=t[1],c=t[2]):(s=()=>{if(!(Math.abs(a.current-n)<Lt))return a.current=n,i(!0),o.current!==null&&window.clearTimeout(o.current),o.current=window.setTimeout(()=>{i(!1),o.current=null},It),()=>{o.current!==null&&(window.clearTimeout(o.current),o.current=null)}},c=[n],t[0]=n,t[1]=s,t[2]=c),(0,Z.useEffect)(s,c);let l;t[3]===n?l=t[4]:(l=Math.round(n*100),t[3]=n,t[4]=l);let u=`${l}%`,d=!r,f=r?`opacity-100 translate-y-0`:`opacity-0 -translate-y-1`,p;t[5]===f?p=t[6]:(p=T(`pointer-events-none absolute top-3 right-3 z-20 select-none rounded-full border border-border/70 bg-popover/95 px-2.5 py-1 text-xs font-medium text-foreground shadow-md/10 backdrop-blur transition-all duration-200 ease-out`,f),t[5]=f,t[6]=p);let m;return t[7]!==u||t[8]!==d||t[9]!==p?(m=(0,$.jsx)(`div`,{"aria-hidden":d,className:p,children:u}),t[7]=u,t[8]=d,t[9]=p,t[10]=m):m=t[10],m}function zt(e,t){return e.find(e=>e.id===t)?.name??`Removed profile`}var Bt=typeof window>`u`?null:R();function Vt(e){let t=(0,Q.c)(12),n=rt(e.threadRef.environmentId),r;t[0]!==n||t[1]!==e.download.id||t[2]!==e.tabId||t[3]!==e.threadRef.threadId?(r=n?it({access:n,threadId:e.threadRef.threadId,tabId:e.tabId},e.download.id):null,t[0]=n,t[1]=e.download.id,t[2]=e.tabId,t[3]=e.threadRef.threadId,t[4]=r):r=t[4];let i;t[5]===e.url?i=t[6]:(i=()=>void Bt?.shell.openExternal(e.url).catch(Ht),t[5]=e.url,t[6]=i);let a;return t[7]!==e.download.fileName||t[8]!==e.url||t[9]!==r||t[10]!==i?(a=(0,$.jsx)(jt,{url:e.url,fileName:e.download.fileName,downloadUrl:r,onOpen:i}),t[7]=e.download.fileName,t[8]=e.url,t[9]=r,t[10]=i,t[11]=a):a=t[11],a}function Ht(){}function Ut({threadRef:e,tabId:t,configuredUrls:o,visible:s,onSendAnnotation:u}){let[d,f]=(0,Z.useState)(void 0),[m,h]=(0,Z.useState)(!1),g=de(e.environmentId,`orchestration:operate`)&&!!u,_=He(),v=(0,Z.useRef)(null),b=(0,Z.useRef)(!0),x=(0,Z.useRef)(e);x.current=e;let S=l(e),C=Se(e,50),w=me(t=>he(t.byThreadKey,e)),ee=i(e=>e.addPreviewAnnotation),E=i(e=>e.addImage),D=le(e.environmentId),O=D?new URL(D).hostname:null,te=B(Me.open),k=B(Me.close,`preview close`),ne=ue(e.environmentId)?.label??`the environment`,re=L(),ie=N(e.environmentId),ae=B(Me.resize,`preview viewport resize`),oe=B(Me.adjust,`preview appearance or zoom`);st(e),(0,Z.useEffect)(()=>(b.current=!0,()=>{b.current=!1}),[]);let A=t??S.activeTabId,R=A?Ue(e,S.serverEpoch,A):null,U=A&&R?_.has(R)?R:Ge(e,A):null,W=A?S.sessions[A]??null:null,fe=xe(e.environmentId,W),G=W?.runtime===`server`&&!fe,K=W?.runtime===`server`,q=(0,Z.useRef)(null),[pe,_e]=(0,Z.useState)(!1),ve=(0,Z.useRef)(null),[ke,je]=(0,Z.useState)(0),Fe=W?.runtime===`server`&&(W.viewport??a)._tag!==`fill`;(0,Z.useEffect)(()=>{let e=ve.current;if(e&&Fe)return ye(e,([e])=>je(Math.max(1,Math.round(e?.contentRect.width??0))))},[Fe]);let[Ie,Le]=(0,Z.useState)(null),Re=G&&Ie!==R,[ze,We]=(0,Z.useState)(null),J=A?S.desktopByTabId[A]??null:null,Y=W?.navStatus??{_tag:`Idle`},Ye=Y._tag===`Idle`?``:Y.url,Xe=J?.loading??Y._tag===`Loading`,Ze=J?.canGoBack??W?.canGoBack??!1,rt=J?.canGoForward??W?.canGoForward??!1,it=Y._tag===`Idle`,ut=Y._tag===`LoadFailed`,Q=ct(W),ft=G&&!Q&&!ut&&ze!==R,mt=J?.controller??`none`,gt=W?.viewport??a,_t=we(),vt=W?.profileId??`default`,yt=zt(_t.profiles,vt),bt=Ve(e=>R?e.byTabId[R]?.rect??null:null),xt=Y._tag===`Success`?Y.url:null,St=Y._tag===`Success`?Y.title:null,wt=C[0]?.url,Tt=r(e);(0,Z.useEffect)(()=>{xt&&St&&wt&&Te(x.current,xt,St,O)},[O,wt,St,xt,Tt]);let Et=(0,Z.useCallback)(async t=>{if(G&&q.current)return!Re&&(q.current.navigate(t),n(e,t),!0);if(R&&X)return await X.navigate(R,t),n(e,t),!0;let r=await $e({openPreview:te,threadRef:e,url:t});if(r._tag===`Failure`&&!j(r)){let e=M(r);e instanceof be&&I.add({type:`error`,title:`Unable to open browser`,description:e.message})}return r._tag===`Success`},[G,te,R,Re,e]),Ot=(0,Z.useCallback)(async t=>{try{let n=Pe(t);await Et(n)&&Ee(e,n)}catch{}},[Et,e]),kt=(0,Z.useCallback)(async t=>{try{let n=G||!X?Ne(t):De(e.environmentId,t);await Et(n)&&Ee(e,t)}catch{}},[G,Et,e]),At=(0,Z.useCallback)(()=>{G?q.current?.reload():X&&R&&X.refresh(R)},[G,R]),jt=(0,Z.useCallback)(async t=>{if(!A)return;let n=await oe({environmentId:e.environmentId,input:{threadId:e.threadId,tabId:A,...t}});if(n._tag===`Failure`){let e=M(n);I.add({type:`error`,title:`Unable to change the browser tab`,description:e instanceof Error?e.message:`An error occurred.`});return}c(e,n.value)},[oe,A,e]),Nt=W?.zoomFactor??1,Pt=(0,Z.useCallback)(e=>{let t=y.indexOf(Nt),n=e===0?1:y[Math.min(Math.max((t<0?7:t)+e,0),y.length-1)];n!==Nt&&jt({zoomFactor:n})},[jt,Nt]),Ft=(0,Z.useCallback)(()=>{K?Pt(1):X&&R&&X.zoomIn(R)},[R,K,Pt]),It=(0,Z.useCallback)(()=>{K?Pt(-1):X&&R&&X.zoomOut(R)},[R,K,Pt]),Lt=(0,Z.useCallback)(()=>{K?Pt(0):X&&R&&X.resetZoom(R)},[R,K,Pt]),Ht=(0,Z.useCallback)(async t=>{if(!A)return;let n=await ae({environmentId:e.environmentId,input:{threadId:e.threadId,tabId:A,viewport:t}});if(n._tag===`Failure`){let e=M(n);throw I.add({type:`error`,title:`Unable to resize browser viewport`,description:e instanceof Error?e.message:`An error occurred.`}),e}c(e,n.value)},[ae,A,e]),Ut=()=>{if(R){if(gt._tag!==`fill`){qe(R,a).catch(()=>void 0);return}qe(R,Ae({defaults:_t,panelRect:bt,zoomFactor:K?Nt:J?.zoomFactor})).catch(()=>void 0)}};(0,Z.useEffect)(()=>{if(R)return Je(R,Ht)},[Ht,R]);let Wt=(0,Z.useCallback)(()=>{G?q.current?.history(-1):X&&R&&X.goBack(R)},[G,R]),Gt=(0,Z.useCallback)(()=>{G?q.current?.history(1):X&&R&&X.goForward(R)},[G,R]),Kt=(0,Z.useCallback)(()=>{Bt&&Ye&&Bt.shell.openExternal(Ye).catch(()=>void 0)},[Ye]),qt=Ce(e.environmentId,re,ie,W),Jt=qt===`server`?`Open in ${ne}'s browser`:`Open on this computer`,Yt=(0,Z.useCallback)(async()=>{if(!qt||!A||!W)return;let t=await $e({openPreview:te,threadRef:e,...Ye?{url:qt===`desktop`?De(e.environmentId,Ye):Ye}:{},viewport:gt,...W.profileId===void 0?{}:{profileId:W.profileId},runtime:qt});if(t._tag===`Failure`){if(j(t))return;let e=M(t);I.add({type:`error`,title:`Unable to move the browser tab`,description:e instanceof Error?e.message:`An error occurred.`});return}V.getState().openBrowser(e,t.value.tabId),await ot({closePreview:k,snapshot:W,tabId:A,threadRef:e})},[k,qt,te,W,A,e,Ye,gt]),Xt=(0,Z.useCallback)(()=>{if(A){if(w===A){me.getState().close(e);return}me.getState().open(e,ge(A)),V.getState().close(e)}},[w,A,e]),Zt=e=>()=>{e&&R&&e(R).catch(()=>void 0)},Qt=K?{hardReload:()=>void jt({hardReload:!0}),setColorScheme:e=>void jt({colorScheme:e}),zoomIn:Ft,zoomOut:It,resetZoom:Lt,clearCookies:()=>void jt({clear:`cookies`}),clearCache:()=>void jt({clear:`cache`}),...fe&&X?{openDevTools:Zt(X.openDevTools),toggleNativePictureInPicture:()=>$t()}:{}}:X?{hardReload:Zt(X.hardReload),setColorScheme:e=>{R&&X?.setColorScheme(R,e).catch(()=>void 0)},zoomIn:Ft,zoomOut:It,resetZoom:Lt,clearCookies:()=>void X?.clearCookies(e.environmentId,vt).catch(()=>void 0),clearCache:()=>void X?.clearCache(e.environmentId,vt).catch(()=>void 0),openDevTools:Zt(X.openDevTools),toggleNativePictureInPicture:()=>$t()}:null,$t=(0,Z.useCallback)(()=>{X&&R&&(J?.pictureInPicture?X.pictureInPicture.close:X.pictureInPicture.open)(R).catch(e=>{I.add({type:`error`,title:`Unable to update popped-out preview`,description:e instanceof Error?e.message:`An error occurred.`})})},[J?.pictureInPicture,R]),en=(0,Z.useCallback)(t=>{if(!X||!R||!A)return;let n=X;if(U){Ke(U).then(e=>{if(!e)return;let t=!1,r,i=()=>{if(!navigator.clipboard?.writeText){I.update(r,H({type:`error`,title:`Unable to copy recording path`,description:`Clipboard API unavailable.`,actionProps:a}));return}navigator.clipboard.writeText(e.path).then(()=>{t=!0,o(),window.setTimeout(()=>{t=!1,o()},2e3)},e=>{I.update(r,H({type:`error`,title:`Unable to copy recording path`,description:e instanceof Error?e.message:`An error occurred.`,actionProps:a}))})},a={children:ce(navigator.platform),onClick:()=>void n.revealArtifact(e.path)},o=()=>{I.update(r,H({type:`success`,title:`Recording saved`,actionProps:a,data:{secondaryActionProps:{children:t?`Copied!`:`Copy path`,disabled:t,onClick:i},secondaryActionVariant:`outline`}}))};r=I.add(H({type:`success`,title:`Recording saved`,actionProps:a,data:{secondaryActionProps:{children:`Copy path`,onClick:i},secondaryActionVariant:`outline`}}))},e=>{I.add({type:`error`,title:`Unable to stop recording`,description:e instanceof Error?e.message:`An error occurred.`})});return}if(t){Be(R,e,A).catch(e=>{let t=e instanceof Error?e.message:`An error occurred.`;et(e)||I.add({type:`error`,title:`Unable to start recording`,description:t})});return}n.captureScreenshot(R).then(e=>{let t={children:ce(navigator.platform),onClick:()=>void n.revealArtifact(e.path)},r=!1,i=!1,a,o=(e=`success`,n=`Screenshot saved`,o)=>{I.update(a,H({type:e,title:n,description:o,actionProps:{children:i?`Copied!`:`Copy image`,disabled:i,onClick:c},data:{additionalActions:[{id:`copy-path`,props:{children:r?`Copied!`:`Copy path`,disabled:r,onClick:s}}],secondaryActionProps:{...t},secondaryActionVariant:`outline`}}))},s=()=>{if(!navigator.clipboard?.writeText){o(`error`,`Unable to copy screenshot path`,`Clipboard API unavailable.`);return}navigator.clipboard.writeText(e.path).then(()=>{r=!0,o(),window.setTimeout(()=>{r=!1,o()},2e3)},e=>{o(`error`,`Unable to copy screenshot path`,e instanceof Error?e.message:`An error occurred.`)})},c=()=>{n.copyArtifactToClipboard(e.path).then(()=>{i=!0,o(),window.setTimeout(()=>{i=!1,o()},2e3)},e=>{o(`error`,`Unable to copy screenshot`,e instanceof Error?e.message:`An error occurred.`)})};a=I.add(H({type:`success`,title:`Screenshot saved`,actionProps:{children:`Copy image`,onClick:c},data:{additionalActions:[{id:`copy-path`,props:{children:`Copy path`,onClick:s}}],secondaryActionProps:{...t},secondaryActionVariant:`outline`}}))},e=>{I.add({type:`error`,title:`Unable to capture screenshot`,description:e instanceof Error?e.message:`An error occurred.`})})},[U,R,A,e]),tn=(0,Z.useCallback)(()=>{if(!X||!R)return;if(v.current){v.current.cancelled=!0,X.cancelPickElement(R).catch(()=>void 0);return}let t=typeof document<`u`?document.activeElement:null,n={cancelled:!1},r=!1;v.current=n,h(!0),(async()=>{try{if(await X.setAnnotationSendEnabled?.(R,!!u&&z(e.environmentId,`orchestration:operate`)),n.cancelled)return;let t=await X.pickElement(R);if(!t||n.cancelled)return;v.current===n&&(v.current=null,b.current&&h(!1),r=!0);let{annotation:i,submission:a,screenshotFailed:o=!1}=t,s=pt(i),c=o||s.status===`failed`,l=s.status===`failed`?{...i,screenshot:null}:i;ee(e,l),c&&I.add(H({type:`error`,title:`Could not capture the picked element`,description:`The annotation was kept without the screenshot.`}));let d=s.status===`captured`?s.file:null,f=d&&l.screenshot?{type:`image`,id:l.id,name:d.name,mimeType:d.type,sizeBytes:d.size,previewUrl:l.screenshot.dataUrl,file:d}:null;f&&E(e,f),a===`send`&&z(e.environmentId,`orchestration:operate`)&&u?.(l,f)}catch{}finally{let e=v.current===n;if(e&&(v.current=null,b.current&&h(!1)),(e||r)&&t&&t.isConnected&&typeof t.focus==`function`)try{t.focus({preventScroll:!0})}catch{}}})()},[E,ee,u,R,e]);return(0,Z.useEffect)(()=>{m&&X&&R&&X.setAnnotationSendEnabled?.(R,g).catch(()=>void 0)},[g,m,R]),(0,Z.useEffect)(()=>()=>{v.current&&(v.current.cancelled=!0,v.current=null,X&&R&&X.cancelPickElement(R).catch(()=>void 0),b.current&&h(!1))},[R]),(0,Z.useEffect)(()=>{if(s)return dt(e=>{switch(e){case`refresh`:At();return;case`focus-url`:f(e=>(e??0)+1);return;case`zoom-in`:Ft();return;case`zoom-out`:It();return;case`reset-zoom`:Lt();return;case`toggle-panel`:return}})},[At,Lt,Ft,It,s]),(0,$.jsxs)(`div`,{className:`flex min-h-0 flex-1 flex-col bg-background`,"data-thread-key":r(e),children:[(0,$.jsx)(ht,{url:Ye,loading:Xe||ft,canGoBack:Ze&&!Re,canGoForward:rt&&!Re,refreshDisabled:it||Re,inputDisabled:Re,focusUrlNonce:d,onBack:Wt,onForward:Gt,onRefresh:At,onSubmit:e=>void Ot(e),onOpenInBrowser:A?Kt:void 0,onCapture:X&&A&&!G?en:void 0,captureDisabled:!J||ut,recording:U!==null,onPictureInPicture:A&&(G||X)?Xt:void 0,pictureInPicture:w===A,pictureInPictureDisabled:ut||!G&&!J?.hasWebContents,onPickElement:X&&A&&!G?tn:void 0,pickActive:m,pickDisabled:!A||ut,pickDisabledReason:ut?`Page didn't load — pick unavailable until the page renders`:void 0,leadingActions:vt===_t.profileId?null:(0,$.jsxs)(F,{children:[(0,$.jsx)(se,{render:(0,$.jsx)(p,{variant:`outline`,className:`max-w-28 shrink-0`}),children:(0,$.jsx)(`span`,{className:`truncate`,children:yt})}),(0,$.jsx)(P,{side:`top`,children:yt})]}),trailingActions:Qt?(0,$.jsx)(Dt,{enabled:R!==null&&(K||(J?.hasWebContents??!1)),actions:Qt,...qt?{move:{label:Jt,onMove:()=>void Yt()}}:{},profileName:yt,zoomFactor:K?Nt:J?.zoomFactor??1,colorScheme:K?W?.colorScheme??`system`:J?.colorScheme??`system`,deviceToolbarVisible:gt._tag!==`fill`,onToggleDeviceToolbar:Ut,nativePictureInPicture:J?.pictureInPicture??!1}):null}),(0,$.jsxs)(`div`,{ref:ve,className:`relative min-h-0 flex-1 overflow-hidden`,children:[R&&W&&G?(0,$.jsxs)($.Fragment,{children:[gt._tag!==`fill`&&!Q&&!ut?(0,$.jsx)(`div`,{className:`absolute inset-x-0 top-0 z-10`,children:(0,$.jsx)(Qe,{setting:gt,width:ke,aspectRatio:pe?gt.width/gt.height:null,onAspectRatioChange:e=>_e(e!==null),onChange:e=>qe(R,e)})}):null,(0,$.jsx)(`div`,{className:`absolute inset-x-0 bottom-0`,style:{top:gt._tag===`fill`?0:38},children:(0,$.jsx)(lt,{ref:q,environmentId:e.environmentId,threadId:e.threadId,tabId:W.tabId,visible:s,onFirstFrame:()=>We(R),onControl:e=>Le(e?.controller===`you`?R:null),onPopup:t=>nt(e,t,`panel`),className:T(`absolute inset-0 h-full w-full`,(Q||ut)&&`invisible`)},R)})]}):R&&W&&!Q?X?(0,$.jsx)(tt,{tabId:R,visible:s&&!ut,className:`absolute inset-0 h-full w-full`},R):(0,$.jsx)(`div`,{className:`flex h-full items-center justify-center p-8 text-center`,children:(0,$.jsx)(`p`,{className:`max-w-sm text-sm text-muted-foreground`,children:`This tab is open in the P4 Code desktop app.`})}):null,Q?(0,$.jsx)(Ct,{threadRef:e,environmentId:e.environmentId,configuredUrls:o,recentEntries:C,onRemoveRecent:t=>Oe(e,t),onOpenUrl:e=>void kt(e)}):null,W&&J?(0,$.jsx)(Rt,{zoomFactor:J.zoomFactor}):null,R&&J&&!Q&&!ut&&!_.has(R)?(0,$.jsx)(at,{tabId:R,zoomFactor:J.zoomFactor,controller:mt}):null,Y._tag===`LoadFailed`&&Y.download?(0,$.jsx)(`div`,{className:`absolute inset-0 z-10 bg-background`,children:(0,$.jsx)(Vt,{threadRef:e,tabId:W?.tabId??``,url:Y.url,download:Y.download})}):Y._tag===`LoadFailed`?(0,$.jsx)(`div`,{className:`absolute inset-0 z-10 bg-background`,children:(0,$.jsx)(Mt,{url:Y.url,code:Y.code,description:Y.description,onReload:At,...qt===`server`?{move:{label:Jt,onMove:()=>void Yt()}}:{}})}):null]})]})}function Wt(e){let t=(0,Q.c)(18),{mode:n,threadRef:r,tabId:i,configuredUrls:a,visible:o,onSendAnnotation:s}=e,c=je(r.environmentId),l=de(r.environmentId,E);if(!l||!c){let e=l?`Preview is only available in the P4 Code desktop app.`:`Pair this client again with preview access to control browser previews.`,r;t[0]===e?r=t[1]:(r=(0,$.jsx)(`div`,{className:`flex min-h-0 flex-1 flex-col items-center justify-center gap-3 p-8 text-center`,children:(0,$.jsx)(`p`,{className:`max-w-sm text-sm text-muted-foreground`,children:e})}),t[0]=e,t[1]=r);let i;return t[2]!==n||t[3]!==r?(i=(0,$.jsx)(U,{mode:n,children:r}),t[2]=n,t[3]=r,t[4]=i):i=t[4],i}let u;t[5]===i?u=t[6]:(u=i===void 0?{}:{tabId:i},t[5]=i,t[6]=u);let d;t[7]===s?d=t[8]:(d=s?{onSendAnnotation:s}:{},t[7]=s,t[8]=d);let f;t[9]!==a||t[10]!==u||t[11]!==d||t[12]!==r||t[13]!==o?(f=(0,$.jsx)(Ut,{threadRef:r,...u,configuredUrls:a,visible:o,...d}),t[9]=a,t[10]=u,t[11]=d,t[12]=r,t[13]=o,t[14]=f):f=t[14];let p;return t[15]!==n||t[16]!==f?(p=(0,$.jsx)(U,{mode:n,children:f}),t[15]=n,t[16]=f,t[17]=p):p=t[17],p}export{Wt as PreviewPanel};
|
|
2
|
-
//# sourceMappingURL=PreviewPanel-
|
|
1
|
+
import{i as e}from"./rolldown-runtime-Dd_uD5pT.js";import{r as t}from"./Icon-l19w4AjM.js";import{Ao as n,Bs as r,E as i,Ef as a,Jl as o,Jn as s,Kn as c,Mo as l,Po as u,Qn as d,Ro as f,Un as p,Wn as m,Xn as h,Zn as g,ar as _,er as v,eu as y,ir as b,ma as x,nr as S,or as C,qn as w,rr as ee,t as T,wx as E}from"./utils-Nv21__t3.js";import{t as D}from"./camera-V1Ufc9sC.js";import{t as O}from"./ellipsis-vertical-fYTS1grT.js";import{t as te}from"./external-link-NWS0I_zo.js";import{t as k}from"./globe-BygqUCSx.js";import{t as ne}from"./minus-C7W28oE7.js";import{t as re}from"./mouse-pointer-click-DsDE4K7M.js";import{t as ie}from"./picture-in-picture-2-g5nsWFVw.js";import{t as ae}from"./plus-Cr075-cy.js";import{t as oe}from"./radio-tower-CT5Np78y.js";import{t as A}from"./x-CSwbgjBe.js";import{L as j,U as M}from"./runtime-CxeCZPZ3.js";import{b as N}from"./entities-B0tFBQjY.js";import{a as se,n as P,t as F}from"./tooltip-CYNXW1Ow.js";import{ct as ce}from"./ChatMarkdown-S_dLZdsH.js";import{i as I}from"./toast-B-l3XS_F.js";import{C as le,O as L,S as ue,q as R}from"./useSettings-C1hmCYRR.js";import{i as de,n as z}from"./session-DZH3pyoG.js";import{t as B}from"./use-atom-command-DdGPgtPS.js";import{l as V}from"./rightPanelStore-CsSGBQ8t.js";import{n as H}from"./toastHelpers-Dsph6LwL.js";import{A as U,k as W}from"./PanelLayoutControls-DmAKKHlt.js";import{o as fe}from"./timestampFormat-wac2e_Jz.js";import{a as G,o as K,r as q,t as pe}from"./empty-B9cgefGv.js";import{a as me,i as he,t as ge}from"./previewMiniPlayerStore-CZUX4gpf.js";import{n as _e,t as ve}from"./discovery-list-Bb2RP3-9.js";import{t as ye}from"./observeResize-DBJpB0Hu.js";import{n as be}from"./openFileInPreview-BuKYchiT.js";import{T as xe,a as Se,b as Ce,f as we,i as Te,n as Ee,o as De,r as Oe,t as ke,u as Ae,w as je}from"./browserHistoryStore-D6dhsqE8.js";import{t as Me}from"./preview-8KYmxrad.js";import{n as Ne,r as Pe,t as Fe}from"./preview-DgLUnqIn.js";import{n as Ie,r as Le,t as Re}from"./input-group-CV0ZpOg5.js";import{Gi as ze,Hi as Be,Ki as Ve,Ra as He,Ui as Ue,Wi as We,Xi as Ge,Yi as Ke,Za as qe,Zi as Je,aa as Ye,as as J,ea as Xe,la as Y,na as Ze,oa as X,ss as Qe,ta as $e,xo as et}from"./main-CJvawsJJ.js";import{a as tt,c as nt,d as rt,f as it,i as at,l as ot,n as st,o as ct,r as lt,s as ut,u as dt}from"./_chat-B4G7pIId.js";var Z=e(t(),1),Q=E(),ft=`data:image/png;base64,`;function pt(e){if(!e.screenshot)return{status:`none`};try{let{dataUrl:t}=e.screenshot;if(!t.startsWith(ft))return{status:`failed`};let n=Y(t,`preview-annotation-${e.id}.png`,`image/png`);return n.size>0?{status:`captured`,file:n}:{status:`failed`}}catch{return{status:`failed`}}}var $=e(x(),1),mt=()=>{};function ht(e){let t=(0,Q.c)(78),{url:n,loading:r,canGoBack:i,canGoForward:a,refreshDisabled:o,inputDisabled:s,focusUrlNonce:c,onBack:l,onForward:u,onRefresh:d,onSubmit:f,onOpenInBrowser:p,onCapture:m,captureDisabled:h,recording:g,onPictureInPicture:_,pictureInPicture:v,pictureInPictureDisabled:y,onPickElement:b,pickActive:x,pickDisabled:S,pickDisabledReason:w,trailingActions:ee,leadingActions:E}=e,O=(0,Z.useRef)(null),[k,ne]=(0,Z.useState)(n),[ae,oe]=(0,Z.useState)(!1),A,j;t[0]===c?(A=t[1],j=t[2]):(A=()=>{if(c==null)return;let e=O.current;e&&e.focus()},j=[c],t[0]=c,t[1]=A,t[2]=j),(0,Z.useEffect)(A,j);let M;t[3]!==k||t[4]!==f?(M=e=>{e?.preventDefault();let t=k.trim();t.length!==0&&(f(t),O.current?.blur())},t[3]=k,t[4]=f,t[5]=M):M=t[5];let N=M,ce=i?l:mt,I=!i,le;t[6]===Symbol.for(`react.memo_cache_sentinel`)?(le=(0,$.jsx)(Qe,{}),t[6]=le):le=t[6];let L;t[7]!==ce||t[8]!==I?(L=(0,$.jsx)(C,{variant:`ghost`,size:`icon-xs`,onClick:ce,disabled:I,"aria-label":`Back`,type:`button`,children:le}),t[7]=ce,t[8]=I,t[9]=L):L=t[9];let ue=a?u:mt,R=!a,de;t[10]===Symbol.for(`react.memo_cache_sentinel`)?(de=(0,$.jsx)(J,{}),t[10]=de):de=t[10];let z;t[11]!==ue||t[12]!==R?(z=(0,$.jsx)(C,{variant:`ghost`,size:`icon-xs`,onClick:ue,disabled:R,"aria-label":`Forward`,type:`button`,children:de}),t[11]=ue,t[12]=R,t[13]=z):z=t[13];let B=o?mt:d,V=r?`Stop`:`Refresh`,H;t[14]!==o||t[15]!==B||t[16]!==V?(H=(0,$.jsx)(C,{variant:`ghost`,size:`icon-xs`,onClick:B,disabled:o,"aria-label":V,type:`button`}),t[14]=o,t[15]=B,t[16]=V,t[17]=H):H=t[17];let U;t[18]===r?U=t[19]:(U=(0,$.jsx)(He,{refreshing:r}),t[18]=r,t[19]=U);let W;t[20]!==H||t[21]!==U?(W=(0,$.jsx)(se,{render:H,children:U}),t[20]=H,t[21]=U,t[22]=W):W=t[22];let fe=r?`Loading…`:`Refresh`,G;t[23]===fe?G=t[24]:(G=(0,$.jsx)(P,{children:fe}),t[23]=fe,t[24]=G);let K;t[25]!==W||t[26]!==G?(K=(0,$.jsxs)(F,{children:[W,G]}),t[25]=W,t[26]=G,t[27]=K):K=t[27];let q;t[28]!==z||t[29]!==K||t[30]!==L?(q=(0,$.jsxs)(`div`,{className:`flex items-center gap-0.5`,role:`group`,"aria-label":`Navigation`,children:[L,z,K]}),t[28]=z,t[29]=K,t[30]=L,t[31]=q):q=t[31];let pe=ae?k:n,me;t[32]===Symbol.for(`react.memo_cache_sentinel`)?(me=e=>ne(e.target.value),t[32]=me):me=t[32];let he;t[33]===n?he=t[34]:(he=()=>{ne(n),oe(!0),queueMicrotask(()=>O.current?.select())},t[33]=n,t[34]=he);let ge;t[35]===Symbol.for(`react.memo_cache_sentinel`)?(ge=()=>{oe(!1)},t[35]=ge):ge=t[35];let _e;t[36]!==N||t[37]!==n?(_e=e=>{e.key===`Enter`&&N(e),e.key===`Escape`&&(e.preventDefault(),ne(n),O.current?.blur())},t[36]=N,t[37]=n,t[38]=_e):_e=t[38];let ve;t[39]!==s||t[40]!==pe||t[41]!==he||t[42]!==_e?(ve=(0,$.jsx)(F,{children:(0,$.jsx)(se,{render:(0,$.jsx)(Le,{ref:O,value:pe,onChange:me,onFocus:he,onBlur:ge,onKeyDown:_e,placeholder:`Search or enter URL`,spellCheck:!1,disabled:s,"data-preview-url-input":!0,size:`sm`})})}),t[39]=s,t[40]=pe,t[41]=he,t[42]=_e,t[43]=ve):ve=t[43];let ye;t[44]!==ae||t[45]!==p?(ye=p&&!ae?(0,$.jsx)(Ie,{align:`inline-end`,children:(0,$.jsx)(`span`,{className:`pointer-events-none flex opacity-0 transition-opacity focus-within:pointer-events-auto focus-within:opacity-100 group-hover/address:pointer-events-auto group-hover/address:opacity-100`,children:(0,$.jsx)(C,{variant:`ghost`,size:`icon-xs`,onClick:p,"aria-label":`Open in system browser`,type:`button`,children:(0,$.jsx)(te,{})})})}):null,t[44]=ae,t[45]=p,t[46]=ye):ye=t[46];let be;t[47]!==ve||t[48]!==ye?(be=(0,$.jsxs)(Re,{variant:`ghost`,className:`group/address h-7 flex-1`,children:[ve,ye]}),t[47]=ve,t[48]=ye,t[49]=be):be=t[49];let xe;t[50]!==b||t[51]!==x||t[52]!==S||t[53]!==w?(xe=b?(0,$.jsxs)(F,{children:[(0,$.jsx)(se,{render:(0,$.jsx)(C,{variant:x?`secondary`:`ghost`,size:`icon-xs`,onClick:b,disabled:S,"aria-label":x?`Cancel annotation`:`Annotate preview`,"aria-pressed":x?`true`:`false`,type:`button`}),children:(0,$.jsx)(re,{className:T(x&&`text-primary`)})}),(0,$.jsx)(P,{children:S&&w?w:x?`Cancel annotation (Esc)`:`Annotate elements, regions, and drawings`})]}):null,t[50]=b,t[51]=x,t[52]=S,t[53]=w,t[54]=xe):xe=t[54];let Se;t[55]!==h||t[56]!==m||t[57]!==g?(Se=m?(0,$.jsxs)(F,{children:[(0,$.jsxs)(se,{render:(0,$.jsx)(C,{variant:g?`secondary`:`ghost`,size:`icon-xs`,onClick:e=>m(e.shiftKey),"aria-label":g?`Stop recording`:`Capture screenshot`,type:`button`,className:`relative`,disabled:h}),children:[(0,$.jsx)(D,{className:T(g&&`text-destructive`)}),g?(0,$.jsx)(`span`,{className:`absolute right-0.5 top-0.5 size-1.5 animate-status-pulse rounded-full bg-destructive`}):null]}),(0,$.jsx)(P,{children:g?`Stop recording`:`Screenshot · Shift-click to record`})]}):null,t[55]=h,t[56]=m,t[57]=g,t[58]=Se):Se=t[58];let Ce;t[59]!==_||t[60]!==v||t[61]!==y?(Ce=_?(0,$.jsx)(C,{variant:v?`secondary`:`ghost`,size:`icon-xs`,onClick:_,"aria-label":v?`Close floating preview`:`Float preview over chat`,"aria-pressed":v?`true`:`false`,type:`button`,disabled:y,children:(0,$.jsx)(ie,{className:T(v&&`text-primary`)})}):null,t[59]=_,t[60]=v,t[61]=y,t[62]=Ce):Ce=t[62];let we;t[63]!==E||t[64]!==N||t[65]!==q||t[66]!==be||t[67]!==xe||t[68]!==Se||t[69]!==Ce||t[70]!==ee?(we=(0,$.jsxs)(`form`,{onSubmit:N,className:`flex h-10 min-h-10 shrink-0 items-center gap-1 border-b border-border/60 bg-background px-2 in-data-[preview-panel-mode=inline]:mb-3 in-data-[preview-panel-mode=inline]:h-7 in-data-[preview-panel-mode=inline]:min-h-7 in-data-[preview-panel-mode=inline]:border-b-transparent`,"data-surface-subheader":!0,children:[q,E,be,xe,Se,Ce,ee]}),t[63]=E,t[64]=N,t[65]=q,t[66]=be,t[67]=xe,t[68]=Se,t[69]=Ce,t[70]=ee,t[71]=we):we=t[71];let Te;t[72]===Symbol.for(`react.memo_cache_sentinel`)?(Te={boxShadow:`0 0 6px 1px var(--color-ring)`},t[72]=Te):Te=t[72];let Ee;t[73]===r?Ee=t[74]:(Ee=(0,$.jsx)(`div`,{"aria-hidden":!0,"data-loading":r,className:`preview-loading-progress pointer-events-none absolute bottom-0 left-0 z-10 h-0.5 w-full origin-left rounded-r-full bg-primary`,style:Te}),t[73]=r,t[74]=Ee);let De;return t[75]!==we||t[76]!==Ee?(De=(0,$.jsxs)(`div`,{className:`relative`,children:[we,Ee]}),t[75]=we,t[76]=Ee,t[77]=De):De=t[77],De}function gt(e){let t=(0,Q.c)(10),{threadRef:n,server:r,onOpen:i}=e,a;t[0]===r?a=t[1]:(a=_t(r),t[0]=r,t[1]=a);let o=a,s;t[2]!==r.requestedUrl||t[3]!==n?(s=(0,$.jsx)(W,{threadRef:n,url:r.requestedUrl}),t[2]=r.requestedUrl,t[3]=n,t[4]=s):s=t[4];let c=`${r.host}:${r.port}`,l;return t[5]!==i||t[6]!==o||t[7]!==s||t[8]!==c?(l=(0,$.jsx)(_e,{onClick:i,icon:s,title:o,description:c}),t[5]=i,t[6]=o,t[7]=s,t[8]=c,t[9]=l):l=t[9],l}function _t(e){return e.processName?e.processName:`Listening`}function vt(e){let t=(0,Q.c)(26),{threadRef:n,entry:r,onOpen:i,onRemove:a}=e,o;t[0]===r.url?o=t[1]:(o=new URL(r.url),t[0]=r.url,t[1]=o);let s=o,c=s.pathname===`/`?``:s.pathname,l=`${s.host}${c}${s.search}${s.hash}`,u;t[2]===r.lastVisitedAt?u=t[3]:(u=ke(r.lastVisitedAt)?fe(new Date(r.lastVisitedAt).toISOString()):``,t[2]=r.lastVisitedAt,t[3]=u);let d=u;ut();let f;t[4]!==r.url||t[5]!==n?(f=(0,$.jsx)(W,{threadRef:n,url:r.url}),t[4]=r.url,t[5]=n,t[6]=f):f=t[6];let p=r.title??l,m;t[7]===p?m=t[8]:(m=(0,$.jsx)(`span`,{className:`truncate text-sm font-medium text-foreground`,children:p}),t[7]=p,t[8]=m);let h=r.title?`${l} · `:``,g;t[9]!==h||t[10]!==d?(g=(0,$.jsxs)(`span`,{className:`truncate text-xs text-muted-foreground`,children:[h,d]}),t[9]=h,t[10]=d,t[11]=g):g=t[11];let _;t[12]!==m||t[13]!==g?(_=(0,$.jsxs)(`div`,{className:`flex min-w-0 flex-1 flex-col`,children:[m,g]}),t[12]=m,t[13]=g,t[14]=_):_=t[14];let v;t[15]!==i||t[16]!==f||t[17]!==_?(v=(0,$.jsxs)(`button`,{type:`button`,onClick:i,className:`flex w-full items-center gap-3 px-3 py-3 pr-10 text-left hover:bg-accent/40 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-ring`,children:[f,_]}),t[15]=i,t[16]=f,t[17]=_,t[18]=v):v=t[18];let y=`Remove ${l} from history`,b;t[19]===Symbol.for(`react.memo_cache_sentinel`)?(b=(0,$.jsx)(A,{className:`size-3.5`}),t[19]=b):b=t[19];let x;t[20]!==a||t[21]!==y?(x=(0,$.jsx)(`button`,{type:`button`,"aria-label":y,onClick:a,className:`absolute right-3 rounded p-1 text-muted-foreground opacity-0 hover:bg-accent hover:text-foreground focus-visible:opacity-100 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-ring group-hover:opacity-100`,children:b}),t[20]=a,t[21]=y,t[22]=x):x=t[22];let S;return t[23]!==x||t[24]!==v?(S=(0,$.jsxs)(`div`,{className:`group relative flex w-full items-center`,children:[v,x]}),t[23]=x,t[24]=v,t[25]=S):S=t[25],S}function yt(e){let t=(0,Q.c)(7),n=Ze(e.environmentId,e.configuredUrls),r;if(t[0]!==e.configuredUrls||t[1]!==e.environmentId||t[2]!==n.configuredUrlProbing||t[3]!==n.servers){let i;t[5]===e.environmentId?i=t[6]:(i=t=>({...t,url:De(e.environmentId,t.url),requestedUrl:t.url}),t[5]=e.environmentId,t[6]=i),r=bt({scanner:n.servers.map(i),configuredUrls:e.configuredUrls??[],configuredUrlProbing:n.configuredUrlProbing}),t[0]=e.configuredUrls,t[1]=e.environmentId,t[2]=n.configuredUrlProbing,t[3]=n.servers,t[4]=r}else r=t[4];return r}function bt(e){let t=new Map;for(let n of e.configuredUrls){let e=St(n);if(!e)continue;let r=xt(e.host,e.port);t.has(r)||t.set(r,e)}let n=[];for(let r of e.scanner){let i=xt(r.host,r.port),a=t.get(i);n.push({...r,requestedUrl:a&&e.configuredUrlProbing===!1?a.url:r.requestedUrl,source:a?`configured`:`scanner`})}return n.toSorted((e,t)=>{let n={configured:0,scanner:1};return n[e.source]===n[t.source]?e.port-t.port:n[e.source]-n[t.source]})}function xt(e,t){let n=e.toLowerCase();return`${Fe(n)?`loopback`:n}:${t}`}function St(e){try{let t=new URL(e);if(t.protocol!==`http:`&&t.protocol!==`https:`||!Fe(t.hostname))return null;let n=t.port?Number.parseInt(t.port,10):t.protocol===`http:`?80:443;return!Number.isFinite(n)||n<=0?null:{host:t.hostname,port:n,url:t.href}}catch{return null}}function Ct(e){let t=(0,Q.c)(24),{threadRef:n,environmentId:r,configuredUrls:i,recentEntries:a,onRemoveRecent:o,onOpenUrl:s}=e,c;t[0]!==i||t[1]!==r?(c={environmentId:r,configuredUrls:i},t[0]=i,t[1]=r,t[2]=c):c=t[2];let l=yt(c),u,d,f,p;if(t[3]!==s||t[4]!==o||t[5]!==a||t[6]!==l.length||t[7]!==n){p=Symbol.for(`react.early_return_sentinel`);bb0:{let e=a.filter(wt).slice(0,8);if(l.length===0&&e.length===0){let e;t[12]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,$.jsxs)(pe,{children:[(0,$.jsx)(G,{variant:`icon`,children:(0,$.jsx)(k,{className:`size-4.5 text-muted-foreground`})}),(0,$.jsx)(K,{children:`No preview yet`}),(0,$.jsx)(q,{children:`Type a URL above, or run a dev script. Browser-ready localhost servers will show up here automatically.`})]}),t[12]=e):e=t[12],p=e;break bb0}f=`scrollbar-gutter-both flex h-full min-h-0 overflow-y-auto px-5 py-8`,u=`mx-auto flex w-full max-w-xl flex-col gap-6`,d=e.length>0?(0,$.jsxs)(`div`,{className:`flex flex-col gap-3`,children:[(0,$.jsxs)(`div`,{className:`flex items-center gap-2 text-sm text-muted-foreground`,children:[(0,$.jsx)(et,{className:`size-4 shrink-0`}),(0,$.jsx)(`h2`,{className:`font-medium`,children:`Recently used`})]}),(0,$.jsx)(ve,{children:e.map(e=>(0,$.jsx)(vt,{threadRef:n,entry:e,onOpen:()=>s(e.url),onRemove:()=>o(e.url)},e.url))})]}):null}t[3]=s,t[4]=o,t[5]=a,t[6]=l.length,t[7]=n,t[8]=u,t[9]=d,t[10]=f,t[11]=p}else u=t[8],d=t[9],f=t[10],p=t[11];if(p!==Symbol.for(`react.early_return_sentinel`))return p;let m;t[13]!==s||t[14]!==l||t[15]!==n?(m=l.length>0?(0,$.jsxs)(`div`,{className:`flex flex-col gap-3`,children:[(0,$.jsxs)(`div`,{className:`flex items-center gap-2 text-sm text-muted-foreground`,children:[(0,$.jsx)(oe,{className:`size-4 shrink-0`}),(0,$.jsx)(`h2`,{className:`font-medium`,children:`Local servers`})]}),(0,$.jsx)(ve,{children:l.map(e=>(0,$.jsx)(gt,{threadRef:n,server:e,onOpen:()=>s(e.requestedUrl)},`${e.host}:${e.port}`))}),(0,$.jsx)(`p`,{className:`px-1 text-xs text-muted-foreground`,children:`Select a live local server to open it in this browser tab.`})]}):null,t[13]=s,t[14]=l,t[15]=n,t[16]=m):m=t[16];let h;t[17]!==u||t[18]!==d||t[19]!==m?(h=(0,$.jsxs)(`div`,{className:u,children:[d,m]}),t[17]=u,t[18]=d,t[19]=m,t[20]=h):h=t[20];let g;return t[21]!==f||t[22]!==h?(g=(0,$.jsx)(`div`,{className:f,children:h}),t[21]=f,t[22]=h,t[23]=g):g=t[23],g}function wt(e){return URL.canParse(e.url)}var Tt=[{value:`system`,label:`System`},{value:`light`,label:`Light`},{value:`dark`,label:`Dark`}],Et=()=>{let e=(0,Q.c)(1),t;return e[0]===Symbol.for(`react.memo_cache_sentinel`)?(t=(0,$.jsxs)(F,{children:[(0,$.jsx)(se,{render:(0,$.jsx)(_,{render:(0,$.jsx)(C,{variant:`ghost`,size:`icon-xs`,type:`button`,"aria-label":`Preview menu`})}),children:(0,$.jsx)(O,{})}),(0,$.jsx)(P,{children:`More`})]}),e[0]=t):t=e[0],t};function Dt(e){let t=(0,Q.c)(74),{enabled:n,actions:r,zoomFactor:i,colorScheme:a,deviceToolbarVisible:o,onToggleDeviceToolbar:l,nativePictureInPicture:u,profileName:d,move:f}=e,p;t[0]===i?p=t[1]:(p=Math.round(i*100),t[0]=i,t[1]=p);let _=`${p}%`,y=!n,x;t[2]===Symbol.for(`react.memo_cache_sentinel`)?(x=(0,$.jsx)(Et,{}),t[2]=x):x=t[2];let T;t[3]!==r.hardReload||t[4]!==y?(T=(0,$.jsx)(s,{onClick:r.hardReload,disabled:y,children:`Hard reload`}),t[3]=r.hardReload,t[4]=y,t[5]=T):T=t[5];let E;t[6]!==r.openDevTools||t[7]!==y?(E=r.openDevTools?(0,$.jsx)(s,{onClick:r.openDevTools,disabled:y,children:`Open DevTools`}):null,t[6]=r.openDevTools,t[7]=y,t[8]=E):E=t[8];let D;t[9]!==r.toggleNativePictureInPicture||t[10]!==y||t[11]!==u?(D=r.toggleNativePictureInPicture?(0,$.jsx)(s,{onClick:r.toggleNativePictureInPicture,disabled:y,children:u?`Close separate preview window`:`Open separate preview window`}):null,t[9]=r.toggleNativePictureInPicture,t[10]=y,t[11]=u,t[12]=D):D=t[12];let O;t[13]===f?O=t[14]:(O=f?(0,$.jsx)(s,{onClick:f.onMove,children:f.label}):null,t[13]=f,t[14]=O);let te=o?`Hide device toolbar`:`Show device toolbar`,k;t[15]!==y||t[16]!==l||t[17]!==te?(k=(0,$.jsx)(s,{onClick:l,disabled:y,children:te}),t[15]=y,t[16]=l,t[17]=te,t[18]=k):k=t[18];let re;t[19]===y?re=t[20]:(re=(0,$.jsx)(b,{disabled:y,children:`Appearance`}),t[19]=y,t[20]=re);let ie;t[21]===r?ie=t[22]:(ie=e=>r.setColorScheme(e),t[21]=r,t[22]=ie);let oe;t[23]===Symbol.for(`react.memo_cache_sentinel`)?(oe=Tt.map(kt),t[23]=oe):oe=t[23];let A;t[24]!==a||t[25]!==ie?(A=(0,$.jsx)(ee,{children:(0,$.jsx)(g,{value:a,onValueChange:ie,children:oe})}),t[24]=a,t[25]=ie,t[26]=A):A=t[26];let j;t[27]!==A||t[28]!==re?(j=(0,$.jsxs)(S,{children:[re,A]}),t[27]=A,t[28]=re,t[29]=j):j=t[29];let M;t[30]===Symbol.for(`react.memo_cache_sentinel`)?(M=(0,$.jsx)(v,{}),t[30]=M):M=t[30];let N;t[31]===Symbol.for(`react.memo_cache_sentinel`)?(N=(0,$.jsx)(`span`,{children:`Zoom`}),t[31]=N):N=t[31];let se;t[32]===Symbol.for(`react.memo_cache_sentinel`)?(se=(0,$.jsx)(ne,{}),t[32]=se):se=t[32];let P;t[33]!==r.zoomOut||t[34]!==y?(P=(0,$.jsx)(C,{variant:`outline`,size:`icon-xs`,type:`button`,onClick:r.zoomOut,"aria-label":`Zoom out`,disabled:y,children:se}),t[33]=r.zoomOut,t[34]=y,t[35]=P):P=t[35];let F;t[36]===_?F=t[37]:(F=(0,$.jsx)(`span`,{className:`min-w-12 text-center text-xs tabular-nums text-muted-foreground`,children:_}),t[36]=_,t[37]=F);let ce;t[38]===Symbol.for(`react.memo_cache_sentinel`)?(ce=(0,$.jsx)(ae,{}),t[38]=ce):ce=t[38];let I;t[39]!==r.zoomIn||t[40]!==y?(I=(0,$.jsx)(C,{variant:`outline`,size:`icon-xs`,type:`button`,onClick:r.zoomIn,"aria-label":`Zoom in`,disabled:y,children:ce}),t[39]=r.zoomIn,t[40]=y,t[41]=I):I=t[41];let le;t[42]===Symbol.for(`react.memo_cache_sentinel`)?(le=(0,$.jsx)(qe,{}),t[42]=le):le=t[42];let L;t[43]!==r.resetZoom||t[44]!==y?(L=(0,$.jsx)(C,{variant:`ghost`,size:`icon-xs`,type:`button`,onClick:r.resetZoom,"aria-label":`Reset zoom`,disabled:y,children:le}),t[43]=r.resetZoom,t[44]=y,t[45]=L):L=t[45];let ue;t[46]!==P||t[47]!==F||t[48]!==I||t[49]!==L?(ue=(0,$.jsxs)(`span`,{className:`flex items-center gap-1`,children:[P,F,I,L]}),t[46]=P,t[47]=F,t[48]=I,t[49]=L,t[50]=ue):ue=t[50];let R;t[51]!==y||t[52]!==ue?(R=(0,$.jsxs)(s,{closeOnClick:!1,onClick:Ot,className:`justify-between`,disabled:y,children:[N,ue]}),t[51]=y,t[52]=ue,t[53]=R):R=t[53];let de;t[54]===Symbol.for(`react.memo_cache_sentinel`)?(de=(0,$.jsx)(v,{}),t[54]=de):de=t[54];let z;t[55]===d?z=t[56]:(z=d?(0,$.jsx)(w,{className:`max-w-64`,children:(0,$.jsxs)(`span`,{className:`block truncate`,children:[`Profile: `,d]})}):null,t[55]=d,t[56]=z);let B;t[57]===r.clearCookies?B=t[58]:(B=(0,$.jsx)(s,{onClick:r.clearCookies,children:`Clear cookies`}),t[57]=r.clearCookies,t[58]=B);let V;t[59]===r.clearCache?V=t[60]:(V=(0,$.jsx)(s,{onClick:r.clearCache,children:`Clear cache`}),t[59]=r.clearCache,t[60]=V);let H;t[61]!==z||t[62]!==B||t[63]!==V?(H=(0,$.jsxs)(c,{children:[z,B,V]}),t[61]=z,t[62]=B,t[63]=V,t[64]=H):H=t[64];let U;return t[65]!==j||t[66]!==R||t[67]!==H||t[68]!==T||t[69]!==E||t[70]!==D||t[71]!==O||t[72]!==k?(U=(0,$.jsxs)(m,{children:[x,(0,$.jsxs)(h,{align:`end`,sideOffset:6,children:[T,E,D,O,k,j,M,R,de,H]})]}),t[65]=j,t[66]=R,t[67]=H,t[68]=T,t[69]=E,t[70]=D,t[71]=O,t[72]=k,t[73]=U):U=t[73],U}function Ot(e){return e.preventDefault()}function kt(e){return(0,$.jsx)(d,{value:e.value,children:e.label},e.value)}function At(e){return f[e]||(e.length>0?e:`Network error`)}function jt(e){let t=(0,Q.c)(21),{url:n,fileName:r,downloadUrl:i,onOpen:a}=e,o;t[0]===n?o=t[1]:(o=Ft(n)??n,t[0]=n,t[1]=o);let s=o,c,l;t[2]===Symbol.for(`react.memo_cache_sentinel`)?(c=(0,$.jsx)(Pt,{className:`mb-6 size-12 text-muted-foreground/70`}),l=(0,$.jsx)(`h1`,{className:`mb-3 text-2xl font-semibold leading-tight text-foreground`,children:`This file can’t be shown here`}),t[2]=c,t[3]=l):(c=t[2],l=t[3]);let u;t[4]===r?u=t[5]:(u=(0,$.jsx)(`span`,{className:`font-semibold text-foreground`,children:r}),t[4]=r,t[5]=u);let d;t[6]!==s||t[7]!==u?(d=(0,$.jsxs)(`p`,{className:`text-sm leading-relaxed text-muted-foreground`,children:[u,` from `,s,` was downloaded instead.`]}),t[6]=s,t[7]=u,t[8]=d):d=t[8];let f;t[9]===Symbol.for(`react.memo_cache_sentinel`)?(f=(0,$.jsx)(`div`,{className:`flex-1`}),t[9]=f):f=t[9];let p;t[10]===a?p=t[11]:(p=(0,$.jsx)(C,{type:`button`,variant:`outline`,size:`sm`,onClick:a,children:`Open in browser`}),t[10]=a,t[11]=p);let m;t[12]!==i||t[13]!==r?(m=i?(0,$.jsx)(C,{type:`button`,size:`sm`,render:(0,$.jsx)(`a`,{href:i,download:r}),children:`Download`}):null,t[12]=i,t[13]=r,t[14]=m):m=t[14];let h;t[15]!==p||t[16]!==m?(h=(0,$.jsxs)(`div`,{className:`mt-auto flex items-center gap-2 pt-8`,children:[f,p,m]}),t[15]=p,t[16]=m,t[17]=h):h=t[17];let g;return t[18]!==d||t[19]!==h?(g=(0,$.jsx)(`div`,{className:`scrollbar-gutter-both relative flex h-full min-h-0 w-full overflow-y-auto bg-background`,children:(0,$.jsxs)(`div`,{className:`mx-auto flex w-full max-w-xl flex-1 flex-col px-8 py-12 sm:py-16`,children:[c,l,d,h]})}),t[18]=d,t[19]=h,t[20]=g):g=t[20],g}function Mt(e){let t=(0,Q.c)(36),{url:n,code:r,description:i,onReload:a,move:o}=e,[s,c]=(0,Z.useState)(!1),l;t[0]===n?l=t[1]:(l=Ft(n)??n,t[0]=n,t[1]=l);let u=l,d;t[2]===i?d=t[3]:(d=At(i),t[2]=i,t[3]=d);let f=d,p;t[4]!==r||t[5]!==i?(p=i.length>0?i:`ERR_${Math.abs(r)||`FAILED`}`,t[4]=r,t[5]=i,t[6]=p):p=t[6];let m=p,h,g;t[7]===Symbol.for(`react.memo_cache_sentinel`)?(h=(0,$.jsx)(Pt,{className:`mb-6 size-12 text-muted-foreground/70`}),g=(0,$.jsx)(`h1`,{className:`mb-3 text-2xl font-semibold leading-tight text-foreground`,children:`This site can’t be reached`}),t[7]=h,t[8]=g):(h=t[7],g=t[8]);let _;t[9]===u?_=t[10]:(_=(0,$.jsx)(`span`,{className:`font-semibold text-foreground`,children:u}),t[9]=u,t[10]=_);let v;t[11]!==f||t[12]!==_?(v=(0,$.jsxs)(`p`,{className:`text-sm leading-relaxed text-muted-foreground`,children:[_,`: `,f,`.`]}),t[11]=f,t[12]=_,t[13]=v):v=t[13];let y;t[14]!==o||t[15]!==s?(y=s?(0,$.jsxs)(`div`,{className:`mt-6 rounded-lg border border-border bg-muted/40 p-4 text-sm`,children:[(0,$.jsx)(`p`,{className:`mb-2 font-medium text-foreground`,children:`Try:`}),(0,$.jsxs)(`ul`,{className:`list-disc space-y-1 pl-5 text-muted-foreground`,children:[(0,$.jsx)(`li`,{children:`Checking your connection`}),(0,$.jsx)(`li`,{children:`Confirming the dev server is running`}),o?(0,$.jsx)(`li`,{children:`Opening it in the environment’s browser, which reaches its network`}):null,(0,$.jsx)(`li`,{children:`Checking the proxy and the firewall`})]})]}):null,t[14]=o,t[15]=s,t[16]=y):y=t[16];let b;t[17]===m?b=t[18]:(b=(0,$.jsx)(`div`,{className:`mt-8 text-xs uppercase tracking-wide text-muted-foreground/70`,children:m}),t[17]=m,t[18]=b);let x;t[19]===Symbol.for(`react.memo_cache_sentinel`)?(x=()=>c(Nt),t[19]=x):x=t[19];let S=s?`Hide details`:`Details`,w;t[20]===S?w=t[21]:(w=(0,$.jsx)(C,{type:`button`,variant:`outline`,size:`sm`,onClick:x,children:S}),t[20]=S,t[21]=w);let ee;t[22]===Symbol.for(`react.memo_cache_sentinel`)?(ee=(0,$.jsx)(`div`,{className:`flex-1`}),t[22]=ee):ee=t[22];let T;t[23]===o?T=t[24]:(T=o?(0,$.jsx)(C,{type:`button`,variant:`outline`,size:`sm`,onClick:o.onMove,children:o.label}):null,t[23]=o,t[24]=T);let E;t[25]===a?E=t[26]:(E=(0,$.jsx)(C,{type:`button`,size:`sm`,onClick:a,children:`Reload`}),t[25]=a,t[26]=E);let D;t[27]!==w||t[28]!==T||t[29]!==E?(D=(0,$.jsxs)(`div`,{className:`mt-auto flex items-center gap-2 pt-8`,children:[w,ee,T,E]}),t[27]=w,t[28]=T,t[29]=E,t[30]=D):D=t[30];let O;return t[31]!==D||t[32]!==v||t[33]!==y||t[34]!==b?(O=(0,$.jsx)(`div`,{className:`scrollbar-gutter-both relative flex h-full min-h-0 w-full overflow-y-auto bg-background`,children:(0,$.jsxs)(`div`,{className:`mx-auto flex w-full max-w-xl flex-1 flex-col px-8 py-12 sm:py-16`,children:[h,g,v,y,b,D]})}),t[31]=D,t[32]=v,t[33]=y,t[34]=b,t[35]=O):O=t[35],O}function Nt(e){return!e}function Pt(e){let t=(0,Q.c)(5),{className:n}=e,r,i,a;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(r=(0,$.jsx)(`path`,{d:`M16 12 L48 12 L48 52 L16 52 Z`}),i=(0,$.jsx)(`path`,{d:`M22 22 L42 22 M22 30 L36 30 M22 38 L40 38`,strokeLinecap:`round`}),a=(0,$.jsx)(`path`,{d:`M52 8 L12 56`,strokeLinecap:`round`}),t[0]=r,t[1]=i,t[2]=a):(r=t[0],i=t[1],a=t[2]);let o;return t[3]===n?o=t[4]:(o=(0,$.jsxs)(`svg`,{viewBox:`0 0 64 64`,fill:`none`,stroke:`currentColor`,strokeWidth:`2.5`,className:n,children:[r,i,a]}),t[3]=n,t[4]=o),o}function Ft(e){try{return new URL(e).host}catch{return null}}var It=1500,Lt=.001;function Rt(e){let t=(0,Q.c)(11),{zoomFactor:n}=e,[r,i]=(0,Z.useState)(!1),a=(0,Z.useRef)(n),o=(0,Z.useRef)(null),s,c;t[0]===n?(s=t[1],c=t[2]):(s=()=>{if(!(Math.abs(a.current-n)<Lt))return a.current=n,i(!0),o.current!==null&&window.clearTimeout(o.current),o.current=window.setTimeout(()=>{i(!1),o.current=null},It),()=>{o.current!==null&&(window.clearTimeout(o.current),o.current=null)}},c=[n],t[0]=n,t[1]=s,t[2]=c),(0,Z.useEffect)(s,c);let l;t[3]===n?l=t[4]:(l=Math.round(n*100),t[3]=n,t[4]=l);let u=`${l}%`,d=!r,f=r?`opacity-100 translate-y-0`:`opacity-0 -translate-y-1`,p;t[5]===f?p=t[6]:(p=T(`pointer-events-none absolute top-3 right-3 z-20 select-none rounded-full border border-border/70 bg-popover/95 px-2.5 py-1 text-xs font-medium text-foreground shadow-md/10 backdrop-blur transition-all duration-200 ease-out`,f),t[5]=f,t[6]=p);let m;return t[7]!==u||t[8]!==d||t[9]!==p?(m=(0,$.jsx)(`div`,{"aria-hidden":d,className:p,children:u}),t[7]=u,t[8]=d,t[9]=p,t[10]=m):m=t[10],m}function zt(e,t){return e.find(e=>e.id===t)?.name??`Removed profile`}var Bt=typeof window>`u`?null:R();function Vt(e){let t=(0,Q.c)(12),n=rt(e.threadRef.environmentId),r;t[0]!==n||t[1]!==e.download.id||t[2]!==e.tabId||t[3]!==e.threadRef.threadId?(r=n?it({access:n,threadId:e.threadRef.threadId,tabId:e.tabId},e.download.id):null,t[0]=n,t[1]=e.download.id,t[2]=e.tabId,t[3]=e.threadRef.threadId,t[4]=r):r=t[4];let i;t[5]===e.url?i=t[6]:(i=()=>void Bt?.shell.openExternal(e.url).catch(Ht),t[5]=e.url,t[6]=i);let a;return t[7]!==e.download.fileName||t[8]!==e.url||t[9]!==r||t[10]!==i?(a=(0,$.jsx)(jt,{url:e.url,fileName:e.download.fileName,downloadUrl:r,onOpen:i}),t[7]=e.download.fileName,t[8]=e.url,t[9]=r,t[10]=i,t[11]=a):a=t[11],a}function Ht(){}function Ut({threadRef:e,tabId:t,configuredUrls:a,visible:s,onSendAnnotation:c}){let[d,f]=(0,Z.useState)(void 0),[m,h]=(0,Z.useState)(!1),g=de(e.environmentId,`orchestration:operate`)&&!!c,_=Ve(),v=(0,Z.useRef)(null),b=(0,Z.useRef)(!0),x=(0,Z.useRef)(e);x.current=e;let S=u(e),C=Se(e,50),w=me(t=>he(t.byThreadKey,e)),ee=i(e=>e.addPreviewAnnotation),E=i(e=>e.addImage),D=le(e.environmentId),O=D?new URL(D).hostname:null,te=B(Me.open),k=B(Me.close,`preview close`),ne=ue(e.environmentId)?.label??`the environment`,re=L(),ie=N(e.environmentId),ae=B(Me.resize,`preview viewport resize`),oe=B(Me.adjust,`preview appearance or zoom`);st(e),(0,Z.useEffect)(()=>(b.current=!0,()=>{b.current=!1}),[]);let A=t??S.activeTabId,R=A?Ge(e,S.serverEpoch,A):null,U=A&&R?_.has(R)?R:Be(e,A):null,W=A?S.sessions[A]??null:null,fe=xe(e.environmentId,W),G=W?.runtime===`server`&&!fe,K=W?.runtime===`server`,q=(0,Z.useRef)(null),[pe,_e]=(0,Z.useState)(!1),ve=(0,Z.useRef)(null),[ke,je]=(0,Z.useState)(0),Fe=W?.runtime===`server`&&(W.viewport??o)._tag!==`fill`;(0,Z.useEffect)(()=>{let e=ve.current;if(e&&Fe)return ye(e,([e])=>je(Math.max(1,Math.round(e?.contentRect.width??0))))},[Fe]);let[Ie,Le]=(0,Z.useState)(null),Re=G&&Ie!==R,[He,qe]=(0,Z.useState)(null),J=A?S.desktopByTabId[A]??null:null,Y=W?.navStatus??{_tag:`Idle`},Ze=Y._tag===`Idle`?``:Y.url,Qe=J?.loading??Y._tag===`Loading`,et=J?.canGoBack??W?.canGoBack??!1,rt=J?.canGoForward??W?.canGoForward??!1,it=Y._tag===`Idle`,ut=Y._tag===`LoadFailed`,Q=ct(W),ft=G&&!Q&&!ut&&He!==R,mt=J?.controller??`none`,gt=W?.viewport??o,_t=we(),vt=W?.profileId??`default`,yt=zt(_t.profiles,vt),bt=Ke(e=>R?e.byTabId[R]?.rect??null:null),xt=Y._tag===`Success`?Y.url:null,St=Y._tag===`Success`?Y.title:null,wt=C[0]?.url,Tt=r(e);(0,Z.useEffect)(()=>{xt&&St&&wt&&Te(x.current,xt,St,O)},[O,wt,St,xt,Tt]);let Et=(0,Z.useCallback)(async t=>{if(G&&q.current)return!Re&&(q.current.navigate(t),n(e,t),!0);if(R&&X)return await X.navigate(R,t),n(e,t),!0;let r=await Ye({openPreview:te,threadRef:e,url:t});if(r._tag===`Failure`&&!j(r)){let e=M(r);e instanceof be&&I.add({type:`error`,title:`Unable to open browser`,description:e.message})}return r._tag===`Success`},[G,te,R,Re,e]),Ot=(0,Z.useCallback)(async t=>{try{let n=Pe(t);await Et(n)&&Ee(e,n)}catch{}},[Et,e]),kt=(0,Z.useCallback)(async t=>{try{let n=G||!X?Ne(t):De(e.environmentId,t);await Et(n)&&Ee(e,t)}catch{}},[G,Et,e]),At=(0,Z.useCallback)(()=>{G?q.current?.reload():X&&R&&X.refresh(R)},[G,R]),jt=(0,Z.useCallback)(async t=>{if(!A)return;let n=await oe({environmentId:e.environmentId,input:{threadId:e.threadId,tabId:A,...t}});if(n._tag===`Failure`){let e=M(n);I.add({type:`error`,title:`Unable to change the browser tab`,description:e instanceof Error?e.message:`An error occurred.`});return}l(e,n.value)},[oe,A,e]),Nt=W?.zoomFactor??1,Pt=(0,Z.useCallback)(e=>{let t=y.indexOf(Nt),n=e===0?1:y[Math.min(Math.max((t<0?7:t)+e,0),y.length-1)];n!==Nt&&jt({zoomFactor:n})},[jt,Nt]),Ft=(0,Z.useCallback)(()=>{K?Pt(1):X&&R&&X.zoomIn(R)},[R,K,Pt]),It=(0,Z.useCallback)(()=>{K?Pt(-1):X&&R&&X.zoomOut(R)},[R,K,Pt]),Lt=(0,Z.useCallback)(()=>{K?Pt(0):X&&R&&X.resetZoom(R)},[R,K,Pt]),Ht=(0,Z.useCallback)(async t=>{if(!A)return;let n=await ae({environmentId:e.environmentId,input:{threadId:e.threadId,tabId:A,viewport:t}});if(n._tag===`Failure`){let e=M(n);throw I.add({type:`error`,title:`Unable to resize browser viewport`,description:e instanceof Error?e.message:`An error occurred.`}),e}l(e,n.value)},[ae,A,e]),Ut=()=>{if(R){if(gt._tag!==`fill`){Xe(R,o).catch(()=>void 0);return}Xe(R,Ae({defaults:_t,panelRect:bt,zoomFactor:K?Nt:J?.zoomFactor})).catch(()=>void 0)}};(0,Z.useEffect)(()=>{if(R)return $e(R,Ht)},[Ht,R]);let Wt=(0,Z.useCallback)(()=>{G?q.current?.history(-1):X&&R&&X.goBack(R)},[G,R]),Gt=(0,Z.useCallback)(()=>{G?q.current?.history(1):X&&R&&X.goForward(R)},[G,R]),Kt=(0,Z.useCallback)(()=>{Bt&&Ze&&Bt.shell.openExternal(Ze).catch(()=>void 0)},[Ze]),qt=Ce(e.environmentId,re,ie,W),Jt=qt===`server`?`Open in ${ne}'s browser`:`Open on this computer`,Yt=(0,Z.useCallback)(async()=>{if(!qt||!A||!W)return;let t=await Ye({openPreview:te,threadRef:e,...Ze?{url:qt===`desktop`?De(e.environmentId,Ze):Ze}:{},viewport:gt,...W.profileId===void 0?{}:{profileId:W.profileId},runtime:qt});if(t._tag===`Failure`){if(j(t))return;let e=M(t);I.add({type:`error`,title:`Unable to move the browser tab`,description:e instanceof Error?e.message:`An error occurred.`});return}V.getState().openBrowser(e,t.value.tabId),await ot({closePreview:k,snapshot:W,tabId:A,threadRef:e})},[k,qt,te,W,A,e,Ze,gt]),Xt=(0,Z.useCallback)(()=>{if(A){if(w===A){me.getState().close(e);return}me.getState().open(e,ge(A)),V.getState().close(e)}},[w,A,e]),Zt=e=>()=>{e&&R&&e(R).catch(()=>void 0)},Qt=K?{hardReload:()=>void jt({hardReload:!0}),setColorScheme:e=>void jt({colorScheme:e}),zoomIn:Ft,zoomOut:It,resetZoom:Lt,clearCookies:()=>void jt({clear:`cookies`}),clearCache:()=>void jt({clear:`cache`}),...fe&&X?{openDevTools:Zt(X.openDevTools),toggleNativePictureInPicture:()=>$t()}:{}}:X?{hardReload:Zt(X.hardReload),setColorScheme:e=>{R&&X?.setColorScheme(R,e).catch(()=>void 0)},zoomIn:Ft,zoomOut:It,resetZoom:Lt,clearCookies:()=>void X?.clearCookies(e.environmentId,vt).catch(()=>void 0),clearCache:()=>void X?.clearCache(e.environmentId,vt).catch(()=>void 0),openDevTools:Zt(X.openDevTools),toggleNativePictureInPicture:()=>$t()}:null,$t=(0,Z.useCallback)(()=>{X&&R&&(J?.pictureInPicture?X.pictureInPicture.close:X.pictureInPicture.open)(R).catch(e=>{I.add({type:`error`,title:`Unable to update popped-out preview`,description:e instanceof Error?e.message:`An error occurred.`})})},[J?.pictureInPicture,R]),en=(0,Z.useCallback)(t=>{if(!X||!R||!A)return;let n=X;if(U){ze(U).then(e=>{if(!e)return;let t=!1,r,i=()=>{if(!navigator.clipboard?.writeText){I.update(r,H({type:`error`,title:`Unable to copy recording path`,description:`Clipboard API unavailable.`,actionProps:a}));return}navigator.clipboard.writeText(e.path).then(()=>{t=!0,o(),window.setTimeout(()=>{t=!1,o()},2e3)},e=>{I.update(r,H({type:`error`,title:`Unable to copy recording path`,description:e instanceof Error?e.message:`An error occurred.`,actionProps:a}))})},a={children:ce(navigator.platform),onClick:()=>void n.revealArtifact(e.path)},o=()=>{I.update(r,H({type:`success`,title:`Recording saved`,actionProps:a,data:{secondaryActionProps:{children:t?`Copied!`:`Copy path`,disabled:t,onClick:i},secondaryActionVariant:`outline`}}))};r=I.add(H({type:`success`,title:`Recording saved`,actionProps:a,data:{secondaryActionProps:{children:`Copy path`,onClick:i},secondaryActionVariant:`outline`}}))},e=>{I.add({type:`error`,title:`Unable to stop recording`,description:e instanceof Error?e.message:`An error occurred.`})});return}if(t){We(R,e,A).catch(e=>{let t=e instanceof Error?e.message:`An error occurred.`;Ue(e)||I.add({type:`error`,title:`Unable to start recording`,description:t})});return}n.captureScreenshot(R).then(e=>{let t={children:ce(navigator.platform),onClick:()=>void n.revealArtifact(e.path)},r=!1,i=!1,a,o=(e=`success`,n=`Screenshot saved`,o)=>{I.update(a,H({type:e,title:n,description:o,actionProps:{children:i?`Copied!`:`Copy image`,disabled:i,onClick:c},data:{additionalActions:[{id:`copy-path`,props:{children:r?`Copied!`:`Copy path`,disabled:r,onClick:s}}],secondaryActionProps:{...t},secondaryActionVariant:`outline`}}))},s=()=>{if(!navigator.clipboard?.writeText){o(`error`,`Unable to copy screenshot path`,`Clipboard API unavailable.`);return}navigator.clipboard.writeText(e.path).then(()=>{r=!0,o(),window.setTimeout(()=>{r=!1,o()},2e3)},e=>{o(`error`,`Unable to copy screenshot path`,e instanceof Error?e.message:`An error occurred.`)})},c=()=>{n.copyArtifactToClipboard(e.path).then(()=>{i=!0,o(),window.setTimeout(()=>{i=!1,o()},2e3)},e=>{o(`error`,`Unable to copy screenshot`,e instanceof Error?e.message:`An error occurred.`)})};a=I.add(H({type:`success`,title:`Screenshot saved`,actionProps:{children:`Copy image`,onClick:c},data:{additionalActions:[{id:`copy-path`,props:{children:`Copy path`,onClick:s}}],secondaryActionProps:{...t},secondaryActionVariant:`outline`}}))},e=>{I.add({type:`error`,title:`Unable to capture screenshot`,description:e instanceof Error?e.message:`An error occurred.`})})},[U,R,A,e]),tn=(0,Z.useCallback)(()=>{if(!X||!R)return;if(v.current){v.current.cancelled=!0,X.cancelPickElement(R).catch(()=>void 0);return}let t=typeof document<`u`?document.activeElement:null,n={cancelled:!1},r=!1;v.current=n,h(!0),(async()=>{try{if(await X.setAnnotationSendEnabled?.(R,!!c&&z(e.environmentId,`orchestration:operate`)),n.cancelled)return;let t=await X.pickElement(R);if(!t||n.cancelled)return;v.current===n&&(v.current=null,b.current&&h(!1),r=!0);let{annotation:i,submission:a,screenshotFailed:o=!1}=t,s=pt(i),l=o||s.status===`failed`,u=s.status===`failed`?{...i,screenshot:null}:i;ee(e,u),l&&I.add(H({type:`error`,title:`Could not capture the picked element`,description:`The annotation was kept without the screenshot.`}));let d=s.status===`captured`?s.file:null,f=d&&u.screenshot?{type:`image`,id:u.id,name:d.name,mimeType:d.type,sizeBytes:d.size,previewUrl:u.screenshot.dataUrl,file:d}:null;f&&E(e,f),a===`send`&&z(e.environmentId,`orchestration:operate`)&&c?.(u,f)}catch{}finally{let e=v.current===n;if(e&&(v.current=null,b.current&&h(!1)),(e||r)&&t&&t.isConnected&&typeof t.focus==`function`)try{t.focus({preventScroll:!0})}catch{}}})()},[E,ee,c,R,e]);return(0,Z.useEffect)(()=>{m&&X&&R&&X.setAnnotationSendEnabled?.(R,g).catch(()=>void 0)},[g,m,R]),(0,Z.useEffect)(()=>()=>{v.current&&(v.current.cancelled=!0,v.current=null,X&&R&&X.cancelPickElement(R).catch(()=>void 0),b.current&&h(!1))},[R]),(0,Z.useEffect)(()=>{if(s)return dt(e=>{switch(e){case`refresh`:At();return;case`focus-url`:f(e=>(e??0)+1);return;case`zoom-in`:Ft();return;case`zoom-out`:It();return;case`reset-zoom`:Lt();return;case`toggle-panel`:return}})},[At,Lt,Ft,It,s]),(0,$.jsxs)(`div`,{className:`flex min-h-0 flex-1 flex-col bg-background`,"data-thread-key":r(e),children:[(0,$.jsx)(ht,{url:Ze,loading:Qe||ft,canGoBack:et&&!Re,canGoForward:rt&&!Re,refreshDisabled:it||Re,inputDisabled:Re,focusUrlNonce:d,onBack:Wt,onForward:Gt,onRefresh:At,onSubmit:e=>void Ot(e),onOpenInBrowser:A?Kt:void 0,onCapture:X&&A&&!G?en:void 0,captureDisabled:!J||ut,recording:U!==null,onPictureInPicture:A&&(G||X)?Xt:void 0,pictureInPicture:w===A,pictureInPictureDisabled:ut||!G&&!J?.hasWebContents,onPickElement:X&&A&&!G?tn:void 0,pickActive:m,pickDisabled:!A||ut,pickDisabledReason:ut?`Page didn't load — pick unavailable until the page renders`:void 0,leadingActions:vt===_t.profileId?null:(0,$.jsxs)(F,{children:[(0,$.jsx)(se,{render:(0,$.jsx)(p,{variant:`outline`,className:`max-w-28 shrink-0`}),children:(0,$.jsx)(`span`,{className:`truncate`,children:yt})}),(0,$.jsx)(P,{side:`top`,children:yt})]}),trailingActions:Qt?(0,$.jsx)(Dt,{enabled:R!==null&&(K||(J?.hasWebContents??!1)),actions:Qt,...qt?{move:{label:Jt,onMove:()=>void Yt()}}:{},profileName:yt,zoomFactor:K?Nt:J?.zoomFactor??1,colorScheme:K?W?.colorScheme??`system`:J?.colorScheme??`system`,deviceToolbarVisible:gt._tag!==`fill`,onToggleDeviceToolbar:Ut,nativePictureInPicture:J?.pictureInPicture??!1}):null}),(0,$.jsxs)(`div`,{ref:ve,className:`relative min-h-0 flex-1 overflow-hidden`,children:[R&&W&&G?(0,$.jsxs)($.Fragment,{children:[gt._tag!==`fill`&&!Q&&!ut?(0,$.jsx)(`div`,{className:`absolute inset-x-0 top-0 z-10`,children:(0,$.jsx)(Je,{setting:gt,width:ke,aspectRatio:pe?gt.width/gt.height:null,onAspectRatioChange:e=>_e(e!==null),onChange:e=>Xe(R,e)})}):null,(0,$.jsx)(`div`,{className:`absolute inset-x-0 bottom-0`,style:{top:gt._tag===`fill`?0:38},children:(0,$.jsx)(lt,{ref:q,environmentId:e.environmentId,threadId:e.threadId,tabId:W.tabId,visible:s,onFirstFrame:()=>qe(R),onControl:e=>Le(e?.controller===`you`?R:null),onPopup:t=>nt(e,t,`panel`),className:T(`absolute inset-0 h-full w-full`,(Q||ut)&&`invisible`)},R)})]}):R&&W&&!Q?X?(0,$.jsx)(tt,{tabId:R,visible:s&&!ut,className:`absolute inset-0 h-full w-full`},R):(0,$.jsx)(`div`,{className:`flex h-full items-center justify-center p-8 text-center`,children:(0,$.jsx)(`p`,{className:`max-w-sm text-sm text-muted-foreground`,children:`This tab is open in the P4 Code desktop app.`})}):null,Q?(0,$.jsx)(Ct,{threadRef:e,environmentId:e.environmentId,configuredUrls:a,recentEntries:C,onRemoveRecent:t=>Oe(e,t),onOpenUrl:e=>void kt(e)}):null,W&&J?(0,$.jsx)(Rt,{zoomFactor:J.zoomFactor}):null,R&&J&&!Q&&!ut&&!_.has(R)?(0,$.jsx)(at,{tabId:R,zoomFactor:J.zoomFactor,controller:mt}):null,Y._tag===`LoadFailed`&&Y.download?(0,$.jsx)(`div`,{className:`absolute inset-0 z-10 bg-background`,children:(0,$.jsx)(Vt,{threadRef:e,tabId:W?.tabId??``,url:Y.url,download:Y.download})}):Y._tag===`LoadFailed`?(0,$.jsx)(`div`,{className:`absolute inset-0 z-10 bg-background`,children:(0,$.jsx)(Mt,{url:Y.url,code:Y.code,description:Y.description,onReload:At,...qt===`server`?{move:{label:Jt,onMove:()=>void Yt()}}:{}})}):null]})]})}function Wt(e){let t=(0,Q.c)(18),{mode:n,threadRef:r,tabId:i,configuredUrls:o,visible:s,onSendAnnotation:c}=e,l=je(r.environmentId),u=de(r.environmentId,a);if(!u||!l){let e=u?`Preview is only available in the P4 Code desktop app.`:`Pair this client again with preview access to control browser previews.`,r;t[0]===e?r=t[1]:(r=(0,$.jsx)(`div`,{className:`flex min-h-0 flex-1 flex-col items-center justify-center gap-3 p-8 text-center`,children:(0,$.jsx)(`p`,{className:`max-w-sm text-sm text-muted-foreground`,children:e})}),t[0]=e,t[1]=r);let i;return t[2]!==n||t[3]!==r?(i=(0,$.jsx)(U,{mode:n,children:r}),t[2]=n,t[3]=r,t[4]=i):i=t[4],i}let d;t[5]===i?d=t[6]:(d=i===void 0?{}:{tabId:i},t[5]=i,t[6]=d);let f;t[7]===c?f=t[8]:(f=c?{onSendAnnotation:c}:{},t[7]=c,t[8]=f);let p;t[9]!==o||t[10]!==d||t[11]!==f||t[12]!==r||t[13]!==s?(p=(0,$.jsx)(Ut,{threadRef:r,...d,configuredUrls:o,visible:s,...f}),t[9]=o,t[10]=d,t[11]=f,t[12]=r,t[13]=s,t[14]=p):p=t[14];let m;return t[15]!==n||t[16]!==p?(m=(0,$.jsx)(U,{mode:n,children:p}),t[15]=n,t[16]=p,t[17]=m):m=t[17],m}export{Wt as PreviewPanel};
|
|
2
|
+
//# sourceMappingURL=PreviewPanel-BQkFJlas.js.map
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{i as e}from"./rolldown-runtime-Dd_uD5pT.js";import{Bt as t,Gt as ee,Mt as te,Vt as ne,kl as n,ma as r,qt as re,tn as i,wx as a,xs as ie}from"./utils-Nv21__t3.js";import{a as o,c as s,o as c,s as l,t as u}from"./select-BXOHHCMJ.js";import{t as ae}from"./useNavigate-DfvN7ISg.js";import{i as oe}from"./toast-B-l3XS_F.js";import{E as se,i as ce}from"./useSettings-C1hmCYRR.js";import{t as le}from"./server-BBIVfjrf.js";import{t as d}from"./pullRequestDetail.logic-C6mxjZFd.js";import{i as ue}from"./p4ProjectFile-DH7qoFHx.js";import{I as de,M as fe,N as pe,P as f,S as me,a as p,n as he,p as ge,r as m,s as _e,z as ve}from"./settingsLayout-DKjAOwp4.js";import{Oa as ye,ir as h}from"./main-CJvawsJJ.js";import{t as be}from"./ProviderModelPicker-lxEwYGAB.js";import{n as xe,t as Se}from"./runtimeModeConfig-DKj6PlUP.js";var Ce=a(),g=e(r(),1),we=[`recursive`,`top-level`,`none`];function Te(e){return e!==null&&we.includes(e)}function Ee(e){let r=(0,Ce.c)(94),{category:a}=e,{scope:Ee,target:_,targets:je,connectedEnvironments:Me}=ve(),v=pe(),y=de(),Ne=ae(),{environments:b}=se(),x,S,C,w,T;if(r[0]!==b||r[1]!==v||r[2]!==_){C=_?b.find(e=>e.environmentId===_.environmentId):void 0;let e=C?.serverConfig?.providers??le;w=ee(e,v.defaultModelSelection),x=re(t(ne(e),v,_?.projectId??null)),S=te(v,e,w?.instanceId,w?.model),T=x.find(e=>e.instanceId===w?.instanceId),r[0]=b,r[1]=v,r[2]=_,r[3]=x,r[4]=S,r[5]=C,r[6]=w,r[7]=T}else x=r[3],S=r[4],C=r[5],w=r[6],T=r[7];let E=T,D;r[8]===Symbol.for(`react.memo_cache_sentinel`)?(D=[`defaultModelSelection`],r[8]=D):D=r[8];let O=f(D),k;r[9]===Symbol.for(`react.memo_cache_sentinel`)?(k=[`defaultRuntimeMode`],r[9]=k):k=r[9];let A=f(k),Pe=Se[v.defaultRuntimeMode].icon,j;r[10]===Symbol.for(`react.memo_cache_sentinel`)?(j=[`defaultThreadEnvMode`],r[10]=j):j=r[10];let M=f(j),N;r[11]===Symbol.for(`react.memo_cache_sentinel`)?(N=[`worktreeSubmodules`],r[11]=N):N=r[11];let P=f(N),F;r[12]===Symbol.for(`react.memo_cache_sentinel`)?(F=[`enableAgentBrowserAccess`],r[12]=F):F=r[12];let I=f(F),L;r[13]===Symbol.for(`react.memo_cache_sentinel`)?(L=[`defaultAutoPull`],r[13]=L):L=r[13];let R=f(L),z;r[14]===Symbol.for(`react.memo_cache_sentinel`)?(z=[`removeAgentCreditsOnMerge`],r[14]=z):z=r[14];let B=f(z),V;r[15]===Symbol.for(`react.memo_cache_sentinel`)?(V=[`pullRequestMergeMethod`],r[15]=V):V=r[15];let H=f(V),Fe;r[16]===Symbol.for(`react.memo_cache_sentinel`)?(Fe=[`defaultModelSelection`],r[16]=Fe):Fe=r[16];let Ie=fe(Fe),U=Ee.kind===`project`||Ee.kind===`checkout`,W=Me.length===0,Le;r[17]===_?Le=r[18]:(Le=_?ue(_.settings,null,null,null).settings:null,r[17]=_,r[18]=Le);let Re=Le,ze;r[19]!==x||r[20]!==b||r[21]!==v||r[22]!==je?(ze=function(e,ee){let n=x.find(t=>t.instanceId===e);for(let r of je){let re=b.find(e=>e.environmentId===r.environmentId),i=re?.serverConfig;if(!i)continue;let a=t(ne(i.providers),r.settings,r.projectId).find(t=>t.instanceId===e),ie=te(ce(r.settings,v),i.providers).get(e);if(!a?.enabled||!a.isAvailable||a.driverKind!==n?.driverKind||!ie?.some(e=>e.slug===ee&&!e.isUnavailable))return`This model is unavailable on ${re?.label??`a selected environment`}. Select that environment to choose its model separately.`}return null},r[19]=x,r[20]=b,r[21]=v,r[22]=je,r[23]=ze):ze=r[23];let G=ze,Be;r[24]!==G||r[25]!==y?(Be=e=>{let t=e?G(e.instanceId,e.model):null;if(t){oe.add({type:`error`,title:`Default model not saved`,description:t});return}y({defaultModelSelection:e})},r[24]=G,r[25]=y,r[26]=Be):Be=r[26];let K=Be,Ve;r[27]===Symbol.for(`react.memo_cache_sentinel`)?(Ve=[`defaultModelSelection`],r[27]=Ve):Ve=r[27];let He=U?`Model for new threads in this project.`:`Default model for new threads. Projects can override it.`,Ue=W||O||Ie===`project`?void 0:v.defaultModelSelection===null?`Automatic`:void 0,q;r[28]!==K||r[29]!==v.defaultModelSelection?(q=v.defaultModelSelection===null?null:(0,g.jsx)(m,{label:`default model`,onClick:()=>K(null)}),r[28]=K,r[29]=v.defaultModelSelection,r[30]=q):q=r[30];let J;r[31]!==E||r[32]!==x||r[33]!==O||r[34]!==G||r[35]!==S||r[36]!==Ne||r[37]!==C||r[38]!==w||r[39]!==K||r[40]!==v.planModeEnabled?(J=w&&E?(0,g.jsxs)(`div`,{className:`flex min-w-0 flex-wrap items-center justify-end gap-1.5`,children:[(0,g.jsx)(be,{environmentId:C?.environmentId??null,activeInstanceId:w.instanceId,model:w.model,lockedProvider:null,instanceEntries:x,modelOptionsByInstance:S,triggerClassName:he,...O?{triggerLabel:`Mixed`}:{},getModelDisabledReason:G,onOpenProviderSetup:e=>{C&&Ne({to:`/settings/providers`,search:{environmentId:C.environmentId,instanceId:e}})},onInstanceModelChange:(e,t)=>K(ie(e,t))}),O?null:(0,g.jsx)(i,{provider:E.driverKind,models:E.models,model:w.model,prompt:``,onPromptChange:Ae,modelOptions:w.options??[],allowPromptInjectedEffort:!1,planModeEnabled:v.planModeEnabled,triggerClassName:he,onModelOptionsChange:e=>K(ie(w.instanceId,w.model,e))})]}):(0,g.jsx)(`span`,{className:`text-sm text-muted-foreground`,children:`No providers available`}),r[31]=E,r[32]=x,r[33]=O,r[34]=G,r[35]=S,r[36]=Ne,r[37]=C,r[38]=w,r[39]=K,r[40]=v.planModeEnabled,r[41]=J):J=r[41];let We;r[42]!==O||r[43]!==He||r[44]!==Ue||r[45]!==q||r[46]!==J?(We=(0,g.jsx)(p,{serverScoped:!0,settingKeys:Ve,mixed:O,id:`default-model`,title:`Model`,description:He,status:Ue,resetAction:q,control:J}),r[42]=O,r[43]=He,r[44]=Ue,r[45]=q,r[46]=J,r[47]=We):We=r[47];let Ge=We,Ke;r[48]===Symbol.for(`react.memo_cache_sentinel`)?(Ke=[`defaultThreadEnvMode`],r[48]=Ke):Ke=r[48];let qe;r[49]===Symbol.for(`react.memo_cache_sentinel`)?(qe=h(`new-threads`),r[49]=qe):qe=r[49];let Je=U?`Where new threads in this project start.`:`Where new threads start. Projects and their p4.json can override it.`,Y;r[50]!==U||r[51]!==v.defaultThreadEnvMode||r[52]!==y?(Y=!U&&v.defaultThreadEnvMode!==null?(0,g.jsx)(m,{label:`default workspace`,onClick:()=>y({defaultThreadEnvMode:null})}):null,r[50]=U,r[51]=v.defaultThreadEnvMode,r[52]=y,r[53]=Y):Y=r[53];let Ye=M?null:Re?.defaultThreadEnvMode??null,X;r[54]===y?X=r[55]:(X=e=>{(e===`local`||e===`worktree`)&&y({defaultThreadEnvMode:e})},r[54]=y,r[55]=X);let Z;r[56]===W?Z=r[57]:(Z=(0,g.jsx)(l,{size:`sm`,"aria-label":`Default workspace`,children:(0,g.jsx)(s,{children:e=>e===`local`||e===`worktree`?me(e):W?`Unavailable`:`Mixed`})}),r[56]=W,r[57]=Z);let Xe;r[58]===Symbol.for(`react.memo_cache_sentinel`)?(Xe=(0,g.jsx)(o,{value:`local`,children:me(`local`)}),r[58]=Xe):Xe=r[58];let Ze;r[59]===Symbol.for(`react.memo_cache_sentinel`)?(Ze=(0,g.jsxs)(c,{align:`end`,alignItemWithTrigger:!1,children:[Xe,(0,g.jsx)(o,{value:`worktree`,children:me(`worktree`)})]}),r[59]=Ze):Ze=r[59];let Q;r[60]!==Ye||r[61]!==X||r[62]!==Z?(Q=(0,g.jsxs)(u,{value:Ye,onValueChange:X,children:[Z,Ze]}),r[60]=Ye,r[61]=X,r[62]=Z,r[63]=Q):Q=r[63];let Qe;r[64]!==M||r[65]!==Je||r[66]!==Y||r[67]!==Q?(Qe=(0,g.jsx)(p,{serverScoped:!0,settingKeys:Ke,mixed:M,id:qe.id,title:`Workspace`,description:Je,resetAction:Y,control:Q}),r[64]=M,r[65]=Je,r[66]=Y,r[67]=Q,r[68]=Qe):Qe=r[68];let $e=Qe,et=a===`general`||a===`project`?`project-defaults`:a===`integrations`?`browser-access`:`source-control-defaults`,tt=a===`general`||a===`project`?`New threads`:a===`integrations`?`Browser`:`Repositories`,$;r[69]!==Pe||r[70]!==a||r[71]!==Re?.worktreeSubmodules||r[72]!==U||r[73]!==B||r[74]!==R||r[75]!==I||r[76]!==H||r[77]!==A||r[78]!==P||r[79]!==Ge||r[80]!==v.defaultAutoPull||r[81]!==v.defaultRuntimeMode||r[82]!==v.enableAgentBrowserAccess||r[83]!==v.pullRequestMergeMethod||r[84]!==v.removeAgentCreditsOnMerge||r[85]!==v.worktreeSubmodules||r[86]!==W||r[87]!==y||r[88]!==$e?($=a===`project`?(0,g.jsxs)(g.Fragment,{children:[Ge,$e]}):a===`general`?(0,g.jsxs)(g.Fragment,{children:[Ge,(0,g.jsx)(p,{serverScoped:!0,settingKeys:[`defaultRuntimeMode`],mixed:A,...h(`default-permissions`),description:U?`Permissions for new threads in this project.`:`Default permissions for new threads. Projects can override them.`,resetAction:v.defaultRuntimeMode===n.defaultRuntimeMode?null:(0,g.jsx)(m,{label:`default permissions`,onClick:()=>y({defaultRuntimeMode:n.defaultRuntimeMode})}),control:(0,g.jsxs)(u,{value:A?null:v.defaultRuntimeMode,onValueChange:e=>{e&&y({defaultRuntimeMode:e})},children:[(0,g.jsxs)(l,{size:`sm`,"aria-label":`Default permissions`,children:[!A&&(0,g.jsx)(Pe,{className:`size-3.5 shrink-0 text-muted-foreground`}),(0,g.jsx)(s,{children:A?`Mixed`:Se[v.defaultRuntimeMode].label})]}),(0,g.jsx)(c,{align:`end`,alignItemWithTrigger:!1,children:xe.map(ke)})]})}),$e,(0,g.jsx)(p,{serverScoped:!0,settingKeys:[`worktreeSubmodules`],mixed:P,...h(`worktree-submodules`),description:U?`How new worktrees in this project populate git submodules.`:`How new worktrees populate git submodules. Projects and their p4.json can override it.`,resetAction:!U&&v.worktreeSubmodules!==null?(0,g.jsx)(m,{label:`worktree submodules`,onClick:()=>y({worktreeSubmodules:null})}):null,control:(0,g.jsxs)(u,{value:P?null:Re?.worktreeSubmodules??null,onValueChange:e=>{Te(e)&&y({worktreeSubmodules:e})},children:[(0,g.jsx)(l,{size:`sm`,"aria-label":`Worktree submodules`,children:(0,g.jsx)(s,{children:e=>Te(e)?ge[e]:W?`Unavailable`:`Mixed`})}),(0,g.jsx)(c,{align:`end`,alignItemWithTrigger:!1,children:we.map(Oe)})]})})]}):a===`source-control`?(0,g.jsxs)(g.Fragment,{children:[(0,g.jsx)(p,{serverScoped:!0,settingKeys:[`defaultAutoPull`],mixed:R,id:`automatic-pull`,title:`Automatically pull`,description:U?`Keeps this project's default branch current when the checkout has no local changes or commits.`:`Keeps the default branch current when the checkout has no local changes or commits. Projects can override it.`,resetAction:v.defaultAutoPull?(0,g.jsx)(m,{label:`default automatic pull`,tooltip:`Reset automatic pull to off`,onClick:()=>y({defaultAutoPull:!1})}):null,control:(0,g.jsx)(ye,{"aria-label":`Default automatic pull`,mixed:R,checked:!R&&v.defaultAutoPull,onCheckedChange:e=>y({defaultAutoPull:e})})}),(0,g.jsx)(p,{serverScoped:!0,settingKeys:[`removeAgentCreditsOnMerge`],mixed:B,...h(`remove-agent-credits-on-merge`),description:`Remove recognized agent credit lines from GitHub merge and squash messages, keeping human co-authors. Includes auto-merge. Excludes merge queues, stack merges, and existing commits.`,resetAction:v.removeAgentCreditsOnMerge?(0,g.jsx)(m,{label:`agent credit removal`,tooltip:`Keep agent credits`,onClick:()=>y({removeAgentCreditsOnMerge:!1})}):null,control:(0,g.jsx)(ye,{"aria-label":`Remove agent credits when merging`,mixed:B,checked:!B&&v.removeAgentCreditsOnMerge,onCheckedChange:e=>y({removeAgentCreditsOnMerge:e})})}),(0,g.jsx)(p,{serverScoped:!0,settingKeys:[`pullRequestMergeMethod`],mixed:H,...h(`pull-request-merge-method`),description:U?`Pull requests in this project start with this method.`:`Pull requests start with this method. Last selected reuses whatever you chose most recently on this device.`,resetAction:v.pullRequestMergeMethod===null?null:(0,g.jsx)(m,{label:`default merge method`,tooltip:`Reset to last selected`,onClick:()=>y({pullRequestMergeMethod:null})}),control:(0,g.jsxs)(u,{value:H?null:v.pullRequestMergeMethod??`last`,onValueChange:e=>{e===`last`?y({pullRequestMergeMethod:null}):(e===`merge`||e===`squash`||e===`rebase`)&&y({pullRequestMergeMethod:e})},children:[(0,g.jsx)(l,{size:`sm`,"aria-label":`Default pull request merge method`,children:(0,g.jsx)(s,{children:De})}),(0,g.jsxs)(c,{align:`end`,alignItemWithTrigger:!1,children:[(0,g.jsx)(o,{value:`last`,children:`Last selected`}),(0,g.jsx)(o,{value:`merge`,children:d.merge}),(0,g.jsx)(o,{value:`squash`,children:d.squash}),(0,g.jsx)(o,{value:`rebase`,children:d.rebase})]})]})})]}):(0,g.jsx)(g.Fragment,{children:(0,g.jsx)(p,{serverScoped:!0,settingKeys:[`enableAgentBrowserAccess`],mixed:I,id:h(`agent-browser-access`).id,title:`Agent browser access`,description:U?`Allow agents in this project to use the shared browser. Applies when the agent session next starts.`:`Allow agents to use the shared browser. Projects can override it.`,resetAction:v.enableAgentBrowserAccess===n.enableAgentBrowserAccess?null:(0,g.jsx)(m,{label:`default browser access`,onClick:()=>y({enableAgentBrowserAccess:n.enableAgentBrowserAccess})}),control:(0,g.jsx)(ye,{"aria-label":`Agent browser access`,mixed:I,checked:!I&&v.enableAgentBrowserAccess,onCheckedChange:e=>y({enableAgentBrowserAccess:e})})})}),r[69]=Pe,r[70]=a,r[71]=Re?.worktreeSubmodules,r[72]=U,r[73]=B,r[74]=R,r[75]=I,r[76]=H,r[77]=A,r[78]=P,r[79]=Ge,r[80]=v.defaultAutoPull,r[81]=v.defaultRuntimeMode,r[82]=v.enableAgentBrowserAccess,r[83]=v.pullRequestMergeMethod,r[84]=v.removeAgentCreditsOnMerge,r[85]=v.worktreeSubmodules,r[86]=W,r[87]=y,r[88]=$e,r[89]=$):$=r[89];let nt;return r[90]!==et||r[91]!==tt||r[92]!==$?(nt=(0,g.jsx)(_e,{id:et,title:tt,children:$}),r[90]=et,r[91]=tt,r[92]=$,r[93]=nt):nt=r[93],nt}function De(e){return e===`merge`||e===`squash`||e===`rebase`?d[e]:e===`last`?`Last selected`:`Mixed`}function Oe(e){return(0,g.jsx)(o,{value:e,children:ge[e]},e)}function ke(e){let t=Se[e],ee=t.icon;return(0,g.jsx)(o,{value:e,className:`min-w-64`,children:(0,g.jsxs)(`div`,{className:`grid gap-0.5`,children:[(0,g.jsxs)(`span`,{className:`inline-flex items-center gap-1.5 font-medium`,children:[(0,g.jsx)(ee,{className:`size-3.5 shrink-0 text-muted-foreground`}),t.label]}),(0,g.jsx)(`span`,{className:`text-xs leading-4 text-muted-foreground`,children:t.description})]})},e)}function Ae(){}export{Ee as t};
|
|
2
|
+
//# sourceMappingURL=ProjectDefaultsSettings-DglkVzkM.js.map
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/dynamic-
|
|
2
|
-
import{i as e}from"./rolldown-runtime-Dd_uD5pT.js";import{t}from"./index-
|
|
3
|
-
//# sourceMappingURL=ProjectFavicon-
|
|
1
|
+
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/dynamic-COZhF9Vt.js","assets/rolldown-runtime-Dd_uD5pT.js","assets/index-TkyxWt2Q.js","assets/Icon-l19w4AjM.js"])))=>i.map(i=>d[i]);
|
|
2
|
+
import{i as e}from"./rolldown-runtime-Dd_uD5pT.js";import{t}from"./index-TkyxWt2Q.js";import{r as n}from"./Icon-l19w4AjM.js";import{Vo as r,ma as i,t as a,wx as o}from"./utils-Nv21__t3.js";import{t as s}from"./folder-CMIvEUJv.js";import{a as c,i as l}from"./runtime-C9evwoB9.js";import{n as u}from"./assets-CLIqG-m-.js";import{r as d,t as f}from"./ProjectMonogram-Dd6xeLhS.js";var p=o(),m=e(n(),1),h=e(i(),1),g=(0,m.lazy)(()=>t(()=>import(`./dynamic-COZhF9Vt.js`).then(e=>({default:e.DynamicIcon})),__vite__mapDeps([0,1,2,3])));function _(){let e=(0,p.c)(1),t;return e[0]===Symbol.for(`react.memo_cache_sentinel`)?(t=(0,h.jsx)(s,{className:`size-full text-inherit`}),e[0]=t):t=e[0],t}function v(e){let t=(0,p.c)(46),{project:n}=e,i;t[0]!==n.environmentId||t[1]!==n.faviconPath||t[2]!==n.workspaceRoot?(i=u({environmentId:n.environmentId,cwd:n.workspaceRoot,faviconPath:n.faviconPath}),t[0]=n.environmentId,t[1]=n.faviconPath,t[2]=n.workspaceRoot,t[3]=i):i=t[3];let o=r(i);if(n.projectIcon?.kind===`monogram`){let r;return t[4]!==e.className||t[5]!==n.projectIcon.color||t[6]!==n.projectIcon.text?(r=(0,h.jsx)(f,{text:n.projectIcon.text,color:n.projectIcon.color,className:e.className}),t[4]=e.className,t[5]=n.projectIcon.color,t[6]=n.projectIcon.text,t[7]=r):r=t[7],r}if(n.projectIcon?.kind===`emoji`){let r;return t[8]!==e.className||t[9]!==n.projectIcon.emoji?(r=(0,h.jsx)(y,{className:e.className,icon:s,emoji:n.projectIcon.emoji}),t[8]=e.className,t[9]=n.projectIcon.emoji,t[10]=r):r=t[10],r}if(n.projectIcon?.kind===`lucide`){let r,i,o,s,c,l,u;if(t[11]!==e.className||t[12]!==n.projectIcon.color||t[13]!==n.projectIcon.name){let f=d(n.projectIcon.color),p=a(`inline-flex size-3.5 shrink-0 items-center justify-center`,f,e.className);l=`true`,u=p,i=m.Suspense,t[21]===Symbol.for(`react.memo_cache_sentinel`)?(c=(0,h.jsx)(_,{}),t[21]=c):c=t[21],r=g,o=n.projectIcon.name,s=a(`size-full`,f),t[11]=e.className,t[12]=n.projectIcon.color,t[13]=n.projectIcon.name,t[14]=r,t[15]=i,t[16]=o,t[17]=s,t[18]=c,t[19]=l,t[20]=u}else r=t[14],i=t[15],o=t[16],s=t[17],c=t[18],l=t[19],u=t[20];let f;t[22]!==r||t[23]!==o||t[24]!==s?(f=(0,h.jsx)(r,{name:o,className:s,fallback:_}),t[22]=r,t[23]=o,t[24]=s,t[25]=f):f=t[25];let p;t[26]!==i||t[27]!==c||t[28]!==f?(p=(0,h.jsx)(i,{fallback:c,children:f}),t[26]=i,t[27]=c,t[28]=f,t[29]=p):p=t[29];let v;return t[30]!==l||t[31]!==u||t[32]!==p?(v=(0,h.jsx)(`span`,{"aria-hidden":l,className:u,children:p}),t[30]=l,t[31]=u,t[32]=p,t[33]=v):v=t[33],v}let v=e.fallbackIcon??s;if(!o||c(o)){let n;return t[34]!==v||t[35]!==e.className?(n=(0,h.jsx)(y,{className:e.className,icon:v}),t[34]=v,t[35]=e.className,t[36]=n):n=t[36],n}let x;t[37]!==n.environmentId||t[38]!==n.faviconPath||t[39]!==n.workspaceRoot?(x=l(n.environmentId,n.workspaceRoot,n.faviconPath),t[37]=n.environmentId,t[38]=n.faviconPath,t[39]=n.workspaceRoot,t[40]=x):x=t[40];let S=x,C;return t[41]!==v||t[42]!==S||t[43]!==e.className||t[44]!==o?(C=(0,h.jsx)(b,{src:o,className:e.className,fallbackIcon:v},S),t[41]=v,t[42]=S,t[43]=e.className,t[44]=o,t[45]=C):C=t[45],C}function y(e){let t=(0,p.c)(12),{className:n,icon:r,emoji:i}=e;if(i){let e;t[0]===n?e=t[1]:(e=a(`inline-flex size-3.5 shrink-0 items-center justify-center leading-none [container-type:size]`,n),t[0]=n,t[1]=e);let r;t[2]===i?r=t[3]:(r=(0,h.jsx)(`span`,{className:`text-[length:80cqh] leading-none`,children:i}),t[2]=i,t[3]=r);let o;return t[4]!==e||t[5]!==r?(o=(0,h.jsx)(`span`,{"aria-hidden":`true`,className:e,children:r}),t[4]=e,t[5]=r,t[6]=o):o=t[6],o}let o;t[7]===n?o=t[8]:(o=a(`size-3.5 shrink-0 text-icon-muted`,n),t[7]=n,t[8]=o);let s;return t[9]!==r||t[10]!==o?(s=(0,h.jsx)(r,{className:o}),t[9]=r,t[10]=o,t[11]=s):s=t[11],s}function b(e){let t=(0,p.c)(17),{src:n,className:r,fallbackIcon:i}=e,o;t[0]===n?o=t[1]:(o=()=>n.startsWith(`data:image/`)?n:null,t[0]=n,t[1]=o);let[s,c]=(0,m.useState)(o),l=s!==n,u;t[2]===Symbol.for(`react.memo_cache_sentinel`)?(u=e=>{c(t=>t===e?null:t)},t[2]=u):u=t[2];let d=u,f;t[3]!==i||t[4]!==r||t[5]!==s?(f=s===null?(0,h.jsx)(y,{className:r,icon:i}):null,t[3]=i,t[4]=r,t[5]=s,t[6]=f):f=t[6];let g;t[7]!==r||t[8]!==s?(g=s?(0,h.jsx)(`img`,{src:s,alt:``,className:a(`size-3.5 shrink-0 rounded-[25%] object-contain`,r),onError:()=>d(s)}):null,t[7]=r,t[8]=s,t[9]=g):g=t[9];let _;t[10]!==l||t[11]!==n?(_=l?(0,h.jsx)(`img`,{src:n,alt:``,className:`hidden`,onLoad:()=>{c(n)},onError:()=>d(n)}):null,t[10]=l,t[11]=n,t[12]=_):_=t[12];let v;return t[13]!==f||t[14]!==g||t[15]!==_?(v=(0,h.jsxs)(h.Fragment,{children:[f,g,_]}),t[13]=f,t[14]=g,t[15]=_,t[16]=v):v=t[16],v}export{v as t};
|
|
3
|
+
//# sourceMappingURL=ProjectFavicon-CDpXbAhP.js.map
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{i as e}from"./rolldown-runtime-Dd_uD5pT.js";import{r as t}from"./Icon-l19w4AjM.js";import{ma as n,or as r,t as i,ud as a,wx as o,yh as s}from"./utils-Nv21__t3.js";import{n as ee,t as c}from"./toggle-group-B1ghB_yR.js";import{t as l}from"./input-CN9xdIYL.js";import{t as u}from"./scroll-area-CRoS-lxP.js";import{a as te,c as ne,i as d,o as re,r as ie,s as ae,t as oe}from"./dialog-C5PVc2Dc.js";import{n as f,r as se,t as ce}from"./ProjectMonogram-Dd6xeLhS.js";import{DynamicIcon as le,t as p}from"./dynamic-COZhF9Vt.js";var m=o();function h(e){return e.normalize(`NFKC`).trim()}function g(e){let t=h(e).match(/[\p{L}\p{N}]+/gu)??[],n=t[0];if(!n)return`PR`;let r=Array.from(n),i=r[0]??`P`,a=r.slice(1).find(e=>/\p{N}/u.test(e))??(t.length>1?Array.from(t.at(-1)??``)[0]:r.at(-1))??i;return Array.from(`${i}${a}`.toUpperCase()).slice(0,2).join(``)}function _(e){let t=h(e).toLocaleLowerCase(`en-US`)||`project`,n=0;for(let e of t)n=(n*31+(e.codePointAt(0)??0))%f.length;return f[n]?.value??`blue`}function v(e){return{monogram:g(e),color:_(e)}}var y=e(t(),1),b=[`folder-code`,`code-2`,`terminal`,`globe-2`,`server`,`database`,`bot`,`sparkles`,`smartphone`,`monitor`,`cloud-cog`,`package`,`book-open`,`flask-conical`,`shield-check`,`rocket`,`gamepad-2`,`music`,`image`,`shopping-bag`,`git-branch`,`workflow`,`wrench`,`layers-3`],ue=[{emoji:`💻`,label:`Computer`},{emoji:`🛠️`,label:`Tools`},{emoji:`🚀`,label:`Rocket`},{emoji:`🤖`,label:`Robot`},{emoji:`✨`,label:`Sparkles`},{emoji:`⚡`,label:`Lightning`},{emoji:`🌐`,label:`Web`},{emoji:`📱`,label:`Mobile`},{emoji:`🖥️`,label:`Desktop`},{emoji:`⌨️`,label:`Keyboard`},{emoji:`⚙️`,label:`Gear`},{emoji:`🗄️`,label:`Database`},{emoji:`☁️`,label:`Cloud`},{emoji:`📦`,label:`Package`},{emoji:`📚`,label:`Books`},{emoji:`🧪`,label:`Test tube`},{emoji:`🔒`,label:`Lock`},{emoji:`🎮`,label:`Game`},{emoji:`🎵`,label:`Music`},{emoji:`🎬`,label:`Movie`},{emoji:`🖼️`,label:`Picture`},{emoji:`🛍️`,label:`Shopping`},{emoji:`🔥`,label:`Fire`},{emoji:`💡`,label:`Idea`},{emoji:`🧩`,label:`Puzzle`},{emoji:`📊`,label:`Chart`},{emoji:`🧠`,label:`Brain`},{emoji:`🦄`,label:`Unicorn`},{emoji:`🐙`,label:`Octopus`},{emoji:`🌱`,label:`Seedling`}];function de(e){let t=e.trim().toLowerCase().replaceAll(/\s+/g,`-`);return t?p.filter(e=>e.includes(t)).slice(0,60):b}function fe(e){let t=e.trim();if(!t)return null;let n=new Intl.Segmenter(void 0,{granularity:`grapheme`}).segment(t)[Symbol.iterator]().next().value?.segment,r=/^\p{Regional_Indicator}{2}$/u.test(n??``),i=/^[#*0-9]\uFE0F?\u20E3$/u.test(n??``);return!n||!/\p{Extended_Pictographic}/u.test(n)&&!r&&!i?null:n}var x=e(n(),1),pe=`folder-code`,me=s(a);function he(e){return e.split(`-`).map(e=>e.charAt(0).toUpperCase()+e.slice(1)).join(` `)}function S(e){let t=(0,m.c)(84),{current:n,projectName:a,open:o,onOpenChange:s,onSelect:p}=e,h;t[0]===a?h=t[1]:(h=v(a),t[0]=a,t[1]=h);let g=h,[_,b]=(0,y.useState)(n?.kind??`lucide`),[S,ge]=(0,y.useState)(n?.kind===`lucide`?n.name:pe),[C,_e]=(0,y.useState)(n&&n.kind!==`emoji`?n.color:g.color),[w,T]=(0,y.useState)(n?.kind===`monogram`?n.text:g.monogram),[E,D]=(0,y.useState)(n?.kind===`emoji`?n.emoji:`💻`),[O,ve]=(0,y.useState)(``),[k,ye]=(0,y.useState)(``),be=(0,y.useRef)(!1),A,j;t[2]!==g.color||t[3]!==g.monogram||t[4]!==n||t[5]!==o?(A=()=>{o&&!be.current&&(b(n?.kind??`lucide`),ge(n?.kind===`lucide`?n.name:pe),_e(n&&n.kind!==`emoji`?n.color:g.color),T(n?.kind===`monogram`?n.text:g.monogram),D(n?.kind===`emoji`?n.emoji:`💻`),ve(``),ye(``)),be.current=o},j=[n,o,g.color,g.monogram],t[2]=g.color,t[3]=g.monogram,t[4]=n,t[5]=o,t[6]=A,t[7]=j):(A=t[6],j=t[7]),(0,y.useEffect)(A,j);let M;t[8]===O?M=t[9]:(M=de(O),t[8]=O,t[9]=M);let N=M,P,F,I,L,R,z,B,V,H,U,W,G,K;if(t[10]!==g.monogram||t[11]!==C||t[12]!==k||t[13]!==E||t[14]!==S||t[15]!==N||t[16]!==w||t[17]!==_||t[18]!==s||t[19]!==p||t[20]!==o||t[21]!==O){let e=se(C),n,r;t[35]===w?(n=t[36],r=t[37]):(n=w.normalize(`NFKC`).trim().toUpperCase(),r=me(n),t[35]=w,t[36]=n,t[37]=r),K=r;let a;t[38]!==C||t[39]!==E||t[40]!==S||t[41]!==_||t[42]!==n||t[43]!==s||t[44]!==p||t[45]!==K?(a=()=>{(_!==`monogram`||K)&&(p(_===`monogram`?{kind:`monogram`,text:n,color:C}:_===`lucide`?{kind:`lucide`,name:S,color:C}:{kind:`emoji`,emoji:E}),s(!1))},t[38]=C,t[39]=E,t[40]=S,t[41]=_,t[42]=n,t[43]=s,t[44]=p,t[45]=K,t[46]=a):a=t[46],L=a,I=oe,z=o,B=s,F=ae,G=`w-full sm:w-[32rem]`,t[47]===Symbol.for(`react.memo_cache_sentinel`)?(R=(0,x.jsxs)(te,{children:[(0,x.jsx)(ne,{children:`Choose project icon`}),(0,x.jsx)(ie,{children:`Choose an icon, emoji, or monogram.`})]}),t[47]=R):R=t[47],P=re,V=`flex min-h-0 flex-col`;let d;t[48]===_?d=t[49]:(d=[_],t[48]=_,t[49]=d);let m,h,v,y;t[50]===Symbol.for(`react.memo_cache_sentinel`)?(m=e=>{let t=e[0];(t===`lucide`||t===`emoji`||t===`monogram`)&&b(t)},h=(0,x.jsx)(c,{value:`lucide`,children:`Icons`}),v=(0,x.jsx)(c,{value:`emoji`,children:`Emoji`}),y=(0,x.jsx)(c,{value:`monogram`,children:`Monogram`}),t[50]=m,t[51]=h,t[52]=v,t[53]=y):(m=t[50],h=t[51],v=t[52],y=t[53]),t[54]===d?H=t[55]:(H=(0,x.jsxs)(ee,{"aria-label":`Icon type`,variant:`segmented`,value:d,onValueChange:m,children:[h,v,y]}),t[54]=d,t[55]=H),t[56]!==C||t[57]!==_?(U=_===`emoji`?null:(0,x.jsxs)(`div`,{children:[(0,x.jsx)(`div`,{className:`mb-2 text-xs font-medium text-muted-foreground`,children:`Color`}),(0,x.jsx)(`div`,{className:`flex flex-wrap gap-1.5`,role:`group`,"aria-label":`Icon color`,children:f.map(e=>(0,x.jsx)(`button`,{type:`button`,"aria-label":e.label,"aria-pressed":C===e.value,className:i(`flex size-6 items-center justify-center rounded-full border border-transparent outline-none focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-ring`,C===e.value&&`border-foreground/64`),onClick:()=>_e(e.value),children:(0,x.jsx)(`span`,{className:i(`size-4 rounded-full`,e.swatchClassName)})},e.value))})]}),t[56]=C,t[57]=_,t[58]=U):U=t[58],W=_===`lucide`?(0,x.jsxs)(x.Fragment,{children:[(0,x.jsx)(l,{type:`search`,value:O,"aria-label":`Search Lucide icons`,placeholder:`Search all Lucide icons`,onChange:e=>ve(e.currentTarget.value)}),(0,x.jsx)(u,{scrollFade:!0,className:`max-h-64`,children:(0,x.jsx)(`div`,{className:`grid grid-cols-8 gap-1 p-0.5 sm:grid-cols-10`,children:N.map(t=>(0,x.jsx)(`button`,{type:`button`,"aria-label":he(t),"aria-pressed":S===t,className:i(`flex aspect-square items-center justify-center rounded-md border border-transparent outline-none hover:bg-accent focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-ring`,S===t&&`border-border bg-accent`,e),onClick:()=>ge(t),children:(0,x.jsx)(le,{name:t,className:`size-5`})},t))})}),N.length===0?(0,x.jsx)(`p`,{className:`py-8 text-center text-sm text-muted-foreground`,children:`No icons found.`}):null]}):_===`monogram`?(0,x.jsxs)(`div`,{className:`flex items-center gap-4 py-2`,children:[(0,x.jsx)(ce,{text:K?n:g.monogram,color:C,className:`size-12`}),(0,x.jsxs)(`div`,{className:`flex-1 space-y-2`,children:[(0,x.jsx)(`label`,{htmlFor:`project-monogram`,className:`text-sm font-medium`,children:`Letters`}),(0,x.jsx)(l,{id:`project-monogram`,value:w,onChange:e=>T(e.currentTarget.value),"aria-describedby":`project-monogram-hint`,"aria-invalid":!K,autoComplete:`off`}),(0,x.jsx)(`p`,{id:`project-monogram-hint`,className:`text-xs text-muted-foreground`,children:`One or two letters or numbers.`})]})]}):(0,x.jsxs)(x.Fragment,{children:[(0,x.jsx)(u,{scrollFade:!0,className:`max-h-64`,children:(0,x.jsx)(`div`,{className:`grid grid-cols-8 gap-1 p-0.5 sm:grid-cols-10`,children:ue.map(e=>(0,x.jsx)(`button`,{type:`button`,"aria-label":e.label,"aria-pressed":E===e.emoji,className:i(`flex aspect-square items-center justify-center rounded-md border border-transparent text-xl outline-none hover:bg-accent focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-ring`,E===e.emoji&&`border-border bg-accent`),onClick:()=>D(e.emoji),children:e.emoji},e.emoji))})}),(0,x.jsxs)(`div`,{children:[(0,x.jsx)(`div`,{className:`mb-2 text-xs font-medium text-muted-foreground`,children:`Or paste any emoji`}),(0,x.jsx)(l,{value:k,"aria-label":`Custom emoji`,placeholder:`Paste an emoji`,onChange:e=>{let t=e.currentTarget.value;ye(t);let n=fe(t);n&&D(n)}})]})]}),t[10]=g.monogram,t[11]=C,t[12]=k,t[13]=E,t[14]=S,t[15]=N,t[16]=w,t[17]=_,t[18]=s,t[19]=p,t[20]=o,t[21]=O,t[22]=P,t[23]=F,t[24]=I,t[25]=L,t[26]=R,t[27]=z,t[28]=B,t[29]=V,t[30]=H,t[31]=U,t[32]=W,t[33]=G,t[34]=K}else P=t[22],F=t[23],I=t[24],L=t[25],R=t[26],z=t[27],B=t[28],V=t[29],H=t[30],U=t[31],W=t[32],G=t[33],K=t[34];let q;t[59]!==P||t[60]!==V||t[61]!==H||t[62]!==U||t[63]!==W?(q=(0,x.jsxs)(P,{className:V,children:[H,U,W]}),t[59]=P,t[60]=V,t[61]=H,t[62]=U,t[63]=W,t[64]=q):q=t[64];let J;t[65]===s?J=t[66]:(J=(0,x.jsx)(r,{variant:`outline`,onClick:()=>s(!1),children:`Cancel`}),t[65]=s,t[66]=J);let Y=_===`monogram`&&!K,X;t[67]!==L||t[68]!==Y?(X=(0,x.jsx)(r,{onClick:L,disabled:Y,children:`Save icon`}),t[67]=L,t[68]=Y,t[69]=X):X=t[69];let Z;t[70]!==J||t[71]!==X?(Z=(0,x.jsxs)(d,{children:[J,X]}),t[70]=J,t[71]=X,t[72]=Z):Z=t[72];let Q;t[73]!==F||t[74]!==R||t[75]!==q||t[76]!==Z||t[77]!==G?(Q=(0,x.jsxs)(F,{className:G,children:[R,q,Z]}),t[73]=F,t[74]=R,t[75]=q,t[76]=Z,t[77]=G,t[78]=Q):Q=t[78];let $;return t[79]!==I||t[80]!==z||t[81]!==B||t[82]!==Q?($=(0,x.jsx)(I,{open:z,onOpenChange:B,children:Q}),t[79]=I,t[80]=z,t[81]=B,t[82]=Q,t[83]=$):$=t[83],$}export{S as ProjectIconPickerDialog};
|
|
2
|
+
//# sourceMappingURL=ProjectIconPickerDialog-yxBKY_6V.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{i as e}from"./rolldown-runtime-Dd_uD5pT.js";import{
|
|
2
|
-
//# sourceMappingURL=ProjectMonogram-
|
|
1
|
+
import{i as e}from"./rolldown-runtime-Dd_uD5pT.js";import{ma as t,t as n,wx as r}from"./utils-Nv21__t3.js";var i=r(),a=[{value:`gray`,label:`Gray`,className:`text-gray-600 dark:text-gray-400`,swatchClassName:`bg-gray-500`},{value:`red`,label:`Red`,className:`text-red-600 dark:text-red-400`,swatchClassName:`bg-red-500`},{value:`orange`,label:`Orange`,className:`text-orange-600 dark:text-orange-400`,swatchClassName:`bg-orange-500`},{value:`amber`,label:`Amber`,className:`text-amber-600 dark:text-amber-400`,swatchClassName:`bg-amber-500`},{value:`yellow`,label:`Yellow`,className:`text-yellow-600 dark:text-yellow-400`,swatchClassName:`bg-yellow-500`},{value:`lime`,label:`Lime`,className:`text-lime-600 dark:text-lime-400`,swatchClassName:`bg-lime-500`},{value:`green`,label:`Green`,className:`text-green-600 dark:text-green-400`,swatchClassName:`bg-green-500`},{value:`emerald`,label:`Emerald`,className:`text-emerald-600 dark:text-emerald-400`,swatchClassName:`bg-emerald-500`},{value:`teal`,label:`Teal`,className:`text-teal-600 dark:text-teal-400`,swatchClassName:`bg-teal-500`},{value:`cyan`,label:`Cyan`,className:`text-cyan-600 dark:text-cyan-400`,swatchClassName:`bg-cyan-500`},{value:`sky`,label:`Sky`,className:`text-sky-600 dark:text-sky-400`,swatchClassName:`bg-sky-500`},{value:`blue`,label:`Blue`,className:`text-blue-600 dark:text-blue-400`,swatchClassName:`bg-blue-500`},{value:`indigo`,label:`Indigo`,className:`text-indigo-600 dark:text-indigo-400`,swatchClassName:`bg-indigo-500`},{value:`violet`,label:`Violet`,className:`text-violet-600 dark:text-violet-400`,swatchClassName:`bg-violet-500`},{value:`purple`,label:`Purple`,className:`text-purple-600 dark:text-purple-400`,swatchClassName:`bg-purple-500`},{value:`fuchsia`,label:`Fuchsia`,className:`text-fuchsia-600 dark:text-fuchsia-400`,swatchClassName:`bg-fuchsia-500`},{value:`pink`,label:`Pink`,className:`text-pink-600 dark:text-pink-400`,swatchClassName:`bg-pink-500`},{value:`rose`,label:`Rose`,className:`text-rose-600 dark:text-rose-400`,swatchClassName:`bg-rose-500`}],o=Object.fromEntries(a.map(({value:e,className:t})=>[e,t]));function s(e){return o[e]}var c=e(t(),1),l=new Intl.Segmenter(void 0,{granularity:`grapheme`});function u(e){let t=(0,i.c)(14),{text:r,color:a,className:o}=e,u;t[0]===o?u=t[1]:(u=n(`inline-flex size-4 shrink-0 items-center justify-center`,o),t[0]=o,t[1]=u);let d;t[2]===a?d=t[3]:(d=n(`size-full overflow-hidden rounded-[25%] font-mono select-none`,s(a)),t[2]=a,t[3]=d);let f;t[4]===Symbol.for(`react.memo_cache_sentinel`)?(f={backgroundColor:`color-mix(in srgb, currentColor 14%, transparent)`},t[4]=f):f=t[4];let p=Array.from(l.segment(r)).length===1?6:12,m;t[5]!==p||t[6]!==r?(m=(0,c.jsx)(`text`,{x:`8`,y:`10.8`,textAnchor:`middle`,fill:`currentColor`,className:`font-mono`,fontSize:`8.25`,fontWeight:`700`,textLength:p,lengthAdjust:`spacingAndGlyphs`,textRendering:`geometricPrecision`,children:r}),t[5]=p,t[6]=r,t[7]=m):m=t[7];let h;t[8]!==d||t[9]!==m?(h=(0,c.jsx)(`svg`,{viewBox:`0 0 16 16`,className:d,style:f,children:m}),t[8]=d,t[9]=m,t[10]=h):h=t[10];let g;return t[11]!==u||t[12]!==h?(g=(0,c.jsx)(`span`,{"aria-hidden":`true`,className:u,children:h}),t[11]=u,t[12]=h,t[13]=g):g=t[13],g}export{a as n,s as r,u as t};
|
|
2
|
+
//# sourceMappingURL=ProjectMonogram-Dd6xeLhS.js.map
|
package/dist/client/assets/{ProviderAuthTerminal-CJSJcjB9.js → ProviderAuthTerminal-DgUIYMm9.js}
RENAMED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{i as e}from"./rolldown-runtime-Dd_uD5pT.js";import{r as t}from"./Icon-l19w4AjM.js";import{
|
|
2
|
-
//# sourceMappingURL=ProviderAuthTerminal-
|
|
1
|
+
import{i as e}from"./rolldown-runtime-Dd_uD5pT.js";import{r as t}from"./Icon-l19w4AjM.js";import{ma as n,wx as r}from"./utils-Nv21__t3.js";import{q as i}from"./useSettings-C1hmCYRR.js";import{c as a,r as o}from"./ThreadTerminalDrawer-BzElqolI.js";var s=r(),c=e(t(),1),l=e(n(),1);function u(e){let t=(0,s.c)(16),{output:n,outputOffset:r,onResponse:u}=e,p=(0,c.useRef)(null),m=(0,c.useRef)(null),h=r??n.length,g;t[0]!==u||t[1]!==n||t[2]!==h?(g={output:n,offset:h,onResponse:u},t[0]=u,t[1]=n,t[2]=h,t[3]=g):g=t[3];let _=(0,c.useRef)(g),v=(0,c.useRef)(0),[y,b]=(0,c.useState)(null),x,S;t[4]!==u||t[5]!==n||t[6]!==r?(x=()=>{_.current={output:n,offset:r??n.length,onResponse:u};let e=m.current;if(!e)return;let t=_.current.offset-v.current;t>0&&t<=n.length?e.write(n.slice(-t)):t!==0&&e.resetAndWrite(n),v.current=_.current.offset},S=[n,r,u],t[4]=u,t[5]=n,t[6]=r,t[7]=x,t[8]=S):(x=t[7],S=t[8]),(0,c.useEffect)(x,S);let C,w;t[9]===Symbol.for(`react.memo_cache_sentinel`)?(C=()=>{let e=p.current;if(!e)return;let t=!1;return a.create(e,{theme:o(e),font:{size:13},onData:e=>_.current.onResponse({type:`terminal`,data:e}),onResize:(e,t)=>_.current.onResponse({type:`terminal`,data:``,size:{cols:e,rows:t}}),onSelectionChange:f,beforeKey:d,onLinkActivate:e=>{/^https?:\/\//i.test(e)&&i().shell.openExternal(e).catch(()=>b(`Could not open the provider link.`))}}).then(e=>{if(t){e.dispose();return}m.current=e,e.write(_.current.output),v.current=_.current.offset}).catch(()=>b(`Could not load the sign-in terminal. Cancel and retry sign-in.`)),()=>{t=!0,m.current?.dispose(),m.current=null}},w=[],t[9]=C,t[10]=w):(C=t[9],w=t[10]),(0,c.useEffect)(C,w);let T;t[11]===Symbol.for(`react.memo_cache_sentinel`)?(T=(0,l.jsx)(`div`,{ref:p,"aria-label":`Provider sign-in terminal`,className:`relative h-64 overflow-hidden rounded-md border border-border`}),t[11]=T):T=t[11];let E;t[12]===y?E=t[13]:(E=y?(0,l.jsx)(`p`,{role:`alert`,className:`text-destructive`,children:y}):null,t[12]=y,t[13]=E);let D;return t[14]===E?D=t[15]:(D=(0,l.jsxs)(l.Fragment,{children:[T,E]}),t[14]=E,t[15]=D),D}function d(e){return e.key!==`Tab`}function f(){}export{u as default};
|
|
2
|
+
//# sourceMappingURL=ProviderAuthTerminal-DgUIYMm9.js.map
|
package/dist/client/assets/{ProviderModelPicker-riIGf-PI.js → ProviderModelPicker-lxEwYGAB.js}
RENAMED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{i as e}from"./rolldown-runtime-Dd_uD5pT.js";import{r as t}from"./Icon-l19w4AjM.js";import{Hr as n,It as r,Ns as i,Rt as a,Sx as o,Ta as s,Un as c,Ur as l,Ut as u,Vo as d,Wt as f,Xt as p,cm as m,dn as h,dr as g,js as _,ma as v,or as y,sn as b,sr as x,t as S,un as C,vo as w,yo as T}from"./utils-geC9CGP4.js";import{t as E}from"./check-Cmy7pM2Y.js";import{t as D}from"./chevron-right-NbahR9_s.js";import{t as O}from"./info-BHB-83EA.js";import{t as k}from"./sparkles-cStmYKbH.js";import{t as A}from"./star-DJ6Ycqv6.js";import{t as j}from"./x-CSwbgjBe.js";import{t as M}from"./zap-CrtYfJ8v.js";import{a as N,n as P,r as F,t as I}from"./tooltip-Ciaezkl4.js";import{t as L}from"./CompositeRoot-ykxKqF8U.js";import{t as R}from"./useNavigate-CnhAAl0Z.js";import{_ as z,d as B}from"./useSettings-CNd8OM7A.js";import{s as V}from"./server-DNo9AqHW.js";import{a as ee,n as te,r as ne,s as re,t as ie}from"./combobox-Cx4FP7Bk.js";import{n as ae}from"./scroll-area-Cj3OF_L_.js";import{t as oe}from"./AnimatedHeight-BwS0L5jd.js";import{g as se,m as ce,p as le,v as ue}from"./keybindings-B4uuYLfE.js";import{x as de}from"./Icons-BlUgSxml.js";import{i as fe,o as pe,t as me}from"./popover-UOfX8iZ4.js";import{i as H,n as U,r as W,t as G}from"./alert-DUQHh6vz.js";import{t as K}from"./semver-CFbvOQKc.js";import{t as q}from"./kbd-BR8-VeaN.js";import{b as he,t as J,y as Y}from"./ChatGptUsageButton-GxPReM3u.js";import{$o as ge,Cn as _e,Ur as ve,_n as X,vn as ye}from"./main-Ch0n0whg.js";var Z=e(t(),1),be=o(),Q=e(v(),1);function xe(e){return e.replace(/[.*+?^${}()|[\]\\]/g,`\\$&`)}function $(e,t){let n=t?.trim();if(!n)return e;let r=RegExp(`^${xe(n)}(?:\\s*[.:/-]\\s*|\\s+)`,`iu`);return e.replace(r,``).trim()||e}function Se(e,t){let n=t?.preferShortName&&e.shortName?e.shortName:e.name;return _($(n,e.subProvider))}function Ce(e,t){let n=e.trim(),r=t?.trim();return r?n&&RegExp(`^${xe(n)}\\s+\\S`,`i`).test(r)?r:`${e} · ${r}`:e}function we(e){return Se(e,{preferShortName:!0})}function Te(e){return we(e)}var Ee={claudeAgent:`Claude Code`,codex:`the Codex CLI`};function De(e){return e.length<=2?e.join(` and `):`${e.slice(0,-1).join(`, `)}, and ${e[e.length-1]}`}function Oe(e,t=``){let n=t.trim().toLocaleLowerCase(),r=(e.updateRequiredModels??[]).filter(e=>n.length===0||e.name.toLocaleLowerCase().includes(n)||e.slug.toLocaleLowerCase().includes(n));if(r.length===0)return null;let i=r.map(e=>e.minVersion).reduce((e,t)=>K(t,e)>0?t:e);return`Update ${Ee[e.driver]??m[e.driver]??e.driver} to ${i.startsWith(`v`)?i:`v${i}`} or newer to use ${De(r.map(e=>e.name))}.`}var ke=`model:`,Ae=`legacy-models:`;function je(e,t){return`${ke}${e.length}:${e}${t}`}function Me(e){if(!e.startsWith(ke))return null;let t=e.slice(6),n=t.indexOf(`:`);if(n===-1)return null;let r=t.slice(0,n);if(!/^\d+$/.test(r))return null;let i=Number(r),a=t.slice(n+1);return!Number.isSafeInteger(i)||i>a.length?null:{instanceId:a.slice(0,i),slug:a.slice(i)}}function Ne(e){return`${Ae}${e}`}function Pe(e){return e.startsWith(Ae)?e.slice(14):null}var Fe=(0,Z.memo)(function(e){let t=(0,be.c)(71),n;t[0]!==e.model.subProvider||t[1]!==e.providerDisplayName?(n=Ce(e.providerDisplayName,e.model.subProvider),t[0]=e.model.subProvider,t[1]=e.providerDisplayName,t[2]=n):n=t[2];let r=n,i=e.index,a;t[3]!==e.instanceId||t[4]!==e.model.slug?(a=je(e.instanceId,e.model.slug),t[3]=e.instanceId,t[4]=e.model.slug,t[5]=a):a=t[5];let o=!!e.disabledReason,s=e.disabledReason&&`data-disabled:pointer-events-auto data-disabled:cursor-not-allowed`,l;t[6]===s?l=t[7]:(l=S(`group relative w-full !min-w-0 max-w-full cursor-pointer`,s),t[6]=s,t[7]=l);let u;t[8]!==e.model||t[9]!==e.preferShortName||t[10]!==e.useTriggerLabel?(u=e.useTriggerLabel?Te(e.model):Se(e.model,e.preferShortName?{preferShortName:!0}:void 0),t[8]=e.model,t[9]=e.preferShortName,t[10]=e.useTriggerLabel,t[11]=u):u=t[11];let d;t[12]===u?d=t[13]:(d=(0,Q.jsx)(`div`,{className:`min-w-0 truncate text-xs font-medium leading-snug`,children:u}),t[12]=u,t[13]=d);let f;t[14]===e.showNewBadge?f=t[15]:(f=e.showNewBadge?(0,Q.jsx)(`span`,{className:`shrink-0 rounded border border-update/35 bg-update/15 px-0.5 py-px text-3xs font-bold uppercase leading-none tracking-wide text-update-foreground`,"aria-label":`New model`,children:`New`}):null,t[14]=e.showNewBadge,t[15]=f);let p;t[16]===e.unavailable?p=t[17]:(p=e.unavailable?(0,Q.jsx)(c,{variant:`outline`,size:`sm`,children:`Unavailable`}):null,t[16]=e.unavailable,t[17]=p);let m;t[18]!==d||t[19]!==f||t[20]!==p?(m=(0,Q.jsxs)(`div`,{className:`flex min-w-0 items-center gap-2`,children:[d,f,p]}),t[18]=d,t[19]=f,t[20]=p,t[21]=m):m=t[21];let h;t[22]!==e.acpRegistryAgentId||t[23]!==e.acpRegistryIconUrl||t[24]!==e.driverKind||t[25]!==e.providerDisplayName||t[26]!==e.showProvider||t[27]!==r?(h=e.showProvider&&(0,Q.jsxs)(`div`,{className:`mt-1 flex items-center gap-1.5`,children:[(0,Q.jsx)(he,{driverKind:e.driverKind,displayName:e.providerDisplayName,acpRegistryAgentId:e.acpRegistryAgentId,acpRegistryIconUrl:e.acpRegistryIconUrl,className:`size-3`,iconClassName:`size-3`}),(0,Q.jsx)(`span`,{className:`truncate text-xs font-normal leading-snug text-muted-foreground/70`,children:r})]}),t[22]=e.acpRegistryAgentId,t[23]=e.acpRegistryIconUrl,t[24]=e.driverKind,t[25]=e.providerDisplayName,t[26]=e.showProvider,t[27]=r,t[28]=h):h=t[28];let g;t[29]!==m||t[30]!==h?(g=(0,Q.jsxs)(`div`,{className:`min-w-0 flex-1 text-left`,children:[m,h]}),t[29]=m,t[30]=h,t[31]=g):g=t[31];let _;t[32]!==e.isSelected||t[33]!==e.showSelection?(_=e.showSelection&&e.isSelected?(0,Q.jsx)(E,{className:`size-3.5`,"aria-hidden":`true`}):null,t[32]=e.isSelected,t[33]=e.showSelection,t[34]=_):_=t[34];let v;t[35]===e.jumpLabel?v=t[36]:(v=e.jumpLabel?(0,Q.jsx)(q,{children:e.jumpLabel}):null,t[35]=e.jumpLabel,t[36]=v);let b;t[37]===e?b=t[38]:(b=t=>{t.stopPropagation(),e.onToggleFavorite()},t[37]=e,t[38]=b);let x=!!e.disabledReason,C=e.isFavorite?`Remove from favorites`:`Add to favorites`,w=e.isFavorite&&`fill-current text-warning`,T;t[39]===w?T=t[40]:(T=S(`size-3.5 sm:size-3`,w),t[39]=w,t[40]=T);let D;t[41]===T?D=t[42]:(D=(0,Q.jsx)(A,{className:T}),t[41]=T,t[42]=D);let O;t[43]!==b||t[44]!==x||t[45]!==C||t[46]!==D?(O=(0,Q.jsx)(N,{render:(0,Q.jsx)(y,{size:`icon-xs`,variant:`ghost-muted`,className:`-mr-1 shrink-0`,onClick:b,onKeyDown:Ie,disabled:x,"aria-label":C,children:D})}),t[43]=b,t[44]=x,t[45]=C,t[46]=D,t[47]=O):O=t[47];let k=e.isFavorite?`Remove from favorites`:`Add to favorites`,j;t[48]===k?j=t[49]:(j=(0,Q.jsx)(P,{side:`top`,align:`center`,children:k}),t[48]=k,t[49]=j);let M;t[50]!==O||t[51]!==j?(M=(0,Q.jsxs)(I,{children:[O,j]}),t[50]=O,t[51]=j,t[52]=M):M=t[52];let F;t[53]!==_||t[54]!==v||t[55]!==M?(F=(0,Q.jsxs)(`div`,{className:`flex shrink-0 items-center gap-1.5`,children:[_,v,M]}),t[53]=_,t[54]=v,t[55]=M,t[56]=F):F=t[56];let L;t[57]!==e.index||t[58]!==g||t[59]!==a||t[60]!==F||t[61]!==o||t[62]!==l?(L=(0,Q.jsxs)(ne,{hideIndicator:!0,index:i,value:a,disabled:o,className:l,children:[g,F]}),t[57]=e.index,t[58]=g,t[59]=a,t[60]=F,t[61]=o,t[62]=l,t[63]=L):L=t[63];let R=L;if(!e.disabledReason)return R;let z;t[64]===R?z=t[65]:(z=(0,Q.jsx)(N,{render:R}),t[64]=R,t[65]=z);let B;t[66]===e.disabledReason?B=t[67]:(B=(0,Q.jsx)(P,{side:`left`,align:`center`,children:e.disabledReason}),t[66]=e.disabledReason,t[67]=B);let V;return t[68]!==z||t[69]!==B?(V=(0,Q.jsxs)(I,{children:[z,B]}),t[68]=z,t[69]=B,t[70]=V):V=t[70],V});function Ie(e){e.stopPropagation()}var Le=Z.forwardRef(function(e,t){let{disabled:r=!1,loopFocus:i=!0,orientation:a=`horizontal`,className:o,render:s,style:c,...l}=e,[u,d]=Z.useState(()=>new Map),f=Z.useMemo(()=>{let e=[];for(let t of u.values())t?.index&&!t.focusableWhenDisabled&&e.push(t.index);return e},[u]),p=Z.useMemo(()=>({disabled:r,orientation:a,setItemMap:d}),[r,a,d]),m={disabled:r,orientation:a},h={"aria-orientation":a,role:`toolbar`};return(0,Q.jsx)(n.Provider,{value:p,children:(0,Q.jsx)(L,{render:s,className:o,style:c,state:m,refs:[t],props:[h,l],disabledIndices:f,loopFocus:i,onMapChange:d,orientation:a})})}),Re=Z.createContext(void 0);function ze(e){let t=Z.useContext(Re);if(t===void 0&&!e)throw Error(w(68));return t}var Be=Z.forwardRef(function(e,t){let{className:n,disabled:r=!1,focusableWhenDisabled:i=!0,render:a,nativeButton:o=!0,style:c,...u}=e,d=Z.useMemo(()=>({focusableWhenDisabled:i}),[i]),{disabled:f,orientation:p}=l(),m=ze(!0),h=f||(m?.disabled??!1)||r,{getButtonProps:_,buttonRef:v}=s({disabled:h,focusableWhenDisabled:i,native:o});return(0,Q.jsx)(g,{tag:`button`,render:a,className:n,style:c,metadata:d,state:{disabled:h,orientation:p,focusable:i},refs:[t,v],props:[u,{disabled:h},_]})});function Ve(e){let t=e.displayName;if(!e.enabled||e.status===`disabled`)return`${t} — Disabled in settings.`;if(e.status===`ready`&&e.isAvailable)return t;let n=e.status===`error`?`Unavailable`:e.status===`warning`?`Limited`:`Not ready`,r=e.snapshot.message?.trim();return r?`${t} — ${n}. ${r}`:`${t} — ${n}.`}var He=`pointer-events-none absolute -right-1 top-1/2 z-10 h-5 w-0.75 -translate-y-1/2 rounded-l-full bg-primary`,Ue=`pointer-events-none absolute -right-0.5 top-0.5 z-10 flex size-3.5 items-center justify-center rounded-full bg-transparent shadow-sm text-update-foreground `,We=`left`,Ge=8,Ke=(0,Z.memo)(function(e){let t=(0,be.c)(27),n;t[0]===e?n=t[1]:(n=t=>{e.onSelectInstance(t)},t[0]=e,t[1]=n);let r=n,i=e.showFavorites??!0,[a,o]=(0,Z.useState)(null),s=(0,Z.useRef)(null),[c,l]=(0,Z.useState)(null),d;t[2]===e.selectedInstanceId?d=t[3]:(d=()=>{let t=s.current;if(!t)return;let n=Array.from(t.querySelectorAll(`[data-model-picker-provider]`)).find(t=>t.dataset.modelPickerProvider===e.selectedInstanceId);if(!n){l(null);return}l(n.offsetTop+n.offsetHeight/2-10)},t[2]=e.selectedInstanceId,t[3]=d);let f;t[4]!==e.instanceEntries||t[5]!==e.selectedInstanceId||t[6]!==i?(f=[e.instanceEntries,e.selectedInstanceId,i],t[4]=e.instanceEntries,t[5]=e.selectedInstanceId,t[6]=i,t[7]=f):f=t[7],(0,Z.useLayoutEffect)(d,f);let m;t[8]===e?m=t[9]:(m=t=>{if(!(t.altKey||t.ctrlKey||t.metaKey||t.shiftKey)&&t.key===`ArrowRight`){t.preventDefault(),e.onFocusSearch();return}},t[8]=e,t[9]=m);let h;t[10]===c?h=t[11]:(h=c===null?null:(0,Q.jsx)(`div`,{"data-model-picker-selected-indicator":`true`,className:S(He,`right-0 translate-y-0 transition-[top] duration-200 ease-out`),style:{top:c}}),t[10]=c,t[11]=h);let g;t[12]!==r||t[13]!==e.selectedInstanceId||t[14]!==i?(g=i?(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsx)(`div`,{className:`relative w-full`,"data-model-picker-provider":`favorites`,children:(0,Q.jsxs)(I,{children:[(0,Q.jsx)(N,{render:(0,Q.jsx)(Be,{className:S(`relative isolate flex w-full cursor-pointer aspect-square items-center justify-center rounded-md transition-colors hover:bg-foreground/10 focus-visible:bg-foreground/10 focus-visible:outline-none`),onClick:()=>r(`favorites`),type:`button`,"aria-label":`Favorites`,"aria-pressed":e.selectedInstanceId===`favorites`,children:(0,Q.jsx)(A,{className:`size-5 fill-current shrink-0`,"aria-hidden":!0})})}),(0,Q.jsx)(P,{side:We,sideOffset:Ge,align:`center`,children:`Favorites`})]})}),(0,Q.jsx)(`div`,{className:`border-b border-border/70`,"aria-hidden":`true`})]}):null,t[12]=r,t[13]=e.selectedInstanceId,t[14]=i,t[15]=g):g=t[15];let _;t[16]!==r||t[17]!==a||t[18]!==e?(_=e.instanceEntries.map(t=>{let n=!u(t),i=e.disabledInstanceIds?.has(t.instanceId)??!1,s=e.selectableUnavailableInstanceIds?.has(t.instanceId)??!1,c=n&&!s||i,l=e.selectedInstanceId===t.instanceId,d=a===t.instanceId,f=e.newBadgeInstanceIds?.has(t.instanceId)??!1,m=p(t,e.instanceEntries),h=n?Ve(t):i?e.getDisabledInstanceTooltip?.(t)??t.displayName:f?`${t.displayName} — New`:t.displayName,g=(0,Q.jsxs)(Be,{className:S(`relative isolate flex w-full cursor-pointer aspect-square items-center justify-center rounded-md transition-colors hover:bg-foreground/10 focus-visible:bg-foreground/10 focus-visible:outline-none`,c&&`opacity-50 cursor-not-allowed hover:bg-transparent`),"data-provider-accent-color":t.accentColor,onClick:()=>!c&&r(t.instanceId),onMouseEnter:()=>o(t.instanceId),onMouseLeave:()=>o(e=>e===t.instanceId?null:e),onFocus:()=>o(t.instanceId),onBlur:()=>o(e=>e===t.instanceId?null:e),disabled:c,focusableWhenDisabled:!c,"aria-pressed":l,type:`button`,"aria-label":n||i?h:f?`${t.displayName}, new`:t.displayName,children:[(0,Q.jsx)(he,{driverKind:t.driverKind,displayName:t.displayName,accentColor:t.accentColor,acpRegistryAgentId:t.acpRegistryAgentId,acpRegistryIconUrl:t.acpRegistryIconUrl,showBadge:m,className:`size-6 z-30`,iconClassName:`size-5`,indicatorBackground:d&&!c?`var(--muted)`:l?`var(--background)`:`color-mix(in oklab, var(--muted) 30%, transparent)`,...t.accentColor?{badgeClassName:`h-3 min-w-3 px-0.5 text-5xs`}:{}}),f?(0,Q.jsx)(`span`,{className:Ue,"aria-hidden":!0,children:(0,Q.jsx)(k,{className:`size-2`})}):null]}),_=c?(0,Q.jsx)(`span`,{className:`relative block w-full`,children:g}):g;return(0,Q.jsx)(`div`,{className:`relative w-full`,"data-model-picker-provider":t.instanceId,children:(0,Q.jsxs)(I,{children:[(0,Q.jsx)(N,{render:_}),(0,Q.jsx)(P,{side:We,sideOffset:Ge,align:`center`,children:h})]})},t.instanceId)}),t[16]=r,t[17]=a,t[18]=e,t[19]=_):_=t[19];let v;t[20]!==h||t[21]!==g||t[22]!==_?(v=(0,Q.jsx)(`div`,{className:`h-full overflow-y-auto overscroll-contain [-ms-overflow-style:none] [scrollbar-width:none] [&::-webkit-scrollbar]:hidden`,children:(0,Q.jsxs)(`div`,{ref:s,className:`relative flex min-h-full flex-col gap-1 p-1`,children:[h,g,_]})}),t[20]=h,t[21]=g,t[22]=_,t[23]=v):v=t[23];let y;return t[24]!==m||t[25]!==v?(y=(0,Q.jsx)(Le,{className:`w-11 shrink-0 overflow-hidden bg-muted/30`,"data-model-picker-sidebar":`true`,"aria-label":`Providers`,orientation:`vertical`,onKeyDown:m,children:v}),t[24]=m,t[25]=v,t[26]=y):y=t[26],y});function qe(e){let t=e.compatibilityAdvisory;return e.status===`error`&&e.auth.status===`unauthenticated`?null:t?.status===`broken`||e.status===`ready`&&t?.status===`unsupported`?t:null}function Je(e){if(!e||e.status===`disabled`)return null;let t=qe(e);return t?[e.instanceId,t.status,e.version??``,t.message??``].join(`\0`):e.status===`ready`||e.driver===`antigravity`&&e.installed&&e.status===`warning`&&e.auth.status===`unknown`?null:[e.instanceId,e.status,e.auth.status,e.message??``].join(`\0`)}function Ye(e,t){let n=Je(e);return n!==null&&n!==t}function Xe(e){return e.driver===`antigravity`||e.setup?.canAuthenticate===!0||e.setup?.canInstall===!0}function Ze(e){if(e.auth.status!==`unauthenticated`&&e.compatibilityAdvisory?.status===`broken`&&e.compatibilityAdvisory.message)return e.compatibilityAdvisory.message;if(e.message)return e.message;let t=e.displayName?.trim()||T(e.driver);return!e.installed&&Xe(e)?`Open provider setup to install ${T(e.driver)} on this environment.`:e.auth.status===`unauthenticated`?Xe(e)?e.driver===`antigravity`?`Open provider setup to sign in with Google.`:`Open provider setup to sign in.`:`Sign in via the CLI to authenticate again.`:e.status===`ready`?`No models are available for this provider.`:e.status===`error`?`${t} provider is unavailable.`:`${t} provider has limited availability.`}var Qe=(0,Z.memo)(function(e){let t=(0,be.c)(30),{onDismiss:n,onOpenProviderSetup:r,status:i}=e;if(!i||Je(i)===null)return null;let a;t[0]!==i.displayName||t[1]!==i.driver?(a=i.displayName?.trim()||T(i.driver),t[0]=i.displayName,t[1]=i.driver,t[2]=a):a=t[2];let o=a,s=i.status===`error`&&i.auth.status===`unauthenticated`,c;t[3]===i?c=t[4]:(c=qe(i),t[3]=i,t[4]=c);let l=c,u=s?`${o} is unauthenticated`:l?`${o} ${i.version??``} is ${l.status===`broken`?`known to be broken`:`unsupported`}`:`${o} provider status`,d;t[5]!==l?.message||t[6]!==i?(d=l?.message??Ze(i),t[5]=l?.message,t[6]=i,t[7]=d):d=t[7];let f=d,p=l?.status!==`broken`&&(i.status===`warning`||l!==null)?`warning`:`error`,m=l&&l.status!==`broken`?`status`:`alert`,h;t[8]===Symbol.for(`react.memo_cache_sentinel`)?(h=(0,Q.jsx)(O,{}),t[8]=h):h=t[8];let g;t[9]===u?g=t[10]:(g=(0,Q.jsx)(H,{children:u}),t[9]=u,t[10]=g);let _;t[11]===Symbol.for(`react.memo_cache_sentinel`)?(_=(0,Q.jsx)(`div`,{className:`line-clamp-3`}),t[11]=_):_=t[11];let v;t[12]===f?v=t[13]:(v=(0,Q.jsxs)(I,{children:[(0,Q.jsx)(N,{render:_,children:f}),(0,Q.jsx)(P,{side:`top`,className:`whitespace-pre-wrap`,children:f})]}),t[12]=f,t[13]=v);let b;t[14]!==r||t[15]!==i?(b=r&&Xe(i)?(0,Q.jsx)(x,{onClick:()=>r(i.instanceId),children:`Open provider setup`}):null,t[14]=r,t[15]=i,t[16]=b):b=t[16];let S;t[17]!==b||t[18]!==v?(S=(0,Q.jsxs)(W,{children:[v,b]}),t[17]=b,t[18]=v,t[19]=S):S=t[19];let C=`Dismiss ${o} provider ${i.status}`,w;t[20]===Symbol.for(`react.memo_cache_sentinel`)?(w=(0,Q.jsx)(j,{}),t[20]=w):w=t[20];let E;t[21]!==n||t[22]!==C?(E=(0,Q.jsx)(U,{children:(0,Q.jsx)(y,{"aria-label":C,onClick:n,size:`icon-xs`,variant:`ghost-muted`,children:w})}),t[21]=n,t[22]=C,t[23]=E):E=t[23];let D;return t[24]!==S||t[25]!==E||t[26]!==p||t[27]!==m||t[28]!==g?(D=(0,Q.jsx)(`div`,{className:`pointer-events-auto mx-auto w-fit max-w-[calc(100%-2rem)] pt-3`,children:(0,Q.jsxs)(G,{variant:p,role:m,surface:`glass`,controlAlignment:`first-line`,children:[h,g,S,E]})}),t[24]=S,t[25]=E,t[26]=p,t[27]=m,t[28]=g,t[29]=D):D=t[29],D}),$e=24;function et(e){return[X(e.name),...e.shortName?[X(e.shortName)]:[],...e.subProvider?[X(e.subProvider)]:[],X(e.driverKind),X(e.providerDisplayName),nt(e)]}function tt(e,t,n){return ye({value:e,query:t,exactBase:n,prefixBase:n+2,boundaryBase:n+4,includesBase:n+6,...t.length>=3?{fuzzyBase:n+100}:{}})}function nt(e){return X([e.name,e.shortName,e.subProvider,e.driverKind,e.providerDisplayName].filter(e=>typeof e==`string`&&e.length>0).join(` `))}function rt(e,t){let n=X(t).split(/\s+/u).filter(e=>e.length>0);if(n.length===0)return 0;let r=et(e),i=0;for(let e of n){let t=[];for(let n=0;n<r.length;n+=1){let i=tt(r[n],e,n*10);i!==null&&t.push(i)}if(t.length===0)return null;i+=Math.min(...t)}return e.isFavorite?i-$e:i}function it(e){if(e.driverKind===`antigravity`&&e.model===`antigravity-default`){let t=e.options.filter(e=>e.slug!==`antigravity-default`&&!e.isUnavailable);return t.find(e=>e.aliases?.includes(`antigravity-default`))??t.find(e=>e.isDefault)}return e.options.find(t=>t.slug===e.model)}function at(e){return e.entry.driverKind===`antigravity`&&e.option.slug===`antigravity-default`?!1:u(e.entry)?!0:e.entry.enabled&&(e.entry.driverKind===`opencode`||e.entry.driverKind===`antigravity`)&&e.entry.instanceId===e.activeInstanceId&&e.option.slug===e.activeModel&&e.option.isUnavailable===!0}function ot(e,t){return e.enabled&&e.status!==`disabled`&&Xe(e.snapshot)&&(!u(e)||!e.installed||e.snapshot.auth.status===`unauthenticated`||!t.some(e=>!e.isUnavailable))}function st(e){let t=[`favorites`,...e.entries.filter(t=>!e.disabledInstanceIds?.has(t.instanceId)&&(u(t)||e.selectableUnavailableInstanceIds?.has(t.instanceId))).map(e=>e.instanceId)],n=t.indexOf(e.selectedInstanceId);return t[n<0?e.direction===1?0:t.length-1:(n+e.direction+t.length)%t.length]}var ct=new Map,lt=52;function ut(){let e=(0,be.c)(1),t;return e[0]===Symbol.for(`react.memo_cache_sentinel`)?(t=(0,Q.jsx)(`div`,{className:`h-0.5`}),e[0]=t):t=e[0],t}var dt=(0,Z.memo)(function(e){let{keybindings:t,modelOptionsByInstance:n,instanceEntries:o,getModelDisabledReason:s,onInstanceModelChange:c,onToggleModel:l}=e,[p,m]=(0,Z.useState)(``),[h,g]=(0,Z.useState)(!1),[_,v]=(0,Z.useState)(!1),y=(0,Z.useRef)(null),b=(0,Z.useRef)(null),C=(0,Z.useRef)(null),w=(0,Z.useRef)(null),{favorites:T}=B(e.environmentId),E=e.instanceEntries.find(t=>t.instanceId===e.activeInstanceId),O=it({driverKind:E?.driverKind,model:e.model,options:n.get(e.activeInstanceId)??[]})?.slug??(e.model===`antigravity-default`?``:e.model),k=O?je(e.activeInstanceId,O):null,A=(0,Z.useMemo)(()=>e.selectedModels?.map(e=>{let t=it({driverKind:o.find(t=>t.instanceId===e.instanceId)?.driverKind,model:e.model,options:n.get(e.instanceId)??[]});return je(e.instanceId,t?.slug??e.model)}),[o,n,e.selectedModels]),j=(0,Z.useMemo)(()=>new Set(A??(k?[k]:[])),[A,k]),M=E!==void 0&&(n.get(e.activeInstanceId)??[]).some(t=>at({entry:E,option:t,activeInstanceId:e.activeInstanceId,activeModel:O}))&&!u(E),N=e.onOpenProviderSetup!==void 0&&E!==void 0&&ot(E,n.get(e.activeInstanceId)??[]),[P,I]=(0,Z.useState)(()=>e.lockedProvider!==null||M||N?e.activeInstanceId:T.length>0?`favorites`:e.activeInstanceId),[L,oe]=(0,Z.useState)(()=>new Set(n.get(e.activeInstanceId)?.some(e=>e.slug===O&&e.isLegacy)?[e.activeInstanceId]:[])),de=d(V),fe=t??de,pe=R(),me=z(e.environmentId),H=(0,Z.useCallback)(()=>{y.current?.focus({preventScroll:!0})},[]),U=(0,Z.useCallback)(e=>{I(e),window.requestAnimationFrame(()=>{H()})},[H]);(0,Z.useLayoutEffect)(()=>{H();let e=window.requestAnimationFrame(()=>{H()}),t=window.setTimeout(()=>{H()},0);return()=>{window.cancelAnimationFrame(e),window.clearTimeout(t)}},[H]);let W=(0,Z.useMemo)(()=>new Set(T.map(e=>r(e.provider,e.model))),[T]),G=(0,Z.useMemo)(()=>new Map(o.map(e=>[e.instanceId,e])),[o]),K=(0,Z.useCallback)(t=>e.lockedProvider===null?!0:t.driverKind===e.lockedProvider?!e.lockedContinuationGroupKey||t.continuationGroupKey===e.lockedContinuationGroupKey:!1,[e.lockedContinuationGroupKey,e.lockedProvider]),q=(0,Z.useMemo)(()=>{let t=new Set;if(M&&t.add(e.activeInstanceId),e.onOpenProviderSetup)for(let e of o)ot(e,n.get(e.instanceId)??[])&&t.add(e.instanceId);return t.size>0?t:void 0},[M,o,n,e.activeInstanceId,e.onOpenProviderSetup]),he=(0,Z.useMemo)(()=>{let t=[];for(let[r,i]of n){let n=G.get(r);if(n)for(let a of i)at({entry:n,option:a,activeInstanceId:e.activeInstanceId,activeModel:O})&&t.push({slug:a.slug,name:a.name,...a.shortName?{shortName:a.shortName}:{},...a.subProvider?{subProvider:a.subProvider}:{},...a.badge?{badge:a.badge}:{},...a.isLegacy?{isLegacy:!0}:{},...a.isUnavailable?{isUnavailable:!0}:{},instanceId:r,driverKind:n.driverKind,instanceDisplayName:n.displayName,...n.accentColor?{instanceAccentColor:n.accentColor}:{},...n.acpRegistryAgentId?{acpRegistryAgentId:n.acpRegistryAgentId}:{},...n.acpRegistryIconUrl?{acpRegistryIconUrl:n.acpRegistryIconUrl}:{},...n.continuationGroupKey?{continuationGroupKey:n.continuationGroupKey}:{}})}return t},[n,G,e.activeInstanceId,O]),J=e.lockedProvider!==null,Y=p.trim().length>0,ge=(0,Z.useMemo)(()=>{if(!J)return;let e=new Set;for(let t of o)K(t)||e.add(t.instanceId);return e},[o,J,K]),X=(0,Z.useMemo)(()=>{let e=o.filter(f);if(!J)return e;let t=[],n=[];for(let r of e)K(r)?t.push(r):n.push(r);return[...t,...n]},[o,J,K]),ye=!Y&&X.length>0,be=(0,Z.useMemo)(()=>o.map(e=>e.instanceId),[o]),xe=(0,Z.useMemo)(()=>{let t=he;if(p.trim()){let n=t.map(e=>({model:e,score:rt({name:e.name,...e.shortName?{shortName:e.shortName}:{},...e.subProvider?{subProvider:e.subProvider}:{},driverKind:e.driverKind,providerDisplayName:e.instanceDisplayName,isFavorite:W.has(r(e.instanceId,e.slug))},p),isFavorite:W.has(r(e.instanceId,e.slug)),tieBreaker:nt({name:e.name,...e.shortName?{shortName:e.shortName}:{},...e.subProvider?{subProvider:e.subProvider}:{},driverKind:e.driverKind,providerDisplayName:e.instanceDisplayName})})).filter(e=>e.score!==null);if(e.lockedProvider!==null){let e=[];for(let t of n)K(t.model)&&e.push(t);return e.toSorted((e,t)=>{let n=e.score-t.score;return n===0?e.isFavorite===t.isFavorite?e.tieBreaker.localeCompare(t.tieBreaker):e.isFavorite?-1:1:n}).map(e=>e.model)}return n.toSorted((e,t)=>{let n=e.score-t.score;return n===0?e.isFavorite===t.isFavorite?e.tieBreaker.localeCompare(t.tieBreaker):e.isFavorite?-1:1:n}).map(e=>e.model)}return e.lockedProvider===null?t=P===`favorites`?t.filter(e=>W.has(r(e.instanceId,e.slug))):t.filter(e=>e.instanceId===P):(t=t.filter(e=>K(e)),t=P===`favorites`?t.filter(e=>W.has(r(e.instanceId,e.slug))):t.filter(e=>e.instanceId===P)),a(t,{favoriteModelKeys:W,groupFavorites:P!==`favorites`,instanceOrder:P===`favorites`?be:[]})},[W,he,be,K,e.lockedProvider,p,P]),$=(0,Z.useMemo)(()=>{if(Y||P===`favorites`)return null;let e=xe.filter(e=>!e.isLegacy),t=xe.filter(e=>e.isLegacy);return t.length===0?null:{key:Ne(P),currentModels:e,legacyModels:t,isExpanded:L.has(P)}},[L,xe,Y,P]),Se=(0,Z.useMemo)(()=>$?[...$.currentModels,...$.isExpanded?$.legacyModels:[]]:xe,[xe,$]),Ce=P===`favorites`?void 0:G.get(P),we=!Y&&e.onOpenProviderSetup?o.filter(e=>K(e)&&ot(e,n.get(e.instanceId)??[])&&(Ce?e.instanceId===Ce.instanceId:xe.length===0)):[],Te=(Y?o.filter(K):Ce?[Ce]:[]).flatMap(e=>{let t=Oe(e.snapshot,p);return t?[{instanceId:e.instanceId,notice:t}]:[]}),Ee=(0,Z.useCallback)(e=>{oe(t=>{let n=new Set(t);return n.has(e)?n.delete(e):n.add(e),n})},[]),De=(0,Z.useCallback)((e,t,r=!1)=>{if(s?.(t,e))return;let a=n.get(t);if(!a)return;let o=G.get(t);if(!o)return;let u=i(o.driverKind,e,a);u&&(r&&l?l(t,u):c(t,u))},[G,s,n,c,l]),ke=(0,Z.useMemo)(()=>{let e=new Map,t=0;for(let n of Se){if(s?.(n.instanceId,n.slug))continue;let r=le(t);if(!r)return e;e.set(je(n.instanceId,n.slug),r),t+=1}return e},[s,Se]),Ae=(0,Z.useMemo)(()=>[...ke.keys()],[ke]),Ie=(0,Z.useMemo)(()=>[...he.map(e=>je(e.instanceId,e.slug)),...new Set(he.filter(e=>e.isLegacy).map(e=>Ne(e.instanceId)))],[he]),Le=(0,Z.useMemo)(()=>{let e=Se.map(e=>je(e.instanceId,e.slug));return $&&e.splice($.currentModels.length,0,$.key),e},[$,Se]),Re=(0,Z.useMemo)(()=>new Map(Se.map(e=>[je(e.instanceId,e.slug),e])),[Se]),[ze,Be]=(0,Z.useState)(()=>Le.length*lt),[Ve,He]=(0,Z.useState)(0);(0,Z.useLayoutEffect)(()=>b.current?.getState().listen(`totalSize`,Be),[]);let Ue=Le.length===0?0:`calc(${ze}px + var(--spacing) * 5)`,We=(0,Z.useCallback)(()=>{let e=b.current?.getScrollableNode();if(!(e instanceof HTMLElement))return;let t=Math.max(0,e.scrollHeight-e.clientHeight);g(e.scrollTop>1),v(t-e.scrollTop>1)},[]),Ge=(0,Z.useMemo)(()=>({terminalFocus:!1,terminalOpen:e.terminalOpen,modelPickerOpen:!0}),[e.terminalOpen]),qe=(0,Z.useMemo)(()=>{if(ke.size===0)return ct;let e={platform:navigator.platform,context:Ge},t=new Map;for(let[n,r]of ke){let i=ue(fe,r,e);i&&t.set(n,i)}return t.size>0?t:ct},[fe,ke,Ge]),Je=(0,Z.useMemo)(()=>({favoritesSet:W,modelJumpLabelByKey:qe,activeModelKey:k,selectedModelKeySet:j}),[W,qe,k,j]);return(0,Z.useEffect)(()=>{let e=e=>{if(e.defaultPrevented||e.repeat||ve())return;let t=se(e,fe,{platform:navigator.platform,context:Ge});if(t===`modelPicker.previousProvider`||t===`modelPicker.nextProvider`){e.preventDefault(),e.stopPropagation();let n=st({entries:X,selectedInstanceId:P,direction:t===`modelPicker.nextProvider`?1:-1,disabledInstanceIds:ge,selectableUnavailableInstanceIds:q});m(``),U(n);return}let n=ce(t??``);if(n===null)return;e.preventDefault(),e.stopPropagation();let r=Ae[n];if(!r)return;let i=Me(r);i&&De(i.slug,i.instanceId)};return window.addEventListener(`keydown`,e,!0),()=>{window.removeEventListener(`keydown`,e,!0)}},[De,U,fe,ge,Ae,Ge,q,P,X]),(0,Z.useLayoutEffect)(()=>{g(!1),v(Le.length>5);let e=0,t=window.requestAnimationFrame(()=>{We(),e=window.requestAnimationFrame(We)});return()=>{window.cancelAnimationFrame(t),window.cancelAnimationFrame(e)}},[Le,We]),(0,Q.jsx)(F,{delay:0,children:(0,Q.jsxs)(`div`,{ref:C,className:`relative flex max-h-86.5 w-screen max-w-90 flex-row overflow-hidden`,style:Y?{height:Ve}:void 0,"data-model-picker-content":`true`,children:[ye&&(0,Q.jsx)(Ke,{selectedInstanceId:P,onSelectInstance:U,onFocusSearch:H,instanceEntries:X,showFavorites:!0,...q?{selectableUnavailableInstanceIds:q}:{},...ge?{disabledInstanceIds:ge,getDisabledInstanceTooltip:e=>`${e.displayName} is unavailable in this thread. Start a new thread to switch providers.`}:{}}),(0,Q.jsx)(ie,{inline:!0,items:Ie,filteredItems:Le,filter:null,autoHighlight:!0,open:!0,virtualized:!0,multiple:l!==void 0,value:l?[...j]:k,onItemHighlighted:(e,t)=>{w.current=typeof e==`string`?e:null,t.reason===`keyboard`&&t.index>=0&&b.current?.scrollIndexIntoView?.({index:t.index,animated:!1})},onValueChange:(e,t)=>{let n=Array.isArray(e)?e.find(e=>!j.has(e))??[...j].find(t=>!e.includes(t)):e;if(typeof n!=`string`)return;let r=Pe(n);if(r){Ee(r);return}let i=Me(n);i&&De(i.slug,i.instanceId,`shiftKey`in t.event&&t.event.shiftKey===!0)},children:(0,Q.jsxs)(`div`,{className:S(`flex min-h-0 flex-1 flex-col overflow-hidden bg-muted/40`,ye&&`border-l border-border/70`),children:[(0,Q.jsx)(re,{ref:y,placeholder:`Search models...`,value:p,onChange:e=>{Y||He(C.current?.offsetHeight??0),m(e.target.value)},onKeyDown:t=>{if(ye&&!t.altKey&&!t.ctrlKey&&!t.metaKey&&(t.key===`ArrowLeft`&&!t.shiftKey&&p.length===0||t.key===`Tab`&&t.shiftKey)){let e=t.currentTarget.closest(`[data-model-picker-content]`)?.querySelector(`[data-model-picker-sidebar]`),n=e?.querySelector(`button[aria-pressed="true"]:not(:disabled)`)??e?.querySelector(`button:not(:disabled)`);if(n){t.preventDefault(),t.stopPropagation(),n.focus();return}}if(t.key===`Escape`){t.preventDefault(),t.stopPropagation(),e.onRequestClose?.();return}if(t.key===`Enter`&&w.current){t.preventBaseUIHandler?.(),t.preventDefault(),t.stopPropagation();let e=Pe(w.current);if(e){Ee(e);return}let n=Me(w.current);n&&De(n.slug,n.instanceId,t.shiftKey);return}t.stopPropagation()},onMouseDown:e=>e.stopPropagation(),onTouchStart:e=>e.stopPropagation()}),(0,Q.jsx)(`div`,{className:`relative min-h-0 overflow-hidden pr-px`,style:{height:Ue},children:(0,Q.jsx)(ee,{children:(0,Q.jsx)(_e,{ref:b,data:Le,extraData:Je,keyExtractor:e=>e,renderItem:({item:e,index:t})=>{if($?.key===e)return(0,Q.jsxs)(ne,{hideIndicator:!0,index:t,value:e,"aria-expanded":$.isExpanded,className:`group w-full cursor-pointer`,children:[(0,Q.jsxs)(`div`,{className:`min-w-0 flex-1 text-left`,children:[(0,Q.jsx)(`div`,{className:`text-xs font-medium leading-snug`,children:`Legacy models`}),(0,Q.jsxs)(`div`,{className:`mt-1 text-xs font-normal leading-snug text-muted-foreground/70`,children:[$.legacyModels.length,` models`]})]}),(0,Q.jsx)(D,{className:S(`size-4 transition-transform`,$.isExpanded&&`rotate-90`)})]});let n=Re.get(e);if(!n)return null;let i=s?.(n.instanceId,n.slug)??null;return(0,Q.jsx)(Fe,{index:t,model:n,instanceId:n.instanceId,driverKind:n.driverKind,providerDisplayName:n.instanceDisplayName,providerAccentColor:n.instanceAccentColor,acpRegistryAgentId:n.acpRegistryAgentId,acpRegistryIconUrl:n.acpRegistryIconUrl,isFavorite:W.has(r(n.instanceId,n.slug)),isSelected:A===void 0?e===k:j.has(e),showSelection:A!==void 0,showProvider:!0,preferShortName:!J,useTriggerLabel:!1,showNewBadge:n.badge===`new`,unavailable:n.isUnavailable===!0,jumpLabel:qe.get(e)??null,disabledReason:i,onToggleFavorite:()=>me(n.instanceId,n.slug)},e)},estimatedItemSize:lt,drawDistance:480,recycleItems:!0,contentContainerClassName:`pl-2 pr-px`,ItemSeparatorComponent:ut,onLayout:We,onScroll:We,className:S(`scrollbar-gutter-stable h-full overflow-x-hidden overscroll-y-contain py-1.5 [&::-webkit-scrollbar-track]:my-2`,ae({top:h,bottom:_}))})})}),we.length>0?(0,Q.jsx)(`div`,{className:`max-h-44 shrink-0 overflow-y-auto border-t border-border/70 p-2`,children:we.map(t=>(0,Q.jsxs)(`div`,{className:`px-1 py-1.5 text-xs leading-snug`,children:[(0,Q.jsx)(`p`,{className:`line-clamp-3 text-muted-foreground`,children:Ze(t.snapshot)}),(0,Q.jsx)(x,{className:`mt-1`,onClick:()=>{e.onRequestClose?.(),e.onOpenProviderSetup?.(t.instanceId)},children:we.length>1?`Set up ${t.displayName}`:`Open provider setup`})]},t.instanceId))}):(0,Q.jsx)(te,{className:`empty:h-0`,children:`No models found`}),Te.map(({instanceId:t,notice:n})=>(0,Q.jsxs)(`p`,{className:`shrink-0 border-t border-border/70 px-3 py-2 text-xs leading-snug text-muted-foreground`,children:[n,` `,(0,Q.jsx)(x,{onClick:()=>{e.onRequestClose?.(),pe({to:`/settings/providers`})},children:`Provider settings`})]},t))]})})]})})});function ft(e){let t=(0,be.c)(1),{provider:n}=e;if(!Y(n))return null;let r;return t[0]===Symbol.for(`react.memo_cache_sentinel`)?(r=(0,Q.jsxs)(`div`,{className:`flex items-center justify-between gap-4 border-t px-3 py-2`,children:[(0,Q.jsxs)(`span`,{className:`flex items-center gap-2 text-xs text-muted-foreground`,children:[(0,Q.jsx)(de,{className:`size-3.5`,"aria-hidden":`true`}),`Using ChatGPT plan`]}),(0,Q.jsx)(J,{size:`xs`})]}),t[0]=r):r=t[0],r}var pt=(0,Z.memo)(function(e){let t=(0,be.c)(119),n=b(),[r,i]=(0,Z.useState)(!1),a=e.open??r,o=e.size??`sm`,[s,l]=(0,Z.useState)(!1),u=(0,Z.useRef)(null),d=(0,Z.useRef)(!!e.renderSettings),f;t[0]!==a||t[1]!==e?(f=()=>{let t=d.current&&!e.renderSettings;d.current=!!e.renderSettings,a&&t&&(l(!1),e.onOpenChange?.(!1),e.open===void 0&&i(!1))},t[0]=a,t[1]=e,t[2]=f):f=t[2];let m;t[3]!==a||t[4]!==e.onOpenChange||t[5]!==e.open||t[6]!==e.renderSettings?(m=[a,e.renderSettings,e.onOpenChange,e.open],t[3]=a,t[4]=e.onOpenChange,t[5]=e.open,t[6]=e.renderSettings,t[7]=m):m=t[7],(0,Z.useLayoutEffect)(f,m);let g,_;t[8]!==a||t[9]!==s?(g=()=>{a&&!s&&u.current?.querySelector(`[data-composer-model-settings] button:not(:disabled)`)?.focus({preventScroll:!0})},_=[a,s],t[8]=a,t[9]=s,t[10]=g,t[11]=_):(g=t[10],_=t[11]),(0,Z.useLayoutEffect)(g,_);let v;t[12]!==e.activeInstanceId||t[13]!==e.instanceEntries?(v=e.instanceEntries.find(t=>t.instanceId===e.activeInstanceId)??null,t[12]=e.activeInstanceId,t[13]=e.instanceEntries,t[14]=v):v=t[14];let x=v,w=e.activeInstanceId,T,E;if(t[15]!==x?.driverKind||t[16]!==w||t[17]!==e.model||t[18]!==e.modelOptionsByInstance){let n=e.modelOptionsByInstance.get(w)??[];T=it({driverKind:x?.driverKind,model:e.model,options:n})??(x?.driverKind===`opencode`||x?.driverKind===`antigravity`?void 0:n[0]),E=T?we(T):e.model===`antigravity-default`?`Choose model`:e.model||`Choose model`,t[15]=x?.driverKind,t[16]=w,t[17]=e.model,t[18]=e.modelOptionsByInstance,t[19]=T,t[20]=E}else T=t[19],E=t[20];let D=E,O;t[21]!==x||t[22]!==e.instanceEntries?(O=x!==null&&p(x,e.instanceEntries),t[21]=x,t[22]=e.instanceEntries,t[23]=O):O=t[23];let k=O,A;t[24]===e?A=t[25]:(A=t=>{t||l(!1),e.onOpenChange?.(t),e.open===void 0&&i(t)},t[24]=e,t[25]=A);let j=A,N,P;t[26]===a?(N=t[27],P=t[28]):(N=()=>{if(!a)return;let{documentElement:e,body:t}=document,n=e.style.overscrollBehavior,r=t.style.overflow,i=t.style.paddingRight,o=window.innerWidth-e.clientWidth;e.style.overscrollBehavior=`contain`,t.style.overflow=`hidden`,o>0&&(t.style.paddingRight=`${o}px`);let s=mt,c=e=>{s(e.target)||e.preventDefault()},l=e=>{s(e.target)||e.preventDefault()};return document.addEventListener(`wheel`,c,{capture:!0,passive:!1}),document.addEventListener(`touchmove`,l,{capture:!0,passive:!1}),()=>{document.removeEventListener(`wheel`,c,{capture:!0}),document.removeEventListener(`touchmove`,l,{capture:!0}),e.style.overscrollBehavior=n,t.style.overflow=r,t.style.paddingRight=i}},P=[a],t[26]=a,t[27]=N,t[28]=P),(0,Z.useEffect)(N,P);let F;t[29]!==e||t[30]!==j?(F=(t,n)=>{e.disabled||(e.onInstanceModelChange(t,n),e.renderSettings?l(!1):j(!1))},t[29]=e,t[30]=j,t[31]=F):F=t[31];let I=F,L,R,z,B,V,ee,te,ne,re;if(t[32]!==x||t[33]!==a||t[34]!==e.activeProviderIconClassName||t[35]!==e.compact||t[36]!==e.disabled||t[37]!==e.fastMode||t[38]!==e.instanceEntries||t[39]!==e.instanceIndicatorBackground||t[40]!==e.isComposerOwned||t[41]!==e.modelOptionsByInstance||t[42]!==e.renderSettings||t[43]!==e.selectedModels||t[44]!==e.triggerAriaLabel||t[45]!==e.triggerClassName||t[46]!==e.triggerLabel||t[47]!==j||t[48]!==k||t[49]!==o){B=e.selectedModels?.map(t=>{let n=e.instanceEntries.find(e=>e.instanceId===t.instanceId),r=it({driverKind:n?.driverKind,model:t.model,options:e.modelOptionsByInstance.get(t.instanceId)??[]});return{...t,entry:n,label:r?`${we(r)}${r.isUnavailable?` (Unavailable)`:``}`:t.model}}),z=B?B.length===0?`Choose models`:`${B.slice(0,2).map(ht).join(`, `)}${B.length>2?`, ${B.length-2} more`:``}`:void 0;let n=B?B.map(gt).join(`, `)||`Choose models`:void 0;R=me,ne=a,t[59]!==e.disabled||t[60]!==j?(re=t=>{if(e.disabled){j(!1);return}j(t)},t[59]=e.disabled,t[60]=j,t[61]=re):re=t[61],L=pe;let r=e.compact?`max-w-42 shrink-0`:!e.isComposerOwned&&`max-w-48 sm:max-w-56`,i;t[62]!==e.triggerClassName||t[63]!==r?(i=S(`min-w-0 shrink justify-between whitespace-nowrap`,r,e.triggerClassName),t[62]=e.triggerClassName,t[63]=r,t[64]=i):i=t[64],te=(0,Q.jsx)(C,{"aria-label":e.triggerAriaLabel??n,size:o,"data-chat-provider-model-picker":`true`,"data-composer-shortcut":e.renderSettings?`composer.effort`:void 0,className:i,disabled:e.disabled});let s=o===`xs`?`gap-1`:`gap-1.5`;t[65]===s?V=t[66]:(V=S(`flex min-w-0 flex-1 items-center`,s),t[65]=s,t[66]=V),ee=e.isComposerOwned?(0,Q.jsx)(M,{"aria-hidden":!0,className:S(`size-4 fill-current`,e.fastMode?`text-foreground`:`text-muted-foreground`)}):B&&e.triggerLabel===void 0?(0,Q.jsxs)(`span`,{className:`flex shrink-0 items-center -space-x-1`,"aria-hidden":`true`,children:[B.slice(0,3).map(_t),B.length>3?(0,Q.jsxs)(`span`,{className:`relative z-30 flex size-4 items-center justify-center rounded-full bg-(--chat-composer-glass-surface,var(--background)) text-3xs ring-2 ring-(--chat-composer-glass-surface,var(--background))`,children:[`+`,B.length-3]}):null]}):x&&e.triggerLabel===void 0?(0,Q.jsx)(he,{driverKind:x.driverKind,displayName:x.displayName,accentColor:x.accentColor,acpRegistryAgentId:x.acpRegistryAgentId,acpRegistryIconUrl:x.acpRegistryIconUrl,showBadge:k,className:`size-4`,iconClassName:S(`size-4`,e.activeProviderIconClassName),indicatorBackground:e.instanceIndicatorBackground??`var(--contrast-input)`,badgeClassName:S(`right-[-0.125rem] bottom-[-0.125rem] h-3 min-w-3 px-0.5 text-5xs`,o===`xs`&&`shadow-none`)}):null,t[32]=x,t[33]=a,t[34]=e.activeProviderIconClassName,t[35]=e.compact,t[36]=e.disabled,t[37]=e.fastMode,t[38]=e.instanceEntries,t[39]=e.instanceIndicatorBackground,t[40]=e.isComposerOwned,t[41]=e.modelOptionsByInstance,t[42]=e.renderSettings,t[43]=e.selectedModels,t[44]=e.triggerAriaLabel,t[45]=e.triggerClassName,t[46]=e.triggerLabel,t[47]=j,t[48]=k,t[49]=o,t[50]=L,t[51]=R,t[52]=z,t[53]=B,t[54]=V,t[55]=ee,t[56]=te,t[57]=ne,t[58]=re}else L=t[50],R=t[51],z=t[52],B=t[53],V=t[54],ee=t[55],te=t[56],ne=t[57],re=t[58];let ie=e.triggerLabel??z??D,ae;t[67]===ie?ae=t[68]:(ae=(0,Q.jsx)(`span`,{className:`min-w-0 flex-1 truncate`,"data-chat-provider-model-picker-label":`true`,children:ie}),t[67]=ie,t[68]=ae);let se;t[69]===e.settingsLabel?se=t[70]:(se=e.settingsLabel?(0,Q.jsx)(`span`,{className:`shrink-0 font-normal text-muted-foreground`,children:e.settingsLabel}):null,t[69]=e.settingsLabel,t[70]=se);let ce;t[71]!==e.triggerLabel||t[72]!==B||t[73]!==T?.isUnavailable?(ce=T?.isUnavailable&&!B&&e.triggerLabel===void 0?(0,Q.jsx)(c,{variant:`outline`,size:`sm`,children:`Unavailable`}):null,t[71]=e.triggerLabel,t[72]=B,t[73]=T?.isUnavailable,t[74]=ce):ce=t[74];let le;t[75]!==V||t[76]!==ee||t[77]!==ae||t[78]!==se||t[79]!==ce?(le=(0,Q.jsxs)(`span`,{className:V,children:[ee,ae,se,ce]}),t[75]=V,t[76]=ee,t[77]=ae,t[78]=se,t[79]=ce,t[80]=le):le=t[80];let ue;t[81]===o?ue=t[82]:(ue=(0,Q.jsx)(`span`,{"aria-hidden":`true`,className:`flex items-center`,children:(0,Q.jsx)(h,{size:o})}),t[81]=o,t[82]=ue);let de;t[83]!==L||t[84]!==te||t[85]!==le||t[86]!==ue?(de=(0,Q.jsxs)(L,{render:te,children:[le,ue]}),t[83]=L,t[84]=te,t[85]=le,t[86]=ue,t[87]=de):de=t[87];let H;t[88]!==n||t[89]!==e.isComposerOwned?(H=e.isComposerOwned?n:{},t[88]=n,t[89]=e.isComposerOwned,t[90]=H):H=t[90];let U;t[91]!==e.renderSettings||t[92]!==s?(U=e.renderSettings?{width:s?360:288}:void 0,t[91]=e.renderSettings,t[92]=s,t[93]=U):U=t[93];let W=s?`models`:`settings`,G=e.renderSettings?s?`composer-models-enter`:`composer-effort-enter`:void 0,K;t[94]!==x?.snapshot||t[95]!==w||t[96]!==I||t[97]!==z||t[98]!==e||t[99]!==j||t[100]!==s||t[101]!==D?(K=e.renderSettings&&!s?e.renderSettings(z??D,()=>l(!0)):(0,Q.jsxs)(Q.Fragment,{children:[e.renderSettings?(0,Q.jsx)(`div`,{className:`px-2 pt-2`,children:(0,Q.jsxs)(y,{variant:`ghost-muted`,size:`sm`,onClick:()=>l(!1),children:[(0,Q.jsx)(ge,{}),` Model settings`]})}):null,(0,Q.jsx)(dt,{environmentId:e.environmentId,activeInstanceId:w,model:e.model,...e.selectedModels===void 0?{}:{selectedModels:e.selectedModels},...e.onToggleModel?{onToggleModel:(t,n)=>{e.disabled||e.onToggleModel?.(t,n)}}:{},lockedProvider:e.lockedProvider,lockedContinuationGroupKey:e.lockedContinuationGroupKey??null,instanceEntries:e.instanceEntries,...e.keybindings?{keybindings:e.keybindings}:{},modelOptionsByInstance:e.modelOptionsByInstance,terminalOpen:e.terminalOpen??!1,onRequestClose:()=>j(!1),...e.onOpenProviderSetup?{onOpenProviderSetup:e.onOpenProviderSetup}:{},...e.getModelDisabledReason?{getModelDisabledReason:e.getModelDisabledReason}:{},onInstanceModelChange:I}),e.selectedModels===void 0?(0,Q.jsx)(ft,{provider:x?.snapshot??null}):null]}),t[94]=x?.snapshot,t[95]=w,t[96]=I,t[97]=z,t[98]=e,t[99]=j,t[100]=s,t[101]=D,t[102]=K):K=t[102];let q;t[103]!==W||t[104]!==G||t[105]!==K?(q=(0,Q.jsx)(oe,{children:(0,Q.jsx)(`div`,{className:G,children:K},W)}),t[103]=W,t[104]=G,t[105]=K,t[106]=q):q=t[106];let J;t[107]!==U||t[108]!==q?(J=(0,Q.jsx)(`div`,{ref:u,className:`max-w-[calc(100vw-2rem)] transition-[width] duration-200 ease-out motion-reduce:transition-none`,style:U,children:q}),t[107]=U,t[108]=q,t[109]=J):J=t[109];let Y;t[110]!==H||t[111]!==J?(Y=(0,Q.jsx)(fe,{...H,align:`start`,className:`before:hidden`,padding:`none`,children:J}),t[110]=H,t[111]=J,t[112]=Y):Y=t[112];let _e;return t[113]!==R||t[114]!==ne||t[115]!==re||t[116]!==de||t[117]!==Y?(_e=(0,Q.jsxs)(R,{open:ne,onOpenChange:re,children:[de,Y]}),t[113]=R,t[114]=ne,t[115]=re,t[116]=de,t[117]=Y,t[118]=_e):_e=t[118],_e});function mt(e){return e instanceof Element&&e.closest(`[data-model-picker-content]`)}function ht(e){return e.label}function gt(e){return e.label}function _t(e){return e.entry?(0,Q.jsx)(he,{driverKind:e.entry.driverKind,displayName:e.entry.displayName,accentColor:e.entry.accentColor,className:`size-4 rounded-full bg-(--chat-composer-glass-surface,var(--background)) ring-2 ring-(--chat-composer-glass-surface,var(--background))`,iconClassName:`size-4`},`${e.instanceId}:${e.model}`):null}export{Xe as a,Je as i,it as n,Ye as o,Qe as r,we as s,pt as t};
|
|
2
|
-
//# sourceMappingURL=ProviderModelPicker-
|
|
1
|
+
import{i as e}from"./rolldown-runtime-Dd_uD5pT.js";import{r as t}from"./Icon-l19w4AjM.js";import{Hr as n,It as r,Ns as i,Rt as a,Ta as o,Un as s,Ur as c,Ut as l,Vo as u,Wt as d,Xt as f,dn as p,dr as m,js as h,ma as g,or as _,sn as v,sr as y,t as b,um as x,un as S,vo as C,wx as w,yo as T}from"./utils-Nv21__t3.js";import{t as E}from"./check-Cmy7pM2Y.js";import{t as D}from"./chevron-right-NbahR9_s.js";import{t as O}from"./info-BHB-83EA.js";import{t as k}from"./sparkles-cStmYKbH.js";import{t as A}from"./star-DJ6Ycqv6.js";import{t as j}from"./x-CSwbgjBe.js";import{t as M}from"./zap-CrtYfJ8v.js";import{a as N,n as P,r as F,t as I}from"./tooltip-CYNXW1Ow.js";import{t as L}from"./CompositeRoot-Dz15SC7i.js";import{t as R}from"./useNavigate-DfvN7ISg.js";import{_ as z,d as B}from"./useSettings-C1hmCYRR.js";import{s as V}from"./server-BBIVfjrf.js";import{a as ee,n as te,r as ne,s as re,t as ie}from"./combobox-zg5NNJOT.js";import{n as ae}from"./scroll-area-CRoS-lxP.js";import{t as oe}from"./AnimatedHeight-CcLJhBdM.js";import{g as se,m as ce,p as le,v as ue}from"./keybindings-C81QSEVL.js";import{x as de}from"./Icons-DJ824_3l.js";import{i as fe,o as pe,t as me}from"./popover-aTTlR6NX.js";import{i as H,n as U,r as W,t as G}from"./alert-B49R80NU.js";import{t as K}from"./semver-CFbvOQKc.js";import{t as q}from"./kbd-Fa27fInv.js";import{b as he,t as J,y as Y}from"./ChatGptUsageButton-BjxGhmRJ.js";import{Vr as ge,gn as _e,hn as X,ss as ve,xn as ye}from"./main-CJvawsJJ.js";var Z=e(t(),1),be=w(),Q=e(g(),1);function xe(e){return e.replace(/[.*+?^${}()|[\]\\]/g,`\\$&`)}function $(e,t){let n=t?.trim();if(!n)return e;let r=RegExp(`^${xe(n)}(?:\\s*[.:/-]\\s*|\\s+)`,`iu`);return e.replace(r,``).trim()||e}function Se(e,t){let n=t?.preferShortName&&e.shortName?e.shortName:e.name;return h($(n,e.subProvider))}function Ce(e,t){let n=e.trim(),r=t?.trim();return r?n&&RegExp(`^${xe(n)}\\s+\\S`,`i`).test(r)?r:`${e} · ${r}`:e}function we(e){return Se(e,{preferShortName:!0})}function Te(e){return we(e)}var Ee={claudeAgent:`Claude Code`,codex:`the Codex CLI`};function De(e){return e.length<=2?e.join(` and `):`${e.slice(0,-1).join(`, `)}, and ${e[e.length-1]}`}function Oe(e,t=``){let n=t.trim().toLocaleLowerCase(),r=(e.updateRequiredModels??[]).filter(e=>n.length===0||e.name.toLocaleLowerCase().includes(n)||e.slug.toLocaleLowerCase().includes(n));if(r.length===0)return null;let i=r.map(e=>e.minVersion).reduce((e,t)=>K(t,e)>0?t:e);return`Update ${Ee[e.driver]??x[e.driver]??e.driver} to ${i.startsWith(`v`)?i:`v${i}`} or newer to use ${De(r.map(e=>e.name))}.`}var ke=`model:`,Ae=`legacy-models:`;function je(e,t){return`${ke}${e.length}:${e}${t}`}function Me(e){if(!e.startsWith(ke))return null;let t=e.slice(6),n=t.indexOf(`:`);if(n===-1)return null;let r=t.slice(0,n);if(!/^\d+$/.test(r))return null;let i=Number(r),a=t.slice(n+1);return!Number.isSafeInteger(i)||i>a.length?null:{instanceId:a.slice(0,i),slug:a.slice(i)}}function Ne(e){return`${Ae}${e}`}function Pe(e){return e.startsWith(Ae)?e.slice(14):null}var Fe=(0,Z.memo)(function(e){let t=(0,be.c)(71),n;t[0]!==e.model.subProvider||t[1]!==e.providerDisplayName?(n=Ce(e.providerDisplayName,e.model.subProvider),t[0]=e.model.subProvider,t[1]=e.providerDisplayName,t[2]=n):n=t[2];let r=n,i=e.index,a;t[3]!==e.instanceId||t[4]!==e.model.slug?(a=je(e.instanceId,e.model.slug),t[3]=e.instanceId,t[4]=e.model.slug,t[5]=a):a=t[5];let o=!!e.disabledReason,c=e.disabledReason&&`data-disabled:pointer-events-auto data-disabled:cursor-not-allowed`,l;t[6]===c?l=t[7]:(l=b(`group relative w-full !min-w-0 max-w-full cursor-pointer`,c),t[6]=c,t[7]=l);let u;t[8]!==e.model||t[9]!==e.preferShortName||t[10]!==e.useTriggerLabel?(u=e.useTriggerLabel?Te(e.model):Se(e.model,e.preferShortName?{preferShortName:!0}:void 0),t[8]=e.model,t[9]=e.preferShortName,t[10]=e.useTriggerLabel,t[11]=u):u=t[11];let d;t[12]===u?d=t[13]:(d=(0,Q.jsx)(`div`,{className:`min-w-0 truncate text-xs font-medium leading-snug`,children:u}),t[12]=u,t[13]=d);let f;t[14]===e.showNewBadge?f=t[15]:(f=e.showNewBadge?(0,Q.jsx)(`span`,{className:`shrink-0 rounded border border-update/35 bg-update/15 px-0.5 py-px text-3xs font-bold uppercase leading-none tracking-wide text-update-foreground`,"aria-label":`New model`,children:`New`}):null,t[14]=e.showNewBadge,t[15]=f);let p;t[16]===e.unavailable?p=t[17]:(p=e.unavailable?(0,Q.jsx)(s,{variant:`outline`,size:`sm`,children:`Unavailable`}):null,t[16]=e.unavailable,t[17]=p);let m;t[18]!==d||t[19]!==f||t[20]!==p?(m=(0,Q.jsxs)(`div`,{className:`flex min-w-0 items-center gap-2`,children:[d,f,p]}),t[18]=d,t[19]=f,t[20]=p,t[21]=m):m=t[21];let h;t[22]!==e.acpRegistryAgentId||t[23]!==e.acpRegistryIconUrl||t[24]!==e.driverKind||t[25]!==e.providerDisplayName||t[26]!==e.showProvider||t[27]!==r?(h=e.showProvider&&(0,Q.jsxs)(`div`,{className:`mt-1 flex items-center gap-1.5`,children:[(0,Q.jsx)(he,{driverKind:e.driverKind,displayName:e.providerDisplayName,acpRegistryAgentId:e.acpRegistryAgentId,acpRegistryIconUrl:e.acpRegistryIconUrl,className:`size-3`,iconClassName:`size-3`}),(0,Q.jsx)(`span`,{className:`truncate text-xs font-normal leading-snug text-muted-foreground/70`,children:r})]}),t[22]=e.acpRegistryAgentId,t[23]=e.acpRegistryIconUrl,t[24]=e.driverKind,t[25]=e.providerDisplayName,t[26]=e.showProvider,t[27]=r,t[28]=h):h=t[28];let g;t[29]!==m||t[30]!==h?(g=(0,Q.jsxs)(`div`,{className:`min-w-0 flex-1 text-left`,children:[m,h]}),t[29]=m,t[30]=h,t[31]=g):g=t[31];let v;t[32]!==e.isSelected||t[33]!==e.showSelection?(v=e.showSelection&&e.isSelected?(0,Q.jsx)(E,{className:`size-3.5`,"aria-hidden":`true`}):null,t[32]=e.isSelected,t[33]=e.showSelection,t[34]=v):v=t[34];let y;t[35]===e.jumpLabel?y=t[36]:(y=e.jumpLabel?(0,Q.jsx)(q,{children:e.jumpLabel}):null,t[35]=e.jumpLabel,t[36]=y);let x;t[37]===e?x=t[38]:(x=t=>{t.stopPropagation(),e.onToggleFavorite()},t[37]=e,t[38]=x);let S=!!e.disabledReason,C=e.isFavorite?`Remove from favorites`:`Add to favorites`,w=e.isFavorite&&`fill-current text-warning`,T;t[39]===w?T=t[40]:(T=b(`size-3.5 sm:size-3`,w),t[39]=w,t[40]=T);let D;t[41]===T?D=t[42]:(D=(0,Q.jsx)(A,{className:T}),t[41]=T,t[42]=D);let O;t[43]!==x||t[44]!==S||t[45]!==C||t[46]!==D?(O=(0,Q.jsx)(N,{render:(0,Q.jsx)(_,{size:`icon-xs`,variant:`ghost-muted`,className:`-mr-1 shrink-0`,onClick:x,onKeyDown:Ie,disabled:S,"aria-label":C,children:D})}),t[43]=x,t[44]=S,t[45]=C,t[46]=D,t[47]=O):O=t[47];let k=e.isFavorite?`Remove from favorites`:`Add to favorites`,j;t[48]===k?j=t[49]:(j=(0,Q.jsx)(P,{side:`top`,align:`center`,children:k}),t[48]=k,t[49]=j);let M;t[50]!==O||t[51]!==j?(M=(0,Q.jsxs)(I,{children:[O,j]}),t[50]=O,t[51]=j,t[52]=M):M=t[52];let F;t[53]!==v||t[54]!==y||t[55]!==M?(F=(0,Q.jsxs)(`div`,{className:`flex shrink-0 items-center gap-1.5`,children:[v,y,M]}),t[53]=v,t[54]=y,t[55]=M,t[56]=F):F=t[56];let L;t[57]!==e.index||t[58]!==g||t[59]!==a||t[60]!==F||t[61]!==o||t[62]!==l?(L=(0,Q.jsxs)(ne,{hideIndicator:!0,index:i,value:a,disabled:o,className:l,children:[g,F]}),t[57]=e.index,t[58]=g,t[59]=a,t[60]=F,t[61]=o,t[62]=l,t[63]=L):L=t[63];let R=L;if(!e.disabledReason)return R;let z;t[64]===R?z=t[65]:(z=(0,Q.jsx)(N,{render:R}),t[64]=R,t[65]=z);let B;t[66]===e.disabledReason?B=t[67]:(B=(0,Q.jsx)(P,{side:`left`,align:`center`,children:e.disabledReason}),t[66]=e.disabledReason,t[67]=B);let V;return t[68]!==z||t[69]!==B?(V=(0,Q.jsxs)(I,{children:[z,B]}),t[68]=z,t[69]=B,t[70]=V):V=t[70],V});function Ie(e){e.stopPropagation()}var Le=Z.forwardRef(function(e,t){let{disabled:r=!1,loopFocus:i=!0,orientation:a=`horizontal`,className:o,render:s,style:c,...l}=e,[u,d]=Z.useState(()=>new Map),f=Z.useMemo(()=>{let e=[];for(let t of u.values())t?.index&&!t.focusableWhenDisabled&&e.push(t.index);return e},[u]),p=Z.useMemo(()=>({disabled:r,orientation:a,setItemMap:d}),[r,a,d]),m={disabled:r,orientation:a},h={"aria-orientation":a,role:`toolbar`};return(0,Q.jsx)(n.Provider,{value:p,children:(0,Q.jsx)(L,{render:s,className:o,style:c,state:m,refs:[t],props:[h,l],disabledIndices:f,loopFocus:i,onMapChange:d,orientation:a})})}),Re=Z.createContext(void 0);function ze(e){let t=Z.useContext(Re);if(t===void 0&&!e)throw Error(C(68));return t}var Be=Z.forwardRef(function(e,t){let{className:n,disabled:r=!1,focusableWhenDisabled:i=!0,render:a,nativeButton:s=!0,style:l,...u}=e,d=Z.useMemo(()=>({focusableWhenDisabled:i}),[i]),{disabled:f,orientation:p}=c(),h=ze(!0),g=f||(h?.disabled??!1)||r,{getButtonProps:_,buttonRef:v}=o({disabled:g,focusableWhenDisabled:i,native:s});return(0,Q.jsx)(m,{tag:`button`,render:a,className:n,style:l,metadata:d,state:{disabled:g,orientation:p,focusable:i},refs:[t,v],props:[u,{disabled:g},_]})});function Ve(e){let t=e.displayName;if(!e.enabled||e.status===`disabled`)return`${t} — Disabled in settings.`;if(e.status===`ready`&&e.isAvailable)return t;let n=e.status===`error`?`Unavailable`:e.status===`warning`?`Limited`:`Not ready`,r=e.snapshot.message?.trim();return r?`${t} — ${n}. ${r}`:`${t} — ${n}.`}var He=`pointer-events-none absolute -right-1 top-1/2 z-10 h-5 w-0.75 -translate-y-1/2 rounded-l-full bg-primary`,Ue=`pointer-events-none absolute -right-0.5 top-0.5 z-10 flex size-3.5 items-center justify-center rounded-full bg-transparent shadow-sm text-update-foreground `,We=`left`,Ge=8,Ke=(0,Z.memo)(function(e){let t=(0,be.c)(27),n;t[0]===e?n=t[1]:(n=t=>{e.onSelectInstance(t)},t[0]=e,t[1]=n);let r=n,i=e.showFavorites??!0,[a,o]=(0,Z.useState)(null),s=(0,Z.useRef)(null),[c,u]=(0,Z.useState)(null),d;t[2]===e.selectedInstanceId?d=t[3]:(d=()=>{let t=s.current;if(!t)return;let n=Array.from(t.querySelectorAll(`[data-model-picker-provider]`)).find(t=>t.dataset.modelPickerProvider===e.selectedInstanceId);if(!n){u(null);return}u(n.offsetTop+n.offsetHeight/2-10)},t[2]=e.selectedInstanceId,t[3]=d);let p;t[4]!==e.instanceEntries||t[5]!==e.selectedInstanceId||t[6]!==i?(p=[e.instanceEntries,e.selectedInstanceId,i],t[4]=e.instanceEntries,t[5]=e.selectedInstanceId,t[6]=i,t[7]=p):p=t[7],(0,Z.useLayoutEffect)(d,p);let m;t[8]===e?m=t[9]:(m=t=>{if(!(t.altKey||t.ctrlKey||t.metaKey||t.shiftKey)&&t.key===`ArrowRight`){t.preventDefault(),e.onFocusSearch();return}},t[8]=e,t[9]=m);let h;t[10]===c?h=t[11]:(h=c===null?null:(0,Q.jsx)(`div`,{"data-model-picker-selected-indicator":`true`,className:b(He,`right-0 translate-y-0 transition-[top] duration-200 ease-out`),style:{top:c}}),t[10]=c,t[11]=h);let g;t[12]!==r||t[13]!==e.selectedInstanceId||t[14]!==i?(g=i?(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsx)(`div`,{className:`relative w-full`,"data-model-picker-provider":`favorites`,children:(0,Q.jsxs)(I,{children:[(0,Q.jsx)(N,{render:(0,Q.jsx)(Be,{className:b(`relative isolate flex w-full cursor-pointer aspect-square items-center justify-center rounded-md transition-colors hover:bg-foreground/10 focus-visible:bg-foreground/10 focus-visible:outline-none`),onClick:()=>r(`favorites`),type:`button`,"aria-label":`Favorites`,"aria-pressed":e.selectedInstanceId===`favorites`,children:(0,Q.jsx)(A,{className:`size-5 fill-current shrink-0`,"aria-hidden":!0})})}),(0,Q.jsx)(P,{side:We,sideOffset:Ge,align:`center`,children:`Favorites`})]})}),(0,Q.jsx)(`div`,{className:`border-b border-border/70`,"aria-hidden":`true`})]}):null,t[12]=r,t[13]=e.selectedInstanceId,t[14]=i,t[15]=g):g=t[15];let _;t[16]!==r||t[17]!==a||t[18]!==e?(_=e.instanceEntries.map(t=>{let n=!l(t),i=e.disabledInstanceIds?.has(t.instanceId)??!1,s=e.selectableUnavailableInstanceIds?.has(t.instanceId)??!1,c=n&&!s||i,u=e.selectedInstanceId===t.instanceId,d=a===t.instanceId,p=e.newBadgeInstanceIds?.has(t.instanceId)??!1,m=f(t,e.instanceEntries),h=n?Ve(t):i?e.getDisabledInstanceTooltip?.(t)??t.displayName:p?`${t.displayName} — New`:t.displayName,g=(0,Q.jsxs)(Be,{className:b(`relative isolate flex w-full cursor-pointer aspect-square items-center justify-center rounded-md transition-colors hover:bg-foreground/10 focus-visible:bg-foreground/10 focus-visible:outline-none`,c&&`opacity-50 cursor-not-allowed hover:bg-transparent`),"data-provider-accent-color":t.accentColor,onClick:()=>!c&&r(t.instanceId),onMouseEnter:()=>o(t.instanceId),onMouseLeave:()=>o(e=>e===t.instanceId?null:e),onFocus:()=>o(t.instanceId),onBlur:()=>o(e=>e===t.instanceId?null:e),disabled:c,focusableWhenDisabled:!c,"aria-pressed":u,type:`button`,"aria-label":n||i?h:p?`${t.displayName}, new`:t.displayName,children:[(0,Q.jsx)(he,{driverKind:t.driverKind,displayName:t.displayName,accentColor:t.accentColor,acpRegistryAgentId:t.acpRegistryAgentId,acpRegistryIconUrl:t.acpRegistryIconUrl,showBadge:m,className:`size-6 z-30`,iconClassName:`size-5`,indicatorBackground:d&&!c?`var(--muted)`:u?`var(--background)`:`color-mix(in oklab, var(--muted) 30%, transparent)`,...t.accentColor?{badgeClassName:`h-3 min-w-3 px-0.5 text-5xs`}:{}}),p?(0,Q.jsx)(`span`,{className:Ue,"aria-hidden":!0,children:(0,Q.jsx)(k,{className:`size-2`})}):null]}),_=c?(0,Q.jsx)(`span`,{className:`relative block w-full`,children:g}):g;return(0,Q.jsx)(`div`,{className:`relative w-full`,"data-model-picker-provider":t.instanceId,children:(0,Q.jsxs)(I,{children:[(0,Q.jsx)(N,{render:_}),(0,Q.jsx)(P,{side:We,sideOffset:Ge,align:`center`,children:h})]})},t.instanceId)}),t[16]=r,t[17]=a,t[18]=e,t[19]=_):_=t[19];let v;t[20]!==h||t[21]!==g||t[22]!==_?(v=(0,Q.jsx)(`div`,{className:`h-full overflow-y-auto overscroll-contain [-ms-overflow-style:none] [scrollbar-width:none] [&::-webkit-scrollbar]:hidden`,children:(0,Q.jsxs)(`div`,{ref:s,className:`relative flex min-h-full flex-col gap-1 p-1`,children:[h,g,_]})}),t[20]=h,t[21]=g,t[22]=_,t[23]=v):v=t[23];let y;return t[24]!==m||t[25]!==v?(y=(0,Q.jsx)(Le,{className:`w-11 shrink-0 overflow-hidden bg-muted/30`,"data-model-picker-sidebar":`true`,"aria-label":`Providers`,orientation:`vertical`,onKeyDown:m,children:v}),t[24]=m,t[25]=v,t[26]=y):y=t[26],y});function qe(e){let t=e.compatibilityAdvisory;return e.status===`error`&&e.auth.status===`unauthenticated`?null:t?.status===`broken`||e.status===`ready`&&t?.status===`unsupported`?t:null}function Je(e){if(!e||e.status===`disabled`)return null;let t=qe(e);return t?[e.instanceId,t.status,e.version??``,t.message??``].join(`\0`):e.status===`ready`||e.driver===`antigravity`&&e.installed&&e.status===`warning`&&e.auth.status===`unknown`?null:[e.instanceId,e.status,e.auth.status,e.message??``].join(`\0`)}function Ye(e,t){let n=Je(e);return n!==null&&n!==t}function Xe(e){return e.driver===`antigravity`||e.setup?.canAuthenticate===!0||e.setup?.canInstall===!0}function Ze(e){if(e.auth.status!==`unauthenticated`&&e.compatibilityAdvisory?.status===`broken`&&e.compatibilityAdvisory.message)return e.compatibilityAdvisory.message;if(e.message)return e.message;let t=e.displayName?.trim()||T(e.driver);return!e.installed&&Xe(e)?`Open provider setup to install ${T(e.driver)} on this environment.`:e.auth.status===`unauthenticated`?Xe(e)?e.driver===`antigravity`?`Open provider setup to sign in with Google.`:`Open provider setup to sign in.`:`Sign in via the CLI to authenticate again.`:e.status===`ready`?`No models are available for this provider.`:e.status===`error`?`${t} provider is unavailable.`:`${t} provider has limited availability.`}var Qe=(0,Z.memo)(function(e){let t=(0,be.c)(30),{onDismiss:n,onOpenProviderSetup:r,status:i}=e;if(!i||Je(i)===null)return null;let a;t[0]!==i.displayName||t[1]!==i.driver?(a=i.displayName?.trim()||T(i.driver),t[0]=i.displayName,t[1]=i.driver,t[2]=a):a=t[2];let o=a,s=i.status===`error`&&i.auth.status===`unauthenticated`,c;t[3]===i?c=t[4]:(c=qe(i),t[3]=i,t[4]=c);let l=c,u=s?`${o} is unauthenticated`:l?`${o} ${i.version??``} is ${l.status===`broken`?`known to be broken`:`unsupported`}`:`${o} provider status`,d;t[5]!==l?.message||t[6]!==i?(d=l?.message??Ze(i),t[5]=l?.message,t[6]=i,t[7]=d):d=t[7];let f=d,p=l?.status!==`broken`&&(i.status===`warning`||l!==null)?`warning`:`error`,m=l&&l.status!==`broken`?`status`:`alert`,h;t[8]===Symbol.for(`react.memo_cache_sentinel`)?(h=(0,Q.jsx)(O,{}),t[8]=h):h=t[8];let g;t[9]===u?g=t[10]:(g=(0,Q.jsx)(H,{children:u}),t[9]=u,t[10]=g);let v;t[11]===Symbol.for(`react.memo_cache_sentinel`)?(v=(0,Q.jsx)(`div`,{className:`line-clamp-3`}),t[11]=v):v=t[11];let b;t[12]===f?b=t[13]:(b=(0,Q.jsxs)(I,{children:[(0,Q.jsx)(N,{render:v,children:f}),(0,Q.jsx)(P,{side:`top`,className:`whitespace-pre-wrap`,children:f})]}),t[12]=f,t[13]=b);let x;t[14]!==r||t[15]!==i?(x=r&&Xe(i)?(0,Q.jsx)(y,{onClick:()=>r(i.instanceId),children:`Open provider setup`}):null,t[14]=r,t[15]=i,t[16]=x):x=t[16];let S;t[17]!==x||t[18]!==b?(S=(0,Q.jsxs)(W,{children:[b,x]}),t[17]=x,t[18]=b,t[19]=S):S=t[19];let C=`Dismiss ${o} provider ${i.status}`,w;t[20]===Symbol.for(`react.memo_cache_sentinel`)?(w=(0,Q.jsx)(j,{}),t[20]=w):w=t[20];let E;t[21]!==n||t[22]!==C?(E=(0,Q.jsx)(U,{children:(0,Q.jsx)(_,{"aria-label":C,onClick:n,size:`icon-xs`,variant:`ghost-muted`,children:w})}),t[21]=n,t[22]=C,t[23]=E):E=t[23];let D;return t[24]!==S||t[25]!==E||t[26]!==p||t[27]!==m||t[28]!==g?(D=(0,Q.jsx)(`div`,{className:`pointer-events-auto mx-auto w-fit max-w-[calc(100%-2rem)] pt-3`,children:(0,Q.jsxs)(G,{variant:p,role:m,surface:`glass`,controlAlignment:`first-line`,children:[h,g,S,E]})}),t[24]=S,t[25]=E,t[26]=p,t[27]=m,t[28]=g,t[29]=D):D=t[29],D}),$e=24;function et(e){return[X(e.name),...e.shortName?[X(e.shortName)]:[],...e.subProvider?[X(e.subProvider)]:[],X(e.driverKind),X(e.providerDisplayName),nt(e)]}function tt(e,t,n){return _e({value:e,query:t,exactBase:n,prefixBase:n+2,boundaryBase:n+4,includesBase:n+6,...t.length>=3?{fuzzyBase:n+100}:{}})}function nt(e){return X([e.name,e.shortName,e.subProvider,e.driverKind,e.providerDisplayName].filter(e=>typeof e==`string`&&e.length>0).join(` `))}function rt(e,t){let n=X(t).split(/\s+/u).filter(e=>e.length>0);if(n.length===0)return 0;let r=et(e),i=0;for(let e of n){let t=[];for(let n=0;n<r.length;n+=1){let i=tt(r[n],e,n*10);i!==null&&t.push(i)}if(t.length===0)return null;i+=Math.min(...t)}return e.isFavorite?i-$e:i}function it(e){if(e.driverKind===`antigravity`&&e.model===`antigravity-default`){let t=e.options.filter(e=>e.slug!==`antigravity-default`&&!e.isUnavailable);return t.find(e=>e.aliases?.includes(`antigravity-default`))??t.find(e=>e.isDefault)}return e.options.find(t=>t.slug===e.model)}function at(e){return e.entry.driverKind===`antigravity`&&e.option.slug===`antigravity-default`?!1:l(e.entry)?!0:e.entry.enabled&&(e.entry.driverKind===`opencode`||e.entry.driverKind===`antigravity`)&&e.entry.instanceId===e.activeInstanceId&&e.option.slug===e.activeModel&&e.option.isUnavailable===!0}function ot(e,t){return e.enabled&&e.status!==`disabled`&&Xe(e.snapshot)&&(!l(e)||!e.installed||e.snapshot.auth.status===`unauthenticated`||!t.some(e=>!e.isUnavailable))}function st(e){let t=[`favorites`,...e.entries.filter(t=>!e.disabledInstanceIds?.has(t.instanceId)&&(l(t)||e.selectableUnavailableInstanceIds?.has(t.instanceId))).map(e=>e.instanceId)],n=t.indexOf(e.selectedInstanceId);return t[n<0?e.direction===1?0:t.length-1:(n+e.direction+t.length)%t.length]}var ct=new Map,lt=52;function ut(){let e=(0,be.c)(1),t;return e[0]===Symbol.for(`react.memo_cache_sentinel`)?(t=(0,Q.jsx)(`div`,{className:`h-0.5`}),e[0]=t):t=e[0],t}var dt=(0,Z.memo)(function(e){let{keybindings:t,modelOptionsByInstance:n,instanceEntries:o,getModelDisabledReason:s,onInstanceModelChange:c,onToggleModel:f}=e,[p,m]=(0,Z.useState)(``),[h,g]=(0,Z.useState)(!1),[_,v]=(0,Z.useState)(!1),x=(0,Z.useRef)(null),S=(0,Z.useRef)(null),C=(0,Z.useRef)(null),w=(0,Z.useRef)(null),{favorites:T}=B(e.environmentId),E=e.instanceEntries.find(t=>t.instanceId===e.activeInstanceId),O=it({driverKind:E?.driverKind,model:e.model,options:n.get(e.activeInstanceId)??[]})?.slug??(e.model===`antigravity-default`?``:e.model),k=O?je(e.activeInstanceId,O):null,A=(0,Z.useMemo)(()=>e.selectedModels?.map(e=>{let t=it({driverKind:o.find(t=>t.instanceId===e.instanceId)?.driverKind,model:e.model,options:n.get(e.instanceId)??[]});return je(e.instanceId,t?.slug??e.model)}),[o,n,e.selectedModels]),j=(0,Z.useMemo)(()=>new Set(A??(k?[k]:[])),[A,k]),M=E!==void 0&&(n.get(e.activeInstanceId)??[]).some(t=>at({entry:E,option:t,activeInstanceId:e.activeInstanceId,activeModel:O}))&&!l(E),N=e.onOpenProviderSetup!==void 0&&E!==void 0&&ot(E,n.get(e.activeInstanceId)??[]),[P,I]=(0,Z.useState)(()=>e.lockedProvider!==null||M||N?e.activeInstanceId:T.length>0?`favorites`:e.activeInstanceId),[L,oe]=(0,Z.useState)(()=>new Set(n.get(e.activeInstanceId)?.some(e=>e.slug===O&&e.isLegacy)?[e.activeInstanceId]:[])),de=u(V),fe=t??de,pe=R(),me=z(e.environmentId),H=(0,Z.useCallback)(()=>{x.current?.focus({preventScroll:!0})},[]),U=(0,Z.useCallback)(e=>{I(e),window.requestAnimationFrame(()=>{H()})},[H]);(0,Z.useLayoutEffect)(()=>{H();let e=window.requestAnimationFrame(()=>{H()}),t=window.setTimeout(()=>{H()},0);return()=>{window.cancelAnimationFrame(e),window.clearTimeout(t)}},[H]);let W=(0,Z.useMemo)(()=>new Set(T.map(e=>r(e.provider,e.model))),[T]),G=(0,Z.useMemo)(()=>new Map(o.map(e=>[e.instanceId,e])),[o]),K=(0,Z.useCallback)(t=>e.lockedProvider===null?!0:t.driverKind===e.lockedProvider?!e.lockedContinuationGroupKey||t.continuationGroupKey===e.lockedContinuationGroupKey:!1,[e.lockedContinuationGroupKey,e.lockedProvider]),q=(0,Z.useMemo)(()=>{let t=new Set;if(M&&t.add(e.activeInstanceId),e.onOpenProviderSetup)for(let e of o)ot(e,n.get(e.instanceId)??[])&&t.add(e.instanceId);return t.size>0?t:void 0},[M,o,n,e.activeInstanceId,e.onOpenProviderSetup]),he=(0,Z.useMemo)(()=>{let t=[];for(let[r,i]of n){let n=G.get(r);if(n)for(let a of i)at({entry:n,option:a,activeInstanceId:e.activeInstanceId,activeModel:O})&&t.push({slug:a.slug,name:a.name,...a.shortName?{shortName:a.shortName}:{},...a.subProvider?{subProvider:a.subProvider}:{},...a.badge?{badge:a.badge}:{},...a.isLegacy?{isLegacy:!0}:{},...a.isUnavailable?{isUnavailable:!0}:{},instanceId:r,driverKind:n.driverKind,instanceDisplayName:n.displayName,...n.accentColor?{instanceAccentColor:n.accentColor}:{},...n.acpRegistryAgentId?{acpRegistryAgentId:n.acpRegistryAgentId}:{},...n.acpRegistryIconUrl?{acpRegistryIconUrl:n.acpRegistryIconUrl}:{},...n.continuationGroupKey?{continuationGroupKey:n.continuationGroupKey}:{}})}return t},[n,G,e.activeInstanceId,O]),J=e.lockedProvider!==null,Y=p.trim().length>0,_e=(0,Z.useMemo)(()=>{if(!J)return;let e=new Set;for(let t of o)K(t)||e.add(t.instanceId);return e},[o,J,K]),X=(0,Z.useMemo)(()=>{let e=o.filter(d);if(!J)return e;let t=[],n=[];for(let r of e)K(r)?t.push(r):n.push(r);return[...t,...n]},[o,J,K]),ve=!Y&&X.length>0,be=(0,Z.useMemo)(()=>o.map(e=>e.instanceId),[o]),xe=(0,Z.useMemo)(()=>{let t=he;if(p.trim()){let n=t.map(e=>({model:e,score:rt({name:e.name,...e.shortName?{shortName:e.shortName}:{},...e.subProvider?{subProvider:e.subProvider}:{},driverKind:e.driverKind,providerDisplayName:e.instanceDisplayName,isFavorite:W.has(r(e.instanceId,e.slug))},p),isFavorite:W.has(r(e.instanceId,e.slug)),tieBreaker:nt({name:e.name,...e.shortName?{shortName:e.shortName}:{},...e.subProvider?{subProvider:e.subProvider}:{},driverKind:e.driverKind,providerDisplayName:e.instanceDisplayName})})).filter(e=>e.score!==null);if(e.lockedProvider!==null){let e=[];for(let t of n)K(t.model)&&e.push(t);return e.toSorted((e,t)=>{let n=e.score-t.score;return n===0?e.isFavorite===t.isFavorite?e.tieBreaker.localeCompare(t.tieBreaker):e.isFavorite?-1:1:n}).map(e=>e.model)}return n.toSorted((e,t)=>{let n=e.score-t.score;return n===0?e.isFavorite===t.isFavorite?e.tieBreaker.localeCompare(t.tieBreaker):e.isFavorite?-1:1:n}).map(e=>e.model)}return e.lockedProvider===null?t=P===`favorites`?t.filter(e=>W.has(r(e.instanceId,e.slug))):t.filter(e=>e.instanceId===P):(t=t.filter(e=>K(e)),t=P===`favorites`?t.filter(e=>W.has(r(e.instanceId,e.slug))):t.filter(e=>e.instanceId===P)),a(t,{favoriteModelKeys:W,groupFavorites:P!==`favorites`,instanceOrder:P===`favorites`?be:[]})},[W,he,be,K,e.lockedProvider,p,P]),$=(0,Z.useMemo)(()=>{if(Y||P===`favorites`)return null;let e=xe.filter(e=>!e.isLegacy),t=xe.filter(e=>e.isLegacy);return t.length===0?null:{key:Ne(P),currentModels:e,legacyModels:t,isExpanded:L.has(P)}},[L,xe,Y,P]),Se=(0,Z.useMemo)(()=>$?[...$.currentModels,...$.isExpanded?$.legacyModels:[]]:xe,[xe,$]),Ce=P===`favorites`?void 0:G.get(P),we=!Y&&e.onOpenProviderSetup?o.filter(e=>K(e)&&ot(e,n.get(e.instanceId)??[])&&(Ce?e.instanceId===Ce.instanceId:xe.length===0)):[],Te=(Y?o.filter(K):Ce?[Ce]:[]).flatMap(e=>{let t=Oe(e.snapshot,p);return t?[{instanceId:e.instanceId,notice:t}]:[]}),Ee=(0,Z.useCallback)(e=>{oe(t=>{let n=new Set(t);return n.has(e)?n.delete(e):n.add(e),n})},[]),De=(0,Z.useCallback)((e,t,r=!1)=>{if(s?.(t,e))return;let a=n.get(t);if(!a)return;let o=G.get(t);if(!o)return;let l=i(o.driverKind,e,a);l&&(r&&f?f(t,l):c(t,l))},[G,s,n,c,f]),ke=(0,Z.useMemo)(()=>{let e=new Map,t=0;for(let n of Se){if(s?.(n.instanceId,n.slug))continue;let r=le(t);if(!r)return e;e.set(je(n.instanceId,n.slug),r),t+=1}return e},[s,Se]),Ae=(0,Z.useMemo)(()=>[...ke.keys()],[ke]),Ie=(0,Z.useMemo)(()=>[...he.map(e=>je(e.instanceId,e.slug)),...new Set(he.filter(e=>e.isLegacy).map(e=>Ne(e.instanceId)))],[he]),Le=(0,Z.useMemo)(()=>{let e=Se.map(e=>je(e.instanceId,e.slug));return $&&e.splice($.currentModels.length,0,$.key),e},[$,Se]),Re=(0,Z.useMemo)(()=>new Map(Se.map(e=>[je(e.instanceId,e.slug),e])),[Se]),[ze,Be]=(0,Z.useState)(()=>Le.length*lt),[Ve,He]=(0,Z.useState)(0);(0,Z.useLayoutEffect)(()=>S.current?.getState().listen(`totalSize`,Be),[]);let Ue=Le.length===0?0:`calc(${ze}px + var(--spacing) * 5)`,We=(0,Z.useCallback)(()=>{let e=S.current?.getScrollableNode();if(!(e instanceof HTMLElement))return;let t=Math.max(0,e.scrollHeight-e.clientHeight);g(e.scrollTop>1),v(t-e.scrollTop>1)},[]),Ge=(0,Z.useMemo)(()=>({terminalFocus:!1,terminalOpen:e.terminalOpen,modelPickerOpen:!0}),[e.terminalOpen]),qe=(0,Z.useMemo)(()=>{if(ke.size===0)return ct;let e={platform:navigator.platform,context:Ge},t=new Map;for(let[n,r]of ke){let i=ue(fe,r,e);i&&t.set(n,i)}return t.size>0?t:ct},[fe,ke,Ge]),Je=(0,Z.useMemo)(()=>({favoritesSet:W,modelJumpLabelByKey:qe,activeModelKey:k,selectedModelKeySet:j}),[W,qe,k,j]);return(0,Z.useEffect)(()=>{let e=e=>{if(e.defaultPrevented||e.repeat||ge())return;let t=se(e,fe,{platform:navigator.platform,context:Ge});if(t===`modelPicker.previousProvider`||t===`modelPicker.nextProvider`){e.preventDefault(),e.stopPropagation();let n=st({entries:X,selectedInstanceId:P,direction:t===`modelPicker.nextProvider`?1:-1,disabledInstanceIds:_e,selectableUnavailableInstanceIds:q});m(``),U(n);return}let n=ce(t??``);if(n===null)return;e.preventDefault(),e.stopPropagation();let r=Ae[n];if(!r)return;let i=Me(r);i&&De(i.slug,i.instanceId)};return window.addEventListener(`keydown`,e,!0),()=>{window.removeEventListener(`keydown`,e,!0)}},[De,U,fe,_e,Ae,Ge,q,P,X]),(0,Z.useLayoutEffect)(()=>{g(!1),v(Le.length>5);let e=0,t=window.requestAnimationFrame(()=>{We(),e=window.requestAnimationFrame(We)});return()=>{window.cancelAnimationFrame(t),window.cancelAnimationFrame(e)}},[Le,We]),(0,Q.jsx)(F,{delay:0,children:(0,Q.jsxs)(`div`,{ref:C,className:`relative flex max-h-86.5 w-screen max-w-90 flex-row overflow-hidden`,style:Y?{height:Ve}:void 0,"data-model-picker-content":`true`,children:[ve&&(0,Q.jsx)(Ke,{selectedInstanceId:P,onSelectInstance:U,onFocusSearch:H,instanceEntries:X,showFavorites:!0,...q?{selectableUnavailableInstanceIds:q}:{},..._e?{disabledInstanceIds:_e,getDisabledInstanceTooltip:e=>`${e.displayName} is unavailable in this thread. Start a new thread to switch providers.`}:{}}),(0,Q.jsx)(ie,{inline:!0,items:Ie,filteredItems:Le,filter:null,autoHighlight:!0,open:!0,virtualized:!0,multiple:f!==void 0,value:f?[...j]:k,onItemHighlighted:(e,t)=>{w.current=typeof e==`string`?e:null,t.reason===`keyboard`&&t.index>=0&&S.current?.scrollIndexIntoView?.({index:t.index,animated:!1})},onValueChange:(e,t)=>{let n=Array.isArray(e)?e.find(e=>!j.has(e))??[...j].find(t=>!e.includes(t)):e;if(typeof n!=`string`)return;let r=Pe(n);if(r){Ee(r);return}let i=Me(n);i&&De(i.slug,i.instanceId,`shiftKey`in t.event&&t.event.shiftKey===!0)},children:(0,Q.jsxs)(`div`,{className:b(`flex min-h-0 flex-1 flex-col overflow-hidden bg-muted/40`,ve&&`border-l border-border/70`),children:[(0,Q.jsx)(re,{ref:x,placeholder:`Search models...`,value:p,onChange:e=>{Y||He(C.current?.offsetHeight??0),m(e.target.value)},onKeyDown:t=>{if(ve&&!t.altKey&&!t.ctrlKey&&!t.metaKey&&(t.key===`ArrowLeft`&&!t.shiftKey&&p.length===0||t.key===`Tab`&&t.shiftKey)){let e=t.currentTarget.closest(`[data-model-picker-content]`)?.querySelector(`[data-model-picker-sidebar]`),n=e?.querySelector(`button[aria-pressed="true"]:not(:disabled)`)??e?.querySelector(`button:not(:disabled)`);if(n){t.preventDefault(),t.stopPropagation(),n.focus();return}}if(t.key===`Escape`){t.preventDefault(),t.stopPropagation(),e.onRequestClose?.();return}if(t.key===`Enter`&&w.current){t.preventBaseUIHandler?.(),t.preventDefault(),t.stopPropagation();let e=Pe(w.current);if(e){Ee(e);return}let n=Me(w.current);n&&De(n.slug,n.instanceId,t.shiftKey);return}t.stopPropagation()},onMouseDown:e=>e.stopPropagation(),onTouchStart:e=>e.stopPropagation()}),(0,Q.jsx)(`div`,{className:`relative min-h-0 overflow-hidden pr-px`,style:{height:Ue},children:(0,Q.jsx)(ee,{children:(0,Q.jsx)(ye,{ref:S,data:Le,extraData:Je,keyExtractor:e=>e,renderItem:({item:e,index:t})=>{if($?.key===e)return(0,Q.jsxs)(ne,{hideIndicator:!0,index:t,value:e,"aria-expanded":$.isExpanded,className:`group w-full cursor-pointer`,children:[(0,Q.jsxs)(`div`,{className:`min-w-0 flex-1 text-left`,children:[(0,Q.jsx)(`div`,{className:`text-xs font-medium leading-snug`,children:`Legacy models`}),(0,Q.jsxs)(`div`,{className:`mt-1 text-xs font-normal leading-snug text-muted-foreground/70`,children:[$.legacyModels.length,` models`]})]}),(0,Q.jsx)(D,{className:b(`size-4 transition-transform`,$.isExpanded&&`rotate-90`)})]});let n=Re.get(e);if(!n)return null;let i=s?.(n.instanceId,n.slug)??null;return(0,Q.jsx)(Fe,{index:t,model:n,instanceId:n.instanceId,driverKind:n.driverKind,providerDisplayName:n.instanceDisplayName,providerAccentColor:n.instanceAccentColor,acpRegistryAgentId:n.acpRegistryAgentId,acpRegistryIconUrl:n.acpRegistryIconUrl,isFavorite:W.has(r(n.instanceId,n.slug)),isSelected:A===void 0?e===k:j.has(e),showSelection:A!==void 0,showProvider:!0,preferShortName:!J,useTriggerLabel:!1,showNewBadge:n.badge===`new`,unavailable:n.isUnavailable===!0,jumpLabel:qe.get(e)??null,disabledReason:i,onToggleFavorite:()=>me(n.instanceId,n.slug)},e)},estimatedItemSize:lt,drawDistance:480,recycleItems:!0,contentContainerClassName:`pl-2 pr-px`,ItemSeparatorComponent:ut,onLayout:We,onScroll:We,className:b(`scrollbar-gutter-stable h-full overflow-x-hidden overscroll-y-contain py-1.5 [&::-webkit-scrollbar-track]:my-2`,ae({top:h,bottom:_}))})})}),we.length>0?(0,Q.jsx)(`div`,{className:`max-h-44 shrink-0 overflow-y-auto border-t border-border/70 p-2`,children:we.map(t=>(0,Q.jsxs)(`div`,{className:`px-1 py-1.5 text-xs leading-snug`,children:[(0,Q.jsx)(`p`,{className:`line-clamp-3 text-muted-foreground`,children:Ze(t.snapshot)}),(0,Q.jsx)(y,{className:`mt-1`,onClick:()=>{e.onRequestClose?.(),e.onOpenProviderSetup?.(t.instanceId)},children:we.length>1?`Set up ${t.displayName}`:`Open provider setup`})]},t.instanceId))}):(0,Q.jsx)(te,{className:`empty:h-0`,children:`No models found`}),Te.map(({instanceId:t,notice:n})=>(0,Q.jsxs)(`p`,{className:`shrink-0 border-t border-border/70 px-3 py-2 text-xs leading-snug text-muted-foreground`,children:[n,` `,(0,Q.jsx)(y,{onClick:()=>{e.onRequestClose?.(),pe({to:`/settings/providers`})},children:`Provider settings`})]},t))]})})]})})});function ft(e){let t=(0,be.c)(1),{provider:n}=e;if(!Y(n))return null;let r;return t[0]===Symbol.for(`react.memo_cache_sentinel`)?(r=(0,Q.jsxs)(`div`,{className:`flex items-center justify-between gap-4 border-t px-3 py-2`,children:[(0,Q.jsxs)(`span`,{className:`flex items-center gap-2 text-xs text-muted-foreground`,children:[(0,Q.jsx)(de,{className:`size-3.5`,"aria-hidden":`true`}),`Using ChatGPT plan`]}),(0,Q.jsx)(J,{size:`xs`})]}),t[0]=r):r=t[0],r}var pt=(0,Z.memo)(function(e){let t=(0,be.c)(119),n=v(),[r,i]=(0,Z.useState)(!1),a=e.open??r,o=e.size??`sm`,[c,l]=(0,Z.useState)(!1),u=(0,Z.useRef)(null),d=(0,Z.useRef)(!!e.renderSettings),m;t[0]!==a||t[1]!==e?(m=()=>{let t=d.current&&!e.renderSettings;d.current=!!e.renderSettings,a&&t&&(l(!1),e.onOpenChange?.(!1),e.open===void 0&&i(!1))},t[0]=a,t[1]=e,t[2]=m):m=t[2];let h;t[3]!==a||t[4]!==e.onOpenChange||t[5]!==e.open||t[6]!==e.renderSettings?(h=[a,e.renderSettings,e.onOpenChange,e.open],t[3]=a,t[4]=e.onOpenChange,t[5]=e.open,t[6]=e.renderSettings,t[7]=h):h=t[7],(0,Z.useLayoutEffect)(m,h);let g,y;t[8]!==a||t[9]!==c?(g=()=>{a&&!c&&u.current?.querySelector(`[data-composer-model-settings] button:not(:disabled)`)?.focus({preventScroll:!0})},y=[a,c],t[8]=a,t[9]=c,t[10]=g,t[11]=y):(g=t[10],y=t[11]),(0,Z.useLayoutEffect)(g,y);let x;t[12]!==e.activeInstanceId||t[13]!==e.instanceEntries?(x=e.instanceEntries.find(t=>t.instanceId===e.activeInstanceId)??null,t[12]=e.activeInstanceId,t[13]=e.instanceEntries,t[14]=x):x=t[14];let C=x,w=e.activeInstanceId,T,E;if(t[15]!==C?.driverKind||t[16]!==w||t[17]!==e.model||t[18]!==e.modelOptionsByInstance){let n=e.modelOptionsByInstance.get(w)??[];T=it({driverKind:C?.driverKind,model:e.model,options:n})??(C?.driverKind===`opencode`||C?.driverKind===`antigravity`?void 0:n[0]),E=T?we(T):e.model===`antigravity-default`?`Choose model`:e.model||`Choose model`,t[15]=C?.driverKind,t[16]=w,t[17]=e.model,t[18]=e.modelOptionsByInstance,t[19]=T,t[20]=E}else T=t[19],E=t[20];let D=E,O;t[21]!==C||t[22]!==e.instanceEntries?(O=C!==null&&f(C,e.instanceEntries),t[21]=C,t[22]=e.instanceEntries,t[23]=O):O=t[23];let k=O,A;t[24]===e?A=t[25]:(A=t=>{t||l(!1),e.onOpenChange?.(t),e.open===void 0&&i(t)},t[24]=e,t[25]=A);let j=A,N,P;t[26]===a?(N=t[27],P=t[28]):(N=()=>{if(!a)return;let{documentElement:e,body:t}=document,n=e.style.overscrollBehavior,r=t.style.overflow,i=t.style.paddingRight,o=window.innerWidth-e.clientWidth;e.style.overscrollBehavior=`contain`,t.style.overflow=`hidden`,o>0&&(t.style.paddingRight=`${o}px`);let s=mt,c=e=>{s(e.target)||e.preventDefault()},l=e=>{s(e.target)||e.preventDefault()};return document.addEventListener(`wheel`,c,{capture:!0,passive:!1}),document.addEventListener(`touchmove`,l,{capture:!0,passive:!1}),()=>{document.removeEventListener(`wheel`,c,{capture:!0}),document.removeEventListener(`touchmove`,l,{capture:!0}),e.style.overscrollBehavior=n,t.style.overflow=r,t.style.paddingRight=i}},P=[a],t[26]=a,t[27]=N,t[28]=P),(0,Z.useEffect)(N,P);let F;t[29]!==e||t[30]!==j?(F=(t,n)=>{e.disabled||(e.onInstanceModelChange(t,n),e.renderSettings?l(!1):j(!1))},t[29]=e,t[30]=j,t[31]=F):F=t[31];let I=F,L,R,z,B,V,ee,te,ne,re;if(t[32]!==C||t[33]!==a||t[34]!==e.activeProviderIconClassName||t[35]!==e.compact||t[36]!==e.disabled||t[37]!==e.fastMode||t[38]!==e.instanceEntries||t[39]!==e.instanceIndicatorBackground||t[40]!==e.isComposerOwned||t[41]!==e.modelOptionsByInstance||t[42]!==e.renderSettings||t[43]!==e.selectedModels||t[44]!==e.triggerAriaLabel||t[45]!==e.triggerClassName||t[46]!==e.triggerLabel||t[47]!==j||t[48]!==k||t[49]!==o){B=e.selectedModels?.map(t=>{let n=e.instanceEntries.find(e=>e.instanceId===t.instanceId),r=it({driverKind:n?.driverKind,model:t.model,options:e.modelOptionsByInstance.get(t.instanceId)??[]});return{...t,entry:n,label:r?`${we(r)}${r.isUnavailable?` (Unavailable)`:``}`:t.model}}),z=B?B.length===0?`Choose models`:`${B.slice(0,2).map(ht).join(`, `)}${B.length>2?`, ${B.length-2} more`:``}`:void 0;let n=B?B.map(gt).join(`, `)||`Choose models`:void 0;R=me,ne=a,t[59]!==e.disabled||t[60]!==j?(re=t=>{if(e.disabled){j(!1);return}j(t)},t[59]=e.disabled,t[60]=j,t[61]=re):re=t[61],L=pe;let r=e.compact?`max-w-42 shrink-0`:!e.isComposerOwned&&`max-w-48 sm:max-w-56`,i;t[62]!==e.triggerClassName||t[63]!==r?(i=b(`min-w-0 shrink justify-between whitespace-nowrap`,r,e.triggerClassName),t[62]=e.triggerClassName,t[63]=r,t[64]=i):i=t[64],te=(0,Q.jsx)(S,{"aria-label":e.triggerAriaLabel??n,size:o,"data-chat-provider-model-picker":`true`,"data-composer-shortcut":e.renderSettings?`composer.effort`:void 0,className:i,disabled:e.disabled});let s=o===`xs`?`gap-1`:`gap-1.5`;t[65]===s?V=t[66]:(V=b(`flex min-w-0 flex-1 items-center`,s),t[65]=s,t[66]=V),ee=e.isComposerOwned?e.fastMode?(0,Q.jsx)(M,{"aria-hidden":!0,className:`size-4 fill-current text-foreground`}):null:B&&e.triggerLabel===void 0?(0,Q.jsxs)(`span`,{className:`flex shrink-0 items-center -space-x-1`,"aria-hidden":`true`,children:[B.slice(0,3).map(_t),B.length>3?(0,Q.jsxs)(`span`,{className:`relative z-30 flex size-4 items-center justify-center rounded-full bg-(--chat-composer-glass-surface,var(--background)) text-3xs ring-2 ring-(--chat-composer-glass-surface,var(--background))`,children:[`+`,B.length-3]}):null]}):C&&e.triggerLabel===void 0?(0,Q.jsx)(he,{driverKind:C.driverKind,displayName:C.displayName,accentColor:C.accentColor,acpRegistryAgentId:C.acpRegistryAgentId,acpRegistryIconUrl:C.acpRegistryIconUrl,showBadge:k,className:`size-4`,iconClassName:b(`size-4`,e.activeProviderIconClassName),indicatorBackground:e.instanceIndicatorBackground??`var(--contrast-input)`,badgeClassName:b(`right-[-0.125rem] bottom-[-0.125rem] h-3 min-w-3 px-0.5 text-5xs`,o===`xs`&&`shadow-none`)}):null,t[32]=C,t[33]=a,t[34]=e.activeProviderIconClassName,t[35]=e.compact,t[36]=e.disabled,t[37]=e.fastMode,t[38]=e.instanceEntries,t[39]=e.instanceIndicatorBackground,t[40]=e.isComposerOwned,t[41]=e.modelOptionsByInstance,t[42]=e.renderSettings,t[43]=e.selectedModels,t[44]=e.triggerAriaLabel,t[45]=e.triggerClassName,t[46]=e.triggerLabel,t[47]=j,t[48]=k,t[49]=o,t[50]=L,t[51]=R,t[52]=z,t[53]=B,t[54]=V,t[55]=ee,t[56]=te,t[57]=ne,t[58]=re}else L=t[50],R=t[51],z=t[52],B=t[53],V=t[54],ee=t[55],te=t[56],ne=t[57],re=t[58];let ie=e.triggerLabel??z??D,ae;t[67]===ie?ae=t[68]:(ae=(0,Q.jsx)(`span`,{className:`min-w-0 flex-1 truncate`,"data-chat-provider-model-picker-label":`true`,children:ie}),t[67]=ie,t[68]=ae);let se;t[69]===e.settingsLabel?se=t[70]:(se=e.settingsLabel?(0,Q.jsx)(`span`,{className:`shrink-0 font-normal text-muted-foreground`,children:e.settingsLabel}):null,t[69]=e.settingsLabel,t[70]=se);let ce;t[71]!==e.triggerLabel||t[72]!==B||t[73]!==T?.isUnavailable?(ce=T?.isUnavailable&&!B&&e.triggerLabel===void 0?(0,Q.jsx)(s,{variant:`outline`,size:`sm`,children:`Unavailable`}):null,t[71]=e.triggerLabel,t[72]=B,t[73]=T?.isUnavailable,t[74]=ce):ce=t[74];let le;t[75]!==V||t[76]!==ee||t[77]!==ae||t[78]!==se||t[79]!==ce?(le=(0,Q.jsxs)(`span`,{className:V,children:[ee,ae,se,ce]}),t[75]=V,t[76]=ee,t[77]=ae,t[78]=se,t[79]=ce,t[80]=le):le=t[80];let ue;t[81]===o?ue=t[82]:(ue=(0,Q.jsx)(`span`,{"aria-hidden":`true`,className:`flex items-center`,children:(0,Q.jsx)(p,{size:o})}),t[81]=o,t[82]=ue);let de;t[83]!==L||t[84]!==te||t[85]!==le||t[86]!==ue?(de=(0,Q.jsxs)(L,{render:te,children:[le,ue]}),t[83]=L,t[84]=te,t[85]=le,t[86]=ue,t[87]=de):de=t[87];let H;t[88]!==n||t[89]!==e.isComposerOwned?(H=e.isComposerOwned?n:{},t[88]=n,t[89]=e.isComposerOwned,t[90]=H):H=t[90];let U;t[91]!==e.renderSettings||t[92]!==c?(U=e.renderSettings?{width:c?360:288}:void 0,t[91]=e.renderSettings,t[92]=c,t[93]=U):U=t[93];let W=c?`models`:`settings`,G=e.renderSettings?c?`composer-models-enter`:`composer-effort-enter`:void 0,K;t[94]!==C?.snapshot||t[95]!==w||t[96]!==I||t[97]!==z||t[98]!==e||t[99]!==j||t[100]!==c||t[101]!==D?(K=e.renderSettings&&!c?e.renderSettings(z??D,()=>l(!0)):(0,Q.jsxs)(Q.Fragment,{children:[e.renderSettings?(0,Q.jsx)(`div`,{className:`px-2 pt-2`,children:(0,Q.jsxs)(_,{variant:`ghost-muted`,size:`sm`,onClick:()=>l(!1),children:[(0,Q.jsx)(ve,{}),` Model settings`]})}):null,(0,Q.jsx)(dt,{environmentId:e.environmentId,activeInstanceId:w,model:e.model,...e.selectedModels===void 0?{}:{selectedModels:e.selectedModels},...e.onToggleModel?{onToggleModel:(t,n)=>{e.disabled||e.onToggleModel?.(t,n)}}:{},lockedProvider:e.lockedProvider,lockedContinuationGroupKey:e.lockedContinuationGroupKey??null,instanceEntries:e.instanceEntries,...e.keybindings?{keybindings:e.keybindings}:{},modelOptionsByInstance:e.modelOptionsByInstance,terminalOpen:e.terminalOpen??!1,onRequestClose:()=>j(!1),...e.onOpenProviderSetup?{onOpenProviderSetup:e.onOpenProviderSetup}:{},...e.getModelDisabledReason?{getModelDisabledReason:e.getModelDisabledReason}:{},onInstanceModelChange:I}),e.selectedModels===void 0?(0,Q.jsx)(ft,{provider:C?.snapshot??null}):null]}),t[94]=C?.snapshot,t[95]=w,t[96]=I,t[97]=z,t[98]=e,t[99]=j,t[100]=c,t[101]=D,t[102]=K):K=t[102];let q;t[103]!==W||t[104]!==G||t[105]!==K?(q=(0,Q.jsx)(oe,{children:(0,Q.jsx)(`div`,{className:G,children:K},W)}),t[103]=W,t[104]=G,t[105]=K,t[106]=q):q=t[106];let J;t[107]!==U||t[108]!==q?(J=(0,Q.jsx)(`div`,{ref:u,className:`max-w-[calc(100vw-2rem)] transition-[width] duration-200 ease-out motion-reduce:transition-none`,style:U,children:q}),t[107]=U,t[108]=q,t[109]=J):J=t[109];let Y;t[110]!==H||t[111]!==J?(Y=(0,Q.jsx)(fe,{...H,align:`start`,className:`before:hidden`,padding:`none`,children:J}),t[110]=H,t[111]=J,t[112]=Y):Y=t[112];let ge;return t[113]!==R||t[114]!==ne||t[115]!==re||t[116]!==de||t[117]!==Y?(ge=(0,Q.jsxs)(R,{open:ne,onOpenChange:re,children:[de,Y]}),t[113]=R,t[114]=ne,t[115]=re,t[116]=de,t[117]=Y,t[118]=ge):ge=t[118],ge});function mt(e){return e instanceof Element&&e.closest(`[data-model-picker-content]`)}function ht(e){return e.label}function gt(e){return e.label}function _t(e){return e.entry?(0,Q.jsx)(he,{driverKind:e.entry.driverKind,displayName:e.entry.displayName,accentColor:e.entry.accentColor,className:`size-4 rounded-full bg-(--chat-composer-glass-surface,var(--background)) ring-2 ring-(--chat-composer-glass-surface,var(--background))`,iconClassName:`size-4`},`${e.instanceId}:${e.model}`):null}export{Xe as a,Je as i,it as n,Ye as o,Qe as r,we as s,pt as t};
|
|
2
|
+
//# sourceMappingURL=ProviderModelPicker-lxEwYGAB.js.map
|