@p4code/cli 0.8.18 → 0.8.20
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/bin.mjs +1 -1
- package/dist/{binCli-usgrWcNe.mjs → binCli-BU4pyUVV.mjs} +697 -479
- package/dist/client/.vite/manifest.json +2275 -2186
- package/dist/client/assets/AlertDialogRoot-CI-BT04n.js +2 -0
- package/dist/client/assets/{AnimatedHeight-CO3_zEQw.js → AnimatedHeight-B1LdeRxh.js} +2 -2
- package/dist/client/assets/{AuthSurfaceShell-BBPbK1uA.js → AuthSurfaceShell-Di1ASoMs.js} +2 -2
- package/dist/client/assets/{CSPContext-D8znCJtI.js → CSPContext-Bn8q5RdR.js} +2 -2
- package/dist/client/assets/{ChatGptUsageButton-Bda8Ir5S.js → ChatGptUsageButton-Ckccc0cE.js} +2 -2
- package/dist/client/assets/{ChatMarkdown-BS1t8pnS.js → ChatMarkdown-BHsOWwiC.js} +13 -13
- package/dist/client/assets/{CheckboxIndicator-D-KUEtIm.js → CheckboxIndicator-DUUgNp1r.js} +2 -2
- package/dist/client/assets/CodexSetupSection.logic-BbXZAyvp.js +2 -0
- package/dist/client/assets/{CollapsiblePanel-84e9KCIs.js → CollapsiblePanel-D1aZAbsh.js} +2 -2
- package/dist/client/assets/{ComboboxClear-FsZ2LcVw.js → ComboboxClear-CMNv82AR.js} +2 -2
- package/dist/client/assets/ComboboxGroupLabel-BqpdqndG.js +2 -0
- package/dist/client/assets/CommandBlock-Da6pXLt_.js +2 -0
- package/dist/client/assets/{ComposerPromptEditor-BGcYrFoa.js → ComposerPromptEditor-DxcWPWlA.js} +13 -13
- package/dist/client/assets/{CompositeRoot-fbPbFqqK.js → CompositeRoot-BP063J4d.js} +2 -2
- package/dist/client/assets/{ConnectionStatusDot-t_vHmaco.js → ConnectionStatusDot-DvalNlEr.js} +2 -2
- package/dist/client/assets/DevicePanel-DePWOu4d.js +2 -0
- package/dist/client/assets/DeviceSetup-BK7tjknq.js +2 -0
- package/dist/client/assets/{DialogTitle-DnR18OB7.js → DialogTitle-OaePW-Ih.js} +2 -2
- package/dist/client/assets/{DiffCommentAnnotation-Br9sOo_6.js → DiffCommentAnnotation-BzohZvIj.js} +2 -2
- package/dist/client/assets/DiffFileTree-OcbtQyxq.js +2 -0
- package/dist/client/assets/DiffPanel-BajglAZa.js +2 -0
- package/dist/client/assets/{DiffWorkerPoolProvider-DydpPFgM.js → DiffWorkerPoolProvider--30q2unm.js} +3 -3
- package/dist/client/assets/EmbeddedDesign-BcPI7zAV.js +19 -0
- package/dist/client/assets/{EmbeddedDesign-BsHZJ1Ch.css → EmbeddedDesign-DmybFtYo.css} +1 -1
- package/dist/client/assets/{EnvironmentMachineIcon-BMWCDR69.js → EnvironmentMachineIcon-DszKXxD_.js} +2 -2
- package/dist/client/assets/{ExpandableText-B6Dvgn62.js → ExpandableText-hoL-6ubc.js} +2 -2
- package/dist/client/assets/{FieldControl-CVOjReHh.js → FieldControl-DDVVfmpB.js} +2 -2
- package/dist/client/assets/{FileDiff-Dhyt7ZAJ.js → FileDiff-DSxfw81M.js} +2 -2
- package/dist/client/assets/FilePreviewPanel-jsWBRHEP.js +34 -0
- package/dist/client/assets/{FoldedSettingsSection-Clo0JgyS.js → FoldedSettingsSection-B66vyjYD.js} +2 -2
- package/dist/client/assets/{FormContext--axmNCbu.js → FormContext-B0PXExmu.js} +2 -2
- package/dist/client/assets/{Icons-BYSK3arN.js → Icons-CX6xNdVb.js} +2 -2
- package/dist/client/assets/Input-C7aWgRC_.js +2 -0
- package/dist/client/assets/{KeybindingsSettings.logic-30fwcukL.js → KeybindingsSettings.logic-6FRd2ilb.js} +2 -2
- package/dist/client/assets/NoProjectsHero-BJh2xTW2.js +2 -0
- package/dist/client/assets/{PanelLayoutControls-DL7sleZ-.js → PanelLayoutControls-BH9E0RgY.js} +10 -10
- package/dist/client/assets/{PierreEntryIcon-DKHnMJOl.js → PierreEntryIcon-DqZ3rsf9.js} +2 -2
- package/dist/client/assets/{PopoverHandle-C-e81PS3.js → PopoverHandle-DRjGw1Yt.js} +2 -2
- package/dist/client/assets/PreviewPanel-BvQZWo4y.js +2 -0
- package/dist/client/assets/ProjectDefaultsSettings-DpMGLYiX.js +2 -0
- package/dist/client/assets/ProjectFavicon-C3ZH51Lw.js +3 -0
- package/dist/client/assets/{ProjectIconPickerDialog-Bxa9i4w_.js → ProjectIconPickerDialog-R3JbSZVv.js} +2 -2
- package/dist/client/assets/{ProjectMonogram-CYD6eMbI.js → ProjectMonogram-IuYJI7zN.js} +2 -2
- package/dist/client/assets/{ProviderAuthTerminal-Cm88QElc.js → ProviderAuthTerminal-C-Y-b2Id.js} +2 -2
- package/dist/client/assets/ProviderModelPicker-DcDT2aJc.js +2 -0
- package/dist/client/assets/{ProviderSettingsForm-CLYzJJII.js → ProviderSettingsForm-CPtnly6g.js} +2 -2
- package/dist/client/assets/PullRequestCodeTab-CHzbe4Pg.js +6 -0
- package/dist/client/assets/{ReadOnlySourcePreview-D2Vkrzyc.js → ReadOnlySourcePreview-BdxBRo90.js} +2 -2
- package/dist/client/assets/RenderErrorBoundary-DOhJQzqI.js +2 -0
- package/dist/client/assets/ScheduledTasksSettings-BhwaQrJM.js +4 -0
- package/dist/client/assets/{ScopedSwitch-BrJEJr8I.js → ScopedSwitch--Y2Q_Dkg.js} +2 -2
- package/dist/client/assets/{ScrollAreaCorner-BYUnXNwJ.js → ScrollAreaCorner-Ck3L5tlH.js} +2 -2
- package/dist/client/assets/{SecretInput-CIbdWrQZ.js → SecretInput-UofV3Jxx.js} +2 -2
- package/dist/client/assets/{SelectScrollUpArrow-Cr4PrE_F.js → SelectScrollUpArrow-C_YHAw_f.js} +2 -2
- package/dist/client/assets/{SettingsPanels-B8q4OSW7.js → SettingsPanels-rRn3RxRM.js} +8 -8
- package/dist/client/assets/{SettingsPanels.logic-C5FkY28P.js → SettingsPanels.logic-CSbITXNG.js} +2 -2
- package/dist/client/assets/SettingsScopeNotice-B7r3-bw2.js +2 -0
- package/dist/client/assets/{T3ConnectAccountPages-DDSM7QWS.js → T3ConnectAccountPages-CZ221lRl.js} +2 -2
- package/dist/client/assets/{T3ConnectSidebarSignIn-GnkVas23.js → T3ConnectSidebarSignIn-pHxwsU9J.js} +2 -2
- package/dist/client/assets/ThemeEditorPanel-BRKQI9pP.js +5 -0
- package/dist/client/assets/{ThreadTerminalDrawer-4huAp-uS.js → ThreadTerminalDrawer-CYuLsPbc.js} +4 -4
- package/dist/client/assets/TooltipViewport-B_Oz-gLq.js +2 -0
- package/dist/client/assets/{Virtualizer-DjBOkz4F.js → Virtualizer-ChNeVtXh.js} +2 -2
- package/dist/client/assets/{WorkspaceBreadcrumb-ClxInGsT.js → WorkspaceBreadcrumb-CpHuVRke.js} +2 -2
- package/dist/client/assets/{WorkspacePageContainer-DwN_ETF0.js → WorkspacePageContainer-BQ0Bk5Qy.js} +2 -2
- package/dist/client/assets/{WorkspacePageHeader-BvKCy7v2.js → WorkspacePageHeader-Cx1gpU1l.js} +2 -2
- package/dist/client/assets/{_chat-C2VZmKVT.js → _chat-BNr1JB8N.js} +34 -34
- package/dist/client/assets/_chat.index-CGo_2dVK.js +2 -0
- package/dist/client/assets/_chat.new-B8h0E9bY.js +4 -0
- package/dist/client/assets/_chat.pull-requests-C9e5UJiQ.js +2 -0
- package/dist/client/assets/{abnfDiagram-VCTEODGH-Cv0dw1u8.js → abnfDiagram-VCTEODGH-BewL_eNL.js} +2 -2
- package/dist/client/assets/{alert-DYmkyE3l.js → alert-CNni4aGm.js} +2 -2
- package/dist/client/assets/architecture-7GRP2DOG-DB68MNLl.js +1 -0
- package/dist/client/assets/{architectureDiagram-5GKGNRK7-BvQMjhmC.js → architectureDiagram-5GKGNRK7-C9j-xrz2.js} +2 -2
- package/dist/client/assets/{assets-COg7jyyX.js → assets-Co5XIu-W.js} +2 -2
- package/dist/client/assets/{blockDiagram-I7D4REHJ-DR7f58YJ.js → blockDiagram-I7D4REHJ-DSaqyAe3.js} +2 -2
- package/dist/client/assets/browserHistoryStore-C3MIb5y-.js +2 -0
- package/dist/client/assets/{browserLinkTarget-Bp-zUm0R.js → browserLinkTarget-B0Nl9z4y.js} +2 -2
- package/dist/client/assets/{c4Diagram-7LVT6UL2-zgFjNACn.js → c4Diagram-7LVT6UL2-DCgzKaRE.js} +2 -2
- package/dist/client/assets/channel-C9_T9oRs.js +2 -0
- package/dist/client/assets/{checkbox-brLYzznm.js → checkbox-BpAfakhx.js} +2 -2
- package/dist/client/assets/{chunk-4HAMMTFA-Q6ZY3Aj6.js → chunk-4HAMMTFA-DstDTNNT.js} +2 -2
- package/dist/client/assets/{chunk-75Z2AOVW-Dv4NtCmQ.js → chunk-75Z2AOVW-Dz-DtxrH.js} +2 -2
- package/dist/client/assets/{chunk-DU6HZSFF-D-pyRDMG.js → chunk-DU6HZSFF-Ll_1n6K5.js} +2 -2
- package/dist/client/assets/{chunk-F27PBJKO-BOXrNdwG.js → chunk-F27PBJKO-BhJS5B0M.js} +2 -2
- package/dist/client/assets/{chunk-GMAD6QVW-uYd_Q5lX.js → chunk-GMAD6QVW-YF2_U_Rb.js} +2 -2
- package/dist/client/assets/{chunk-GVQU2GXP-C3aAR6o_.js → chunk-GVQU2GXP-VQA2Ub_O.js} +2 -2
- package/dist/client/assets/{chunk-IMKFNOWR-CbCHd80E.js → chunk-IMKFNOWR-CUKSWZZL.js} +2 -2
- package/dist/client/assets/{chunk-L3NEJ4N5-B5jDlsms.js → chunk-L3NEJ4N5-B1mYJGkp.js} +2 -2
- package/dist/client/assets/{chunk-OSK3NFVY-DgNZQb8q.js → chunk-OSK3NFVY-DeMda-I1.js} +2 -2
- package/dist/client/assets/{chunk-P2QGCYS3-ptp4LKHi.js → chunk-P2QGCYS3-Cw7ng-Rc.js} +2 -2
- package/dist/client/assets/{chunk-POPQ4Y6H-CRBmOW8B.js → chunk-POPQ4Y6H-UV50oooU.js} +2 -2
- package/dist/client/assets/{chunk-PWAF6VOD-DHkc8IcS.js → chunk-PWAF6VOD-DN41TR2O.js} +2 -2
- package/dist/client/assets/{chunk-SHT3W25Y-B5XMb9ST.js → chunk-SHT3W25Y-wined05I.js} +2 -2
- package/dist/client/assets/{chunk-SVP7TREG-Lt0ZENIq.js → chunk-SVP7TREG-Cwfsds3m.js} +2 -2
- package/dist/client/assets/{chunk-TICWLB2K-BhZt3DVX.js → chunk-TICWLB2K-COhBRrwy.js} +2 -2
- package/dist/client/assets/classDiagram-ZZMXUADV-DKnt792Z.js +2 -0
- package/dist/client/assets/classDiagram-v2-VYDZK3BY-DKnt792Z.js +2 -0
- package/dist/client/assets/{color-picker-D7d1go0g.js → color-picker-KVitc2gM.js} +2 -2
- package/dist/client/assets/{combobox-DSVavlIH.js → combobox-DiUoVqyf.js} +2 -2
- package/dist/client/assets/command-CMR1n6Uf.js +2 -0
- package/dist/client/assets/composer-logic-BcXfvdPq.js +6 -0
- package/dist/client/assets/composerDraftUploads-CDI8NeKM.js +2 -0
- package/dist/client/assets/{connect-C39BhZ-c.js → connect-BmEDcR9c.js} +2 -2
- package/dist/client/assets/{connect-agent-Dj_Cfdx6.js → connect-agent-CfaBrLrx.js} +2 -2
- package/dist/client/assets/{cynefin-OW5HDTMX-CNKdS-0M.js → cynefin-OW5HDTMX-NISsUCRb.js} +1 -1
- package/dist/client/assets/{cynefinDiagram-5FMLGOSQ-CoFxzJSW.js → cynefinDiagram-5FMLGOSQ-CcmIsbpK.js} +2 -2
- package/dist/client/assets/{dagre-GXQ25YYZ-q0omC4bc.js → dagre-GXQ25YYZ-UITp4lya.js} +2 -2
- package/dist/client/assets/design-C4-KEBUo.js +2 -0
- package/dist/client/assets/{device-CWgOLpbF.js → device-BcFks_r6.js} +2 -2
- package/dist/client/assets/{diagram-S7CK7UJ4-CdFkGs_B.js → diagram-S7CK7UJ4-DGjl3T82.js} +2 -2
- package/dist/client/assets/{diagram-UQ7AKVKN-B0KtokqT.js → diagram-UQ7AKVKN-CXGDugDN.js} +2 -2
- package/dist/client/assets/{diagram-VSXAHHWV-DjtTeImL.js → diagram-VSXAHHWV-ClIfV-Eb.js} +2 -2
- package/dist/client/assets/{diagram-VX7I27RA-DRYLlkkf.js → diagram-VX7I27RA-CcyEAXBh.js} +2 -2
- package/dist/client/assets/{diagram-Z3DM3KII-C-x2EfL6.js → diagram-Z3DM3KII-B4b4azfJ.js} +2 -2
- package/dist/client/assets/{dialog-DYFQxVoN.js → dialog-D--IO2tX.js} +2 -2
- package/dist/client/assets/{diffRendering-6DuM2rGF.js → diffRendering-CCO51SHu.js} +2 -2
- package/dist/client/assets/{discovery-list-BvblDG7m.js → discovery-list-E9mW3ie9.js} +2 -2
- package/dist/client/assets/{dist-CkgAUeqn.js → dist-BUfo2bac.js} +3 -3
- package/dist/client/assets/{draft-input-27erQjx_.js → draft-input-BqhTvFTz.js} +2 -2
- package/dist/client/assets/{duoViewer-CBnLVCTt.js → duoViewer-DrRt1X-q.js} +2 -2
- package/dist/client/assets/{dynamic-Cjr9H8t4.js → dynamic-BHunf18B.js} +3 -3
- package/dist/client/assets/{ebnfDiagram-PWID7BFC-UISo4OT-.js → ebnfDiagram-PWID7BFC-C4BXGn4k.js} +2 -2
- package/dist/client/assets/{embeddedScripts-Dr-tOtuJ.js → embeddedScripts-3mOBT50V.js} +2 -2
- package/dist/client/assets/{empty-2jxBvPLn.js → empty-IIGW45Hv.js} +2 -2
- package/dist/client/assets/{entities-DCbEYTvn.js → entities-ByTmol1p.js} +2 -2
- package/dist/client/assets/{erDiagram-RLTQ6QDP-CeWlUdOf.js → erDiagram-RLTQ6QDP-DCS17tz_.js} +2 -2
- package/dist/client/assets/eventmodeling-NTZA5JFV-DnLkFrkm.js +1 -0
- package/dist/client/assets/{fileLinks-5NSgRKPU.js → fileLinks-Xjn6JEGT.js} +2 -2
- package/dist/client/assets/{fileTreeExpansion-CA6c4E3-.js → fileTreeExpansion-tsD7A-Z5.js} +2 -2
- package/dist/client/assets/flowDiagram-HODETNUW-BFbQWgza.js +1 -0
- package/dist/client/assets/{ganttDiagram-EL5Y4UJY-KPPMvqNL.js → ganttDiagram-EL5Y4UJY-BGFtO7uE.js} +2 -2
- package/dist/client/assets/{getDiffFileInput-CuM1lgsL.js → getDiffFileInput-DFWDPe9O.js} +2 -2
- package/dist/client/assets/git-compare-DW_c6fci.js +2 -0
- package/dist/client/assets/{gitGraph-4MIJSDKK-BGSFaZro.js → gitGraph-4MIJSDKK-DZeZydG5.js} +1 -1
- package/dist/client/assets/{gitGraphDiagram-WWUBYQGX-CwYf9r63.js → gitGraphDiagram-WWUBYQGX-3uL4kQuc.js} +2 -2
- package/dist/client/assets/{guideRunStore-B3Y6e_nf.js → guideRunStore-CGkdBBWi.js} +2 -2
- package/dist/client/assets/{htmlRender-BaqdfJ6m.js → htmlRender-n-z4ejOb.js} +2 -2
- package/dist/client/assets/{index-DmPPPGJb.js → index-CB8eLeeR.js} +3 -3
- package/dist/client/assets/{info-A6RAGUB7-C831OtOR.js → info-A6RAGUB7-C3L7Iy2t.js} +1 -1
- package/dist/client/assets/{infoDiagram-27XIBGKW-DVstIW76.js → infoDiagram-27XIBGKW-B8XmKHVk.js} +2 -2
- package/dist/client/assets/{input-83N8btBC.js → input-DX_wpYEr.js} +2 -2
- package/dist/client/assets/{input-group-Q757vhrD.js → input-group-B7App4HX.js} +2 -2
- package/dist/client/assets/{ishikawaDiagram-5VMMS53U-CJq0N-AL.js → ishikawaDiagram-5VMMS53U-DqYb5ghg.js} +2 -2
- package/dist/client/assets/{journeyDiagram-3NMN7TZE-D76KCD6f.js → journeyDiagram-3NMN7TZE-f4xls24M.js} +2 -2
- package/dist/client/assets/{kanban-definition-UXKFOSKX-D1kzRMIP.js → kanban-definition-UXKFOSKX-C4hiNifc.js} +2 -2
- package/dist/client/assets/{kbd-D8UfTN0o.js → kbd-CBsCsK1C.js} +2 -2
- package/dist/client/assets/{keybindings-DLDyoB30.js → keybindings-DQLn36Qh.js} +2 -2
- package/dist/client/assets/layout-grid-CCkPw5ih.js +2 -0
- package/dist/client/assets/{lazyRouteComponent-BCGAjyjO.js → lazyRouteComponent-F8XJwdjp.js} +2 -2
- package/dist/client/assets/{line-QHGhF6Vm.js → line-CAwl86yA.js} +2 -2
- package/dist/client/assets/{link-Bgj44djS.js → link-Dsk-mMeT.js} +2 -2
- package/dist/client/assets/{linkedPrompt-D1aW6nV5.js → linkedPrompt-D3xnUYyG.js} +2 -2
- package/dist/client/assets/main-B3UqEpE9.css +2 -0
- package/dist/client/assets/main-DzuY7nUi.js +26 -0
- package/dist/client/assets/{mediaReference-CQtke4j3.js → mediaReference-DFBMieZe.js} +2 -2
- package/dist/client/assets/{mediaSource-CI2bKK3n.js → mediaSource-DwE2MD82.js} +2 -2
- package/dist/client/assets/{mermaid-parser.core-Brqe55KM.js → mermaid-parser.core-CQTH3UnZ.js} +4 -4
- package/dist/client/assets/{mermaid.core-Cdl6aiT5.js → mermaid.core-D6j4Oepc.js} +5 -5
- package/dist/client/assets/{mindmap-definition-YA3MSWOX-CcdCCRbd.js → mindmap-definition-YA3MSWOX-mUjULOXx.js} +2 -2
- package/dist/client/assets/{number-field-DQIrEOoj.js → number-field-CO0djGoZ.js} +2 -2
- package/dist/client/assets/{observeResize-BaPAtI3Q.js → observeResize-DnTxIA8M.js} +2 -2
- package/dist/client/assets/{onboarding-ObMsA9VF.js → onboarding-BWsXQF-8.js} +2 -2
- package/dist/client/assets/{openFileInPreview-CdBR5kuZ.js → openFileInPreview-BjXtA6rm.js} +2 -2
- package/dist/client/assets/{p4ProjectFile--u7SOSK5.js → p4ProjectFile-Cit38tzd.js} +2 -2
- package/dist/client/assets/{packet-AYTQ26CC-BSuHbq7S.js → packet-AYTQ26CC-B6oJlnoT.js} +1 -1
- package/dist/client/assets/{pair-C11lrlzi.js → pair-BOAY3H4W.js} +2 -2
- package/dist/client/assets/{pegDiagram-XKGWAZYB-Iy9neoGN.js → pegDiagram-XKGWAZYB-MKsaJe-e.js} +2 -2
- package/dist/client/assets/{phoneViewer-iqsNqM8D.js → phoneViewer-DhI2RNKg.js} +2 -2
- package/dist/client/assets/{pie-WAS4IAKB-BlC5Ctcv.js → pie-WAS4IAKB-CVr4vbdT.js} +1 -1
- package/dist/client/assets/{pieDiagram-E7YTZNPT-CtVgATJF.js → pieDiagram-E7YTZNPT-CU60SxBF.js} +2 -2
- package/dist/client/assets/{pierre-icons-fSsw9aa-.js → pierre-icons-B278VAke.js} +2 -2
- package/dist/client/assets/{popover-B1MF5i1c.js → popover-BJ6nvlLO.js} +2 -2
- package/dist/client/assets/{preview-DwLWkMZG.js → preview-BPE4Ptwy.js} +2 -2
- package/dist/client/assets/{preview-ITad1JAy.js → preview-Cf8NQ1hB.js} +2 -2
- package/dist/client/assets/{previewMiniPlayerStore-DN-AYBed.js → previewMiniPlayerStore-C-S6Z_7R.js} +2 -2
- package/dist/client/assets/{primary-8A8hvHFL.js → primary-C8ChofNZ.js} +2 -2
- package/dist/client/assets/primaryCloudLinkState-CC_tdVXQ.js +2 -0
- package/dist/client/assets/{projectFilesQueryState-CGllQp_V.js → projectFilesQueryState-Btmth-fd.js} +2 -2
- package/dist/client/assets/{projectScriptEditor-DwqFzld2.js → projectScriptEditor-jVLgvupi.js} +2 -2
- package/dist/client/assets/providerSkills-CQC96ZMr.js +2 -0
- package/dist/client/assets/{pullRequestDetail.logic-CkxKh0fV.js → pullRequestDetail.logic-CM8xaqJx.js} +2 -2
- package/dist/client/assets/{pullRequestIcons-CSZus-cz.js → pullRequestIcons-BjW5TUsG.js} +2 -2
- package/dist/client/assets/{pullRequestReviewStore-78f71w6J.js → pullRequestReviewStore-CfDcNEFp.js} +2 -2
- package/dist/client/assets/pullRequests-BhR0uCs5.js +2 -0
- package/dist/client/assets/{quadrantDiagram-AXDQQJYC-kq18RP_F.js → quadrantDiagram-AXDQQJYC-YO_Vicsa.js} +2 -2
- package/dist/client/assets/{queries-DCKH7ltg.js → queries-BEkNnQZg.js} +2 -2
- package/dist/client/assets/{query-B1uAr_ii.js → query-MZn8giyP.js} +2 -2
- package/dist/client/assets/{radar-RG4KPBEZ-Cbkq33o2.js → radar-RG4KPBEZ-C7MHhieK.js} +1 -1
- package/dist/client/assets/{radio-group-CFJMQH66.js → radio-group-Ca6IMyWa.js} +2 -2
- package/dist/client/assets/{railroad-74A4TZTK-Ba3TZ4Wg.js → railroad-74A4TZTK-SZuHkN8h.js} +1 -1
- package/dist/client/assets/railroad-abnf-HS5TGJTU-DrVmy01m.js +1 -0
- package/dist/client/assets/railroad-ebnf-LZEXJU2U-BcPn9yic.js +1 -0
- package/dist/client/assets/railroad-peg-WCYAUIDC-Dv1rvzCW.js +1 -0
- package/dist/client/assets/{railroadDiagram-O6MQD6OU-BfOnyiaT.js → railroadDiagram-O6MQD6OU-Da7fqGWf.js} +2 -2
- package/dist/client/assets/{renderScheduler-CcWhS7Yq.js → renderScheduler-lUltsq6V.js} +2 -2
- package/dist/client/assets/{requirementDiagram-BXWQKSXE-DFzAGiJp.js → requirementDiagram-BXWQKSXE-i46-nz91.js} +2 -2
- package/dist/client/assets/{rightPanelStore-DfMWWfvR.js → rightPanelStore-UcehuwgS.js} +2 -2
- package/dist/client/assets/{runtime-B9IDNXDU.js → runtime-BunkcrGh.js} +3 -3
- package/dist/client/assets/runtime-DTzyj6T4.js +2 -0
- package/dist/client/assets/{runtimeModeConfig-C3TbI2qR.js → runtimeModeConfig-CTQ97M7F.js} +2 -2
- package/dist/client/assets/{sankeyDiagram-P5KCCOFB-D9gFGibV.js → sankeyDiagram-P5KCCOFB-CZzNX2hl.js} +2 -2
- package/dist/client/assets/{scheduledTasksSettings.logic-DVbZRIYJ.js → scheduledTasksSettings.logic-CkbvhKba.js} +2 -2
- package/dist/client/assets/{scroll-area-DGS0jgnh.js → scroll-area-BStafc_O.js} +2 -2
- package/dist/client/assets/{select-Dsx46akG.js → select-BIK-KVyd.js} +2 -2
- package/dist/client/assets/{sequenceDiagram-WJ2MYXX4-C9pRaNT5.js → sequenceDiagram-WJ2MYXX4-32aHdDFl.js} +2 -2
- package/dist/client/assets/{server-CoH7V4JL.js → server-COuN0pwg.js} +2 -2
- package/dist/client/assets/{session-logic-C4wGF3_E.js → session-logic-CqRiME2K.js} +2 -2
- package/dist/client/assets/{session-Bo2ZSprC.js → session-seR2OUj0.js} +2 -2
- package/dist/client/assets/settings-CiPM9fHt.js +2 -0
- package/dist/client/assets/{settings.appearance-6ktu9wdJ.js → settings.appearance-B91nMGep.js} +2 -2
- package/dist/client/assets/settings.archived-CucIYN3P.js +2 -0
- package/dist/client/assets/{settings.computer-use-C24sO93u.js → settings.computer-use-eCFCpqRb.js} +2 -2
- package/dist/client/assets/settings.connections-C-yLB0Yr.js +2 -0
- package/dist/client/assets/settings.data-controls-BGHuOOAF.js +2 -0
- package/dist/client/assets/{settings.decisions-kar2kv7T.js → settings.decisions-DbzSG84P.js} +2 -2
- package/dist/client/assets/settings.designs-DzW0uzhe.js +2 -0
- package/dist/client/assets/settings.diagnostics-Vw2M9wTQ.js +2 -0
- package/dist/client/assets/{settings.general-C1zsJgwK.js → settings.general-CfY4GAoq.js} +2 -2
- package/dist/client/assets/settings.integrations-C0hzJpnr.js +2 -0
- package/dist/client/assets/{settings.keybindings-CYcsJ6DQ.js → settings.keybindings-QcHgKHxE.js} +2 -2
- package/dist/client/assets/{settings.open-source-licenses-DnBHlZE2.js → settings.open-source-licenses-CVPaYBdL.js} +2 -2
- package/dist/client/assets/settings.plugins-Db2nz9n9.js +5 -0
- package/dist/client/assets/settings.projects-Bxf_7lyF.js +4 -0
- package/dist/client/assets/settings.providers-XFKxTM8C.js +3 -0
- package/dist/client/assets/{settings.scheduled-tasks-Bf37L1OK.js → settings.scheduled-tasks-B7OyO0sP.js} +2 -2
- package/dist/client/assets/settings.snap-shot-BabiAbdd.js +2 -0
- package/dist/client/assets/settings.source-control-BKphaihu.js +2 -0
- package/dist/client/assets/{settings.storage-DmbTXujz.js → settings.storage-CUhQEKB5.js} +2 -2
- package/dist/client/assets/settingsLayout-BNfRQ-bS.js +3 -0
- package/dist/client/assets/sidebar-CilourkR.js +2 -0
- package/dist/client/assets/{sidebarProjectGrouping-DrnsFA8t.js → sidebarProjectGrouping-BVhK5qEe.js} +2 -2
- package/dist/client/assets/{skeleton-0mC3wMw1.js → skeleton-DoQ8WJ33.js} +2 -2
- package/dist/client/assets/{sourceControl-D6TEHNpa.js → sourceControl-CZSeEF87.js} +2 -2
- package/dist/client/assets/sourceControlClients-gLUbjqCT.js +2 -0
- package/dist/client/assets/{spinner-DHOdl-gn.js → spinner-dBHTxMdw.js} +2 -2
- package/dist/client/assets/{standalone-page-Dx8vGwaJ.js → standalone-page-7u6OMfTi.js} +2 -2
- package/dist/client/assets/{stateDiagram-D77RDMKH-D8n56CID.js → stateDiagram-D77RDMKH-DzKAnfb5.js} +2 -2
- package/dist/client/assets/stateDiagram-v2-MP3YSRHH-B8R9PPf1.js +2 -0
- package/dist/client/assets/{swimlanes-42K2YHIH-DZZct2ih.js → swimlanes-42K2YHIH-CQb8er0I.js} +2 -2
- package/dist/client/assets/swimlanesDiagram-VR7AAH4N-CM0Ncs1m.js +9 -0
- package/dist/client/assets/{terminal-links-Di9Ijg8X.js → terminal-links-DaTgSxq7.js} +2 -2
- package/dist/client/assets/{terminalSessions-B8EDcX8b.js → terminalSessions-DijGQOOD.js} +2 -2
- package/dist/client/assets/{textarea-BvPoR1cI.js → textarea-DyCJe8OO.js} +2 -2
- package/dist/client/assets/{themePalette-zFOiBKDi.js → themePalette-mGukKeaJ.js} +2 -2
- package/dist/client/assets/threadSort-Bd2rijEy.js +2 -0
- package/dist/client/assets/{timeline-definition-24CTP7MA-BGfuRztb.js → timeline-definition-24CTP7MA-DznrmSZM.js} +2 -2
- package/dist/client/assets/toast-WpVvhflo.js +2 -0
- package/dist/client/assets/{toggle-DeCGfzT2.js → toggle-C4iGKTHY.js} +2 -2
- package/dist/client/assets/{toggle-group-DekLc0Ax.js → toggle-group-CM-lVPv_.js} +2 -2
- package/dist/client/assets/tooltip-C85X81rS.js +2 -0
- package/dist/client/assets/{treeView-Q6P3EWNA-BPM2x-ME.js → treeView-Q6P3EWNA-ChE0E3HR.js} +1 -1
- package/dist/client/assets/{treemap-WGGIJYW6-sku0fChI.js → treemap-WGGIJYW6-BzvvYy-b.js} +1 -1
- package/dist/client/assets/uiStateStore-DGq3v0QD.js +6 -0
- package/dist/client/assets/usage-B75rDU8q.js +2 -0
- package/dist/client/assets/{usageAccess-BGb3m0YV.js → usageAccess-BS7RH41F.js} +2 -2
- package/dist/client/assets/{usageFormat-H-RgZ0fy.js → usageFormat-neDCKBUu.js} +2 -2
- package/dist/client/assets/{usageShortcuts-C320W17X.js → usageShortcuts-BXE7khxl.js} +2 -2
- package/dist/client/assets/{use-atom-command-GpCw1tWF.js → use-atom-command-6Jnx7WG6.js} +2 -2
- package/dist/client/assets/{useAriaLabelledBy-C8nSWyQ9.js → useAriaLabelledBy-0jbiz1G5.js} +2 -2
- package/dist/client/assets/{useHandleNewThread-FJLPEfoH.js → useHandleNewThread-ot_mP7L5.js} +2 -2
- package/dist/client/assets/{useLocation-Ccsih1eo.js → useLocation-CEeuom34.js} +2 -2
- package/dist/client/assets/useNavigate-B5WzUZJ7.js +2 -0
- package/dist/client/assets/{useNavigateBack-PnWVFtkU.js → useNavigateBack-B1hKrkap.js} +2 -2
- package/dist/client/assets/{useParams-CoeDewwU.js → useParams-DPNRViD9.js} +2 -2
- package/dist/client/assets/{usePermissionStatus-mBtsOu9K.js → usePermissionStatus-DhHAmOgT.js} +2 -2
- package/dist/client/assets/usePullRequestActions-CC8iuW6L.js +3 -0
- package/dist/client/assets/{useRegisterFieldControl-9rSmWR2W.js → useRegisterFieldControl-DHg4qk95.js} +2 -2
- package/dist/client/assets/useScopedModelAvailability-AfE61RiJ.js +2 -0
- package/dist/client/assets/useSettings-Dr8XPXiN.js +3 -0
- package/dist/client/assets/{useT3ConnectAuthPrompt-ZyPZIXm7.js → useT3ConnectAuthPrompt-CVbTUWTC.js} +2 -2
- package/dist/client/assets/utils-ChK8VEFC.js +37 -0
- package/dist/client/assets/{vcsRefInvalidation-DfCz0cGO.js → vcsRefInvalidation-4ukX8s_d.js} +2 -2
- package/dist/client/assets/{vennDiagram-4TSXK5OY-CjhblZp4.js → vennDiagram-4TSXK5OY-B7LoDpFP.js} +2 -2
- package/dist/client/assets/{wardley-WFR3VGLG-Cuf_pn9-.js → wardley-WFR3VGLG-BGtlW2Xe.js} +1 -1
- package/dist/client/assets/{wardleyDiagram-VM6X3IG4-CMQ-_cYv.js → wardleyDiagram-VM6X3IG4-BFhvdWVx.js} +2 -2
- package/dist/client/assets/welcome-B_CtEQwh.js +2 -0
- package/dist/client/assets/{xychartDiagram-S5SC5T6Z-BlCqmJgA.js → xychartDiagram-S5SC5T6Z-CEb-52Rm.js} +2 -2
- package/dist/client/index.html +1 -1
- package/dist/{renderer-7OJ6c0Me.mjs → renderer-5lNN05tA.mjs} +2 -2
- package/dist/{runtime-BHqdsO3Y.mjs → runtime-BuR0otfT.mjs} +135 -55
- package/package.json +1 -1
- package/dist/client/assets/AlertDialogRoot-D6ed6zQR.js +0 -2
- package/dist/client/assets/CodexSetupSection.logic-Ed9SDkqP.js +0 -2
- package/dist/client/assets/CommandBlock-C7ASE_F_.js +0 -2
- package/dist/client/assets/DevicePanel-CS1FTu-C.js +0 -2
- package/dist/client/assets/DeviceSetup-DZAK0_tm.js +0 -2
- package/dist/client/assets/DiffFileTree-DkLJXYZf.js +0 -2
- package/dist/client/assets/DiffPanel-CGV12wM6.js +0 -2
- package/dist/client/assets/EmbeddedDesign--Xz14U92.js +0 -19
- package/dist/client/assets/FilePreviewPanel-8tUtMikb.js +0 -34
- package/dist/client/assets/Input-CVwvVqbx.js +0 -2
- package/dist/client/assets/NoProjectsHero-Lsb9cuvO.js +0 -2
- package/dist/client/assets/PreviewPanel-DmaoFTEA.js +0 -2
- package/dist/client/assets/ProjectDefaultsSettings-CrKY01_P.js +0 -2
- package/dist/client/assets/ProjectFavicon-B5C6TpKj.js +0 -3
- package/dist/client/assets/ProviderModelPicker-CeB11O3P.js +0 -2
- package/dist/client/assets/PullRequestCodeTab-BqH4glgo.js +0 -6
- package/dist/client/assets/RenderErrorBoundary-BgOA8qma.js +0 -2
- package/dist/client/assets/ScheduledTasksSettings-BMQ-_Rms.js +0 -4
- package/dist/client/assets/SettingsScopeNotice-_WSLtOW4.js +0 -2
- package/dist/client/assets/ThemeEditorPanel-DB8D5_6u.js +0 -5
- package/dist/client/assets/TooltipViewport-kqulS2nz.js +0 -2
- package/dist/client/assets/_chat.index-CQSbFMBa.js +0 -2
- package/dist/client/assets/_chat.new-BxObe9FX.js +0 -4
- package/dist/client/assets/_chat.pull-requests-JS9EZDI7.js +0 -2
- package/dist/client/assets/architecture-7GRP2DOG-Dd1d-ckm.js +0 -1
- package/dist/client/assets/browserHistoryStore-_SurQa0e.js +0 -2
- package/dist/client/assets/channel-Dsne2IjR.js +0 -2
- package/dist/client/assets/classDiagram-ZZMXUADV-Dazl0CLN.js +0 -2
- package/dist/client/assets/classDiagram-v2-VYDZK3BY-Dazl0CLN.js +0 -2
- package/dist/client/assets/command-DsE3Ju6m.js +0 -2
- package/dist/client/assets/environments-iW64jjyO.js +0 -2
- package/dist/client/assets/eventmodeling-NTZA5JFV-B5z8GPGl.js +0 -1
- package/dist/client/assets/flowDiagram-HODETNUW-CEpweBDE.js +0 -1
- package/dist/client/assets/git-compare-CCnx9obs.js +0 -2
- package/dist/client/assets/layout-grid-DDlG0mCT.js +0 -2
- package/dist/client/assets/main-ChIB1-3M.css +0 -2
- package/dist/client/assets/main-lV-t-UZx.js +0 -30
- package/dist/client/assets/primaryCloudLinkState-BP-HZzf2.js +0 -2
- package/dist/client/assets/providerSkills-O72EMm0V.js +0 -2
- package/dist/client/assets/pullRequests-7IQc0VIk.js +0 -2
- package/dist/client/assets/railroad-abnf-HS5TGJTU-l3gFfdc2.js +0 -1
- package/dist/client/assets/railroad-ebnf-LZEXJU2U-eiWL8AW4.js +0 -1
- package/dist/client/assets/railroad-peg-WCYAUIDC-UK0E-Txe.js +0 -1
- package/dist/client/assets/runtime-B5cKWtKn.js +0 -2
- package/dist/client/assets/settings-mrxLMm57.js +0 -2
- package/dist/client/assets/settings.archived-Hl4HyrFx.js +0 -2
- package/dist/client/assets/settings.connections-CgaYGg_W.js +0 -2
- package/dist/client/assets/settings.data-controls-DNY0fL9E.js +0 -2
- package/dist/client/assets/settings.diagnostics-BHSEPjF8.js +0 -2
- package/dist/client/assets/settings.integrations-DykwmCf7.js +0 -2
- package/dist/client/assets/settings.plugins-B7Nlb85S.js +0 -5
- package/dist/client/assets/settings.projects-Ob8jKbIh.js +0 -4
- package/dist/client/assets/settings.providers-BIm-8j9C.js +0 -3
- package/dist/client/assets/settings.snap-shot-D37zM8an.js +0 -2
- package/dist/client/assets/settings.source-control-DmRUgcsk.js +0 -2
- package/dist/client/assets/settingsLayout-CqGfrbmD.js +0 -3
- package/dist/client/assets/sidebar-C_I_pq_E.js +0 -2
- package/dist/client/assets/sortable.esm-DuAaqmgD.js +0 -6
- package/dist/client/assets/stateDiagram-v2-MP3YSRHH-DqXgq-FS.js +0 -2
- package/dist/client/assets/swimlanesDiagram-VR7AAH4N-DAX63YhZ.js +0 -9
- package/dist/client/assets/threadSort-Cn23YHH2.js +0 -2
- package/dist/client/assets/toast-CN7Jd-pG.js +0 -2
- package/dist/client/assets/tooltip-DaSC-3cL.js +0 -2
- package/dist/client/assets/usage-CKRSqJso.js +0 -2
- package/dist/client/assets/useNavigate-Dhy_1-Mg.js +0 -2
- package/dist/client/assets/usePullRequestActions-_K7fD4Ny.js +0 -3
- package/dist/client/assets/useScopedModelAvailability-DE1E_lbg.js +0 -2
- package/dist/client/assets/useSettings-CKA-LDDj.js +0 -3
- package/dist/client/assets/utils-BAPnqm16.js +0 -37
- package/dist/client/assets/welcome-nE6tva7L.js +0 -2
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{i as e}from"./rolldown-runtime-Dd_uD5pT.js";import{r as t}from"./Icon-l19w4AjM.js";import{$o as n,Cd as r,Cs as i,Gn as a,Go as o,Kn as s,Mf as c,NE as l,NT as u,Oy as d,Pp as f,Ry as p,Ss as m,Ts as h,Um as g,Up as _,Xc as v,Yn as y,Yo as b,Zn as x,Zo as S,by as C,cr as w,db as T,gd as E,ib as D,j_ as O,lE as k,n_ as A,nm as j,or as ee,sr as M,ss as N,t as P,tr as F}from"./utils-BAPnqm16.js";import{B as I,L,W as R,q as z}from"./runtime-B9IDNXDU.js";import{a as B,c as V,o as te,s as ne,t as re}from"./select-Dsx46akG.js";import{t as ie}from"./useNavigateBack-PnWVFtkU.js";import{a as H,n as ae,t as oe}from"./tooltip-DaSC-3cL.js";import{d as se}from"./environments-iW64jjyO.js";import{f as ce,s as le}from"./server-CoH7V4JL.js";import{n as ue,t as U}from"./session-Bo2ZSprC.js";import{t as de}from"./use-atom-command-GpCw1tWF.js";import{a as fe,c as pe,d as W,f as G,i as me,l as K,n as he,o as ge,r as q,s as J,t as Y,u as _e}from"./usageFormat-H-RgZ0fy.js";import{t as ve}from"./env-wK1YYxA8.js";import{t as X}from"./skeleton-0mC3wMw1.js";import{n as ye,t as be}from"./toggle-group-DekLc0Ax.js";import{t as xe}from"./input-83N8btBC.js";import{t as Se}from"./scroll-area-DGS0jgnh.js";import{a as Ce,c as we,i as Te,o as Ee,r as De,s as Oe,t as ke}from"./dialog-DYFQxVoN.js";import{o as Ae}from"./sidebar-C_I_pq_E.js";import{t as je}from"./observeResize-BaPAtI3Q.js";import{y as Me}from"./keybindings-DLDyoB30.js";import{i as Ne,o as Pe,t as Fe}from"./popover-B1MF5i1c.js";import{S as Ie,n as Le,t as Re}from"./ChatGptUsageButton-Bda8Ir5S.js";import{t as ze}from"./WorkspacePageContainer-DwN_ETF0.js";import{n as Be,r as Ve,t as He}from"./usageShortcuts-C320W17X.js";import{Ni as Ue,Wi as We,cr as Ge,dr as Ke,lr as qe,qa as Je,qr as Ye,ur as Xe}from"./main-lV-t-UZx.js";import{t as Ze}from"./WorkspacePageHeader-BvKCy7v2.js";import{i as Qe,n as $e,r as et,t as tt}from"./WorkspaceBreadcrumb-ClxInGsT.js";import{t as nt}from"./usageAccess-BGb3m0YV.js";var Z=e(t(),1),Q=l(),rt=D(z);function it(e,t){return e?.sources.some(e=>e.action===`enableCursorKeychain`)===!0&&t?.some(e=>e.driver===`cursor`&&e.status===`ready`)===!0}function at(e){return e.some(e=>e.summary?.sources.some(e=>e.fingerprint.provider===`cursor`&&e.fingerprint.hostId===`cursor.com`))?[]:e.filter(e=>e.needsCursorKeychainAccess)}var ot=new Map,st=new Map;async function ct(e,t,n=!1,r=!1){let i=st.get(e);if(i!==void 0){if(r){try{await i}catch{}return ct(e,t,!1,!0)}return n?void 0:await i}let a=ot.get(e)??0;if(n&&Date.now()<a)return;let o=Promise.resolve().then(t).finally(()=>{st.delete(e),ot.set(e,Date.now()+3e5)});return st.set(e,o),await o}async function lt({registry:e,server:t,presentations:n,environmentIds:r,input:i}){await Promise.all(r.map(async r=>{let a=t.usageSummary({environmentId:r,input:i}),o=n.presentationAtom(r),s=new AbortController,c=()=>{e.get(o)?.connection.phase!==`connected`&&s.abort()},l=e.subscribe(o,c);c();try{let n=await I(e,t.refreshUsageRates,{environmentId:r,input:{}},{reportFailure:!1}),i=n._tag===`Failure`&&rt(R(n));if(e.refresh(a),i||s.signal.aborted)return;await L(e,a,{reportFailure:!1,signal:s.signal})}finally{l()}}))}function ut(e,t=!1){let{summary:n}=e;if(!e.isConnected||e.error!==null)return{phase:`inactive`};if(n===null)return{phase:`loading`};if(t)return{phase:`stale`};if(!e.isPending)return{phase:`ready`};let r=[...new Set(n.sources.flatMap(e=>e.refreshing?[e.fingerprint.provider]:[]))];return r.length>0?{phase:`partway`,providers:r}:{phase:`stale`}}function dt(e,t){return e.length===1?`Updating ${t(e[0])}…`:`Updating ${e.length} providers…`}function ft(e,t=!1){let n=new Set,r=!1;for(let i of e){let e=ut(i,t);if((e.phase===`loading`||e.phase===`stale`)&&(r=!0),e.phase===`partway`)for(let t of e.providers)n.add(t)}return{partial:r||n.size>0,everyProvider:r,providers:n}}function pt(e){return e.records>0&&e.unpricedRecords>=e.records}function mt(e){return[e.hostId,e.provider,e.resolvedHomePath,e.volumeId].join(` `)}function ht(e,t){let n=e.sources.filter(e=>e.fingerprint.provider===t.fingerprint.provider);return e.buckets.filter(e=>e.provider===t.fingerprint.provider&&(e.sourcePath===t.fingerprint.resolvedHomePath||e.sourcePath===void 0&&n.length===1))}function gt(e){return JSON.stringify([e.day,e.hourStart??null,e.provider,e.model])}function _t(e){let t=new Map,n=new Map,r=new Map,i=new Map,a=new Map,o=[],s=[...e].sort((e,t)=>(Date.parse(t.summary.readAt)||0)-(Date.parse(e.summary.readAt)||0)||e.environmentId.localeCompare(t.environmentId));for(let e of[`ok`,`partial`,`failed`])for(let r of s)for(let i of r.summary.sources){if(i.status!==e)continue;let s=mt(i.fingerprint);if(t.has(s)){o.push(`${r.label}: ${i.fingerprint.resolvedHomePath}`);continue}t.set(s,r.environmentId),n.set(s,{environment:r,source:i}),a.set(s,i.distinctSessions)}for(let e of s)for(let t of e.summary.sources){if(t.status!==`partial`)continue;let o=mt(t.fingerprint),s=n.get(o);if(s?.source.status!==`ok`||Date.parse(e.summary.readAt)<=Date.parse(s.environment.summary.readAt))continue;let c=r.get(o);c===void 0&&(c=new Set(ht(s.environment.summary,s.source).map(gt)),r.set(o,c));let l=i.get(e.environmentId)??new Set,u=!1;for(let n of ht(e.summary,t)){let e=gt(n);c.has(e)||(c.add(e),l.add(n),u=!0)}u&&(i.set(e.environmentId,l),a.set(o,Math.max(a.get(o)??0,t.distinctSessions)))}return{ownerByFingerprint:t,supplementalBucketsByEnvironment:i,sessionsByFingerprint:a,duplicates:o}}function vt(e,t,n,r){let i=new Set,a=new Set,o=new Map;for(let n of e.summary.sources){if(n.status===`missing`)continue;let s=mt(n.fingerprint);if(t.get(s)===e.environmentId){let e=n.fingerprint.provider;i.add(e),a.add(`${e}\u0000${n.fingerprint.resolvedHomePath}`),o.set(e,(o.get(e)??0)+(r.get(s)??n.distinctSessions))}}return{buckets:e.summary.buckets.filter(e=>n.has(e)||(e.sourcePath===void 0?i.has(e.provider):a.has(`${e.provider}\u0000${e.sourcePath}`))),sessionsByProvider:o}}function yt(e){return e.totals.uncachedInputTokens+e.totals.cachedInputTokens+e.totals.cacheCreationTokens+e.totals.outputTokens}function bt(e,t){return e>=4&&e<=t}var xt={costUsd:0,uncachedInputTokens:0,cachedInputTokens:0,cacheCreationTokens:0,outputTokens:0,reasoningTokens:0,totalTokens:0,records:0,sessions:0,providers:[],models:[],daily:[],hourly:[],costQuality:{providerReportedShare:0,modelPricedShare:0,unpricedShare:0,cacheSavingsUsd:0},categoryCost:{input:0,cacheRead:0,cacheWrite:0,output:0,unsplit:0},speedCost:{standard:0,fast:0,ultrafast:0,premium:0},duplicateSources:[],contributingEnvironments:[],contractMismatches:[]};function St(e,t){if(e.length===0)return xt;let n=[],r=[];for(let i of e)bt(i.summary.contractVersion,t)?n.push(i):r.push({environmentId:i.environmentId,direction:i.summary.contractVersion<t?`serverBehind`:`clientBehind`,contractVersion:i.summary.contractVersion});let{ownerByFingerprint:i,supplementalBucketsByEnvironment:a,sessionsByFingerprint:o,duplicates:s}=_t(n),c=0,l=0,u=0,d=0,f=0,p=0,m=0,h=0,g=0,_=0,v=0,y={input:0,cacheRead:0,cacheWrite:0,output:0},b={fast:0,ultrafast:0,premium:0},x=new Map,S=new Map,C=new Map,w=new Map,T=[];for(let e of n){let{buckets:t,sessionsByProvider:n}=vt(e,i,a.get(e.environmentId)??new Set,o);t.length>0&&T.push(e.environmentId);for(let[e,t]of n){if(h+=t,t===0)continue;let n=x.get(e)??{costUsd:0,totalTokens:0,records:0,sessions:0};n.sessions+=t,x.set(e,n)}for(let e of t){let t=yt(e);c+=e.costUsd,g+=e.cacheSavingsUsd,l+=e.totals.uncachedInputTokens,u+=e.totals.cachedInputTokens,d+=e.totals.cacheCreationTokens,f+=e.totals.outputTokens,p+=e.totals.reasoningTokens,m+=e.records,v+=e.unpricedRecords,e.costSource===`providerReported`&&(_+=e.records),e.categoryCostUsd!==void 0&&(y.input+=e.categoryCostUsd.input,y.cacheRead+=e.categoryCostUsd.cacheRead,y.cacheWrite+=e.categoryCostUsd.cacheWrite,y.output+=e.categoryCostUsd.output),b.fast+=e.fastCostUsd??0,b.ultrafast+=e.ultrafastCostUsd??0,b.premium+=e.speedPremiumUsd??0;let n=x.get(e.provider)??{costUsd:0,totalTokens:0,records:0,sessions:0};n.costUsd+=e.costUsd,n.totalTokens+=t,n.records+=e.records,x.set(e.provider,n);let r=`${e.provider} ${e.model}`,i=S.get(r)??{provider:e.provider,costUsd:0,totalTokens:0,tokens:{uncachedInputTokens:0,cachedInputTokens:0,cacheCreationTokens:0,outputTokens:0,reasoningTokens:0},records:0,unpricedRecords:0,unpricedTokens:0};i.costUsd+=e.costUsd,i.totalTokens+=t,i.tokens={uncachedInputTokens:i.tokens.uncachedInputTokens+e.totals.uncachedInputTokens,cachedInputTokens:i.tokens.cachedInputTokens+e.totals.cachedInputTokens,cacheCreationTokens:i.tokens.cacheCreationTokens+e.totals.cacheCreationTokens,outputTokens:i.tokens.outputTokens+e.totals.outputTokens,reasoningTokens:i.tokens.reasoningTokens+e.totals.reasoningTokens},i.records+=e.records,i.unpricedRecords+=e.unpricedRecords,e.records>0&&(i.unpricedTokens+=t*e.unpricedRecords/e.records),S.set(r,i);let a=C.get(e.day)??{costUsd:0,totalTokens:0,byProvider:new Map};a.costUsd+=e.costUsd,a.totalTokens+=t;let o=a.byProvider.get(e.provider)??{costUsd:0,totalTokens:0};if(o.costUsd+=e.costUsd,o.totalTokens+=t,a.byProvider.set(e.provider,o),C.set(e.day,a),e.hourStart!==void 0){let n=w.get(e.hourStart)??{day:e.day,hourStart:e.hourStart,costUsd:0,totalTokens:0,byProvider:new Map};n.costUsd+=e.costUsd,n.totalTokens+=t;let r=n.byProvider.get(e.provider)??{costUsd:0,totalTokens:0};r.costUsd+=e.costUsd,r.totalTokens+=t,n.byProvider.set(e.provider,r),w.set(e.hourStart,n)}}}let E=l+u+d+f,D=[...x.entries()].map(([e,t])=>({provider:e,costUsd:t.costUsd,totalTokens:t.totalTokens,records:t.records,sessions:t.sessions,costShare:c===0?0:t.costUsd/c,tokenShare:E===0?0:t.totalTokens/E})).sort((e,t)=>t.costUsd-e.costUsd),O=[...S.entries()].map(([e,t])=>({model:e.slice(e.indexOf(` `)+1),provider:t.provider,costUsd:t.costUsd,totalTokens:t.totalTokens,tokens:t.tokens,records:t.records,unpricedRecords:t.unpricedRecords,unpricedTokens:t.unpricedTokens,costShare:c===0?0:t.costUsd/c,tokenShare:E===0?0:t.totalTokens/E})).sort((e,t)=>t.costUsd-e.costUsd||t.totalTokens-e.totalTokens),k=[...C.entries()].map(([e,t])=>({day:e,costUsd:t.costUsd,totalTokens:t.totalTokens,byProvider:t.byProvider})).sort((e,t)=>e.day.localeCompare(t.day)),A=[...w.values()].sort((e,t)=>e.hourStart.localeCompare(t.hourStart));return{costUsd:c,uncachedInputTokens:l,cachedInputTokens:u,cacheCreationTokens:d,outputTokens:f,reasoningTokens:p,totalTokens:E,records:m,sessions:h,providers:D,models:O,daily:k,hourly:A,costQuality:{providerReportedShare:m===0?0:_/m,unpricedShare:m===0?0:v/m,modelPricedShare:m===0?0:(m-_-v)/m,cacheSavingsUsd:g},categoryCost:{...y,unsplit:Math.max(0,c-y.input-y.cacheRead-y.cacheWrite-y.output)},speedCost:{...b,standard:Math.max(0,c-b.fast-b.ultrafast)},duplicateSources:s,contributingEnvironments:T,contractMismatches:r}}var Ct=S(e=>n(t=>{let n=JSON.parse(e),r=t(se.presentationsAtom),i=[];for(let[e,a]of r){let r=a.connection.phase===`connected`,o=t(U.sessionStateAtom(e)),s=nt({connectionPhase:a.connection.phase,session:u(m(o)),hasSessionError:o._tag===`Failure`});if(!s.canReadDiagnostics){i.push({environmentId:e,label:a.entry.target.label,isConnected:r,...s,summary:null,needsCursorKeychainAccess:!1});continue}let c=t(ce.usageSummary({environmentId:e,input:n})),l=u(m(c));i.push({environmentId:e,label:a.entry.target.label,isPending:c.waiting,canReadDiagnostics:!0,isConnected:r,error:c._tag===`Failure`?`This environment could not report usage.`:null,summary:l,needsCursorKeychainAccess:it(l,t(ce.providersValueAtom(e)))})}return i}).pipe(N(`web-usage:window:${e}`)));function wt(e,t){return St(e.flatMap(({environmentId:e,label:n,summary:r})=>r===null?[]:[{environmentId:e,label:n,summary:t===void 0?r:{...r,buckets:r.buckets.filter(t)}}]),6)}var Tt=new Set;function Et(e,t){return t.size===0?e:e.map(e=>e.summary===null?e:{...e,summary:{...e.summary,buckets:e.summary.buckets.filter(e=>!t.has(e.provider)),sources:e.summary.sources.filter(e=>!t.has(e.fingerprint.provider))}})}function Dt(e,t,n){let r=(0,Q.c)(36),i=t===void 0?null:t,a=n===void 0?Tt:n,s;r[0]!==e.resolution||r[1]!==e.sinceDay||r[2]!==e.sinceTime||r[3]!==e.timeZone||r[4]!==e.untilDay||r[5]!==e.untilTime?(s=JSON.stringify({sinceDay:e.sinceDay,untilDay:e.untilDay,timeZone:e.timeZone,resolution:e.resolution,sinceTime:e.sinceTime,untilTime:e.untilTime}),r[0]=e.resolution,r[1]=e.sinceDay,r[2]=e.sinceTime,r[3]=e.timeZone,r[4]=e.untilDay,r[5]=e.untilTime,r[6]=s):s=r[6];let c=s,l;r[7]===c?l=r[8]:(l=Ct(c),r[7]=c,r[8]=l);let u=b(l),d;r[9]!==u||r[10]!==i?(d=i===null?u:u.filter(e=>i.has(e.environmentId)),r[9]=u,r[10]=i,r[11]=d):d=r[11];let f=d,p;r[12]!==f||r[13]!==c?(p=e=>lt({registry:o,server:ce,presentations:se,environmentIds:f.filter(jt).map(At),input:e??JSON.parse(c)}),r[12]=f,r[13]=c,r[14]=p):p=r[14];let m=p,h;r[15]!==a||r[16]!==f?(h=wt(Et(f,a)),r[15]=a,r[16]=f,r[17]=h):h=r[17];let g=h,_;r[18]===f?_=r[19]:(_=f.filter(kt),r[18]=f,r[19]=_);let v=_.length,y;r[20]===f?y=r[21]:(y=f.filter(Ot),r[20]=f,r[21]=y);let x=y.length,S=v===0&&x>0,[C,w]=(0,Z.useState)(null);v>0&&(C?.merged!==g||C.window!==e||C.selection!==i||C.hidden!==a)&&w({window:e,merged:g,selection:i,hidden:a});let T=C?.selection===i&&C.hidden===a?C:null,E;r[22]!==v||r[23]!==e||r[24]!==S||r[25]!==T||r[26]!==g?(E=v>0?{window:e,merged:g}:T??(S?null:{window:e,merged:g}),r[22]=v,r[23]=e,r[24]=S,r[25]=T,r[26]=g,r[27]=E):E=r[27];let D=E,O=v>0&&x>0,k;return r[28]!==u||r[29]!==S||r[30]!==g||r[31]!==m||r[32]!==f||r[33]!==D||r[34]!==O?(k={merged:g,environments:u,selectedEnvironments:f,isPending:S,shown:D,isPartial:O,refresh:m},r[28]=u,r[29]=S,r[30]=g,r[31]=m,r[32]=f,r[33]=D,r[34]=O,r[35]=k):k=r[35],k}function Ot(e){return e.summary===null&&e.error===null}function kt(e){return e.summary!==null}function At(e){let{environmentId:t}=e;return t}function jt(e){return e.canReadDiagnostics&&ue(e.environmentId,`diagnostics:read`)}var $=e(k(),1);function Mt(e){let t=(0,Q.c)(8),n,r;t[0]===e?(n=t[1],r=t[2]):({className:n,...r}=e,t[0]=e,t[1]=n,t[2]=r);let i;t[3]===n?i=t[4]:(i=P(`w-full caption-bottom text-xs`,n),t[3]=n,t[4]=i);let a;return t[5]!==r||t[6]!==i?(a=(0,$.jsx)(`div`,{"data-slot":`table-container`,className:`relative w-full overflow-x-auto`,children:(0,$.jsx)(`table`,{"data-slot":`table`,className:i,...r})}),t[5]=r,t[6]=i,t[7]=a):a=t[7],a}function Nt(e){let t=(0,Q.c)(8),n,r;t[0]===e?(n=t[1],r=t[2]):({className:n,...r}=e,t[0]=e,t[1]=n,t[2]=r);let i;t[3]===n?i=t[4]:(i=P(`[&_tr]:border-b`,n),t[3]=n,t[4]=i);let a;return t[5]!==r||t[6]!==i?(a=(0,$.jsx)(`thead`,{"data-slot":`table-header`,className:i,...r}),t[5]=r,t[6]=i,t[7]=a):a=t[7],a}function Pt(e){let t=(0,Q.c)(8),n,r;t[0]===e?(n=t[1],r=t[2]):({className:n,...r}=e,t[0]=e,t[1]=n,t[2]=r);let i;t[3]===n?i=t[4]:(i=P(`[&_tr:last-child]:border-0`,n),t[3]=n,t[4]=i);let a;return t[5]!==r||t[6]!==i?(a=(0,$.jsx)(`tbody`,{"data-slot":`table-body`,className:i,...r}),t[5]=r,t[6]=i,t[7]=a):a=t[7],a}function Ft(e){let t=(0,Q.c)(8),n,r;t[0]===e?(n=t[1],r=t[2]):({className:n,...r}=e,t[0]=e,t[1]=n,t[2]=r);let i;t[3]===n?i=t[4]:(i=P(`border-b transition-colors hover:bg-muted/50 has-aria-expanded:bg-muted/50 data-[state=selected]:bg-muted`,n),t[3]=n,t[4]=i);let a;return t[5]!==r||t[6]!==i?(a=(0,$.jsx)(`tr`,{"data-slot":`table-row`,className:i,...r}),t[5]=r,t[6]=i,t[7]=a):a=t[7],a}function It(e){let t=(0,Q.c)(8),n,r;t[0]===e?(n=t[1],r=t[2]):({className:n,...r}=e,t[0]=e,t[1]=n,t[2]=r);let i;t[3]===n?i=t[4]:(i=P(`h-10 px-2 text-left align-middle font-medium whitespace-nowrap text-foreground [&:has([role=checkbox])]:pr-0`,n),t[3]=n,t[4]=i);let a;return t[5]!==r||t[6]!==i?(a=(0,$.jsx)(`th`,{"data-slot":`table-head`,className:i,...r}),t[5]=r,t[6]=i,t[7]=a):a=t[7],a}function Lt(e){let t=(0,Q.c)(8),n,r;t[0]===e?(n=t[1],r=t[2]):({className:n,...r}=e,t[0]=e,t[1]=n,t[2]=r);let i;t[3]===n?i=t[4]:(i=P(`p-2 align-middle whitespace-nowrap [&:has([role=checkbox])]:pr-0`,n),t[3]=n,t[4]=i);let a;return t[5]!==r||t[6]!==i?(a=(0,$.jsx)(`td`,{"data-slot":`table-cell`,className:i,...r}),t[5]=r,t[6]=i,t[7]=a):a=t[7],a}var Rt=[{key:`inputCostPerMillionTokens`,label:`Input`,optional:!1},{key:`outputCostPerMillionTokens`,label:`Output`,optional:!1},{key:`cacheReadCostPerMillionTokens`,label:`Cache read`,optional:!0},{key:`cacheWriteCostPerMillionTokens`,label:`Cache write`,optional:!0}];function zt(e=``,t){return{model:e,inputCostPerMillionTokens:t?.inputCostPerMillionTokens.toString()??``,outputCostPerMillionTokens:t?.outputCostPerMillionTokens.toString()??``,cacheReadCostPerMillionTokens:t?.cacheReadCostPerMillionTokens?.toString()??``,cacheWriteCostPerMillionTokens:t?.cacheWriteCostPerMillionTokens?.toString()??``}}function Bt(e){let t=e.model.trim();if(t.length===0)return null;let n={};for(let t of Rt){let r=e[t.key].trim();if(r===``){if(t.optional)continue;return null}if(!/^(?:\d+(?:\.\d*)?|\.\d+)(?:e[+-]?\d+)?$/i.test(r))return null;let i=Number(r);if(!Number.isFinite(i)||i<0)return null;n[t.key]=i}return n.inputCostPerMillionTokens===void 0||n.outputCostPerMillionTokens===void 0?null:{model:t,price:{inputCostPerMillionTokens:n.inputCostPerMillionTokens,outputCostPerMillionTokens:n.outputCostPerMillionTokens,...n.cacheReadCostPerMillionTokens===void 0?{}:{cacheReadCostPerMillionTokens:n.cacheReadCostPerMillionTokens},...n.cacheWriteCostPerMillionTokens===void 0?{}:{cacheWriteCostPerMillionTokens:n.cacheWriteCostPerMillionTokens}}}}function Vt(e){return e.isNew&&e.model.trim()===``&&(e.alias??``).trim()===``&&Object.values(e.values).every(e=>e.trim()===``)}function Ht(e,t){return e.prices&&Object.hasOwn(e.prices,t)?e.prices[t]:void 0}function Ut(e,t){return e.aliases&&Object.hasOwn(e.aliases,t)?e.aliases[t]:void 0}function Wt(e,t){if(e.some(e=>e.aliases===null))return{value:``,placeholder:`Unavailable`};let n=e.map(e=>Ut(e,t)??``);return n.some(e=>e!==n[0])?{value:``,placeholder:`Mixed`}:{value:n[0]??``,placeholder:`None`}}function Gt(e,t,n){let r=Rt.find(e=>e.key===n).optional,i=e.map(e=>Ht(e,t)?zt(t,Ht(e,t))[n]:null);return e.some(e=>e.prices===null)?{value:``,placeholder:`Unavailable`}:i.some(e=>e!==i[0])?{value:``,placeholder:`Mixed`}:{value:i[0]??``,placeholder:i[0]===null?`Automatic`:r?`Input rate`:`0.00`}}function Kt(e,t){let n=[],r=new Map;for(let i of t){if(Vt(i))continue;let t=i.model.trim(),a=Ut(e,t);if(i.removed){Ht(e,t)&&n.push({model:t,price:null}),a!==void 0&&n.push({model:t,alias:null});continue}let o=(i.alias??a??``).trim();if(o!==``){t===``?r.set(i.id,`Enter a model ID.`):o===t?r.set(i.id,`Map to a different model.`):(o!==a&&n.push({model:t,alias:o}),Ht(e,t)&&n.push({model:t,price:null}));continue}if(a!==void 0&&(n.push({model:t,alias:null}),!Ht(e,t)&&Object.values(i.values).every(e=>e.trim()===``)))continue;let s=zt(t,Ht(e,t)),c={...s,...i.values},l=Bt(c);if(l===null){let n=Rt.find(e=>!e.optional&&c[e.key].trim()===``);r.set(i.id,t===``?`Enter a model ID.`:n?`${n.label} is required on ${e.label}.`:`Use non-negative numbers for prices.`);continue}let u=zt(t,l.price);Rt.some(e=>s[e.key]!==u[e.key])&&n.push(l)}return{changes:n,errors:r}}function qt(e,t){return new Map(e.filter(e=>e.unavailable===null&&e.prices!==null).flatMap(e=>[...Kt(e,t).errors]))}async function Jt(e){await Promise.all(e.targets.map(async t=>{let n,r=e.changes.get(t.environmentId)??[],i=r.flatMap(e=>`price`in e?[[e.model,e.price]]:[]),a=r.flatMap(e=>`alias`in e?[[e.model,e.alias]]:[]);if(t.unavailable!==null)n={status:`failed`,error:t.unavailable};else if(a.length>0&&t.aliases===null)n={status:`failed`,error:`Update server to map models`};else try{n=(r.length===0?{_tag:`Success`}:await e.write({environmentId:t.environmentId,input:{patch:{...i.length>0?{usagePriceOverrides:Object.fromEntries(i)}:{},...a.length>0?{usageModelAliases:Object.fromEntries(a)}:{}}}}))._tag===`Success`?{status:`saved`}:{status:`failed`,error:`Could not save. Try again.`}}catch{n={status:`failed`,error:`Could not save. Try again.`}}e.onResult(t.environmentId,n)}))}var Yt=n(e=>[...e(se.presentationsAtom)].map(([t,n])=>{let r=e(ce.settingsValueAtom(t)),i=e(U.sessionStateAtom(t)),a=u(m(i)),o=i._tag===`Failure`?`denied`:a===null?i.waiting?`pending`:`denied`:O(a,`settings:write`)?`granted`:`denied`;return{environmentId:t,label:n.entry.target.label,prices:r?.usagePriceOverrides??null,aliases:n.serverConfig?.environment.capabilities.usageModelAliases===!0?r?.usageModelAliases??null:null,unavailable:n.connection.phase===`connected`?r===null?`Prices not loaded`:n.serverConfig?.environment.capabilities.usagePriceOverrides===!0?o===`pending`?`Checking permissions…`:o===`denied`?`Read-only access`:null:`Update server to edit prices`:`Offline`}}));function Xt(e){let t=(0,Q.c)(119),{usage:n,initialSelectedEnvironmentIds:r,initialModel:i,onOpenChange:o}=e,c=b(Yt),[l,u]=(0,Z.useState)(r),d;if(t[0]!==c||t[1]!==l){let e;t[3]===l?e=t[4]:(e=e=>l===null||l.has(e.environmentId),t[3]=l,t[4]=e),d=c.filter(e),t[0]=c,t[1]=l,t[2]=d}else d=t[2];let p=d,m;t[5]!==i||t[6]!==p?(m=()=>i===void 0||p.some(e=>Object.hasOwn(e.prices??{},i)||Object.hasOwn(e.aliases??{},i))?[]:[{id:`new:initial`,model:i,isNew:!0,values:{}}],t[5]=i,t[6]=p,t[7]=m):m=t[7];let[h,v]=(0,Z.useState)(m),[y,S]=(0,Z.useState)(!1),[C,w]=(0,Z.useState)(null),T=(0,Z.useRef)(null),D=(0,Z.useRef)(0),O;t[8]===Symbol.for(`react.memo_cache_sentinel`)?(O={reportFailure:!1},t[8]=O):O=t[8];let k=de(ce.updateSettings,O),A,j,N,I,L,R,z,B,V,te,ne,re,ie,se,le;if(t[9]!==C||t[10]!==h||t[11]!==c||t[12]!==o||t[13]!==y||t[14]!==p||t[15]!==l||t[16]!==k||t[17]!==n){let e=[...new Set(p.flatMap(mn))].sort(),r;t[33]===p?r=t[34]:(r=e=>p.some(t=>t.environmentId===e.environmentId),t[33]=p,t[34]=r);let i=[...new Set([...e,...n.filter(r).flatMap(fn)])].sort(),d;t[35]===h?d=t[36]:(d=new Set(h.filter(dn).map(un)),t[35]=h,t[36]=d);let m=d,b;t[37]!==C||t[38]!==m?(b=e=>C===null||!m.has(e),t[37]=C,t[38]=m,t[39]=b):b=t[39];let O=[...e.filter(b).map(e=>h.find(t=>t.id===`model:${e}`)??{id:`model:${e}`,model:e,isNew:!1,values:{}}),...h.filter(ln)],ce=h.filter(cn);R=qt(p,ce);for(let t of ce)t.isNew&&(t.model.trim()===``?R.set(t.id,`Enter a model ID.`):C===null&&(e.includes(t.model.trim())||h.some(e=>e.id!==t.id&&e.model.trim()===t.model.trim()))&&R.set(t.id,`This model already has a row. Edit its prices there.`));z=C?.destinations.filter(e=>C.results.get(e.environmentId)?.status===`failed`)??[];let U=y||z.length>0;B=ce.length>0,I=p.length===1?p[0].label:`${p.length} environments`;let de=l===null?`All environments`:I,fe;t[40]===Symbol.for(`react.memo_cache_sentinel`)?(fe=()=>{v([]),w(null)},t[40]=fe):fe=t[40],L=fe;let pe;t[41]===Symbol.for(`react.memo_cache_sentinel`)?(pe=e=>{u(e),w(null)},t[41]=pe):pe=t[41];let W=pe,G;t[42]===Symbol.for(`react.memo_cache_sentinel`)?(G=e=>{v(t=>t.some(t=>t.id===e.id)?t.map(t=>t.id===e.id?e:t):[...t,e]),w(null)},t[42]=G):G=t[42];let me=G,K=sn,he;t[43]===Symbol.for(`react.memo_cache_sentinel`)?(he=e=>{!e.isNew&&Object.keys(e.values).length===0&&e.alias===void 0?v(t=>t.filter(t=>t.id!==e.id)):me(e)},t[43]=he):he=t[43];let ge=he,q;t[44]===p?q=t[45]:(q=(e,t,n)=>{let r={...e.values,[t]:n},i=Gt(p,e.model,t);K(e,i,n)&&delete r[t],ge({...e,values:r})},t[44]=p,t[45]=q);let J=q,Y;t[46]===p?Y=t[47]:(Y=(e,t)=>{let{alias:n,...r}=e,i=Wt(p,e.model);ge(K(e,i,t)?r:{...r,alias:t})},t[46]=p,t[47]=Y);let _e=Y;V=async e=>{let t=e!==void 0&&e;if(y)return;let n=t?z:p,r=t&&C?C.drafts:ce;if(n.length===0||r.length===0)return;let i=n.map(e=>c.find(t=>t.environmentId===e.environmentId)??{...e,prices:null,aliases:null,unavailable:`Environment removed`}),a=new Map(i.map(e=>[e.environmentId,Kt(e,r)]));S(!0),w(e=>({drafts:r,destinations:t&&e?e.destinations:i,results:new Map([...t&&e?e.results:[],...i.map(on)])}));let o=!1;await Jt({targets:i.map(e=>({...e,unavailable:e.unavailable??[...a.get(e.environmentId).errors.values()][0]??null})),changes:new Map([...a].map(an)),write:async e=>ue(e.environmentId,`settings:write`)?k(e):{_tag:`Failure`},onResult:(e,t)=>{t.status===`failed`&&(o=!0),w(n=>n===null?null:{...n,results:new Map(n.results).set(e,t)})}}),S(!1),o||v([])},N=ke,se=!0,t[48]!==o||t[49]!==y?(le=e=>{y||o(e)},t[48]=o,t[49]=y,t[50]=le):le=t[50],j=Oe,re=`max-w-4xl`,t[51]===Symbol.for(`react.memo_cache_sentinel`)?(ie=(0,$.jsxs)(Ce,{children:[(0,$.jsx)(we,{children:`Custom model prices`}),(0,$.jsx)(De,{children:`Prices and mappings apply to all past and future usage on the environments you select.`})]}),t[51]=ie):ie=t[51],A=Ee;let ve;t[52]===Symbol.for(`react.memo_cache_sentinel`)?(ve=(0,$.jsx)(Ue,{id:`usage-prices-apply-label`,className:`shrink-0`,children:`Apply to`}),t[52]=ve):ve=t[52];let X;t[53]===Symbol.for(`react.memo_cache_sentinel`)?(X=(0,$.jsx)(M,{variant:`outline`,size:`sm`,className:`min-w-0`}),t[53]=X):X=t[53];let ye=y||B,be;t[54]===de?be=t[55]:(be=(0,$.jsx)(`span`,{id:`usage-prices-selection`,className:`truncate`,children:de}),t[54]=de,t[55]=be);let Se;t[56]===Symbol.for(`react.memo_cache_sentinel`)?(Se=(0,$.jsx)(E,{className:`size-3.5 shrink-0`,"aria-hidden":!0}),t[56]=Se):Se=t[56];let Te;t[57]!==ye||t[58]!==be?(Te=(0,$.jsxs)(ee,{render:X,"aria-labelledby":`usage-prices-apply-label usage-prices-selection`,disabled:ye,children:[be,Se]}),t[57]=ye,t[58]=be,t[59]=Te):Te=t[59];let Ae=l===null,je;t[60]===Symbol.for(`react.memo_cache_sentinel`)?(je=e=>W(e?null:new Set),t[60]=je):je=t[60];let Me;t[61]===Ae?Me=t[62]:(Me=(0,$.jsx)(s,{checked:Ae,closeOnClick:!1,onCheckedChange:je,children:`All environments`}),t[61]=Ae,t[62]=Me);let Ne;t[63]===Symbol.for(`react.memo_cache_sentinel`)?(Ne=(0,$.jsx)(F,{}),t[63]=Ne):Ne=t[63];let Pe;if(t[64]!==c||t[65]!==p||t[66]!==l){let e;t[68]!==c.length||t[69]!==p||t[70]!==l?(e=e=>(0,$.jsx)(s,{checked:l===null||l.has(e.environmentId),closeOnClick:!1,onCheckedChange:t=>{let n=new Set(p.map(rn));t?n.add(e.environmentId):n.delete(e.environmentId),W(n.size===c.length?null:n)},children:(0,$.jsxs)(`span`,{className:`flex min-w-0 items-center gap-3`,children:[(0,$.jsx)(`span`,{className:`min-w-0 flex-1 truncate`,children:e.label}),e.unavailable?(0,$.jsx)(`span`,{className:`text-xs text-muted-foreground`,children:e.unavailable}):null]})},e.environmentId),t[68]=c.length,t[69]=p,t[70]=l,t[71]=e):e=t[71],Pe=c.map(e),t[64]=c,t[65]=p,t[66]=l,t[67]=Pe}else Pe=t[67];let Fe;t[72]!==Me||t[73]!==Pe?(Fe=(0,$.jsxs)(x,{align:`start`,children:[Me,Ne,Pe]}),t[72]=Me,t[73]=Pe,t[74]=Fe):Fe=t[74];let Ie;t[75]!==Te||t[76]!==Fe?(Ie=(0,$.jsxs)(`div`,{className:`flex min-w-0 items-center gap-2`,children:[ve,(0,$.jsxs)(a,{children:[Te,Fe]})]}),t[75]=Te,t[76]=Fe,t[77]=Ie):Ie=t[77];let Le;t[78]===Symbol.for(`react.memo_cache_sentinel`)?(Le=(0,$.jsx)(`span`,{className:`text-xs text-muted-foreground`,children:`USD / million tokens`}),t[78]=Le):Le=t[78],t[79]===Ie?te=t[80]:(te=(0,$.jsxs)(`div`,{className:`flex flex-wrap items-center justify-between gap-2`,children:[Ie,Le]}),t[79]=Ie,t[80]=te),ne=p.length===0?(0,$.jsx)(`p`,{className:`text-sm text-muted-foreground`,children:c.length===0?`Connect an environment to set model prices.`:`Select an environment to see and change its model prices.`}):(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(`div`,{className:`min-w-0 overflow-hidden rounded-lg border border-border`,children:(0,$.jsxs)(Mt,{className:`min-w-180 table-fixed`,"aria-label":`Custom model prices`,children:[(0,$.jsxs)(`colgroup`,{children:[(0,$.jsx)(`col`,{className:`w-[22%]`}),(0,$.jsx)(`col`,{className:`w-[18%]`}),Rt.map(nn),(0,$.jsx)(`col`,{className:`w-10`})]}),(0,$.jsx)(Nt,{children:(0,$.jsxs)(Ft,{children:[(0,$.jsx)(It,{children:`Model ID`}),(0,$.jsx)(It,{children:`Map to`}),Rt.map(tn),(0,$.jsx)(It,{children:(0,$.jsx)(M,{size:`icon-xs`,variant:`ghost`,"aria-label":`Add model price`,disabled:U,onClick:()=>{D.current+=1;let e=`new:${D.current}`;T.current=e,me({id:e,model:``,isNew:!0,values:{}})},children:(0,$.jsx)(f,{"aria-hidden":!0})})})]})}),(0,$.jsx)(Pt,{children:O.length===0?(0,$.jsx)(Ft,{children:(0,$.jsx)(Lt,{colSpan:7,className:`text-center whitespace-normal`,children:(0,$.jsx)(`p`,{className:`py-6 text-muted-foreground`,children:p.some(en)?`Some environment prices are unavailable.`:`No custom prices or mappings. Add a row to set one.`})})}):O.map(e=>{let t=Wt(p,e.model),n=(e.alias??t.value).trim();return(0,$.jsxs)(Ft,{"data-row-id":e.id,children:[(0,$.jsxs)(Lt,{className:`whitespace-normal`,children:[e.isNew?(0,$.jsx)(xe,{size:`compact`,value:e.model,ref:t=>{t&&T.current===e.id&&(t.focus(),T.current=null)},"aria-label":`New model ID`,"aria-invalid":e.model.trim()!==``&&R.has(e.id)||void 0,list:`usage-price-models`,placeholder:`Model ID`,autoComplete:`off`,spellCheck:!1,disabled:U,onChange:t=>me({...e,model:t.target.value})}):(0,$.jsx)(`span`,{className:P(`block break-all`,e.removed&&`text-muted-foreground line-through`),children:e.model}),R.has(e.id)&&(e.model.trim()!==``||Object.values(e.values).some($t))?(0,$.jsx)(`p`,{role:`alert`,className:`mt-1 text-xs text-destructive`,children:R.get(e.id)}):null]}),e.removed?(0,$.jsx)(Lt,{colSpan:5,children:(0,$.jsx)(`span`,{className:`text-muted-foreground`,children:`Automatic pricing after saving`})}):(0,$.jsx)(Lt,{children:(0,$.jsx)(xe,{size:`compact`,value:e.alias??t.value,"aria-label":`Map ${e.model||`new model`} to model`,list:`usage-alias-models`,placeholder:e.isNew?`Optional`:t.placeholder,autoComplete:`off`,spellCheck:!1,disabled:U,onChange:t=>_e(e,t.target.value)})}),e.removed?null:n===``?Rt.map(t=>{let n=Gt(p,e.model,t.key);return(0,$.jsx)(Lt,{children:(0,$.jsx)(xe,{size:`compact`,inputMode:`decimal`,"aria-label":`${t.label} price for ${e.model||`new model`}`,value:e.values[t.key]??(e.isNew?``:n.value),placeholder:e.isNew?t.optional?`Input rate`:`0.00`:n.placeholder,autoComplete:`off`,disabled:U,font:`mono`,onChange:n=>J(e,t.key,n.target.value)})},t.key)}):(0,$.jsx)(Lt,{colSpan:4,className:`whitespace-normal`,children:(0,$.jsxs)(`span`,{className:`break-all text-muted-foreground`,children:[`Counted as `,n]})}),(0,$.jsx)(Lt,{children:(0,$.jsxs)(oe,{children:[(0,$.jsx)(H,{render:(0,$.jsx)(M,{size:`icon-xs`,variant:`ghost`}),disabled:U,"aria-label":e.removed?`Undo reset for ${e.model}`:e.isNew?`Remove new model`:`Reset price for ${e.model} to automatic`,onClick:()=>{e.isNew?v(t=>t.filter(t=>t.id!==e.id)):e.removed?ge({...e,removed:!1}):me({...e,removed:!0})},children:e.isNew?(0,$.jsx)(g,{"aria-hidden":!0}):(0,$.jsx)(_,{"aria-hidden":!0})}),(0,$.jsx)(ae,{children:e.removed?`Undo reset`:e.isNew?`Remove row`:`Reset to automatic`})]})})]},e.id)})})]})}),(0,$.jsx)(`datalist`,{id:`usage-price-models`,children:i.filter(t=>!e.includes(t)).map(Qt)}),(0,$.jsx)(`datalist`,{id:`usage-alias-models`,children:i.filter(e=>p.every(t=>!Object.hasOwn(t.aliases??{},e))).map(Zt)}),(0,$.jsxs)(`p`,{className:`text-xs text-muted-foreground`,children:[`Blank cache rates use the input price. Enter 0 for free tokens. A mapped model’s usage counts as the model it maps to.`,p.length>1?` Mixed cells keep each environment’s rate until you edit them.`:``]})]}),t[9]=C,t[10]=h,t[11]=c,t[12]=o,t[13]=y,t[14]=p,t[15]=l,t[16]=k,t[17]=n,t[18]=A,t[19]=j,t[20]=N,t[21]=I,t[22]=L,t[23]=R,t[24]=z,t[25]=B,t[26]=V,t[27]=te,t[28]=ne,t[29]=re,t[30]=ie,t[31]=se,t[32]=le}else A=t[18],j=t[19],N=t[20],I=t[21],L=t[22],R=t[23],z=t[24],B=t[25],V=t[26],te=t[27],ne=t[28],re=t[29],ie=t[30],se=t[31],le=t[32];let U;t[81]===C?U=t[82]:(U=C?(0,$.jsx)(`div`,{role:`status`,className:`grid gap-1 text-xs`,children:C.destinations.map(e=>{let t=C.results.get(e.environmentId);return(0,$.jsxs)(`div`,{className:`flex justify-between gap-3`,children:[(0,$.jsx)(`span`,{className:`truncate text-muted-foreground`,children:e.label}),(0,$.jsx)(`span`,{className:t?.status===`failed`?`text-right text-destructive`:`text-muted-foreground`,children:t?.status===`failed`?`Not saved · ${t.error}`:t?.status===`saved`?`Saved`:`Saving…`})]},e.environmentId)})}):null,t[81]=C,t[82]=U);let fe;t[83]!==A||t[84]!==U||t[85]!==te||t[86]!==ne?(fe=(0,$.jsxs)(A,{children:[te,ne,U]}),t[83]=A,t[84]=U,t[85]=te,t[86]=ne,t[87]=fe):fe=t[87];let pe=B?`Changes apply to ${I}`:``,W;t[88]===pe?W=t[89]:(W=(0,$.jsx)(`span`,{className:`text-xs text-muted-foreground`,children:pe}),t[88]=pe,t[89]=W);let G;t[90]!==L||t[91]!==z.length||t[92]!==B||t[93]!==y?(G=B?(0,$.jsx)(M,{variant:`ghost`,disabled:y,onClick:L,children:z.length>0?`Discard pending changes`:`Discard changes`}):null,t[90]=L,t[91]=z.length,t[92]=B,t[93]=y,t[94]=G):G=t[94];let me=y||!B&&z.length===0||z.length===0&&(R.size>0||p.length===0),K;t[95]!==z.length||t[96]!==V?(K=()=>void V(z.length>0),t[95]=z.length,t[96]=V,t[97]=K):K=t[97];let he=y?`Saving…`:z.length>0?`Retry failed saves`:`Save changes`,ge;t[98]!==me||t[99]!==K||t[100]!==he?(ge=(0,$.jsx)(M,{disabled:me,onClick:K,children:he}),t[98]=me,t[99]=K,t[100]=he,t[101]=ge):ge=t[101];let q;t[102]!==G||t[103]!==ge?(q=(0,$.jsxs)(`div`,{className:`flex w-full flex-wrap justify-end gap-2 sm:w-auto`,children:[G,ge]}),t[102]=G,t[103]=ge,t[104]=q):q=t[104];let J;t[105]!==W||t[106]!==q?(J=(0,$.jsxs)(Te,{variant:`bare`,className:`items-center sm:justify-between`,children:[W,q]}),t[105]=W,t[106]=q,t[107]=J):J=t[107];let Y;t[108]!==j||t[109]!==fe||t[110]!==J||t[111]!==re||t[112]!==ie?(Y=(0,$.jsxs)(j,{className:re,children:[ie,fe,J]}),t[108]=j,t[109]=fe,t[110]=J,t[111]=re,t[112]=ie,t[113]=Y):Y=t[113];let _e;return t[114]!==N||t[115]!==Y||t[116]!==se||t[117]!==le?(_e=(0,$.jsx)(N,{open:se,onOpenChange:le,children:Y}),t[114]=N,t[115]=Y,t[116]=se,t[117]=le,t[118]=_e):_e=t[118],_e}function Zt(e){return(0,$.jsx)(`option`,{value:e},e)}function Qt(e){return(0,$.jsx)(`option`,{value:e},e)}function $t(e){return e!==``}function en(e){return e.prices===null}function tn(e){return(0,$.jsx)(It,{children:e.label},e.key)}function nn(e){return(0,$.jsx)(`col`,{},e.key)}function rn(e){return e.environmentId}function an(e){let[t,n]=e;return[t,n.changes]}function on(e){return[e.environmentId,{status:`saving`}]}function sn(e,t,n){return!e.isNew&&t.placeholder!==`Mixed`&&t.placeholder!==`Unavailable`&&n===t.value}function cn(e){return!Vt(e)}function ln(e){return e.isNew}function un(e){return e.model.trim()}function dn(e){return e.isNew}function fn(e){return e.summary?.buckets.map(pn)??[]}function pn(e){return e.model}function mn(e){return[...Object.keys(e.prices??{}),...Object.keys(e.aliases??{})]}var hn=960,gn=260,_n=4,vn=8,yn=new Set;function bn(e,t,n){let r=e?.byProvider.get(t);return r===void 0?0:n===`tokens`?r.totalTokens:r.costUsd}function xn(e,t,n){return e.map(e=>{let r=t.get(e),i=qe.map(e=>({provider:e,value:bn(r,e,n)}));return{bands:i,total:i.reduce((e,t)=>e+t.value,0)}})}function Sn(e){let t=e.length;if(t<2)return[0];let n=[];for(let r=0;r<t-1;r+=1){let t=(e[r+1]?.x??0)-(e[r]?.x??0),i=(e[r+1]?.y??0)-(e[r]?.y??0);n.push(t===0?0:i/t)}let r=Array.from({length:t},()=>0);r[0]=n[0]??0,r[t-1]=n[t-2]??0;for(let e=1;e<t-1;e+=1){let t=n[e-1]??0,i=n[e]??0;r[e]=t*i<=0?0:(t+i)/2}for(let e=0;e<t-1;e+=1){let t=n[e]??0;if(t===0){r[e]=0,r[e+1]=0;continue}let i=(r[e]??0)/t,a=(r[e+1]??0)/t,o=i*i+a*a;if(o>9){let n=3/Math.sqrt(o);r[e]=n*i*t,r[e+1]=n*a*t}}return r}function Cn(e){if(e.length<2)return[];let t=Sn(e),n=[];for(let r=0;r<e.length-1;r+=1){let i=e[r],a=e[r+1];if(i===void 0||a===void 0)continue;let o=a.x-i.x;n.push({from:i,c1:{x:i.x+o/3,y:i.y+(t[r]??0)*o/3},c2:{x:a.x-o/3,y:a.y-(t[r+1]??0)*o/3},to:a})}return n}function wn(e){let t=e[0];if(t===void 0)return``;let n=`M${t.from.x.toFixed(2)},${t.from.y.toFixed(2)}`;for(let t of e)n+=` C${t.c1.x.toFixed(2)},${t.c1.y.toFixed(2)} ${t.c2.x.toFixed(2)},${t.c2.y.toFixed(2)} ${t.to.x.toFixed(2)},${t.to.y.toFixed(2)}`;return n}function Tn(e){return e===``?``:`${e} L${hn},${gn} L0,${gn} Z`}function En(e,t){if(e<=0)return{max:0,ticks:[0]};let n=e/t,r=10**Math.floor(Math.log10(n)),i=n/r,a=(i>5?10:i>2?5:i>1?2:1)*r,o=Math.ceil(e/a)*a,s=[];for(let e=0;e<=o+a*1e-6;e+=a)s.push(e);return{max:o,ticks:s}}var Dn=Array.from({length:5},(e,t)=>t);function On(e,t){let n=e.reduce((e,t)=>t.bands.reduce((e,t)=>Math.max(e,t.value),e),0);return n===0&&t.size>0?{max:_n,ticks:Dn,labeled:!1}:{...En(n,_n),labeled:!0}}function kn(e,t){return t===0?gn:gn-e/t*252}function An(e,t,n,r,i){let a=xn(e,t,n),o=On(a,i),s=e.length<2?0:hn/(e.length-1);return{columns:a,scale:o,stepX:s,paths:r.map(e=>{let t=qe.indexOf(e),n=wn(Cn(a.map((e,n)=>({x:n*s,y:kn(e.bands[t]?.value??0,o.max)}))));return{provider:e,loading:i.has(e),total:a.reduce((e,n)=>e+(n.bands[t]?.value??0),0),line:n,area:Tn(n)}}).toSorted((e,t)=>t.total-e.total)}}function jn(e){let t=(0,Q.c)(97),{providers:n,loadingProviders:r,days:i,daily:a,hours:o,hourly:s,metric:c,referenceTime:l,resolution:u,timeZone:d}=e,f=r===void 0?yn:r,p=u===`hour`?o:i,m;t[0]!==a||t[1]!==s||t[2]!==u?(m=u===`hour`?new Map(s.map(Pn)):new Map(a.map(Nn)),t[0]=a,t[1]=s,t[2]=u,t[3]=m):m=t[3];let h=m,[g,_]=(0,Z.useState)(null),v=(0,Z.useRef)(null),y=(0,Z.useRef)(null),b=(0,Z.useRef)(null),x;t[4]!==h||t[5]!==f||t[6]!==c||t[7]!==p||t[8]!==n?(x=An(p,h,c,n,f),t[4]=h,t[5]=f,t[6]=c,t[7]=p,t[8]=n,t[9]=x):x=t[9];let{columns:S,scale:C,paths:w,stepX:T}=x,E;t[10]===C.max?E=t[11]:(E=e=>kn(e,C.max),t[10]=C.max,t[11]=E);let D=E,O=Mn,k=c===`tokens`?K:W,A;t[12]===Symbol.for(`react.memo_cache_sentinel`)?(A=()=>{let e=v.current,t=y.current,n=b.current;if(e===null||t===null||n===null)return;let r=t.offsetWidth,i=t.offsetHeight,a=e.clientWidth,o=e.clientHeight,s=n.x+12+r<=a?n.x+12:n.x-12-r,c=n.y+12+i<=o?n.y+12:n.y-12-i,l=Math.min(Math.max(0,s),Math.max(0,a-r)),u=Math.min(Math.max(0,c),Math.max(0,o-i));e.style.setProperty(`--usage-tooltip-left`,`${l}px`),e.style.setProperty(`--usage-tooltip-top`,`${u}px`)},t[12]=A):A=t[12];let j=A,ee,M;t[13]===g?(ee=t[14],M=t[15]):(ee=()=>{if(g===null)return;j();let e=v.current,t=y.current;if(e!==null&&t!==null)return je([e,t],j)},M=[g,j],t[13]=g,t[14]=ee,t[15]=M),(0,Z.useLayoutEffect)(ee,M);let N;t[16]===p.length?N=t[17]:(N=e=>{let t=v.current;if(t===null||p.length===0)return;let n=t.getBoundingClientRect();if(n.width===0)return;let r=Math.min(n.width,Math.max(0,e.clientX-n.left)),i=Math.min(n.height,Math.max(0,e.clientY-n.top)),a=r/n.width,o=Math.round(a*(p.length-1));b.current={x:r,y:i},j(),_(Math.min(p.length-1,Math.max(0,o)))},t[16]=p.length,t[17]=N);let F=N,I=g===null?void 0:p[g],L=g===null?void 0:S[g],R;if(t[18]!==f||t[19]!==n){let e;t[21]===f?e=t[22]:(e=e=>f.has(e),t[21]=f,t[22]=e),R=n.some(e),t[18]=f,t[19]=n,t[20]=R}else R=t[20];let z=R,B;t[23]!==u||t[24]!==d?(B=e=>u===`hour`?ge(e,d):fe(e),t[23]=u,t[24]=d,t[25]=B):B=t[25];let V=B,te;t[26]!==V||t[27]!==l||t[28]!==u||t[29]!==d?(te=e=>u===`hour`&&l!==void 0?pe(e,l,d):V(e),t[26]=V,t[27]=l,t[28]=u,t[29]=d,t[30]=te):te=t[30];let ne=te,re;t[31]!==k||t[32]!==C.labeled||t[33]!==C.ticks||t[34]!==D?(re=C.labeled?C.ticks.map(e=>(0,$.jsx)(`span`,{className:`absolute right-0 -translate-y-1/2 text-3xs text-muted-foreground tabular-nums`,style:{top:`${D(e)/gn*100}%`},children:e===0?`0`:k(e)},e)):null,t[31]=k,t[32]=C.labeled,t[33]=C.ticks,t[34]=D,t[35]=re):re=t[35];let ie;t[36]===re?ie=t[37]:(ie=(0,$.jsx)(`div`,{className:`relative h-56 w-14 shrink-0`,children:re}),t[36]=re,t[37]=ie);let H;t[38]===Symbol.for(`react.memo_cache_sentinel`)?(H=()=>{b.current=null,_(null)},t[38]=H):H=t[38];let ae=`${u===`hour`?`Hourly`:`Daily`} ${c===`tokens`?`processed tokens`:`cost`} by provider`,oe;if(t[39]!==C.ticks||t[40]!==D){let e;t[42]===D?e=t[43]:(e=e=>{let t=D(e);return(0,$.jsx)(`line`,{x1:0,x2:hn,y1:t,y2:t,stroke:`currentColor`,strokeWidth:1,className:`text-border`,vectorEffect:`non-scaling-stroke`},e)},t[42]=D,t[43]=e),oe=C.ticks.map(e),t[39]=C.ticks,t[40]=D,t[41]=oe}else oe=t[41];let se;if(t[44]!==w){let e;t[46]===Symbol.for(`react.memo_cache_sentinel`)?(e=e=>{let{provider:t,loading:n,area:r}=e;return(0,$.jsx)(`path`,{d:r,className:O(n),fill:Xe[t].color,fillOpacity:.12},t)},t[46]=e):e=t[46],se=w.map(e),t[44]=w,t[45]=se}else se=t[45];let ce;if(t[47]!==w){let e;t[49]===Symbol.for(`react.memo_cache_sentinel`)?(e=e=>{let{provider:t,loading:n,line:r}=e;return(0,$.jsx)(`path`,{d:r,className:O(n),fill:`none`,stroke:Xe[t].color,strokeWidth:2,vectorEffect:`non-scaling-stroke`},t)},t[49]=e):e=t[49],ce=w.map(e),t[47]=w,t[48]=ce}else ce=t[48];let le;t[50]!==g||t[51]!==T?(le=g===null?null:(0,$.jsx)(`line`,{x1:g*T,x2:g*T,y1:vn,y2:gn,stroke:`currentColor`,strokeWidth:1,className:`text-muted-foreground`,vectorEffect:`non-scaling-stroke`}),t[50]=g,t[51]=T,t[52]=le):le=t[52];let ue;t[53]!==ae||t[54]!==oe||t[55]!==se||t[56]!==ce||t[57]!==le?(ue=(0,$.jsxs)(`svg`,{className:`h-full w-full`,viewBox:`0 0 ${hn} ${gn}`,preserveAspectRatio:`none`,role:`img`,"aria-label":ae,children:[oe,se,ce,le]}),t[53]=ae,t[54]=oe,t[55]=se,t[56]=ce,t[57]=le,t[58]=ue):ue=t[58];let U;t[59]!==k||t[60]!==ne||t[61]!==L?.bands||t[62]!==L?.total||t[63]!==I||t[64]!==f||t[65]!==z||t[66]!==n?(U=I===void 0?null:(0,$.jsxs)(`div`,{ref:y,className:`surface-glass pointer-events-none absolute z-10 min-w-36 max-w-full rounded-xl border border-border/50 px-2.5 py-2 text-xs shadow-lg`,style:{left:`var(--usage-tooltip-left, 0px)`,top:`var(--usage-tooltip-top, 0px)`},children:[(0,$.jsx)(`div`,{className:`mb-1 text-muted-foreground`,children:ne(I)}),n.map(e=>{let{label:t,driverKind:n}=Xe[e];return(0,$.jsxs)(`div`,{className:`flex items-center justify-between gap-3`,children:[(0,$.jsxs)(`span`,{className:`flex items-center gap-1.5 text-muted-foreground`,children:[(0,$.jsx)(Le,{driverKind:n,displayName:t,iconClassName:`size-3`}),t]}),(0,$.jsx)(`span`,{className:P(`tabular-nums`,f.has(e)?`text-muted-foreground`:`text-foreground`),children:k(L?.bands.find(t=>t.provider===e)?.value??0)})]},e)}),(0,$.jsxs)(`div`,{className:`mt-1 flex items-center justify-between gap-3 border-t border-border pt-1`,children:[(0,$.jsx)(`span`,{className:`text-muted-foreground`,children:`Total`}),(0,$.jsx)(`span`,{className:P(`tabular-nums`,z?`text-muted-foreground`:`text-foreground`),children:k(L?.total??0)})]})]}),t[59]=k,t[60]=ne,t[61]=L?.bands,t[62]=L?.total,t[63]=I,t[64]=f,t[65]=z,t[66]=n,t[67]=U):U=t[67];let de;t[68]!==F||t[69]!==ue||t[70]!==U?(de=(0,$.jsxs)(`div`,{ref:v,className:`relative h-56 flex-1`,onMouseMove:F,onMouseLeave:H,children:[ue,U]}),t[68]=F,t[69]=ue,t[70]=U,t[71]=de):de=t[71];let G;t[72]!==ie||t[73]!==de?(G=(0,$.jsxs)(`div`,{className:`flex gap-2`,children:[ie,de]}),t[72]=ie,t[73]=de,t[74]=G):G=t[74];let me;t[75]!==V||t[76]!==p[0]?(me=p[0]===void 0?``:V(p[0]),t[75]=V,t[76]=p[0],t[77]=me):me=t[77];let he;t[78]===me?he=t[79]:(he=(0,$.jsx)(`span`,{children:me}),t[78]=me,t[79]=he);let q;t[80]!==V||t[81]!==p?(q=p[Math.floor(p.length/2)]===void 0?``:V(p[Math.floor(p.length/2)]??``),t[80]=V,t[81]=p,t[82]=q):q=t[82];let J;t[83]===q?J=t[84]:(J=(0,$.jsx)(`span`,{children:q}),t[83]=q,t[84]=J);let Y;t[85]!==V||t[86]!==p?(Y=p[p.length-1]===void 0?``:V(p[p.length-1]??``),t[85]=V,t[86]=p,t[87]=Y):Y=t[87];let _e;t[88]===Y?_e=t[89]:(_e=(0,$.jsx)(`span`,{children:Y}),t[88]=Y,t[89]=_e);let ve;t[90]!==he||t[91]!==J||t[92]!==_e?(ve=(0,$.jsxs)(`div`,{className:`flex justify-between pl-16 text-3xs text-muted-foreground uppercase`,children:[he,J,_e]}),t[90]=he,t[91]=J,t[92]=_e,t[93]=ve):ve=t[93];let X;return t[94]!==G||t[95]!==ve?(X=(0,$.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[G,ve]}),t[94]=G,t[95]=ve,t[96]=X):X=t[96],X}function Mn(e){return P(`transition-opacity`,e&&`opacity-40 delay-150`)}function Nn(e){return[e.day,e]}function Pn(e){return[e.hourStart,e]}function Fn(e){let t=(0,Q.c)(30),{label:n,segments:r,format:i,aside:a}=e,o,s,c,l,u,d;if(t[0]!==a||t[1]!==i||t[2]!==n||t[3]!==r){d=Symbol.for(`react.early_return_sentinel`);bb0:{let e=r.filter(Ln),f=e.reduce(In,0);if(f<=0){d=null;break bb0}c=`flex min-w-0 flex-col gap-2.5`;let p;t[10]===n?p=t[11]:(p=(0,$.jsx)(`h3`,{className:`text-sm font-medium text-foreground`,children:n}),t[10]=n,t[11]=p),t[12]!==a||t[13]!==p?(l=(0,$.jsxs)(`div`,{className:`flex items-baseline justify-between gap-3`,children:[p,a]}),t[12]=a,t[13]=p,t[14]=l):l=t[14];let m;t[15]===i?m=t[16]:(m=e=>`${e.label} ${i(e.value)}`,t[15]=i,t[16]=m);let h;t[17]!==i||t[18]!==f?(h=e=>(0,$.jsxs)(oe,{children:[(0,$.jsx)(H,{render:(0,$.jsx)(`div`,{className:`h-full min-w-1 rounded-xs first:rounded-l-full last:rounded-r-full`,style:{flex:`${e.value} 1 0`,backgroundColor:e.color}})}),(0,$.jsxs)(ae,{children:[e.label,` · `,i(e.value),` · `,J(e.value/f)]})]},e.label),t[17]=i,t[18]=f,t[19]=h):h=t[19],u=(0,$.jsx)(`div`,{role:`img`,"aria-label":`${n}: ${e.map(m).join(`, `)}`,className:`flex h-2 gap-0.5`,children:e.map(h)}),o=`flex flex-wrap gap-x-4 gap-y-1 text-xs`;let g;t[20]===i?g=t[21]:(g=e=>(0,$.jsxs)(`span`,{className:`flex items-center gap-1.5`,children:[(0,$.jsx)(`span`,{"aria-hidden":!0,className:`size-2 rounded-xs`,style:{backgroundColor:e.color}}),(0,$.jsx)(`span`,{className:`text-muted-foreground`,children:e.label}),(0,$.jsx)(`span`,{className:`text-foreground tabular-nums`,children:i(e.value)})]},e.label),t[20]=i,t[21]=g),s=e.map(g)}t[0]=a,t[1]=i,t[2]=n,t[3]=r,t[4]=o,t[5]=s,t[6]=c,t[7]=l,t[8]=u,t[9]=d}else o=t[4],s=t[5],c=t[6],l=t[7],u=t[8],d=t[9];if(d!==Symbol.for(`react.early_return_sentinel`))return d;let f;t[22]!==o||t[23]!==s?(f=(0,$.jsx)(`div`,{className:o,children:s}),t[22]=o,t[23]=s,t[24]=f):f=t[24];let p;return t[25]!==c||t[26]!==l||t[27]!==u||t[28]!==f?(p=(0,$.jsxs)(`div`,{className:c,children:[l,u,f]}),t[25]=c,t[26]=l,t[27]=u,t[28]=f,t[29]=p):p=t[29],p}function In(e,t){return e+t.value}function Ln(e){return e.value>0}function Rn(e){return e.toSorted((e,t)=>t.totalTokens-e.totalTokens||t.costUsd-e.costUsd)}function zn(e,t){return t===`tokens`?e.tokenShare:pt(e)?null:e.costShare}function Bn({tokens:e}){let t=e.uncachedInputTokens+e.cachedInputTokens+e.cacheCreationTokens;return t===0?null:e.cachedInputTokens/t}function Vn(e){let t=e.totalTokens-e.unpricedTokens;return t<=0||pt(e)?null:e.costUsd/t*1e6}var Hn=e=>`color-mix(in oklab, var(--foreground) ${e}%, var(--background))`,Un={input:Hn(60),cacheRead:Hn(30),cacheWrite:Hn(72),output:Hn(100),other:Hn(44)};function Wn(e){return[{label:`Input`,value:e.input,color:Un.input},{label:`Cache read`,value:e.cacheRead,color:Un.cacheRead},{label:`Cache write`,value:e.cacheWrite,color:Un.cacheWrite},{label:`Output`,value:e.output,color:Un.output},{label:`Other`,value:e.unsplit>=.005?e.unsplit:0,color:Un.other}]}function Gn(e){return[{label:`Input`,value:e.uncachedInputTokens,color:Un.input},{label:`Cache read`,value:e.cachedInputTokens,color:Un.cacheRead},{label:`Cache write`,value:e.cacheCreationTokens,color:Un.cacheWrite},{label:`Output`,value:e.outputTokens,color:Un.output}]}function Kn(e){return[{label:`Standard`,value:e.standard,color:Hn(34)},{label:`Fast`,value:e.fast,color:Hn(66)},{label:`Ultrafast`,value:e.ultrafast,color:Hn(100)}]}function qn(e){let t=(0,Q.c)(80),{model:n,environments:r,metric:i,chartWindow:a,onSetPrice:o,onClose:s}=e,c;t[0]!==n.model||t[1]!==n.provider?(c=e=>e.provider===n.provider&&e.model===n.model,t[0]=n.model,t[1]=n.provider,t[2]=c):c=t[2];let l;t[3]!==r||t[4]!==c?(l=wt(r,c),t[3]=r,t[4]=c,t[5]=l):l=t[5];let u=l,d;t[6]===n.provider?d=t[7]:(d=[n.provider],t[6]=n.provider,t[7]=d);let f=d,p=Xe[n.provider],m;t[8]===n?m=t[9]:(m=pt(n),t[8]=n,t[9]=m);let h=m,g;if(t[10]!==h||t[11]!==n){let e=Bn(n),r=Vn(n),i;t[13]!==h||t[14]!==n.costUsd?(i=h?`Unpriced`:W(n.costUsd),t[13]=h,t[14]=n.costUsd,t[15]=i):i=t[15];let a;t[16]===i?a=t[17]:(a={label:`Cost`,value:i},t[16]=i,t[17]=a);let o;t[18]===n.totalTokens?o=t[19]:(o=K(n.totalTokens),t[18]=n.totalTokens,t[19]=o);let s;t[20]===o?s=t[21]:(s={label:`Tokens`,value:o},t[20]=o,t[21]=s),g=[a,s,r===null?null:{label:`Per 1M tokens`,value:W(r)},e===null?null:{label:`Cache hit`,value:J(e)}].filter(Yn),t[10]=h,t[11]=n,t[12]=g}else g=t[12];let _=g,v;t[22]===s?v=t[23]:(v=e=>{e||s()},t[22]=s,t[23]=v);let y;t[24]!==p.driverKind||t[25]!==p.label?(y=(0,$.jsx)(Le,{driverKind:p.driverKind,displayName:p.label,iconClassName:`size-5`}),t[24]=p.driverKind,t[25]=p.label,t[26]=y):y=t[26];let b;t[27]===n.model?b=t[28]:(b=(0,$.jsx)(we,{children:n.model}),t[27]=n.model,t[28]=b);let x;t[29]!==y||t[30]!==b?(x=(0,$.jsxs)(`div`,{className:`flex items-center gap-2`,children:[y,b]}),t[29]=y,t[30]=b,t[31]=x):x=t[31];let S;t[32]!==h||t[33]!==n.costShare?(S=h?``:` · ${J(n.costShare)} of cost`,t[32]=h,t[33]=n.costShare,t[34]=S):S=t[34];let C;t[35]!==p.label||t[36]!==S?(C=(0,$.jsxs)(De,{children:[p.label,S]}),t[35]=p.label,t[36]=S,t[37]=C):C=t[37];let w;t[38]!==C||t[39]!==x?(w=(0,$.jsxs)(Ce,{children:[x,C]}),t[38]=C,t[39]=x,t[40]=w):w=t[40];let T;t[41]===_?T=t[42]:(T=(0,$.jsx)(`div`,{className:`grid grid-cols-2 gap-x-6 gap-y-4 sm:grid-cols-4`,children:_.map(Jn)}),t[41]=_,t[42]=T);let E=h?`tokens`:i,D;t[43]!==a.days||t[44]!==a.hours||t[45]!==a.referenceTime||t[46]!==a.resolution||t[47]!==a.timeZone||t[48]!==f||t[49]!==E||t[50]!==u.daily||t[51]!==u.hourly?(D=(0,$.jsx)(jn,{providers:f,days:a.days,daily:u.daily,hours:a.hours,hourly:u.hourly,metric:E,referenceTime:a.referenceTime,resolution:a.resolution,timeZone:a.timeZone}),t[43]=a.days,t[44]=a.hours,t[45]=a.referenceTime,t[46]=a.resolution,t[47]=a.timeZone,t[48]=f,t[49]=E,t[50]=u.daily,t[51]=u.hourly,t[52]=D):D=t[52];let O;t[53]!==h||t[54]!==u.categoryCost?(O=h?null:(0,$.jsx)(Fn,{label:`Cost by type`,segments:Wn(u.categoryCost),format:W}),t[53]=h,t[54]=u.categoryCost,t[55]=O):O=t[55];let k;t[56]===n.tokens?k=t[57]:(k=Gn(n.tokens),t[56]=n.tokens,t[57]=k);let A;t[58]===k?A=t[59]:(A=(0,$.jsx)(Fn,{label:`Tokens by type`,segments:k,format:K}),t[58]=k,t[59]=A);let j;t[60]===u.speedCost?j=t[61]:(j=u.speedCost.fast+u.speedCost.ultrafast>0?(0,$.jsx)(Fn,{label:`Cost by speed`,segments:Kn(u.speedCost),format:W,aside:(0,$.jsx)(Xn,{premiumUsd:u.speedCost.premium})}):null,t[60]=u.speedCost,t[61]=j);let ee;t[62]!==O||t[63]!==A||t[64]!==j?(ee=(0,$.jsxs)(`div`,{className:`grid gap-x-10 gap-y-8 sm:grid-cols-2`,children:[O,A,j]}),t[62]=O,t[63]=A,t[64]=j,t[65]=ee):ee=t[65];let N;t[66]!==T||t[67]!==D||t[68]!==ee?(N=(0,$.jsx)(Ee,{children:(0,$.jsxs)(`div`,{className:`flex flex-col gap-8`,children:[T,D,ee]})}),t[66]=T,t[67]=D,t[68]=ee,t[69]=N):N=t[69];let P;t[70]!==n.unpricedTokens||t[71]!==o?(P=n.unpricedTokens>0?(0,$.jsxs)(Te,{variant:`bare`,className:`items-center sm:justify-between`,children:[(0,$.jsxs)(`span`,{className:`text-xs text-muted-foreground`,children:[K(n.unpricedTokens),` tokens have no known price`]}),(0,$.jsx)(M,{onClick:o,children:`Set price`})]}):null,t[70]=n.unpricedTokens,t[71]=o,t[72]=P):P=t[72];let F;t[73]!==w||t[74]!==N||t[75]!==P?(F=(0,$.jsxs)(Oe,{className:`max-w-3xl`,children:[w,N,P]}),t[73]=w,t[74]=N,t[75]=P,t[76]=F):F=t[76];let I;return t[77]!==F||t[78]!==v?(I=(0,$.jsx)(ke,{open:!0,onOpenChange:v,children:F}),t[77]=F,t[78]=v,t[79]=I):I=t[79],I}function Jn(e){return(0,$.jsxs)(`div`,{className:`flex min-w-0 flex-col gap-0.5`,children:[(0,$.jsx)(`span`,{className:`text-xs text-muted-foreground`,children:e.label}),(0,$.jsx)(`span`,{className:`text-2xl font-semibold text-foreground`,children:e.value})]},e.label)}function Yn(e){return e!==null}function Xn(e){let t=(0,Q.c)(4),{premiumUsd:n}=e,r;t[0]===n?r=t[1]:(r=W(n),t[0]=n,t[1]=r);let i;return t[2]===r?i=t[3]:(i=(0,$.jsxs)(`span`,{className:`text-xs text-muted-foreground`,children:[`Premium `,(0,$.jsx)(`span`,{className:`text-foreground tabular-nums`,children:r})]}),t[2]=r,t[3]=i),i}var Zn=`t3code:usage-page-preferences:v1`,Qn=p({metric:d([`cost`,`tokens`,`limits`]),windowDays:d([1,7,30,90]),hiddenProviders:T(C(v))}),$n={metric:`limits`,windowDays:30};function er(){try{return i(Zn,Qn)??$n}catch(e){return console.error(`Could not read Usage page preferences.`,e),$n}}function tr(e){try{h(Zn,e,Qn)}catch(e){console.error(`Could not save Usage page preferences.`,e)}}function nr(e){return He.some(t=>t.value===e)}function rr(e){return Be.some(t=>t.days===e)}var ir=e=>Xe[e].label;function ar(){let[e,t]=(0,Z.useState)(er);ie();let n=b(le),r=e=>{let t=Me(n,e.command,{context:{usagePageOpen:!0}});return t?`${e.label} (${t})`:e.label},[i,a]=(0,Z.useState)(()=>({days:e.windowDays,window:G(e.windowDays,void 0,e.windowDays===1?`hour`:`day`)})),o=e.metric,s=o===`limits`,[l,u]=(0,Z.useState)(!1),[d,f]=(0,Z.useState)(()=>Date.now()),p=(0,Z.useRef)(!1),[m,h]=(0,Z.useState)(`model`),[g,_]=(0,Z.useState)(null),[v,y]=(0,Z.useState)(null),[x,S]=(0,Z.useState)(null),C=(0,Z.useMemo)(()=>new Set(e.hiddenProviders),[e.hiddenProviders]),{days:T,window:E}=i,D=T===1,{merged:O,environments:k,selectedEnvironments:A,shown:j,isPartial:ee,refresh:N}=Dt(E,x,C),F=j?.merged??O,I=j?.window??E,L=I.resolution===`hour`,R=l&&!s,z=j!==null&&j.window!==E,H=(0,Z.useMemo)(()=>{if(z)return{partial:!0,everyProvider:!0,providers:new Set};let e=ft(A,R),t=new Set([...e.providers].filter(e=>!C.has(e)));return{partial:e.everyProvider||t.size>0,everyProvider:e.everyProvider,providers:t}},[z,R,A,C]),ae=e=>H.everyProvider||H.providers.has(e),oe=b(se.presentationsAtom),ue=C.has(`cursor`)?[]:at(A),U=[...new Set(A.flatMap(e=>e.summary?.sources.flatMap(e=>e.message&&!e.action&&!C.has(e.fingerprint.provider)&&(e.status===`partial`||e.status===`failed`||e.fingerprint.provider===`cursor`)?[e.message]:[])??[]))],pe=de(ce.refreshProviders,{reportFailure:!1}),_e=A.some(e=>e.canReadDiagnostics),X=(0,Z.useMemo)(()=>Y(I.sinceDay,I.untilDay),[I.sinceDay,I.untilDay]),xe=(0,Z.useMemo)(()=>I.sinceTime===void 0||I.untilTime===void 0?[]:he(I.sinceTime,I.untilTime),[I.sinceTime,I.untilTime]),Ce=(0,Z.useMemo)(()=>(L?F.hourly:F.daily).toReversed(),[L,F.daily,F.hourly]),we=(0,Z.useMemo)(()=>m===`model`&&o===`tokens`?Rn(F.models):F.models,[m,F.models,o]),Te=(0,Z.useMemo)(()=>Ke(F.providers),[F.providers]),Ee=(0,Z.useMemo)(()=>qe.filter(e=>Te.includes(e)||H.providers.has(e)),[H.providers,Te]),De=(0,Z.useMemo)(()=>new Set(Ee.filter(e=>H.everyProvider||H.providers.has(e))),[Ee,H.everyProvider,H.providers]),Oe=v===null?void 0:F.models.find(e=>`${e.provider}:${e.model}`===v),ke=we.reduce((e,t)=>Math.max(e,o===`tokens`?t.totalTokens:t.costUsd),0),je=Ee.map(e=>({kind:`usage`,provider:e})),Le=Math.max(Ee.indexOf(`codex`),Ee.indexOf(`claude`))+1;je.splice(Le,0,...ue.map(e=>({kind:`enable`,environment:e})));let Ue=`${60/(Ee.length+2)}%`,Qe=n=>{let r={...e,...n};t(r),tr(r)},nt=e=>{rr(e)&&(Qe({windowDays:e}),a({days:e,window:G(e,void 0,e===1?`hour`:`day`)}))},Q=e=>{e===`limits`&&f(Date.now()),Qe({metric:e})},rt=async(e=!1,t=!1)=>{try{await Promise.all(Array.from(oe,([n,r])=>{if((x===null||x.has(n))&&r.connection.phase===`connected`&&r.serverConfig!==null)return ct(n,()=>pe({environmentId:n,input:{}}),e,t)}))}finally{f(Date.now())}},it=(0,Z.useEffectEvent)(e=>{if(e.defaultPrevented||e.repeat||e.isComposing||Ye()||We())return;let t=Ve(e,n),r=He.find(e=>e.command===t),i=Be.find(e=>e.command===t);(r||i)&&(e.preventDefault(),e.stopPropagation(),r&&Q(r.value),i&&!s&&nt(i.days))});(0,Z.useEffect)(()=>(globalThis.window.addEventListener(`keydown`,it,!0),()=>globalThis.window.removeEventListener(`keydown`,it,!0)),[]);let ot=()=>{if(p.current)return;if(s){p.current=!0,u(!0),rt().finally(()=>{p.current=!1,u(!1)});return}let e=G(T,void 0,D?`hour`:`day`);(e.sinceDay!==E.sinceDay||e.untilDay!==E.untilDay||e.sinceTime!==E.sinceTime||e.untilTime!==E.untilTime)&&a({days:T,window:e}),p.current=!0,u(!0),N(e).finally(()=>{p.current=!1,u(!1)})},st=[...oe].filter(([e,t])=>t.connection.phase===`connected`&&t.serverConfig!==null&&(x===null||x.has(e))).map(([e])=>e).sort().join(`,`),lt=(0,Z.useEffectEvent)(()=>{rt(!0)});(0,Z.useEffect)(()=>{s&&st&<()},[s,st]);let ut=L&&I.sinceTime!==void 0&&I.untilTime!==void 0?`${me(I.sinceTime,I.timeZone)} to ${me(I.untilTime,I.timeZone)}`:`${fe(I.sinceDay)} to ${fe(I.untilDay)}`,dt=(0,$.jsxs)(`div`,{className:`grid w-full min-w-0 grid-cols-[minmax(0,1fr)_auto] items-center gap-x-3 py-2 xl:flex`,children:[(0,$.jsxs)(tt,{ariaLabel:`Usage breadcrumb`,className:`min-w-0`,children:[(0,$.jsx)($e,{children:(0,$.jsx)(`h1`,{children:`Usage`})}),(0,$.jsx)(et,{}),(0,$.jsx)($e,{className:`min-w-10 shrink`,children:(0,$.jsx)(vr,{environments:k,selectedEnvironments:A,selectedEnvironmentIds:x,onSelectionChange:S,showUsageStatus:!s,refreshing:R,isPartial:ee,duplicateSources:F.duplicateSources,contractMismatches:F.contractMismatches,onOpenModelPrices:()=>_({})})}),(0,$.jsx)(et,{}),(0,$.jsx)($e,{current:!0,className:`min-w-10`,children:(0,$.jsx)(xr,{hiddenProviders:C,onChange:e=>Qe({hiddenProviders:e})})})]}),s?null:(0,$.jsx)(`span`,{className:`hidden min-w-0 truncate text-xs text-muted-foreground 2xl:block`,children:ut}),(0,$.jsxs)(`div`,{className:`ms-auto hidden min-w-0 items-center justify-end gap-2 xl:flex`,children:[(0,$.jsx)(ye,{"aria-label":`Usage metric`,variant:`segmented`,value:[o],onValueChange:e=>{let t=e[0];nr(t)&&Q(t)},children:He.map(e=>(0,$.jsx)(be,{value:e.value,title:r(e),children:e.label},e.value))}),(0,$.jsx)(ye,{"aria-label":`Usage period`,variant:`segmented`,value:[String(T)],disabled:s,onValueChange:e=>{let t=e[0];t&&nt(Number(t))},children:Be.map(e=>(0,$.jsx)(be,{value:String(e.days),title:r(e),children:e.label},e.days))}),(0,$.jsx)(M,{onClick:ot,"aria-label":s?`Refresh limits`:`Refresh usage`,"aria-busy":l,disabled:l||!s&&!_e,size:`icon-sm`,variant:`ghost`,children:(0,$.jsx)(Je,{size:`sm`,refreshing:l})})]}),(0,$.jsxs)(`div`,{className:`ms-auto flex min-w-0 items-center justify-end gap-1 xl:hidden`,children:[(0,$.jsxs)(re,{value:o,onValueChange:e=>{nr(e)&&Q(e)},children:[(0,$.jsx)(ne,{"aria-label":`Usage metric`,size:`compact`,variant:`ghost`,className:`w-auto min-w-0`,children:(0,$.jsx)(V,{children:He.find(e=>e.value===o)?.label})}),(0,$.jsx)(te,{align:`end`,alignItemWithTrigger:!1,children:He.map(e=>(0,$.jsx)(B,{value:e.value,title:r(e),children:e.label},e.value))})]}),(0,$.jsxs)(re,{value:String(T),disabled:s,onValueChange:e=>nt(Number(e)),children:[(0,$.jsx)(ne,{"aria-label":`Usage period`,size:`compact`,variant:`ghost`,className:`w-auto min-w-0`,children:(0,$.jsx)(V,{children:Be.find(e=>e.days===T)?.label})}),(0,$.jsx)(te,{align:`end`,alignItemWithTrigger:!1,children:Be.map(e=>(0,$.jsx)(B,{value:String(e.days),title:r(e),children:e.label},e.days))})]}),(0,$.jsx)(M,{onClick:ot,"aria-label":s?`Refresh limits`:`Refresh usage`,"aria-busy":l,disabled:l||!s&&!_e,size:`icon-sm`,variant:`ghost`,children:(0,$.jsx)(Je,{size:`sm`,refreshing:l})})]})]});return(0,$.jsxs)(Ae,{className:`h-dvh min-h-0 overflow-hidden overscroll-y-none isolate`,children:[(0,$.jsxs)(`div`,{className:`flex min-h-0 min-w-0 flex-1 flex-col bg-background text-foreground`,children:[(0,$.jsx)(Ze,{electron:ve,children:dt}),(0,$.jsx)(Se,{className:`min-h-0 flex-1`,children:(0,$.jsx)(ze,{width:`wide`,children:A.length===0?(0,$.jsx)(`p`,{className:`text-sm text-muted-foreground`,children:k.length===0?`Connect an environment to see ${s?`limits`:`usage`}.`:`Select an environment to see ${s?`limits`:`usage`}.`}):s?(0,$.jsx)(Ge,{selectedEnvironmentIds:x,hiddenProviders:C,now:d,cursorPrompt:ue.length>0?(0,$.jsx)(lr,{environments:ue,onEnabled:()=>{N(),rt(!1,!0)}}):null}):j===null?(0,$.jsx)(Sr,{}):_e?(0,$.jsxs)(`div`,{"aria-busy":H.partial,className:`flex flex-col gap-6`,children:[U.map(e=>(0,$.jsx)(`p`,{className:`mb-4 text-sm text-muted-foreground`,children:e},e)),(0,$.jsxs)(`section`,{className:`grid gap-6 lg:grid-cols-[minmax(0,18rem)_minmax(0,1fr)]`,children:[(0,$.jsxs)(`div`,{className:`flex min-w-0 flex-col gap-5`,children:[(0,$.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[(0,$.jsx)(`span`,{className:P(`text-4xl font-semibold text-foreground tabular-nums`,dr(H.partial)),children:o===`cost`?W(F.costUsd):K(F.totalTokens)}),(0,$.jsxs)(`span`,{className:`inline-flex items-center gap-1 text-xs text-muted-foreground`,children:[(0,$.jsxs)(`span`,{children:[(0,$.jsxs)(`span`,{className:dr(H.partial),children:[q(F.sessions),` sessions`]}),o===`cost`&&` · API estimate`]}),o===`cost`&&F.costQuality.unpricedShare>0&&(0,$.jsxs)(Fe,{children:[(0,$.jsx)(Pe,{openOnHover:!0,render:(0,$.jsx)(w,{tone:`muted`}),"aria-label":`Unpriced usage details`,children:(0,$.jsx)(c,{className:`size-3`,"aria-hidden":!0})}),(0,$.jsxs)(Ne,{side:`top`,tooltipStyle:!0,children:[`API estimate excludes`,` `,J(F.costQuality.unpricedShare),` unpriced records.`]})]})]})]}),!C.has(`codex`)&&[...oe].some(([e,t])=>(x===null||x.has(e))&&t.serverConfig?.providers.some(Ie))?(0,$.jsxs)(`div`,{className:`flex items-center justify-between gap-2 text-xs text-muted-foreground`,children:[(0,$.jsx)(`span`,{children:`ChatGPT shared usage`}),(0,$.jsx)(Re,{size:`xs`})]}):null,je.map(e=>{if(e.kind===`enable`)return(0,$.jsx)(cr,{environmentId:e.environment.environmentId,label:e.environment.label,showEnvironment:A.length>1,onEnabled:()=>{N(),rt(!1,!0)}},`enable:${e.environment.environmentId}`);let t=e.provider,n=F.providers.find(e=>e.provider===t),r=o===`cost`?n?.costShare??0:n?.tokenShare??0,i=n?.sessions??0,a=`${q(i)} ${i===1?`session`:`sessions`}`,s=ae(t),c=s&&!Te.includes(t);return(0,$.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[(0,$.jsxs)(`div`,{className:`flex items-baseline justify-between gap-4`,children:[(0,$.jsxs)(`span`,{className:`flex min-w-0 items-center gap-2 text-sm text-foreground`,children:[(0,$.jsx)(`span`,{"aria-hidden":!0,className:`size-2 shrink-0 rounded-full`,style:{backgroundColor:Xe[t].color}}),(0,$.jsx)(ur,{provider:t,className:`size-4`}),(0,$.jsxs)(`span`,{className:`flex min-w-0 items-baseline gap-1.5`,children:[(0,$.jsx)(`span`,{className:`truncate`,children:Xe[t].label}),(0,$.jsx)(`span`,{className:P(`shrink-0 whitespace-nowrap text-2xs text-muted-foreground tabular-nums`,dr(s),c&&`invisible`),children:a})]})]}),(0,$.jsx)(`span`,{className:P(`shrink-0 text-sm font-medium text-foreground tabular-nums`,dr(s)),children:c?`—`:o===`cost`?W(n?.costUsd??0):K(n?.totalTokens??0)})]}),(0,$.jsx)(`span`,{className:P(`text-xs text-muted-foreground`,dr(s),c&&`invisible`),children:o===`cost`?`${J(r)} of cost · ${K(n?.totalTokens??0)} tokens`:`${J(r)} of tokens · ${W(n?.costUsd??0)}`})]},t)})]}),(0,$.jsxs)(`div`,{className:`flex min-w-0 flex-col gap-3`,children:[(0,$.jsxs)(`h2`,{className:`text-sm font-medium text-foreground`,children:[L?`Hourly`:`Daily`,` `,o===`tokens`?`processed tokens`:`cost`]}),(0,$.jsx)(jn,{providers:Ee,loadingProviders:De,days:X,daily:F.daily,hours:xe,hourly:F.hourly,metric:o,referenceTime:I.untilTime,resolution:L?`hour`:`day`,timeZone:I.timeZone})]})]}),(0,$.jsxs)(`section`,{className:`flex flex-col gap-2`,children:[(0,$.jsx)(`h2`,{className:`text-sm font-medium text-foreground`,children:`Totals`}),(0,$.jsxs)(`div`,{className:`grid grid-cols-2 gap-x-6 gap-y-4 py-1 md:grid-cols-5`,children:[(0,$.jsx)(fr,{loading:H.partial,label:`Processed tokens`,value:K(F.totalTokens)}),(0,$.jsx)(fr,{loading:H.partial,label:`Cached input`,value:K(F.cachedInputTokens)}),(0,$.jsx)(fr,{loading:H.partial,label:`Uncached input`,value:K(F.uncachedInputTokens)}),(0,$.jsx)(fr,{loading:H.partial,label:`Output`,value:K(F.outputTokens)}),(0,$.jsx)(fr,{loading:H.partial,label:`Cache savings`,value:W(F.costQuality.cacheSavingsUsd)})]})]}),F.totalTokens>0?(0,$.jsx)(`section`,{className:P(`grid gap-x-12 gap-y-8 lg:grid-cols-2`,dr(H.partial)),children:o===`tokens`?(0,$.jsx)(Fn,{label:`Tokens by type`,segments:Gn(F),format:K}):(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(Fn,{label:`Cost by type`,segments:Wn(F.categoryCost),format:W}),F.speedCost.fast+F.speedCost.ultrafast>0?(0,$.jsx)(Fn,{label:`Cost by speed`,segments:Kn(F.speedCost),format:W,aside:(0,$.jsx)(Xn,{premiumUsd:F.speedCost.premium})}):null]})}):null,(0,$.jsxs)(`section`,{className:`flex flex-col gap-3`,children:[(0,$.jsxs)(`div`,{className:`flex items-center justify-between gap-3`,children:[(0,$.jsx)(`h2`,{className:`text-sm font-medium text-foreground`,children:`Breakdown`}),(0,$.jsx)(ye,{"aria-label":`Usage breakdown`,variant:`segmented`,value:[m],onValueChange:e=>{let t=e[0];(t===`model`||t===`time`)&&h(t)},children:[{value:`model`,label:`Model`},{value:`time`,label:L?`Hour`:`Day`}].map(e=>(0,$.jsx)(be,{value:e.value,children:e.label},e.value))})]}),m===`model`?(0,$.jsxs)(`table`,{className:`w-full text-sm`,children:[(0,$.jsx)(`thead`,{children:(0,$.jsxs)(`tr`,{className:`border-b border-border text-right text-xs text-muted-foreground`,children:[(0,$.jsx)(`th`,{className:`py-2 pr-3 text-left font-normal`,children:`#`}),(0,$.jsx)(`th`,{className:`w-full py-2 text-left font-normal`,children:`Model`}),(0,$.jsx)(`th`,{className:`py-2 pl-6 font-normal`,children:`Cost`}),(0,$.jsx)(`th`,{className:`hidden py-2 pl-6 font-normal sm:table-cell`,children:`Share`}),(0,$.jsx)(`th`,{className:`py-2 pl-6 font-normal`,children:`Tokens`})]})}),(0,$.jsx)(`tbody`,{children:we.length===0?(0,$.jsx)(`tr`,{children:(0,$.jsx)(`td`,{colSpan:5,className:`py-6 text-center text-muted-foreground`,children:`No activity in this window.`})}):we.map((e,t)=>{let n=`${e.provider}:${e.model}`,r=o===`tokens`?e.totalTokens:e.costUsd,i=zn(e,o===`tokens`?`tokens`:`cost`),a=dr(ae(e.provider));return(0,$.jsxs)(`tr`,{className:`relative border-b border-border/50 text-right whitespace-nowrap text-muted-foreground tabular-nums transition-colors hover:bg-muted/50 has-focus-visible:bg-muted/50`,children:[(0,$.jsx)(`td`,{className:`py-2.5 pr-3 text-left text-xs`,children:t+1}),(0,$.jsxs)(`td`,{className:`py-2.5 text-left whitespace-normal`,children:[(0,$.jsxs)(`button`,{type:`button`,onClick:()=>y(n),className:`flex items-center gap-2 text-left text-foreground outline-none after:absolute after:inset-0`,children:[(0,$.jsx)(ur,{provider:e.provider,className:`size-3.5`}),e.model]}),(0,$.jsx)(`div`,{"aria-hidden":!0,className:P(`mt-1.5 h-0.5 max-w-48`,a),children:(0,$.jsx)(`div`,{className:`h-full rounded-full`,style:{width:r>0&&ke>0?`max(0.5rem, ${r/ke*100}%)`:0,backgroundColor:Xe[e.provider].color}})})]}),(0,$.jsx)(`td`,{className:P(`py-2.5 pl-6 text-foreground`,a),children:pt(e)?(0,$.jsx)(`span`,{className:`text-muted-foreground`,children:`Unpriced`}):W(e.costUsd)}),(0,$.jsx)(`td`,{className:P(`hidden py-2.5 pl-6 sm:table-cell`,a),children:i===null?``:J(i)}),(0,$.jsx)(`td`,{className:P(`py-2.5 pl-6`,a),children:K(e.totalTokens)})]},n)})})]}):(0,$.jsxs)(`table`,{className:`w-full table-fixed text-sm`,children:[(0,$.jsxs)(`colgroup`,{children:[(0,$.jsx)(`col`,{className:`w-2/5`}),Ee.map(e=>(0,$.jsx)(`col`,{style:{width:Ue}},e)),(0,$.jsx)(`col`,{style:{width:Ue}}),(0,$.jsx)(`col`,{style:{width:Ue}})]}),(0,$.jsx)(`thead`,{children:(0,$.jsxs)(`tr`,{className:`border-b border-border text-left text-xs text-muted-foreground`,children:[(0,$.jsx)(`th`,{className:`py-2 font-normal`,children:L?`Hour`:`Day`}),Ee.map(e=>(0,$.jsx)(`th`,{className:`py-2 text-right font-normal`,children:Xe[e].label},e)),(0,$.jsx)(`th`,{className:`py-2 text-right font-normal`,children:`Total`}),(0,$.jsx)(`th`,{className:`py-2 text-right font-normal`,children:`Tokens`})]})}),(0,$.jsx)(`tbody`,{children:Ce.length===0?(0,$.jsx)(`tr`,{children:(0,$.jsx)(`td`,{colSpan:Ee.length+3,className:`py-6 text-center text-muted-foreground`,children:`No activity in this window.`})}):Ce.map(e=>(0,$.jsxs)(`tr`,{className:`border-b border-border/50 transition-colors hover:bg-muted/50`,children:[(0,$.jsx)(`td`,{className:`py-2 text-foreground`,children:`hourStart`in e?ge(e.hourStart,I.timeZone):fe(e.day)}),Ee.map(t=>(0,$.jsx)(`td`,{className:P(`py-2 text-right text-muted-foreground tabular-nums`,dr(ae(t))),children:W(e.byProvider.get(t)?.costUsd??0)},t)),(0,$.jsx)(`td`,{className:P(`py-2 text-right text-foreground tabular-nums`,dr(H.partial)),children:W(e.costUsd)}),(0,$.jsx)(`td`,{className:P(`py-2 text-right text-muted-foreground tabular-nums`,dr(H.partial)),children:K(e.totalTokens)})]},`hourStart`in e?e.hourStart:e.day))})]})]})]}):(0,$.jsx)(`div`,{className:`space-y-2 py-12 text-center text-sm text-muted-foreground`,children:A.map(e=>(0,$.jsxs)(`p`,{children:[A.length>1?`${e.label}: `:null,e.error]},e.environmentId))})})})]}),Oe!==void 0&&!s?(0,$.jsx)(qn,{model:Oe,environments:A,metric:o===`tokens`?`tokens`:`cost`,chartWindow:{days:X,hours:xe,resolution:L?`hour`:`day`,timeZone:I.timeZone,referenceTime:I.untilTime},onSetPrice:()=>{y(null),_({model:Oe.model})},onClose:()=>y(null)}):null,g?(0,$.jsx)(Xt,{usage:k,initialSelectedEnvironmentIds:x,initialModel:g.model,onOpenChange:e=>{e||_(null)}}):null]})}var or=`Requires access to your Cursor login in macOS Keychain.`;function sr({environmentId:e,label:t,onEnabled:n,tooltip:r,buttonText:i=`Enable`}){let a=de(ce.updateSettings,{label:`enable Cursor account usage`}),[o,s]=(0,Z.useState)(!1),c=async()=>{s(!0);try{(await a({environmentId:e,input:{patch:{cursorKeychainUsageEnabled:!0}}}))._tag===`Success`&&n()}finally{s(!1)}},l=r?(0,$.jsx)(w,{disabled:o,"aria-busy":o,"aria-label":`Enable Cursor usage from ${t}`,onClick:()=>void c(),children:i}):(0,$.jsx)(M,{size:`sm`,variant:`outline`,disabled:o,"aria-busy":o,"aria-label":`Enable Cursor usage from ${t}`,onClick:()=>void c(),children:i});return r?(0,$.jsxs)(oe,{children:[(0,$.jsx)(H,{render:l}),(0,$.jsx)(ae,{children:or})]}):l}function cr(e){let t=(0,Q.c)(11),{environmentId:n,label:r,showEnvironment:i,onEnabled:a}=e,o,s;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(o=(0,$.jsx)(`span`,{"aria-hidden":!0,className:`size-2 shrink-0 rounded-full`,style:{backgroundColor:Xe.cursor.color}}),s=(0,$.jsx)(ur,{provider:`cursor`,className:`size-4`}),t[0]=o,t[1]=s):(o=t[0],s=t[1]);let c=i?` · ${r}`:``,l;t[2]===c?l=t[3]:(l=(0,$.jsxs)(`span`,{className:`flex min-w-0 items-center gap-2 text-sm text-foreground`,children:[o,s,(0,$.jsxs)(`span`,{className:`truncate`,children:[`Cursor`,c]})]}),t[2]=c,t[3]=l);let u;t[4]!==n||t[5]!==r||t[6]!==a?(u=(0,$.jsx)(sr,{environmentId:n,label:r,onEnabled:a,tooltip:!0}),t[4]=n,t[5]=r,t[6]=a,t[7]=u):u=t[7];let d;return t[8]!==l||t[9]!==u?(d=(0,$.jsxs)(`div`,{className:`flex min-w-0 items-baseline justify-between gap-4 text-sm`,children:[l,u]}),t[8]=l,t[9]=u,t[10]=d):d=t[10],d}function lr(e){let t=(0,Q.c)(10),{environments:n,onEnabled:r}=e,i;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(i=(0,$.jsxs)(`h2`,{className:`flex items-center gap-2 text-sm font-medium text-foreground`,children:[(0,$.jsx)(Le,{driverKind:A.make(`cursor`),displayName:`Cursor`,indicatorBackground:`var(--background)`,className:`size-5`,iconClassName:`size-4 text-foreground/80`}),`Cursor`]}),t[0]=i):i=t[0];let a;t[1]===Symbol.for(`react.memo_cache_sentinel`)?(a=(0,$.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:or}),t[1]=a):a=t[1];let o;if(t[2]!==n||t[3]!==r){let e;t[5]!==n.length||t[6]!==r?(e=e=>(0,$.jsx)(sr,{environmentId:e.environmentId,label:e.label,buttonText:n.length>1?`Enable on ${e.label}`:`Enable`,onEnabled:r,tooltip:!1},e.environmentId),t[5]=n.length,t[6]=r,t[7]=e):e=t[7],o=n.map(e),t[2]=n,t[3]=r,t[4]=o}else o=t[4];let s;return t[8]===o?s=t[9]:(s=(0,$.jsxs)(`section`,{className:`flex flex-col gap-3`,children:[i,(0,$.jsxs)(`div`,{className:`flex flex-col items-start gap-3 rounded-lg border border-border/60 p-4`,children:[a,(0,$.jsx)(`div`,{className:`flex flex-wrap gap-2`,children:o})]})]}),t[8]=o,t[9]=s),s}function ur(e){let t=(0,Q.c)(4),{provider:n,className:r}=e,i=Xe[n],a;return t[0]!==r||t[1]!==i.driverKind||t[2]!==i.label?(a=(0,$.jsx)(Le,{driverKind:i.driverKind,displayName:i.label,iconClassName:r}),t[0]=r,t[1]=i.driverKind,t[2]=i.label,t[3]=a):a=t[3],a}function dr(e){return P(`transition-opacity`,e&&`opacity-40 delay-150`)}function fr(e){let t=(0,Q.c)(10),{label:n,value:r,loading:i}=e,a;t[0]===n?a=t[1]:(a=(0,$.jsx)(`span`,{className:`text-xs text-muted-foreground`,children:n}),t[0]=n,t[1]=a);let o;t[2]===i?o=t[3]:(o=P(`text-base font-medium text-foreground tabular-nums`,dr(i)),t[2]=i,t[3]=o);let s;t[4]!==o||t[5]!==r?(s=(0,$.jsx)(`span`,{className:o,children:r}),t[4]=o,t[5]=r,t[6]=s):s=t[6];let c;return t[7]!==a||t[8]!==s?(c=(0,$.jsxs)(`div`,{className:`flex min-w-0 flex-col gap-0.5`,children:[a,s]}),t[7]=a,t[8]=s,t[9]=c):c=t[9],c}function pr(e){let t=(0,Q.c)(14),{environments:n,duplicateSources:r,contractMismatches:i}=e,a,o,s,c;if(t[0]!==i||t[1]!==r||t[2]!==n){c=Symbol.for(`react.early_return_sentinel`);bb0:{let e=n.filter(_r),t=new Map(i.map(gr)),l=n.flatMap(e=>{let n=t.get(e.environmentId);return n===void 0?[]:[{environment:e,mismatch:n}]});if(e.length===0&&l.length===0&&r.length===0){c=null;break bb0}a=`flex flex-col gap-1 border-t border-border px-2 py-2 text-xs text-muted-foreground`,o=e.map(hr),s=l.map(mr)}t[0]=i,t[1]=r,t[2]=n,t[3]=a,t[4]=o,t[5]=s,t[6]=c}else a=t[3],o=t[4],s=t[5],c=t[6];if(c!==Symbol.for(`react.early_return_sentinel`))return c;let l;t[7]===r?l=t[8]:(l=r.length>0?(0,$.jsxs)(`span`,{children:[`Counted once across environments sharing a transcript directory:`,` `,r.join(`, `)]}):null,t[7]=r,t[8]=l);let u;return t[9]!==a||t[10]!==o||t[11]!==s||t[12]!==l?(u=(0,$.jsxs)(`div`,{className:a,children:[o,s,l]}),t[9]=a,t[10]=o,t[11]=s,t[12]=l,t[13]=u):u=t[13],u}function mr(e){let{environment:t,mismatch:n}=e;return(0,$.jsx)(`span`,{children:_e(t.label,n)},t.environmentId)}function hr(e){return(0,$.jsxs)(`span`,{children:[e.label,`: `,e.error]},e.label)}function gr(e){return[e.environmentId,e]}function _r(e){return e.error!==null}function vr(e){let t=(0,Q.c)(56),{environments:n,selectedEnvironments:i,selectedEnvironmentIds:o,onSelectionChange:c,showUsageStatus:l,refreshing:u,isPartial:d,duplicateSources:f,contractMismatches:p,onOpenModelPrices:m}=e,h=o===null,g=h?`All environments`:i.length===1?i[0].label:`${i.length} environments`,_;t[0]!==p||t[1]!==i?(_=i.some(br)||p.length>0,t[0]=p,t[1]=i,t[2]=_):_=t[2];let v=_,b;t[3]===Symbol.for(`react.memo_cache_sentinel`)?(b=(0,$.jsx)(w,{}),t[3]=b):b=t[3];let S;t[4]===g?S=t[5]:(S=(0,$.jsx)(Qe,{children:g}),t[4]=g,t[5]=S);let C;t[6]!==v||t[7]!==l?(C=(0,$.jsx)(`span`,{className:`flex size-3.5 shrink-0 items-center justify-center text-muted-foreground`,children:l&&v?(0,$.jsx)(r,{className:`size-3.5 text-warning-foreground`,"aria-label":`Some environments could not report usage`}):(0,$.jsx)(E,{className:`size-3.5 opacity-0 transition-opacity group-hover/usage-environment:opacity-100 group-focus-visible/usage-environment:opacity-100 group-data-popup-open/usage-environment:opacity-100`,"aria-hidden":!0})}),t[6]=v,t[7]=l,t[8]=C):C=t[8];let T;t[9]!==S||t[10]!==C?(T=(0,$.jsxs)(ee,{render:b,className:`group/usage-environment min-w-0 max-w-full`,children:[S,C]}),t[9]=S,t[10]=C,t[11]=T):T=t[11];let D;t[12]===c?D=t[13]:(D=e=>c(e?null:new Set),t[12]=c,t[13]=D);let O;t[14]!==h||t[15]!==D?(O=(0,$.jsx)(s,{checked:h,closeOnClick:!1,onCheckedChange:D,children:`All environments`}),t[14]=h,t[15]=D,t[16]=O):O=t[16];let k;t[17]===Symbol.for(`react.memo_cache_sentinel`)?(k=(0,$.jsx)(F,{}),t[17]=k):k=t[17];let A;if(t[18]!==n||t[19]!==c||t[20]!==u||t[21]!==o||t[22]!==i||t[23]!==l){let e;t[25]!==n.length||t[26]!==c||t[27]!==u||t[28]!==o||t[29]!==i||t[30]!==l?(e=e=>{let t=o===null||o.has(e.environmentId),r=ut(e,u),a=e.error===null?e.summary!==null&&!bt(e.summary.contractVersion,6)?`Update required`:e.isConnected?r.phase===`loading`?`Scanning…`:r.phase===`stale`?`Refreshing…`:r.phase===`partway`?dt(r.providers,ir):`Ready`:`Connecting…`:`Unavailable`;return(0,$.jsx)(s,{checked:t,closeOnClick:!1,onCheckedChange:t=>{let r=new Set(i.map(yr));t?r.add(e.environmentId):r.delete(e.environmentId),c(r.size===n.length?null:r)},children:(0,$.jsxs)(`span`,{className:`flex min-w-0 items-center gap-3`,children:[(0,$.jsx)(`span`,{className:`min-w-0 flex-1 truncate`,children:e.label}),l?(0,$.jsx)(`span`,{className:P(`shrink-0 text-xs text-muted-foreground`,e.error!==null&&`text-destructive`),children:a}):null]})},e.environmentId)},t[25]=n.length,t[26]=c,t[27]=u,t[28]=o,t[29]=i,t[30]=l,t[31]=e):e=t[31],A=n.map(e),t[18]=n,t[19]=c,t[20]=u,t[21]=o,t[22]=i,t[23]=l,t[24]=A}else A=t[24];let M;t[32]===n.length?M=t[33]:(M=n.length===0?(0,$.jsx)(`p`,{className:`px-2 py-2 text-xs text-muted-foreground`,children:`No environments connected.`}):null,t[32]=n.length,t[33]=M);let N;t[34]!==d||t[35]!==l?(N=l&&d?(0,$.jsx)(`p`,{className:`px-2 py-2 text-xs text-muted-foreground`,children:`Totals are partial while selected environments scan.`}):null,t[34]=d,t[35]=l,t[36]=N):N=t[36];let I;t[37]!==p||t[38]!==f||t[39]!==i||t[40]!==l?(I=l?(0,$.jsx)(pr,{environments:i,duplicateSources:f,contractMismatches:p}):null,t[37]=p,t[38]=f,t[39]=i,t[40]=l,t[41]=I):I=t[41];let L;t[42]===Symbol.for(`react.memo_cache_sentinel`)?(L=(0,$.jsx)(F,{}),t[42]=L):L=t[42];let R;t[43]===Symbol.for(`react.memo_cache_sentinel`)?(R=(0,$.jsx)(j,{"aria-hidden":!0}),t[43]=R):R=t[43];let z;t[44]===m?z=t[45]:(z=(0,$.jsxs)(y,{onClick:m,children:[R,`Model prices`]}),t[44]=m,t[45]=z);let B;t[46]!==M||t[47]!==N||t[48]!==I||t[49]!==z||t[50]!==O||t[51]!==A?(B=(0,$.jsxs)(x,{align:`start`,children:[O,k,A,M,N,I,L,z]}),t[46]=M,t[47]=N,t[48]=I,t[49]=z,t[50]=O,t[51]=A,t[52]=B):B=t[52];let V;return t[53]!==B||t[54]!==T?(V=(0,$.jsxs)(a,{children:[T,B]}),t[53]=B,t[54]=T,t[55]=V):V=t[55],V}function yr(e){return e.environmentId}function br(e){return e.error!==null}function xr(e){let t=(0,Q.c)(23),{hiddenProviders:n,onChange:r}=e,i;t[0]===n?i=t[1]:(i=qe.filter(e=>!n.has(e)),t[0]=n,t[1]=i);let o=i,c=o.length===qe.length?`All providers`:o.length===0?`No providers`:o.length===1?Xe[o[0]].label:`${o.length} providers`,l;t[2]===Symbol.for(`react.memo_cache_sentinel`)?(l=(0,$.jsx)(w,{}),t[2]=l):l=t[2];let u;t[3]===c?u=t[4]:(u=(0,$.jsx)(`span`,{className:`min-w-0 truncate`,children:c}),t[3]=c,t[4]=u);let d;t[5]===Symbol.for(`react.memo_cache_sentinel`)?(d=(0,$.jsx)(E,{className:`size-3.5 shrink-0 text-muted-foreground opacity-0 transition-opacity group-hover/usage-provider:opacity-100 group-focus-visible/usage-provider:opacity-100 group-data-popup-open/usage-provider:opacity-100`,"aria-hidden":!0}),t[5]=d):d=t[5];let f;t[6]===u?f=t[7]:(f=(0,$.jsxs)(ee,{render:l,className:`group/usage-provider min-w-0 max-w-full`,children:[u,d]}),t[6]=u,t[7]=f);let p=n.size===0,m;t[8]===r?m=t[9]:(m=e=>r(e?[]:qe),t[8]=r,t[9]=m);let h;t[10]!==p||t[11]!==m?(h=(0,$.jsx)(s,{checked:p,closeOnClick:!1,onCheckedChange:m,children:`All providers`}),t[10]=p,t[11]=m,t[12]=h):h=t[12];let g;t[13]===Symbol.for(`react.memo_cache_sentinel`)?(g=(0,$.jsx)(F,{}),t[13]=g):g=t[13];let _;t[14]!==n||t[15]!==r?(_=qe.map(e=>(0,$.jsx)(s,{checked:!n.has(e),closeOnClick:!1,onCheckedChange:t=>r(qe.filter(r=>r===e?!t:n.has(r))),children:(0,$.jsxs)(`span`,{className:`flex min-w-0 items-center gap-2`,children:[(0,$.jsx)(ur,{provider:e,className:`size-3.5`}),(0,$.jsx)(`span`,{className:`truncate`,children:Xe[e].label})]})},e)),t[14]=n,t[15]=r,t[16]=_):_=t[16];let v;t[17]!==_||t[18]!==h?(v=(0,$.jsxs)(x,{align:`start`,children:[h,g,_]}),t[17]=_,t[18]=h,t[19]=v):v=t[19];let y;return t[20]!==v||t[21]!==f?(y=(0,$.jsxs)(a,{children:[f,v]}),t[20]=v,t[21]=f,t[22]=y):y=t[22],y}function Sr(){let e=(0,Q.c)(7),t;e[0]===Symbol.for(`react.memo_cache_sentinel`)?(t=(0,$.jsxs)(`div`,{className:`flex flex-col gap-5`,children:[(0,$.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[(0,$.jsx)(X,{className:`h-10 w-36`}),(0,$.jsx)(X,{className:`h-4 w-32`})]}),qe.map(Cr)]}),e[0]=t):t=e[0];let n;e[1]===Symbol.for(`react.memo_cache_sentinel`)?(n=(0,$.jsx)(X,{className:`h-5 w-24`}),e[1]=n):n=e[1];let r;e[2]===Symbol.for(`react.memo_cache_sentinel`)?(r=(0,$.jsxs)(`section`,{className:`grid gap-6 lg:grid-cols-[minmax(0,18rem)_minmax(0,1fr)]`,children:[t,(0,$.jsxs)(`div`,{className:`flex flex-col gap-3`,children:[n,(0,$.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[(0,$.jsx)(X,{className:`ml-16 h-56`}),(0,$.jsx)(X,{className:`ml-16 h-4`})]})]})]}),e[2]=r):r=e[2];let i;e[3]===Symbol.for(`react.memo_cache_sentinel`)?(i=(0,$.jsx)(`h2`,{className:`text-sm font-medium text-foreground`,children:`Totals`}),e[3]=i):i=e[3];let a;e[4]===Symbol.for(`react.memo_cache_sentinel`)?(a=(0,$.jsxs)(`section`,{className:`flex flex-col gap-2`,children:[i,(0,$.jsx)(wr,{labels:[`Processed tokens`,`Cached input`,`Uncached input`,`Output`,`Cache savings`]})]}),e[4]=a):a=e[4];let o;e[5]===Symbol.for(`react.memo_cache_sentinel`)?(o=(0,$.jsx)(`section`,{className:`grid gap-x-12 gap-y-8 lg:grid-cols-2`,children:(0,$.jsxs)(`div`,{className:`flex flex-col gap-2.5`,children:[(0,$.jsx)(X,{className:`h-5 w-28`}),(0,$.jsx)(X,{className:`h-2`}),(0,$.jsx)(X,{className:`h-4 w-72`})]})}),e[5]=o):o=e[5];let s;return e[6]===Symbol.for(`react.memo_cache_sentinel`)?(s=(0,$.jsxs)($.Fragment,{children:[r,a,o,(0,$.jsxs)(`section`,{className:`flex flex-col gap-3`,children:[(0,$.jsxs)(`div`,{className:`flex items-center justify-between gap-3`,children:[(0,$.jsx)(`h2`,{className:`text-sm font-medium text-foreground`,children:`Breakdown`}),(0,$.jsx)(X,{shape:`card`,className:`h-7 w-28`})]}),(0,$.jsx)(X,{className:`h-44`})]})]}),e[6]=s):s=e[6],s}function Cr(e){return(0,$.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[(0,$.jsxs)(`div`,{className:`flex min-h-5 items-center justify-between gap-4`,children:[(0,$.jsxs)(`span`,{className:`flex items-center gap-2`,children:[(0,$.jsx)(X,{shape:`pill`,className:`size-2 shrink-0`}),(0,$.jsx)(X,{shape:`pill`,className:`size-4 shrink-0`}),(0,$.jsx)(X,{className:`h-3.5 w-20`})]}),(0,$.jsx)(X,{className:`h-3.5 w-14`})]}),(0,$.jsx)(X,{className:`h-4 w-36`})]},e)}function wr(e){let t=(0,Q.c)(4),{labels:n}=e,r;t[0]===n?r=t[1]:(r=n.map(Tr),t[0]=n,t[1]=r);let i;return t[2]===r?i=t[3]:(i=(0,$.jsx)(`div`,{className:`grid grid-cols-2 gap-x-6 gap-y-4 py-1 md:grid-cols-5`,children:r}),t[2]=r,t[3]=i),i}function Tr(e){return(0,$.jsxs)(`div`,{className:`flex flex-col gap-0.5`,children:[(0,$.jsx)(`span`,{className:`text-xs text-muted-foreground`,children:e}),(0,$.jsx)(X,{className:`h-6 w-16`})]},e)}var Er=ar;export{Er as component};
|
|
2
|
-
//# sourceMappingURL=usage-CKRSqJso.js.map
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{i as e}from"./rolldown-runtime-Dd_uD5pT.js";import{r as t}from"./Icon-l19w4AjM.js";import{a as n}from"./useParams-CoeDewwU.js";var r=e(t(),1);function i(e){let t=n();return r.useCallback(n=>t.navigate({...n,from:n.from??e?.from}),[e?.from,t])}export{i as t};
|
|
2
|
-
//# sourceMappingURL=useNavigate-Dhy_1-Mg.js.map
|
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
import{i as e}from"./rolldown-runtime-Dd_uD5pT.js";import{r as t}from"./Icon-l19w4AjM.js";import{D as n,Go as r,Gs as i,Lc as a,NE as o,NT as s,Ss as c,Yo as l,__ as u,fw as d,k_ as f,ms as p,w_ as m,ys as h}from"./utils-BAPnqm16.js";import{M as g,N as _,W as v}from"./runtime-B9IDNXDU.js";import{a as y,i as b}from"./vcsRefInvalidation-DfCz0cGO.js";import{C as x}from"./entities-DCbEYTvn.js";import{t as ee}from"./runtime-B5cKWtKn.js";import{i as S}from"./toast-CN7Jd-pG.js";import{s as C}from"./environments-iW64jjyO.js";import{i as w,n as T}from"./session-Bo2ZSprC.js";import{n as E}from"./query-B1uAr_ii.js";import{t as D}from"./use-atom-command-GpCw1tWF.js";import{f as te,s as O}from"./useSettings-CKA-LDDj.js";import{d as k,l as A,u as j}from"./queries-DCKH7ltg.js";import{t as M}from"./sourceControl-D6TEHNpa.js";import{C as N,r as P}from"./pullRequests-7IQc0VIk.js";import{R as F,b as ne,y as re}from"./pullRequestDetail.logic-CkxKh0fV.js";import{c as ie,f as ae,i as I,s as L}from"./p4ProjectFile--u7SOSK5.js";import{t as R}from"./sidebarProjectGrouping-DrnsFA8t.js";import{n as z}from"./useHandleNewThread-FJLPEfoH.js";var B=e(t(),1),V=o();function H(e){return{pullRequestResolution:_(e,{label:`environment-data:git:resolve-pull-request`,tag:a.gitResolvePullRequest}),preparePullRequestThread:g(e,{label:`environment-data:git:prepare-pull-request-thread`,tag:a.gitPreparePullRequestThread,scheduler:y,concurrency:b})}}var U=H(ee),W={init:`init`,pull:`pull`,publishRepository:`publish_repository`,runStackedAction:`run_change_request`,preparePullRequestThread:`prepare_pull_request_thread`};function G(e){let t=w(e.scope.environmentId,m),n=W[e.kind],i=l(A.stateAtom(e.scope)),a=i.operation===n,o=(0,B.useCallback)(()=>{A.resetError(r,e.scope,n)},[e.scope,n]),s=(0,B.useCallback)(async(...t)=>{if(e.scope.environmentId===null||!T(e.scope.environmentId,`source-control:write`))return p(d(new f({requiredScope:m,message:`This connection cannot change source control.`})));let i=async()=>{let n=await e.action(...t);return h(n)&&e.onSuccess?.(),n};return e.managedExternally===!0?i():A.track(r,e.scope,{operation:n,label:e.label},i)},[e.action,e.label,e.managedExternally,e.onSuccess,e.scope,n]);return{isAllowed:t,error:a?i.error:null,isPending:a&&i.isRunning,resetError:o,run:s}}function K(e){return e.environmentId===null||e.cwd===null?null:{environmentId:e.environmentId,cwd:e.cwd}}function q(e,t){let n=(0,V.c)(6),r;n[0]===e?r=n[1]:(r=A.stateAtom(e),n[0]=e,n[1]=r);let i=l(r),a;return n[2]!==t||n[3]!==i.isRunning||n[4]!==i.operation?(a=i.isRunning&&i.operation!==null&&t.some(e=>W[e]===i.operation),n[2]=t,n[3]=i.isRunning,n[4]=i.operation,n[5]=a):a=n[5],a}function J(e){let t=(0,V.c)(7),n;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(n={reportFailure:!1},t[0]=n):n=t[0];let r=D(j.init,n),i;t[1]!==r||t[2]!==e?(i=async()=>{let t=K(e);return t===null?p(d(new k({operation:`init`,environmentId:e.environmentId,cwd:e.cwd}))):r({environmentId:t.environmentId,input:{cwd:t.cwd}})},t[1]=r,t[2]=e,t[3]=i):i=t[3];let a=i,o;return t[4]!==a||t[5]!==e?(o={kind:`init`,label:`Initializing repository`,scope:e,action:a},t[4]=a,t[5]=e,t[6]=o):o=t[6],G(o)}function oe(e){let t=(0,V.c)(11),n;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(n={reportFailure:!1},t[0]=n):n=t[0];let r=D(j.pull,n),i;t[1]!==e.cwd||t[2]!==e.environmentId?(i=e.environmentId!==null&&e.cwd!==null?j.status({environmentId:e.environmentId,input:{cwd:e.cwd}}):null,t[1]=e.cwd,t[2]=e.environmentId,t[3]=i):i=t[3];let a=E(i),o;t[4]!==r||t[5]!==e?(o=async()=>{let t=K(e);return t===null?p(d(new k({operation:`pull`,environmentId:e.environmentId,cwd:e.cwd}))):r({environmentId:t.environmentId,input:{cwd:t.cwd}})},t[4]=r,t[5]=e,t[6]=o):o=t[6];let s=o,c;return t[7]!==s||t[8]!==e||t[9]!==a.refresh?(c={kind:`pull`,label:`Pulling latest changes...`,scope:e,action:s,onSuccess:a.refresh},t[7]=s,t[8]=e,t[9]=a.refresh,t[10]=c):c=t[10],G(c)}function se(e){let t=(0,V.c)(13),n;t[0]===e?n=t[1]:(n=A.runStackedAction(e),t[0]=e,t[1]=n);let r;t[2]===Symbol.for(`react.memo_cache_sentinel`)?(r={reportFailure:!1},t[2]=r):r=t[2];let i=D(n,r),a;t[3]!==e.cwd||t[4]!==e.environmentId?(a=e.environmentId!==null&&e.cwd!==null?j.status({environmentId:e.environmentId,input:{cwd:e.cwd}}):null,t[3]=e.cwd,t[4]=e.environmentId,t[5]=a):a=t[5];let o=E(a),s;t[6]!==i||t[7]!==e?(s=async t=>K(e)===null?p(d(new k({operation:`run_change_request`,environmentId:e.environmentId,cwd:e.cwd}))):i(t),t[6]=i,t[7]=e,t[8]=s):s=t[8];let c=s,l;return t[9]!==c||t[10]!==e||t[11]!==o.refresh?(l={kind:`runStackedAction`,label:`Running source control action`,scope:e,action:c,onSuccess:o.refresh,managedExternally:!0},t[9]=c,t[10]=e,t[11]=o.refresh,t[12]=l):l=t[12],G(l)}function ce(e){let t=(0,V.c)(11),n;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(n={reportFailure:!1},t[0]=n):n=t[0];let r=D(M.publishRepository,n),i;t[1]!==e.cwd||t[2]!==e.environmentId?(i=e.environmentId!==null&&e.cwd!==null?j.status({environmentId:e.environmentId,input:{cwd:e.cwd}}):null,t[1]=e.cwd,t[2]=e.environmentId,t[3]=i):i=t[3];let a=E(i),o;t[4]!==r||t[5]!==e?(o=async t=>{let n=K(e);return n===null?p(d(new k({operation:`publish_repository`,environmentId:e.environmentId,cwd:e.cwd}))):r({environmentId:n.environmentId,input:{cwd:n.cwd,...t}})},t[4]=r,t[5]=e,t[6]=o):o=t[6];let s=o,c;return t[7]!==s||t[8]!==e||t[9]!==a.refresh?(c={kind:`publishRepository`,label:`Publishing repository`,scope:e,action:s,onSuccess:a.refresh},t[7]=s,t[8]=e,t[9]=a.refresh,t[10]=c):c=t[10],G(c)}function Y(e){let t=(0,V.c)(7),n;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(n={reportFailure:!1},t[0]=n):n=t[0];let r=D(U.preparePullRequestThread,n),i;t[1]!==r||t[2]!==e?(i=async t=>{let n=K(e);return n===null?p(d(new k({operation:`prepare_pull_request_thread`,environmentId:e.environmentId,cwd:e.cwd}))):t.mode===`worktree`&&t.threadId!==void 0&&!T(n.environmentId,`orchestration:operate`)?p(d(new f({requiredScope:u,message:`This connection cannot change threads.`}))):r({environmentId:n.environmentId,input:{cwd:n.cwd,reference:t.reference,mode:t.mode,...t.threadId?{threadId:t.threadId}:{}}})},t[1]=r,t[2]=e,t[3]=i):i=t[3];let a=i,o;return t[4]!==a||t[5]!==e?(o={kind:`preparePullRequestThread`,label:`Preparing pull request thread`,scope:e,action:a},t[4]=a,t[5]=e,t[6]=o):o=t[6],G(o)}function X(e){return e.environmentId===null||e.cwd===null||e.reference===null?null:s(c(r.get(U.pullRequestResolution({environmentId:e.environmentId,input:{cwd:e.cwd,reference:e.reference}}))))}function le(e){let t=(0,V.c)(12),n;t[0]!==e.cwd||t[1]!==e.environmentId||t[2]!==e.reference?(n=e.environmentId!==null&&e.cwd!==null&&e.reference!==null?U.pullRequestResolution({environmentId:e.environmentId,input:{cwd:e.cwd,reference:e.reference}}):null,t[0]=e.cwd,t[1]=e.environmentId,t[2]=e.reference,t[3]=n):n=t[3];let r=E(n),i;t[4]===e?i=t[5]:(i=X(e),t[4]=e,t[5]=i);let a=i,o=r.data??a,s=r.isPending&&a===null,c;return t[6]!==r.error||t[7]!==r.isPending||t[8]!==r.refresh||t[9]!==o||t[10]!==s?(c={data:o,error:r.error,isPending:s,isFetching:r.isPending,refresh:r.refresh},t[6]=r.error,t[7]=r.isPending,t[8]=r.refresh,t[9]=o,t[10]=s,t[11]=c):c=t[11],c}function ue(e,t){let n=(0,V.c)(10),r;n[0]===t?r=n[1]:(r=e=>I(e,t).settings.pullRequestMergeMethod,n[0]=t,n[1]=r);let i=te(e,r),a=O(de),o=O(ae),s=x(),c=C(),l;return n[2]!==e||n[3]!==o||n[4]!==a||n[5]!==c||n[6]!==i||n[7]!==t||n[8]!==s?(l=()=>{if(i!=null)return i;if(Object.keys(a).length===0)return;let n=s.find(n=>n.environmentId===e&&n.id===t);if(!n)return;let r=R({projects:s,settings:o,primaryEnvironmentId:c}).get(ie(n))??L(n,o);return a[r]},n[2]=e,n[3]=o,n[4]=a,n[5]=c,n[6]=i,n[7]=t,n[8]=s,n[9]=l):l=n[9],l}function de(e){return e.pullRequestMergeMethodOverrides}var fe={merge:`Merge requested`,ready:`Marked ready for review`,draft:`Converted to draft`,close:`Pull request closed`,reopen:`Pull request reopened`,"update-branch":`Branch updated with the base branch`,"enable-auto-merge":`Auto-merge enabled`,"disable-auto-merge":`Auto-merge disabled`,revert:`Revert pull request opened`,"delete-branch":`Branch deleted`,"approve-workflows":`Workflows approved`},pe={merge:`Could not merge this pull request`,ready:`Could not mark this ready for review`,draft:`Could not convert this to a draft`,close:`Could not close this pull request`,reopen:`Could not reopen this pull request`,"update-branch":`Could not update this branch`,"enable-auto-merge":`Could not enable auto-merge`,"disable-auto-merge":`Could not disable auto-merge`,revert:`Could not open a revert pull request`,"delete-branch":`Could not delete this branch`,"approve-workflows":`Could not approve workflows`},Z={merge:`The host refused the merge. Check that you have write access, that the checks it requires have passed, and that the branch is not conflicting.`,ready:`The host refused it. Check that you have write access to this repository.`,draft:`The host refused it. Check that you have write access to this repository.`,close:`The host refused it. Check that you have write access, or that you opened it.`,reopen:`The host refused it. Check that you have write access, and that the branch still exists.`,"update-branch":`The host refused it. Check that you have write access, and that the base branch has not diverged in a way the host cannot merge.`,"enable-auto-merge":`The host refused it. Check that auto-merge is enabled for this repository and that you have write access.`,"disable-auto-merge":`The host refused it. Check that you have write access to this repository.`,revert:`The host refused it. Check that you have write access and that this pull request was merged on the host.`,"delete-branch":`The host refused it. Check that you have write access to the source repository and that the branch has not moved since this page loaded.`,"approve-workflows":`The host refused it. Check that you have Actions write access and that these workflow runs are still awaiting approval.`};function me({environmentId:e,reference:t,onSuccess:n,resolveMergeMethod:r}){let i=D(P.runAction,{reportFailure:!1}),[a,o]=(0,B.useState)(!1),s=(0,B.useRef)(!1);return{actionPending:a,perform:async(a,c)=>{if(!(s.current||t===null)){s.current=!0,o(!0);try{let o=await i({environmentId:e,input:{...t,action:a,...c?{mergeMethod:c}:r?{resolveMergeMethod:r}:{}}});if(o._tag===`Failure`)throw v(o);S.add({type:`success`,title:fe[a]}),n?.(a)}catch(e){S.add({type:`error`,title:pe[a],description:F(e,Z[a])})}finally{s.current=!1,o(!1)}}}}}function Q(e){let t=D(P.runAction,{reportFailure:!1}),n=(0,B.useRef)(new Set),[r,i]=(0,B.useState)(()=>new Set);return{close:(0,B.useCallback)(async r=>{let a=r.filter(e=>{let t=N(e);return e.state!==`open`||n.current.has(t)?!1:(n.current.add(t),!0)});if(a.length===0)return;i(new Set(n.current));let o=0,s=[];await Promise.all(a.map(async r=>{try{let n=await t({environmentId:r.environmentId,input:{projectId:r.projectId,host:r.host,repository:r.repository,number:r.number,action:`close`}});if(n._tag===`Failure`)throw v(n);o++,e(r)}catch(e){s.push(`#${r.number}: ${F(e,Z.close)}`)}finally{n.current.delete(N(r)),i(new Set(n.current))}})),S.add({type:s.length>0?`error`:`success`,title:s.length>0?`Closed ${o} of ${a.length} pull requests`:`Closed ${o} pull request${o===1?``:`s`}`,...s.length>0?{description:s.slice(0,3).join(`
|
|
2
|
-
`)}:{}})},[e,t]),closingKeys:r}}var $=new Map;function he(e){let t=(0,V.c)(21),{environmentId:r,detail:a}=e,o=z(),s=a?.workspaceRoot??null,c;t[0]!==r||t[1]!==s?(c={environmentId:r,cwd:s},t[0]=r,t[1]=s,t[2]=c):c=t[2];let l=Y(c),[u,d]=(0,B.useState)(null),f;t[3]===o?f=t[4]:(f=async(e,t,r)=>{let i=r??await o(e).then(xe,be);if(i===null)return null;let a=n.getState();if(t===null)return i;let s=a.getComposerDraft(i.draftId),c=s?.reviewComments??[],l=re({prompt:s?.prompt??``,lastHandoffPrompt:$.get(i.draftId)},t.prompt);return $.set(i.draftId,t.prompt),a.setPrompt(i.draftId,l),a.setReviewComments(i.draftId,ne(c,t.reviewComments??[])),i},t[3]=o,t[4]=f);let p=f,m;t[5]!==a||t[6]!==r||t[7]!==u||t[8]!==p?(m=async(e,t)=>{if(!a||u!==null)return;d(e);let n=i(r,a.projectId),o=await p(n,t);if(d(null),o===null){S.add({type:`error`,title:`Could not open a thread`,description:`Try again from the project, or open a thread first.`});return}S.add({type:`success`,title:`Asked in a thread`,description:t.prompt.length>0?`The question is in the composer — read it over, then send.`:`The pull request is in the composer — type your question, then send.`})},t[5]=a,t[6]=r,t[7]=u,t[8]=p,t[9]=m):m=t[9];let h=m,g;t[10]!==a||t[11]!==r||t[12]!==u||t[13]!==o||t[14]!==p||t[15]!==l?(g=async(e,t,n)=>{let s=n===void 0?`worktree`:n;if(!a||u!==null)return;d(e);let c=S.add({type:`loading`,title:`Preparing the pull request checkout...`}),f=i(r,a.projectId),m=await o(f).then(ye,ve);if(m===null){d(null),S.update(c,{type:`error`,title:`Could not open a thread for the checkout`,description:`Try again from the project, or open a thread first.`});return}let h=await l.run({reference:a.url,mode:s,threadId:m.threadId});if(h._tag===`Failure`){d(null);let e=l.error instanceof Error?l.error.message:null;S.update(c,{type:`error`,title:`Could not prepare the pull request checkout`,...e?{description:e}:{}});return}if(!await o(f,{branch:h.value.branch,worktreePath:h.value.worktreePath,envMode:h.value.worktreePath===null?`local`:`worktree`}).then(_e,ge)){d(null),S.update(c,{type:`error`,title:`Checked out, but the thread stayed where it was`,description:`The checkout is ready on \`${h.value.branch}\`. Point a thread at it from the branch picker, then ask again.`});return}d(null);let g={type:`warning`,title:`Checked out, but not on the latest commits`,description:`The checkout could not be moved onto the pull request's latest commits, so the code there is older than the pull request. Uncommitted work or local commits keep it where it is.`};if(t===null){S.update(c,h.value.isOnPullRequestHead?{type:`success`,title:s===`local`?`Checked out here`:`Checked out`,description:s===`local`?`This repository is on the pull request's branch, with a thread open on it.`:`The pull request is in its own worktree, with a thread open on it.`}:g);return}await p(f,t,m),S.update(c,h.value.isOnPullRequestHead?{type:`success`,title:`Checkout ready`,description:`The task is in the composer — read it over, then send.`}:g)},t[10]=a,t[11]=r,t[12]=u,t[13]=o,t[14]=p,t[15]=l,t[16]=g):g=t[16];let _=g,v;return t[17]!==u||t[18]!==h||t[19]!==_?(v={handoff:u,startAsk:h,startHandoff:_},t[17]=u,t[18]=h,t[19]=_,t[20]=v):v=t[20],v}function ge(){return!1}function _e(e){return e!==null}function ve(){return null}function ye(e){return e}function be(){return null}function xe(e){return e}export{X as a,le as c,J as d,oe as f,he as i,q as l,Q as n,se as o,ue as r,Y as s,me as t,ce as u};
|
|
3
|
-
//# sourceMappingURL=usePullRequestActions-_K7fD4Ny.js.map
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{Ht as e,NE as t,Nt as n,Vt as r}from"./utils-BAPnqm16.js";import{a as i}from"./environments-iW64jjyO.js";import{i as a}from"./useSettings-CKA-LDDj.js";import{B as o}from"./settingsLayout-CqGfrbmD.js";var s=t();function c(t,c){let l=(0,s.c)(5),{targets:u}=o(),{environments:d}=i(),f;return l[0]!==c||l[1]!==d||l[2]!==t||l[3]!==u?(f=(i,o)=>{let s=c.find(e=>e.instanceId===i);for(let c of u){let l=d.find(e=>e.environmentId===c.environmentId),u=l?.serverConfig;if(!u)continue;let f=r(e(u.providers),c.settings,c.projectId).find(e=>e.instanceId===i),p=n(a(c.settings,t),u.providers).get(i);if(!f?.enabled||!f.isAvailable||f.driverKind!==s?.driverKind||!p?.some(e=>e.slug===o&&!e.isUnavailable))return`This model is unavailable on ${l?.label??`a selected environment`}. Select that environment to choose its model separately.`}return null},l[0]=c,l[1]=d,l[2]=t,l[3]=u,l[4]=f):f=l[4],f}export{c as t};
|
|
2
|
-
//# sourceMappingURL=useScopedModelAvailability-DE1E_lbg.js.map
|
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
import{i as e}from"./rolldown-runtime-Dd_uD5pT.js";import{r as t}from"./Icon-l19w4AjM.js";import{$o as n,$w as r,$y as i,By as a,C_ as o,Ch as s,Cs as c,Cy as l,Dc as u,Fb as d,Fg as f,Go as ee,Gy as p,Iy as m,Mb as te,NE as ne,NT as re,Ng as ie,Oy as ae,Pb as oe,Rs as se,Sb as ce,Ss as le,Th as ue,Ts as de,Xo as fe,Yo as h,Yw as g,Zw as _,Zy as pe,_l as me,ah as he,bh as ge,ch as _e,db as ve,dh as ye,gl as be,hh as xe,i_ as Se,ib as Ce,ih as we,j_ as Te,jb as Ee,kb as De,n_ as Oe,qy as ke,r_ as Ae,rb as je,tS as Me,th as Ne,uh as Pe,wh as Fe,xb as Ie,ys as Le}from"./utils-BAPnqm16.js";import{R as Re,W as ze,_t as v}from"./runtime-B9IDNXDU.js";import{T as Be}from"./runtime-B5cKWtKn.js";import{i as y}from"./toast-CN7Jd-pG.js";import{a as Ve,o as He}from"./environments-iW64jjyO.js";import{f as b,u as Ue}from"./server-CoH7V4JL.js";import{i as We,n as Ge,t as Ke}from"./session-Bo2ZSprC.js";import{t as qe}from"./use-atom-command-GpCw1tWF.js";import{B as Je,C as Ye,F as Xe,N as Ze,P as Qe,V as $e,b as et,c as tt,i as x,k as nt,l as rt,n as it,o as at,r as ot,v as st,w as ct,x as lt}from"./themePalette-zFOiBKDi.js";var S=e(t(),1),C=ne(),ut={status:`idle`},w=ut,T=null,E=[],D=0,dt=new Set;function O(e){w=e;for(let e of dt)e()}function ft(e){T?.resolve(e);for(let t of E)t.resolve(e);T=null,E=[]}function pt(){return w}function mt(e){return dt.add(e),()=>{dt.delete(e)}}function ht(){D+=1;let e=!0;return()=>{e&&(e=!1,D=Math.max(0,D-1),D===0&&(ft(!1),O(ut)))}}function gt(e,t){if(D!==0)return new Promise(n=>{let r={message:e,variant:t?.variant??`default`,resolve:n};if(T||w.status===`closing`){E.push(r);return}T=r,O({status:`confirming`,message:e,variant:r.variant})})}function _t(){return w.status!==`idle`||T!==null||E.length>0}function vt(e){if(w.status!==`confirming`||!T)return;let t=T;T=null,t.resolve(e),O({status:`closing`,message:w.message,variant:w.variant})}function yt(){if(w.status!==`closing`)return;let e=E.shift();if(!e){O(ut);return}T=e,O({status:`confirming`,message:e.message,variant:e.variant})}var bt={Ctrl:`⌃`,Alt:`⌥`,Shift:`⇧`,Super:`⌘`,CmdOrCtrl:`⌘`};function xt(e,t=navigator.platform){let n=e.split(`+`),r=n.pop()??``;return u(t)?`${n.map(e=>bt[e]??e).join(``)}${r}`:[...n.map(e=>e===`CmdOrCtrl`?`Ctrl`:e===`Super`?`Meta`:e),r].join(`+`)}var St=`http://www.w3.org/2000/svg`,Ct={archive:[{tag:`rect`,attrs:{width:`20`,height:`5`,x:`2`,y:`3`,rx:`1`}},{tag:`path`,attrs:{d:`M4 8v11a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8`}},{tag:`path`,attrs:{d:`M10 12h4`}}],check:[{tag:`path`,attrs:{d:`M20 6 9 17l-5-5`}}],timer:[{tag:`line`,attrs:{x1:`10`,x2:`14`,y1:`2`,y2:`2`}},{tag:`line`,attrs:{x1:`12`,x2:`15`,y1:`14`,y2:`11`}},{tag:`circle`,attrs:{cx:`12`,cy:`14`,r:`8`}}],"chevron-right":[{tag:`path`,attrs:{d:`m9 19 7-7-7-7`}}],"circle-check":[{tag:`circle`,attrs:{cx:`12`,cy:`12`,r:`10`}},{tag:`path`,attrs:{d:`m9 12 2 2 4-4`}}],clock:[{tag:`path`,attrs:{d:`M12 6v6l4 2`}},{tag:`circle`,attrs:{cx:`12`,cy:`12`,r:`10`}}],pencil:[{tag:`path`,attrs:{d:`M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z`}},{tag:`path`,attrs:{d:`m15 5 4 4`}}],copy:[{tag:`rect`,attrs:{width:`14`,height:`14`,x:`8`,y:`8`,rx:`2`,ry:`2`}},{tag:`path`,attrs:{d:`M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2`}}],folder:[{tag:`path`,attrs:{d:`M20 20a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2h-7.9a2 2 0 0 1-1.69-.9L9.6 3.9A2 2 0 0 0 7.93 3H4a2 2 0 0 0-2 2v13a2 2 0 0 0 2 2Z`}}],"git-branch":[{tag:`line`,attrs:{x1:`6`,x2:`6`,y1:`3`,y2:`15`}},{tag:`circle`,attrs:{cx:`18`,cy:`6`,r:`3`}},{tag:`circle`,attrs:{cx:`6`,cy:`18`,r:`3`}},{tag:`path`,attrs:{d:`M18 9a9 9 0 0 1-9 9`}}],eye:[{tag:`path`,attrs:{d:`M2.062 12.348a1 1 0 0 1 0-.696 10.75 10.75 0 0 1 19.876 0 1 1 0 0 1 0 .696 10.75 10.75 0 0 1-19.876 0`}},{tag:`circle`,attrs:{cx:`12`,cy:`12`,r:`3`}}],"app-window":[{tag:`rect`,attrs:{x:`2`,y:`4`,width:`20`,height:`16`,rx:`2`}},{tag:`path`,attrs:{d:`M10 4v4`}},{tag:`path`,attrs:{d:`M2 8h20`}},{tag:`path`,attrs:{d:`M6 4v4`}}],"arrow-up-right":[{tag:`path`,attrs:{d:`M7 7h10v10`}},{tag:`path`,attrs:{d:`M7 17 17 7`}}],"external-link":[{tag:`path`,attrs:{d:`M15 3h6v6`}},{tag:`path`,attrs:{d:`M10 14 21 3`}},{tag:`path`,attrs:{d:`M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6`}}],link:[{tag:`path`,attrs:{d:`M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71`}},{tag:`path`,attrs:{d:`M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71`}}],list:[{tag:`path`,attrs:{d:`M3 5h.01`}},{tag:`path`,attrs:{d:`M3 12h.01`}},{tag:`path`,attrs:{d:`M3 19h.01`}},{tag:`path`,attrs:{d:`M8 5h13`}},{tag:`path`,attrs:{d:`M8 12h13`}},{tag:`path`,attrs:{d:`M8 19h13`}}],share:[{tag:`path`,attrs:{d:`M12 2v13`}},{tag:`path`,attrs:{d:`m16 6-4-4-4 4`}},{tag:`path`,attrs:{d:`M4 12v8a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2v-8`}}],x:[{tag:`path`,attrs:{d:`M18 6 6 18`}},{tag:`path`,attrs:{d:`m6 6 12 12`}}],hash:[{tag:`line`,attrs:{x1:`4`,x2:`20`,y1:`9`,y2:`9`}},{tag:`line`,attrs:{x1:`4`,x2:`20`,y1:`15`,y2:`15`}},{tag:`line`,attrs:{x1:`10`,x2:`8`,y1:`3`,y2:`21`}},{tag:`line`,attrs:{x1:`16`,x2:`14`,y1:`3`,y2:`21`}}],"mail-open":[{tag:`path`,attrs:{d:`M21.2 8.4c.5.38.8.97.8 1.6v10a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V10a2 2 0 0 1 .8-1.6l8-6a2 2 0 0 1 2.4 0l8 6Z`}},{tag:`path`,attrs:{d:`m22 10-8.97 5.7a1.94 1.94 0 0 1-2.06 0L2 10`}}],"message-square-plus":[{tag:`path`,attrs:{d:`M22 17a2 2 0 0 1-2 2H6.828a2 2 0 0 0-1.414.586l-2.202 2.202A.71.71 0 0 1 2 21.286V5a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2z`}},{tag:`path`,attrs:{d:`M12 8v6`}},{tag:`path`,attrs:{d:`M9 11h6`}}],pin:[{tag:`path`,attrs:{d:`M12 17v5`}},{tag:`path`,attrs:{d:`M9 10.76a2 2 0 0 1-1.11 1.79l-1.78.9A2 2 0 0 0 5 15.24V16a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1v-.76a2 2 0 0 0-1.11-1.79l-1.78-.9A2 2 0 0 1 15 10.76V7a1 1 0 0 1 1-1 2 2 0 0 0 0-4H8a2 2 0 0 0 0 4 1 1 0 0 1 1 1z`}}],"pin-off":[{tag:`path`,attrs:{d:`M12 17v5`}},{tag:`path`,attrs:{d:`M15 9.34V7a1 1 0 0 1 1-1 2 2 0 0 0 0-4H7.89`}},{tag:`path`,attrs:{d:`m2 2 20 20`}},{tag:`path`,attrs:{d:`M9 9v1.76a2 2 0 0 1-1.11 1.79l-1.78.9A2 2 0 0 0 5 15.24V16a1 1 0 0 0 1 1h11`}}],"refresh-cw":[{tag:`path`,attrs:{d:`M3 12a9 9 0 0 1 9-9 9.75 9.75 0 0 1 6.74 2.74L21 8`}},{tag:`path`,attrs:{d:`M21 3v5h-5`}},{tag:`path`,attrs:{d:`M21 12a9 9 0 0 1-9 9 9.75 9.75 0 0 1-6.74-2.74L3 16`}},{tag:`path`,attrs:{d:`M8 16H3v5`}}],settings:[{tag:`path`,attrs:{d:`M12.22 2h-.44a2 2 0 0 0-2 2v.18a2 2 0 0 1-1 1.73l-.43.25a2 2 0 0 1-2 0l-.15-.08a2 2 0 0 0-2.73.73l-.22.38a2 2 0 0 0 .73 2.73l.15.1a2 2 0 0 1 1 1.72v.51a2 2 0 0 1-1 1.74l-.15.09a2 2 0 0 0-.73 2.73l.22.38a2 2 0 0 0 2.73.73l.15-.08a2 2 0 0 1 2 0l.43.25a2 2 0 0 1 1 1.73V20a2 2 0 0 0 2 2h.44a2 2 0 0 0 2-2v-.18a2 2 0 0 1 1-1.73l.43-.25a2 2 0 0 1 2 0l.15.08a2 2 0 0 0 2.73-.73l.22-.38a2 2 0 0 0-.73-2.73l-.15-.09a2 2 0 0 1-1-1.74v-.51a2 2 0 0 1 1-1.74l.15-.09a2 2 0 0 0 .73-2.73l-.22-.38a2 2 0 0 0-2.73-.73l-.15.08a2 2 0 0 1-2 0l-.43-.25a2 2 0 0 1-1-1.73V4a2 2 0 0 0-2-2z`}},{tag:`circle`,attrs:{cx:`12`,cy:`12`,r:`3`}}],"folder-tree":[{tag:`path`,attrs:{d:`M20 10a1 1 0 0 0 1-1V6a1 1 0 0 0-1-1h-2.5a1 1 0 0 1-.8-.4l-.9-1.2A1 1 0 0 0 15 3h-2a1 1 0 0 0-1 1v5a1 1 0 0 0 1 1Z`}},{tag:`path`,attrs:{d:`M20 21a1 1 0 0 0 1-1v-3a1 1 0 0 0-1-1h-2.9a1 1 0 0 1-.88-.55l-.42-.85a1 1 0 0 0-.92-.6H13a1 1 0 0 0-1 1v5a1 1 0 0 0 1 1Z`}},{tag:`path`,attrs:{d:`M3 5a2 2 0 0 0 2 2h3`}},{tag:`path`,attrs:{d:`M3 3v13a2 2 0 0 0 2 2h3`}}],trash:[{tag:`path`,attrs:{d:`M3 6h18`}},{tag:`path`,attrs:{d:`M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6`}},{tag:`path`,attrs:{d:`M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2`}},{tag:`line`,attrs:{x1:`10`,x2:`10`,y1:`11`,y2:`17`}},{tag:`line`,attrs:{x1:`14`,x2:`14`,y1:`11`,y2:`17`}}]};function wt(e,t){let n=Ct[e];if(!n||typeof document.createElementNS!=`function`)return null;let r=document.createElementNS(St,`svg`);r.setAttribute(`xmlns`,St),r.setAttribute(`viewBox`,`0 0 24 24`),r.setAttribute(`fill`,`none`),r.setAttribute(`stroke`,`currentColor`),r.setAttribute(`stroke-width`,`2`),r.setAttribute(`stroke-linecap`,`round`),r.setAttribute(`stroke-linejoin`,`round`),r.setAttribute(`class`,t===`destructive`?`size-4.5 shrink-0 sm:size-4`:`size-4.5 shrink-0 text-muted-foreground sm:size-4`);for(let e of n){let t=document.createElementNS(St,e.tag);for(let[n,r]of Object.entries(e.attrs))t.setAttribute(n,r);r.appendChild(t)}return r}function Tt(e,t,n){let r=e.getBoundingClientRect(),i=Math.min(Math.max(4,t),Math.max(4,window.innerWidth-r.width-4)),a=Math.min(Math.max(4,n),Math.max(4,window.innerHeight-r.height-4));e.style.left=`${i}px`,e.style.top=`${a}px`}function Et(e,t){if(typeof Node<`u`&&e instanceof Node)return t.some(t=>t.contains(e));if(!e||typeof e!=`object`)return!1;let n=e;for(;n&&typeof n==`object`;){if(t.includes(n))return!0;n=n.parent}return!1}var k=null;function Dt(){return k!==null}function Ot(){k?.(),k=null}function kt(e,t){return new Promise(n=>{let r=document.activeElement instanceof HTMLElement?document.activeElement:null,i=[],a=[],o=!1,s=!1,c=()=>l(null),l=e=>{if(o)return;o=!0,k===c&&(k=null),document.removeEventListener(`keydown`,d),document.removeEventListener(`pointerdown`,f,!0),document.removeEventListener(`contextmenu`,ee,!0);let t=Et(document.activeElement,i);for(let e of i)e.remove();t&&r?.isConnected&&r.focus({preventScroll:!0}),n(e)},d=e=>{e.key===`Escape`&&(e.preventDefault(),l(null))},f=e=>{s&&!Et(e.target,i)&&l(null)},ee=e=>{s&&!Et(e.target,i)&&(e.preventDefault(),l(null))},p=e=>{for(;i.length>e;)a.pop()?.setAttribute(`aria-expanded`,`false`),i.pop()?.remove()},m=(e,t,n,r,o)=>{p(r);let c=document.createElement(`div`);c.className=`dropdown-glass fixed z-[10000] min-w-56 max-w-sm overflow-hidden rounded-lg bg-clip-padding text-popover-foreground outline-none`,c.style.cssText=`position:fixed;z-index:10000;min-width:14rem;max-width:24rem;overflow:hidden;border-radius:var(--radius-lg);background-clip:padding-box;color:var(--contrast-popover-foreground);outline:none;pointer-events:auto;`,c.style.left=`${t}px`,c.style.top=`${n}px`,c.dataset.level=String(r);let d=document.createElement(`div`);d.className=`max-h-[calc(100vh-0.5rem)] min-w-0 max-w-sm overflow-y-auto overflow-x-hidden p-1`,d.style.cssText=`max-height:calc(100vh - 0.5rem);min-width:0;max-width:24rem;overflow-x:hidden;overflow-y:auto;padding:0.25rem;`;for(let t of e){if(t.separatorBefore===!0&&d.children.length>0){let e=document.createElement(`div`);e.className=`mx-2 my-1 h-px bg-border`,e.style.cssText=`height:1px;margin:0.25rem 0.5rem;background:var(--contrast-border);`,e.dataset.contextMenuSeparator=`true`,e.setAttribute(`role`,`separator`),d.appendChild(e)}if(t.header===!0){let e=document.createElement(`div`);e.className=`px-2 py-1.5 font-medium text-muted-foreground text-xs`,e.textContent=t.label,d.appendChild(e);continue}let e=Array.isArray(t.children)&&t.children.length>0,n=!e&&(t.destructive===!0||t.id===`delete`),a=document.createElement(`button`);a.type=`button`;let o=t.disabled===!0;a.disabled=o;let c=`flex w-full cursor-default select-none items-center gap-2 rounded-sm px-2 py-1 text-left outline-none transition-colors sm:min-h-7 sm:text-sm min-h-8 text-base`;if(a.className=o?`${c} pointer-events-none cursor-not-allowed text-muted-foreground opacity-64`:n?`${c} text-destructive-foreground hover:bg-destructive/10 hover:text-destructive-foreground`:`${c} text-foreground hover:bg-accent hover:text-accent-foreground`,a.style.cssText=`display:flex;width:100%;min-height:1.75rem;align-items:center;gap:0.5rem;border:0;border-radius:var(--radius-sm);background:transparent;padding:0.25rem 0.5rem;color:var(--contrast-foreground);font-family:var(--font-sans,system-ui,sans-serif);font-size:0.875rem;line-height:1.25rem;text-align:left;cursor:default;`,n&&(a.style.color=`var(--destructive-foreground)`),o&&(a.style.color=`var(--contrast-muted-foreground)`,a.style.opacity=`0.64`,a.style.pointerEvents=`none`),typeof t.checked==`boolean`){a.setAttribute(`role`,`menuitemradio`),a.setAttribute(`aria-checked`,t.checked?`true`:`false`);let e=t.checked?wt(`check`,`neutral`):null;if(e)a.appendChild(e);else{let e=document.createElement(`span`);e.className=`size-4.5 shrink-0 sm:size-4`,e.style.cssText=`display:inline-block;width:1rem;height:1rem;flex-shrink:0;`,e.setAttribute(`aria-hidden`,`true`),a.appendChild(e)}}else if(typeof t.icon==`string`){let e=wt(t.icon,n?`destructive`:`neutral`);e&&a.appendChild(e)}let f=document.createElement(`span`);if(f.className=`min-w-0 flex-1 truncate`,f.textContent=t.label,a.appendChild(f),typeof t.accelerator==`string`){let e=document.createElement(`span`);e.className=`ms-6 shrink-0 text-muted-foreground text-xs tracking-widest`,e.style.cssText=`margin-inline-start:1.5rem;flex-shrink:0;color:var(--contrast-muted-foreground);font-size:0.75rem;letter-spacing:0.1em;`,e.textContent=xt(t.accelerator),e.setAttribute(`aria-hidden`,`true`),a.setAttribute(`aria-keyshortcuts`,t.accelerator.replace(`CmdOrCtrl`,u(navigator.platform)?`Meta`:`Control`)),a.appendChild(e)}if(e){a.setAttribute(`aria-haspopup`,`menu`),a.setAttribute(`aria-expanded`,`false`);let e=wt(`chevron-right`,`neutral`);e&&(e.setAttribute(`class`,`-me-0.5 ms-auto size-4.5 shrink-0 text-muted-foreground opacity-80 sm:size-4`),e.setAttribute(`aria-hidden`,`true`),e.dataset.contextMenuChevron=`true`,a.appendChild(e))}if(!o){let o=!1,c=!1,u=()=>{let e=o||c;a.style.background=e?n?`color-mix(in srgb, var(--destructive) 10%, transparent)`:`var(--accent)`:`transparent`,a.style.color=e?n?`var(--destructive-foreground)`:`var(--contrast-accent-foreground)`:n?`var(--destructive-foreground)`:`var(--contrast-foreground)`};if(a.addEventListener(`mouseenter`,()=>{a.focus({preventScroll:!0}),o=!0,u()}),a.addEventListener(`mouseleave`,()=>{o=!1,u()}),a.addEventListener(`focus`,()=>{c=!0,u()}),a.addEventListener(`blur`,()=>{c=!1,u()}),e){let e=(e=!1)=>{let n=a.getBoundingClientRect(),o=n.right+4,s=n.top;m(t.children,o,s,r+1,a),a.setAttribute(`aria-expanded`,`true`);let c=i[r+1];if(!c)return;let l=c.getBoundingClientRect();l.right>window.innerWidth&&Tt(c,n.left-l.width-4,n.top),e&&[...c.querySelectorAll(`button`)].find(e=>!e.disabled)?.focus()};a.addEventListener(`mouseenter`,()=>{e()}),a.addEventListener(`click`,t=>{t.preventDefault(),e(!0)})}else a.addEventListener(`mouseenter`,()=>{p(r+1)}),a.addEventListener(`click`,()=>{s&&l(t.id)})}d.appendChild(a)}c.appendChild(d),c.addEventListener(`mouseenter`,()=>{p(r+1)}),document.body.appendChild(c),i[r]=c,a[r]=o,requestAnimationFrame(()=>{Tt(c,t,n)})};document.addEventListener(`keydown`,d),document.addEventListener(`pointerdown`,f,!0),document.addEventListener(`contextmenu`,ee,!0),m(e,t?.x??0,t?.y??0,0),k&&k(),k=c,requestAnimationFrame(()=>{s=!0})})}var At=`t3code:client-settings:v1`;function jt(){return typeof window<`u`}function Mt(){return jt()?c(At,Ne):null}function Nt(e){jt()&&de(At,e,Ne)}var Pt;function Ft(){return{dialogs:{pickFolder:async e=>window.desktopBridge?window.desktopBridge.pickFolder(e):null,confirm:async(e,t)=>gt(e,t)??!1},shell:{openExternal:async e=>{if(window.desktopBridge){if(!await window.desktopBridge.openExternal(e))throw Error(`Unable to open link.`);return}window.open(e,`_blank`,`noopener,noreferrer`)},openSystemSettings:async e=>{if(!window.desktopBridge?.openSystemSettings||!await window.desktopBridge.openSystemSettings(e))throw Error(`Unable to open System Settings.`)}},contextMenu:{show:async(e,t)=>window.desktopBridge?window.desktopBridge.showContextMenu(e,t):kt(e,t),close:async()=>{window.desktopBridge||Ot()}},persistence:{getClientSettings:async()=>window.desktopBridge?window.desktopBridge.getClientSettings():Mt(),setClientSettings:async e=>{if(window.desktopBridge)return window.desktopBridge.setClientSettings(e);Nt(e)}}}}function It(){return Ft()}function Lt(){if(typeof window<`u`)return Pt||(Pt=It(),Pt)}function Rt(){let e=Lt();if(!e)throw Error(`Local API not found`);return e}var A=`t3code:theme`,zt=`(prefers-color-scheme: dark)`,j={theme:`system`,resolvedTheme:`light`,systemDark:!1,followSystem:!0,appearanceMode:`system`,themeHalves:null};function Bt(){return M()}function Vt(){return typeof window>`u`?{}:Ht()}function M(){if(typeof window>`u`)return null;try{return nt(window.localStorage.getItem(x))}catch{return null}}function Ht(){try{let e=JSON.parse(window.localStorage.getItem(`t3code:theme-halves:v1`)??`null`);if(typeof e!=`object`||!e)return{};let t={};for(let n of[`light`,`dark`]){let r=e[n];typeof r==`string`&&(t[n]=r)}return t}catch{return{}}}function N(e){return`${e?.light??``}|${e?.dark??``}`}var Ut=`theme-color`,Wt=`meta[name="${Ut}"][data-dynamic-theme-color="true"]`,P=class extends a()(`ThemeStorageError`,{operation:ae([`read`,`write`]),storageKey:m,theme:ve(at),cause:l()}){get message(){return`Failed to ${this.operation} theme preference for ${this.storageKey}.`}},Gt=Ce(P),Kt=class extends a()(`DesktopThemeSyncError`,{theme:at,cause:l()}){get message(){return`Failed to sync the ${this.theme} theme to the desktop shell.`}},qt=Ce(Kt),F=[],I=null,Jt=!0,L=null,R=null,z=null;function B(){Jt=!0;for(let e of F)e()}function Yt(){return typeof window<`u`&&typeof window.matchMedia==`function`&&window.matchMedia(zt).matches}function Xt(e){if(typeof window>`u`)return e===`system`;try{let e=window.localStorage.getItem(ot);if(e===`true`)return!0;if(e===`false`)return!1}catch{}return e===`system`}function Zt(e){return e===`light`||e===`dark`||e===`system`}function V(e){if(typeof window<`u`)try{let e=window.localStorage.getItem(it);if(Zt(e))return e}catch{}return Xt(e)?`system`:et(e)??`light`}function Qt(e){if(typeof window<`u`)try{window.localStorage.setItem(it,e)}catch(e){throw new P({operation:`write`,storageKey:it,cause:e})}}function $t(){if(typeof window>`u`)return j.theme;let e;try{e=window.localStorage.getItem(A)}catch(e){throw new P({operation:`read`,storageKey:A,cause:e})}return e!==null&&ct(e)?rt(e):j.theme}function en(e){if(typeof window<`u`)try{window.localStorage.setItem(A,e),z=null}catch(t){throw new P({operation:`write`,storageKey:A,theme:e,cause:t})}}function H(){if(z!==null)return j.theme;try{return $t()}catch(e){let t=Gt(e)?e:new P({operation:`read`,storageKey:A,cause:e});return z=t,console.error(t.message,{operation:t.operation,storageKey:t.storageKey,...v(t)}),j.theme}}function tn(){let e=document.querySelector(Wt);return e||(e=document.createElement(`meta`),e.name=Ut,e.setAttribute(`data-dynamic-theme-color`,`true`),document.head.append(e),e)}function nn(e){let t=e?.trim().toLowerCase();return!t||t===`transparent`||t===`rgba(0, 0, 0, 0)`||t===`rgba(0 0 0 / 0)`?null:e?.trim()??null}function rn(){return document.querySelector(`main[data-slot='sidebar-inset']`)??document.querySelector(`[data-slot='sidebar-inner']`)??document.body}function an(){if(typeof document>`u`||typeof getComputedStyle>`u`)return;let e=getComputedStyle(document.documentElement),t=document.documentElement.dataset.themeId?nn(e.getPropertyValue(`--app-chrome-background`)):null,n=nn(getComputedStyle(rn()).backgroundColor),r=nn(getComputedStyle(document.body).backgroundColor),i=t??n??r;if(!i)return;document.documentElement.style.backgroundColor=i,document.body.style.backgroundColor=i;let a=document.querySelectorAll(`meta[name="${Ut}"]`);if(a.length===0){tn().setAttribute(`content`,i);return}for(let e of a)e.setAttribute(`content`,i)}function U(e,{suppressTransitions:t=!1,preservePreview:n=!0}={}){if(typeof document>`u`||typeof window>`u`||n&&document.documentElement.dataset?.themeId===`__preview`)return;let r=V(e),i=r===`system`,a=i?Yt():!1,o=M();if(R?.theme===e&&R.systemDark===a&&R.followSystem===i&&R.appearanceMode===r&&N(R.themeHalves)===N(o)){sn(e,i,r);return}t&&document.documentElement.classList.add(`no-transitions`);let s=Qe(e,a,i,r,o);tt(Xe(e,o,s),s),document.documentElement.classList.toggle(`dark`,s===`dark`),R={theme:e,systemDark:a,followSystem:i,appearanceMode:r,themeHalves:o},an(),sn(e,i,r),t&&(document.documentElement.offsetHeight,requestAnimationFrame(()=>{document.documentElement.classList.remove(`no-transitions`)}))}async function on(e,t,n,r,i=M()){try{await e.setTheme(Ze(t,n,r,i))}catch(e){throw new Kt({theme:t,cause:e})}}function sn(e,t,n){if(typeof window>`u`)return;let r=window.desktopBridge,i=M(),a=Ze(e,t,n,i);r&&typeof r.setTheme==`function`&&L!==a&&(L=a,on(r,e,t,n,i).catch(t=>{let n=qt(t)?t:new Kt({theme:e,cause:t});console.error(n.message,{theme:n.theme,...v(n)}),L===a&&(L=null)}))}typeof document<`u`&&typeof window<`u`&&U(H());function cn(){if(typeof window>`u`)return j;if(!Jt&&I)return I;Jt=!1;let e=H(),t=V(e),n=t===`system`,r=n?Yt():!1,i=M(),a=Qe(e,r,n,t,i);return I&&I.theme===e&&I.resolvedTheme===a&&I.systemDark===r&&I.followSystem===n&&I.appearanceMode===t&&N(I.themeHalves)===N(i)||(I={theme:e,resolvedTheme:a,systemDark:r,followSystem:n,appearanceMode:t,themeHalves:i}),I}function ln(){return j}function un(){let e=H();V(e)===`system`&&U(e,{suppressTransitions:!0}),B()}function dn(e){e.key===A?(z=null,U(H(),{suppressTransitions:!0}),B()):e.key===`t3code:theme-follow-system`||e.key===`t3code:theme-appearance-mode`||e.key===`t3code:theme-halves:v1`?(U(H(),{suppressTransitions:!0}),B()):(e.key===`t3code:themes:v1`||e.key===null)&&(e.key===null&&(z=null),Ye(),R=null,U(H(),{suppressTransitions:!0}),B())}var W=null;function fn(e){if(typeof window>`u`)return()=>{};if(F.push(e),!W){let e=typeof window.matchMedia==`function`?window.matchMedia(zt):null;e?.addEventListener(`change`,un),window.addEventListener(`storage`,dn),W=()=>{e?.removeEventListener(`change`,un),window.removeEventListener(`storage`,dn)}}return()=>{F=F.filter(t=>t!==e),F.length===0&&(W?.(),W=null)}}function pn(){let e=(0,S.useSyncExternalStore)(fn,cn,ln),{theme:t,resolvedTheme:n}=e,r=(0,S.useCallback)(e=>{if(typeof window>`u`)return!1;try{Qt(V(H()));let t=window.localStorage.getItem(x);window.localStorage.removeItem(x);try{en(e)}catch(e){if(t!==null)try{window.localStorage.setItem(x,t)}catch{}throw e}}catch(t){let n=Gt(t)?t:new P({operation:`write`,storageKey:A,theme:e,cause:t});return console.error(n.message,{operation:n.operation,storageKey:n.storageKey,theme:e,...v(n)}),!1}return U(e,{suppressTransitions:!0}),B(),!0},[]),i=(0,S.useCallback)(e=>{if(typeof window>`u`)return!1;try{Qt(e)}catch(e){let t=Gt(e)?e:new P({operation:`write`,storageKey:it,cause:e});return console.error(t.message,{operation:t.operation,storageKey:t.storageKey,...v(t)}),!1}return z=null,U(H(),{suppressTransitions:!0}),B(),!0},[]),a=(0,S.useCallback)(e=>{let n=V(t),r=e?`system`:n===`system`?et(t)??`light`:n;return i(r)},[i,t]),o=(0,S.useCallback)((e,t)=>{if(typeof window>`u`)return!1;try{let n={...Ht()};t===null?delete n[e]:n[e]=t,n.light===void 0&&n.dark===void 0?window.localStorage.removeItem(x):window.localStorage.setItem(x,JSON.stringify(n))}catch(e){let t=new P({operation:`write`,storageKey:x,cause:e});return console.error(t.message,{operation:t.operation,storageKey:t.storageKey,...v(t)}),!1}return U(H(),{suppressTransitions:!0}),B(),!0},[]),s=(0,S.useCallback)(()=>{if(typeof window>`u`)return!1;try{window.localStorage.removeItem(x)}catch(e){let t=new P({operation:`write`,storageKey:x,cause:e});return console.error(t.message,{operation:t.operation,storageKey:t.storageKey,...v(t)}),!1}return U(H(),{suppressTransitions:!0}),B(),!0},[]),c=(0,S.useCallback)(({preservePreview:e=!1}={})=>{typeof window<`u`&&(R=null,U(H(),{suppressTransitions:!0,preservePreview:e}),B())},[]);return(0,S.useEffect)(()=>{U(t)},[e.appearanceMode,t]),{theme:t,setTheme:r,setAppearanceMode:i,setFollowSystem:a,setThemeHalf:o,clearThemeHalves:s,refreshTheme:c,followSystem:e.followSystem,appearanceMode:e.appearanceMode,resolvedTheme:n,themeHalves:e.themeHalves}}var mn=ke(je(p)),hn=d(e=>{let t=e.replace(/("(?:[^"\\]|\\.)*")|\/\/[^\n]*/g,(e,t)=>t?e:``);return t=t.replace(/("(?:[^"\\]|\\.)*")|\/\*[\s\S]*?\*\//g,(e,t)=>t?e:``),t=t.replace(/("(?:[^"\\]|\\.)*")|,(\s*[}\]])/g,(e,t,n)=>t?e:n??``),mn(t).pipe(Me(e=>e.issue))}),gn=new De(hn,oe());te().pipe(Ee(oe({space:2})));var _n=e=>m.pipe(pe(e,gn)),vn={performance:{profile:`performance`,automaticGitFetchInterval:_(15),providerHealthRefreshInterval:g(1),hostPowerMonitorActiveInterval:_(30),hostPowerMonitorIdleInterval:g(2),idleClientTtl:_(45),pauseWhenHostLocked:!0,pauseWhenHostLowPower:!1,pauseWhenClientLowPower:!1,pauseWhenOnBattery:!1},balanced:{profile:`balanced`,automaticGitFetchInterval:we,providerHealthRefreshInterval:Pe,hostPowerMonitorActiveInterval:_(30),hostPowerMonitorIdleInterval:g(5),idleClientTtl:_(45),pauseWhenHostLocked:!0,pauseWhenHostLowPower:!0,pauseWhenClientLowPower:!0,pauseWhenOnBattery:!1},"battery-saver":{profile:`battery-saver`,automaticGitFetchInterval:_(0),providerHealthRefreshInterval:g(15),hostPowerMonitorActiveInterval:g(1),hostPowerMonitorIdleInterval:g(10),idleClientTtl:_(45),pauseWhenHostLocked:!0,pauseWhenHostLowPower:!0,pauseWhenClientLowPower:!0,pauseWhenOnBattery:!0}};function G(e){return vn[e]}function K(e){return e.profile===`custom`?e.baseProfile??`balanced`:e.profile}function yn(e){let t=K(e),n=vn[t],r=e.profile===`custom`?e.overrides:{};return{profile:t,automaticGitFetchInterval:r.automaticGitFetchInterval??n.automaticGitFetchInterval,providerHealthRefreshInterval:r.providerHealthRefreshInterval??n.providerHealthRefreshInterval,hostPowerMonitorActiveInterval:r.hostPowerMonitorActiveInterval??n.hostPowerMonitorActiveInterval,hostPowerMonitorIdleInterval:r.hostPowerMonitorIdleInterval??n.hostPowerMonitorIdleInterval,idleClientTtl:r.idleClientTtl??n.idleClientTtl,pauseWhenHostLocked:r.pauseWhenHostLocked??n.pauseWhenHostLocked,pauseWhenHostLowPower:r.pauseWhenHostLowPower??n.pauseWhenHostLowPower,pauseWhenClientLowPower:r.pauseWhenClientLowPower??n.pauseWhenClientLowPower,pauseWhenOnBattery:r.pauseWhenOnBattery??n.pauseWhenOnBattery}}function q(e,t){return r(e)===r(t)}function bn(e,t){return q(e.automaticGitFetchInterval,t.automaticGitFetchInterval)&&q(e.providerHealthRefreshInterval,t.providerHealthRefreshInterval)&&q(e.hostPowerMonitorActiveInterval,t.hostPowerMonitorActiveInterval)&&q(e.hostPowerMonitorIdleInterval,t.hostPowerMonitorIdleInterval)&&q(e.idleClientTtl,t.idleClientTtl)&&e.pauseWhenHostLocked===t.pauseWhenHostLocked&&e.pauseWhenHostLowPower===t.pauseWhenHostLowPower&&e.pauseWhenClientLowPower===t.pauseWhenClientLowPower&&e.pauseWhenOnBattery===t.pauseWhenOnBattery}function xn(e){if(e.profile!==`custom`)return{schemaVersion:1,profile:e.profile,overrides:{}};let t=yn(e),n=[K(e),`balanced`,`performance`,`battery-saver`];for(let e of n)if(bn(t,vn[e]))return{schemaVersion:1,profile:e,overrides:{}};let r=K(e),i=vn[r];return{schemaVersion:1,profile:`custom`,baseProfile:r,overrides:{...q(t.automaticGitFetchInterval,i.automaticGitFetchInterval)?{}:{automaticGitFetchInterval:t.automaticGitFetchInterval},...q(t.providerHealthRefreshInterval,i.providerHealthRefreshInterval)?{}:{providerHealthRefreshInterval:t.providerHealthRefreshInterval},...q(t.hostPowerMonitorActiveInterval,i.hostPowerMonitorActiveInterval)?{}:{hostPowerMonitorActiveInterval:t.hostPowerMonitorActiveInterval},...q(t.hostPowerMonitorIdleInterval,i.hostPowerMonitorIdleInterval)?{}:{hostPowerMonitorIdleInterval:t.hostPowerMonitorIdleInterval},...q(t.idleClientTtl,i.idleClientTtl)?{}:{idleClientTtl:t.idleClientTtl},...t.pauseWhenHostLocked===i.pauseWhenHostLocked?{}:{pauseWhenHostLocked:t.pauseWhenHostLocked},...t.pauseWhenHostLowPower===i.pauseWhenHostLowPower?{}:{pauseWhenHostLowPower:t.pauseWhenHostLowPower},...t.pauseWhenClientLowPower===i.pauseWhenClientLowPower?{}:{pauseWhenClientLowPower:t.pauseWhenClientLowPower},...t.pauseWhenOnBattery===i.pauseWhenOnBattery?{}:{pauseWhenOnBattery:t.pauseWhenOnBattery}}}}function Sn(e){let t={schemaVersion:1,profile:he,overrides:{}},n=e.backgroundActivity.profile===t.profile&&e.backgroundActivity.baseProfile===void 0&&Object.keys(e.backgroundActivity.overrides).length===0,i=e.backgroundActivityProfile,a=i!==`balanced`||r(e.automaticGitFetchInterval)!==r(we)||r(e.providerHealthRefreshInterval)!==r(Pe);return yn(n&&a?{schemaVersion:1,profile:r(e.automaticGitFetchInterval)===r(G(i).automaticGitFetchInterval)&&r(e.providerHealthRefreshInterval)===r(G(i).providerHealthRefreshInterval)?i:`custom`,baseProfile:i,overrides:{...r(e.automaticGitFetchInterval)===r(G(i).automaticGitFetchInterval)?{}:{automaticGitFetchInterval:e.automaticGitFetchInterval},...r(e.providerHealthRefreshInterval)===r(G(i).providerHealthRefreshInterval)?{}:{providerHealthRefreshInterval:e.providerHealthRefreshInterval}}}:e.backgroundActivity)}function Cn(e){let t=Sn(e);return xn({schemaVersion:1,profile:`custom`,baseProfile:t.profile,overrides:{automaticGitFetchInterval:t.automaticGitFetchInterval,providerHealthRefreshInterval:t.providerHealthRefreshInterval,hostPowerMonitorActiveInterval:t.hostPowerMonitorActiveInterval,hostPowerMonitorIdleInterval:t.hostPowerMonitorIdleInterval,idleClientTtl:t.idleClientTtl,pauseWhenHostLocked:t.pauseWhenHostLocked,pauseWhenHostLowPower:t.pauseWhenHostLowPower,pauseWhenClientLowPower:t.pauseWhenClientLowPower,pauseWhenOnBattery:t.pauseWhenOnBattery}})}var wn=_n(xe);i(wn);function Tn(e,t){let n=e.providerInstances[t.instanceId];return n===void 0?ge(t.instanceId):ue(n)}var En=[`codex`,`claudeAgent`,`cursor`,`grok`,`muse`,`pi`,`opencode`,`antigravity`].map(e=>Oe.make(e));function Dn(e,t,n){let r=[...En.map(e=>[Se(e),e]),...n?.includeConfiguredInstances===!0?Object.entries(e).flatMap(([e,t])=>En.includes(t.driver)?[[Ae.make(e),t.driver]]:[]):[]].find(([e,n])=>t(e,n));if(r===void 0)return null;let[i,a]=r,o=n?.defaultModelSelection,s=e[i]?.config;return o?.instanceId===i&&se(s?.customModels).some(e=>e.slug===o.model)?o:{instanceId:i,model:f[a]??ie[a]??`gpt-6-luna`}}function On(e,t,n){let r=e.sourceControlWriterModelSelection;if(!r||!Fe(e,n,r.instanceId))return e.textGenerationModelSelection;if(t===void 0)return r;let i=t.find(e=>e.instanceId===r.instanceId);return i?.enabled===!0&&be(i)&&me(i)?r:e.textGenerationModelSelection}function kn(e,t,n){let r=e.reviewGuideModelSelection;if(r&&Fe(e,n,r.instanceId)){let e=t?.find(e=>e.instanceId===r.instanceId);if(t===void 0||e?.enabled===!0&&be(e)&&me(e))return r}return On(e,t,n)}function An(e,t={}){return{favorites:e.favorites??t.favorites??[],providerModelPreferences:e.providerModelPreferences??t.providerModelPreferences??{}}}function jn(e,t){let n=e.favorites===null&&(t.favorites?.length??0)>0?t.favorites:void 0,r=e.providerModelPreferences===null&&Object.keys(t.providerModelPreferences??{}).length>0?t.providerModelPreferences:void 0;return n===void 0&&r===void 0?null:{migrateModelPreferences:{...n===void 0?{}:{favorites:n},...r===void 0?{}:{providerModelPreferences:r}}}}var Mn=new Set([`continueThreadsAfterServerUpdate`,`sidebarAutoSettleAfterDays`,`sidebarAutoSettleOnMerge`,`autoResumeLimitedThreads`,`snoozeLimitedThreads`,`newWorktreesStartFromOrigin`,`sourceControlWritingStyle`,`textGenerationModelSelection`]);function Nn(e){let t={},n={};for(let[r,i]of Object.entries(e))Mn.has(r)?t[r]=i:n[r]=i;return{sharedPatch:t,localPatch:n}}function Pn(e,t,n,r=n,i=!1){let a=e.textGenerationModelSelection?.instanceId??r?.textGenerationModelSelection.instanceId;return!i&&e.textGenerationModelSelection&&(!n||a!==void 0&&(r?.providerInstances[a]?.driver??a)!==(n.providerInstances[a]?.driver??a)||!Tn(n,{...n.textGenerationModelSelection,...e.textGenerationModelSelection}))&&(e=ce(e,[`textGenerationModelSelection`])),t?.threadRestartContinuation===!0?e:ce(e,[`continueThreadsAfterServerUpdate`])}function Fn(e){return e.connection.phase===`connected`&&e.serverConfig?.environment.capabilities.threadAutoSettlement===!0}var In=`[CLIENT_SETTINGS]`,Ln=new Set,Rn=new Set,zn=_e,J=`pending`,Y=null,Bn=0,Vn=Promise.resolve(),Hn=0;function Un(){for(let e of Ln)e()}function Wn(){for(let e of Rn)e()}function X(){return zn}function Z(e){zn=e,Un()}function Gn(e){J!==e&&(J=e,Wn())}function Kn(e){return Ln.add(e),Q().catch(()=>void 0),()=>{Ln.delete(e)}}function qn(){return J===`ready`}function Jn(){return J}function Yn(e){return Rn.add(e),Q().catch(()=>void 0),()=>{Rn.delete(e)}}async function Q(){if(J===`ready`)return;if(Y)return Y;let e=Bn;Gn(J===`failed`||J===`retrying`?`retrying`:`pending`);let t=(async()=>{try{let t=await Rt().persistence.getClientSettings();if(e!==Bn)return;t&&Z({..._e,...t}),Gn(`ready`)}catch(t){throw e===Bn&&Gn(`failed`),console.error(`${In} hydrate failed`,{operation:`hydrate`,...v(t)}),t}})().finally(()=>{Y===t&&(Y=null)});return Y=t,Y}var Xn=e=>Rt().persistence.setClientSettings(e);function Zn(e){let t=Vn.then(e);return Vn=t.then(()=>void 0,()=>void 0),t}function Qn(e,t=Xn){let n=J!==`ready`||Hn>0;return n?Hn+=1:Z({...X(),...e}),Zn(async()=>{if(n)try{J!==`ready`&&await Q(),Z({...X(),...e})}finally{--Hn}await t(X())}).catch(e=>{console.error(`${In} persist failed`,{operation:`persist`,...v(e)})})}async function $n(e,t=Xn){return Zn(async()=>{for(J!==`ready`&&await Q();;){let n=X(),r=e(n);if(await t(r),X()===n)return Z(r),r}})}var er=new Set(Ie(xe.fields));function tr(e){let t={},n={};for(let[r,i]of Object.entries(e))er.has(r)?t[r]=i:n[r]=i;return{serverPatch:t,clientPatch:n}}function nr(){return X()}function rr(){return Q()}function ir(){return(0,S.useSyncExternalStore)(Yn,qn,ar)}function ar(){return!1}function or(){return(0,S.useSyncExternalStore)(Yn,Jn,sr)}function sr(){return`pending`}function $(){return(0,S.useSyncExternalStore)(Kn,X,cr)}function cr(){return _e}function lr(e,t){return{...t,...e,...An(e,t)}}var ur=new Set;function dr(e,t){let n=(0,C.c)(8),r=$(),i=ir(),a;n[0]===Symbol.for(`react.memo_cache_sentinel`)?(a={reportFailure:!1},n[0]=a):a=n[0];let o=qe(b.updateSettings,a),s,c;n[1]!==r||n[2]!==e||n[3]!==i||n[4]!==o||n[5]!==t?(s=()=>{if(!e||!t||!i||ur.has(e))return;let n=jn(t,r);n&&(ur.add(e),o({environmentId:e,input:{patch:n}}).finally(()=>ur.delete(e)))},c=[r,e,i,o,t],n[1]=r,n[2]=e,n[3]=i,n[4]=o,n[5]=t,n[6]=s,n[7]=c):(s=n[6],c=n[7]),(0,S.useEffect)(s,c)}function fr(e,t){let n=(0,C.c)(6),r=$(),i;n[0]!==r||n[1]!==e?(i=lr(e,r),n[0]=r,n[1]=e,n[2]=i):i=n[2];let a=i,o;return n[3]!==a||n[4]!==t?(o=t?t(a):a,n[3]=a,n[4]=t,n[5]=o):o=n[5],o}function pr(e){let t=(0,C.c)(3),n=$(),r;return t[0]!==e||t[1]!==n?(r=e?e(n):n,t[0]=e,t[1]=n,t[2]=r):r=t[2],r}function mr(e){return e.settingsHydrated?e.paletteThemeActive&&!e.paletteThemeAllowsArtwork&&e.mode===`artwork`?`pill`:e.mode:`none`}function hr(){let e=(0,C.c)(7),t=ir(),n=$().environmentIdentificationMode,{resolvedTheme:r,theme:i,themeHalves:a}=pn(),o=(0,S.useSyncExternalStore)(Je,lt,gr),s;if(e[0]!==n||e[1]!==o||e[2]!==r||e[3]!==t||e[4]!==i||e[5]!==a){let c=Xe(i,a,r),l=st(c);s=mr({mode:n,settingsHydrated:t,paletteThemeActive:o!==null||l!==null,paletteThemeAllowsArtwork:o??$e(c)}),e[0]=n,e[1]=o,e[2]=r,e[3]=t,e[4]=i,e[5]=a,e[6]=s}else s=e[6];return s}function gr(){return null}async function _r(e,t){return(e.favorites===null||e.providerModelPreferences===null)&&await rr(),{...jn(e,nr()),...t}}function vr(e){let t=(0,C.c)(6),n;t[0]===e?n=t[1]:(n=e?b.settingsValueAtom(e):br,t[0]=e,t[1]=n);let r=h(n),i=qe(b.updateSettings,`model preferences update`),a;return t[2]!==e||t[3]!==i||t[4]!==r?(a=async t=>{if(!e||!r)return;let n;try{n=await _r(r,t)}catch{y.add({type:`error`,title:`Model preferences not saved`,description:`Could not load saved model preferences. Try again.`});return}return i({environmentId:e,input:{patch:n}})},t[2]=e,t[3]=i,t[4]=r,t[5]=a):a=t[5],a}function yr(e){let t=(0,S.use)(fe),n=(0,S.useRef)(new Map),r=vr(e);return(0,S.useCallback)(async(i,a)=>{if(!e)return;let o=b.settingsValueAtom(e),s=t.get(o);if(!s)return;if(s.favorites===null)try{await rr()}catch{y.add({type:`error`,title:`Favorites not saved`,description:`Could not load saved model preferences. Try again.`});return}let c=t.get(o)??s,l=An(c,nr()).favorites,u=JSON.stringify([e,i,a]),d=n.current.get(u),f={favorite:!(d&&(d.pending||d.settings.favorites===c.favorites)?d.favorite:l.some(e=>e.provider===i&&e.model===a)),settings:c,pending:!0};n.current.set(u,f);try{let e=await r({setModelFavorites:[{provider:i,model:a,favorite:f.favorite}]});e&&Le(e)&&t.get(o)?.favorites===c.favorites&&(f.pending=!1)}finally{f.pending&&n.current.get(u)===f&&(d&&!d.pending&&t.get(o)?.favorites===d.settings.favorites?n.current.set(u,d):n.current.delete(u))}},[e,t,r])}var br=n(null);function xr(e){let t=(0,C.c)(5),n;t[0]===e?n=t[1]:(n=e?b.settingsValueAtom(e):br,t[0]=e,t[1]=n);let r=h(n),i=$();dr(e,r);let a=r??ye,o;return t[2]!==i||t[3]!==a?(o=An(a,i),t[2]=i,t[3]=a,t[4]=o):o=t[4],o}function Sr(e,t){let n=(0,C.c)(2),r;n[0]===e?r=n[1]:(r=b.settingsValueAtom(e),n[0]=e,n[1]=r);let i=h(r);return dr(e,i),fr(i??ye,t)}function Cr(e){let t=(0,C.c)(4),n;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(n={reportFailure:!1},t[0]=n):n=t[0];let r=qe(b.mutateProviderInstance,n),i;return t[1]!==e||t[2]!==r?(i=(t,n)=>r({environmentId:e,input:{patch:n===void 0?{}:n,providerInstanceMutation:t}}),t[1]=e,t[2]=r,t[3]=i):i=t[3],i}function wr(e){let t=He(),n=h(Ue);return dr(t?.environmentId??null,t?.serverConfig?.settings??null),fr(n,e)}var Tr=`This setting is saved on a server, and the hosted app is not anchored to one. Change it from the desktop app or from the server's own address.`;function Er(){let e=(0,C.c)(2),t=He(),n;return e[0]===t?n=e[1]:(n=t!==null||!Be(),e[0]=t,e[1]=n),n}function Dr(e){let t=(0,C.c)(3),r=e!==void 0&&e,{environments:i}=Ve(),a;return t[0]!==i||t[1]!==r?(a=n(e=>i.filter(Fn).flatMap(t=>{let n=e(Ke.sessionStateAtom(t.environmentId));if(r&&n._tag===`Initial`)return[t.environmentId];let i=n._tag===`Failure`?null:re(le(n));return i!==null&&Te(i,`settings:write`)?[t.environmentId]:[]})),t[0]=i,t[1]=r,t[2]=a):a=t[2],h(a)}function Or(e){let t=(0,C.c)(10);We(e,o);let n;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(n={label:`server settings update`,reportFailure:!1},t[0]=n):n=t[0];let r=qe(b.updateSettings,n),{environments:i}=Ve(),a;t[1]!==i||t[2]!==r?(a=async e=>{let t=await r(e);if(t._tag===`Failure`&&!Re(t)){let n=i.find(t=>t.environmentId===e.environmentId)?.label??e.environmentId,r=ze(t);y.add({type:`error`,title:`Setting not saved`,description:`Could not save on ${n}: ${r instanceof Error?r.message:`The save failed. Try reconnecting and saving again.`}`})}return t},t[1]=i,t[2]=r,t[3]=a):a=t[3];let c=a,l=Dr(!0),u;return t[4]!==e||t[5]!==i||t[6]!==r||t[7]!==c||t[8]!==l?(u=t=>{let{serverPatch:n,clientPatch:a}=tr(t),o=e===null||s(n).every(t=>Ge(e,t));if(Object.keys(n).length>0&&!o&&y.add({type:`warning`,title:`Setting not saved`,description:`This connection lacks permission to change settings on ${i.find(t=>t.environmentId===e)?.label??`the selected environment`}.`}),Object.keys(n).length>0&&o){let{sharedPatch:t,localPatch:a}=Nn(n),o=Nr;if(Object.keys(a).length>0&&(e?c({environmentId:e,input:{patch:a}}):o()),Object.keys(t).length>0){let n=i.find(t=>t.environmentId===e)?.serverConfig?.settings,a=new Set(l);e&&a.add(e);let c=[],u=[];for(let r of a){let a=i.find(e=>e.environmentId===r),o=Pn(t,a?.serverConfig?.environment.capabilities,a?.serverConfig?.settings,n,r===e);if(Object.keys(o).length!==0){if(ee.get(Ke.sessionStateAtom(r))._tag!==`Initial`&&!s(t).every(e=>Ge(r,e))){u.push(a?.label??r);continue}c.push({environmentId:r,input:{patch:o}})}}c.length===0?o(u.length>0?`This connection lacks permission to change settings on ${u.join(`, `)}.`:a.size>0?`Update older servers to save this setting.`:void 0):Promise.all(c.map(async e=>({label:i.find(t=>t.environmentId===e.environmentId)?.label??e.environmentId,result:await r(e)}))).then(kr)}}Object.keys(a).length>0&&Qn(a)},t[4]=e,t[5]=i,t[6]=r,t[7]=c,t[8]=l,t[9]=u):u=t[9],u}function kr(e){let t=e.flatMap(Mr);if(t.length===0)return;let n=e.filter(jr).map(Ar);y.add({type:`error`,title:n.length>0?`Setting saved on some environments`:`Setting not saved`,description:[...t,...n.length>0?[`Saved on ${n.join(`, `)}.`]:[]].join(`
|
|
2
|
-
`)})}function Ar(e){let{label:t}=e;return t}function jr(e){let{result:t}=e;return t._tag===`Success`}function Mr(e){let{label:t,result:n}=e;if(n._tag!==`Failure`||Re(n))return[];let r=ze(n);return[`Could not save on ${t}: ${r instanceof Error?r.message:`The save failed. Try reconnecting and saving again.`}`]}function Nr(e){let t=e===void 0?Tr:e;return y.add({type:`warning`,title:`Setting not saved`,description:t})}function Pr(e){return Or(e)}function Fr(){return Or(He()?.environmentId??null)}function Ir(){return Lr}function Lr(e){return Qn(e)}export{_n as A,yt as B,kn as C,xn as D,G as E,an as F,vt as G,pt as H,pn as I,mt as K,Rt as L,Bt as M,Vt as N,Cn as O,$t as P,Lt as R,Dn as S,K as T,ht as U,_t as V,gt as W,yr as _,Qn as a,Pr as b,ir as c,xr as d,Sr as f,Er as g,wr as h,lr as i,V as j,Sn as k,or as l,Cr as m,rr as n,$n as o,dr as p,nr as r,pr as s,Tr as t,hr as u,Ir as v,On as w,Fr as x,vr as y,Dt as z};
|
|
3
|
-
//# sourceMappingURL=useSettings-CKA-LDDj.js.map
|