@p4code/cli 0.8.35 → 0.8.37

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (263) hide show
  1. package/dist/bin.mjs +1 -1
  2. package/dist/{binCli-26z5sNBT.mjs → binCli-mInzhqSL.mjs} +5 -5
  3. package/dist/client/.vite/manifest.json +2031 -2031
  4. package/dist/client/assets/{2NI2N5EU-BLnY4aCF.js → 2NI2N5EU-DVsZziQ3.js} +2 -2
  5. package/dist/client/assets/{4UO7MD6I-BApNVkfU.js → 4UO7MD6I-Cs3yBe-m.js} +2 -2
  6. package/dist/client/assets/{5B3SVYGG-Y7V7NdZO.js → 5B3SVYGG-CxW0L1iX.js} +2 -2
  7. package/dist/client/assets/{5GK6JWQ2-BSIhKcw-.js → 5GK6JWQ2-Cb25PEnx.js} +2 -2
  8. package/dist/client/assets/{5N7A7DKN-CNUCnWLs.js → 5N7A7DKN-udLyT643.js} +2 -2
  9. package/dist/client/assets/{5OC2THR4-Bne-pf_A.js → 5OC2THR4-DqD-reis.js} +2 -2
  10. package/dist/client/assets/{5S6HY5KT-7d4UMONz.js → 5S6HY5KT-Cy7mIKKq.js} +2 -2
  11. package/dist/client/assets/{6IMQ5BUJ-BWW19n-D.js → 6IMQ5BUJ-Qu9PVsT7.js} +2 -2
  12. package/dist/client/assets/{6OLKWJ4F-CxTUuvA6.js → 6OLKWJ4F-BYzZS9mf.js} +2 -2
  13. package/dist/client/assets/{74OO7NKP-DByVTRKE.js → 74OO7NKP-h3ga2-vb.js} +2 -2
  14. package/dist/client/assets/{75O6YZUN-CZanyedf.js → 75O6YZUN-ByAK3P56.js} +2 -2
  15. package/dist/client/assets/{77XECAW3-TL2w7pHK.js → 77XECAW3-D_lZqaZv.js} +2 -2
  16. package/dist/client/assets/{ABYRPUBD-CJboH7Uz.js → ABYRPUBD-BPWfXZyu.js} +2 -2
  17. package/dist/client/assets/AlertDialogRoot-BSP6M0Mu.js +2 -0
  18. package/dist/client/assets/{AnimatedHeight-OxEbW01v.js → AnimatedHeight-D0-6CAPr.js} +2 -2
  19. package/dist/client/assets/{AuthSurfaceShell-KQXgPV4i.js → AuthSurfaceShell-30QvY1bI.js} +2 -2
  20. package/dist/client/assets/{BB2UYUI2-BxW-R2h1.js → BB2UYUI2-CGgafKC2.js} +2 -2
  21. package/dist/client/assets/{BUM34MOA-ngG-irUy.js → BUM34MOA-Cn4iaSBT.js} +2 -2
  22. package/dist/client/assets/{CEQABKGZ-C-u-W0bS.js → CEQABKGZ-CmBEfzh3.js} +2 -2
  23. package/dist/client/assets/{CXAC5362-DfFRkI7L.js → CXAC5362-xibpmz3Y.js} +2 -2
  24. package/dist/client/assets/{ChatGptUsageButton-C3KgGt4z.js → ChatGptUsageButton-DU3PVHJW.js} +2 -2
  25. package/dist/client/assets/{ChatMarkdown-9gWM0ED9.js → ChatMarkdown-D-cNSjFn.js} +5 -5
  26. package/dist/client/assets/{CheckboxIndicator-DbU3csPQ.js → CheckboxIndicator-CZCy38xt.js} +2 -2
  27. package/dist/client/assets/{ClippedText-CS_BYNco.js → ClippedText-D_rM_XDj.js} +2 -2
  28. package/dist/client/assets/{CodexSetupSection.logic-CNbTXxKb.js → CodexSetupSection.logic-g6_GE4bw.js} +2 -2
  29. package/dist/client/assets/{ComboboxClear-Bn_kslrf.js → ComboboxClear-tOmMpuVi.js} +2 -2
  30. package/dist/client/assets/{ComboboxGroupLabel-fL8lMA25.js → ComboboxGroupLabel-CgZZIHwV.js} +2 -2
  31. package/dist/client/assets/{CommandBlock-DcQXu_lq.js → CommandBlock-6rjypfVF.js} +2 -2
  32. package/dist/client/assets/{ComposerPromptEditor-DQ9wFfKn.js → ComposerPromptEditor-Dxfhec2W.js} +4 -4
  33. package/dist/client/assets/{CompositeRoot-BuwzXGHT.js → CompositeRoot-Bsb8efI6.js} +2 -2
  34. package/dist/client/assets/{ConnectionDiagnosisDetails-DGbJY7Hw.js → ConnectionDiagnosisDetails-Q0M5gCCf.js} +2 -2
  35. package/dist/client/assets/{ConnectionStatusDot-CixsTBXI.js → ConnectionStatusDot-DAuD0jkU.js} +2 -2
  36. package/dist/client/assets/{DRLTVNUE-Cbb71R0Y.js → DRLTVNUE-BVseXOzv.js} +2 -2
  37. package/dist/client/assets/{DYY6UVD2-BZn5fuF5.js → DYY6UVD2-Bz33D3dq.js} +2 -2
  38. package/dist/client/assets/{DevicePanel-JP__PY1s.js → DevicePanel-CsSQr7vQ.js} +2 -2
  39. package/dist/client/assets/{DeviceSetup-D8qb_qBj.js → DeviceSetup-Cl7L9wsi.js} +2 -2
  40. package/dist/client/assets/{DialogTitle-B_9LEmy3.js → DialogTitle-bcvBtKP-.js} +2 -2
  41. package/dist/client/assets/{DiffCommentAnnotation-WMKzOwCh.js → DiffCommentAnnotation-bhzNqujM.js} +2 -2
  42. package/dist/client/assets/{DiffFileTree-BSbsOOmA.js → DiffFileTree-BySeJqhq.js} +2 -2
  43. package/dist/client/assets/{DiffPanel-BWFuiHvv.js → DiffPanel-CCFas4eA.js} +2 -2
  44. package/dist/client/assets/{DiffWorkerPoolProvider-BBk0lIX3.js → DiffWorkerPoolProvider-CkkqWbz-.js} +2 -2
  45. package/dist/client/assets/{EmbeddedDesign-D5YUndkh.js → EmbeddedDesign-iuThcPT3.js} +2 -2
  46. package/dist/client/assets/{EnvironmentMachineIcon-Dpgx67FY.js → EnvironmentMachineIcon-iUmoTUYt.js} +2 -2
  47. package/dist/client/assets/{ExpandableText-Cpm1gOKG.js → ExpandableText-ByCx68yv.js} +2 -2
  48. package/dist/client/assets/{FNOVOB4O-BkEIrB0k.js → FNOVOB4O-DK3iet1g.js} +2 -2
  49. package/dist/client/assets/{FieldControl-BHe6unoZ.js → FieldControl-DtsEariK.js} +2 -2
  50. package/dist/client/assets/{FileDiff-C1vAOUga.js → FileDiff-Bu2BSqBV.js} +2 -2
  51. package/dist/client/assets/{FilePreviewPanel-CbpNevZP.js → FilePreviewPanel-8cI8gciT.js} +2 -2
  52. package/dist/client/assets/{FoldedSettingsSection-DySTg20x.js → FoldedSettingsSection-RYq8GTvV.js} +2 -2
  53. package/dist/client/assets/{FormContext-CmvUzTS-.js → FormContext-CIK8MKa2.js} +2 -2
  54. package/dist/client/assets/{HDGCDEEZ-CN-ckGDk.js → HDGCDEEZ-B_J1N6RY.js} +2 -2
  55. package/dist/client/assets/{HSJLKHB7-B0BvmnZE.js → HSJLKHB7-B2SbZQUf.js} +2 -2
  56. package/dist/client/assets/{Icons-B4l3TqYa.js → Icons-xsXA_L6w.js} +2 -2
  57. package/dist/client/assets/Input-D3Qi4jCN.js +2 -0
  58. package/dist/client/assets/JZOYTAAL-BlxFvoz4.js +1 -0
  59. package/dist/client/assets/{K3MD6TGW-IS0rWO1U.js → K3MD6TGW-VU68yYxr.js} +2 -2
  60. package/dist/client/assets/{K7RP3OMA-DcqjCOJO.js → K7RP3OMA-zaD_NBVC.js} +2 -2
  61. package/dist/client/assets/{KeybindingsSettings.logic-mF9mJWrc.js → KeybindingsSettings.logic-BJe27xmi.js} +2 -2
  62. package/dist/client/assets/{LHDIQX7Q-CLMgIt4Y.js → LHDIQX7Q-DCLqoRGy.js} +2 -2
  63. package/dist/client/assets/{LUXOKEGN-B1dkmN_M.js → LUXOKEGN-CmxZpSzC.js} +2 -2
  64. package/dist/client/assets/{MathTypeset-qeRVy_bc.js → MathTypeset-Hhqwg4PF.js} +2 -2
  65. package/dist/client/assets/{N3JZAHOW-C6sq5aqx.js → N3JZAHOW-Cev8Cn9M.js} +2 -2
  66. package/dist/client/assets/{NUIALGQ3-BG7xJ_qe.js → NUIALGQ3-CV92Kt25.js} +2 -2
  67. package/dist/client/assets/{NoProjectsHero-B0KzU91d.js → NoProjectsHero-CMqIlSNl.js} +2 -2
  68. package/dist/client/assets/{O65XPQGZ-BEfVfDlS.js → O65XPQGZ-bGyTGMsB.js} +2 -2
  69. package/dist/client/assets/{O7XIQ6OM-BUiRjV87.js → O7XIQ6OM-DVdEfB1N.js} +2 -2
  70. package/dist/client/assets/{OFQON5FD-DTgVPbd-.js → OFQON5FD-Ca_CNS26.js} +2 -2
  71. package/dist/client/assets/{P4ConnectAccountPages-C4KYM5XU.js → P4ConnectAccountPages-Buss2oTL.js} +2 -2
  72. package/dist/client/assets/{P4ConnectSidebarSignIn-DNPUNJl_.js → P4ConnectSidebarSignIn-D1n4y6Gq.js} +2 -2
  73. package/dist/client/assets/{PJQHF43J-QRnhQpHu.js → PJQHF43J-B__IdKwP.js} +2 -2
  74. package/dist/client/assets/{PanelLayoutControls-4VFKEoHg.js → PanelLayoutControls-EIunk_2Q.js} +4 -4
  75. package/dist/client/assets/{PierreEntryIcon-DeI-j_7w.js → PierreEntryIcon-GQImyog1.js} +2 -2
  76. package/dist/client/assets/{PopoverHandle-DMB4QSp6.js → PopoverHandle-Cj5egwXv.js} +2 -2
  77. package/dist/client/assets/{PreviewPanel-CO66mekh.js → PreviewPanel-BkFeksTl.js} +2 -2
  78. package/dist/client/assets/{ProjectDefaultsSettings-BF-iyQ8T.js → ProjectDefaultsSettings-DX2Kf-tx.js} +2 -2
  79. package/dist/client/assets/{ProjectFavicon-_6hkSNzm.js → ProjectFavicon-OMOnEzVu.js} +3 -3
  80. package/dist/client/assets/{ProjectIconPickerDialog-DeL1rZxy.js → ProjectIconPickerDialog-Q4GkqwDs.js} +2 -2
  81. package/dist/client/assets/{ProjectMonogram-Cn4l-YGU.js → ProjectMonogram-Br5sgd24.js} +2 -2
  82. package/dist/client/assets/{ProviderAuthTerminal-qGeMxZDy.js → ProviderAuthTerminal-Q584HoOn.js} +2 -2
  83. package/dist/client/assets/{ProviderModelPicker-DJQYH_Pp.js → ProviderModelPicker-JNM9nJs_.js} +2 -2
  84. package/dist/client/assets/{ProviderSettingsForm-BSVuPnR0.js → ProviderSettingsForm-CdiKhrJE.js} +2 -2
  85. package/dist/client/assets/{PullRequestCodeTab-0OaJE6XS.js → PullRequestCodeTab-Co76Qf6Z.js} +2 -2
  86. package/dist/client/assets/{RHNBAITX-ChqB7inB.js → RHNBAITX-Oryl0UiR.js} +2 -2
  87. package/dist/client/assets/{ReadOnlySourcePreview-B08Wms4m.js → ReadOnlySourcePreview-aUjexBVb.js} +2 -2
  88. package/dist/client/assets/{RenderErrorBoundary-BsOuLEci.js → RenderErrorBoundary-Oe5BzG3n.js} +2 -2
  89. package/dist/client/assets/{SLD4V6NK-IkYRGtTH.js → SLD4V6NK-DbsINoTD.js} +2 -2
  90. package/dist/client/assets/{ScheduledTasksSettings-1UDkELZo.js → ScheduledTasksSettings-1uXNtcPA.js} +2 -2
  91. package/dist/client/assets/{ScopedSwitch-Bhp6-hCj.js → ScopedSwitch-D8-FelRH.js} +2 -2
  92. package/dist/client/assets/{ScrollAreaCorner-BPMuWLbs.js → ScrollAreaCorner-nnFi-Ecx.js} +2 -2
  93. package/dist/client/assets/{SecretInput-RlOzrLKL.js → SecretInput-CqAhFuNO.js} +2 -2
  94. package/dist/client/assets/{SelectScrollUpArrow-6kh66YCd.js → SelectScrollUpArrow-BQJrvk31.js} +2 -2
  95. package/dist/client/assets/{SettingsPanels-BfBUSBAG.js → SettingsPanels-CNgY_ZPe.js} +4 -4
  96. package/dist/client/assets/{SettingsPanels.logic-BsFZYDgm.js → SettingsPanels.logic-Dr_NyHjE.js} +2 -2
  97. package/dist/client/assets/{SettingsScopeNotice-H7UzC9bb.js → SettingsScopeNotice-BFxCBOnl.js} +2 -2
  98. package/dist/client/assets/{T3PCR2KE-BxaunvVy.js → T3PCR2KE-2R1FY5zG.js} +2 -2
  99. package/dist/client/assets/{TKWO2OVW-DFURsfqA.js → TKWO2OVW-BjhIZzCe.js} +2 -2
  100. package/dist/client/assets/{TSHNXIZL-CIukdyLy.js → TSHNXIZL-B_cvoUct.js} +2 -2
  101. package/dist/client/assets/{ThemeEditorPanel-otrA-nTg.js → ThemeEditorPanel-B7MiqZ90.js} +2 -2
  102. package/dist/client/assets/{ThreadTerminalDrawer-BQKZCFAC.js → ThreadTerminalDrawer-DHoyxd6-.js} +2 -2
  103. package/dist/client/assets/{TooltipViewport-ZmVCer7P.js → TooltipViewport-ThbbZQDo.js} +2 -2
  104. package/dist/client/assets/{UQJE5E4I-CfqCotH2.js → UQJE5E4I-2r98lr05.js} +2 -2
  105. package/dist/client/assets/{USNYFO5S-CctAAheU.js → USNYFO5S-CvTI5t_o.js} +2 -2
  106. package/dist/client/assets/{Virtualizer-CImHNxBq.js → Virtualizer-BgcEI5KE.js} +2 -2
  107. package/dist/client/assets/{WEVWDWVA-DS9YO9IT.js → WEVWDWVA-U7ygIdf3.js} +2 -2
  108. package/dist/client/assets/{WorkspaceBreadcrumb-BW_omYU1.js → WorkspaceBreadcrumb-_zND61qF.js} +2 -2
  109. package/dist/client/assets/{WorkspacePageContainer-BS8FWt_4.js → WorkspacePageContainer-LYv_7Qc0.js} +2 -2
  110. package/dist/client/assets/{WorkspacePageHeader-CE_94tTR.js → WorkspacePageHeader-B_0ute56.js} +2 -2
  111. package/dist/client/assets/{X5RFHQXM-B0KbwoE1.js → X5RFHQXM-D4S0_b0W.js} +2 -2
  112. package/dist/client/assets/{X62E3GBT-wpz8X9Yh.js → X62E3GBT-CrIC4h9P.js} +2 -2
  113. package/dist/client/assets/{XBNEOJTC-DFRK5c6Y.js → XBNEOJTC-D2_RQZjM.js} +2 -2
  114. package/dist/client/assets/{YHV2MVVZ-1NnqTTZ2.js → YHV2MVVZ-BmAcJLBt.js} +2 -2
  115. package/dist/client/assets/{YURCZMG2-rnzWY5ij.js → YURCZMG2-RCCTu3bv.js} +2 -2
  116. package/dist/client/assets/{YVG2LODB-Dxuuk2M-.js → YVG2LODB-Cvp0Ei-1.js} +2 -2
  117. package/dist/client/assets/{_chat-1QGQLbCc.js → _chat-CwO3_WVM.js} +5 -5
  118. package/dist/client/assets/{_chat.design-z2pu_9A5.js → _chat.design-DX1VqYkX.js} +2 -2
  119. package/dist/client/assets/{_chat.index-D8X9o5jY.js → _chat.index-Dzh3d42S.js} +2 -2
  120. package/dist/client/assets/{_chat.new-CGJw8cpo.js → _chat.new-BHRvXFPr.js} +2 -2
  121. package/dist/client/assets/{_chat.pull-requests-BfW9qMU1.js → _chat.pull-requests-BZilN1TK.js} +2 -2
  122. package/dist/client/assets/{alert-DO06etEs.js → alert-BN-r9V4f.js} +2 -2
  123. package/dist/client/assets/{assetUrls-CmOUMX2M.js → assetUrls-B6vsSVWR.js} +2 -2
  124. package/dist/client/assets/{assets-aBpLf8r4.js → assets-CID0y4Uv.js} +2 -2
  125. package/dist/client/assets/{browserHistoryStore-tYgeZygn.js → browserHistoryStore-CK4YsfkQ.js} +2 -2
  126. package/dist/client/assets/{browserLinkTarget-CQFfJKWJ.js → browserLinkTarget-BJ30b4-s.js} +2 -2
  127. package/dist/client/assets/{checkbox-BEQFb7GO.js → checkbox-BJhN1L_L.js} +2 -2
  128. package/dist/client/assets/{color-picker-CXfnfmuH.js → color-picker-D2LwMwlZ.js} +2 -2
  129. package/dist/client/assets/{combobox--XoXA5uu.js → combobox-Cw2-7qyI.js} +2 -2
  130. package/dist/client/assets/{command-E2aLhsct.js → command-BIELTYJu.js} +2 -2
  131. package/dist/client/assets/{composer-logic-BPTz1APL.js → composer-logic-P-jVPXi4.js} +2 -2
  132. package/dist/client/assets/{composerDraftUploads-b_0oxKs9.js → composerDraftUploads-S66xDlS0.js} +2 -2
  133. package/dist/client/assets/{connect-CU9dNvTt.js → connect-D4llmZsa.js} +2 -2
  134. package/dist/client/assets/{connect-agent-Byc9PCdW.js → connect-agent-BlR0FAbF.js} +2 -2
  135. package/dist/client/assets/{design-CoGbXd61.js → design-Cdl1XCBU.js} +2 -2
  136. package/dist/client/assets/{device-DmH6IHQ4.js → device-Bc5H3PTz.js} +2 -2
  137. package/dist/client/assets/{dialog-CBBxT1gk.js → dialog-BRtKKGzk.js} +2 -2
  138. package/dist/client/assets/{diffRendering-BOVFJuWd.js → diffRendering-DtBTalAD.js} +2 -2
  139. package/dist/client/assets/{dist-B2P3f-0Q.js → dist-oE_MNxpZ.js} +3 -3
  140. package/dist/client/assets/{draft-input-CSOOVntS.js → draft-input-vviXwx5Q.js} +2 -2
  141. package/dist/client/assets/{duoViewer-BhHYrurM.js → duoViewer-kcp00m8a.js} +2 -2
  142. package/dist/client/assets/{dynamic-BhzrutAo.js → dynamic-C8_ODyue.js} +2 -2
  143. package/dist/client/assets/{embeddedScripts-43_R83vp.js → embeddedScripts-skldQmE1.js} +2 -2
  144. package/dist/client/assets/{empty-FOL5U4KY.js → empty-rC3eYvxq.js} +2 -2
  145. package/dist/client/assets/{entities-Bqo0n1Pb.js → entities-B8Vupv5g.js} +2 -2
  146. package/dist/client/assets/{fileLinks-D4GSqJYj.js → fileLinks-BoyzENAX.js} +2 -2
  147. package/dist/client/assets/{fileTreeExpansion-BBT5F8P1.js → fileTreeExpansion-DndrZZAD.js} +2 -2
  148. package/dist/client/assets/{getDiffFileInput-CGw09SPI.js → getDiffFileInput-C1QBFdFu.js} +2 -2
  149. package/dist/client/assets/{guideRunStore-DvIkVECt.js → guideRunStore-BgFFILxA.js} +2 -2
  150. package/dist/client/assets/{htmlRender-CmEeFzCo.js → htmlRender-ddkOIEbT.js} +2 -2
  151. package/dist/client/assets/{index-B1djVqM4.js → index-BwdieRvq.js} +3 -3
  152. package/dist/client/assets/{input-ekYqAkUx.js → input-BYd74ook.js} +2 -2
  153. package/dist/client/assets/{input-group-C3pxk97H.js → input-group-DMFlSk_7.js} +2 -2
  154. package/dist/client/assets/{kbd-3FPzNikV.js → kbd-rp5mX21h.js} +2 -2
  155. package/dist/client/assets/{keybindings-B3oDRRkK.js → keybindings-B_kRk5Fi.js} +2 -2
  156. package/dist/client/assets/{lazy-DyNR0b0B.js → lazy-CeaQ3-Fj.js} +4 -4
  157. package/dist/client/assets/{lazyRouteComponent-BPxq_G_s.js → lazyRouteComponent-COYyJY2H.js} +2 -2
  158. package/dist/client/assets/{link-B3B5a5Ju.js → link-CsXnX9WM.js} +2 -2
  159. package/dist/client/assets/{linkedPrompt-BsCPMHxQ.js → linkedPrompt-B5iI7U8H.js} +2 -2
  160. package/dist/client/assets/{main-BWh6jqG2.js → main-VfCRP294.js} +7 -7
  161. package/dist/client/assets/{mediaReference-Bb8H-qbI.js → mediaReference-ZW7gfO5X.js} +2 -2
  162. package/dist/client/assets/{mediaSource-C2MsZgy8.js → mediaSource-DsT6G6Wm.js} +2 -2
  163. package/dist/client/assets/{number-field-SoHEiP55.js → number-field-CEA6qXbs.js} +2 -2
  164. package/dist/client/assets/{observeResize-3Vj9DYOV.js → observeResize-DSyLC8QK.js} +2 -2
  165. package/dist/client/assets/{onboarding-CPgiVEVK.js → onboarding-BPkAEHBV.js} +2 -2
  166. package/dist/client/assets/{openFileInPreview-BBWCOLh_.js → openFileInPreview-CGM83ICx.js} +2 -2
  167. package/dist/client/assets/{p4ProjectFile-qmvlbzKv.js → p4ProjectFile-CwpteA7b.js} +2 -2
  168. package/dist/client/assets/{pair-CZnRGdd8.js → pair-D9v8gc0o.js} +2 -2
  169. package/dist/client/assets/{pendingSendStore-L5KquCDf.js → pendingSendStore-BuEVrrEM.js} +2 -2
  170. package/dist/client/assets/{phoneViewer-D-8v-sMf.js → phoneViewer-CNE0SVmy.js} +2 -2
  171. package/dist/client/assets/{pierre-icons-jwqMPUxD.js → pierre-icons-ChDlOt-h.js} +2 -2
  172. package/dist/client/assets/{popover-OfG3wVsl.js → popover-BjUpdrKu.js} +2 -2
  173. package/dist/client/assets/{preview-BYnEURcB.js → preview-3EscFepc.js} +2 -2
  174. package/dist/client/assets/{preview-DGdQ5Ycc.js → preview-DHLYKEKb.js} +2 -2
  175. package/dist/client/assets/{previewMiniPlayerStore-Dlbj5KrZ.js → previewMiniPlayerStore-DHjQeV1U.js} +2 -2
  176. package/dist/client/assets/{primary-B47ivN3o.js → primary-NcsmRI6j.js} +2 -2
  177. package/dist/client/assets/{primaryCloudLinkState-CreqR0gU.js → primaryCloudLinkState-DkXIVBHW.js} +2 -2
  178. package/dist/client/assets/{projectFilesQueryState-CanWrACx.js → projectFilesQueryState-0jxJ50Qq.js} +2 -2
  179. package/dist/client/assets/{projectScriptEditor-gWuw6vwd.js → projectScriptEditor-CMGXoIEJ.js} +2 -2
  180. package/dist/client/assets/{providerSkills-C_Rxqah9.js → providerSkills-4hnESoi_.js} +2 -2
  181. package/dist/client/assets/{pullRequestDetail.logic-RASi2EgP.js → pullRequestDetail.logic-sbOM8yDW.js} +2 -2
  182. package/dist/client/assets/{pullRequestIcons-ucGaXXG7.js → pullRequestIcons-B7Om_B_D.js} +2 -2
  183. package/dist/client/assets/{pullRequestReviewStore-CEr41DEl.js → pullRequestReviewStore-CIL8WfOG.js} +2 -2
  184. package/dist/client/assets/{pullRequests-Bw3Ui6hK.js → pullRequests-CMTRCOu7.js} +2 -2
  185. package/dist/client/assets/{queries-EslKFJTV.js → queries-hhl_J8u9.js} +2 -2
  186. package/dist/client/assets/{query-d1pQlqP0.js → query-CfGzD8v6.js} +2 -2
  187. package/dist/client/assets/{radio-group-Ciy_K5uE.js → radio-group-up2QNXjf.js} +2 -2
  188. package/dist/client/assets/{renderScheduler-CP-JkmKx.js → renderScheduler-Dgqqs-EX.js} +2 -2
  189. package/dist/client/assets/{rightPanelStore-D3KOmuPa.js → rightPanelStore-CGF0-d-1.js} +2 -2
  190. package/dist/client/assets/{runtime-d6B1vJeH.js → runtime-Ca_Z-vg5.js} +3 -3
  191. package/dist/client/assets/{runtime-DR7JxgbQ.js → runtime-OeWFs5Hf.js} +3 -3
  192. package/dist/client/assets/{runtimeModeConfig-Rxeb1uGg.js → runtimeModeConfig-BTG9FTYe.js} +2 -2
  193. package/dist/client/assets/{scheduledTasksSettings.logic-CVIC4Kpr.js → scheduledTasksSettings.logic-BeuOnCov.js} +2 -2
  194. package/dist/client/assets/{scroll-area-yyfi3ycu.js → scroll-area-BNQKEZbp.js} +2 -2
  195. package/dist/client/assets/{select-DaYjjw1q.js → select-D_zHR42Y.js} +2 -2
  196. package/dist/client/assets/{selfImproveFindings-1XIHD-7i.js → selfImproveFindings-CAZ0j1GD.js} +2 -2
  197. package/dist/client/assets/{server-sXApTCjZ.js → server-6nKYyc8r.js} +2 -2
  198. package/dist/client/assets/{session-C949OsEI.js → session-BxUdP61p.js} +2 -2
  199. package/dist/client/assets/{session-logic-DkSfwnHl.js → session-logic-Dr1plzXe.js} +2 -2
  200. package/dist/client/assets/{settings-B0O54Q3P.js → settings-DE_hSu0q.js} +2 -2
  201. package/dist/client/assets/{settings.appearance-BesXhA1a.js → settings.appearance-C--uy4It.js} +2 -2
  202. package/dist/client/assets/settings.archived-D-55XnxQ.js +2 -0
  203. package/dist/client/assets/{settings.computer-use-BeKmLbNe.js → settings.computer-use-DhnqPqMm.js} +2 -2
  204. package/dist/client/assets/{settings.connections-D1UxckE0.js → settings.connections-BPVLazeK.js} +2 -2
  205. package/dist/client/assets/{settings.data-controls-lPiIwMgc.js → settings.data-controls-CIzGvqCI.js} +2 -2
  206. package/dist/client/assets/{settings.decisions-D97jIUyr.js → settings.decisions-CU-6rIpn.js} +2 -2
  207. package/dist/client/assets/{settings.designs-B473PRvt.js → settings.designs-DHYhhG4k.js} +2 -2
  208. package/dist/client/assets/{settings.diagnostics-DDOaOIDg.js → settings.diagnostics-csgW1_E8.js} +2 -2
  209. package/dist/client/assets/{settings.general-qzEOE2zF.js → settings.general-CeBkrL9-.js} +2 -2
  210. package/dist/client/assets/{settings.integrations-D6ctQ9WI.js → settings.integrations-DqSYBosl.js} +2 -2
  211. package/dist/client/assets/{settings.keybindings-BL57H4sD.js → settings.keybindings-C7D1i238.js} +2 -2
  212. package/dist/client/assets/{settings.open-source-licenses-DaS82UhN.js → settings.open-source-licenses-6oFDgAt7.js} +2 -2
  213. package/dist/client/assets/{settings.plugins-DnS3RrT2.js → settings.plugins-DfM65Xio.js} +2 -2
  214. package/dist/client/assets/{settings.projects-D-ZICXey.js → settings.projects-CeoZzdMW.js} +3 -3
  215. package/dist/client/assets/{settings.providers-CFpCmv0o.js → settings.providers-BBgppyE3.js} +3 -3
  216. package/dist/client/assets/{settings.scheduled-tasks-IEAC3STn.js → settings.scheduled-tasks-Csi8wfij.js} +2 -2
  217. package/dist/client/assets/{settings.snap-shot-BaOFk9WR.js → settings.snap-shot-BdVdSIJy.js} +2 -2
  218. package/dist/client/assets/{settings.source-control-BW16AA5z.js → settings.source-control-Bme3qg7j.js} +2 -2
  219. package/dist/client/assets/{settings.storage-D4vBYBRP.js → settings.storage-DTcg-0aj.js} +2 -2
  220. package/dist/client/assets/{settingsLayout-CFQx1XDM.js → settingsLayout-4ySvFdXb.js} +2 -2
  221. package/dist/client/assets/{sidebar-C1E4GqL6.js → sidebar-CHDwV4Ca.js} +2 -2
  222. package/dist/client/assets/{sidebarProjectGrouping-9cUrCOXH.js → sidebarProjectGrouping-BcOVY8p-.js} +2 -2
  223. package/dist/client/assets/{skeleton-BCpBrYxh.js → skeleton-BcLPbojY.js} +2 -2
  224. package/dist/client/assets/{sourceControl-DwJWPP0h.js → sourceControl-CPrl7cyO.js} +2 -2
  225. package/dist/client/assets/{sourceControlClients-BBJW7ra4.js → sourceControlClients-oNOd36Cq.js} +2 -2
  226. package/dist/client/assets/{spinner-CSTrcxhP.js → spinner-_ourbdVb.js} +2 -2
  227. package/dist/client/assets/{terminal-links-D18LpQ1T.js → terminal-links-DuZi4b83.js} +2 -2
  228. package/dist/client/assets/{terminalSessions-C2NUFncF.js → terminalSessions-D0vbdqqx.js} +2 -2
  229. package/dist/client/assets/{textarea-R4UQ47Ns.js → textarea-DlXXDHPJ.js} +2 -2
  230. package/dist/client/assets/{themePalette-neUNWCzK.js → themePalette-VIM7Gehx.js} +2 -2
  231. package/dist/client/assets/{toast-B84QdqqM.js → toast-DXWclCrr.js} +2 -2
  232. package/dist/client/assets/{toggle-BH5BGBcD.js → toggle-Dofc34s2.js} +2 -2
  233. package/dist/client/assets/{toggle-group-Di3SFV73.js → toggle-group-CYKsfBbD.js} +2 -2
  234. package/dist/client/assets/{tooltip-D-GRl-oZ.js → tooltip-CY3W5y-f.js} +2 -2
  235. package/dist/client/assets/{uiStateStore-xSkh4_PU.js → uiStateStore-CdkBStdp.js} +2 -2
  236. package/dist/client/assets/{usage-DUdXloVo.js → usage-DQcgd75_.js} +2 -2
  237. package/dist/client/assets/{usageAccess-DSLF-sRE.js → usageAccess-CCSxXl9X.js} +2 -2
  238. package/dist/client/assets/{usageFormat-Bzyvr9m4.js → usageFormat-ByjmRjTe.js} +2 -2
  239. package/dist/client/assets/{usageShortcuts-D6nQeRtx.js → usageShortcuts-DOWm0Vo9.js} +2 -2
  240. package/dist/client/assets/{use-atom-command-DA6OG-Qk.js → use-atom-command-vqjL7n-x.js} +2 -2
  241. package/dist/client/assets/{useAriaLabelledBy-PLuOxvFb.js → useAriaLabelledBy-B7FNFpmO.js} +2 -2
  242. package/dist/client/assets/{useHandleNewThread-Dm0SCq59.js → useHandleNewThread-BYNZXzR_.js} +2 -2
  243. package/dist/client/assets/{useLocation-Bqc94klS.js → useLocation-B_XV0lDx.js} +2 -2
  244. package/dist/client/assets/{useNavigate-DdjG4MB_.js → useNavigate-BWqAWfiZ.js} +2 -2
  245. package/dist/client/assets/{useNavigateBack-sP0LsL3p.js → useNavigateBack-C52nbvbb.js} +2 -2
  246. package/dist/client/assets/{useP4ConnectAuthPrompt-C9d7n33S.js → useP4ConnectAuthPrompt-DKhdNYj8.js} +2 -2
  247. package/dist/client/assets/{useParams-DZQvRQLJ.js → useParams-ekGanxxb.js} +2 -2
  248. package/dist/client/assets/{usePermissionStatus-BzfAUU9X.js → usePermissionStatus-CWV_yoZe.js} +2 -2
  249. package/dist/client/assets/{usePullRequestActions-DIjGLg1E.js → usePullRequestActions-DxtkLQ5D.js} +2 -2
  250. package/dist/client/assets/{useRegisterFieldControl-CyBVe0G0.js → useRegisterFieldControl-BAJIcFiO.js} +2 -2
  251. package/dist/client/assets/{useScopedModelAvailability-D4n22Nmm.js → useScopedModelAvailability-815e0x20.js} +2 -2
  252. package/dist/client/assets/{useSettings-CaJMqrvF.js → useSettings-gPlpTIWi.js} +2 -2
  253. package/dist/client/assets/{utils-BoMYW9A3.js → utils-DhUt689t.js} +2 -2
  254. package/dist/client/assets/{vcsRefInvalidation-w_CQ3i43.js → vcsRefInvalidation-CW_MIqdt.js} +2 -2
  255. package/dist/client/assets/{welcome-BIKH3rbU.js → welcome-k7S47hyM.js} +2 -2
  256. package/dist/client/index.html +1 -1
  257. package/dist/{renderer-CveKT929.mjs → renderer-Ay-1ojn7.mjs} +2 -2
  258. package/dist/{runtime-DGGSjC6Q.mjs → runtime-bP6MSuMS.mjs} +3 -1
  259. package/package.json +2 -2
  260. package/dist/client/assets/AlertDialogRoot-9jRALQXL.js +0 -2
  261. package/dist/client/assets/Input-Cv-TKh6s.js +0 -2
  262. package/dist/client/assets/JZOYTAAL-CB_B_Rei.js +0 -1
  263. package/dist/client/assets/settings.archived-FtcZf_Ug.js +0 -2
@@ -1,6 +1,6 @@
1
- import{a as e,t}from"./react-DH3P2YXY.js";import{W as n,wa as r,z as i}from"./utils-BoMYW9A3.js";import"./entities-Bqo0n1Pb.js";import{jn as a}from"./runtime-d6B1vJeH.js";var o=e(r()),s=e(t());function c(){var e=[...arguments];return(0,s.useMemo)(()=>t=>{e.forEach(e=>e(t))},e)}var l=typeof window<`u`&&window.document!==void 0&&window.document.createElement!==void 0;function u(e){let t=Object.prototype.toString.call(e);return t===`[object Window]`||t===`[object global]`}function d(e){return`nodeType`in e}function f(e){return e?u(e)?e:d(e)?e.ownerDocument?.defaultView??window:window:window}function p(e){let{Document:t}=f(e);return e instanceof t}function m(e){return!u(e)&&e instanceof f(e).HTMLElement}function h(e){return e instanceof f(e).SVGElement}function g(e){return e?u(e)?e.document:d(e)?p(e)?e:m(e)||h(e)?e.ownerDocument:document:document:document}var _=l?s.useLayoutEffect:s.useEffect;function v(e){let t=(0,s.useRef)(e);return _(()=>{t.current=e}),(0,s.useCallback)(function(){var e=[...arguments];return t.current==null?void 0:t.current(...e)},[])}function y(){let e=(0,s.useRef)(null);return[(0,s.useCallback)((t,n)=>{e.current=setInterval(t,n)},[]),(0,s.useCallback)(()=>{e.current!==null&&(clearInterval(e.current),e.current=null)},[])]}function b(e,t){t===void 0&&(t=[e]);let n=(0,s.useRef)(e);return _(()=>{n.current!==e&&(n.current=e)},t),n}function x(e,t){let n=(0,s.useRef)();return(0,s.useMemo)(()=>{let t=e(n.current);return n.current=t,t},[...t])}function S(e){let t=v(e),n=(0,s.useRef)(null);return[n,(0,s.useCallback)(e=>{e!==n.current&&t?.(e,n.current),n.current=e},[])]}function C(e){let t=(0,s.useRef)();return(0,s.useEffect)(()=>{t.current=e},[e]),t.current}var w={};function T(e,t){return(0,s.useMemo)(()=>{if(t)return t;let n=w[e]==null?0:w[e]+1;return w[e]=n,e+`-`+n},[e,t])}function E(e){return function(t){return[...arguments].slice(1).reduce((t,n)=>{let r=Object.entries(n);for(let[n,i]of r){let r=t[n];r!=null&&(t[n]=r+e*i)}return t},{...t})}}var D=E(1),O=E(-1);function k(e){return`clientX`in e&&`clientY`in e}function A(e){if(!e)return!1;let{KeyboardEvent:t}=f(e.target);return t&&e instanceof t}function j(e){if(!e)return!1;let{TouchEvent:t}=f(e.target);return t&&e instanceof t}function ee(e){if(j(e)){if(e.touches&&e.touches.length){let{clientX:t,clientY:n}=e.touches[0];return{x:t,y:n}}if(e.changedTouches&&e.changedTouches.length){let{clientX:t,clientY:n}=e.changedTouches[0];return{x:t,y:n}}}return k(e)?{x:e.clientX,y:e.clientY}:null}var te=Object.freeze({Translate:{toString(e){if(!e)return;let{x:t,y:n}=e;return`translate3d(`+(t?Math.round(t):0)+`px, `+(n?Math.round(n):0)+`px, 0)`}},Scale:{toString(e){if(!e)return;let{scaleX:t,scaleY:n}=e;return`scaleX(`+t+`) scaleY(`+n+`)`}},Transform:{toString(e){if(e)return[te.Translate.toString(e),te.Scale.toString(e)].join(` `)}},Transition:{toString(e){let{property:t,duration:n,easing:r}=e;return t+` `+n+`ms `+r}}}),ne=`a,frame,iframe,input:not([type=hidden]):not(:disabled),select:not(:disabled),textarea:not(:disabled),button:not(:disabled),*[tabindex]`;function M(e){return e.matches(ne)?e:e.querySelector(ne)}var re={display:`none`};function N(e){let{id:t,value:n}=e;return s.createElement(`div`,{id:t,style:re},n)}function ie(e){let{id:t,announcement:n,ariaLiveType:r=`assertive`}=e;return s.createElement(`div`,{id:t,style:{position:`fixed`,top:0,left:0,width:1,height:1,margin:-1,border:0,padding:0,overflow:`hidden`,clip:`rect(0 0 0 0)`,clipPath:`inset(100%)`,whiteSpace:`nowrap`},role:`status`,"aria-live":r,"aria-atomic":!0},n)}function ae(){let[e,t]=(0,s.useState)(``);return{announce:(0,s.useCallback)(e=>{e!=null&&t(e)},[]),announcement:e}}var oe=(0,s.createContext)(null);function P(e){let t=(0,s.useContext)(oe);(0,s.useEffect)(()=>{if(!t)throw Error(`useDndMonitor must be used within a children of <DndContext>`);return t(e)},[e,t])}function se(){let[e]=(0,s.useState)(()=>new Set),t=(0,s.useCallback)(t=>(e.add(t),()=>e.delete(t)),[e]);return[(0,s.useCallback)(t=>{let{type:n,event:r}=t;e.forEach(e=>e[n]?.call(e,r))},[e]),t]}var F={draggable:`
1
+ import{a as e,t}from"./react-DH3P2YXY.js";import{W as n,wa as r,z as i}from"./utils-DhUt689t.js";import"./entities-B8Vupv5g.js";import{jn as a}from"./runtime-Ca_Z-vg5.js";var o=e(r()),s=e(t());function c(){var e=[...arguments];return(0,s.useMemo)(()=>t=>{e.forEach(e=>e(t))},e)}var l=typeof window<`u`&&window.document!==void 0&&window.document.createElement!==void 0;function u(e){let t=Object.prototype.toString.call(e);return t===`[object Window]`||t===`[object global]`}function d(e){return`nodeType`in e}function f(e){return e?u(e)?e:d(e)?e.ownerDocument?.defaultView??window:window:window}function p(e){let{Document:t}=f(e);return e instanceof t}function m(e){return!u(e)&&e instanceof f(e).HTMLElement}function h(e){return e instanceof f(e).SVGElement}function g(e){return e?u(e)?e.document:d(e)?p(e)?e:m(e)||h(e)?e.ownerDocument:document:document:document}var _=l?s.useLayoutEffect:s.useEffect;function v(e){let t=(0,s.useRef)(e);return _(()=>{t.current=e}),(0,s.useCallback)(function(){var e=[...arguments];return t.current==null?void 0:t.current(...e)},[])}function y(){let e=(0,s.useRef)(null);return[(0,s.useCallback)((t,n)=>{e.current=setInterval(t,n)},[]),(0,s.useCallback)(()=>{e.current!==null&&(clearInterval(e.current),e.current=null)},[])]}function b(e,t){t===void 0&&(t=[e]);let n=(0,s.useRef)(e);return _(()=>{n.current!==e&&(n.current=e)},t),n}function x(e,t){let n=(0,s.useRef)();return(0,s.useMemo)(()=>{let t=e(n.current);return n.current=t,t},[...t])}function S(e){let t=v(e),n=(0,s.useRef)(null);return[n,(0,s.useCallback)(e=>{e!==n.current&&t?.(e,n.current),n.current=e},[])]}function C(e){let t=(0,s.useRef)();return(0,s.useEffect)(()=>{t.current=e},[e]),t.current}var w={};function T(e,t){return(0,s.useMemo)(()=>{if(t)return t;let n=w[e]==null?0:w[e]+1;return w[e]=n,e+`-`+n},[e,t])}function E(e){return function(t){return[...arguments].slice(1).reduce((t,n)=>{let r=Object.entries(n);for(let[n,i]of r){let r=t[n];r!=null&&(t[n]=r+e*i)}return t},{...t})}}var D=E(1),O=E(-1);function k(e){return`clientX`in e&&`clientY`in e}function A(e){if(!e)return!1;let{KeyboardEvent:t}=f(e.target);return t&&e instanceof t}function j(e){if(!e)return!1;let{TouchEvent:t}=f(e.target);return t&&e instanceof t}function ee(e){if(j(e)){if(e.touches&&e.touches.length){let{clientX:t,clientY:n}=e.touches[0];return{x:t,y:n}}if(e.changedTouches&&e.changedTouches.length){let{clientX:t,clientY:n}=e.changedTouches[0];return{x:t,y:n}}}return k(e)?{x:e.clientX,y:e.clientY}:null}var te=Object.freeze({Translate:{toString(e){if(!e)return;let{x:t,y:n}=e;return`translate3d(`+(t?Math.round(t):0)+`px, `+(n?Math.round(n):0)+`px, 0)`}},Scale:{toString(e){if(!e)return;let{scaleX:t,scaleY:n}=e;return`scaleX(`+t+`) scaleY(`+n+`)`}},Transform:{toString(e){if(e)return[te.Translate.toString(e),te.Scale.toString(e)].join(` `)}},Transition:{toString(e){let{property:t,duration:n,easing:r}=e;return t+` `+n+`ms `+r}}}),ne=`a,frame,iframe,input:not([type=hidden]):not(:disabled),select:not(:disabled),textarea:not(:disabled),button:not(:disabled),*[tabindex]`;function M(e){return e.matches(ne)?e:e.querySelector(ne)}var re={display:`none`};function N(e){let{id:t,value:n}=e;return s.createElement(`div`,{id:t,style:re},n)}function ie(e){let{id:t,announcement:n,ariaLiveType:r=`assertive`}=e;return s.createElement(`div`,{id:t,style:{position:`fixed`,top:0,left:0,width:1,height:1,margin:-1,border:0,padding:0,overflow:`hidden`,clip:`rect(0 0 0 0)`,clipPath:`inset(100%)`,whiteSpace:`nowrap`},role:`status`,"aria-live":r,"aria-atomic":!0},n)}function ae(){let[e,t]=(0,s.useState)(``);return{announce:(0,s.useCallback)(e=>{e!=null&&t(e)},[]),announcement:e}}var oe=(0,s.createContext)(null);function P(e){let t=(0,s.useContext)(oe);(0,s.useEffect)(()=>{if(!t)throw Error(`useDndMonitor must be used within a children of <DndContext>`);return t(e)},[e,t])}function se(){let[e]=(0,s.useState)(()=>new Set),t=(0,s.useCallback)(t=>(e.add(t),()=>e.delete(t)),[e]);return[(0,s.useCallback)(t=>{let{type:n,event:r}=t;e.forEach(e=>e[n]?.call(e,r))},[e]),t]}var F={draggable:`
2
2
  To pick up a draggable item, press the space bar.
3
3
  While dragging, use the arrow keys to move the item.
4
4
  Press space again to drop the item in its new position, or press escape to cancel.
5
5
  `},I={onDragStart(e){let{active:t}=e;return`Picked up draggable item `+t.id+`.`},onDragOver(e){let{active:t,over:n}=e;return n?`Draggable item `+t.id+` was moved over droppable area `+n.id+`.`:`Draggable item `+t.id+` is no longer over a droppable area.`},onDragEnd(e){let{active:t,over:n}=e;return n?`Draggable item `+t.id+` was dropped over droppable area `+n.id:`Draggable item `+t.id+` was dropped.`},onDragCancel(e){let{active:t}=e;return`Dragging was cancelled. Draggable item `+t.id+` was dropped.`}};function ce(e){let{announcements:t=I,container:n,hiddenTextDescribedById:r,screenReaderInstructions:i=F}=e,{announce:a,announcement:c}=ae(),l=T(`DndLiveRegion`),[u,d]=(0,s.useState)(!1);if((0,s.useEffect)(()=>{d(!0)},[]),P((0,s.useMemo)(()=>({onDragStart(e){let{active:n}=e;a(t.onDragStart({active:n}))},onDragMove(e){let{active:n,over:r}=e;t.onDragMove&&a(t.onDragMove({active:n,over:r}))},onDragOver(e){let{active:n,over:r}=e;a(t.onDragOver({active:n,over:r}))},onDragEnd(e){let{active:n,over:r}=e;a(t.onDragEnd({active:n,over:r}))},onDragCancel(e){let{active:n,over:r}=e;a(t.onDragCancel({active:n,over:r}))}}),[a,t])),!u)return null;let f=s.createElement(s.Fragment,null,s.createElement(N,{id:r,value:i.draggable}),s.createElement(ie,{id:l,announcement:c}));return n?(0,o.createPortal)(f,n):f}var L;(function(e){e.DragStart=`dragStart`,e.DragMove=`dragMove`,e.DragEnd=`dragEnd`,e.DragCancel=`dragCancel`,e.DragOver=`dragOver`,e.RegisterDroppable=`registerDroppable`,e.SetDroppableDisabled=`setDroppableDisabled`,e.UnregisterDroppable=`unregisterDroppable`})(L||={});function R(){}function z(e,t){return(0,s.useMemo)(()=>({sensor:e,options:t??{}}),[e,t])}function le(){var e=[...arguments];return(0,s.useMemo)(()=>[...e].filter(e=>e!=null),[...e])}var B=Object.freeze({x:0,y:0});function V(e,t){return Math.sqrt((e.x-t.x)**2+(e.y-t.y)**2)}function H(e,t){let{data:{value:n}}=e,{data:{value:r}}=t;return n-r}function ue(e,t){let{data:{value:n}}=e,{data:{value:r}}=t;return r-n}function U(e){let{left:t,top:n,height:r,width:i}=e;return[{x:t,y:n},{x:t+i,y:n},{x:t,y:n+r},{x:t+i,y:n+r}]}function de(e,t){if(!e||e.length===0)return null;let[n]=e;return t?n[t]:n}function fe(e,t,n){return t===void 0&&(t=e.left),n===void 0&&(n=e.top),{x:t+e.width*.5,y:n+e.height*.5}}var W=e=>{let{collisionRect:t,droppableRects:n,droppableContainers:r}=e,i=fe(t,t.left,t.top),a=[];for(let e of r){let{id:t}=e,r=n.get(t);if(r){let n=V(fe(r),i);a.push({id:t,data:{droppableContainer:e,value:n}})}}return a.sort(H)},pe=e=>{let{collisionRect:t,droppableRects:n,droppableContainers:r}=e,i=U(t),a=[];for(let e of r){let{id:t}=e,r=n.get(t);if(r){let n=U(r),o=i.reduce((e,t,r)=>e+V(n[r],t),0),s=Number((o/4).toFixed(4));a.push({id:t,data:{droppableContainer:e,value:s}})}}return a.sort(H)};function G(e,t){let n=Math.max(t.top,e.top),r=Math.max(t.left,e.left),i=Math.min(t.left+t.width,e.left+e.width),a=Math.min(t.top+t.height,e.top+e.height),o=i-r,s=a-n;if(r<i&&n<a){let n=t.width*t.height,r=e.width*e.height,i=o*s,a=i/(n+r-i);return Number(a.toFixed(4))}return 0}var me=e=>{let{collisionRect:t,droppableRects:n,droppableContainers:r}=e,i=[];for(let e of r){let{id:r}=e,a=n.get(r);if(a){let n=G(a,t);n>0&&i.push({id:r,data:{droppableContainer:e,value:n}})}}return i.sort(ue)};function he(e,t){let{top:n,left:r,bottom:i,right:a}=t;return n<=e.y&&e.y<=i&&r<=e.x&&e.x<=a}var ge=e=>{let{droppableContainers:t,droppableRects:n,pointerCoordinates:r}=e;if(!r)return[];let i=[];for(let e of t){let{id:t}=e,a=n.get(t);if(a&&he(r,a)){let n=U(a).reduce((e,t)=>e+V(r,t),0),o=Number((n/4).toFixed(4));i.push({id:t,data:{droppableContainer:e,value:o}})}}return i.sort(H)};function _e(e,t,n){return{...e,scaleX:t&&n?t.width/n.width:1,scaleY:t&&n?t.height/n.height:1}}function ve(e,t){return e&&t?{x:e.left-t.left,y:e.top-t.top}:B}function K(e){return function(t){return[...arguments].slice(1).reduce((t,n)=>({...t,top:t.top+e*n.y,bottom:t.bottom+e*n.y,left:t.left+e*n.x,right:t.right+e*n.x}),{...t})}}var ye=K(1);function be(e){if(e.startsWith(`matrix3d(`)){let t=e.slice(9,-1).split(/, /);return{x:+t[12],y:+t[13],scaleX:+t[0],scaleY:+t[5]}}if(e.startsWith(`matrix(`)){let t=e.slice(7,-1).split(/, /);return{x:+t[4],y:+t[5],scaleX:+t[0],scaleY:+t[3]}}return null}function xe(e,t,n){let r=be(t);if(!r)return e;let{scaleX:i,scaleY:a,x:o,y:s}=r,c=e.left-o-(1-i)*parseFloat(n),l=e.top-s-(1-a)*parseFloat(n.slice(n.indexOf(` `)+1)),u=i?e.width/i:e.width,d=a?e.height/a:e.height;return{width:u,height:d,top:l,right:c+u,bottom:l+d,left:c}}var Se={ignoreTransform:!1};function q(e,t){t===void 0&&(t=Se);let n=e.getBoundingClientRect();if(t.ignoreTransform){let{transform:t,transformOrigin:r}=f(e).getComputedStyle(e);t&&(n=xe(n,t,r))}let{top:r,left:i,width:a,height:o,bottom:s,right:c}=n;return{top:r,left:i,width:a,height:o,bottom:s,right:c}}function Ce(e){return q(e,{ignoreTransform:!0})}function we(e){let t=e.innerWidth,n=e.innerHeight;return{top:0,left:0,right:t,bottom:n,width:t,height:n}}function Te(e,t){return t===void 0&&(t=f(e).getComputedStyle(e)),t.position===`fixed`}function Ee(e,t){t===void 0&&(t=f(e).getComputedStyle(e));let n=/(auto|scroll|overlay)/;return[`overflow`,`overflowX`,`overflowY`].some(e=>{let r=t[e];return typeof r==`string`&&n.test(r)})}function J(e,t){let n=[];function r(i){if(t!=null&&n.length>=t||!i)return n;if(p(i)&&i.scrollingElement!=null&&!n.includes(i.scrollingElement))return n.push(i.scrollingElement),n;if(!m(i)||h(i)||n.includes(i))return n;let a=f(e).getComputedStyle(i);return i!==e&&Ee(i,a)&&n.push(i),Te(i,a)?n:r(i.parentNode)}return e?r(e):n}function De(e){let[t]=J(e,1);return t??null}function Y(e){return!l||!e?null:u(e)?e:d(e)?p(e)||e===g(e).scrollingElement?window:m(e)?e:null:null}function Oe(e){return u(e)?e.scrollX:e.scrollLeft}function ke(e){return u(e)?e.scrollY:e.scrollTop}function Ae(e){return{x:Oe(e),y:ke(e)}}var X;(function(e){e[e.Forward=1]=`Forward`,e[e.Backward=-1]=`Backward`})(X||={});function je(e){return!l||!e?!1:e===document.scrollingElement}function Me(e){let t={x:0,y:0},n=je(e)?{height:window.innerHeight,width:window.innerWidth}:{height:e.clientHeight,width:e.clientWidth},r={x:e.scrollWidth-n.width,y:e.scrollHeight-n.height};return{isTop:e.scrollTop<=t.y,isLeft:e.scrollLeft<=t.x,isBottom:e.scrollTop>=r.y,isRight:e.scrollLeft>=r.x,maxScroll:r,minScroll:t}}var Ne={x:.2,y:.2};function Pe(e,t,n,r,i){let{top:a,left:o,right:s,bottom:c}=n;r===void 0&&(r=10),i===void 0&&(i=Ne);let{isTop:l,isBottom:u,isLeft:d,isRight:f}=Me(e),p={x:0,y:0},m={x:0,y:0},h={height:t.height*i.y,width:t.width*i.x};return!l&&a<=t.top+h.height?(p.y=X.Backward,m.y=r*Math.abs((t.top+h.height-a)/h.height)):!u&&c>=t.bottom-h.height&&(p.y=X.Forward,m.y=r*Math.abs((t.bottom-h.height-c)/h.height)),!f&&s>=t.right-h.width?(p.x=X.Forward,m.x=r*Math.abs((t.right-h.width-s)/h.width)):!d&&o<=t.left+h.width&&(p.x=X.Backward,m.x=r*Math.abs((t.left+h.width-o)/h.width)),{direction:p,speed:m}}function Fe(e){if(e===document.scrollingElement){let{innerWidth:e,innerHeight:t}=window;return{top:0,left:0,right:e,bottom:t,width:e,height:t}}let{top:t,left:n,right:r,bottom:i}=e.getBoundingClientRect();return{top:t,left:n,right:r,bottom:i,width:e.clientWidth,height:e.clientHeight}}function Ie(e){return e.reduce((e,t)=>D(e,Ae(t)),B)}function Le(e){return e.reduce((e,t)=>e+Oe(t),0)}function Re(e){return e.reduce((e,t)=>e+ke(t),0)}function ze(e,t){if(t===void 0&&(t=q),!e)return;let{top:n,left:r,bottom:i,right:a}=t(e);De(e)&&(i<=0||a<=0||n>=window.innerHeight||r>=window.innerWidth)&&e.scrollIntoView({block:`center`,inline:`center`})}var Be=[[`x`,[`left`,`right`],Le],[`y`,[`top`,`bottom`],Re]],Ve=class{constructor(e,t){this.rect=void 0,this.width=void 0,this.height=void 0,this.top=void 0,this.bottom=void 0,this.right=void 0,this.left=void 0;let n=J(t),r=Ie(n);this.rect={...e},this.width=e.width,this.height=e.height;for(let[e,t,i]of Be)for(let a of t)Object.defineProperty(this,a,{get:()=>{let t=i(n),o=r[e]-t;return this.rect[a]+o},enumerable:!0});Object.defineProperty(this,"rect",{enumerable:!1})}},He=class{constructor(e){this.target=void 0,this.listeners=[],this.removeAll=()=>{this.listeners.forEach(e=>this.target?.removeEventListener(...e))},this.target=e}add(e,t,n){var r;(r=this.target)==null||r.addEventListener(e,t,n),this.listeners.push([e,t,n])}};function Ue(e){let{EventTarget:t}=f(e);return e instanceof t?e:g(e)}function We(e,t){let n=Math.abs(e.x),r=Math.abs(e.y);return typeof t==`number`?Math.sqrt(n**2+r**2)>t:`x`in t&&`y`in t?n>t.x&&r>t.y:`x`in t?n>t.x:`y`in t&&r>t.y}var Z;(function(e){e.Click=`click`,e.DragStart=`dragstart`,e.Keydown=`keydown`,e.ContextMenu=`contextmenu`,e.Resize=`resize`,e.SelectionChange=`selectionchange`,e.VisibilityChange=`visibilitychange`})(Z||={});function Ge(e){e.preventDefault()}function Ke(e){e.stopPropagation()}var Q;(function(e){e.Space=`Space`,e.Down=`ArrowDown`,e.Right=`ArrowRight`,e.Left=`ArrowLeft`,e.Up=`ArrowUp`,e.Esc=`Escape`,e.Enter=`Enter`,e.Tab=`Tab`})(Q||={});var qe={start:[Q.Space,Q.Enter],cancel:[Q.Esc],end:[Q.Space,Q.Enter,Q.Tab]},Je=(e,t)=>{let{currentCoordinates:n}=t;switch(e.code){case Q.Right:return{...n,x:n.x+25};case Q.Left:return{...n,x:n.x-25};case Q.Down:return{...n,y:n.y+25};case Q.Up:return{...n,y:n.y-25}}},Ye=class{constructor(e){this.props=void 0,this.autoScrollEnabled=!1,this.referenceCoordinates=void 0,this.listeners=void 0,this.windowListeners=void 0,this.props=e;let{event:{target:t}}=e;this.props=e,this.listeners=new He(g(t)),this.windowListeners=new He(f(t)),this.handleKeyDown=this.handleKeyDown.bind(this),this.handleCancel=this.handleCancel.bind(this),this.attach()}attach(){this.handleStart(),this.windowListeners.add(Z.Resize,this.handleCancel),this.windowListeners.add(Z.VisibilityChange,this.handleCancel),setTimeout(()=>this.listeners.add(Z.Keydown,this.handleKeyDown))}handleStart(){let{activeNode:e,onStart:t}=this.props,n=e.node.current;n&&ze(n),t(B)}handleKeyDown(e){if(A(e)){let{active:t,context:n,options:r}=this.props,{keyboardCodes:i=qe,coordinateGetter:a=Je,scrollBehavior:o=`smooth`}=r,{code:s}=e;if(i.end.includes(s)){this.handleEnd(e);return}if(i.cancel.includes(s)){this.handleCancel(e);return}let{collisionRect:c}=n.current,l=c?{x:c.left,y:c.top}:B;this.referenceCoordinates||=l;let u=a(e,{active:t,context:n.current,currentCoordinates:l});if(u){let t=O(u,l),r={x:0,y:0},{scrollableAncestors:i}=n.current;for(let n of i){let i=e.code,{isTop:a,isRight:s,isLeft:c,isBottom:l,maxScroll:d,minScroll:f}=Me(n),p=Fe(n),m={x:Math.min(i===Q.Right?p.right-p.width/2:p.right,Math.max(i===Q.Right?p.left:p.left+p.width/2,u.x)),y:Math.min(i===Q.Down?p.bottom-p.height/2:p.bottom,Math.max(i===Q.Down?p.top:p.top+p.height/2,u.y))},h=i===Q.Right&&!s||i===Q.Left&&!c,g=i===Q.Down&&!l||i===Q.Up&&!a;if(h&&m.x!==u.x){let e=n.scrollLeft+t.x,a=i===Q.Right&&e<=d.x||i===Q.Left&&e>=f.x;if(a&&!t.y){n.scrollTo({left:e,behavior:o});return}r.x=a?n.scrollLeft-e:i===Q.Right?n.scrollLeft-d.x:n.scrollLeft-f.x,r.x&&n.scrollBy({left:-r.x,behavior:o});break}if(g&&m.y!==u.y){let e=n.scrollTop+t.y,a=i===Q.Down&&e<=d.y||i===Q.Up&&e>=f.y;if(a&&!t.x){n.scrollTo({top:e,behavior:o});return}r.y=a?n.scrollTop-e:i===Q.Down?n.scrollTop-d.y:n.scrollTop-f.y,r.y&&n.scrollBy({top:-r.y,behavior:o});break}}this.handleMove(e,D(O(u,this.referenceCoordinates),r))}}}handleMove(e,t){let{onMove:n}=this.props;e.preventDefault(),n(t)}handleEnd(e){let{onEnd:t}=this.props;e.preventDefault(),this.detach(),t()}handleCancel(e){let{onCancel:t}=this.props;e.preventDefault(),this.detach(),t()}detach(){this.listeners.removeAll(),this.windowListeners.removeAll()}};Ye.activators=[{eventName:`onKeyDown`,handler:(e,t,n)=>{let{keyboardCodes:r=qe,onActivation:i}=t,{active:a}=n,{code:o}=e.nativeEvent;if(r.start.includes(o)){let t=a.activatorNode.current;return t&&e.target!==t?!1:(e.preventDefault(),i?.({event:e.nativeEvent}),!0)}return!1}}];function Xe(e){return!!(e&&`distance`in e)}function Ze(e){return!!(e&&`delay`in e)}var Qe=class{constructor(e,t,n){n===void 0&&(n=Ue(e.event.target)),this.props=void 0,this.events=void 0,this.autoScrollEnabled=!0,this.document=void 0,this.activated=!1,this.initialCoordinates=void 0,this.timeoutId=null,this.listeners=void 0,this.documentListeners=void 0,this.windowListeners=void 0,this.props=e,this.events=t;let{event:r}=e,{target:i}=r;this.props=e,this.events=t,this.document=g(i),this.documentListeners=new He(this.document),this.listeners=new He(n),this.windowListeners=new He(f(i)),this.initialCoordinates=ee(r)??B,this.handleStart=this.handleStart.bind(this),this.handleMove=this.handleMove.bind(this),this.handleEnd=this.handleEnd.bind(this),this.handleCancel=this.handleCancel.bind(this),this.handleKeydown=this.handleKeydown.bind(this),this.removeTextSelection=this.removeTextSelection.bind(this),this.attach()}attach(){let{events:e,props:{options:{activationConstraint:t,bypassActivationConstraint:n}}}=this;if(this.listeners.add(e.move.name,this.handleMove,{passive:!1}),this.listeners.add(e.end.name,this.handleEnd),e.cancel&&this.listeners.add(e.cancel.name,this.handleCancel),this.windowListeners.add(Z.Resize,this.handleCancel),this.windowListeners.add(Z.DragStart,Ge),this.windowListeners.add(Z.VisibilityChange,this.handleCancel),this.windowListeners.add(Z.ContextMenu,Ge),this.documentListeners.add(Z.Keydown,this.handleKeydown),t){if(n!=null&&n({event:this.props.event,activeNode:this.props.activeNode,options:this.props.options}))return this.handleStart();if(Ze(t)){this.timeoutId=setTimeout(this.handleStart,t.delay),this.handlePending(t);return}if(Xe(t)){this.handlePending(t);return}}this.handleStart()}detach(){this.listeners.removeAll(),this.windowListeners.removeAll(),setTimeout(this.documentListeners.removeAll,50),this.timeoutId!==null&&(clearTimeout(this.timeoutId),this.timeoutId=null)}handlePending(e,t){let{active:n,onPending:r}=this.props;r(n,e,this.initialCoordinates,t)}handleStart(){let{initialCoordinates:e}=this,{onStart:t}=this.props;e&&(this.activated=!0,this.documentListeners.add(Z.Click,Ke,{capture:!0}),this.removeTextSelection(),this.documentListeners.add(Z.SelectionChange,this.removeTextSelection),t(e))}handleMove(e){let{activated:t,initialCoordinates:n,props:r}=this,{onMove:i,options:{activationConstraint:a}}=r;if(!n)return;let o=ee(e)??B,s=O(n,o);if(!t&&a){if(Xe(a)){if(a.tolerance!=null&&We(s,a.tolerance))return this.handleCancel();if(We(s,a.distance))return this.handleStart()}if(Ze(a)&&We(s,a.tolerance))return this.handleCancel();this.handlePending(a,s);return}e.cancelable&&e.preventDefault(),i(o)}handleEnd(){let{onAbort:e,onEnd:t}=this.props;this.detach(),this.activated||e(this.props.active),t()}handleCancel(){let{onAbort:e,onCancel:t}=this.props;this.detach(),this.activated||e(this.props.active),t()}handleKeydown(e){e.code===Q.Esc&&this.handleCancel()}removeTextSelection(){var e;(e=this.document.getSelection())==null||e.removeAllRanges()}},$e={cancel:{name:`pointercancel`},move:{name:`pointermove`},end:{name:`pointerup`}},et=class extends Qe{constructor(e){let{event:t}=e,n=g(t.target);super(e,$e,n)}};et.activators=[{eventName:`onPointerDown`,handler:(e,t)=>{let{nativeEvent:n}=e,{onActivation:r}=t;return!n.isPrimary||n.button!==0?!1:(r?.({event:n}),!0)}}];var tt={move:{name:`mousemove`},end:{name:`mouseup`}},nt;(function(e){e[e.RightClick=2]=`RightClick`})(nt||={});var rt=class extends Qe{constructor(e){super(e,tt,g(e.event.target))}};rt.activators=[{eventName:`onMouseDown`,handler:(e,t)=>{let{nativeEvent:n}=e,{onActivation:r}=t;return n.button!==nt.RightClick&&(r?.({event:n}),!0)}}];var it={cancel:{name:`touchcancel`},move:{name:`touchmove`},end:{name:`touchend`}},at=class extends Qe{constructor(e){super(e,it)}static setup(){return window.addEventListener(it.move.name,e,{capture:!1,passive:!1}),function(){window.removeEventListener(it.move.name,e)};function e(){}}};at.activators=[{eventName:`onTouchStart`,handler:(e,t)=>{let{nativeEvent:n}=e,{onActivation:r}=t,{touches:i}=n;return i.length>1?!1:(r?.({event:n}),!0)}}];var ot;(function(e){e[e.Pointer=0]=`Pointer`,e[e.DraggableRect=1]=`DraggableRect`})(ot||={});var st;(function(e){e[e.TreeOrder=0]=`TreeOrder`,e[e.ReversedTreeOrder=1]=`ReversedTreeOrder`})(st||={});function ct(e){let{acceleration:t,activator:n=ot.Pointer,canScroll:r,draggingRect:i,enabled:a,interval:o=5,order:c=st.TreeOrder,pointerCoordinates:l,scrollableAncestors:u,scrollableAncestorRects:d,delta:f,threshold:p}=e,m=ut({delta:f,disabled:!a}),[h,g]=y(),_=(0,s.useRef)({x:0,y:0}),v=(0,s.useRef)({x:0,y:0}),b=(0,s.useMemo)(()=>{switch(n){case ot.Pointer:return l?{top:l.y,bottom:l.y,left:l.x,right:l.x}:null;case ot.DraggableRect:return i}},[n,i,l]),x=(0,s.useRef)(null),S=(0,s.useCallback)(()=>{let e=x.current;if(!e)return;let t=_.current.x*v.current.x,n=_.current.y*v.current.y;e.scrollBy(t,n)},[]),C=(0,s.useMemo)(()=>c===st.TreeOrder?[...u].reverse():u,[c,u]);(0,s.useEffect)(()=>{if(!a||!u.length||!b){g();return}for(let e of C){if(r?.(e)===!1)continue;let n=u.indexOf(e),i=d[n];if(!i)continue;let{direction:a,speed:s}=Pe(e,i,b,t,p);for(let e of[`x`,`y`])m[e][a[e]]||(s[e]=0,a[e]=0);if(s.x>0||s.y>0){g(),x.current=e,h(S,o),_.current=s,v.current=a;return}}_.current={x:0,y:0},v.current={x:0,y:0},g()},[t,S,r,g,a,o,JSON.stringify(b),JSON.stringify(m),h,u,C,d,JSON.stringify(p)])}var lt={x:{[X.Backward]:!1,[X.Forward]:!1},y:{[X.Backward]:!1,[X.Forward]:!1}};function ut(e){let{delta:t,disabled:n}=e,r=C(t);return x(e=>{if(n||!r||!e)return lt;let i={x:Math.sign(t.x-r.x),y:Math.sign(t.y-r.y)};return{x:{[X.Backward]:e.x[X.Backward]||i.x===-1,[X.Forward]:e.x[X.Forward]||i.x===1},y:{[X.Backward]:e.y[X.Backward]||i.y===-1,[X.Forward]:e.y[X.Forward]||i.y===1}}},[n,t,r])}function dt(e,t){let n=t==null?void 0:e.get(t),r=n?n.node.current:null;return x(e=>t==null?null:r??e??null,[r,t])}function ft(e,t){return(0,s.useMemo)(()=>e.reduce((e,n)=>{let{sensor:r}=n,i=r.activators.map(e=>({eventName:e.eventName,handler:t(e.handler,n)}));return[...e,...i]},[]),[e,t])}var pt;(function(e){e[e.Always=0]=`Always`,e[e.BeforeDragging=1]=`BeforeDragging`,e[e.WhileDragging=2]=`WhileDragging`})(pt||={});var mt;(function(e){e.Optimized=`optimized`})(mt||={});var ht=new Map;function gt(e,t){let{dragging:n,dependencies:r,config:i}=t,[a,o]=(0,s.useState)(null),{frequency:c,measure:l,strategy:u}=i,d=(0,s.useRef)(e),f=_(),p=b(f),m=(0,s.useCallback)(function(e){e===void 0&&(e=[]),!p.current&&o(t=>t===null?e:t.concat(e.filter(e=>!t.includes(e))))},[p]),h=(0,s.useRef)(null),g=x(t=>{if(f&&!n)return ht;if(!t||t===ht||d.current!==e||a!=null){let t=new Map;for(let n of e){if(!n)continue;if(a&&a.length>0&&!a.includes(n.id)&&n.rect.current){t.set(n.id,n.rect.current);continue}let e=n.node.current,r=e?new Ve(l(e),e):null;n.rect.current=r,r&&t.set(n.id,r)}return t}return t},[e,a,n,f,l]);return(0,s.useEffect)(()=>{d.current=e},[e]),(0,s.useEffect)(()=>{f||m()},[n,f]),(0,s.useEffect)(()=>{a&&a.length>0&&o(null)},[JSON.stringify(a)]),(0,s.useEffect)(()=>{f||typeof c!=`number`||h.current!==null||(h.current=setTimeout(()=>{m(),h.current=null},c))},[c,f,m,...r]),{droppableRects:g,measureDroppableContainers:m,measuringScheduled:a!=null};function _(){switch(u){case pt.Always:return!1;case pt.BeforeDragging:return n;default:return!n}}}function _t(e,t){return x(n=>e?n||(typeof t==`function`?t(e):e):null,[t,e])}function vt(e,t){return _t(e,t)}function yt(e){let{callback:t,disabled:n}=e,r=v(t),i=(0,s.useMemo)(()=>{if(n||typeof window>`u`||window.MutationObserver===void 0)return;let{MutationObserver:e}=window;return new e(r)},[r,n]);return(0,s.useEffect)(()=>()=>i?.disconnect(),[i]),i}function bt(e){let{callback:t,disabled:n}=e,r=v(t),i=(0,s.useMemo)(()=>{if(n||typeof window>`u`||window.ResizeObserver===void 0)return;let{ResizeObserver:e}=window;return new e(r)},[n]);return(0,s.useEffect)(()=>()=>i?.disconnect(),[i]),i}function xt(e){return new Ve(q(e),e)}function St(e,t,n){t===void 0&&(t=xt);let[r,i]=(0,s.useState)(null);function a(){i(r=>{if(!e)return null;if(e.isConnected===!1)return r??n??null;let i=t(e);return JSON.stringify(r)===JSON.stringify(i)?r:i})}let o=yt({callback(t){if(e)for(let n of t){let{type:t,target:r}=n;if(t===`childList`&&r instanceof HTMLElement&&r.contains(e)){a();break}}}}),c=bt({callback:a});return _(()=>{a(),e?(c?.observe(e),o?.observe(document.body,{childList:!0,subtree:!0})):(c?.disconnect(),o?.disconnect())},[e]),r}function Ct(e){return ve(e,_t(e))}var wt=[];function Tt(e){let t=(0,s.useRef)(e),n=x(n=>e?n&&n!==wt&&e&&t.current&&e.parentNode===t.current.parentNode?n:J(e):wt,[e]);return(0,s.useEffect)(()=>{t.current=e},[e]),n}function Et(e){let[t,n]=(0,s.useState)(null),r=(0,s.useRef)(e),i=(0,s.useCallback)(e=>{let t=Y(e.target);t&&n(e=>e?(e.set(t,Ae(t)),new Map(e)):null)},[]);return(0,s.useEffect)(()=>{let t=r.current;if(e!==t){a(t);let o=e.map(e=>{let t=Y(e);return t?(t.addEventListener(`scroll`,i,{passive:!0}),[t,Ae(t)]):null}).filter(e=>e!=null);n(o.length?new Map(o):null),r.current=e}return()=>{a(e),a(t)};function a(e){e.forEach(e=>{Y(e)?.removeEventListener(`scroll`,i)})}},[i,e]),(0,s.useMemo)(()=>e.length?t?Array.from(t.values()).reduce((e,t)=>D(e,t),B):Ie(e):B,[e,t])}function Dt(e,t){t===void 0&&(t=[]);let n=(0,s.useRef)(null);return(0,s.useEffect)(()=>{n.current=null},t),(0,s.useEffect)(()=>{let t=e!==B;t&&!n.current&&(n.current=e),!t&&n.current&&(n.current=null)},[e]),n.current?O(e,n.current):B}function Ot(e){(0,s.useEffect)(()=>{if(!l)return;let t=e.map(e=>{let{sensor:t}=e;return t.setup==null?void 0:t.setup()});return()=>{for(let e of t)e?.()}},e.map(e=>{let{sensor:t}=e;return t}))}function kt(e,t){return(0,s.useMemo)(()=>e.reduce((e,n)=>{let{eventName:r,handler:i}=n;return e[r]=e=>{i(e,t)},e},{}),[e,t])}function At(e){return(0,s.useMemo)(()=>e?we(e):null,[e])}var jt=[];function Mt(e,t){t===void 0&&(t=q);let[n]=e,r=At(n?f(n):null),[i,a]=(0,s.useState)(jt);function o(){a(()=>e.length?e.map(e=>je(e)?r:new Ve(t(e),e)):jt)}let c=bt({callback:o});return _(()=>{c?.disconnect(),o(),e.forEach(e=>c?.observe(e))},[e]),i}function Nt(e){if(!e)return null;if(e.children.length>1)return e;let t=e.children[0];return m(t)?t:e}function Pt(e){let{measure:t}=e,[n,r]=(0,s.useState)(null),i=bt({callback:(0,s.useCallback)(e=>{for(let{target:n}of e)if(m(n)){r(e=>{let r=t(n);return e?{...e,width:r.width,height:r.height}:r});break}},[t])}),[a,o]=S((0,s.useCallback)(e=>{let n=Nt(e);i?.disconnect(),n&&i?.observe(n),r(n?t(n):null)},[t,i]));return(0,s.useMemo)(()=>({nodeRef:a,rect:n,setRef:o}),[n,a,o])}var Ft=[{sensor:et,options:{}},{sensor:Ye,options:{}}],It={current:{}},Lt={draggable:{measure:Ce},droppable:{measure:Ce,strategy:pt.WhileDragging,frequency:mt.Optimized},dragOverlay:{measure:q}},Rt=class extends Map{get(e){return e==null?void 0:super.get(e)??void 0}toArray(){return Array.from(this.values())}getEnabled(){return this.toArray().filter(e=>{let{disabled:t}=e;return!t})}getNodeFor(e){return this.get(e)?.node.current??void 0}},zt={activatorEvent:null,active:null,activeNode:null,activeNodeRect:null,collisions:null,containerNodeRect:null,draggableNodes:new Map,droppableRects:new Map,droppableContainers:new Rt,over:null,dragOverlay:{nodeRef:{current:null},rect:null,setRef:R},scrollableAncestors:[],scrollableAncestorRects:[],measuringConfiguration:Lt,measureDroppableContainers:R,windowRect:null,measuringScheduled:!1},Bt={activatorEvent:null,activators:[],active:null,activeNodeRect:null,ariaDescribedById:{draggable:``},dispatch:R,draggableNodes:new Map,over:null,measureDroppableContainers:R},Vt=(0,s.createContext)(Bt),Ht=(0,s.createContext)(zt);function Ut(){return{draggable:{active:null,initialCoordinates:{x:0,y:0},nodes:new Map,translate:{x:0,y:0}},droppable:{containers:new Rt}}}function Wt(e,t){switch(t.type){case L.DragStart:return{...e,draggable:{...e.draggable,initialCoordinates:t.initialCoordinates,active:t.active}};case L.DragMove:return e.draggable.active==null?e:{...e,draggable:{...e.draggable,translate:{x:t.coordinates.x-e.draggable.initialCoordinates.x,y:t.coordinates.y-e.draggable.initialCoordinates.y}}};case L.DragEnd:case L.DragCancel:return{...e,draggable:{...e.draggable,active:null,initialCoordinates:{x:0,y:0},translate:{x:0,y:0}}};case L.RegisterDroppable:{let{element:n}=t,{id:r}=n,i=new Rt(e.droppable.containers);return i.set(r,n),{...e,droppable:{...e.droppable,containers:i}}}case L.SetDroppableDisabled:{let{id:n,key:r,disabled:i}=t,a=e.droppable.containers.get(n);if(!a||r!==a.key)return e;let o=new Rt(e.droppable.containers);return o.set(n,{...a,disabled:i}),{...e,droppable:{...e.droppable,containers:o}}}case L.UnregisterDroppable:{let{id:n,key:r}=t,i=e.droppable.containers.get(n);if(!i||r!==i.key)return e;let a=new Rt(e.droppable.containers);return a.delete(n),{...e,droppable:{...e.droppable,containers:a}}}default:return e}}function Gt(e){let{disabled:t}=e,{active:n,activatorEvent:r,draggableNodes:i}=(0,s.useContext)(Vt),a=C(r),o=C(n?.id);return(0,s.useEffect)(()=>{if(!t&&!r&&a&&o!=null){if(!A(a)||document.activeElement===a.target)return;let e=i.get(o);if(!e)return;let{activatorNode:t,node:n}=e;if(!t.current&&!n.current)return;requestAnimationFrame(()=>{for(let e of[t.current,n.current]){if(!e)continue;let t=M(e);if(t){t.focus();break}}})}},[r,t,i,o,a]),null}function Kt(e,t){let{transform:n,...r}=t;return e!=null&&e.length?e.reduce((e,t)=>t({transform:e,...r}),n):n}function qt(e){return(0,s.useMemo)(()=>({draggable:{...Lt.draggable,...e?.draggable},droppable:{...Lt.droppable,...e?.droppable},dragOverlay:{...Lt.dragOverlay,...e?.dragOverlay}}),[e?.draggable,e?.droppable,e?.dragOverlay])}function Jt(e){let{activeNode:t,measure:n,initialRect:r,config:i=!0}=e,a=(0,s.useRef)(!1),{x:o,y:c}=typeof i==`boolean`?{x:i,y:i}:i;_(()=>{if(!o&&!c||!t){a.current=!1;return}if(a.current||!r)return;let e=t?.node.current;if(!e||e.isConnected===!1)return;let i=ve(n(e),r);if(o||(i.x=0),c||(i.y=0),a.current=!0,Math.abs(i.x)>0||Math.abs(i.y)>0){let t=De(e);t&&t.scrollBy({top:i.y,left:i.x})}},[t,o,c,r,n])}var Yt=(0,s.createContext)({...B,scaleX:1,scaleY:1}),Xt;(function(e){e[e.Uninitialized=0]=`Uninitialized`,e[e.Initializing=1]=`Initializing`,e[e.Initialized=2]=`Initialized`})(Xt||={});var Zt=(0,s.memo)(function(e){let{id:t,accessibility:n,autoScroll:r=!0,children:i,sensors:a=Ft,collisionDetection:c=me,measuring:l,modifiers:u,...d}=e,[p,m]=(0,s.useReducer)(Wt,void 0,Ut),[h,g]=se(),[v,y]=(0,s.useState)(Xt.Uninitialized),x=v===Xt.Initialized,{draggable:{active:S,nodes:C,translate:w},droppable:{containers:E}}=p,O=S==null?null:C.get(S),k=(0,s.useRef)({initial:null,translated:null}),A=(0,s.useMemo)(()=>S==null?null:{id:S,data:O?.data??It,rect:k},[S,O]),j=(0,s.useRef)(null),[te,ne]=(0,s.useState)(null),[M,re]=(0,s.useState)(null),N=b(d,Object.values(d)),ie=T(`DndDescribedBy`,t),ae=(0,s.useMemo)(()=>E.getEnabled(),[E]),P=qt(l),{droppableRects:F,measureDroppableContainers:I,measuringScheduled:R}=gt(ae,{dragging:x,dependencies:[w.x,w.y],config:P.droppable}),z=dt(C,S),le=(0,s.useMemo)(()=>M?ee(M):null,[M]),B=Pe(),V=vt(z,P.draggable.measure);Jt({activeNode:S==null?null:C.get(S),config:B.layoutShiftCompensation,initialRect:V,measure:P.draggable.measure});let H=St(z,P.draggable.measure,V),ue=St(z?z.parentElement:null),U=(0,s.useRef)({activatorEvent:null,active:null,activeNode:z,collisionRect:null,collisions:null,droppableRects:F,draggableNodes:C,draggingNode:null,draggingNodeRect:null,droppableContainers:E,over:null,scrollableAncestors:[],scrollAdjustedTranslate:null}),fe=E.getNodeFor(U.current.over?.id),W=Pt({measure:P.dragOverlay.measure}),pe=W.nodeRef.current??z,G=x?W.rect??H:null,he=!!(W.nodeRef.current&&W.rect),ge=Ct(he?null:H),ve=At(pe?f(pe):null),K=Tt(x?fe??z:null),be=Mt(K),xe=Kt(u,{transform:{x:w.x-ge.x,y:w.y-ge.y,scaleX:1,scaleY:1},activatorEvent:M,active:A,activeNodeRect:H,containerNodeRect:ue,draggingNodeRect:G,over:U.current.over,overlayNodeRect:W.rect,scrollableAncestors:K,scrollableAncestorRects:be,windowRect:ve}),Se=le?D(le,w):null,q=Et(K),Ce=Dt(q),we=Dt(q,[H]),Te=D(xe,Ce),Ee=G?ye(G,xe):null,J=A&&Ee?c({active:A,collisionRect:Ee,droppableRects:F,droppableContainers:ae,pointerCoordinates:Se}):null,De=de(J,`id`),[Y,Oe]=(0,s.useState)(null),ke=_e(he?xe:D(xe,we),Y?.rect??null,H),Ae=(0,s.useRef)(null),X=(0,s.useCallback)((e,t)=>{let{sensor:n,options:r}=t;if(j.current==null)return;let i=C.get(j.current);if(!i)return;let a=e.nativeEvent,s=new n({active:j.current,activeNode:i,event:a,options:r,context:U,onAbort(e){if(!C.get(e))return;let{onDragAbort:t}=N.current,n={id:e};t?.(n),h({type:`onDragAbort`,event:n})},onPending(e,t,n,r){if(!C.get(e))return;let{onDragPending:i}=N.current,a={id:e,constraint:t,initialCoordinates:n,offset:r};i?.(a),h({type:`onDragPending`,event:a})},onStart(e){let t=j.current;if(t==null)return;let n=C.get(t);if(!n)return;let{onDragStart:r}=N.current,i={activatorEvent:a,active:{id:t,data:n.data,rect:k}};(0,o.unstable_batchedUpdates)(()=>{r?.(i),y(Xt.Initializing),m({type:L.DragStart,initialCoordinates:e,active:t}),h({type:`onDragStart`,event:i}),ne(Ae.current),re(a)})},onMove(e){m({type:L.DragMove,coordinates:e})},onEnd:c(L.DragEnd),onCancel:c(L.DragCancel)});Ae.current=s;function c(e){return async function(){let{active:t,collisions:n,over:r,scrollAdjustedTranslate:i}=U.current,s=null;if(t&&i){let{cancelDrop:o}=N.current;s={activatorEvent:a,active:t,collisions:n,delta:i,over:r},e===L.DragEnd&&typeof o==`function`&&await Promise.resolve(o(s))&&(e=L.DragCancel)}j.current=null,(0,o.unstable_batchedUpdates)(()=>{m({type:e}),y(Xt.Uninitialized),Oe(null),ne(null),re(null),Ae.current=null;let t=e===L.DragEnd?`onDragEnd`:`onDragCancel`;if(s){let e=N.current[t];e?.(s),h({type:t,event:s})}})}}},[C]),je=ft(a,(0,s.useCallback)((e,t)=>(n,r)=>{let i=n.nativeEvent,a=C.get(r);if(j.current!==null||!a||i.dndKit||i.defaultPrevented)return;let o={active:a};e(n,t.options,o)===!0&&(i.dndKit={capturedBy:t.sensor},j.current=r,X(n,t))},[C,X]));Ot(a),_(()=>{H&&v===Xt.Initializing&&y(Xt.Initialized)},[H,v]),(0,s.useEffect)(()=>{let{onDragMove:e}=N.current,{active:t,activatorEvent:n,collisions:r,over:i}=U.current;if(!t||!n)return;let a={active:t,activatorEvent:n,collisions:r,delta:{x:Te.x,y:Te.y},over:i};(0,o.unstable_batchedUpdates)(()=>{e?.(a),h({type:`onDragMove`,event:a})})},[Te.x,Te.y]),(0,s.useEffect)(()=>{let{active:e,activatorEvent:t,collisions:n,droppableContainers:r,scrollAdjustedTranslate:i}=U.current;if(!e||j.current==null||!t||!i)return;let{onDragOver:a}=N.current,s=r.get(De),c=s&&s.rect.current?{id:s.id,rect:s.rect.current,data:s.data,disabled:s.disabled}:null,l={active:e,activatorEvent:t,collisions:n,delta:{x:i.x,y:i.y},over:c};(0,o.unstable_batchedUpdates)(()=>{Oe(c),a?.(l),h({type:`onDragOver`,event:l})})},[De]),_(()=>{U.current={activatorEvent:M,active:A,activeNode:z,collisionRect:Ee,collisions:J,droppableRects:F,draggableNodes:C,draggingNode:pe,draggingNodeRect:G,droppableContainers:E,over:Y,scrollableAncestors:K,scrollAdjustedTranslate:Te},k.current={initial:G,translated:Ee}},[A,z,J,Ee,C,pe,G,F,E,Y,K,Te]),ct({...B,delta:w,draggingRect:Ee,pointerCoordinates:Se,scrollableAncestors:K,scrollableAncestorRects:be});let Me=(0,s.useMemo)(()=>({active:A,activeNode:z,activeNodeRect:H,activatorEvent:M,collisions:J,containerNodeRect:ue,dragOverlay:W,draggableNodes:C,droppableContainers:E,droppableRects:F,over:Y,measureDroppableContainers:I,scrollableAncestors:K,scrollableAncestorRects:be,measuringConfiguration:P,measuringScheduled:R,windowRect:ve}),[A,z,H,M,J,ue,W,C,E,F,Y,I,K,be,P,R,ve]),Ne=(0,s.useMemo)(()=>({activatorEvent:M,activators:je,active:A,activeNodeRect:H,ariaDescribedById:{draggable:ie},dispatch:m,draggableNodes:C,over:Y,measureDroppableContainers:I}),[M,je,A,H,m,ie,C,Y,I]);return s.createElement(oe.Provider,{value:g},s.createElement(Vt.Provider,{value:Ne},s.createElement(Ht.Provider,{value:Me},s.createElement(Yt.Provider,{value:ke},i)),s.createElement(Gt,{disabled:n?.restoreFocus===!1})),s.createElement(ce,{...n,hiddenTextDescribedById:ie}));function Pe(){let e=te?.autoScrollEnabled===!1,t=typeof r==`object`?r.enabled===!1:r===!1,n=x&&!e&&!t;return typeof r==`object`?{...r,enabled:n}:{enabled:n}}}),Qt=(0,s.createContext)(null),$t=`button`,en=`Draggable`;function tn(e){let{id:t,data:n,disabled:r=!1,attributes:i}=e,a=T(en),{activators:o,activatorEvent:c,active:l,activeNodeRect:u,ariaDescribedById:d,draggableNodes:f,over:p}=(0,s.useContext)(Vt),{role:m=$t,roleDescription:h=`draggable`,tabIndex:g=0}=i??{},v=l?.id===t,y=(0,s.useContext)(v?Yt:Qt),[x,C]=S(),[w,E]=S(),D=kt(o,t),O=b(n);return _(()=>(f.set(t,{id:t,key:a,node:x,activatorNode:w,data:O}),()=>{let e=f.get(t);e&&e.key===a&&f.delete(t)}),[f,t]),{active:l,activatorEvent:c,activeNodeRect:u,attributes:(0,s.useMemo)(()=>({role:m,tabIndex:g,"aria-disabled":r,"aria-pressed":v&&m===$t?!0:void 0,"aria-roledescription":h,"aria-describedby":d.draggable}),[r,m,g,v,h,d.draggable]),isDragging:v,listeners:r?void 0:D,node:x,over:p,setNodeRef:C,setActivatorNodeRef:E,transform:y}}function nn(){return(0,s.useContext)(Ht)}var rn=`Droppable`,an={timeout:25};function on(e){let{data:t,disabled:n=!1,id:r,resizeObserverConfig:i}=e,a=T(rn),{active:o,dispatch:c,over:l,measureDroppableContainers:u}=(0,s.useContext)(Vt),d=(0,s.useRef)({disabled:n}),f=(0,s.useRef)(!1),p=(0,s.useRef)(null),m=(0,s.useRef)(null),{disabled:h,updateMeasurementsFor:g,timeout:_}={...an,...i},v=b(g??r),y=bt({callback:(0,s.useCallback)(()=>{if(!f.current){f.current=!0;return}m.current!=null&&clearTimeout(m.current),m.current=setTimeout(()=>{u(Array.isArray(v.current)?v.current:[v.current]),m.current=null},_)},[_]),disabled:h||!o}),[x,C]=S((0,s.useCallback)((e,t)=>{y&&(t&&(y.unobserve(t),f.current=!1),e&&y.observe(e))},[y])),w=b(t);return(0,s.useEffect)(()=>{y&&x.current&&(y.disconnect(),f.current=!1,y.observe(x.current))},[x,y]),(0,s.useEffect)(()=>(c({type:L.RegisterDroppable,element:{id:r,key:a,disabled:n,node:x,rect:p,data:w}}),()=>c({type:L.UnregisterDroppable,key:a,id:r})),[r]),(0,s.useEffect)(()=>{n!==d.current.disabled&&(c({type:L.SetDroppableDisabled,id:r,key:a,disabled:n}),d.current.disabled=n)},[r,a,n,c]),{active:o,rect:p,isOver:l?.id===r,node:x,over:l,setNodeRef:C}}function sn(e,t,n){let r=e.slice();return r.splice(n<0?r.length+n:n,0,r.splice(t,1)[0]),r}function cn(e,t){return e.reduce((e,n,r)=>{let i=t.get(n);return i&&(e[r]=i),e},Array(e.length))}function ln(e){return e!==null&&e>=0}function un(e,t){if(e===t)return!0;if(e.length!==t.length)return!1;for(let n=0;n<e.length;n++)if(e[n]!==t[n])return!1;return!0}function dn(e){return typeof e==`boolean`?{draggable:e,droppable:e}:e}var fn={scaleX:1,scaleY:1},pn=e=>{let{rects:t,activeNodeRect:n,activeIndex:r,overIndex:i,index:a}=e,o=t[r]??n;if(!o)return null;let s=mn(t,a,r);if(a===r){let e=t[i];return e?{x:r<i?e.left+e.width-(o.left+o.width):e.left-o.left,y:0,...fn}:null}return a>r&&a<=i?{x:-o.width-s,y:0,...fn}:a<r&&a>=i?{x:o.width+s,y:0,...fn}:{x:0,y:0,...fn}};function mn(e,t,n){let r=e[t],i=e[t-1],a=e[t+1];return!r||!i&&!a?0:n<t?i?r.left-(i.left+i.width):a.left-(r.left+r.width):a?a.left-(r.left+r.width):r.left-(i.left+i.width)}var hn=e=>{let{rects:t,activeIndex:n,overIndex:r,index:i}=e,a=sn(t,r,n),o=t[i],s=a[i];return!s||!o?null:{x:s.left-o.left,y:s.top-o.top,scaleX:s.width/o.width,scaleY:s.height/o.height}},gn={scaleX:1,scaleY:1},_n=e=>{let{activeIndex:t,activeNodeRect:n,index:r,rects:i,overIndex:a}=e,o=i[t]??n;if(!o)return null;if(r===t){let e=i[a];return e?{x:0,y:t<a?e.top+e.height-(o.top+o.height):e.top-o.top,...gn}:null}let s=vn(i,r,t);return r>t&&r<=a?{x:0,y:-o.height-s,...gn}:r<t&&r>=a?{x:0,y:o.height+s,...gn}:{x:0,y:0,...gn}};function vn(e,t,n){let r=e[t],i=e[t-1],a=e[t+1];return r?n<t?i?r.top-(i.top+i.height):a?a.top-(r.top+r.height):0:a?a.top-(r.top+r.height):i?r.top-(i.top+i.height):0:0}var yn=`Sortable`,bn=s.createContext({activeIndex:-1,containerId:yn,disableTransforms:!1,items:[],overIndex:-1,useDragOverlay:!1,sortedRects:[],strategy:hn,disabled:{draggable:!1,droppable:!1}});function xn(e){let{children:t,id:n,items:r,strategy:i=hn,disabled:a=!1}=e,{active:o,dragOverlay:c,droppableRects:l,over:u,measureDroppableContainers:d}=nn(),f=T(yn,n),p=c.rect!==null,m=(0,s.useMemo)(()=>r.map(e=>typeof e==`object`&&`id`in e?e.id:e),[r]),h=o!=null,g=o?m.indexOf(o.id):-1,v=u?m.indexOf(u.id):-1,y=(0,s.useRef)(m),b=!un(m,y.current),x=v!==-1&&g===-1||b,S=dn(a);_(()=>{b&&h&&d(m)},[b,m,h,d]),(0,s.useEffect)(()=>{y.current=m},[m]);let C=(0,s.useMemo)(()=>({activeIndex:g,containerId:f,disabled:S,disableTransforms:x,items:m,overIndex:v,useDragOverlay:p,sortedRects:cn(m,l),strategy:i}),[g,f,S.draggable,S.droppable,x,m,v,l,p,i]);return s.createElement(bn.Provider,{value:C},t)}var Sn=e=>{let{id:t,items:n,activeIndex:r,overIndex:i}=e;return sn(n,r,i).indexOf(t)},Cn=e=>{let{containerId:t,isSorting:n,wasDragging:r,index:i,items:a,newIndex:o,previousItems:s,previousContainerId:c,transition:l}=e;return!l||!r||s!==a&&i===o?!1:n?!0:o!==i&&t===c},wn={duration:200,easing:`ease`},Tn=`transform`,En=te.Transition.toString({property:Tn,duration:0,easing:`linear`}),Dn={roleDescription:`sortable`};function On(e){let{disabled:t,index:n,node:r,rect:i}=e,[a,o]=(0,s.useState)(null),c=(0,s.useRef)(n);return _(()=>{if(!t&&n!==c.current&&r.current){let e=i.current;if(e){let t=q(r.current,{ignoreTransform:!0}),n={x:e.left-t.left,y:e.top-t.top,scaleX:e.width/t.width,scaleY:e.height/t.height};(n.x||n.y)&&o(n)}}n!==c.current&&(c.current=n)},[t,n,r,i]),(0,s.useEffect)(()=>{a&&o(null)},[a]),a}function kn(e){let{animateLayoutChanges:t=Cn,attributes:n,disabled:r,data:i,getNewIndex:a=Sn,id:o,strategy:l,resizeObserverConfig:u,transition:d=wn}=e,{items:f,containerId:p,activeIndex:m,disabled:h,disableTransforms:g,sortedRects:_,overIndex:v,useDragOverlay:y,strategy:b}=(0,s.useContext)(bn),x=An(r,h),S=f.indexOf(o),C=(0,s.useMemo)(()=>({sortable:{containerId:p,index:S,items:f},...i}),[p,i,S,f]),w=(0,s.useMemo)(()=>f.slice(f.indexOf(o)),[f,o]),{rect:T,node:E,isOver:D,setNodeRef:O}=on({id:o,data:C,disabled:x.droppable,resizeObserverConfig:{updateMeasurementsFor:w,...u}}),{active:k,activatorEvent:j,activeNodeRect:ee,attributes:ne,setNodeRef:M,listeners:re,isDragging:N,over:ie,setActivatorNodeRef:ae,transform:oe}=tn({id:o,data:C,attributes:{...Dn,...n},disabled:x.draggable}),P=c(O,M),se=!!k,F=se&&!g&&ln(m)&&ln(v),I=!y&&N,ce=F?(I&&F?oe:null)??(l??b)({rects:_,activeNodeRect:ee,activeIndex:m,overIndex:v,index:S}):null,L=ln(m)&&ln(v)?a({id:o,items:f,activeIndex:m,overIndex:v}):S,R=k?.id,z=(0,s.useRef)({activeId:R,items:f,newIndex:L,containerId:p}),le=f!==z.current.items,B=t({active:k,containerId:p,isDragging:N,isSorting:se,id:o,index:S,items:f,newIndex:z.current.newIndex,previousItems:z.current.items,previousContainerId:z.current.containerId,transition:d,wasDragging:z.current.activeId!=null}),V=On({disabled:!B,index:S,node:E,rect:T});return(0,s.useEffect)(()=>{se&&z.current.newIndex!==L&&(z.current.newIndex=L),p!==z.current.containerId&&(z.current.containerId=p),f!==z.current.items&&(z.current.items=f)},[se,L,p,f]),(0,s.useEffect)(()=>{if(R===z.current.activeId)return;if(R!=null&&z.current.activeId==null){z.current.activeId=R;return}let e=setTimeout(()=>{z.current.activeId=R},50);return()=>clearTimeout(e)},[R]),{active:k,activeIndex:m,attributes:ne,data:C,rect:T,index:S,newIndex:L,items:f,isOver:D,isSorting:se,isDragging:N,listeners:re,node:E,overIndex:v,over:ie,setNodeRef:P,setActivatorNodeRef:ae,setDroppableNodeRef:O,setDraggableNodeRef:M,transform:V??ce,transition:H()};function H(){if(V||le&&z.current.newIndex===S)return En;if(!(I&&!A(j)||!d)&&(se||B))return te.Transition.toString({...d,property:Tn})}}function An(e,t){return typeof e==`boolean`?{draggable:e,droppable:!1}:{draggable:e?.draggable??t.draggable,droppable:e?.droppable??t.droppable}}function jn(e){if(!e)return!1;let t=e.data.current;return!!(t&&`sortable`in t&&typeof t.sortable==`object`&&`containerId`in t.sortable&&`items`in t.sortable&&`index`in t.sortable)}var Mn=[Q.Down,Q.Right,Q.Up,Q.Left],Nn=(e,t)=>{let{context:{active:n,collisionRect:r,droppableRects:i,droppableContainers:a,over:o,scrollableAncestors:s}}=t;if(Mn.includes(e.code)){if(e.preventDefault(),!n||!r)return;let t=[];a.getEnabled().forEach(n=>{if(!n||n!=null&&n.disabled)return;let a=i.get(n.id);if(a)switch(e.code){case Q.Down:r.top<a.top&&t.push(n);break;case Q.Up:r.top>a.top&&t.push(n);break;case Q.Left:r.left>a.left&&t.push(n);break;case Q.Right:r.left<a.left&&t.push(n)}});let c=pe({active:n,collisionRect:r,droppableRects:i,droppableContainers:t,pointerCoordinates:null}),l=de(c,`id`);if(l===o?.id&&c.length>1&&(l=c[1].id),l!=null){let e=a.get(n.id),t=a.get(l),o=t?i.get(t.id):null,c=t?.node.current;if(c&&o&&e&&t){let n=J(c).some((e,t)=>s[t]!==e),i=Pn(e,t),a=Fn(e,t),l=n||!i?{x:0,y:0}:{x:a?r.width-o.width:0,y:a?r.height-o.height:0},u={x:o.left,y:o.top};return l.x&&l.y?u:O(u,l)}}}};function Pn(e,t){return!jn(e)||!jn(t)?!1:e.data.current.sortable.containerId===t.data.current.sortable.containerId}function Fn(e,t){return!jn(e)||!jn(t)||!Pn(e,t)?!1:e.data.current.sortable.index<t.data.current.sortable.index}var In=`p4code:ui-state:v1`,Ln=2,Rn=[`p4code:renderer-state:v8`,`p4code:renderer-state:v7`,`p4code:renderer-state:v6`,`p4code:renderer-state:v5`,`p4code:renderer-state:v4`,`p4code:renderer-state:v3`,`codething:renderer-state:v4`,`codething:renderer-state:v3`,`codething:renderer-state:v2`,`codething:renderer-state:v1`],zn={projectExpandedById:{},projectOrder:[],pinnedProjectKeys:[],sidebarSections:[],projectSectionByKey:{},inactiveProjectKeys:[],inactiveSectionExpanded:!1,threadSectionByKey:{},sidebarProjectScopeKey:null,threadLastVisitedAtById:{},threadChangedFilesExpandedById:{},defaultAdvertisedEndpointKey:null,pullRequestMergeMethod:`merge`},Bn=`legacy-project-cwd:`,Vn=`legacy-project-expansion-default`,Hn=!1;function Un(e){return`${Bn}${a(e)}`}function $(e){return Array.isArray(e)?[...new Set(e.filter(e=>typeof e==`string`&&e.length>0))]:[]}function Wn(e){return!e||typeof e!=`object`?{}:Object.fromEntries(Object.entries(e).filter(e=>e[0].length>0&&typeof e[1]==`boolean`))}function Gn(e){return typeof e==`string`&&e.length>0?e:null}function Kn(e){return!e||typeof e!=`object`?{}:Object.fromEntries(Object.entries(e).filter(e=>e[0].length>0&&typeof e[1]==`string`&&e[1].length>0&&Number.isFinite(Date.parse(e[1]))))}function qn(e){return e===`merge`||e===`squash`||e===`rebase`}function Jn(e){return{projectExpandedById:e.projectExpandedById===void 0?(()=>{let t={},n=$(e.collapsedProjectCwds),r=$(e.expandedProjectCwds);for(let e of n)t[Un(e)]=!1;for(let e of r)t[Un(e)]=!0;return!Array.isArray(e.collapsedProjectCwds)&&r.length>0&&(t[Vn]=!1),t})():Wn(e.projectExpandedById),projectOrder:e.projectOrder===void 0?$(e.projectOrderCwds).map(Un):$(e.projectOrder),pinnedProjectKeys:$(e.pinnedProjectKeys),sidebarSections:$(e.sidebarSections),threadSectionByKey:Object.fromEntries(Object.entries(e.threadSectionByKey??{}).filter(([t,n])=>t.length>0&&$(e.sidebarSections).includes(n))),projectSectionByKey:Object.fromEntries(Object.entries(e.projectSectionByKey??{}).filter(([t,n])=>t.length>0&&$(e.sidebarSections).includes(n))),inactiveProjectKeys:$(e.inactiveProjectKeys),inactiveSectionExpanded:e.inactiveSectionExpanded===!0,threadLastVisitedAtById:Kn(e.threadLastVisitedAtById),threadChangedFilesExpandedById:e.threadChangedFilesExpansionVersion===Ln?Xn(e.threadChangedFilesExpandedById):{},defaultAdvertisedEndpointKey:Gn(e.defaultAdvertisedEndpointKey),sidebarProjectScopeKey:Gn(e.sidebarProjectScopeKey),pullRequestMergeMethod:qn(e.pullRequestMergeMethod)?e.pullRequestMergeMethod:zn.pullRequestMergeMethod}}function Yn(){if(typeof window>`u`)return zn;try{let e=window.localStorage.getItem(In);if(!e){for(let e of Rn){let t=window.localStorage.getItem(e);if(t)return Jn(JSON.parse(t))}return zn}return Jn(JSON.parse(e))}catch{return zn}}function Xn(e){if(!e||typeof e!=`object`)return{};let t={};for(let[n,r]of Object.entries(e)){if(!n||!r||typeof r!=`object`)continue;let e={};for(let[t,n]of Object.entries(r))t&&typeof n==`boolean`&&(e[t]=n);Object.keys(e).length>0&&(t[n]=e)}return t}function Zn(e){if(typeof window<`u`)try{let t=Object.fromEntries(Object.entries(e.projectExpandedById).filter(([e])=>e!==Vn));if(window.localStorage.setItem(In,JSON.stringify({projectExpandedById:t,projectOrder:e.projectOrder,pinnedProjectKeys:e.pinnedProjectKeys,sidebarSections:e.sidebarSections,projectSectionByKey:e.projectSectionByKey,inactiveProjectKeys:e.inactiveProjectKeys,inactiveSectionExpanded:e.inactiveSectionExpanded,threadSectionByKey:e.threadSectionByKey,threadLastVisitedAtById:e.threadLastVisitedAtById,defaultAdvertisedEndpointKey:e.defaultAdvertisedEndpointKey,sidebarProjectScopeKey:e.sidebarProjectScopeKey,threadChangedFilesExpansionVersion:Ln,threadChangedFilesExpandedById:e.threadChangedFilesExpandedById,pullRequestMergeMethod:e.pullRequestMergeMethod})),!Hn){Hn=!0;for(let e of Rn)window.localStorage.removeItem(e)}}catch{}}var Qn=new i(Zn,{wait:500});function $n(e,t,n){let r=Date.parse(n);if(!Number.isFinite(r))return e;let i=e.threadLastVisitedAtById[t],a=i?Date.parse(i):NaN;return Number.isFinite(a)&&Number.isFinite(r)&&a>=r?e:{...e,threadLastVisitedAtById:{...e.threadLastVisitedAtById,[t]:n}}}function er(e,t,n){if(!n)return e;let r=Date.parse(n);if(Number.isNaN(r))return e;let i=new Date(r-1).toISOString();return e.threadLastVisitedAtById[t]===i?e:{...e,threadLastVisitedAtById:{...e.threadLastVisitedAtById,[t]:i}}}function tr(e,t,n,r){let i=e.threadChangedFilesExpandedById[t]??{};return i[n]===r?e:{...e,threadChangedFilesExpandedById:{...e.threadChangedFilesExpandedById,[t]:{...i,[n]:r}}}}function nr(e,t){let n=t&&t.length>0?t:null;return e.defaultAdvertisedEndpointKey===n?e:{...e,defaultAdvertisedEndpointKey:n}}function rr(e,t){let n=Gn(t);return e.sidebarProjectScopeKey===n?e:{...e,sidebarProjectScopeKey:n}}function ir(e,t){return e.pullRequestMergeMethod===t?e:{...e,pullRequestMergeMethod:t}}function ar(e,t){for(let n of t){let t=e[n];if(t!==void 0)return t}return e[Vn]??!0}function or(e,t,n){let r=(typeof t==`string`?[t]:t).filter(t=>e.projectExpandedById[t]!==n);if(r.length===0)return e;let i={...e.projectExpandedById};for(let e of r)i[e]=n;return{...e,projectExpandedById:i}}function sr(e,t,n,r){if(n.length===0)return e;let i=new Set(n),a=new Set(r);if(n.every(e=>a.has(e)))return e;let o=t.findIndex(e=>a.has(e));if(o<0)return e;let s=[...t],c=[],l=0;for(let e=s.length-1;e>=0;e--)i.has(s[e])&&(c.unshift(s.splice(e,1)[0]),e<o&&l++);if(c.length===0)return e;let u=o-Math.max(0,l-1);return s.splice(u,0,...c),{...e,projectOrder:s}}var cr=n(e=>({...Yn(),setThreadSection:(t,n)=>e(e=>({sidebarSections:n&&!e.sidebarSections.includes(n)?[...e.sidebarSections,n]:e.sidebarSections,threadSectionByKey:n?{...e.threadSectionByKey,[t]:n}:Object.fromEntries(Object.entries(e.threadSectionByKey).filter(([e])=>e!==t))})),toggleProjectPinned:t=>e(e=>({pinnedProjectKeys:e.pinnedProjectKeys.includes(t)?e.pinnedProjectKeys.filter(e=>e!==t):[...e.pinnedProjectKeys,t],inactiveProjectKeys:e.inactiveProjectKeys.filter(e=>e!==t)})),setProjectSection:(t,n)=>e(e=>({sidebarSections:n&&!e.sidebarSections.includes(n)?[...e.sidebarSections,n]:e.sidebarSections,projectSectionByKey:n?{...e.projectSectionByKey,[t]:n}:Object.fromEntries(Object.entries(e.projectSectionByKey).filter(([e])=>e!==t)),pinnedProjectKeys:e.pinnedProjectKeys.filter(e=>e!==t),inactiveProjectKeys:e.inactiveProjectKeys.filter(e=>e!==t)})),setProjectInactive:(t,n)=>e(e=>{let r=e.inactiveProjectKeys.filter(e=>e!==t);return n?{inactiveProjectKeys:[...r,t],pinnedProjectKeys:e.pinnedProjectKeys.filter(e=>e!==t),projectSectionByKey:Object.fromEntries(Object.entries(e.projectSectionByKey).filter(([e])=>e!==t))}:{inactiveProjectKeys:r}}),setInactiveSectionExpanded:t=>e({inactiveSectionExpanded:t}),removeSidebarSection:t=>e(e=>({threadSectionByKey:Object.fromEntries(Object.entries(e.threadSectionByKey).filter(([,e])=>e!==t)),sidebarSections:e.sidebarSections.filter(e=>e!==t),projectSectionByKey:Object.fromEntries(Object.entries(e.projectSectionByKey).filter(([,e])=>e!==t))})),markThreadVisited:(t,n)=>e(e=>$n(e,t,n)),markThreadUnread:(t,n)=>e(e=>er(e,t,n)),setThreadChangedFilesExpanded:(t,n,r)=>e(e=>tr(e,t,n,r)),setDefaultAdvertisedEndpointKey:t=>e(e=>nr(e,t)),setSidebarProjectScopeKey:t=>e(e=>rr(e,t)),setPullRequestMergeMethod:t=>e(e=>ir(e,t)),setProjectExpanded:(t,n)=>e(e=>or(e,t,n)),reorderProjects:(t,n,r)=>e(e=>sr(e,t,n,r))}));cr.subscribe(e=>Qn.maybeExecute(e)),typeof window<`u`&&typeof window.addEventListener==`function`&&window.addEventListener(`beforeunload`,()=>{Qn.flush()});export{le as _,sn as a,f as b,kn as c,Ye as d,et as f,z as g,ge as h,xn as i,_n as l,pe as m,ar as n,pn as o,W as p,cr as r,Nn as s,Un as t,Zt as u,te as v,g as y};
6
- //# sourceMappingURL=uiStateStore-xSkh4_PU.js.map
6
+ //# sourceMappingURL=uiStateStore-CdkBStdp.js.map
@@ -1,2 +1,2 @@
1
- import{a as e,t}from"./react-DH3P2YXY.js";import{n,t as r}from"./jsx-runtime-BnjsACtP.js";import{$n as i,Ad as a,Eb as o,Hy as s,Ld as c,M_ as l,Nb as u,Os as d,Xn as f,Xy as p,Yn as m,Yp as h,Zo as g,_m as _,ar as v,as as y,dr as b,fr as x,im as S,js as C,ks as w,ob as T,ps as E,qf as D,rh as O,rl as k,rs as A,sv as j,t as M,tE as N,tr as ee,ts as P,ur as F}from"./utils-BoMYW9A3.js";import{B as I,L,W as R,q as z}from"./runtime-DR7JxgbQ.js";import{a as B,c as V,o as te,s as ne,t as re}from"./select-DaYjjw1q.js";import{t as ie}from"./useNavigateBack-sP0LsL3p.js";import{rt as ae}from"./useSettings-CaJMqrvF.js";import{f as oe,s as se}from"./server-sXApTCjZ.js";import{n as H,t as U}from"./session-C949OsEI.js";import{t as ce}from"./use-atom-command-DA6OG-Qk.js";import{a as le,c as ue,d as W,f as G,i as de,l as K,n as fe,o as pe,r as q,s as J,t as Y,u as me}from"./usageFormat-Bzyvr9m4.js";import{t as he}from"./env-wK1YYxA8.js";import{a as ge,n as _e,t as ve}from"./tooltip-D-GRl-oZ.js";import{t as X}from"./skeleton-BCpBrYxh.js";import{n as ye,t as be}from"./toggle-group-Di3SFV73.js";import{t as xe}from"./input-ekYqAkUx.js";import{t as Se}from"./scroll-area-yyfi3ycu.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-CBBxT1gk.js";import{o as Ae}from"./sidebar-C1E4GqL6.js";import{t as je}from"./observeResize-3Vj9DYOV.js";import{y as Me}from"./keybindings-B3oDRRkK.js";import{i as Ne,o as Pe,t as Fe}from"./popover-OfG3wVsl.js";import{S as Ie,n as Le,t as Re}from"./ChatGptUsageButton-C3KgGt4z.js";import{t as ze}from"./WorkspacePageContainer-BS8FWt_4.js";import{n as Be,r as Ve,t as He}from"./usageShortcuts-D6nQeRtx.js";import{Oa as Ue,Ti as We,cr as Ge,dr as Ke,lr as qe,qr as Je,ur as Ye,vi as Xe}from"./main-BWh6jqG2.js";import{t as Ze}from"./WorkspacePageHeader-CE_94tTR.js";import{i as Qe,n as $e,r as et,t as tt}from"./WorkspaceBreadcrumb-BW_omYU1.js";import{t as nt}from"./usageAccess-DSLF-sRE.js";var Z=e(t(),1),Q=n(),rt=o(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=A(e=>y(t=>{let n=JSON.parse(e),r=t(ae.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:N(d(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(oe.usageSummary({environmentId:e,input:n})),l=N(d(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(oe.providersValueAtom(e)))})}return i}).pipe(E(`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,o;r[0]!==e.resolution||r[1]!==e.sinceDay||r[2]!==e.sinceTime||r[3]!==e.timeZone||r[4]!==e.untilDay||r[5]!==e.untilTime?(o=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]=o):o=r[6];let s=o,c;r[7]===s?c=r[8]:(c=Ct(s),r[7]=s,r[8]=c);let l=P(c),u;r[9]!==l||r[10]!==i?(u=i===null?l:l.filter(e=>i.has(e.environmentId)),r[9]=l,r[10]=i,r[11]=u):u=r[11];let d=u,f;r[12]!==d||r[13]!==s?(f=e=>lt({registry:g,server:oe,presentations:ae,environmentIds:d.filter(jt).map(At),input:e??JSON.parse(s)}),r[12]=d,r[13]=s,r[14]=f):f=r[14];let p=f,m;r[15]!==a||r[16]!==d?(m=wt(Et(d,a)),r[15]=a,r[16]=d,r[17]=m):m=r[17];let h=m,_;r[18]===d?_=r[19]:(_=d.filter(kt),r[18]=d,r[19]=_);let v=_.length,y;r[20]===d?y=r[21]:(y=d.filter(Ot),r[20]=d,r[21]=y);let b=y.length,x=v===0&&b>0,[S,C]=(0,Z.useState)(null);v>0&&(S?.merged!==h||S.window!==e||S.selection!==i||S.hidden!==a)&&C({window:e,merged:h,selection:i,hidden:a});let w=S?.selection===i&&S.hidden===a?S:null,T;r[22]!==v||r[23]!==e||r[24]!==x||r[25]!==w||r[26]!==h?(T=v>0?{window:e,merged:h}:w??(x?null:{window:e,merged:h}),r[22]=v,r[23]=e,r[24]=x,r[25]=w,r[26]=h,r[27]=T):T=r[27];let E=T,D=v>0&&b>0,O;return r[28]!==l||r[29]!==x||r[30]!==h||r[31]!==p||r[32]!==d||r[33]!==E||r[34]!==D?(O={merged:h,environments:l,selectedEnvironments:d,isPending:x,shown:E,isPartial:D,refresh:p},r[28]=l,r[29]=x,r[30]=h,r[31]=p,r[32]=d,r[33]=E,r[34]=D,r[35]=O):O=r[35],O}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&&H(e.environmentId,`diagnostics:read`)}var $=e(r(),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=M(`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=M(`[&_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=M(`[&_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=M(`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=M(`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=M(`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=y(e=>[...e(ae.presentationsAtom)].map(([t,n])=>{let r=e(oe.settingsValueAtom(t)),i=e(U.sessionStateAtom(t)),a=N(d(i)),o=i._tag===`Failure`?`denied`:a===null?i.waiting?`pending`:`denied`:j(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,s=P(Yt),[c,l]=(0,Z.useState)(r),u;if(t[0]!==s||t[1]!==c){let e;t[3]===c?e=t[4]:(e=e=>c===null||c.has(e.environmentId),t[3]=c,t[4]=e),u=s.filter(e),t[0]=s,t[1]=c,t[2]=u}else u=t[2];let d=u,p;t[5]!==i||t[6]!==d?(p=()=>i===void 0||d.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]=d,t[7]=p):p=t[7];let[g,_]=(0,Z.useState)(p),[y,x]=(0,Z.useState)(!1),[C,w]=(0,Z.useState)(null),T=(0,Z.useRef)(null),E=(0,Z.useRef)(0),D;t[8]===Symbol.for(`react.memo_cache_sentinel`)?(D={reportFailure:!1},t[8]=D):D=t[8];let k=ce(oe.updateSettings,D),A,j,N,I,L,R,z,B,V,te,ne,re,ie,ae,se;if(t[9]!==C||t[10]!==g||t[11]!==s||t[12]!==o||t[13]!==y||t[14]!==d||t[15]!==c||t[16]!==k||t[17]!==n){let e=[...new Set(d.flatMap(mn))].sort(),r;t[33]===d?r=t[34]:(r=e=>d.some(t=>t.environmentId===e.environmentId),t[33]=d,t[34]=r);let i=[...new Set([...e,...n.filter(r).flatMap(fn)])].sort(),u;t[35]===g?u=t[36]:(u=new Set(g.filter(dn).map(un)),t[35]=g,t[36]=u);let p=u,D;t[37]!==C||t[38]!==p?(D=e=>C===null||!p.has(e),t[37]=C,t[38]=p,t[39]=D):D=t[39];let P=[...e.filter(D).map(e=>g.find(t=>t.id===`model:${e}`)??{id:`model:${e}`,model:e,isNew:!1,values:{}}),...g.filter(ln)],oe=g.filter(cn);R=qt(d,oe);for(let t of oe)t.isNew&&(t.model.trim()===``?R.set(t.id,`Enter a model ID.`):C===null&&(e.includes(t.model.trim())||g.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=oe.length>0,I=d.length===1?d[0].label:`${d.length} environments`;let ce=c===null?`All environments`:I,le;t[40]===Symbol.for(`react.memo_cache_sentinel`)?(le=()=>{_([]),w(null)},t[40]=le):le=t[40],L=le;let ue;t[41]===Symbol.for(`react.memo_cache_sentinel`)?(ue=e=>{l(e),w(null)},t[41]=ue):ue=t[41];let W=ue,G;t[42]===Symbol.for(`react.memo_cache_sentinel`)?(G=e=>{_(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 de=G,K=sn,fe;t[43]===Symbol.for(`react.memo_cache_sentinel`)?(fe=e=>{!e.isNew&&Object.keys(e.values).length===0&&e.alias===void 0?_(t=>t.filter(t=>t.id!==e.id)):de(e)},t[43]=fe):fe=t[43];let pe=fe,q;t[44]===d?q=t[45]:(q=(e,t,n)=>{let r={...e.values,[t]:n},i=Gt(d,e.model,t);K(e,i,n)&&delete r[t],pe({...e,values:r})},t[44]=d,t[45]=q);let J=q,Y;t[46]===d?Y=t[47]:(Y=(e,t)=>{let{alias:n,...r}=e,i=Wt(d,e.model);pe(K(e,i,t)?r:{...r,alias:t})},t[46]=d,t[47]=Y);let me=Y;V=async e=>{let t=e!==void 0&&e;if(y)return;let n=t?z:d,r=t&&C?C.drafts:oe;if(n.length===0||r.length===0)return;let i=n.map(e=>s.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)]));x(!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=>H(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)})}}),x(!1),o||_([])},N=ke,ae=!0,t[48]!==o||t[49]!==y?(se=e=>{y||o(e)},t[48]=o,t[49]=y,t[50]=se):se=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 he;t[52]===Symbol.for(`react.memo_cache_sentinel`)?(he=(0,$.jsx)(Xe,{id:`usage-prices-apply-label`,className:`shrink-0`,children:`Apply to`}),t[52]=he):he=t[52];let X;t[53]===Symbol.for(`react.memo_cache_sentinel`)?(X=(0,$.jsx)(b,{variant:`outline`,size:`sm`,className:`min-w-0`}),t[53]=X):X=t[53];let ye=y||B,be;t[54]===ce?be=t[55]:(be=(0,$.jsx)(`span`,{id:`usage-prices-selection`,className:`truncate`,children:ce}),t[54]=ce,t[55]=be);let Se;t[56]===Symbol.for(`react.memo_cache_sentinel`)?(Se=(0,$.jsx)(a,{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)(F,{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=c===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)(f,{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)(v,{}),t[63]=Ne):Ne=t[63];let Pe;if(t[64]!==s||t[65]!==d||t[66]!==c){let e;t[68]!==s.length||t[69]!==d||t[70]!==c?(e=e=>(0,$.jsx)(f,{checked:c===null||c.has(e.environmentId),closeOnClick:!1,onCheckedChange:t=>{let n=new Set(d.map(rn));t?n.add(e.environmentId):n.delete(e.environmentId),W(n.size===s.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]=s.length,t[69]=d,t[70]=c,t[71]=e):e=t[71],Pe=s.map(e),t[64]=s,t[65]=d,t[66]=c,t[67]=Pe}else Pe=t[67];let Fe;t[72]!==Me||t[73]!==Pe?(Fe=(0,$.jsxs)(ee,{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:[he,(0,$.jsxs)(m,{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=d.length===0?(0,$.jsx)(`p`,{className:`text-sm text-muted-foreground`,children:s.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)(b,{size:`icon-xs`,variant:`ghost`,"aria-label":`Add model price`,disabled:U,onClick:()=>{E.current+=1;let e=`new:${E.current}`;T.current=e,de({id:e,model:``,isNew:!0,values:{}})},children:(0,$.jsx)(h,{"aria-hidden":!0})})})]})}),(0,$.jsx)(Pt,{children:P.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:d.some(en)?`Some environment prices are unavailable.`:`No custom prices or mappings. Add a row to set one.`})})}):P.map(e=>{let t=Wt(d,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=>de({...e,model:t.target.value})}):(0,$.jsx)(`span`,{className:M(`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=>me(e,t.target.value)})}),e.removed?null:n===``?Rt.map(t=>{let n=Gt(d,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)(ve,{children:[(0,$.jsx)(ge,{render:(0,$.jsx)(b,{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?_(t=>t.filter(t=>t.id!==e.id)):e.removed?pe({...e,removed:!1}):de({...e,removed:!0})},children:e.isNew?(0,$.jsx)(O,{"aria-hidden":!0}):(0,$.jsx)(S,{"aria-hidden":!0})}),(0,$.jsx)(_e,{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=>d.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.`,d.length>1?` Mixed cells keep each environment’s rate until you edit them.`:``]})]}),t[9]=C,t[10]=g,t[11]=s,t[12]=o,t[13]=y,t[14]=d,t[15]=c,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]=ae,t[32]=se}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],ae=t[31],se=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 le;t[83]!==A||t[84]!==U||t[85]!==te||t[86]!==ne?(le=(0,$.jsxs)(A,{children:[te,ne,U]}),t[83]=A,t[84]=U,t[85]=te,t[86]=ne,t[87]=le):le=t[87];let ue=B?`Changes apply to ${I}`:``,W;t[88]===ue?W=t[89]:(W=(0,$.jsx)(`span`,{className:`text-xs text-muted-foreground`,children:ue}),t[88]=ue,t[89]=W);let G;t[90]!==L||t[91]!==z.length||t[92]!==B||t[93]!==y?(G=B?(0,$.jsx)(b,{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 de=y||!B&&z.length===0||z.length===0&&(R.size>0||d.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 fe=y?`Saving…`:z.length>0?`Retry failed saves`:`Save changes`,pe;t[98]!==de||t[99]!==K||t[100]!==fe?(pe=(0,$.jsx)(b,{disabled:de,onClick:K,children:fe}),t[98]=de,t[99]=K,t[100]=fe,t[101]=pe):pe=t[101];let q;t[102]!==G||t[103]!==pe?(q=(0,$.jsxs)(`div`,{className:`flex w-full flex-wrap justify-end gap-2 sm:w-auto`,children:[G,pe]}),t[102]=G,t[103]=pe,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]!==le||t[110]!==J||t[111]!==re||t[112]!==ie?(Y=(0,$.jsxs)(j,{className:re,children:[ie,le,J]}),t[108]=j,t[109]=le,t[110]=J,t[111]=re,t[112]=ie,t[113]=Y):Y=t[113];let me;return t[114]!==N||t[115]!==Y||t[116]!==ae||t[117]!==se?(me=(0,$.jsx)(N,{open:ae,onOpenChange:se,children:Y}),t[114]=N,t[115]=Y,t[116]=ae,t[117]=se,t[118]=me):me=t[118],me}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,N,ee;t[13]===g?(N=t[14],ee=t[15]):(N=()=>{if(g===null)return;j();let e=v.current,t=y.current;if(e!==null&&t!==null)return je([e,t],j)},ee=[g,j],t[13]=g,t[14]=N,t[15]=ee),(0,Z.useLayoutEffect)(N,ee);let P;t[16]===p.length?P=t[17]:(P=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]=P);let F=P,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`?pe(e,d):le(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?ue(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 ae;t[38]===Symbol.for(`react.memo_cache_sentinel`)?(ae=()=>{b.current=null,_(null)},t[38]=ae):ae=t[38];let oe=`${u===`hour`?`Hourly`:`Daily`} ${c===`tokens`?`processed tokens`:`cost`} by provider`,se;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),se=C.ticks.map(e),t[39]=C.ticks,t[40]=D,t[41]=se}else se=t[41];let H;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:Ye[t].color,fillOpacity:.12},t)},t[46]=e):e=t[46],H=w.map(e),t[44]=w,t[45]=H}else H=t[45];let U;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:Ye[t].color,strokeWidth:2,vectorEffect:`non-scaling-stroke`},t)},t[49]=e):e=t[49],U=w.map(e),t[47]=w,t[48]=U}else U=t[48];let ce;t[50]!==g||t[51]!==T?(ce=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]=ce):ce=t[52];let G;t[53]!==oe||t[54]!==se||t[55]!==H||t[56]!==U||t[57]!==ce?(G=(0,$.jsxs)(`svg`,{className:`h-full w-full`,viewBox:`0 0 ${hn} ${gn}`,preserveAspectRatio:`none`,role:`img`,"aria-label":oe,children:[se,H,U,ce]}),t[53]=oe,t[54]=se,t[55]=H,t[56]=U,t[57]=ce,t[58]=G):G=t[58];let de;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?(de=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}=Ye[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:M(`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:M(`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]=de):de=t[67];let fe;t[68]!==F||t[69]!==G||t[70]!==de?(fe=(0,$.jsxs)(`div`,{ref:v,className:`relative h-56 flex-1`,onMouseMove:F,onMouseLeave:ae,children:[G,de]}),t[68]=F,t[69]=G,t[70]=de,t[71]=fe):fe=t[71];let q;t[72]!==ie||t[73]!==fe?(q=(0,$.jsxs)(`div`,{className:`flex gap-2`,children:[ie,fe]}),t[72]=ie,t[73]=fe,t[74]=q):q=t[74];let J;t[75]!==V||t[76]!==p[0]?(J=p[0]===void 0?``:V(p[0]),t[75]=V,t[76]=p[0],t[77]=J):J=t[77];let Y;t[78]===J?Y=t[79]:(Y=(0,$.jsx)(`span`,{children:J}),t[78]=J,t[79]=Y);let me;t[80]!==V||t[81]!==p?(me=p[Math.floor(p.length/2)]===void 0?``:V(p[Math.floor(p.length/2)]??``),t[80]=V,t[81]=p,t[82]=me):me=t[82];let he;t[83]===me?he=t[84]:(he=(0,$.jsx)(`span`,{children:me}),t[83]=me,t[84]=he);let ge;t[85]!==V||t[86]!==p?(ge=p[p.length-1]===void 0?``:V(p[p.length-1]??``),t[85]=V,t[86]=p,t[87]=ge):ge=t[87];let _e;t[88]===ge?_e=t[89]:(_e=(0,$.jsx)(`span`,{children:ge}),t[88]=ge,t[89]=_e);let ve;t[90]!==Y||t[91]!==he||t[92]!==_e?(ve=(0,$.jsxs)(`div`,{className:`flex justify-between pl-16 text-3xs text-muted-foreground uppercase`,children:[Y,he,_e]}),t[90]=Y,t[91]=he,t[92]=_e,t[93]=ve):ve=t[93];let X;return t[94]!==q||t[95]!==ve?(X=(0,$.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[q,ve]}),t[94]=q,t[95]=ve,t[96]=X):X=t[96],X}function Mn(e){return M(`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)(ve,{children:[(0,$.jsx)(ge,{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)(_e,{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=Ye[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 x;t[27]===n.model?x=t[28]:(x=(0,$.jsx)(we,{children:n.model}),t[27]=n.model,t[28]=x);let S;t[29]!==y||t[30]!==x?(S=(0,$.jsxs)(`div`,{className:`flex items-center gap-2`,children:[y,x]}),t[29]=y,t[30]=x,t[31]=S):S=t[31];let C;t[32]!==h||t[33]!==n.costShare?(C=h?``:` · ${J(n.costShare)} of cost`,t[32]=h,t[33]=n.costShare,t[34]=C):C=t[34];let w;t[35]!==p.label||t[36]!==C?(w=(0,$.jsxs)(De,{children:[p.label,C]}),t[35]=p.label,t[36]=C,t[37]=w):w=t[37];let T;t[38]!==w||t[39]!==S?(T=(0,$.jsxs)(Ce,{children:[S,w]}),t[38]=w,t[39]=S,t[40]=T):T=t[40];let E;t[41]===_?E=t[42]:(E=(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]=E);let D=h?`tokens`:i,O;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]!==D||t[50]!==u.daily||t[51]!==u.hourly?(O=(0,$.jsx)(jn,{providers:f,days:a.days,daily:u.daily,hours:a.hours,hourly:u.hourly,metric:D,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]=D,t[50]=u.daily,t[51]=u.hourly,t[52]=O):O=t[52];let k;t[53]!==h||t[54]!==u.categoryCost?(k=h?null:(0,$.jsx)(Fn,{label:`Cost by type`,segments:Wn(u.categoryCost),format:W}),t[53]=h,t[54]=u.categoryCost,t[55]=k):k=t[55];let A;t[56]===n.tokens?A=t[57]:(A=Gn(n.tokens),t[56]=n.tokens,t[57]=A);let j;t[58]===A?j=t[59]:(j=(0,$.jsx)(Fn,{label:`Tokens by type`,segments:A,format:K}),t[58]=A,t[59]=j);let M;t[60]===u.speedCost?M=t[61]:(M=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]=M);let N;t[62]!==k||t[63]!==j||t[64]!==M?(N=(0,$.jsxs)(`div`,{className:`grid gap-x-10 gap-y-8 sm:grid-cols-2`,children:[k,j,M]}),t[62]=k,t[63]=j,t[64]=M,t[65]=N):N=t[65];let ee;t[66]!==E||t[67]!==O||t[68]!==N?(ee=(0,$.jsx)(Ee,{children:(0,$.jsxs)(`div`,{className:`flex flex-col gap-8`,children:[E,O,N]})}),t[66]=E,t[67]=O,t[68]=N,t[69]=ee):ee=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)(b,{onClick:o,children:`Set price`})]}):null,t[70]=n.unpricedTokens,t[71]=o,t[72]=P):P=t[72];let F;t[73]!==T||t[74]!==ee||t[75]!==P?(F=(0,$.jsxs)(Oe,{className:`max-w-3xl`,children:[T,ee,P]}),t[73]=T,t[74]=ee,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=`p4code:usage-page-preferences:v1`,Qn=T({metric:p([`cost`,`tokens`,`limits`]),windowDays:p([1,7,30,90]),hiddenProviders:u(s(k))}),$n={metric:`limits`,windowDays:30};function er(){try{return w(Zn,Qn)??$n}catch(e){return console.error(`Could not read Usage page preferences.`,e),$n}}function tr(e){try{C(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=>Ye[e].label;function ar(){let[e,t]=(0,Z.useState)(er);ie();let n=P(se),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`,[c,l]=(0,Z.useState)(!1),[u,d]=(0,Z.useState)(()=>Date.now()),f=(0,Z.useRef)(!1),[p,m]=(0,Z.useState)(`model`),[h,g]=(0,Z.useState)(null),[_,v]=(0,Z.useState)(null),[y,S]=(0,Z.useState)(null),C=(0,Z.useMemo)(()=>new Set(e.hiddenProviders),[e.hiddenProviders]),{days:w,window:T}=i,E=w===1,{merged:O,environments:k,selectedEnvironments:A,shown:j,isPartial:N,refresh:ee}=Dt(T,y,C),F=j?.merged??O,I=j?.window??T,L=I.resolution===`hour`,R=c&&!s,z=j!==null&&j.window!==T,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]),U=e=>H.everyProvider||H.providers.has(e),ue=P(ae.presentationsAtom),me=(0,Z.useMemo)(()=>new Map([...ue].filter(([,e])=>e.entry.enabled&&e.entry.unsupportedReason===void 0)),[ue]),ge=C.has(`cursor`)?[]:at(A),_e=[...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]:[])??[]))],ve=ce(oe.refreshProviders,{reportFailure:!1}),X=A.some(e=>e.canReadDiagnostics),xe=(0,Z.useMemo)(()=>Y(I.sinceDay,I.untilDay),[I.sinceDay,I.untilDay]),Ce=(0,Z.useMemo)(()=>I.sinceTime===void 0||I.untilTime===void 0?[]:fe(I.sinceTime,I.untilTime),[I.sinceTime,I.untilTime]),we=(0,Z.useMemo)(()=>(L?F.hourly:F.daily).toReversed(),[L,F.daily,F.hourly]),Te=(0,Z.useMemo)(()=>p===`model`&&o===`tokens`?Rn(F.models):F.models,[p,F.models,o]),Ee=(0,Z.useMemo)(()=>Ke(F.providers),[F.providers]),De=(0,Z.useMemo)(()=>qe.filter(e=>Ee.includes(e)||H.providers.has(e)),[H.providers,Ee]),Oe=(0,Z.useMemo)(()=>new Set(De.filter(e=>H.everyProvider||H.providers.has(e))),[De,H.everyProvider,H.providers]),ke=_===null?void 0:F.models.find(e=>`${e.provider}:${e.model}`===_),je=Te.reduce((e,t)=>Math.max(e,o===`tokens`?t.totalTokens:t.costUsd),0),Le=De.map(e=>({kind:`usage`,provider:e})),Xe=Math.max(De.indexOf(`codex`),De.indexOf(`claude`))+1;Le.splice(Xe,0,...ge.map(e=>({kind:`enable`,environment:e})));let Qe=`${60/(De.length+2)}%`,nt=n=>{let r={...e,...n};t(r),tr(r)},Q=e=>{rr(e)&&(nt({windowDays:e}),a({days:e,window:G(e,void 0,e===1?`hour`:`day`)}))},rt=e=>{e===`limits`&&d(Date.now()),nt({metric:e})},it=async(e=!1,t=!1)=>{try{await Promise.all(Array.from(me,([n,r])=>{if((y===null||y.has(n))&&r.connection.phase===`connected`&&r.serverConfig!==null)return ct(n,()=>ve({environmentId:n,input:{}}),e,t)}))}finally{d(Date.now())}},ot=(0,Z.useEffectEvent)(e=>{if(e.defaultPrevented||e.repeat||e.isComposing||Je()||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&&rt(r.value),i&&!s&&Q(i.days))});(0,Z.useEffect)(()=>(globalThis.window.addEventListener(`keydown`,ot,!0),()=>globalThis.window.removeEventListener(`keydown`,ot,!0)),[]);let st=()=>{if(f.current)return;if(s){f.current=!0,l(!0),it().finally(()=>{f.current=!1,l(!1)});return}let e=G(w,void 0,E?`hour`:`day`);(e.sinceDay!==T.sinceDay||e.untilDay!==T.untilDay||e.sinceTime!==T.sinceTime||e.untilTime!==T.untilTime)&&a({days:w,window:e}),f.current=!0,l(!0),ee(e).finally(()=>{f.current=!1,l(!1)})},lt=[...me].filter(([e,t])=>t.connection.phase===`connected`&&t.serverConfig!==null&&(y===null||y.has(e))).map(([e])=>e).sort().join(`,`),ut=(0,Z.useEffectEvent)(()=>{it(!0)});(0,Z.useEffect)(()=>{s&&lt&&ut()},[s,lt]);let dt=L&&I.sinceTime!==void 0&&I.untilTime!==void 0?`${de(I.sinceTime,I.timeZone)} to ${de(I.untilTime,I.timeZone)}`:`${le(I.sinceDay)} to ${le(I.untilDay)}`,mt=(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:y,onSelectionChange:S,showUsageStatus:!s,refreshing:R,isPartial:N,duplicateSources:F.duplicateSources,contractMismatches:F.contractMismatches,onOpenModelPrices:()=>g({})})}),(0,$.jsx)(et,{}),(0,$.jsx)($e,{current:!0,className:`min-w-10`,children:(0,$.jsx)(xr,{hiddenProviders:C,onChange:e=>nt({hiddenProviders:e})})})]}),s?null:(0,$.jsx)(`span`,{className:`hidden min-w-0 truncate text-xs text-muted-foreground 2xl:block`,children:dt}),(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)&&rt(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(w)],disabled:s,onValueChange:e=>{let t=e[0];t&&Q(Number(t))},children:Be.map(e=>(0,$.jsx)(be,{value:String(e.days),title:r(e),children:e.label},e.days))}),(0,$.jsx)(b,{onClick:st,"aria-label":s?`Refresh limits`:`Refresh usage`,"aria-busy":c,disabled:c||!s&&!X,size:`icon-sm`,variant:`ghost`,children:(0,$.jsx)(Ue,{size:`sm`,refreshing:c})})]}),(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)&&rt(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(w),disabled:s,onValueChange:e=>Q(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===w)?.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)(b,{onClick:st,"aria-label":s?`Refresh limits`:`Refresh usage`,"aria-busy":c,disabled:c||!s&&!X,size:`icon-sm`,variant:`ghost`,children:(0,$.jsx)(Ue,{size:`sm`,refreshing:c})})]})]});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:he,children:mt}),(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:y,hiddenProviders:C,now:u,cursorPrompt:ge.length>0?(0,$.jsx)(lr,{environments:ge,onEnabled:()=>{ee(),it(!1,!0)}}):null}):j===null?(0,$.jsx)(Sr,{}):X?(0,$.jsxs)(`div`,{"aria-busy":H.partial,className:`flex flex-col gap-6`,children:[_e.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:M(`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)(x,{tone:`muted`}),"aria-label":`Unpriced usage details`,children:(0,$.jsx)(D,{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`)&&[...me].some(([e,t])=>(y===null||y.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,Le.map(e=>{if(e.kind===`enable`)return(0,$.jsx)(cr,{environmentId:e.environment.environmentId,label:e.environment.label,showEnvironment:A.length>1,onEnabled:()=>{ee(),it(!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=U(t),c=s&&!Ee.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:Ye[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:Ye[t].label}),(0,$.jsx)(`span`,{className:M(`shrink-0 whitespace-nowrap text-2xs text-muted-foreground tabular-nums`,dr(s),c&&`invisible`),children:a})]})]}),(0,$.jsx)(`span`,{className:M(`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:M(`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:De,loadingProviders:Oe,days:xe,daily:F.daily,hours:Ce,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:M(`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:[p],onValueChange:e=>{let t=e[0];(t===`model`||t===`time`)&&m(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))})]}),p===`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:Te.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.`})}):Te.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(U(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:()=>v(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:M(`mt-1.5 h-0.5 max-w-48`,a),children:(0,$.jsx)(`div`,{className:`h-full rounded-full`,style:{width:r>0&&je>0?`max(0.5rem, ${r/je*100}%)`:0,backgroundColor:Ye[e.provider].color}})})]}),(0,$.jsx)(`td`,{className:M(`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:M(`hidden py-2.5 pl-6 sm:table-cell`,a),children:i===null?``:J(i)}),(0,$.jsx)(`td`,{className:M(`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`}),De.map(e=>(0,$.jsx)(`col`,{style:{width:Qe}},e)),(0,$.jsx)(`col`,{style:{width:Qe}}),(0,$.jsx)(`col`,{style:{width:Qe}})]}),(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`}),De.map(e=>(0,$.jsx)(`th`,{className:`py-2 text-right font-normal`,children:Ye[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:we.length===0?(0,$.jsx)(`tr`,{children:(0,$.jsx)(`td`,{colSpan:De.length+3,className:`py-6 text-center text-muted-foreground`,children:`No activity in this window.`})}):we.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?pe(e.hourStart,I.timeZone):le(e.day)}),De.map(t=>(0,$.jsx)(`td`,{className:M(`py-2 text-right text-muted-foreground tabular-nums`,dr(U(t))),children:W(e.byProvider.get(t)?.costUsd??0)},t)),(0,$.jsx)(`td`,{className:M(`py-2 text-right text-foreground tabular-nums`,dr(H.partial)),children:W(e.costUsd)}),(0,$.jsx)(`td`,{className:M(`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))})})})]}),ke!==void 0&&!s?(0,$.jsx)(qn,{model:ke,environments:A,metric:o===`tokens`?`tokens`:`cost`,chartWindow:{days:xe,hours:Ce,resolution:L?`hour`:`day`,timeZone:I.timeZone,referenceTime:I.untilTime},onSetPrice:()=>{v(null),g({model:ke.model})},onClose:()=>v(null)}):null,h?(0,$.jsx)(Xt,{usage:k,initialSelectedEnvironmentIds:y,initialModel:h.model,onOpenChange:e=>{e||g(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=ce(oe.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)(x,{disabled:o,"aria-busy":o,"aria-label":`Enable Cursor usage from ${t}`,onClick:()=>void c(),children:i}):(0,$.jsx)(b,{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)(ve,{children:[(0,$.jsx)(ge,{render:l}),(0,$.jsx)(_e,{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:Ye.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:l.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=Ye[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 M(`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=M(`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:me(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:r,selectedEnvironmentIds:o,onSelectionChange:s,showUsageStatus:l,refreshing:u,isPartial:d,duplicateSources:p,contractMismatches:h,onOpenModelPrices:g}=e,y=o===null,b=y?`All environments`:r.length===1?r[0].label:`${r.length} environments`,S;t[0]!==h||t[1]!==r?(S=r.some(br)||h.length>0,t[0]=h,t[1]=r,t[2]=S):S=t[2];let C=S,w;t[3]===Symbol.for(`react.memo_cache_sentinel`)?(w=(0,$.jsx)(x,{}),t[3]=w):w=t[3];let T;t[4]===b?T=t[5]:(T=(0,$.jsx)(Qe,{children:b}),t[4]=b,t[5]=T);let E;t[6]!==C||t[7]!==l?(E=(0,$.jsx)(`span`,{className:`flex size-3.5 shrink-0 items-center justify-center text-muted-foreground`,children:l&&C?(0,$.jsx)(c,{className:`size-3.5 text-warning-foreground`,"aria-label":`Some environments could not report usage`}):(0,$.jsx)(a,{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]=C,t[7]=l,t[8]=E):E=t[8];let D;t[9]!==T||t[10]!==E?(D=(0,$.jsxs)(F,{render:w,className:`group/usage-environment min-w-0 max-w-full`,children:[T,E]}),t[9]=T,t[10]=E,t[11]=D):D=t[11];let O;t[12]===s?O=t[13]:(O=e=>s(e?null:new Set),t[12]=s,t[13]=O);let k;t[14]!==y||t[15]!==O?(k=(0,$.jsx)(f,{checked:y,closeOnClick:!1,onCheckedChange:O,children:`All environments`}),t[14]=y,t[15]=O,t[16]=k):k=t[16];let A;t[17]===Symbol.for(`react.memo_cache_sentinel`)?(A=(0,$.jsx)(v,{}),t[17]=A):A=t[17];let j;if(t[18]!==n||t[19]!==s||t[20]!==u||t[21]!==o||t[22]!==r||t[23]!==l){let e;t[25]!==n.length||t[26]!==s||t[27]!==u||t[28]!==o||t[29]!==r||t[30]!==l?(e=e=>{let t=o===null||o.has(e.environmentId),i=ut(e,u),a=e.error===null?e.summary!==null&&!bt(e.summary.contractVersion,6)?`Update required`:e.isConnected?i.phase===`loading`?`Scanning…`:i.phase===`stale`?`Refreshing…`:i.phase===`partway`?dt(i.providers,ir):`Ready`:`Connecting…`:`Unavailable`;return(0,$.jsx)(f,{checked:t,closeOnClick:!1,onCheckedChange:t=>{let i=new Set(r.map(yr));t?i.add(e.environmentId):i.delete(e.environmentId),s(i.size===n.length?null:i)},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:M(`shrink-0 text-xs text-muted-foreground`,e.error!==null&&`text-destructive`),children:a}):null]})},e.environmentId)},t[25]=n.length,t[26]=s,t[27]=u,t[28]=o,t[29]=r,t[30]=l,t[31]=e):e=t[31],j=n.map(e),t[18]=n,t[19]=s,t[20]=u,t[21]=o,t[22]=r,t[23]=l,t[24]=j}else j=t[24];let N;t[32]===n.length?N=t[33]:(N=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]=N);let P;t[34]!==d||t[35]!==l?(P=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]=P):P=t[36];let I;t[37]!==h||t[38]!==p||t[39]!==r||t[40]!==l?(I=l?(0,$.jsx)(pr,{environments:r,duplicateSources:p,contractMismatches:h}):null,t[37]=h,t[38]=p,t[39]=r,t[40]=l,t[41]=I):I=t[41];let L;t[42]===Symbol.for(`react.memo_cache_sentinel`)?(L=(0,$.jsx)(v,{}),t[42]=L):L=t[42];let R;t[43]===Symbol.for(`react.memo_cache_sentinel`)?(R=(0,$.jsx)(_,{"aria-hidden":!0}),t[43]=R):R=t[43];let z;t[44]===g?z=t[45]:(z=(0,$.jsxs)(i,{onClick:g,children:[R,`Model prices`]}),t[44]=g,t[45]=z);let B;t[46]!==N||t[47]!==P||t[48]!==I||t[49]!==z||t[50]!==k||t[51]!==j?(B=(0,$.jsxs)(ee,{align:`start`,children:[k,A,j,N,P,I,L,z]}),t[46]=N,t[47]=P,t[48]=I,t[49]=z,t[50]=k,t[51]=j,t[52]=B):B=t[52];let V;return t[53]!==B||t[54]!==D?(V=(0,$.jsxs)(m,{children:[D,B]}),t[53]=B,t[54]=D,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,s=o.length===qe.length?`All providers`:o.length===0?`No providers`:o.length===1?Ye[o[0]].label:`${o.length} providers`,c;t[2]===Symbol.for(`react.memo_cache_sentinel`)?(c=(0,$.jsx)(x,{}),t[2]=c):c=t[2];let l;t[3]===s?l=t[4]:(l=(0,$.jsx)(`span`,{className:`min-w-0 truncate`,children:s}),t[3]=s,t[4]=l);let u;t[5]===Symbol.for(`react.memo_cache_sentinel`)?(u=(0,$.jsx)(a,{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]=u):u=t[5];let d;t[6]===l?d=t[7]:(d=(0,$.jsxs)(F,{render:c,className:`group/usage-provider min-w-0 max-w-full`,children:[l,u]}),t[6]=l,t[7]=d);let p=n.size===0,h;t[8]===r?h=t[9]:(h=e=>r(e?[]:qe),t[8]=r,t[9]=h);let g;t[10]!==p||t[11]!==h?(g=(0,$.jsx)(f,{checked:p,closeOnClick:!1,onCheckedChange:h,children:`All providers`}),t[10]=p,t[11]=h,t[12]=g):g=t[12];let _;t[13]===Symbol.for(`react.memo_cache_sentinel`)?(_=(0,$.jsx)(v,{}),t[13]=_):_=t[13];let y;t[14]!==n||t[15]!==r?(y=qe.map(e=>(0,$.jsx)(f,{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:Ye[e].label})]})},e)),t[14]=n,t[15]=r,t[16]=y):y=t[16];let b;t[17]!==y||t[18]!==g?(b=(0,$.jsxs)(ee,{align:`start`,children:[g,_,y]}),t[17]=y,t[18]=g,t[19]=b):b=t[19];let S;return t[20]!==b||t[21]!==d?(S=(0,$.jsxs)(m,{children:[d,b]}),t[20]=b,t[21]=d,t[22]=S):S=t[22],S}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-DUdXloVo.js.map
1
+ import{a as e,t}from"./react-DH3P2YXY.js";import{n,t as r}from"./jsx-runtime-BnjsACtP.js";import{$n as i,Ad as a,Eb as o,Hy as s,Ld as c,M_ as l,Nb as u,Os as d,Xn as f,Xy as p,Yn as m,Yp as h,Zo as g,_m as _,ar as v,as as y,dr as b,fr as x,im as S,js as C,ks as w,ob as T,ps as E,qf as D,rh as O,rl as k,rs as A,sv as j,t as M,tE as N,tr as ee,ts as P,ur as F}from"./utils-DhUt689t.js";import{B as I,L,W as R,q as z}from"./runtime-OeWFs5Hf.js";import{a as B,c as V,o as te,s as ne,t as re}from"./select-D_zHR42Y.js";import{t as ie}from"./useNavigateBack-C52nbvbb.js";import{rt as ae}from"./useSettings-gPlpTIWi.js";import{f as oe,s as se}from"./server-6nKYyc8r.js";import{n as H,t as U}from"./session-BxUdP61p.js";import{t as ce}from"./use-atom-command-vqjL7n-x.js";import{a as le,c as ue,d as W,f as G,i as de,l as K,n as fe,o as pe,r as q,s as J,t as Y,u as me}from"./usageFormat-ByjmRjTe.js";import{t as he}from"./env-wK1YYxA8.js";import{a as ge,n as _e,t as ve}from"./tooltip-CY3W5y-f.js";import{t as X}from"./skeleton-BcLPbojY.js";import{n as ye,t as be}from"./toggle-group-CYKsfBbD.js";import{t as xe}from"./input-BYd74ook.js";import{t as Se}from"./scroll-area-BNQKEZbp.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-BRtKKGzk.js";import{o as Ae}from"./sidebar-CHDwV4Ca.js";import{t as je}from"./observeResize-DSyLC8QK.js";import{y as Me}from"./keybindings-B_kRk5Fi.js";import{i as Ne,o as Pe,t as Fe}from"./popover-BjUpdrKu.js";import{S as Ie,n as Le,t as Re}from"./ChatGptUsageButton-DU3PVHJW.js";import{t as ze}from"./WorkspacePageContainer-LYv_7Qc0.js";import{n as Be,r as Ve,t as He}from"./usageShortcuts-DOWm0Vo9.js";import{Oa as Ue,Ti as We,cr as Ge,dr as Ke,lr as qe,qr as Je,ur as Ye,vi as Xe}from"./main-VfCRP294.js";import{t as Ze}from"./WorkspacePageHeader-B_0ute56.js";import{i as Qe,n as $e,r as et,t as tt}from"./WorkspaceBreadcrumb-_zND61qF.js";import{t as nt}from"./usageAccess-CCSxXl9X.js";var Z=e(t(),1),Q=n(),rt=o(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=A(e=>y(t=>{let n=JSON.parse(e),r=t(ae.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:N(d(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(oe.usageSummary({environmentId:e,input:n})),l=N(d(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(oe.providersValueAtom(e)))})}return i}).pipe(E(`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,o;r[0]!==e.resolution||r[1]!==e.sinceDay||r[2]!==e.sinceTime||r[3]!==e.timeZone||r[4]!==e.untilDay||r[5]!==e.untilTime?(o=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]=o):o=r[6];let s=o,c;r[7]===s?c=r[8]:(c=Ct(s),r[7]=s,r[8]=c);let l=P(c),u;r[9]!==l||r[10]!==i?(u=i===null?l:l.filter(e=>i.has(e.environmentId)),r[9]=l,r[10]=i,r[11]=u):u=r[11];let d=u,f;r[12]!==d||r[13]!==s?(f=e=>lt({registry:g,server:oe,presentations:ae,environmentIds:d.filter(jt).map(At),input:e??JSON.parse(s)}),r[12]=d,r[13]=s,r[14]=f):f=r[14];let p=f,m;r[15]!==a||r[16]!==d?(m=wt(Et(d,a)),r[15]=a,r[16]=d,r[17]=m):m=r[17];let h=m,_;r[18]===d?_=r[19]:(_=d.filter(kt),r[18]=d,r[19]=_);let v=_.length,y;r[20]===d?y=r[21]:(y=d.filter(Ot),r[20]=d,r[21]=y);let b=y.length,x=v===0&&b>0,[S,C]=(0,Z.useState)(null);v>0&&(S?.merged!==h||S.window!==e||S.selection!==i||S.hidden!==a)&&C({window:e,merged:h,selection:i,hidden:a});let w=S?.selection===i&&S.hidden===a?S:null,T;r[22]!==v||r[23]!==e||r[24]!==x||r[25]!==w||r[26]!==h?(T=v>0?{window:e,merged:h}:w??(x?null:{window:e,merged:h}),r[22]=v,r[23]=e,r[24]=x,r[25]=w,r[26]=h,r[27]=T):T=r[27];let E=T,D=v>0&&b>0,O;return r[28]!==l||r[29]!==x||r[30]!==h||r[31]!==p||r[32]!==d||r[33]!==E||r[34]!==D?(O={merged:h,environments:l,selectedEnvironments:d,isPending:x,shown:E,isPartial:D,refresh:p},r[28]=l,r[29]=x,r[30]=h,r[31]=p,r[32]=d,r[33]=E,r[34]=D,r[35]=O):O=r[35],O}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&&H(e.environmentId,`diagnostics:read`)}var $=e(r(),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=M(`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=M(`[&_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=M(`[&_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=M(`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=M(`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=M(`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=y(e=>[...e(ae.presentationsAtom)].map(([t,n])=>{let r=e(oe.settingsValueAtom(t)),i=e(U.sessionStateAtom(t)),a=N(d(i)),o=i._tag===`Failure`?`denied`:a===null?i.waiting?`pending`:`denied`:j(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,s=P(Yt),[c,l]=(0,Z.useState)(r),u;if(t[0]!==s||t[1]!==c){let e;t[3]===c?e=t[4]:(e=e=>c===null||c.has(e.environmentId),t[3]=c,t[4]=e),u=s.filter(e),t[0]=s,t[1]=c,t[2]=u}else u=t[2];let d=u,p;t[5]!==i||t[6]!==d?(p=()=>i===void 0||d.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]=d,t[7]=p):p=t[7];let[g,_]=(0,Z.useState)(p),[y,x]=(0,Z.useState)(!1),[C,w]=(0,Z.useState)(null),T=(0,Z.useRef)(null),E=(0,Z.useRef)(0),D;t[8]===Symbol.for(`react.memo_cache_sentinel`)?(D={reportFailure:!1},t[8]=D):D=t[8];let k=ce(oe.updateSettings,D),A,j,N,I,L,R,z,B,V,te,ne,re,ie,ae,se;if(t[9]!==C||t[10]!==g||t[11]!==s||t[12]!==o||t[13]!==y||t[14]!==d||t[15]!==c||t[16]!==k||t[17]!==n){let e=[...new Set(d.flatMap(mn))].sort(),r;t[33]===d?r=t[34]:(r=e=>d.some(t=>t.environmentId===e.environmentId),t[33]=d,t[34]=r);let i=[...new Set([...e,...n.filter(r).flatMap(fn)])].sort(),u;t[35]===g?u=t[36]:(u=new Set(g.filter(dn).map(un)),t[35]=g,t[36]=u);let p=u,D;t[37]!==C||t[38]!==p?(D=e=>C===null||!p.has(e),t[37]=C,t[38]=p,t[39]=D):D=t[39];let P=[...e.filter(D).map(e=>g.find(t=>t.id===`model:${e}`)??{id:`model:${e}`,model:e,isNew:!1,values:{}}),...g.filter(ln)],oe=g.filter(cn);R=qt(d,oe);for(let t of oe)t.isNew&&(t.model.trim()===``?R.set(t.id,`Enter a model ID.`):C===null&&(e.includes(t.model.trim())||g.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=oe.length>0,I=d.length===1?d[0].label:`${d.length} environments`;let ce=c===null?`All environments`:I,le;t[40]===Symbol.for(`react.memo_cache_sentinel`)?(le=()=>{_([]),w(null)},t[40]=le):le=t[40],L=le;let ue;t[41]===Symbol.for(`react.memo_cache_sentinel`)?(ue=e=>{l(e),w(null)},t[41]=ue):ue=t[41];let W=ue,G;t[42]===Symbol.for(`react.memo_cache_sentinel`)?(G=e=>{_(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 de=G,K=sn,fe;t[43]===Symbol.for(`react.memo_cache_sentinel`)?(fe=e=>{!e.isNew&&Object.keys(e.values).length===0&&e.alias===void 0?_(t=>t.filter(t=>t.id!==e.id)):de(e)},t[43]=fe):fe=t[43];let pe=fe,q;t[44]===d?q=t[45]:(q=(e,t,n)=>{let r={...e.values,[t]:n},i=Gt(d,e.model,t);K(e,i,n)&&delete r[t],pe({...e,values:r})},t[44]=d,t[45]=q);let J=q,Y;t[46]===d?Y=t[47]:(Y=(e,t)=>{let{alias:n,...r}=e,i=Wt(d,e.model);pe(K(e,i,t)?r:{...r,alias:t})},t[46]=d,t[47]=Y);let me=Y;V=async e=>{let t=e!==void 0&&e;if(y)return;let n=t?z:d,r=t&&C?C.drafts:oe;if(n.length===0||r.length===0)return;let i=n.map(e=>s.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)]));x(!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=>H(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)})}}),x(!1),o||_([])},N=ke,ae=!0,t[48]!==o||t[49]!==y?(se=e=>{y||o(e)},t[48]=o,t[49]=y,t[50]=se):se=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 he;t[52]===Symbol.for(`react.memo_cache_sentinel`)?(he=(0,$.jsx)(Xe,{id:`usage-prices-apply-label`,className:`shrink-0`,children:`Apply to`}),t[52]=he):he=t[52];let X;t[53]===Symbol.for(`react.memo_cache_sentinel`)?(X=(0,$.jsx)(b,{variant:`outline`,size:`sm`,className:`min-w-0`}),t[53]=X):X=t[53];let ye=y||B,be;t[54]===ce?be=t[55]:(be=(0,$.jsx)(`span`,{id:`usage-prices-selection`,className:`truncate`,children:ce}),t[54]=ce,t[55]=be);let Se;t[56]===Symbol.for(`react.memo_cache_sentinel`)?(Se=(0,$.jsx)(a,{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)(F,{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=c===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)(f,{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)(v,{}),t[63]=Ne):Ne=t[63];let Pe;if(t[64]!==s||t[65]!==d||t[66]!==c){let e;t[68]!==s.length||t[69]!==d||t[70]!==c?(e=e=>(0,$.jsx)(f,{checked:c===null||c.has(e.environmentId),closeOnClick:!1,onCheckedChange:t=>{let n=new Set(d.map(rn));t?n.add(e.environmentId):n.delete(e.environmentId),W(n.size===s.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]=s.length,t[69]=d,t[70]=c,t[71]=e):e=t[71],Pe=s.map(e),t[64]=s,t[65]=d,t[66]=c,t[67]=Pe}else Pe=t[67];let Fe;t[72]!==Me||t[73]!==Pe?(Fe=(0,$.jsxs)(ee,{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:[he,(0,$.jsxs)(m,{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=d.length===0?(0,$.jsx)(`p`,{className:`text-sm text-muted-foreground`,children:s.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)(b,{size:`icon-xs`,variant:`ghost`,"aria-label":`Add model price`,disabled:U,onClick:()=>{E.current+=1;let e=`new:${E.current}`;T.current=e,de({id:e,model:``,isNew:!0,values:{}})},children:(0,$.jsx)(h,{"aria-hidden":!0})})})]})}),(0,$.jsx)(Pt,{children:P.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:d.some(en)?`Some environment prices are unavailable.`:`No custom prices or mappings. Add a row to set one.`})})}):P.map(e=>{let t=Wt(d,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=>de({...e,model:t.target.value})}):(0,$.jsx)(`span`,{className:M(`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=>me(e,t.target.value)})}),e.removed?null:n===``?Rt.map(t=>{let n=Gt(d,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)(ve,{children:[(0,$.jsx)(ge,{render:(0,$.jsx)(b,{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?_(t=>t.filter(t=>t.id!==e.id)):e.removed?pe({...e,removed:!1}):de({...e,removed:!0})},children:e.isNew?(0,$.jsx)(O,{"aria-hidden":!0}):(0,$.jsx)(S,{"aria-hidden":!0})}),(0,$.jsx)(_e,{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=>d.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.`,d.length>1?` Mixed cells keep each environment’s rate until you edit them.`:``]})]}),t[9]=C,t[10]=g,t[11]=s,t[12]=o,t[13]=y,t[14]=d,t[15]=c,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]=ae,t[32]=se}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],ae=t[31],se=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 le;t[83]!==A||t[84]!==U||t[85]!==te||t[86]!==ne?(le=(0,$.jsxs)(A,{children:[te,ne,U]}),t[83]=A,t[84]=U,t[85]=te,t[86]=ne,t[87]=le):le=t[87];let ue=B?`Changes apply to ${I}`:``,W;t[88]===ue?W=t[89]:(W=(0,$.jsx)(`span`,{className:`text-xs text-muted-foreground`,children:ue}),t[88]=ue,t[89]=W);let G;t[90]!==L||t[91]!==z.length||t[92]!==B||t[93]!==y?(G=B?(0,$.jsx)(b,{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 de=y||!B&&z.length===0||z.length===0&&(R.size>0||d.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 fe=y?`Saving…`:z.length>0?`Retry failed saves`:`Save changes`,pe;t[98]!==de||t[99]!==K||t[100]!==fe?(pe=(0,$.jsx)(b,{disabled:de,onClick:K,children:fe}),t[98]=de,t[99]=K,t[100]=fe,t[101]=pe):pe=t[101];let q;t[102]!==G||t[103]!==pe?(q=(0,$.jsxs)(`div`,{className:`flex w-full flex-wrap justify-end gap-2 sm:w-auto`,children:[G,pe]}),t[102]=G,t[103]=pe,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]!==le||t[110]!==J||t[111]!==re||t[112]!==ie?(Y=(0,$.jsxs)(j,{className:re,children:[ie,le,J]}),t[108]=j,t[109]=le,t[110]=J,t[111]=re,t[112]=ie,t[113]=Y):Y=t[113];let me;return t[114]!==N||t[115]!==Y||t[116]!==ae||t[117]!==se?(me=(0,$.jsx)(N,{open:ae,onOpenChange:se,children:Y}),t[114]=N,t[115]=Y,t[116]=ae,t[117]=se,t[118]=me):me=t[118],me}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,N,ee;t[13]===g?(N=t[14],ee=t[15]):(N=()=>{if(g===null)return;j();let e=v.current,t=y.current;if(e!==null&&t!==null)return je([e,t],j)},ee=[g,j],t[13]=g,t[14]=N,t[15]=ee),(0,Z.useLayoutEffect)(N,ee);let P;t[16]===p.length?P=t[17]:(P=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]=P);let F=P,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`?pe(e,d):le(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?ue(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 ae;t[38]===Symbol.for(`react.memo_cache_sentinel`)?(ae=()=>{b.current=null,_(null)},t[38]=ae):ae=t[38];let oe=`${u===`hour`?`Hourly`:`Daily`} ${c===`tokens`?`processed tokens`:`cost`} by provider`,se;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),se=C.ticks.map(e),t[39]=C.ticks,t[40]=D,t[41]=se}else se=t[41];let H;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:Ye[t].color,fillOpacity:.12},t)},t[46]=e):e=t[46],H=w.map(e),t[44]=w,t[45]=H}else H=t[45];let U;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:Ye[t].color,strokeWidth:2,vectorEffect:`non-scaling-stroke`},t)},t[49]=e):e=t[49],U=w.map(e),t[47]=w,t[48]=U}else U=t[48];let ce;t[50]!==g||t[51]!==T?(ce=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]=ce):ce=t[52];let G;t[53]!==oe||t[54]!==se||t[55]!==H||t[56]!==U||t[57]!==ce?(G=(0,$.jsxs)(`svg`,{className:`h-full w-full`,viewBox:`0 0 ${hn} ${gn}`,preserveAspectRatio:`none`,role:`img`,"aria-label":oe,children:[se,H,U,ce]}),t[53]=oe,t[54]=se,t[55]=H,t[56]=U,t[57]=ce,t[58]=G):G=t[58];let de;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?(de=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}=Ye[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:M(`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:M(`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]=de):de=t[67];let fe;t[68]!==F||t[69]!==G||t[70]!==de?(fe=(0,$.jsxs)(`div`,{ref:v,className:`relative h-56 flex-1`,onMouseMove:F,onMouseLeave:ae,children:[G,de]}),t[68]=F,t[69]=G,t[70]=de,t[71]=fe):fe=t[71];let q;t[72]!==ie||t[73]!==fe?(q=(0,$.jsxs)(`div`,{className:`flex gap-2`,children:[ie,fe]}),t[72]=ie,t[73]=fe,t[74]=q):q=t[74];let J;t[75]!==V||t[76]!==p[0]?(J=p[0]===void 0?``:V(p[0]),t[75]=V,t[76]=p[0],t[77]=J):J=t[77];let Y;t[78]===J?Y=t[79]:(Y=(0,$.jsx)(`span`,{children:J}),t[78]=J,t[79]=Y);let me;t[80]!==V||t[81]!==p?(me=p[Math.floor(p.length/2)]===void 0?``:V(p[Math.floor(p.length/2)]??``),t[80]=V,t[81]=p,t[82]=me):me=t[82];let he;t[83]===me?he=t[84]:(he=(0,$.jsx)(`span`,{children:me}),t[83]=me,t[84]=he);let ge;t[85]!==V||t[86]!==p?(ge=p[p.length-1]===void 0?``:V(p[p.length-1]??``),t[85]=V,t[86]=p,t[87]=ge):ge=t[87];let _e;t[88]===ge?_e=t[89]:(_e=(0,$.jsx)(`span`,{children:ge}),t[88]=ge,t[89]=_e);let ve;t[90]!==Y||t[91]!==he||t[92]!==_e?(ve=(0,$.jsxs)(`div`,{className:`flex justify-between pl-16 text-3xs text-muted-foreground uppercase`,children:[Y,he,_e]}),t[90]=Y,t[91]=he,t[92]=_e,t[93]=ve):ve=t[93];let X;return t[94]!==q||t[95]!==ve?(X=(0,$.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[q,ve]}),t[94]=q,t[95]=ve,t[96]=X):X=t[96],X}function Mn(e){return M(`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)(ve,{children:[(0,$.jsx)(ge,{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)(_e,{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=Ye[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 x;t[27]===n.model?x=t[28]:(x=(0,$.jsx)(we,{children:n.model}),t[27]=n.model,t[28]=x);let S;t[29]!==y||t[30]!==x?(S=(0,$.jsxs)(`div`,{className:`flex items-center gap-2`,children:[y,x]}),t[29]=y,t[30]=x,t[31]=S):S=t[31];let C;t[32]!==h||t[33]!==n.costShare?(C=h?``:` · ${J(n.costShare)} of cost`,t[32]=h,t[33]=n.costShare,t[34]=C):C=t[34];let w;t[35]!==p.label||t[36]!==C?(w=(0,$.jsxs)(De,{children:[p.label,C]}),t[35]=p.label,t[36]=C,t[37]=w):w=t[37];let T;t[38]!==w||t[39]!==S?(T=(0,$.jsxs)(Ce,{children:[S,w]}),t[38]=w,t[39]=S,t[40]=T):T=t[40];let E;t[41]===_?E=t[42]:(E=(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]=E);let D=h?`tokens`:i,O;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]!==D||t[50]!==u.daily||t[51]!==u.hourly?(O=(0,$.jsx)(jn,{providers:f,days:a.days,daily:u.daily,hours:a.hours,hourly:u.hourly,metric:D,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]=D,t[50]=u.daily,t[51]=u.hourly,t[52]=O):O=t[52];let k;t[53]!==h||t[54]!==u.categoryCost?(k=h?null:(0,$.jsx)(Fn,{label:`Cost by type`,segments:Wn(u.categoryCost),format:W}),t[53]=h,t[54]=u.categoryCost,t[55]=k):k=t[55];let A;t[56]===n.tokens?A=t[57]:(A=Gn(n.tokens),t[56]=n.tokens,t[57]=A);let j;t[58]===A?j=t[59]:(j=(0,$.jsx)(Fn,{label:`Tokens by type`,segments:A,format:K}),t[58]=A,t[59]=j);let M;t[60]===u.speedCost?M=t[61]:(M=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]=M);let N;t[62]!==k||t[63]!==j||t[64]!==M?(N=(0,$.jsxs)(`div`,{className:`grid gap-x-10 gap-y-8 sm:grid-cols-2`,children:[k,j,M]}),t[62]=k,t[63]=j,t[64]=M,t[65]=N):N=t[65];let ee;t[66]!==E||t[67]!==O||t[68]!==N?(ee=(0,$.jsx)(Ee,{children:(0,$.jsxs)(`div`,{className:`flex flex-col gap-8`,children:[E,O,N]})}),t[66]=E,t[67]=O,t[68]=N,t[69]=ee):ee=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)(b,{onClick:o,children:`Set price`})]}):null,t[70]=n.unpricedTokens,t[71]=o,t[72]=P):P=t[72];let F;t[73]!==T||t[74]!==ee||t[75]!==P?(F=(0,$.jsxs)(Oe,{className:`max-w-3xl`,children:[T,ee,P]}),t[73]=T,t[74]=ee,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=`p4code:usage-page-preferences:v1`,Qn=T({metric:p([`cost`,`tokens`,`limits`]),windowDays:p([1,7,30,90]),hiddenProviders:u(s(k))}),$n={metric:`limits`,windowDays:30};function er(){try{return w(Zn,Qn)??$n}catch(e){return console.error(`Could not read Usage page preferences.`,e),$n}}function tr(e){try{C(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=>Ye[e].label;function ar(){let[e,t]=(0,Z.useState)(er);ie();let n=P(se),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`,[c,l]=(0,Z.useState)(!1),[u,d]=(0,Z.useState)(()=>Date.now()),f=(0,Z.useRef)(!1),[p,m]=(0,Z.useState)(`model`),[h,g]=(0,Z.useState)(null),[_,v]=(0,Z.useState)(null),[y,S]=(0,Z.useState)(null),C=(0,Z.useMemo)(()=>new Set(e.hiddenProviders),[e.hiddenProviders]),{days:w,window:T}=i,E=w===1,{merged:O,environments:k,selectedEnvironments:A,shown:j,isPartial:N,refresh:ee}=Dt(T,y,C),F=j?.merged??O,I=j?.window??T,L=I.resolution===`hour`,R=c&&!s,z=j!==null&&j.window!==T,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]),U=e=>H.everyProvider||H.providers.has(e),ue=P(ae.presentationsAtom),me=(0,Z.useMemo)(()=>new Map([...ue].filter(([,e])=>e.entry.enabled&&e.entry.unsupportedReason===void 0)),[ue]),ge=C.has(`cursor`)?[]:at(A),_e=[...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]:[])??[]))],ve=ce(oe.refreshProviders,{reportFailure:!1}),X=A.some(e=>e.canReadDiagnostics),xe=(0,Z.useMemo)(()=>Y(I.sinceDay,I.untilDay),[I.sinceDay,I.untilDay]),Ce=(0,Z.useMemo)(()=>I.sinceTime===void 0||I.untilTime===void 0?[]:fe(I.sinceTime,I.untilTime),[I.sinceTime,I.untilTime]),we=(0,Z.useMemo)(()=>(L?F.hourly:F.daily).toReversed(),[L,F.daily,F.hourly]),Te=(0,Z.useMemo)(()=>p===`model`&&o===`tokens`?Rn(F.models):F.models,[p,F.models,o]),Ee=(0,Z.useMemo)(()=>Ke(F.providers),[F.providers]),De=(0,Z.useMemo)(()=>qe.filter(e=>Ee.includes(e)||H.providers.has(e)),[H.providers,Ee]),Oe=(0,Z.useMemo)(()=>new Set(De.filter(e=>H.everyProvider||H.providers.has(e))),[De,H.everyProvider,H.providers]),ke=_===null?void 0:F.models.find(e=>`${e.provider}:${e.model}`===_),je=Te.reduce((e,t)=>Math.max(e,o===`tokens`?t.totalTokens:t.costUsd),0),Le=De.map(e=>({kind:`usage`,provider:e})),Xe=Math.max(De.indexOf(`codex`),De.indexOf(`claude`))+1;Le.splice(Xe,0,...ge.map(e=>({kind:`enable`,environment:e})));let Qe=`${60/(De.length+2)}%`,nt=n=>{let r={...e,...n};t(r),tr(r)},Q=e=>{rr(e)&&(nt({windowDays:e}),a({days:e,window:G(e,void 0,e===1?`hour`:`day`)}))},rt=e=>{e===`limits`&&d(Date.now()),nt({metric:e})},it=async(e=!1,t=!1)=>{try{await Promise.all(Array.from(me,([n,r])=>{if((y===null||y.has(n))&&r.connection.phase===`connected`&&r.serverConfig!==null)return ct(n,()=>ve({environmentId:n,input:{}}),e,t)}))}finally{d(Date.now())}},ot=(0,Z.useEffectEvent)(e=>{if(e.defaultPrevented||e.repeat||e.isComposing||Je()||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&&rt(r.value),i&&!s&&Q(i.days))});(0,Z.useEffect)(()=>(globalThis.window.addEventListener(`keydown`,ot,!0),()=>globalThis.window.removeEventListener(`keydown`,ot,!0)),[]);let st=()=>{if(f.current)return;if(s){f.current=!0,l(!0),it().finally(()=>{f.current=!1,l(!1)});return}let e=G(w,void 0,E?`hour`:`day`);(e.sinceDay!==T.sinceDay||e.untilDay!==T.untilDay||e.sinceTime!==T.sinceTime||e.untilTime!==T.untilTime)&&a({days:w,window:e}),f.current=!0,l(!0),ee(e).finally(()=>{f.current=!1,l(!1)})},lt=[...me].filter(([e,t])=>t.connection.phase===`connected`&&t.serverConfig!==null&&(y===null||y.has(e))).map(([e])=>e).sort().join(`,`),ut=(0,Z.useEffectEvent)(()=>{it(!0)});(0,Z.useEffect)(()=>{s&&lt&&ut()},[s,lt]);let dt=L&&I.sinceTime!==void 0&&I.untilTime!==void 0?`${de(I.sinceTime,I.timeZone)} to ${de(I.untilTime,I.timeZone)}`:`${le(I.sinceDay)} to ${le(I.untilDay)}`,mt=(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:y,onSelectionChange:S,showUsageStatus:!s,refreshing:R,isPartial:N,duplicateSources:F.duplicateSources,contractMismatches:F.contractMismatches,onOpenModelPrices:()=>g({})})}),(0,$.jsx)(et,{}),(0,$.jsx)($e,{current:!0,className:`min-w-10`,children:(0,$.jsx)(xr,{hiddenProviders:C,onChange:e=>nt({hiddenProviders:e})})})]}),s?null:(0,$.jsx)(`span`,{className:`hidden min-w-0 truncate text-xs text-muted-foreground 2xl:block`,children:dt}),(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)&&rt(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(w)],disabled:s,onValueChange:e=>{let t=e[0];t&&Q(Number(t))},children:Be.map(e=>(0,$.jsx)(be,{value:String(e.days),title:r(e),children:e.label},e.days))}),(0,$.jsx)(b,{onClick:st,"aria-label":s?`Refresh limits`:`Refresh usage`,"aria-busy":c,disabled:c||!s&&!X,size:`icon-sm`,variant:`ghost`,children:(0,$.jsx)(Ue,{size:`sm`,refreshing:c})})]}),(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)&&rt(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(w),disabled:s,onValueChange:e=>Q(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===w)?.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)(b,{onClick:st,"aria-label":s?`Refresh limits`:`Refresh usage`,"aria-busy":c,disabled:c||!s&&!X,size:`icon-sm`,variant:`ghost`,children:(0,$.jsx)(Ue,{size:`sm`,refreshing:c})})]})]});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:he,children:mt}),(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:y,hiddenProviders:C,now:u,cursorPrompt:ge.length>0?(0,$.jsx)(lr,{environments:ge,onEnabled:()=>{ee(),it(!1,!0)}}):null}):j===null?(0,$.jsx)(Sr,{}):X?(0,$.jsxs)(`div`,{"aria-busy":H.partial,className:`flex flex-col gap-6`,children:[_e.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:M(`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)(x,{tone:`muted`}),"aria-label":`Unpriced usage details`,children:(0,$.jsx)(D,{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`)&&[...me].some(([e,t])=>(y===null||y.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,Le.map(e=>{if(e.kind===`enable`)return(0,$.jsx)(cr,{environmentId:e.environment.environmentId,label:e.environment.label,showEnvironment:A.length>1,onEnabled:()=>{ee(),it(!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=U(t),c=s&&!Ee.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:Ye[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:Ye[t].label}),(0,$.jsx)(`span`,{className:M(`shrink-0 whitespace-nowrap text-2xs text-muted-foreground tabular-nums`,dr(s),c&&`invisible`),children:a})]})]}),(0,$.jsx)(`span`,{className:M(`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:M(`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:De,loadingProviders:Oe,days:xe,daily:F.daily,hours:Ce,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:M(`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:[p],onValueChange:e=>{let t=e[0];(t===`model`||t===`time`)&&m(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))})]}),p===`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:Te.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.`})}):Te.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(U(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:()=>v(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:M(`mt-1.5 h-0.5 max-w-48`,a),children:(0,$.jsx)(`div`,{className:`h-full rounded-full`,style:{width:r>0&&je>0?`max(0.5rem, ${r/je*100}%)`:0,backgroundColor:Ye[e.provider].color}})})]}),(0,$.jsx)(`td`,{className:M(`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:M(`hidden py-2.5 pl-6 sm:table-cell`,a),children:i===null?``:J(i)}),(0,$.jsx)(`td`,{className:M(`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`}),De.map(e=>(0,$.jsx)(`col`,{style:{width:Qe}},e)),(0,$.jsx)(`col`,{style:{width:Qe}}),(0,$.jsx)(`col`,{style:{width:Qe}})]}),(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`}),De.map(e=>(0,$.jsx)(`th`,{className:`py-2 text-right font-normal`,children:Ye[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:we.length===0?(0,$.jsx)(`tr`,{children:(0,$.jsx)(`td`,{colSpan:De.length+3,className:`py-6 text-center text-muted-foreground`,children:`No activity in this window.`})}):we.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?pe(e.hourStart,I.timeZone):le(e.day)}),De.map(t=>(0,$.jsx)(`td`,{className:M(`py-2 text-right text-muted-foreground tabular-nums`,dr(U(t))),children:W(e.byProvider.get(t)?.costUsd??0)},t)),(0,$.jsx)(`td`,{className:M(`py-2 text-right text-foreground tabular-nums`,dr(H.partial)),children:W(e.costUsd)}),(0,$.jsx)(`td`,{className:M(`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))})})})]}),ke!==void 0&&!s?(0,$.jsx)(qn,{model:ke,environments:A,metric:o===`tokens`?`tokens`:`cost`,chartWindow:{days:xe,hours:Ce,resolution:L?`hour`:`day`,timeZone:I.timeZone,referenceTime:I.untilTime},onSetPrice:()=>{v(null),g({model:ke.model})},onClose:()=>v(null)}):null,h?(0,$.jsx)(Xt,{usage:k,initialSelectedEnvironmentIds:y,initialModel:h.model,onOpenChange:e=>{e||g(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=ce(oe.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)(x,{disabled:o,"aria-busy":o,"aria-label":`Enable Cursor usage from ${t}`,onClick:()=>void c(),children:i}):(0,$.jsx)(b,{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)(ve,{children:[(0,$.jsx)(ge,{render:l}),(0,$.jsx)(_e,{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:Ye.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:l.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=Ye[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 M(`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=M(`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:me(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:r,selectedEnvironmentIds:o,onSelectionChange:s,showUsageStatus:l,refreshing:u,isPartial:d,duplicateSources:p,contractMismatches:h,onOpenModelPrices:g}=e,y=o===null,b=y?`All environments`:r.length===1?r[0].label:`${r.length} environments`,S;t[0]!==h||t[1]!==r?(S=r.some(br)||h.length>0,t[0]=h,t[1]=r,t[2]=S):S=t[2];let C=S,w;t[3]===Symbol.for(`react.memo_cache_sentinel`)?(w=(0,$.jsx)(x,{}),t[3]=w):w=t[3];let T;t[4]===b?T=t[5]:(T=(0,$.jsx)(Qe,{children:b}),t[4]=b,t[5]=T);let E;t[6]!==C||t[7]!==l?(E=(0,$.jsx)(`span`,{className:`flex size-3.5 shrink-0 items-center justify-center text-muted-foreground`,children:l&&C?(0,$.jsx)(c,{className:`size-3.5 text-warning-foreground`,"aria-label":`Some environments could not report usage`}):(0,$.jsx)(a,{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]=C,t[7]=l,t[8]=E):E=t[8];let D;t[9]!==T||t[10]!==E?(D=(0,$.jsxs)(F,{render:w,className:`group/usage-environment min-w-0 max-w-full`,children:[T,E]}),t[9]=T,t[10]=E,t[11]=D):D=t[11];let O;t[12]===s?O=t[13]:(O=e=>s(e?null:new Set),t[12]=s,t[13]=O);let k;t[14]!==y||t[15]!==O?(k=(0,$.jsx)(f,{checked:y,closeOnClick:!1,onCheckedChange:O,children:`All environments`}),t[14]=y,t[15]=O,t[16]=k):k=t[16];let A;t[17]===Symbol.for(`react.memo_cache_sentinel`)?(A=(0,$.jsx)(v,{}),t[17]=A):A=t[17];let j;if(t[18]!==n||t[19]!==s||t[20]!==u||t[21]!==o||t[22]!==r||t[23]!==l){let e;t[25]!==n.length||t[26]!==s||t[27]!==u||t[28]!==o||t[29]!==r||t[30]!==l?(e=e=>{let t=o===null||o.has(e.environmentId),i=ut(e,u),a=e.error===null?e.summary!==null&&!bt(e.summary.contractVersion,6)?`Update required`:e.isConnected?i.phase===`loading`?`Scanning…`:i.phase===`stale`?`Refreshing…`:i.phase===`partway`?dt(i.providers,ir):`Ready`:`Connecting…`:`Unavailable`;return(0,$.jsx)(f,{checked:t,closeOnClick:!1,onCheckedChange:t=>{let i=new Set(r.map(yr));t?i.add(e.environmentId):i.delete(e.environmentId),s(i.size===n.length?null:i)},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:M(`shrink-0 text-xs text-muted-foreground`,e.error!==null&&`text-destructive`),children:a}):null]})},e.environmentId)},t[25]=n.length,t[26]=s,t[27]=u,t[28]=o,t[29]=r,t[30]=l,t[31]=e):e=t[31],j=n.map(e),t[18]=n,t[19]=s,t[20]=u,t[21]=o,t[22]=r,t[23]=l,t[24]=j}else j=t[24];let N;t[32]===n.length?N=t[33]:(N=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]=N);let P;t[34]!==d||t[35]!==l?(P=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]=P):P=t[36];let I;t[37]!==h||t[38]!==p||t[39]!==r||t[40]!==l?(I=l?(0,$.jsx)(pr,{environments:r,duplicateSources:p,contractMismatches:h}):null,t[37]=h,t[38]=p,t[39]=r,t[40]=l,t[41]=I):I=t[41];let L;t[42]===Symbol.for(`react.memo_cache_sentinel`)?(L=(0,$.jsx)(v,{}),t[42]=L):L=t[42];let R;t[43]===Symbol.for(`react.memo_cache_sentinel`)?(R=(0,$.jsx)(_,{"aria-hidden":!0}),t[43]=R):R=t[43];let z;t[44]===g?z=t[45]:(z=(0,$.jsxs)(i,{onClick:g,children:[R,`Model prices`]}),t[44]=g,t[45]=z);let B;t[46]!==N||t[47]!==P||t[48]!==I||t[49]!==z||t[50]!==k||t[51]!==j?(B=(0,$.jsxs)(ee,{align:`start`,children:[k,A,j,N,P,I,L,z]}),t[46]=N,t[47]=P,t[48]=I,t[49]=z,t[50]=k,t[51]=j,t[52]=B):B=t[52];let V;return t[53]!==B||t[54]!==D?(V=(0,$.jsxs)(m,{children:[D,B]}),t[53]=B,t[54]=D,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,s=o.length===qe.length?`All providers`:o.length===0?`No providers`:o.length===1?Ye[o[0]].label:`${o.length} providers`,c;t[2]===Symbol.for(`react.memo_cache_sentinel`)?(c=(0,$.jsx)(x,{}),t[2]=c):c=t[2];let l;t[3]===s?l=t[4]:(l=(0,$.jsx)(`span`,{className:`min-w-0 truncate`,children:s}),t[3]=s,t[4]=l);let u;t[5]===Symbol.for(`react.memo_cache_sentinel`)?(u=(0,$.jsx)(a,{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]=u):u=t[5];let d;t[6]===l?d=t[7]:(d=(0,$.jsxs)(F,{render:c,className:`group/usage-provider min-w-0 max-w-full`,children:[l,u]}),t[6]=l,t[7]=d);let p=n.size===0,h;t[8]===r?h=t[9]:(h=e=>r(e?[]:qe),t[8]=r,t[9]=h);let g;t[10]!==p||t[11]!==h?(g=(0,$.jsx)(f,{checked:p,closeOnClick:!1,onCheckedChange:h,children:`All providers`}),t[10]=p,t[11]=h,t[12]=g):g=t[12];let _;t[13]===Symbol.for(`react.memo_cache_sentinel`)?(_=(0,$.jsx)(v,{}),t[13]=_):_=t[13];let y;t[14]!==n||t[15]!==r?(y=qe.map(e=>(0,$.jsx)(f,{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:Ye[e].label})]})},e)),t[14]=n,t[15]=r,t[16]=y):y=t[16];let b;t[17]!==y||t[18]!==g?(b=(0,$.jsxs)(ee,{align:`start`,children:[g,_,y]}),t[17]=y,t[18]=g,t[19]=b):b=t[19];let S;return t[20]!==b||t[21]!==d?(S=(0,$.jsxs)(m,{children:[d,b]}),t[20]=b,t[21]=d,t[22]=S):S=t[22],S}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-DQcgd75_.js.map
@@ -1,2 +1,2 @@
1
- import{B_ as e,sv as t}from"./utils-BoMYW9A3.js";function n(n){if(n.hasSessionError)return{canReadDiagnostics:!1,isPending:!1,error:`Could not check this connection's access to diagnostics and usage.`};if(n.session===null){let e=n.connectionPhase===`connected`||n.connectionPhase===`connecting`||n.connectionPhase===`reconnecting`;return{canReadDiagnostics:!1,isPending:e,error:e?null:`This environment is not connected.`}}let r=t(n.session,e);return{canReadDiagnostics:r,isPending:!1,error:r?null:`This connection does not have access to diagnostics and usage.`}}export{n as t};
2
- //# sourceMappingURL=usageAccess-DSLF-sRE.js.map
1
+ import{B_ as e,sv as t}from"./utils-DhUt689t.js";function n(n){if(n.hasSessionError)return{canReadDiagnostics:!1,isPending:!1,error:`Could not check this connection's access to diagnostics and usage.`};if(n.session===null){let e=n.connectionPhase===`connected`||n.connectionPhase===`connecting`||n.connectionPhase===`reconnecting`;return{canReadDiagnostics:!1,isPending:e,error:e?null:`This environment is not connected.`}}let r=t(n.session,e);return{canReadDiagnostics:r,isPending:!1,error:r?null:`This connection does not have access to diagnostics and usage.`}}export{n as t};
2
+ //# sourceMappingURL=usageAccess-CCSxXl9X.js.map
@@ -1,2 +1,2 @@
1
- import{nl as e}from"./utils-BoMYW9A3.js";var t=new Intl.NumberFormat(`en-US`,{style:`currency`,currency:`USD`,minimumFractionDigits:2,maximumFractionDigits:2}),n=new Intl.NumberFormat(`en-US`);function r(e){return t.format(e)}function i(e){return n.format(Math.round(e))}function a(e){let t=Math.abs(e);return t>=0xe8d4a51000?`${o(e/0xe8d4a51000)}T`:t>=1e9?`${o(e/1e9)}B`:t>=1e6?`${o(e/1e6)}M`:t>=1e3?`${o(e/1e3)}K`:n.format(Math.round(e))}function o(e){let t=Math.abs(e),n=t>=100?0:t>=10?1:2;return e.toFixed(n).replace(/\.0+$/,``)}function s(e,t=1){let n=e*100,r=10**-t;return n>0&&n<r?`<${r.toFixed(t)}%`:`${n.toFixed(t)}%`}function c(e,t){return t.direction===`serverBehind`?`${e} runs an older server version and is excluded from totals.`:`This client is older than the server on ${e}; its usage is excluded from totals.`}function l(e){let[t,n,r]=e.split(`-`).map(e=>Number(e));return t===void 0||n===void 0||r===void 0?e:`${[`Jan`,`Feb`,`Mar`,`Apr`,`May`,`Jun`,`Jul`,`Aug`,`Sep`,`Oct`,`Nov`,`Dec`][n-1]??``} ${r}`}function u(e,t){let n=[],r=Date.parse(`${e}T00:00:00Z`),i=Date.parse(`${t}T00:00:00Z`);if(Number.isNaN(r)||Number.isNaN(i)||i<r)return n;for(let e=r;e<=i;e+=864e5)n.push(new Date(e).toISOString().slice(0,10));return n}var d=36e5,f=new Map;function p(e,t){if(t.timeZone===void 0)return new Intl.DateTimeFormat(e,t);let n=JSON.stringify([e,t]),r=f.get(n);return r===void 0&&(r=new Intl.DateTimeFormat(e,t),f.size>=16&&f.clear(),f.set(n,r)),r}function m(e,t){let n=[],r=Date.parse(e),i=Date.parse(t);if(Number.isNaN(r)||Number.isNaN(i)||i<=r)return n;for(let e=r;e<i;e+=d)n.push(new Date(e).toISOString());return n}function h(e,t){let n=new Date(e);if(Number.isNaN(n.getTime()))return e;let r=t===void 0?{}:{timeZone:t},i=p(`en-US`,{...r,hour:`numeric`}),a=p(`en-CA`,{...r,year:`numeric`,month:`2-digit`,day:`2-digit`,hour:`2-digit`,hourCycle:`h23`}),o=a.format(n);return[-36e5,d].some(e=>a.format(new Date(n.getTime()+e))===o)?p(`en-US`,{...t===void 0?{}:{timeZone:t},hour:`numeric`,timeZoneName:`short`}).format(n):i.format(n)}function g(e,t){let n=new Date(e);return Number.isNaN(n.getTime())?e:p(`en-US`,{...t===void 0?{}:{timeZone:t},month:`short`,day:`numeric`,hour:`numeric`}).format(n)}function _(e,t,n){let r=new Date(e),i=new Date(t);if(Number.isNaN(r.getTime())||Number.isNaN(i.getTime()))return g(e,n);let a=p(`en-CA`,{...n===void 0?{}:{timeZone:n},year:`numeric`,month:`2-digit`,day:`2-digit`}),o=Date.parse(`${a.format(r)}T00:00:00Z`),s=Date.parse(`${a.format(i)}T00:00:00Z`),c=Math.round((s-o)/(24*d)),l=h(e,n);return c===0?`${l} today`:c===1?`${l} yesterday`:g(e,n)}function v(t,n=new Date,r=`day`){let i=Intl.DateTimeFormat().resolvedOptions().timeZone||`UTC`,a;try{a=new Intl.DateTimeFormat(`en-CA`,{timeZone:i,year:`numeric`,month:`2-digit`,day:`2-digit`})}catch{i=`UTC`,a=new Intl.DateTimeFormat(`en-CA`,{timeZone:`UTC`,year:`numeric`,month:`2-digit`,day:`2-digit`})}let o=a.format(n);if(r===`hour`){let t=Math.floor(n.getTime()/6e4)*6e4,o=t-24*d,s=new Date(o),c=new Date(t);return{sinceDay:e.make(a.format(s)),untilDay:e.make(a.format(c)),timeZone:i,resolution:r,sinceTime:s.toISOString(),untilTime:c.toISOString()}}let[s=0,c=1,l=1]=o.split(`-`).map(e=>Number.parseInt(e,10)),u=new Date(Date.UTC(s,c-1,l-(t-1)));return{sinceDay:e.make(u.toISOString().slice(0,10)),untilDay:e.make(o),timeZone:i,resolution:r}}export{l as a,_ as c,r as d,v as f,g as i,a as l,m as n,h as o,i as r,s,u as t,c as u};
2
- //# sourceMappingURL=usageFormat-Bzyvr9m4.js.map
1
+ import{nl as e}from"./utils-DhUt689t.js";var t=new Intl.NumberFormat(`en-US`,{style:`currency`,currency:`USD`,minimumFractionDigits:2,maximumFractionDigits:2}),n=new Intl.NumberFormat(`en-US`);function r(e){return t.format(e)}function i(e){return n.format(Math.round(e))}function a(e){let t=Math.abs(e);return t>=0xe8d4a51000?`${o(e/0xe8d4a51000)}T`:t>=1e9?`${o(e/1e9)}B`:t>=1e6?`${o(e/1e6)}M`:t>=1e3?`${o(e/1e3)}K`:n.format(Math.round(e))}function o(e){let t=Math.abs(e),n=t>=100?0:t>=10?1:2;return e.toFixed(n).replace(/\.0+$/,``)}function s(e,t=1){let n=e*100,r=10**-t;return n>0&&n<r?`<${r.toFixed(t)}%`:`${n.toFixed(t)}%`}function c(e,t){return t.direction===`serverBehind`?`${e} runs an older server version and is excluded from totals.`:`This client is older than the server on ${e}; its usage is excluded from totals.`}function l(e){let[t,n,r]=e.split(`-`).map(e=>Number(e));return t===void 0||n===void 0||r===void 0?e:`${[`Jan`,`Feb`,`Mar`,`Apr`,`May`,`Jun`,`Jul`,`Aug`,`Sep`,`Oct`,`Nov`,`Dec`][n-1]??``} ${r}`}function u(e,t){let n=[],r=Date.parse(`${e}T00:00:00Z`),i=Date.parse(`${t}T00:00:00Z`);if(Number.isNaN(r)||Number.isNaN(i)||i<r)return n;for(let e=r;e<=i;e+=864e5)n.push(new Date(e).toISOString().slice(0,10));return n}var d=36e5,f=new Map;function p(e,t){if(t.timeZone===void 0)return new Intl.DateTimeFormat(e,t);let n=JSON.stringify([e,t]),r=f.get(n);return r===void 0&&(r=new Intl.DateTimeFormat(e,t),f.size>=16&&f.clear(),f.set(n,r)),r}function m(e,t){let n=[],r=Date.parse(e),i=Date.parse(t);if(Number.isNaN(r)||Number.isNaN(i)||i<=r)return n;for(let e=r;e<i;e+=d)n.push(new Date(e).toISOString());return n}function h(e,t){let n=new Date(e);if(Number.isNaN(n.getTime()))return e;let r=t===void 0?{}:{timeZone:t},i=p(`en-US`,{...r,hour:`numeric`}),a=p(`en-CA`,{...r,year:`numeric`,month:`2-digit`,day:`2-digit`,hour:`2-digit`,hourCycle:`h23`}),o=a.format(n);return[-36e5,d].some(e=>a.format(new Date(n.getTime()+e))===o)?p(`en-US`,{...t===void 0?{}:{timeZone:t},hour:`numeric`,timeZoneName:`short`}).format(n):i.format(n)}function g(e,t){let n=new Date(e);return Number.isNaN(n.getTime())?e:p(`en-US`,{...t===void 0?{}:{timeZone:t},month:`short`,day:`numeric`,hour:`numeric`}).format(n)}function _(e,t,n){let r=new Date(e),i=new Date(t);if(Number.isNaN(r.getTime())||Number.isNaN(i.getTime()))return g(e,n);let a=p(`en-CA`,{...n===void 0?{}:{timeZone:n},year:`numeric`,month:`2-digit`,day:`2-digit`}),o=Date.parse(`${a.format(r)}T00:00:00Z`),s=Date.parse(`${a.format(i)}T00:00:00Z`),c=Math.round((s-o)/(24*d)),l=h(e,n);return c===0?`${l} today`:c===1?`${l} yesterday`:g(e,n)}function v(t,n=new Date,r=`day`){let i=Intl.DateTimeFormat().resolvedOptions().timeZone||`UTC`,a;try{a=new Intl.DateTimeFormat(`en-CA`,{timeZone:i,year:`numeric`,month:`2-digit`,day:`2-digit`})}catch{i=`UTC`,a=new Intl.DateTimeFormat(`en-CA`,{timeZone:`UTC`,year:`numeric`,month:`2-digit`,day:`2-digit`})}let o=a.format(n);if(r===`hour`){let t=Math.floor(n.getTime()/6e4)*6e4,o=t-24*d,s=new Date(o),c=new Date(t);return{sinceDay:e.make(a.format(s)),untilDay:e.make(a.format(c)),timeZone:i,resolution:r,sinceTime:s.toISOString(),untilTime:c.toISOString()}}let[s=0,c=1,l=1]=o.split(`-`).map(e=>Number.parseInt(e,10)),u=new Date(Date.UTC(s,c-1,l-(t-1)));return{sinceDay:e.make(u.toISOString().slice(0,10)),untilDay:e.make(o),timeZone:i,resolution:r}}export{l as a,_ as c,r as d,v as f,g as i,a as l,m as n,h as o,i as r,s,u as t,c as u};
2
+ //# sourceMappingURL=usageFormat-ByjmRjTe.js.map
@@ -1,2 +1,2 @@
1
- import{_ as e}from"./keybindings-B3oDRRkK.js";var t=[{value:`cost`,label:`Cost`,command:`usage.cost`},{value:`tokens`,label:`Tokens`,command:`usage.tokens`},{value:`limits`,label:`Limits`,command:`usage.limits`}],n=[{days:1,label:`Past 24h`,command:`usage.period.day`},{days:7,label:`7 days`,command:`usage.period.week`},{days:30,label:`30 days`,command:`usage.period.month`},{days:90,label:`90 days`,command:`usage.period.quarter`}];function r(t,n){let r=t.target;return r instanceof HTMLElement&&(r.tagName===`INPUT`||r.tagName===`TEXTAREA`||r.tagName===`SELECT`||r.isContentEditable||r.closest(`[role="dialog"], [aria-modal="true"], [data-slot$="popup"]`))?null:e(t,n,{context:{usagePageOpen:!0}})}export{n,r,t};
2
- //# sourceMappingURL=usageShortcuts-D6nQeRtx.js.map
1
+ import{_ as e}from"./keybindings-B_kRk5Fi.js";var t=[{value:`cost`,label:`Cost`,command:`usage.cost`},{value:`tokens`,label:`Tokens`,command:`usage.tokens`},{value:`limits`,label:`Limits`,command:`usage.limits`}],n=[{days:1,label:`Past 24h`,command:`usage.period.day`},{days:7,label:`7 days`,command:`usage.period.week`},{days:30,label:`30 days`,command:`usage.period.month`},{days:90,label:`90 days`,command:`usage.period.quarter`}];function r(t,n){let r=t.target;return r instanceof HTMLElement&&(r.tagName===`INPUT`||r.tagName===`TEXTAREA`||r.tagName===`SELECT`||r.isContentEditable||r.closest(`[role="dialog"], [aria-modal="true"], [data-slot$="popup"]`))?null:e(t,n,{context:{usagePageOpen:!0}})}export{n,r,t};
2
+ //# sourceMappingURL=usageShortcuts-DOWm0Vo9.js.map
@@ -1,2 +1,2 @@
1
- import{a as e,t}from"./react-DH3P2YXY.js";import{n}from"./jsx-runtime-BnjsACtP.js";import{ns as r}from"./utils-BoMYW9A3.js";import{B as i}from"./runtime-DR7JxgbQ.js";var a=n(),o=e(t(),1);function s(e,t){let n=(0,a.c)(6),s=(0,o.useContext)(r),c=typeof t==`string`?t:t?.label??e.label,l=typeof t==`string`?!0:t?.reportFailure??!0,u=typeof t==`string`?!0:t?.reportDefect??!0,d;return n[0]!==e||n[1]!==c||n[2]!==s||n[3]!==u||n[4]!==l?(d=t=>i(s,e,t,{label:c,reportFailure:l,reportDefect:u}),n[0]=e,n[1]=c,n[2]=s,n[3]=u,n[4]=l,n[5]=d):d=n[5],d}export{s as t};
2
- //# sourceMappingURL=use-atom-command-DA6OG-Qk.js.map
1
+ import{a as e,t}from"./react-DH3P2YXY.js";import{n}from"./jsx-runtime-BnjsACtP.js";import{ns as r}from"./utils-DhUt689t.js";import{B as i}from"./runtime-OeWFs5Hf.js";var a=n(),o=e(t(),1);function s(e,t){let n=(0,a.c)(6),s=(0,o.useContext)(r),c=typeof t==`string`?t:t?.label??e.label,l=typeof t==`string`?!0:t?.reportFailure??!0,u=typeof t==`string`?!0:t?.reportDefect??!0,d;return n[0]!==e||n[1]!==c||n[2]!==s||n[3]!==u||n[4]!==l?(d=t=>i(s,e,t,{label:c,reportFailure:l,reportDefect:u}),n[0]=e,n[1]=c,n[2]=s,n[3]=u,n[4]=l,n[5]=d):d=n[5],d}export{s as t};
2
+ //# sourceMappingURL=use-atom-command-vqjL7n-x.js.map
@@ -1,2 +1,2 @@
1
- import{a as e,t}from"./react-DH3P2YXY.js";import{Va as n,ja as r}from"./utils-BoMYW9A3.js";var i=e(t());function a(e,t,a,s=!0,c){let[l,u]=i.useState(),d=r(c?`${c}-label`:void 0),f=e??t??l;return n(()=>{let n=e||t||!s?void 0:o(a.current,d);l!==n&&u(n)}),f}function o(e,t){let n=s(e);if(n)return!n.id&&t&&(n.id=t),n.id||void 0}function s(e){if(!e)return;let t=e.parentElement;if(t&&t.tagName===`LABEL`)return t;let n=e.id;if(n){let t=e.nextElementSibling;if(t&&t.htmlFor===n)return t}let r=e.labels;return r&&r[0]}export{a as t};
2
- //# sourceMappingURL=useAriaLabelledBy-PLuOxvFb.js.map
1
+ import{a as e,t}from"./react-DH3P2YXY.js";import{Va as n,ja as r}from"./utils-DhUt689t.js";var i=e(t());function a(e,t,a,s=!0,c){let[l,u]=i.useState(),d=r(c?`${c}-label`:void 0),f=e??t??l;return n(()=>{let n=e||t||!s?void 0:o(a.current,d);l!==n&&u(n)}),f}function o(e,t){let n=s(e);if(n)return!n.id&&t&&(n.id=t),n.id||void 0}function s(e){if(!e)return;let t=e.parentElement;if(t&&t.tagName===`LABEL`)return t;let n=e.id;if(n){let t=e.nextElementSibling;if(t&&t.htmlFor===n)return t}let r=e.labels;return r&&r[0]}export{a as t};
2
+ //# sourceMappingURL=useAriaLabelledBy-B7FNFpmO.js.map