openpond 0.2.0 → 0.2.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/chunks/actions-command-F55CBR2K.js +2 -0
- package/dist/chunks/app-layer-GNYLOBCX.js +3 -0
- package/dist/chunks/app-server-runtime-VAGY4LQS.js +2 -0
- package/dist/chunks/apps-HZ5JGBDR.js +2 -0
- package/dist/chunks/chunk-22UARBPW.js +3 -0
- package/dist/chunks/chunk-3A7HZJNE.js +1 -0
- package/dist/chunks/chunk-3M53YXEI.js +2 -0
- package/dist/chunks/chunk-3NDRIQTI.js +2 -0
- package/dist/chunks/chunk-6FA3GG5B.js +33 -0
- package/dist/chunks/chunk-6MI4KKWF.js +2 -0
- package/dist/chunks/chunk-7D2LMRP7.js +2 -0
- package/dist/chunks/chunk-A42DFLOR.js +16 -0
- package/dist/chunks/chunk-AF57BF75.js +24 -0
- package/dist/chunks/chunk-BX4J2VDU.js +2 -0
- package/dist/chunks/chunk-BZMVB3GS.js +2 -0
- package/dist/chunks/chunk-CCJG7GLE.js +5 -0
- package/dist/chunks/chunk-CWQWV2T3.js +2 -0
- package/dist/chunks/chunk-DUA3QP6Y.js +19 -0
- package/dist/chunks/chunk-EAPFMACH.js +10 -0
- package/dist/chunks/chunk-EG3XB6M6.js +5 -0
- package/dist/chunks/chunk-ES2ISFJC.js +66 -0
- package/dist/chunks/chunk-FTQLQJQV.js +2 -0
- package/dist/chunks/chunk-FYCJSUFV.js +53 -0
- package/dist/chunks/chunk-GEANXBLX.js +2 -0
- package/dist/chunks/chunk-GLUWATL5.js +2 -0
- package/dist/chunks/chunk-GPZYIVFV.js +2199 -0
- package/dist/chunks/chunk-H7IWJN7L.js +17 -0
- package/dist/chunks/chunk-HZP5U2AA.js +3 -0
- package/dist/chunks/chunk-I5K74TOH.js +3 -0
- package/dist/chunks/chunk-I7G35U7K.js +2 -0
- package/dist/chunks/chunk-IR3YJWPW.js +7 -0
- package/dist/chunks/chunk-J7WZSLHS.js +18 -0
- package/dist/chunks/chunk-K35OOAW2.js +6 -0
- package/dist/chunks/chunk-KDXLNQNF.js +12 -0
- package/dist/chunks/chunk-KJYNLFWD.js +2872 -0
- package/dist/chunks/chunk-KV2IXO2T.js +6 -0
- package/dist/chunks/chunk-NVGMZ2IN.js +2 -0
- package/dist/chunks/chunk-OGPHXXCD.js +1 -0
- package/dist/chunks/chunk-RAKJWIYO.js +36 -0
- package/dist/chunks/chunk-RWSAGQTP.js +2 -0
- package/dist/chunks/chunk-SDO4FC4Q.js +2 -0
- package/dist/chunks/chunk-T5XCPX4P.js +3 -0
- package/dist/chunks/chunk-VYUMTRB3.js +5 -0
- package/dist/chunks/chunk-X37KMV27.js +1 -0
- package/dist/chunks/chunk-XAYIETBO.js +28 -0
- package/dist/chunks/chunk-XEOEKFG6.js +71 -0
- package/dist/chunks/chunk-ZVOO7FKM.js +2 -0
- package/dist/chunks/cli-UYTSZB4Y.js +2 -0
- package/dist/chunks/configuration-command-HAPIYG25.js +2 -0
- package/dist/chunks/continual-D75WA7E7.js +7 -0
- package/dist/chunks/core-commands-N37UZEVE.js +2 -0
- package/dist/chunks/database-X2CUV732.js +2 -0
- package/dist/chunks/desktop-test-V7FBEG7U.js +3 -0
- package/dist/chunks/dist-NKLXFA37.js +2 -0
- package/dist/chunks/extension-NEPOQ44P.js +5 -0
- package/dist/chunks/help-HC4N5ZQC.js +8 -0
- package/dist/chunks/module-ES6BEMUI-ZVL3F6NW.js +2 -0
- package/dist/chunks/module-asyncify-2EFITU5U-R7TVXNAE.js +2 -0
- package/dist/chunks/opchat-C7XRN4ZW.js +3 -0
- package/dist/chunks/organizations-LQGRZJ2V.js +2 -0
- package/dist/chunks/profile-UWM24A7R.js +3 -0
- package/dist/chunks/project-agent-2ME52ZJW.js +2 -0
- package/dist/chunks/sandbox-command-53L3ZICT.js +2 -0
- package/dist/chunks/sandbox-template-55HUM5H7.js +10 -0
- package/dist/chunks/src-EYJF2LWV.js +319 -0
- package/dist/chunks/src-VGW2UEMV.js +82 -0
- package/dist/chunks/taskset-PISBOILQ.js +2 -0
- package/dist/chunks/teams-bot-FHD2HCHN.js +3 -0
- package/dist/chunks/training-2NDOWH5S.js +2 -0
- package/dist/chunks/workspaces-CQFVCR7T.js +2 -0
- package/dist/cli.js +3 -109
- package/dist/index.js +1 -31230
- package/dist/sandbox-template/manifest.js +1 -18380
- package/dist/web/assets/App-BoJQRfeu.js +176 -0
- package/dist/web/assets/AppDialog-rdfmJsGF.js +1 -0
- package/dist/web/assets/AppTerminalPanel-CLW0kxtg.js +2 -0
- package/dist/web/assets/{AppsView-B1NUuAIf.js → AppsView-DxMXadnp.js} +1 -1
- package/dist/web/assets/{BrowserSidebar-DOvYxXeP.js → BrowserSidebar-BH_jl0JS.js} +1 -1
- package/dist/web/assets/{CartesianChart-pOrYpzBr.js → CartesianChart-oT_rMYpf.js} +1 -1
- package/dist/web/assets/{CollaborationTabs-CgbR-MBJ.js → CollaborationTabs-CukgFGE0.js} +1 -1
- package/dist/web/assets/{CommandMenu-CrIr4qUX.js → CommandMenu-2btBTgOF.js} +1 -1
- package/dist/web/assets/{CommunityView-CvAVQ_HZ.js → CommunityView-DMTREmN5.js} +1 -1
- package/dist/web/assets/{ComposerCreateImproveStrip-DybcKwwd.js → ComposerCreateImproveStrip-3tN55cg9.js} +1 -1
- package/dist/web/assets/GetStartedView-CMHL24_w.js +1 -0
- package/dist/web/assets/HostedModelLearningReview-CqkSelkC.js +1 -0
- package/dist/web/assets/HostedModelLearningSettings-xqd2lSW3.js +1 -0
- package/dist/web/assets/LabModelVersionDetailPage-Bpnya5DM.js +1 -0
- package/dist/web/assets/{LabSkillSidebar-CuaYrtiu.js → LabSkillSidebar-BKZjScr8.js} +1 -1
- package/dist/web/assets/LabsRoute-BhPFmA_Z.js +32 -0
- package/dist/web/assets/LabsRoute-C1FWCoYb.css +1 -0
- package/dist/web/assets/MainChatThread-Bosxokt-.js +2 -0
- package/dist/web/assets/MainPane-Di-Rwe7x.js +8 -0
- package/dist/web/assets/{MarkdownText-DOlVQR8a.js → MarkdownText-dK4SBPp_.js} +1 -1
- package/dist/web/assets/{Messages-DMubppta.js → Messages-ftYRMKYa.js} +6 -6
- package/dist/web/assets/{NativeSkillSidebar-DSFwZ-od.js → NativeSkillSidebar-Cwo7JdB2.js} +1 -1
- package/dist/web/assets/{NewExperienceSwitcher-Dj0ePIJ-.js → NewExperienceSwitcher-C1_JzTq2.js} +1 -1
- package/dist/web/assets/{NewProjectDialog-B8NQV-Ji.js → NewProjectDialog-CxP6v6YW.js} +1 -1
- package/dist/web/assets/{OutputsPage-D_LDYTgV.js → OutputsPage-DL21_Alp.js} +1 -1
- package/dist/web/assets/{ProjectsPage-xjDYPc_W.js → ProjectsPage-BO9VyvMA.js} +1 -1
- package/dist/web/assets/RightChatPanelStack-DaqAnzdR.js +1 -0
- package/dist/web/assets/{RightSidebarHomePanel-j0VckZUu.js → RightSidebarHomePanel-PbUG12AO.js} +1 -1
- package/dist/web/assets/{ScheduledWorkPage-1aT4bBY-.js → ScheduledWorkPage-BhL-cXML.js} +1 -1
- package/dist/web/assets/{SettingsView-BSpuMDpv.js → SettingsView-D6-s7G88.js} +7 -7
- package/dist/web/assets/TeamChatView-DbS1N-fo.js +3 -0
- package/dist/web/assets/{TerminalOverlay-CrSwUk2d.js → TerminalOverlay-CphyBXJR.js} +3 -3
- package/dist/web/assets/{TrainingCreationPanel-B4HMRwUg.js → TrainingCreationPanel-Czsdraix.js} +1 -1
- package/dist/web/assets/{TrainingDraftPanel-D4r1tN3I.js → TrainingDraftPanel-Bq3B5pUk.js} +1 -1
- package/dist/web/assets/{UsageSettingsSection-2aymqwIM.js → UsageSettingsSection-B74FNwaP.js} +5 -5
- package/dist/web/assets/{WorkSidebarPanel-B0X0OiR6.js → WorkSidebarPanel-BgaK4XSg.js} +1 -1
- package/dist/web/assets/WorkspaceDiffPanel-C3seHnVY.js +14 -0
- package/dist/web/assets/{WorkspaceEnvironmentMenu-OAfMEt7L.js → WorkspaceEnvironmentMenu-DPghQUdv.js} +3 -3
- package/dist/web/assets/{WorkspaceGitDialogs-YxcPH2Rq.js → WorkspaceGitDialogs-D8c6Okb_.js} +1 -1
- package/dist/web/assets/{WorkspaceMonacoEditor-COKTiQZl.js → WorkspaceMonacoEditor-2kjRFf4l.js} +36 -36
- package/dist/web/assets/{arrow-up-right-_TX-awvK.js → arrow-up-right-C5X-29oa.js} +1 -1
- package/dist/web/assets/chat-file-links-Bmz9kVct.js +1 -0
- package/dist/web/assets/chevron-up-NbP9vY4E.js +1 -0
- package/dist/web/assets/{clipboard-CyRSS8Sy.js → clipboard-fvHMXPWa.js} +1 -1
- package/dist/web/assets/{cloud-upload-uBJBUYTy.js → cloud-upload-BAycsdHL.js} +1 -1
- package/dist/web/assets/{cssMode-BrXSsZYs.js → cssMode-Yis679a5.js} +1 -1
- package/dist/web/assets/{folder-open-DktdZNW7.js → folder-open-bii4KUCv.js} +1 -1
- package/dist/web/assets/{folder-plus-DO06i9Vo.js → folder-plus-B0B7mUCx.js} +1 -1
- package/dist/web/assets/{git-commit-horizontal-zFSIkPs7.js → git-commit-horizontal-B6yTdtnB.js} +1 -1
- package/dist/web/assets/{htmlMode-X9UMFkjt.js → htmlMode-DHeBSKVF.js} +1 -1
- package/dist/web/assets/{index-UOGdfLzi.js → index-667pXXsu.js} +1 -1
- package/dist/web/assets/{index-ByQIHpc9.css → index-BGMzUaup.css} +1 -1
- package/dist/web/assets/{info-BEJXUqCD.js → info-NCOESX3I.js} +1 -1
- package/dist/web/assets/{jsonMode-DIsB-j2E.js → jsonMode-C4oxy1cU.js} +1 -1
- package/dist/web/assets/{lspLanguageFeatures-CmZ17KpA.js → lspLanguageFeatures-CLj3WGZW.js} +1 -1
- package/dist/web/assets/{minimize-2-DumTpFtE.js → minimize-2-DtI1vgd7.js} +1 -1
- package/dist/web/assets/{monaco.contribution-D6w5PJji.js → monaco.contribution-DZPgekIQ.js} +2 -2
- package/dist/web/assets/{monaco.contribution-DJ_NmcHu.js → monaco.contribution-Ddw-TznO.js} +2 -2
- package/dist/web/assets/{monaco.contribution-YVDfJcG4.js → monaco.contribution-DhVPJ-oY.js} +2 -2
- package/dist/web/assets/{monaco.contribution-LZEujgny.js → monaco.contribution-DrW6DjWP.js} +2 -2
- package/dist/web/assets/{play-CLFeH7CU.js → play-DB3XFAnG.js} +1 -1
- package/dist/web/assets/{python-Djbda_qZ.js → python-DLyUeEeL.js} +1 -1
- package/dist/web/assets/{refresh-cw-B4IpQ_7Q.js → refresh-cw-0zSLZtfp.js} +1 -1
- package/dist/web/assets/{save-BbTHztnA.js → save-BCZlshOA.js} +1 -1
- package/dist/web/assets/{square-BJrVbmz6.js → square-CRytZWR_.js} +1 -1
- package/dist/web/assets/{toggleHighContrast-BopU5W9S.js → toggleHighContrast-TXg0rI_R.js} +1 -1
- package/dist/web/assets/{tsMode-CH_0_YDX.js → tsMode-Bj1019AY.js} +1 -1
- package/dist/web/assets/{upload-UumVeufu.js → upload-CnE9u7GB.js} +1 -1
- package/dist/web/assets/{useLocalAgentSchedules-BRa23U7O.js → useLocalAgentSchedules-qI87RHVI.js} +1 -1
- package/dist/web/assets/{wifi-off-BWJWivn6.js → wifi-off-CfuwRBx7.js} +1 -1
- package/dist/web/assets/{workers-pTe8RvSI.js → workers-CXdUI7wU.js} +1 -1
- package/dist/web/assets/{yaml-DNLASORn.js → yaml-AP8aiwLm.js} +1 -1
- package/dist/web/index.html +2 -2
- package/package.json +4 -3
- package/dist/chunks/actions-command-6N5XWMR6.js +0 -185
- package/dist/chunks/app-layer-F3CGXB33.js +0 -216
- package/dist/chunks/app-server-runtime-RHO5TFUC.js +0 -23
- package/dist/chunks/apps-L5XCL7QY.js +0 -429
- package/dist/chunks/chunk-26AMV5ZI.js +0 -634
- package/dist/chunks/chunk-3EB7I67T.js +0 -630
- package/dist/chunks/chunk-3ELF4FXY.js +0 -96
- package/dist/chunks/chunk-3VEYNDHN.js +0 -669
- package/dist/chunks/chunk-4KA25HUP.js +0 -5648
- package/dist/chunks/chunk-4L3ZJS2T.js +0 -1207
- package/dist/chunks/chunk-6SMNG6YA.js +0 -1303
- package/dist/chunks/chunk-7RIGZB7N.js +0 -1148
- package/dist/chunks/chunk-A6G3PFA5.js +0 -2164
- package/dist/chunks/chunk-BVY5JYM6.js +0 -512
- package/dist/chunks/chunk-DLQQIWN2.js +0 -648
- package/dist/chunks/chunk-FJ2JGB2N.js +0 -1373
- package/dist/chunks/chunk-FQS2QL5F.js +0 -14522
- package/dist/chunks/chunk-G65WAOJV.js +0 -1643
- package/dist/chunks/chunk-JTHL5XJ2.js +0 -1838
- package/dist/chunks/chunk-K4TZEHAW.js +0 -602
- package/dist/chunks/chunk-KCRCIQPD.js +0 -66
- package/dist/chunks/chunk-KSRWKXRB.js +0 -12
- package/dist/chunks/chunk-MUMPWI4O.js +0 -92
- package/dist/chunks/chunk-NTK22KJD.js +0 -10707
- package/dist/chunks/chunk-OCBRPU2K.js +0 -629
- package/dist/chunks/chunk-PS37DB5F.js +0 -183
- package/dist/chunks/chunk-R3C3MNSI.js +0 -140
- package/dist/chunks/chunk-SMNFI2FU.js +0 -113
- package/dist/chunks/chunk-UACZUFIA.js +0 -47
- package/dist/chunks/chunk-UZMVNKXM.js +0 -1275
- package/dist/chunks/chunk-VT6BLHMB.js +0 -67198
- package/dist/chunks/chunk-W5GKHH77.js +0 -168
- package/dist/chunks/chunk-X6F4LBTQ.js +0 -832
- package/dist/chunks/chunk-X7ZG4TSW.js +0 -3063
- package/dist/chunks/chunk-XA4KBDMY.js +0 -13723
- package/dist/chunks/chunk-YVCYVDNP.js +0 -746
- package/dist/chunks/chunk-ZNQEROWP.js +0 -254
- package/dist/chunks/cli-D2MUUBEX.js +0 -23
- package/dist/chunks/configuration-command-NR6JYIUD.js +0 -187
- package/dist/chunks/continual-37CE4LLJ.js +0 -803
- package/dist/chunks/core-commands-SWGIOZLW.js +0 -50
- package/dist/chunks/database-DEYUZDIM.js +0 -20
- package/dist/chunks/desktop-test-QOS7G5NE.js +0 -148
- package/dist/chunks/dist-AKYCQNNF.js +0 -187
- package/dist/chunks/extension-HJUJBQAD.js +0 -9378
- package/dist/chunks/help-J6PZ23IC.js +0 -67
- package/dist/chunks/opchat-ABX5YBAT.js +0 -169
- package/dist/chunks/organizations-CPNC47DO.js +0 -806
- package/dist/chunks/profile-Q3HB5MIO.js +0 -1136
- package/dist/chunks/project-agent-YHUBX4OR.js +0 -516
- package/dist/chunks/sandbox-command-YFL5QTWX.js +0 -1661
- package/dist/chunks/sandbox-template-Z6P7NTNF.js +0 -1655
- package/dist/chunks/src-7XEENEBI.js +0 -3628
- package/dist/chunks/src-KBBIV4NT.js +0 -56125
- package/dist/chunks/taskset-2TRZBRRT.js +0 -66
- package/dist/chunks/teams-bot-WD33NLH5.js +0 -146
- package/dist/chunks/training-4XH37UZB.js +0 -17
- package/dist/chunks/workspaces-WG2MH2WE.js +0 -99
- package/dist/web/assets/App-C9aGkxVg.js +0 -173
- package/dist/web/assets/AppDialog-CK6_lg8c.js +0 -1
- package/dist/web/assets/AppTerminalPanel-BKqgX4sd.js +0 -2
- package/dist/web/assets/GetStartedView-DVInkexN.js +0 -1
- package/dist/web/assets/LabModelVersionDetailPage-NaaPElmM.js +0 -1
- package/dist/web/assets/LabsRoute-BRR6x3SX.js +0 -2
- package/dist/web/assets/LabsRoute-CGFgymTX.css +0 -1
- package/dist/web/assets/MainChatThread-BfkjCZB9.js +0 -2
- package/dist/web/assets/MainPane-Gw-YK38n.js +0 -8
- package/dist/web/assets/RightChatPanelStack-BktRQ9wg.js +0 -1
- package/dist/web/assets/TeamChatView-BPWJbDf1.js +0 -3
- package/dist/web/assets/WorkspaceDiffPanel-Pg7GL0br.js +0 -14
- package/dist/web/assets/chat-file-links-CWLsRYvW.js +0 -1
- package/dist/web/assets/chevron-up--mNnEqha.js +0 -1
- package/dist/web/assets/index-BEPmTPIA.js +0 -1
package/dist/web/assets/{TrainingCreationPanel-B4HMRwUg.js → TrainingCreationPanel-Czsdraix.js}
RENAMED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{r as h,j as e}from"./index-
|
|
1
|
+
import{r as h,j as e}from"./index-667pXXsu.js";import{aS as f,aJ as b,i as d,d as x,X as j}from"./App-BoJQRfeu.js";/* empty css */function C({creation:s,training:r,compact:i=!1,onOpenTraining:t}){const[o,g]=h.useState(""),[c,u]=h.useState(""),n=s.state,a=!!r.busyAction;return h.useEffect(()=>{g(""),u("")},[s.id,n]),e.jsxs("section",{className:i?`composer-create-strip ${k(n)} training-create-strip`:"training-approval","aria-label":"Training task status",children:[i?e.jsxs("div",{className:"composer-create-strip-heading",children:[n==="planning"||n==="materializing"||n==="validating"?e.jsx(f,{className:"composer-create-spin",size:15}):n==="failed"?e.jsx(b,{size:15}):e.jsx(d,{size:15}),e.jsx("span",{children:v(n)}),e.jsx("small",{children:"training"})]}):null,n==="awaiting_disclosure_approval"?e.jsxs("div",{className:i?"composer-create-plan-summary":"training-creation-content",children:[i?null:e.jsx("strong",{children:"Review selected evidence with the authoring model?"}),e.jsxs("p",{children:["Approve sends excerpts from ",s.request.sourceIds.length," explicitly selected source",s.request.sourceIds.length===1?"":"s"," to ",s.request.analysisModel?.providerId,"/",s.request.analysisModel?.modelId," so it can propose a Taskset and grader. This does not start training."]}),e.jsxs("div",{className:i?"composer-create-actions":"training-inline-actions",children:[e.jsxs("button",{className:i?void 0:"training-button",disabled:a,onClick:()=>{r.actions.approveDisclosure(s.id,!0)},children:[e.jsx(x,{size:13}),e.jsx("span",{children:"Approve evidence"})]}),e.jsxs("button",{className:i?void 0:"training-button secondary",disabled:a,onClick:()=>{r.actions.approveDisclosure(s.id,!1)},children:[e.jsx(j,{size:13}),e.jsx("span",{children:"Decline"})]}),i&&t?e.jsxs("button",{disabled:a,onClick:t,children:[e.jsx(d,{size:13}),e.jsx("span",{children:"Open Training"})]}):null]})]}):n==="awaiting_materialization_approval"&&s.proposal?e.jsxs("div",{className:i?"composer-create-plan-summary":"training-creation-content",children:[i?null:e.jsx("strong",{children:s.proposal.name}),e.jsx("p",{children:s.proposal.objective}),e.jsxs("div",{className:"training-creation-plan-facts",children:[e.jsx("span",{children:s.proposal.taskKind.replaceAll("_"," ")}),e.jsxs("span",{children:[s.proposal.proposedGraders.length," grader",s.proposal.proposedGraders.length===1?"":"s"]}),e.jsx("span",{children:s.proposal.proposedMethod.replaceAll("_"," ")})]}),s.request.mode==="customize"?e.jsxs("div",{className:"training-question-answer",children:[e.jsx("input",{value:c,onChange:l=>u(l.target.value),placeholder:"Revise tasks, graders, fixtures, or policy"}),e.jsx("button",{className:i?void 0:"training-button secondary",disabled:!c.trim()||a,onClick:async()=>{const l=c;u(""),await r.actions.chatCreation(s.id,l)},children:"Revise"})]}):null,e.jsxs("div",{className:i?"composer-create-actions":"training-inline-actions",children:[e.jsxs("button",{className:i?void 0:"training-button",disabled:a,onClick:()=>{r.actions.materialize(s.id,!0)},children:[e.jsx(x,{size:13}),e.jsx("span",{children:"Materialize Taskset"})]}),t?e.jsxs("button",{className:i?void 0:"training-button secondary",disabled:a,onClick:t,children:[e.jsx(d,{size:13}),e.jsx("span",{children:"Review details"})]}):null,e.jsxs("button",{className:i?void 0:"training-button secondary",disabled:a,onClick:()=>{r.actions.materialize(s.id,!1)},children:[e.jsx(j,{size:13}),e.jsx("span",{children:"Cancel"})]})]})]}):n==="awaiting_questions"?e.jsx("div",{className:i?"composer-create-question":"training-creation-content",children:(()=>{const l=s.blockingQuestions.find(p=>!p.answer);return l?e.jsxs(e.Fragment,{children:[e.jsx("p",{children:l.prompt}),e.jsxs("div",{className:"training-question-answer",children:[e.jsx("input",{value:o,onChange:p=>g(p.target.value)}),e.jsx("button",{className:i?void 0:"training-button",disabled:!o.trim()||a,onClick:()=>{r.actions.answerQuestions(s.id,{[l.id]:o})},children:"Continue"})]})]}):null})()}):e.jsxs("div",{className:i?"composer-create-status-body":"training-creation-content",children:[e.jsx("p",{children:m(s)}),i&&t?e.jsx("div",{className:"composer-create-actions",children:e.jsxs("button",{onClick:t,children:[e.jsx(d,{size:13}),e.jsx("span",{children:"Open Training"})]})}):null]})]})}function T({creation:s}){return e.jsxs("section",{className:"chat-create-receipt","aria-label":"Training status",children:[e.jsxs("div",{className:"chat-create-receipt-heading",children:[e.jsx(d,{size:14}),e.jsx("span",{children:v(s.state)}),e.jsx("small",{children:"training"})]}),e.jsx("p",{children:s.request.objective??m(s)}),e.jsxs("div",{className:"chat-create-receipt-facts",children:[e.jsxs("span",{children:[s.request.sourceIds.length," selected source",s.request.sourceIds.length===1?"":"s"]}),e.jsx("span",{children:s.request.mode==="customize"?"guided plan":"fast draft"})]})]})}function v(s){return s==="awaiting_disclosure_approval"?"Training evidence review":s==="awaiting_materialization_approval"?"Training plan ready":s==="awaiting_questions"?"Training question":s==="materializing"?"Materializing Taskset":s==="ready"?"Taskset ready":s==="failed"?"Training plan failed":s==="cancelled"?"Training plan cancelled":"Preparing training plan"}function m(s){return s.blockedReason?s.blockedReason:s.state==="ready"?"The reviewed Taskset was materialized. Training still requires a separate approval.":s.state==="cancelled"?"Taskset creation was cancelled.":s.state==="planning"?"The authoring model is proposing tasks, graders, fixtures, and policy boundaries.":`Task Creator is ${s.state.replaceAll("_"," ")}.`}function k(s){return s==="ready"?"success":s==="failed"||s==="cancelled"?"danger":s==="awaiting_disclosure_approval"||s==="awaiting_materialization_approval"||s==="awaiting_questions"?"warning":"info"}export{C as TrainingCreationPanel,T as TrainingStatusReceipt};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{j as s}from"./index-
|
|
1
|
+
import{j as s}from"./index-667pXXsu.js";import{aY as p,bg as j}from"./App-BoJQRfeu.js";import{M as x}from"./minimize-2-DtI1vgd7.js";/* empty css */function k({training:r,sessionId:t,expanded:i,onOpenTraining:d,onResizeStart:o,onToggleExpanded:l}){const n=r.payload?.sources.filter(e=>e.sessionId===t)??[],c=new Set(n.map(e=>e.id)),a=r.payload?.creations.find(e=>e.request.sourceIds.some(h=>c.has(h)))??null;return s.jsxs("aside",{className:`workspace-diff-panel training-draft-panel ${i?"expanded":""}`,"aria-label":"Training task draft",children:[i?null:s.jsx("div",{className:"workspace-diff-resize-handle",role:"separator","aria-orientation":"vertical","aria-label":"Resize task draft",onPointerDown:o}),s.jsxs("div",{className:"workspace-diff-topbar",children:[s.jsx("div",{className:"workspace-diff-tabs",children:s.jsxs("button",{type:"button",className:"workspace-diff-tab active",children:[s.jsx(p,{size:14}),s.jsx("span",{children:"Task draft"})]})}),s.jsx("div",{className:"workspace-diff-toolbar-actions",children:s.jsx("button",{className:"diff-icon-button",type:"button",onClick:l,"aria-label":i?"Dock task draft":"Expand task draft",children:i?s.jsx(x,{size:14}):s.jsx(j,{size:14})})})]}),s.jsxs("div",{className:"training-draft-body",children:[s.jsx("span",{className:"training-eyebrow",children:"Selected chat"}),s.jsx("h2",{children:n[0]?.title??"Not added to training"}),s.jsxs("dl",{className:"training-definition",children:[s.jsxs("div",{children:[s.jsx("dt",{children:"Sources"}),s.jsx("dd",{children:n.length})]}),s.jsxs("div",{children:[s.jsx("dt",{children:"Status"}),s.jsx("dd",{children:a?.state.replaceAll("_"," ")??"No draft"})]}),s.jsxs("div",{children:[s.jsx("dt",{children:"Method"}),s.jsx("dd",{children:a?.proposal?.proposedMethod??"Pending"})]})]}),a?.proposal?s.jsxs(s.Fragment,{children:[s.jsx("h3",{children:a.proposal.name}),s.jsx("p",{children:a.proposal.objective})]}):s.jsxs("p",{children:["Add this chat with the sidebar action or run ",s.jsx("code",{children:"/train"}),"."]}),a?.blockedReason?s.jsx("p",{className:"training-draft-warning",children:a.blockedReason}):null,s.jsx("button",{className:"training-button secondary",type:"button",onClick:d,children:"Open Training"})]})]})}export{k as TrainingDraftPanel};
|
package/dist/web/assets/{UsageSettingsSection-2aymqwIM.js → UsageSettingsSection-B74FNwaP.js}
RENAMED
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import{r as f,j as l}from"./index-
|
|
1
|
+
import{r as f,j as l}from"./index-667pXXsu.js";import{a$ as ia,aS as kt,bd as la,aw as oa,o as Te}from"./App-BoJQRfeu.js";import{A as sa}from"./arrow-up-right-C5X-29oa.js";import{w as ca,c as me,s as ua,i as le,a as _e,u as jt,r as Fe,b as ze,S as da,d as oe,e as ma,p as At,f as fa,g as va,h as ha,j as pa,k as ga,l as ue,m as ya,n as nt,o as ba,q as xa,t as ka,v as ja,x as Aa,y as je,z as $e,A as Le,B as Sa,C as St,R as Pa,D as Ia,E as z,F as Ta,G as wa,H as ne,I as Oa,J,K as Q,L as Pt,M as It,N as Tt,O as Ca,P as Na,Q as rt,T as Ma,U as it,V as Ea,W as pe,X as Ue,Y as Da,Z as wt,_ as $a,$ as La,a0 as Ba,a1 as We,a2 as $,a3 as Ot,a4 as Ra,a5 as qa,a6 as Ka,a7 as _a,a8 as Fa,a9 as za,aa as Ct,ab as Ua,ac as Wa,ad as Ha,ae as lt,af as Nt,ag as Ga,ah as Va,ai as Ya,aj as Xa,ak as Za,al as Ja,am as Qa,an as en,ao as ot,ap as tn,aq as an,ar as nn,as as rn,at as ln,au as on,av as sn}from"./CartesianChart-oT_rMYpf.js";const Mt=Math.cos,ge=Math.sin,R=Math.sqrt,ye=Math.PI,Ae=2*ye,He={draw(e,t){const a=R(t/ye);e.moveTo(a,0),e.arc(0,0,a,0,Ae)}},cn={draw(e,t){const a=R(t/5)/2;e.moveTo(-3*a,-a),e.lineTo(-a,-a),e.lineTo(-a,-3*a),e.lineTo(a,-3*a),e.lineTo(a,-a),e.lineTo(3*a,-a),e.lineTo(3*a,a),e.lineTo(a,a),e.lineTo(a,3*a),e.lineTo(-a,3*a),e.lineTo(-a,a),e.lineTo(-3*a,a),e.closePath()}},Et=R(1/3),un=Et*2,dn={draw(e,t){const a=R(t/un),n=a*Et;e.moveTo(0,-a),e.lineTo(n,0),e.lineTo(0,a),e.lineTo(-n,0),e.closePath()}},mn={draw(e,t){const a=R(t),n=-a/2;e.rect(n,n,a,a)}},fn=.8908130915292852,Dt=ge(ye/10)/ge(7*ye/10),vn=ge(Ae/10)*Dt,hn=-Mt(Ae/10)*Dt,pn={draw(e,t){const a=R(t*fn),n=vn*a,r=hn*a;e.moveTo(0,-a),e.lineTo(n,r);for(let i=1;i<5;++i){const o=Ae*i/5,u=Mt(o),d=ge(o);e.lineTo(d*a,-u*a),e.lineTo(u*n-d*r,d*n+u*r)}e.closePath()}},we=R(3),gn={draw(e,t){const a=-R(t/(we*3));e.moveTo(0,a*2),e.lineTo(-we*a,-a),e.lineTo(we*a,-a),e.closePath()}},N=-.5,M=R(3)/2,Be=1/R(12),yn=(Be/2+1)*3,bn={draw(e,t){const a=R(t/yn),n=a/2,r=a*Be,i=n,o=a*Be+a,u=-i,d=o;e.moveTo(n,r),e.lineTo(i,o),e.lineTo(u,d),e.lineTo(N*n-M*r,M*n+N*r),e.lineTo(N*i-M*o,M*i+N*o),e.lineTo(N*u-M*d,M*u+N*d),e.lineTo(N*n+M*r,N*r-M*n),e.lineTo(N*i+M*o,N*o-M*i),e.lineTo(N*u+M*d,N*d-M*u),e.closePath()}};function xn(e,t){let a=null,n=ca(r);e=typeof e=="function"?e:me(e||He),t=typeof t=="function"?t:me(t===void 0?64:+t);function r(){let i;if(a||(a=i=n()),e.apply(this,arguments).draw(a,+t.apply(this,arguments)),i)return a=null,i+""||null}return r.type=function(i){return arguments.length?(e=typeof i=="function"?i:me(i),r):e},r.size=function(i){return arguments.length?(t=typeof i=="function"?i:me(+i),r):t},r.context=function(i){return arguments.length?(a=i??null,r):a},r}var kn=["type","size","sizeType"];function Re(){return Re=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var a=arguments[t];for(var n in a)({}).hasOwnProperty.call(a,n)&&(e[n]=a[n])}return e},Re.apply(null,arguments)}function st(e,t){var a=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(r){return Object.getOwnPropertyDescriptor(e,r).enumerable})),a.push.apply(a,n)}return a}function ct(e){for(var t=1;t<arguments.length;t++){var a=arguments[t]!=null?arguments[t]:{};t%2?st(Object(a),!0).forEach(function(n){jn(e,n,a[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(a)):st(Object(a)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(a,n))})}return e}function jn(e,t,a){return(t=An(t))in e?Object.defineProperty(e,t,{value:a,enumerable:!0,configurable:!0,writable:!0}):e[t]=a,e}function An(e){var t=Sn(e,"string");return typeof t=="symbol"?t:t+""}function Sn(e,t){if(typeof e!="object"||!e)return e;var a=e[Symbol.toPrimitive];if(a!==void 0){var n=a.call(e,t);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}function Pn(e,t){if(e==null)return{};var a,n,r=In(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;n<i.length;n++)a=i[n],t.indexOf(a)===-1&&{}.propertyIsEnumerable.call(e,a)&&(r[a]=e[a])}return r}function In(e,t){if(e==null)return{};var a={};for(var n in e)if({}.hasOwnProperty.call(e,n)){if(t.indexOf(n)!==-1)continue;a[n]=e[n]}return a}var $t={symbolCircle:He,symbolCross:cn,symbolDiamond:dn,symbolSquare:mn,symbolStar:pn,symbolTriangle:gn,symbolWye:bn},Tn=Math.PI/180,wn=e=>{var t="symbol".concat(jt(e));return $t[t]||He},On=(e,t,a)=>{if(t==="area")return e;switch(a){case"cross":return 5*e*e/9;case"diamond":return .5*e*e/Math.sqrt(3);case"square":return e*e;case"star":{var n=18*Tn;return 1.25*e*e*(Math.tan(n)-Math.tan(n*2)*Math.tan(n)**2)}case"triangle":return Math.sqrt(3)*e*e/4;case"wye":return(21-10*Math.sqrt(3))*e*e/8;default:return Math.PI*e*e/4}},Cn=(e,t)=>{$t["symbol".concat(jt(e))]=t},Lt=e=>{var t=e.type,a=t===void 0?"circle":t,n=e.size,r=n===void 0?64:n,i=e.sizeType,o=i===void 0?"area":i,u=Pn(e,kn),d=ct(ct({},u),{},{type:a,size:r,sizeType:o}),s="circle";typeof a=="string"&&(s=a);var c=()=>{var b=wn(s),p=xn().type(b).size(On(r,o,s)),x=p();if(x!==null)return x},m=d.className,v=d.cx,y=d.cy,h=ua(d);return le(v)&&le(y)&&le(r)?f.createElement("path",Re({},h,{className:_e("recharts-symbols",m),transform:"translate(".concat(v,", ").concat(y,")"),d:c()})):null};Lt.registerSymbol=Cn;function be(){return be=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var a=arguments[t];for(var n in a)({}).hasOwnProperty.call(a,n)&&(e[n]=a[n])}return e},be.apply(null,arguments)}function ut(e,t){var a=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(r){return Object.getOwnPropertyDescriptor(e,r).enumerable})),a.push.apply(a,n)}return a}function Bt(e){for(var t=1;t<arguments.length;t++){var a=arguments[t]!=null?arguments[t]:{};t%2?ut(Object(a),!0).forEach(function(n){Nn(e,n,a[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(a)):ut(Object(a)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(a,n))})}return e}function Nn(e,t,a){return(t=Mn(t))in e?Object.defineProperty(e,t,{value:a,enumerable:!0,configurable:!0,writable:!0}):e[t]=a,e}function Mn(e){var t=En(e,"string");return typeof t=="symbol"?t:t+""}function En(e,t){if(typeof e!="object"||!e)return e;var a=e[Symbol.toPrimitive];if(a!==void 0){var n=a.call(e,t);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}var E=32,Dn={align:"center",iconSize:14,inactiveColor:"#ccc",layout:"horizontal",verticalAlign:"middle",labelStyle:{}};function $n(e){if(typeof e=="object"&&e!==null&&"strokeDasharray"in e)return String(e.strokeDasharray)}function Ln(e){var t=e.data,a=e.iconType,n=e.inactiveColor,r=E/2,i=E/6,o=E/3,u=t.inactive?n:t.color,d=a??t.type;if(d==="none")return null;if(d==="plainline")return f.createElement("line",{strokeWidth:4,fill:"none",stroke:u,strokeDasharray:$n(t.payload),x1:0,y1:r,x2:E,y2:r,className:"recharts-legend-icon"});if(d==="line")return f.createElement("path",{strokeWidth:4,fill:"none",stroke:u,d:"M0,".concat(r,"h").concat(o,`
|
|
2
2
|
A`).concat(i,",").concat(i,",0,1,1,").concat(2*o,",").concat(r,`
|
|
3
3
|
H`).concat(E,"M").concat(2*o,",").concat(r,`
|
|
4
|
-
A`).concat(i,",").concat(i,",0,1,1,").concat(o,",").concat(r),className:"recharts-legend-icon"});if(d==="rect")return f.createElement("path",{stroke:"none",fill:u,d:"M0,".concat(E/8,"h").concat(E,"v").concat(E*3/4,"h").concat(-E,"z"),className:"recharts-legend-icon"});if(f.isValidElement(t.legendIcon)){var s=Bt({},t);return delete s.legendIcon,f.cloneElement(t.legendIcon,s)}return f.createElement(Lt,{fill:u,cx:r,cy:r,size:E,sizeType:"diameter",type:d})}function Bn(e){var t=e.payload,a=e.iconSize,n=e.layout,r=e.formatter,i=e.inactiveColor,o=e.iconType,u=e.labelStyle,d={x:0,y:0,width:E,height:E},s={display:n==="horizontal"?"inline-block":"block",marginRight:10},c={display:"inline-block",verticalAlign:"middle",marginRight:4};return t.map((m,v)=>{var y=m.formatter||r,h=_e({"recharts-legend-item":!0,["legend-item-".concat(v)]:!0,inactive:m.inactive});if(m.type==="none")return null;var b=typeof u=="object"?Bt({},u):{};b.color=m.inactive?i:b.color||m.color;var p=y?y(m.value,m,v):m.value;return f.createElement("li",be({className:h,style:s,key:"legend-item-".concat(v)},ze(e,m,v)),f.createElement(
|
|
5
|
-
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function zn(e,t){if(e){if(typeof e=="string")return dt(e,t);var a={}.toString.call(e).slice(8,-1);return a==="Object"&&e.constructor&&(a=e.constructor.name),a==="Map"||a==="Set"?Array.from(e):a==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(a)?dt(e,t):void 0}}function dt(e,t){(t==null||t>e.length)&&(t=e.length);for(var a=0,n=Array(t);a<t;a++)n[a]=e[a];return n}function Un(e,t){var a=e==null?null:typeof Symbol<"u"&&e[Symbol.iterator]||e["@@iterator"];if(a!=null){var n,r,i,o,u=[],d=!0,s=!1;try{if(i=(a=a.call(e)).next,t!==0)for(;!(d=(n=i.call(a)).done)&&(u.push(n.value),u.length!==t);d=!0);}catch(c){s=!0,r=c}finally{try{if(!d&&a.return!=null&&(o=a.return(),Object(o)!==o))return}finally{if(s)throw r}}return u}}function Wn(e){if(Array.isArray(e))return e}function mt(e,t){var a=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(r){return Object.getOwnPropertyDescriptor(e,r).enumerable})),a.push.apply(a,n)}return a}function ee(e){for(var t=1;t<arguments.length;t++){var a=arguments[t]!=null?arguments[t]:{};t%2?mt(Object(a),!0).forEach(function(n){Hn(e,n,a[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(a)):mt(Object(a)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(a,n))})}return e}function Hn(e,t,a){return(t=Gn(t))in e?Object.defineProperty(e,t,{value:a,enumerable:!0,configurable:!0,writable:!0}):e[t]=a,e}function Gn(e){var t=Vn(e,"string");return typeof t=="symbol"?t:t+""}function Vn(e,t){if(typeof e!="object"||!e)return e;var a=e[Symbol.toPrimitive];if(a!==void 0){var n=a.call(e,t);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}function Yn(e,t){if(e==null)return{};var a,n,r=Xn(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;n<i.length;n++)a=i[n],t.indexOf(a)===-1&&{}.propertyIsEnumerable.call(e,a)&&(r[a]=e[a])}return r}function Xn(e,t){if(e==null)return{};var a={};for(var n in e)if({}.hasOwnProperty.call(e,n)){if(t.indexOf(n)!==-1)continue;a[n]=e[n]}return a}function Zn(e){return e.value}function Jn(e){var t=e.contextPayload,a=Yn(e,Kn),n=
|
|
6
|
-
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function or(e,t){if(e){if(typeof e=="string")return ft(e,t);var a={}.toString.call(e).slice(8,-1);return a==="Object"&&e.constructor&&(a=e.constructor.name),a==="Map"||a==="Set"?Array.from(e):a==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(a)?ft(e,t):void 0}}function ft(e,t){(t==null||t>e.length)&&(t=e.length);for(var a=0,n=Array(t);a<t;a++)n[a]=e[a];return n}function sr(e,t){var a=e==null?null:typeof Symbol<"u"&&e[Symbol.iterator]||e["@@iterator"];if(a!=null){var n,r,i,o,u=[],d=!0,s=!1;try{if(i=(a=a.call(e)).next,t!==0)for(;!(d=(n=i.call(a)).done)&&(u.push(n.value),u.length!==t);d=!0);}catch(c){s=!0,r=c}finally{try{if(!d&&a.return!=null&&(o=a.return(),Object(o)!==o))return}finally{if(s)throw r}}return u}}function cr(e){if(Array.isArray(e))return e}var vt=(e,t,a)=>{var n=a??e;if(!je(n))return $e(n,t,0)},ur=(e,t,a)=>{var n={},r=e.filter(
|
|
7
|
-
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function Qr(e,t){if(e){if(typeof e=="string")return gt(e,t);var a={}.toString.call(e).slice(8,-1);return a==="Object"&&e.constructor&&(a=e.constructor.name),a==="Map"||a==="Set"?Array.from(e):a==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(a)?gt(e,t):void 0}}function gt(e,t){(t==null||t>e.length)&&(t=e.length);for(var a=0,n=Array(t);a<t;a++)n[a]=e[a];return n}function ei(e,t){var a=e==null?null:typeof Symbol<"u"&&e[Symbol.iterator]||e["@@iterator"];if(a!=null){var n,r,i,o,u=[],d=!0,s=!1;try{if(i=(a=a.call(e)).next,t!==0)for(;!(d=(n=i.call(a)).done)&&(u.push(n.value),u.length!==t);d=!0);}catch(c){s=!0,r=c}finally{try{if(!d&&a.return!=null&&(o=a.return(),Object(o)!==o))return}finally{if(s)throw r}}return u}}function ti(e){if(Array.isArray(e))return e}function F(){return F=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var a=arguments[t];for(var n in a)({}).hasOwnProperty.call(a,n)&&(e[n]=a[n])}return e},F.apply(null,arguments)}function yt(e,t){var a=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(r){return Object.getOwnPropertyDescriptor(e,r).enumerable})),a.push.apply(a,n)}return a}function I(e){for(var t=1;t<arguments.length;t++){var a=arguments[t]!=null?arguments[t]:{};t%2?yt(Object(a),!0).forEach(function(n){ai(e,n,a[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(a)):yt(Object(a)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(a,n))})}return e}function ai(e,t,a){return(t=ni(t))in e?Object.defineProperty(e,t,{value:a,enumerable:!0,configurable:!0,writable:!0}):e[t]=a,e}function ni(e){var t=ri(e,"string");return typeof t=="symbol"?t:t+""}function ri(e,t){if(typeof e!="object"||!e)return e;var a=e[Symbol.toPrimitive];if(a!==void 0){var n=a.call(e,t);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}function xe(e,t){if(e==null)return{};var a,n,r=ii(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;n<i.length;n++)a=i[n],t.indexOf(a)===-1&&{}.propertyIsEnumerable.call(e,a)&&(r[a]=e[a])}return r}function ii(e,t){if(e==null)return{};var a={};for(var n in e)if({}.hasOwnProperty.call(e,n)){if(t.indexOf(n)!==-1)continue;a[n]=e[n]}return a}var li=e=>{var t=e.dataKey,a=e.name,n=e.fill,r=e.legendType,i=e.hide;return[{inactive:i,dataKey:t,type:r,color:n,value:Ot(a,t),payload:e}]},oi=f.memo(e=>{var t=e.dataKey,a=e.stroke,n=e.strokeWidth,r=e.fill,i=e.name,o=e.hide,u=e.unit,d=e.formatter,s=e.tooltipType,c=e.id,m={dataDefinedOnItem:void 0,getPosition:Ra,settings:{stroke:a,strokeWidth:n,fill:r,dataKey:t,nameKey:void 0,name:Ot(i,t),hide:o,type:s,color:r,unit:u,formatter:d,graphicalItemId:c}};return f.createElement(Ba,{tooltipEntrySettings:m})});function si(e){var t=oe(Nt),a=e.data,n=e.dataKey,r=e.background,i=e.allOtherBarProps,o=i.onMouseEnter,u=i.onMouseLeave,d=i.onClick,s=xe(i,Vr),c=Kt(o,n,i.id),m=_t(u),v=Ft(d,n,i.id);if(!r||a==null)return null;var y=Ha(r);return f.createElement(We,{zIndex:yr(r,Ue.barBackground)},a.map((h,b)=>{h.value;var p=h.background;h.tooltipPosition;var x=xe(h,Yr);if(!p)return null;var j=c(h,h.originalDataIndex),A=m(h,h.originalDataIndex),k=v(h,h.originalDataIndex),S=I(I(I(I(I({option:r,isActive:String(h.originalDataIndex)===t},x),{},{fill:"#eee"},p),y),ze(s,h,b)),{},{onMouseEnter:j,onMouseLeave:A,onClick:k,dataKey:n,index:b,className:"recharts-bar-background-rectangle"});return f.createElement(Ve,F({key:"background-bar-".concat(b)},S))}))}function ci(e){var t=e.showLabels,a=e.children,n=e.rects,r=n?.map(i=>{var o={x:i.x,y:i.y,width:i.width,lowerWidth:i.width,upperWidth:i.width,height:i.height};return I(I({},o),{},{value:i.value,payload:i.payload,parentViewBox:i.parentViewBox,viewBox:o,fill:i.fill})});return f.createElement(Xa,{value:t?r:void 0},a)}function ui(e){var t=e.shape,a=e.activeBar,n=e.baseProps,r=e.entry,i=e.index,o=e.dataKey,u=oe(Nt),d=oe(Ja),s=a&&String(r.originalDataIndex)===u&&(d==null||o===d),c=f.useState(!1),m=pt(c,2),v=m[0],y=m[1],h=f.useState(!1),b=pt(h,2),p=b[0],x=b[1];f.useEffect(()=>{var T;return s?(y(!0),T=requestAnimationFrame(()=>{x(!0)})):x(!1),()=>{cancelAnimationFrame(T)}},[s]);var j=f.useCallback(()=>{s||y(!1)},[s]),A=s&&p,k=s||v,S;s?a===!0?S=t:S=a:S=t;var w=f.createElement(Ve,F({},n,{name:String(n.name)},r,{isActive:A,option:S,index:i,dataKey:o,animationElapsedTime:e.animationElapsedTime,isAnimating:e.isAnimating,isEntrance:e.isEntrance,onTransitionEnd:j}));return k?f.createElement(We,{zIndex:Ue.activeBar},f.createElement(Wt,{index:r.originalDataIndex},w)):w}function di(e){var t=e.shape,a=e.baseProps,n=e.entry,r=e.index,i=e.dataKey;return f.createElement(Ve,F({},a,{name:String(a.name)},n,{isActive:!1,option:t,index:r,dataKey:i,animationElapsedTime:e.animationElapsedTime,isAnimating:e.isAnimating,isEntrance:e.isEntrance}))}function mi(e){var t,a=e.data,n=e.props,r=e.animationElapsedTime,i=e.isAnimating,o=e.isEntrance,u=(t=Za(n))!==null&&t!==void 0?t:{},d=u.id,s=xe(u,Xr),c=n.shape,m=n.dataKey,v=n.activeBar,y=n.onMouseEnter,h=n.onClick,b=n.onMouseLeave,p=xe(n,Zr),x=Kt(y,m,d),j=_t(b),A=Ft(h,m,d);return a?f.createElement(f.Fragment,null,a.map((k,S)=>f.createElement(Wt,F({index:k.originalDataIndex,key:"rectangle-".concat(k?.x,"-").concat(k?.y,"-").concat(k?.value,"-").concat(S),className:"recharts-bar-rectangle"},ze(p,k,S),{onMouseEnter:x(k,k.originalDataIndex),onMouseLeave:j(k,k.originalDataIndex),onClick:A(k,k.originalDataIndex)}),v?f.createElement(ui,{shape:c,activeBar:v,baseProps:s,entry:k,index:S,dataKey:m,animationElapsedTime:r,isAnimating:i,isEntrance:o}):f.createElement(di,{shape:c,baseProps:s,entry:k,index:S,dataKey:m,animationElapsedTime:r,isAnimating:i,isEntrance:o})))):null}var fi=(e,t,a)=>e==null?[]:t===1?e.flatMap(n=>n.status==="removed"?[]:[n.next]):e.flatMap(n=>{if(n.status==="removed")return a==="horizontal"?[I(I({},n.prev),{},{height:$(n.prev.height,0,t),y:$(n.prev.y,n.prev.y+n.prev.height,t)})]:[I(I({},n.prev),{},{width:$(n.prev.width,0,t)})];if(n.status==="matched")return[I(I({},n.next),{},{x:$(n.prev.x,n.next.x,t),y:$(n.prev.y,n.next.y,t),width:$(n.prev.width,n.next.width,t),height:$(n.prev.height,n.next.height,t)})];var r=n.next;return a==="horizontal"?[I(I({},r),{},{height:$(0,r.height,t),y:$(r.stackedBarStart,r.y,t)})]:[I(I({},r),{},{width:$(0,r.width,t),x:$(r.stackedBarStart,r.x,t)})]});function vi(e){var t=e.props,a=e.previousRectanglesRef,n=t.data,r=t.isAnimationActive,i=t.animationBegin,o=t.animationDuration,u=t.animationEasing,d=t.animationInterpolateFn,s=t.layout,c=Ga(t.onAnimationStart,t.onAnimationEnd),m=c.isAnimating,v=c.handleAnimationStart,y=c.handleAnimationEnd;return f.createElement(ci,{showLabels:!m,rects:n},f.createElement(Va,{animationInput:n,animationIdPrefix:"recharts-bar-",items:n,previousItemsRef:a,isAnimationActive:r,animationBegin:i,animationDuration:o,animationEasing:u,onAnimationStart:v,onAnimationEnd:y,animationInterpolateFn:d,animationMatchBy:t.animationMatchBy,layout:s},(h,b,p)=>f.createElement(pe,null,f.createElement(mi,{props:t,data:h,animationElapsedTime:b,isAnimating:m||b<1,isEntrance:p}))),f.createElement(Ya,{label:t.label}),t.children)}function hi(e){var t=f.useRef(null);return f.createElement(vi,{previousRectanglesRef:t,props:e})}var Ht=0,pi=(e,t)=>{var a=Array.isArray(e.value)?e.value[1]:e.value;return{x:e.x,y:e.y,value:a,errorVal:Ct(e,t)}};class gi extends f.PureComponent{render(){var t=this.props,a=t.hide,n=t.data,r=t.dataKey,i=t.className,o=t.xAxisId,u=t.yAxisId,d=t.needClip,s=t.background,c=t.id;if(a||n==null)return null;var m=_e("recharts-bar",i),v=c;return f.createElement(pe,{className:m,id:c},d&&f.createElement("defs",null,f.createElement(za,{clipPathId:v,xAxisId:o,yAxisId:u})),f.createElement(pe,{className:"recharts-bar-rectangles",clipPath:d?"url(#clipPath-".concat(v,")"):void 0},f.createElement(si,{data:n,dataKey:r,background:s,allOtherBarProps:this.props}),f.createElement(hi,this.props)))}}var yi={activeBar:!1,animationBegin:0,animationDuration:400,animationEasing:"ease",animationInterpolateFn:fi,animationMatchBy:Ea,background:!1,hide:!1,isAnimationActive:"auto",label:!1,legendType:"rect",minPointSize:Ht,shape:Ge,xAxisId:0,yAxisId:0,zIndex:Ue.bar};function bi(e){var t=e.xAxisId,a=e.yAxisId,n=e.hide,r=e.legendType,i=e.minPointSize,o=e.activeBar,u=e.animationBegin,d=e.animationDuration,s=e.animationEasing,c=e.isAnimationActive,m=qa(t,a),v=m.needClip,y=Ka(),h=wt(),b=_a(e.children,qt),p=oe(A=>_r(A,e.id,h,b));if(y!=="vertical"&&y!=="horizontal")return null;var x,j=p?.[0];return j==null||j.height==null||j.width==null?x=0:x=y==="vertical"?j.height/2:j.width/2,f.createElement(Fa,{xAxisId:t,yAxisId:a,data:p,dataPointFormatter:pi,errorBarOffset:x},f.createElement(gi,F({},e,{layout:y,needClip:v,data:p,xAxisId:t,yAxisId:a,hide:n,legendType:r,minPointSize:i,activeBar:o,animationBegin:u,animationDuration:d,animationEasing:s,isAnimationActive:c})))}function xi(e){var t=e.layout,a=e.barSettings,n=a.dataKey,r=a.minPointSize,i=a.hasCustomShape,o=e.pos,u=e.bandSize,d=e.xAxis,s=e.yAxis,c=e.xAxisTicks,m=e.yAxisTicks,v=e.stackedData,y=e.displayedData,h=e.offset,b=e.cells,p=e.parentViewBox,x=e.dataStartIndex,j=t==="horizontal"?s:d,A=v?j.scale.domain():null,k=Ua({numericAxis:j}),S=j.scale.map(k);return y.map((w,T)=>{var g,D,q,O,P,X;if(v){var W=v[T+x];if(W==null)return null;g=Wa(W,A)}else g=Ct(w,n),Array.isArray(g)||(g=[k,g]);var C=Pr(r,Ht)(g[1],T);if(t==="horizontal"){var re,Se=s.scale.map(g[0]),ie=s.scale.map(g[1]);if(Se==null||ie==null)return null;D=lt({axis:d,ticks:c,bandSize:u,offset:o.offset,entry:w,index:T}),q=(re=ie??Se)!==null&&re!==void 0?re:void 0,O=o.size;var et=Se-ie;if(P=Qa(et)?0:et,X={x:D,y:h.top,width:O,height:h.height},Math.abs(C)>0&&Math.abs(P)<Math.abs(C)){var tt=ot(P||C)*(Math.abs(C)-Math.abs(P));q-=tt,P+=tt}}else{var Ie=d.scale.map(g[0]),at=d.scale.map(g[1]);if(Ie==null||at==null)return null;if(D=Ie,q=lt({axis:s,ticks:m,bandSize:u,offset:o.offset,entry:w,index:T}),O=at-Ie,P=o.size,X={x:h.left,y:q,width:h.width,height:P},Math.abs(C)>0&&Math.abs(O)<Math.abs(C)){var na=ot(O||C)*(Math.abs(C)-Math.abs(O));O+=na}}if(D==null||q==null||O==null||P==null||!i&&(O===0||P===0))return null;var ra=I(I({},w),{},{stackedBarStart:S,x:D,y:q,width:O,height:P,value:v?g:g[1],payload:w,background:X,tooltipPosition:{x:D+O/2,y:q+P/2},parentViewBox:p,originalDataIndex:T},b&&b[T]&&b[T].props);return ra}).filter(Boolean)}function ki(e){var t=Fe(e,yi),a=Wr(t.stackId),n=wt();return f.createElement(Da,{id:t.id,type:"bar"},r=>f.createElement(f.Fragment,null,f.createElement($a,{legendPayload:li(t)}),f.createElement(oi,{dataKey:t.dataKey,stroke:t.stroke,strokeWidth:t.strokeWidth,fill:t.fill,name:t.name,hide:t.hide,unit:t.unit,formatter:t.formatter,tooltipType:t.tooltipType,id:r}),f.createElement(La,{type:"bar",id:r,data:void 0,xAxisId:t.xAxisId,yAxisId:t.yAxisId,zAxisId:0,dataKey:t.dataKey,stackId:a,hide:t.hide,barSize:t.barSize,minPointSize:t.minPointSize,maxBarSize:t.maxBarSize,isPanorama:n,hasCustomShape:t.shape!=null&&t.shape!==Ge}),f.createElement(We,{zIndex:t.zIndex},f.createElement(bi,F({},t,{id:r})))))}var Gt=f.memo(ki,At);Gt.displayName="Bar";var ji=["axis","item"],Ai=f.forwardRef((e,t)=>f.createElement(en,{chartName:"BarChart",defaultTooltipEventType:"axis",validateTooltipEventTypes:ji,tooltipPayloadSearcher:tn,categoricalChartProps:e,ref:t}));const Oe=["#67b7ff","#9b82ff","#ea74ca","#ff8b78","#f6bd5c","#55d6ad","#49c6e5","#7f9cff","#c879ff","#8bd35f"],Vt=new Intl.NumberFormat("en-US"),Pi=new Intl.NumberFormat("en-US",{notation:"compact",maximumFractionDigits:1}),H=new Intl.DateTimeFormat("en-US",{month:"short",day:"numeric",year:"numeric"}),Si=new Intl.DateTimeFormat("en-US",{month:"short"});function Ii({account:e,summary:t,loading:a,range:n}){const[r,i]=f.useState("daily"),o=f.useMemo(()=>Mi(t?.daily??[],t?.range.to??t?.generatedAt),[t]),u=f.useMemo(()=>Bi(t?.models??[],t?.daily??[]),[t]),d=f.useMemo(()=>new Map(u.map(p=>[p.key,p.color])),[u]),s=qi(e),c=t?.totals??null,m=Ye(t?.models??[])[0]??null,v=c?.requests?c.completedRequests/c.requests:0,y=c&&c.promptTokens!==null&&c.completionTokens!==null?c.completionTokens/Math.max(1,c.promptTokens+c.completionTokens):null,h=[{label:n==="all"?"Lifetime tokens":"Tokens in range",value:c?G(c.totalTokens):a?"Loading":"0"},{label:"Peak day",value:c?G(c.peakDailyTokens):a?"Loading":"0"},{label:"Longest request",value:c?_i(c.longestRequestMs):a?"Loading":"—"},{label:"Current streak",value:c?bt(c.currentStreakDays):a?"Loading":"0 days"},{label:"Longest streak",value:c?bt(c.longestStreakDays):a?"Loading":"0 days"}],b=[{label:"Most used model",value:m?.model??"No model activity"},{label:"Successful requests",value:ve(v)},{label:"Active days",value:te(c?.activeDays??0)},{label:"Total requests",value:te(c?.requests??0)},{label:"Completion share",value:y===null?"Not reported":ve(y)},{label:"Prompt cache reuse",value:c?.cacheHitRate===null||c?.cacheHitRate===void 0?"Not reported":ve(c.cacheHitRate)},{label:"Cache telemetry",value:c&&c.promptTokens!==null?ve(c.cacheTelemetryCoverage):"Not reported"}];return l.jsxs("div",{className:"usage-activity-overview",children:[l.jsxs("header",{className:"usage-profile-header",children:[l.jsx("div",{className:"usage-profile-avatar","aria-hidden":"true",children:s.image?l.jsx("img",{src:s.image,alt:""}):l.jsx("span",{children:s.initial})}),l.jsxs("div",{className:"usage-profile-copy",children:[l.jsx("h1",{children:s.name}),l.jsxs("div",{className:"usage-profile-meta",children:[l.jsx("span",{children:s.handle}),s.badge?l.jsx("span",{className:"usage-profile-badge",children:s.badge}):null]})]})]}),l.jsx("div",{className:"usage-hero-metrics","aria-label":"Activity summary",children:h.map(p=>l.jsxs("div",{className:"usage-hero-metric",children:[l.jsx("strong",{children:p.value}),l.jsx("span",{children:p.label})]},p.label))}),l.jsxs("section",{className:"usage-activity-section","aria-labelledby":"usage-activity-title",children:[l.jsxs("div",{className:"usage-section-heading",children:[l.jsxs("div",{children:[l.jsx("h2",{id:"usage-activity-title",children:"Token activity"}),l.jsx("span",{children:Ki(t,n)})]}),l.jsx("div",{className:"usage-activity-mode",role:"group","aria-label":"Activity display",children:["daily","weekly","cumulative"].map(p=>l.jsx("button",{type:"button",className:r===p?"active":"",onClick:()=>i(p),children:Yt(p)},p))})]}),a&&!t?l.jsxs("div",{className:"usage-activity-loading",children:[l.jsx(kt,{className:"settings-spin",size:16}),l.jsx("span",{children:"Loading activity"})]}):l.jsx(Ti,{calendar:o,colorByModel:d,mode:r,modelColors:u})]}),l.jsxs("div",{className:"usage-insight-grid",children:[l.jsxs("section",{className:"usage-insight-section","aria-labelledby":"usage-summary-title",children:[l.jsx("h2",{id:"usage-summary-title",children:"Activity summary"}),l.jsx("div",{className:"usage-insight-list",children:b.map(p=>l.jsxs("div",{className:"usage-insight-row",children:[l.jsx("span",{children:p.label}),l.jsx("strong",{title:p.value,children:p.value})]},p.label))})]}),l.jsx(Ni,{colorByModel:d,rows:t?.models??[],totalTokens:c?.totalTokens??0})]})]})}function B(e,t){return JSON.stringify([e,t])}function Ti({calendar:e,colorByModel:t,mode:a,modelColors:n}){const[r,i]=f.useState(null),o=f.useRef(null),[u,d]=f.useState(e.length);f.useEffect(()=>{if(a!=="daily")return;const m=o.current;if(!m)return;const v=()=>{const h=Math.max(e.length,Math.ceil((m.clientWidth+4)/14));d(b=>b===h?b:h)};v();const y=new ResizeObserver(v);return y.observe(m),()=>y.disconnect()},[e.length,a]);const s=f.useMemo(()=>a==="daily"?Ei(e,u):e,[e,u,a]),c=s.map((m,v)=>{const y=K(m.firstDate),h=v>0?K(s[v-1].firstDate):null;return!h||h.getMonth()!==y.getMonth()?Si.format(y):""});return l.jsxs("div",{className:"usage-activity-visualization",ref:o,children:[a==="daily"&&r&&!r.day.future?l.jsx(wi,{colorByModel:t,day:r.day,left:r.left,top:r.top}):null,l.jsx("div",{className:"usage-activity-scroll",children:l.jsxs("div",{className:"usage-activity-canvas",style:{"--usage-week-count":s.length,"--usage-canvas-width":`${Math.max(10,s.length*14-4)}px`},children:[a==="daily"?l.jsx("div",{className:"usage-heatmap",role:"grid","aria-label":"Daily token activity since July",children:s.flatMap(m=>m.days.map(v=>{const y=Li(v.models,t);return l.jsx("span",{"aria-label":$i(v),className:`usage-activity-cell ${v.future?"future":""} ${v.totalTokens>0?"has-activity":""}`,"data-level":Di(v.totalTokens,s),"data-model-count":v.models.length,onBlur:()=>i(null),onFocus:h=>{const b=Ce(v,h.currentTarget);b&&i(b)},onKeyDown:h=>{if(h.key!=="Enter"&&h.key!==" ")return;const b=Ce(v,h.currentTarget);b&&i(b)},onMouseEnter:h=>{const b=Ce(v,h.currentTarget);b&&i(b)},onMouseLeave:()=>i(null),role:"gridcell",style:y?{"--usage-cell-gradient":y}:void 0,tabIndex:v.future?void 0:-1},v.date)}))}):l.jsx(Ci,{calendar:s,cumulative:a==="cumulative"}),l.jsx("div",{className:"usage-activity-months","aria-hidden":"true",children:c.map((m,v)=>l.jsx("span",{children:m},`${s[v].firstDate}:${m}`))}),l.jsx("div",{className:"usage-activity-year","aria-hidden":"true",children:s.length?K(s[0].firstDate).getFullYear():""})]})}),n.length?l.jsx(Oi,{models:n}):null]})}function wi({colorByModel:e,day:t,left:a,top:n}){return l.jsxs("div",{className:"usage-day-tooltip",role:"status",style:{"--usage-tooltip-left":`${a}px`,"--usage-tooltip-top":`${n}px`},children:[l.jsx("strong",{children:H.format(K(t.date))}),l.jsx("span",{children:t.totalTokens>0?`${G(t.totalTokens)} tokens · ${te(t.requests)} ${t.requests===1?"request":"requests"}`:"No recorded usage"}),t.models.length?l.jsx("div",{className:"usage-day-tooltip-models",children:t.models.map(r=>l.jsxs("div",{children:[l.jsx("i",{"aria-hidden":"true",style:{background:e.get(B(r.provider,r.model)),color:e.get(B(r.provider,r.model))}}),l.jsx("small",{title:`${Xe(r.provider)} · ${r.model}`,children:r.model}),l.jsx("em",{children:G(r.totalTokens)})]},B(r.provider,r.model)))}):null]})}function Oi({models:e}){return l.jsx("div",{className:"usage-model-legend","aria-label":"Model colors",children:e.map(t=>l.jsxs("span",{title:`${Xe(t.provider)} · ${t.model}`,children:[l.jsx("i",{"aria-hidden":"true",style:{background:t.color}}),t.model]},t.key))})}function Ci({calendar:e,cumulative:t}){let a=0;const n=e.map(i=>(a+=i.totalTokens,t?a:i.totalTokens)),r=Math.max(1,...n);return l.jsx("div",{className:`usage-activity-bars ${t?"cumulative":""}`,role:"img","aria-label":t?"Cumulative token activity by week":"Weekly token activity",children:n.map((i,o)=>l.jsx("span",{"aria-hidden":"true",style:{height:`${Math.max(i>0?5:2,i/r*100)}%`},title:`${Ri(e[o])}: ${G(i)}${t?" cumulative":""}`},e[o].firstDate))})}function Ni({colorByModel:e,rows:t,totalTokens:a}){const n=Ye(t);return l.jsxs("section",{className:"usage-insight-section","aria-labelledby":"usage-model-mix-title",children:[l.jsx("h2",{id:"usage-model-mix-title",children:"Model activity"}),n.length?l.jsx("div",{className:"usage-model-mix",children:n.map(r=>{const i=(r.totalTokens??0)/Math.max(1,a),o=e.get(B(r.provider,r.model))??ke(0);return l.jsxs("div",{className:"usage-model-mix-row",children:[l.jsx("div",{className:"usage-model-mix-icon","aria-hidden":"true",style:{background:o}}),l.jsxs("div",{className:"usage-model-mix-copy",children:[l.jsx("strong",{title:r.model,children:r.model}),l.jsxs("span",{children:[Xe(r.provider)," · ",te(r.requests)," requests"]}),l.jsx("i",{style:{"--usage-model-color":o,"--usage-model-share":`${Math.min(100,i*100)}%`}})]}),l.jsx("span",{children:G(r.totalTokens)})]},B(r.provider,r.model))})}):l.jsxs("div",{className:"usage-model-mix-empty",children:[l.jsx(ia,{size:16}),l.jsx("span",{children:"No model activity yet"})]})]})}function Mi(e,t){const a=t?new Date(t):new Date,n=Number.isNaN(a.getTime())?new Date:a,r=new Date(n.getFullYear(),6,1),i=Z(Fi(n),6-n.getDay()),o=Math.max(1,Math.ceil((i.getTime()-r.getTime()+1)/(10080*60*1e3))),u=new Map(e.map(s=>[s.date,s])),d=[];for(let s=0;s<o;s+=1){const c=[];for(let m=0;m<7;m+=1){const v=Z(r,s*7+m),y=Xt(v),h=u.get(y);c.push({date:y,future:v>n,models:h?.models??[],requests:h?.requests??0,totalTokens:h?.totalTokens??0})}d.push({days:c,firstDate:c[0].date,totalTokens:c.reduce((m,v)=>m+v.totalTokens,0)})}return d}function Ei(e,t){if(e.length>=t)return e;const a=[...e];let n=Z(K(e.at(-1).firstDate),7);for(;a.length<t;){const r=Array.from({length:7},(i,o)=>{const u=Z(n,o);return{date:Xt(u),future:!0,models:[],requests:0,totalTokens:0}});a.push({days:r,firstDate:r[0].date,totalTokens:0}),n=Z(n,7)}return a}function Di(e,t){if(e<=0)return 0;const a=t.flatMap(i=>i.days.map(o=>o.totalTokens)).filter(i=>i>0),n=Math.max(1,...a),r=e/n;return r>=.75?5:r>=.5?4:r>=.25?3:r>=.1?2:1}function $i(e){const t=K(e.date);return e.future?H.format(t):`${H.format(t)}: ${G(e.totalTokens)} tokens across ${te(e.requests)} requests`}function Ce(e,t){const a=t.closest(".usage-activity-visualization");if(!a)return null;const n=t.getBoundingClientRect(),r=a.getBoundingClientRect(),i=Math.min(125,Math.max(0,(r.width-16)/2)),o=n.left-r.left+n.width/2;return{day:e,left:Math.min(Math.max(o,i),Math.max(i,r.width-i)),top:n.top-r.top}}function Li(e,t){const a=e.filter(o=>o.totalTokens>0).sort((o,u)=>u.totalTokens-o.totalTokens);if(!a.length)return null;if(a.length===1){const o=t.get(B(a[0].provider,a[0].model))??ke(0);return`linear-gradient(135deg, ${o}, ${o})`}const n=a.reduce((o,u)=>o+u.totalTokens,0);let r=0;return`linear-gradient(135deg, ${a.map((o,u)=>{const d=t.get(B(o.provider,o.model))??ke(u),s=r+o.totalTokens/Math.max(1,n)*50;return r+=o.totalTokens/Math.max(1,n)*100,`${d} ${Math.round(s)}%`}).join(", ")})`}function Bi(e,t){const a=Ye(e),n=new Set(a.map(r=>B(r.provider,r.model)));for(const r of t)for(const i of r.models){const o=B(i.provider,i.model);n.has(o)||(n.add(o),a.push({provider:i.provider,model:i.model,route:"unknown",requests:i.requests,promptTokens:null,cacheTelemetryRequests:0,cacheHitRequests:0,cachedPromptTokens:null,uncachedPromptTokens:null,cacheWritePromptTokens:null,cacheHitRate:null,cacheRequestHitRate:null,cacheTelemetryCoverage:0,completionTokens:null,totalTokens:i.totalTokens,averageLatencyMs:null,p95LatencyMs:null,averageFirstTokenMs:null,p95FirstTokenMs:null,failures:0,failureRate:0,firstSeenAt:r.date,lastSeenAt:r.date}))}return a.map((r,i)=>({color:ke(i),key:B(r.provider,r.model),model:r.model,provider:r.provider}))}function ke(e){return e<Oe.length?Oe[e]:`hsl(${Math.round((205+(e-Oe.length)*137.508)%360)} 76% 68%)`}function Ri(e){const t=K(e.firstDate),a=Z(t,6);return`${H.format(t)} – ${H.format(a)}`}function Ye(e){const t=new Map;for(const a of e){const n=B(a.provider,a.model),r=t.get(n);if(!r){t.set(n,{...a});continue}r.requests+=a.requests,r.promptTokens=Me(r.promptTokens,a.promptTokens),r.completionTokens=Me(r.completionTokens,a.completionTokens),r.totalTokens=Me(r.totalTokens,a.totalTokens),r.failures+=a.failures,r.failureRate=r.requests>0?r.failures/r.requests:0,r.firstSeenAt=r.firstSeenAt<a.firstSeenAt?r.firstSeenAt:a.firstSeenAt,r.lastSeenAt=r.lastSeenAt>a.lastSeenAt?r.lastSeenAt:a.lastSeenAt}return[...t.values()].sort((a,n)=>(n.totalTokens??-1)-(a.totalTokens??-1)||n.requests-a.requests||a.model.localeCompare(n.model))}function qi(e){const t=e?.accounts.find(o=>o.isActive)??null,a=Ne(e?.profile?.name,t?.displayLabel,e?.label,e?.profile?.handle,"Your activity"),n=Ne(e?.profile?.handle,t?.handle,e?.activeProfile?.handle),r=n?`@${n.replace(/^@/,"")}`:"Local OpenPond usage",i=e?.products.find(o=>o.isActive)?.name??null;return{name:a,handle:r,badge:i,image:Ne(e?.profile?.image,e?.avatarUrl,t?.avatarUrl),initial:a.slice(0,1).toUpperCase()}}function Ki(e,t){if(t!=="all")return`${t==="7d"?"Last 7 days":t==="30d"?"Last 30 days":"Last 90 days"} · days outside this filter stay empty`;if(!e||e.totals.requests===0)return"Last 12 months · days without recorded usage stay empty";const a=e.daily[0]?.date,n=e.daily.at(-1)?.date;if(!a||!n)return"Last 12 months";const r=H.format(K(a)),i=H.format(K(n));return a===n?`Last 12 months · stored activity on ${r}`:`Last 12 months · stored activity ${r} – ${i}`}function Xe(e){return e==="openai"?"OpenAI":e==="anthropic"?"Anthropic":e==="google"?"Google":e==="openpond"?"OpenPond":e==="openrouter"?"OpenRouter":e==="codex"?"Codex":Yt(e.replaceAll("_"," "))}function Ne(...e){for(const t of e){const a=t?.trim();if(a)return a}return null}function Me(e,t){return e===null&&t===null?null:(e??0)+(t??0)}function G(e){return e===null?"Not reported":e>=1e4?Pi.format(e):Vt.format(e)}function te(e){return Vt.format(e)}function ve(e){return`${Math.round(e*100)}%`}function bt(e){return`${te(e)} ${e===1?"day":"days"}`}function _i(e){if(e===null)return"Not reported";const t=Math.round(e/1e3);if(t<60)return`${t}s`;const a=Math.floor(t/3600),n=Math.floor(t%3600/60);return a>0?`${a}h ${n}m`:`${n}m ${t%60}s`}function Yt(e){return e.replace(/\b\w/g,t=>t.toUpperCase())}function Fi(e){return new Date(e.getFullYear(),e.getMonth(),e.getDate())}function Z(e,t){return new Date(e.getFullYear(),e.getMonth(),e.getDate()+t)}function Xt(e){return[e.getFullYear(),String(e.getMonth()+1).padStart(2,"0"),String(e.getDate()).padStart(2,"0")].join("-")}function K(e){const[t,a,n]=e.split("-").map(Number);return new Date(t,a-1,n)}const Ze=new Intl.NumberFormat("en-US"),Zt=new Intl.NumberFormat("en-US",{notation:"compact",maximumFractionDigits:1}),zi=new Intl.NumberFormat("en-US",{maximumFractionDigits:1}),Ui=new Intl.DateTimeFormat("en-US",{month:"short",day:"numeric"}),Wi=new Intl.DateTimeFormat("en-US",{month:"short",day:"numeric",hour:"numeric",minute:"2-digit"});function L(e){return Ze.format(e)}function Hi(e){return Zt.format(e)}function U(e){return e===null?"missing":e>=1e4?Zt.format(e):Ze.format(e)}function se(e){return e===null?"missing":e>=1e3?`${(e/1e3).toFixed(e>=1e4?0:1)}s`:`${Ze.format(Math.round(e))}ms`}function ae(e){return`${zi.format(e*100)}%`}function Jt(e){return e===null?"not reported":ae(e)}function Gi(e){if(e.cacheTelemetrySource===null)return"not reported";if(e.cachedPromptTokens===null||e.uncachedPromptTokens===null)return"reported";const t=e.cachedPromptTokens+e.uncachedPromptTokens;return t>0?ae(e.cachedPromptTokens/t):"0%"}function Vi(e){const t=new Date(`${e}T00:00:00`);return Number.isNaN(t.getTime())?e:Ui.format(t)}function Qt(e){const t=new Date(e);return Number.isNaN(t.getTime())?e:Wi.format(t)}function ea(e){if(typeof e=="number")return e;if(typeof e=="string"){const t=Number(e);return Number.isFinite(t)?t:0}return 0}function Je(e){return{openai:"OpenAI",anthropic:"Anthropic",google:"Google",openpond:"OpenPond",openrouter:"OpenRouter",codex:"Codex"}[e]??Pe(e)}function Qe(e){return e==="openpond_hosted"?"OpenPond hosted":e==="local_byok"?"Local BYOK":e==="codex_app_server"?"Codex app server":"Unknown"}function Yi(e){return e==="provider_usage"?"Provider usage":e==="codex_context_usage"?"Codex context":e==="missing"?"Missing":Pe(e)}function ta(e){return Pe(e)}function Xi(e){return e?{composer_selection:"Composer selection",prompt_parse:"Prompt parse",server_parser:"Server parser",model_tool:"Model tool"}[e]??Pe(e):"Unknown source"}function Zi(e){return{foreground:"Foreground",tool_loop:"Tool loop",compaction:"Compaction",subagent:"Subagent",refiner:"Refiner"}[e]??"Other"}function Ji(e){return{chat_turn:"Chat turn",tool_loop:"Tool loop",slash_command:"Slash command",create_improve_planner:"Create/Improve planner",harness_refiner:"Harness Refiner",context_compaction:"Compaction",subagent:"Subagent",codex_context:"Codex context"}[e]??"Other"}function Qi(e){return e.attribution.commandName?e.attribution.commandName:e.sessionId?aa(e.sessionId):"None"}function Pe(e){return e.split("_").filter(Boolean).map(t=>`${t.slice(0,1).toUpperCase()}${t.slice(1)}`).join(" ")}function aa(e){return e.length<=14?e:`${e.slice(0,8)}...${e.slice(-4)}`}const el=[{value:"7d",label:"7 days"},{value:"30d",label:"30 days"},{value:"90d",label:"90 days"},{value:"all",label:"All time"}],tl=[{value:"all",label:"All calls"},{value:"user_facing",label:"User-facing"},{value:"background",label:"Background"},{value:"system",label:"System"}],al=[{value:"all",label:"All statuses"},{value:"started",label:"Started"},{value:"completed",label:"Completed"},{value:"failed",label:"Failed"},{value:"interrupted",label:"Interrupted"},{value:"missing",label:"Missing usage"}],Ee=8,he=["#5b8def","#41b883","#f2a65a","#d66ba0","#8f7ee7","#4fb6c2","#d6c15c","#9b9b9b"];function jl({account:e=null,connection:t,enabled:a,modelFocused:n=!1,onError:r,onOpenSourceSession:i}){const[o,u]=f.useState("all"),[d,s]=f.useState("all"),[c,m]=f.useState("all"),[v,y]=f.useState("all"),[h,b]=f.useState("all"),[p,x]=f.useState(null),[j,A]=f.useState(null),[k,S]=f.useState(null),[w,T]=f.useState(!1),[g,D]=f.useState(null);f.useEffect(()=>{if(!a)return;if(!t){x(null),A(null),S(null),T(!1),D("Usage data is unavailable");return}let P=!1;T(!0),D(null);const X={range:o,visibility:d,status:c};return Promise.all([Te.usage(t,{...X,provider:n&&v!=="all"?v:null,model:n&&h!=="all"?h:null}),Te.usageRecords(t,{...X,provider:n&&v!=="all"?v:null,model:n&&h!=="all"?h:null,limit:100}),n?Te.usage(t,{range:o}):Promise.resolve(null)]).then(([W,C,re])=>{P||(x(W),S(C),A(re),D(null),r(null))}).catch(W=>{if(P)return;const C=W instanceof Error?W.message:"Failed to load usage";D(C),r(C)}).finally(()=>{P||T(!1)}),()=>{P=!0}},[t,a,h,n,r,v,o,c,d]);const q=f.useMemo(()=>[...new Set((j?.models??[]).map(P=>P.provider))].sort(),[j]),O=f.useMemo(()=>[...new Set((j?.models??[]).filter(P=>v==="all"||P.provider===v).map(P=>P.model))].sort(),[j,v]);return l.jsx(nl,{account:e,summary:p,recordsResponse:k,loading:w,error:g,range:o,visibility:d,status:c,onRangeChange:u,onVisibilityChange:s,onStatusChange:m,provider:n?v:void 0,model:n?h:void 0,providerOptions:n?q:void 0,modelOptions:n?O:void 0,onProviderChange:n?P=>{y(P),b("all")}:void 0,onModelChange:n?b:void 0,onOpenSourceSession:i,modelFocused:n})}function nl({account:e=null,summary:t,recordsResponse:a,loading:n,error:r,range:i,visibility:o,status:u,onRangeChange:d,onVisibilityChange:s,onStatusChange:c,provider:m,model:v,providerOptions:y,modelOptions:h,onProviderChange:b,onModelChange:p,onOpenSourceSession:x,modelFocused:j=!1}){la(r);const A=f.useMemo(()=>pl(t?.daily??[]),[t]),k=f.useMemo(()=>xt(sl,x,g=>g.sessionId,"Open thread"),[x]),S=f.useMemo(()=>xt(vl,x,g=>g.sessionId,"Open request source"),[x]),w=a?.records??[],T=!!(t&&t.totals.requests>0);return l.jsxs("section",{className:"account-settings usage-settings",children:[l.jsx(Ii,{account:e,summary:t,loading:n,range:i}),l.jsx("div",{className:"usage-details-title",children:l.jsxs("div",{children:[l.jsx("h2",{children:j?"Model usage":"Detailed usage"}),l.jsx("span",{children:j?"Inspect model requests, tokens, prompt-cache reuse, providers, and latency.":"Inspect cache reuse, latency, routes, threads, workflows, and individual requests."})]})}),l.jsxs("div",{className:"usage-toolbar",children:[l.jsx("div",{className:"usage-range-control",role:"group","aria-label":"Usage range",children:el.map(g=>l.jsx("button",{type:"button",className:i===g.value?"active":"",disabled:!d,onClick:()=>d?.(g.value),children:g.label},g.value))}),l.jsxs("label",{className:"usage-filter-control",children:[l.jsx("span",{children:"Visibility"}),l.jsx("select",{value:o,disabled:!s,onChange:g=>s?.(g.target.value),children:tl.map(g=>l.jsx("option",{value:g.value,children:g.label},g.value))})]}),l.jsxs("label",{className:"usage-filter-control",children:[l.jsx("span",{children:"Status"}),l.jsx("select",{value:u,disabled:!c,onChange:g=>c?.(g.target.value),children:al.map(g=>l.jsx("option",{value:g.value,children:g.label},g.value))})]}),m!==void 0?l.jsxs("label",{className:"usage-filter-control",children:[l.jsx("span",{children:"Provider"}),l.jsxs("select",{"aria-label":"Filter usage by provider",value:m,disabled:!b,onChange:g=>b?.(g.target.value),children:[l.jsx("option",{value:"all",children:"All providers"}),(y??[]).map(g=>l.jsx("option",{value:g,children:Je(g)},g))]})]}):null,v!==void 0?l.jsxs("label",{className:"usage-filter-control",children:[l.jsx("span",{children:"Model"}),l.jsxs("select",{"aria-label":"Filter usage by model",value:v,disabled:!p,onChange:g=>p?.(g.target.value),children:[l.jsx("option",{value:"all",children:"All models"}),(h??[]).map(g=>l.jsx("option",{value:g,children:g},g))]})]}):null]}),l.jsx(rl,{title:"Daily tokens",children:l.jsx(il,{chart:A,loading:n&&!t})}),t&&!T?l.jsxs("div",{className:"account-list usage-empty-state",children:[l.jsx("strong",{children:"No usage records"}),l.jsx("span",{children:"Calls will appear after the next model request."})]}):null,l.jsx(_,{title:"Models",rows:t?.models??[],rowKey:g=>`${g.provider}:${g.model}:${g.route}`,emptyLabel:"No model usage",columns:ol}),j?null:l.jsxs(l.Fragment,{children:[l.jsx(_,{title:"Threads",rows:t?.threads??[],rowKey:g=>g.sessionId,emptyLabel:"No thread usage",columns:k,pageSize:10}),l.jsx(_,{title:"Slash commands",rows:t?.commands??[],rowKey:g=>`${g.commandName}:${g.commandSource??"unknown"}`,emptyLabel:"No command usage",columns:cl}),l.jsxs("div",{className:"usage-breakdown-grid",children:[l.jsx(_,{title:"Cache cohorts",rows:t?.cohorts??[],rowKey:g=>g.cohort,emptyLabel:"No cache cohorts",columns:fl,compact:!0}),l.jsx(_,{title:"Routes",rows:t?.routes??[],rowKey:g=>g.route,emptyLabel:"No route usage",columns:ul,compact:!0}),l.jsx(_,{title:"Statuses",rows:t?.statuses??[],rowKey:g=>g.status,emptyLabel:"No status usage",columns:dl,compact:!0}),l.jsx(_,{title:"Sources",rows:t?.sources??[],rowKey:g=>g.source,emptyLabel:"No source usage",columns:ml,compact:!0})]})]}),l.jsx(_,{title:"Requests",rows:w,rowKey:g=>g.id,emptyLabel:"No requests",columns:S,footer:a?.hasMore?`Showing ${w.length} recent requests`:null})]})}function xt(e,t,a,n){return t?[...e,{key:"open-source",label:"Open",align:"end",render:r=>{const i=a(r);return i?l.jsx(hl,{label:n,sessionId:i,onOpenSourceSession:t}):l.jsx("span",{"aria-hidden":"true"})}}]:e}function rl({title:e,children:t}){return l.jsxs("div",{className:"account-list usage-panel",children:[l.jsx("div",{className:"account-list-heading",children:l.jsx("span",{children:e})}),t]})}function il({chart:e,loading:t}){return t?l.jsxs("div",{className:"usage-chart-empty",children:[l.jsx(kt,{className:"settings-spin",size:16}),l.jsx("span",{children:"Loading usage"})]}):e.rows.length===0||e.series.length===0?l.jsx("div",{className:"usage-chart-empty",children:"No daily tokens"}):l.jsx("div",{className:"usage-chart-frame",children:l.jsx(an,{width:"100%",height:"100%",children:l.jsxs(Ai,{data:e.rows,margin:{top:18,right:10,bottom:2,left:-8},children:[l.jsx(nn,{stroke:"rgba(255, 255, 255, 0.06)",vertical:!1}),l.jsx(rn,{dataKey:"label",axisLine:!1,tickLine:!1,tick:{fill:"#9b9b9b",fontSize:11}}),l.jsx(ln,{axisLine:!1,tickLine:!1,tick:{fill:"#9b9b9b",fontSize:11},tickFormatter:a=>Hi(Number(a))}),l.jsx(on,{content:l.jsx(ll,{}),cursor:{fill:"rgba(255, 255, 255, 0.04)"}}),l.jsx(Rt,{iconType:"square",wrapperStyle:{color:"#c8c8c8",fontSize:11,paddingTop:8}}),e.series.map(a=>l.jsx(Gt,{dataKey:a.dataKey,name:a.label,stackId:"tokens",fill:a.color,radius:[3,3,0,0],isAnimationActive:!1},a.dataKey))]})})})}function ll({active:e,payload:t,label:a}){if(!e||!t?.length)return null;const n=t.map(r=>({color:r.color??"#9b9b9b",name:r.name??"Model",value:ea(r.value)})).filter(r=>r.value>0);return n.length===0?null:l.jsxs("div",{className:"usage-chart-tooltip",children:[l.jsx("strong",{children:a}),n.map(r=>l.jsxs("div",{children:[l.jsx("span",{style:{backgroundColor:r.color}}),l.jsx("small",{children:r.name}),l.jsx("em",{children:U(r.value)})]},r.name))]})}function _({title:e,rows:t,rowKey:a,columns:n,emptyLabel:r,footer:i,compact:o=!1,pageSize:u}){const[d,s]=f.useState(0),c=u?Math.max(1,Math.ceil(t.length/u)):1,m=Math.min(d,c-1),v=u?t.slice(m*u,m*u+u):t,y=m*(u??t.length)+1,h=Math.min(t.length,y+(u??t.length)-1);return f.useEffect(()=>{d!==m&&s(m)},[m,d]),l.jsxs("div",{className:`account-list usage-table-panel ${o?"compact":""}`,children:[l.jsxs("div",{className:"account-list-heading",children:[l.jsx("span",{children:e}),l.jsx("small",{children:t.length?L(t.length):""})]}),t.length===0?l.jsx("div",{className:"usage-table-empty",children:r}):l.jsxs("div",{className:"usage-table-scroll",children:[l.jsxs("table",{className:"usage-table",children:[l.jsx("thead",{children:l.jsx("tr",{children:n.map(b=>l.jsx("th",{className:b.align==="end"?"align-end":void 0,children:b.label},b.key))})}),l.jsx("tbody",{children:v.map((b,p)=>l.jsx("tr",{children:n.map(x=>l.jsx("td",{className:x.align==="end"?"align-end":void 0,children:x.render(b)},x.key))},a(b,p)))})]}),i||u?l.jsxs("div",{className:"usage-table-footer",children:[i?l.jsx("span",{children:i}):null,u&&t.length?l.jsxs("span",{children:["Showing ",L(y),"–",L(h)," of ",L(t.length)]}):null,u&&c>1?l.jsxs("nav",{className:"usage-table-pagination","aria-label":`${e} pages`,children:[l.jsx("button",{type:"button",disabled:m===0,onClick:()=>s(b=>Math.max(0,b-1)),children:"Previous"}),l.jsxs("span",{children:["Page ",m+1," of ",c]}),l.jsx("button",{type:"button",disabled:m===c-1,onClick:()=>s(b=>Math.min(c-1,b+1)),children:"Next"})]}):null]}):null]})]})}const ol=[{key:"model",label:"Model",render:e=>l.jsx(ce,{title:e.model,detail:`${Je(e.provider)} / ${Qe(e.route)}`})},{key:"tokens",label:"Tokens",align:"end",render:e=>U(e.totalTokens)},{key:"cache",label:"Cache reuse",align:"end",render:e=>Jt(e.cacheHitRate)},{key:"coverage",label:"Cache data",align:"end",render:e=>ae(e.cacheTelemetryCoverage)},{key:"requests",label:"Requests",align:"end",render:e=>L(e.requests)},{key:"latency",label:"p95 latency",align:"end",render:e=>se(e.p95LatencyMs)},{key:"first-token",label:"First token",align:"end",render:e=>se(e.p95FirstTokenMs)},{key:"failure-rate",label:"Failure rate",align:"end",render:e=>ae(e.failureRate)}],sl=[{key:"thread",label:"Thread",render:e=>l.jsx(ce,{title:e.title??"Untitled thread",detail:aa(e.sessionId)})},{key:"tokens",label:"Tokens",align:"end",render:e=>U(e.totalTokens)},{key:"requests",label:"Requests",align:"end",render:e=>L(e.requests)},{key:"latency",label:"p95 latency",align:"end",render:e=>se(e.p95LatencyMs)},{key:"last-seen",label:"Last seen",align:"end",render:e=>Qt(e.lastSeenAt)}],cl=[{key:"command",label:"Command",render:e=>l.jsx(ce,{title:e.commandName,detail:Xi(e.commandSource)})},{key:"tokens",label:"Tokens",align:"end",render:e=>U(e.totalTokens)},{key:"requests",label:"Requests",align:"end",render:e=>L(e.requests)},{key:"latency",label:"p95 latency",align:"end",render:e=>se(e.p95LatencyMs)},{key:"failure-rate",label:"Failure rate",align:"end",render:e=>ae(e.failureRate)}],ul=[{key:"route",label:"Route",render:e=>Qe(e.route)},{key:"requests",label:"Requests",align:"end",render:e=>L(e.requests)},{key:"tokens",label:"Tokens",align:"end",render:e=>U(e.totalTokens)}],dl=[{key:"status",label:"Status",render:e=>ta(e.status)},{key:"requests",label:"Requests",align:"end",render:e=>L(e.requests)},{key:"tokens",label:"Tokens",align:"end",render:e=>U(e.totalTokens)}],ml=[{key:"source",label:"Source",render:e=>Yi(e.source)},{key:"requests",label:"Requests",align:"end",render:e=>L(e.requests)},{key:"tokens",label:"Tokens",align:"end",render:e=>U(e.totalTokens)}],fl=[{key:"cohort",label:"Cohort",render:e=>Zi(e.cohort)},{key:"cache",label:"Cache reuse",align:"end",render:e=>Jt(e.cacheHitRate)},{key:"coverage",label:"Cache data",align:"end",render:e=>ae(e.cacheTelemetryCoverage)},{key:"requests",label:"Requests",align:"end",render:e=>L(e.requests)}],vl=[{key:"started",label:"Started",render:e=>Qt(e.startedAt)},{key:"model",label:"Model",render:e=>l.jsx(ce,{title:e.model,detail:Je(e.provider)})},{key:"route",label:"Route",render:e=>l.jsx(ce,{title:Qe(e.route),detail:ta(e.status)})},{key:"kind",label:"Kind",render:e=>Ji(e.requestKind)},{key:"tokens",label:"Tokens",align:"end",render:e=>U(e.totalTokens)},{key:"cache",label:"Cache",align:"end",render:e=>Gi(e)},{key:"latency",label:"Latency",align:"end",render:e=>se(e.durationMs)},{key:"context",label:"Context",render:e=>Qi(e)}];function ce({title:e,detail:t}){return l.jsxs("span",{className:"usage-primary-cell",children:[l.jsx("strong",{children:e}),l.jsx("small",{children:t})]})}function hl({label:e,sessionId:t,onOpenSourceSession:a}){return l.jsx("button",{type:"button",className:"settings-icon-button ghost usage-source-action",title:e,"aria-label":e,onClick:()=>a(t),children:l.jsx(oa,{size:14})})}function pl(e){const t=new Map;for(const s of e)for(const c of s.models){const m=De(c.provider,c.model),v=t.get(m)??{provider:c.provider,model:c.model,totalTokens:0,requests:0};v.totalTokens+=c.totalTokens,v.requests+=c.requests,t.set(m,v)}const a=[...t.values()].sort((s,c)=>c.totalTokens-s.totalTokens||c.requests-s.requests||s.model.localeCompare(c.model)),n=a.length>Ee?Ee-1:Ee,r=a.slice(0,n),i=new Map,o=r.map((s,c)=>{const m=`model${c}`;return i.set(De(s.provider,s.model),m),{dataKey:m,label:s.model,color:he[c%he.length]}}),u=a.length>r.length;return u&&o.push({dataKey:"otherModels",label:"Other models",color:he[Math.min(o.length,he.length-1)]}),{rows:e.map(s=>{const c={date:s.date,label:Vi(s.date),requests:s.requests,totalTokens:s.totalTokens};for(const v of o)c[v.dataKey]=0;let m=0;for(const v of s.models){const y=i.get(De(v.provider,v.model));y?c[y]=ea(c[y])+v.totalTokens:m+=v.totalTokens}return u&&(c.otherModels=m),c}),series:o}}function De(e,t){return`${e}\0${t}`}export{nl as UsageSettingsContent,jl as UsageSettingsSection};
|
|
4
|
+
A`).concat(i,",").concat(i,",0,1,1,").concat(o,",").concat(r),className:"recharts-legend-icon"});if(d==="rect")return f.createElement("path",{stroke:"none",fill:u,d:"M0,".concat(E/8,"h").concat(E,"v").concat(E*3/4,"h").concat(-E,"z"),className:"recharts-legend-icon"});if(f.isValidElement(t.legendIcon)){var s=Bt({},t);return delete s.legendIcon,f.cloneElement(t.legendIcon,s)}return f.createElement(Lt,{fill:u,cx:r,cy:r,size:E,sizeType:"diameter",type:d})}function Bn(e){var t=e.payload,a=e.iconSize,n=e.layout,r=e.formatter,i=e.inactiveColor,o=e.iconType,u=e.labelStyle,d={x:0,y:0,width:E,height:E},s={display:n==="horizontal"?"inline-block":"block",marginRight:10},c={display:"inline-block",verticalAlign:"middle",marginRight:4};return t.map((m,v)=>{var y=m.formatter||r,h=_e({"recharts-legend-item":!0,["legend-item-".concat(v)]:!0,inactive:m.inactive});if(m.type==="none")return null;var b=typeof u=="object"?Bt({},u):{};b.color=m.inactive?i:b.color||m.color;var p=y?y(m.value,m,v):m.value;return f.createElement("li",be({className:h,style:s,key:"legend-item-".concat(v)},ze(e,m,v)),f.createElement(da,{width:a,height:a,viewBox:d,style:c,"aria-label":m.value==null?"legend icon":"".concat(m.value," legend icon")},f.createElement(Ln,{data:m,iconType:o,inactiveColor:i})),f.createElement("span",{className:"recharts-legend-item-text",style:b},p))})}var Rn=e=>{var t=Fe(e,Dn),a=t.payload,n=t.layout,r=t.align;if(!a||!a.length)return null;var i={padding:0,margin:0,textAlign:n==="horizontal"?r:"left"};return f.createElement("ul",{className:"recharts-default-legend",style:i},f.createElement(Bn,be({},t,{payload:a})))};function qn(){return oe(ma)}var Kn=["contextPayload"];function qe(){return qe=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var a=arguments[t];for(var n in a)({}).hasOwnProperty.call(a,n)&&(e[n]=a[n])}return e},qe.apply(null,arguments)}function _n(e,t){return Wn(e)||Un(e,t)||zn(e,t)||Fn()}function Fn(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
|
|
5
|
+
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function zn(e,t){if(e){if(typeof e=="string")return dt(e,t);var a={}.toString.call(e).slice(8,-1);return a==="Object"&&e.constructor&&(a=e.constructor.name),a==="Map"||a==="Set"?Array.from(e):a==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(a)?dt(e,t):void 0}}function dt(e,t){(t==null||t>e.length)&&(t=e.length);for(var a=0,n=Array(t);a<t;a++)n[a]=e[a];return n}function Un(e,t){var a=e==null?null:typeof Symbol<"u"&&e[Symbol.iterator]||e["@@iterator"];if(a!=null){var n,r,i,o,u=[],d=!0,s=!1;try{if(i=(a=a.call(e)).next,t!==0)for(;!(d=(n=i.call(a)).done)&&(u.push(n.value),u.length!==t);d=!0);}catch(c){s=!0,r=c}finally{try{if(!d&&a.return!=null&&(o=a.return(),Object(o)!==o))return}finally{if(s)throw r}}return u}}function Wn(e){if(Array.isArray(e))return e}function mt(e,t){var a=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(r){return Object.getOwnPropertyDescriptor(e,r).enumerable})),a.push.apply(a,n)}return a}function ee(e){for(var t=1;t<arguments.length;t++){var a=arguments[t]!=null?arguments[t]:{};t%2?mt(Object(a),!0).forEach(function(n){Hn(e,n,a[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(a)):mt(Object(a)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(a,n))})}return e}function Hn(e,t,a){return(t=Gn(t))in e?Object.defineProperty(e,t,{value:a,enumerable:!0,configurable:!0,writable:!0}):e[t]=a,e}function Gn(e){var t=Vn(e,"string");return typeof t=="symbol"?t:t+""}function Vn(e,t){if(typeof e!="object"||!e)return e;var a=e[Symbol.toPrimitive];if(a!==void 0){var n=a.call(e,t);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}function Yn(e,t){if(e==null)return{};var a,n,r=Xn(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;n<i.length;n++)a=i[n],t.indexOf(a)===-1&&{}.propertyIsEnumerable.call(e,a)&&(r[a]=e[a])}return r}function Xn(e,t){if(e==null)return{};var a={};for(var n in e)if({}.hasOwnProperty.call(e,n)){if(t.indexOf(n)!==-1)continue;a[n]=e[n]}return a}function Zn(e){return e.value}function Jn(e){var t=e.contextPayload,a=Yn(e,Kn),n=ba(t,e.payloadUniqBy,Zn),r=ee(ee({},a),{},{payload:n});return f.isValidElement(e.content)?f.cloneElement(e.content,r):typeof e.content=="function"?f.createElement(e.content,r):f.createElement(Rn,r)}function Qn(e,t,a,n,r,i){var o=t.layout,u=t.align,d=t.verticalAlign,s,c;return(!e||(e.left===void 0||e.left===null)&&(e.right===void 0||e.right===null))&&(u==="center"&&o==="vertical"?s={left:((n||0)-i.width)/2}:s=u==="right"?{right:a&&a.right||0}:{left:a&&a.left||0}),(!e||(e.top===void 0||e.top===null)&&(e.bottom===void 0||e.bottom===null))&&(d==="middle"?c={top:((r||0)-i.height)/2}:c=d==="bottom"?{bottom:a&&a.bottom||0}:{top:a&&a.top||0}),ee(ee({},s),c)}function er(e){var t=e.align,a=e.layout,n=e.verticalAlign,r=e.itemSorter,i=ue();return f.useLayoutEffect(()=>{i(ya({align:t,layout:a,verticalAlign:n,itemSorter:r}))},[i,t,a,n,r]),null}function tr(e){var t=e.width,a=e.height,n=ue();return f.useLayoutEffect(()=>{n(nt({width:t,height:a}))},[n,t,a]),f.useLayoutEffect(()=>()=>{n(nt({width:0,height:0}))},[n]),null}function ar(e,t,a,n){return e==="vertical"&&t!=null?{height:t}:e==="horizontal"?{width:a||n}:null}var nr={align:"center",iconSize:14,inactiveColor:"#ccc",itemSorter:"value",labelStyle:{},layout:"horizontal",verticalAlign:"bottom"};function rr(e){var t=Fe(e,nr),a=qn(),n=fa(),r=va(),i=t.width,o=t.height,u=t.wrapperStyle,d=t.portal,s=ha([a]),c=_n(s,2),m=c[0],v=c[1],y=pa(),h=ga();if(y==null||h==null)return null;var b=y-(r?.left||0)-(r?.right||0),p=ar(t.layout,o,i,b),x=d?u:ee(ee({position:"absolute",width:p?.width||i||"auto",height:p?.height||o||"auto"},Qn(u,t,r,y,h,m)),u),j=d??n;if(j==null||a==null)return null;var A=f.createElement("div",{className:"recharts-legend-wrapper",style:x,ref:v},f.createElement(er,{layout:t.layout,align:t.align,verticalAlign:t.verticalAlign,itemSorter:t.itemSorter}),!d&&f.createElement(tr,{width:m.width,height:m.height}),f.createElement(Jn,qe({},t,p,{margin:r,chartWidth:y,chartHeight:h,contextPayload:a})));return ia.createPortal(A,j)}var Rt=f.memo(rr,At);Rt.displayName="Legend";var qt=e=>null;qt.displayName="Cell";var Kt=(e,t,a)=>{var n=ue();return(r,i)=>o=>{e?.(r,i,o),n(xa({activeIndex:String(i),activeDataKey:t,activeCoordinate:r.tooltipPosition,activeGraphicalItemId:a}))}},_t=e=>{var t=ue();return(a,n)=>r=>{e?.(a,n,r),t(ka())}},Ft=(e,t,a)=>{var n=ue();return(r,i)=>o=>{e?.(r,i,o),n(ja({activeIndex:String(i),activeDataKey:t,activeCoordinate:r.tooltipPosition,activeGraphicalItemId:a}))}};function ir(e,t){return cr(e)||sr(e,t)||or(e,t)||lr()}function lr(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
|
|
6
|
+
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function or(e,t){if(e){if(typeof e=="string")return ft(e,t);var a={}.toString.call(e).slice(8,-1);return a==="Object"&&e.constructor&&(a=e.constructor.name),a==="Map"||a==="Set"?Array.from(e):a==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(a)?ft(e,t):void 0}}function ft(e,t){(t==null||t>e.length)&&(t=e.length);for(var a=0,n=Array(t);a<t;a++)n[a]=e[a];return n}function sr(e,t){var a=e==null?null:typeof Symbol<"u"&&e[Symbol.iterator]||e["@@iterator"];if(a!=null){var n,r,i,o,u=[],d=!0,s=!1;try{if(i=(a=a.call(e)).next,t!==0)for(;!(d=(n=i.call(a)).done)&&(u.push(n.value),u.length!==t);d=!0);}catch(c){s=!0,r=c}finally{try{if(!d&&a.return!=null&&(o=a.return(),Object(o)!==o))return}finally{if(s)throw r}}return u}}function cr(e){if(Array.isArray(e))return e}var vt=(e,t,a)=>{var n=a??e;if(!je(n))return $e(n,t,0)},ur=(e,t,a)=>{var n={},r=e.filter(Aa),i=e.filter(s=>s.stackId==null),o=r.reduce((s,c)=>{var m=s[c.stackId];return m==null&&(m=[]),m.push(c),s[c.stackId]=m,s},n),u=Object.entries(o).map(s=>{var c,m=ir(s,2),v=m[0],y=m[1],h=y.map(p=>p.dataKey),b=vt(t,a,(c=y[0])===null||c===void 0?void 0:c.barSize);return{stackId:v,dataKeys:h,barSize:b}}),d=i.map(s=>{var c=[s.dataKey].filter(v=>v!=null),m=vt(t,a,s.barSize);return{stackId:void 0,dataKeys:c,barSize:m}});return[...u,...d]};function ht(e,t){var a=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(r){return Object.getOwnPropertyDescriptor(e,r).enumerable})),a.push.apply(a,n)}return a}function fe(e){for(var t=1;t<arguments.length;t++){var a=arguments[t]!=null?arguments[t]:{};t%2?ht(Object(a),!0).forEach(function(n){dr(e,n,a[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(a)):ht(Object(a)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(a,n))})}return e}function dr(e,t,a){return(t=mr(t))in e?Object.defineProperty(e,t,{value:a,enumerable:!0,configurable:!0,writable:!0}):e[t]=a,e}function mr(e){var t=fr(e,"string");return typeof t=="symbol"?t:t+""}function fr(e,t){if(typeof e!="object"||!e)return e;var a=e[Symbol.toPrimitive];if(a!==void 0){var n=a.call(e,t);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}function vr(e,t,a,n,r){var i,o=n.length;if(!(o<1)){var u=$e(e,a,0,!0),d,s=[];if(Le((i=n[0])===null||i===void 0?void 0:i.barSize)){var c=!1,m=a/o,v=n.reduce((j,A)=>j+(A.barSize||0),0);v+=(o-1)*u,v>=a&&(v-=(o-1)*u,u=0),v>=a&&m>0&&(c=!0,m*=.9,v=o*m);var y=Math.round((a-v)/2),h={offset:y-u,size:0};d=n.reduce((j,A)=>{var k,P={stackId:A.stackId,dataKeys:A.dataKeys,position:{offset:h.offset+h.size+u,size:c?m:(k=A.barSize)!==null&&k!==void 0?k:0}},w=[...j,P];return h=P.position,w},s)}else{var b=$e(t,a,0,!0);a-2*b-(o-1)*u<=0&&(u=0);var p=(a-2*b-(o-1)*u)/o;p>1&&(p=Math.round(p));var x=Le(r)?Math.min(p,r):p;d=n.reduce((j,A,k)=>[...j,{stackId:A.stackId,dataKeys:A.dataKeys,position:{offset:b+(p+u)*k+(p-x)/2,size:x}}],s)}return d}}var hr=(e,t,a,n,r,i,o)=>{var u=je(o)?t:o,d=vr(a,n,r!==i?r:i,e,u);return r!==i&&d!=null&&(d=d.map(s=>fe(fe({},s),{},{position:fe(fe({},s.position),{},{offset:s.position.offset-r/2})}))),d},pr=(e,t)=>{var a=Sa(t);if(!(!e||a==null||t==null)){var n=t.stackId;if(n!=null){var r=e[n];if(r){var i=r.stackedData;if(i)return i.find(o=>o.key===a)}}}},gr=(e,t)=>{if(!(e==null||t==null)){var a=e.find(n=>n.stackId===t.stackId&&t.dataKey!=null&&n.dataKeys.includes(t.dataKey));if(a!=null)return a.position}};function yr(e,t){return e&&typeof e=="object"&&"zIndex"in e&&typeof e.zIndex=="number"&&Le(e.zIndex)?e.zIndex:t}function V(e,t){var a,n;return(a=(n=e.graphicalItems.cartesianItems.find(r=>r.id===t))===null||n===void 0?void 0:n.xAxisId)!==null&&a!==void 0?a:St}function Y(e,t){var a,n;return(a=(n=e.graphicalItems.cartesianItems.find(r=>r.id===t))===null||n===void 0?void 0:n.yAxisId)!==null&&a!==void 0?a:St}var br="Invariant failed";function xr(e,t){throw new Error(br)}var kr=["option"];function jr(e,t){if(e==null)return{};var a,n,r=Ar(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;n<i.length;n++)a=i[n],t.indexOf(a)===-1&&{}.propertyIsEnumerable.call(e,a)&&(r[a]=e[a])}return r}function Ar(e,t){if(e==null)return{};var a={};for(var n in e)if({}.hasOwnProperty.call(e,n)){if(t.indexOf(n)!==-1)continue;a[n]=e[n]}return a}var Ge=Pa;function Ve(e){var t=e.option,a=jr(e,kr);return f.createElement(Ia,{option:t,DefaultShape:Ge,shapeProps:a,activeClassName:"recharts-active-bar",inActiveClassName:"recharts-inactive-bar"})}var Sr=function(t){var a=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0;return(n,r)=>{if(le(t))return t;var i=le(n)||je(n);return i?t(n,r):(i||xr(),a)}},Pr=(e,t,a)=>a,Ir=(e,t)=>t,de=z([It,Ir],(e,t)=>e.filter(a=>a.type==="bar").find(a=>a.id===t)),Tr=z([de],e=>e?.maxBarSize),wr=(e,t,a,n)=>n,Or=z([ne,It,V,Y,Pr],(e,t,a,n,r)=>t.filter(i=>e==="horizontal"?i.xAxisId===a:i.yAxisId===n).filter(i=>i.isPanorama===r).filter(i=>i.hide===!1).filter(i=>i.type==="bar")),Cr=(e,t,a)=>{var n=ne(e),r=V(e,t),i=Y(e,t);if(!(r==null||i==null))return n==="horizontal"?rt(e,"yAxis",i,a):rt(e,"xAxis",r,a)},Nr=(e,t)=>{var a=ne(e),n=V(e,t),r=Y(e,t);if(!(n==null||r==null))return a==="horizontal"?it(e,"xAxis",n):it(e,"yAxis",r)},Mr=z([Or,Ma,Nr],ur),Er=(e,t,a)=>{var n,r,i=de(e,t);if(i==null)return 0;var o=V(e,t),u=Y(e,t);if(o==null||u==null)return 0;var d=ne(e),s=Tt(e),c=i.maxBarSize,m=je(c)?s:c,v,y;return d==="horizontal"?(v=J(e,"xAxis",o,a),y=Q(e,"xAxis",o,a)):(v=J(e,"yAxis",u,a),y=Q(e,"yAxis",u,a)),(n=(r=Pt(v,y,!0))!==null&&r!==void 0?r:m)!==null&&n!==void 0?n:0},zt=(e,t,a)=>{var n=ne(e),r=V(e,t),i=Y(e,t);if(!(r==null||i==null)){var o,u;return n==="horizontal"?(o=J(e,"xAxis",r,a),u=Q(e,"xAxis",r,a)):(o=J(e,"yAxis",i,a),u=Q(e,"yAxis",i,a)),Pt(o,u)}},Dr=z([Mr,Tt,Ca,Na,Er,zt,Tr],hr),$r=(e,t,a)=>{var n=V(e,t);if(n!=null)return J(e,"xAxis",n,a)},Lr=(e,t,a)=>{var n=Y(e,t);if(n!=null)return J(e,"yAxis",n,a)},Br=(e,t,a)=>{var n=V(e,t);if(n!=null)return Q(e,"xAxis",n,a)},Rr=(e,t,a)=>{var n=Y(e,t);if(n!=null)return Q(e,"yAxis",n,a)},qr=z([Dr,de],gr),Kr=z([Cr,de],pr),_r=z([Ta,wa,$r,Lr,Br,Rr,qr,ne,Oa,zt,Kr,de,wr],(e,t,a,n,r,i,o,u,d,s,c,m,v)=>{var y=d.chartData,h=d.dataStartIndex,b=d.dataEndIndex;if(!(m==null||o==null||t==null||u!=="horizontal"&&u!=="vertical"||a==null||n==null||r==null||i==null||s==null)){var p=m.data,x;if(p!=null&&p.length>0?x=p:x=y?.slice(h,b+1),x!=null)return xi({layout:u,barSettings:m,pos:o,parentViewBox:t,bandSize:s,xAxis:a,yAxis:n,xAxisTicks:r,yAxisTicks:i,stackedData:c,displayedData:x,offset:e,cells:v,dataStartIndex:h})}}),Fr=["index"];function Ke(){return Ke=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var a=arguments[t];for(var n in a)({}).hasOwnProperty.call(a,n)&&(e[n]=a[n])}return e},Ke.apply(null,arguments)}function zr(e,t){if(e==null)return{};var a,n,r=Ur(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;n<i.length;n++)a=i[n],t.indexOf(a)===-1&&{}.propertyIsEnumerable.call(e,a)&&(r[a]=e[a])}return r}function Ur(e,t){if(e==null)return{};var a={};for(var n in e)if({}.hasOwnProperty.call(e,n)){if(t.indexOf(n)!==-1)continue;a[n]=e[n]}return a}var Ut=f.createContext(void 0),Wr=e=>{var t=f.useContext(Ut);if(t!=null)return t.stackId;if(e!=null)return Ea(e)},Hr=(e,t)=>"recharts-bar-stack-clip-path-".concat(e,"-").concat(t),Gr=e=>{var t=f.useContext(Ut);if(t!=null){var a=t.stackId;return"url(#".concat(Hr(a,e),")")}},Wt=e=>{var t=e.index,a=zr(e,Fr),n=Gr(t);return f.createElement(pe,Ke({className:"recharts-bar-stack-layer",clipPath:n},a))},Vr=["onMouseEnter","onMouseLeave","onClick"],Yr=["value","background","tooltipPosition"],Xr=["id"],Zr=["onMouseEnter","onClick","onMouseLeave"];function pt(e,t){return ti(e)||ei(e,t)||Qr(e,t)||Jr()}function Jr(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
|
|
7
|
+
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function Qr(e,t){if(e){if(typeof e=="string")return gt(e,t);var a={}.toString.call(e).slice(8,-1);return a==="Object"&&e.constructor&&(a=e.constructor.name),a==="Map"||a==="Set"?Array.from(e):a==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(a)?gt(e,t):void 0}}function gt(e,t){(t==null||t>e.length)&&(t=e.length);for(var a=0,n=Array(t);a<t;a++)n[a]=e[a];return n}function ei(e,t){var a=e==null?null:typeof Symbol<"u"&&e[Symbol.iterator]||e["@@iterator"];if(a!=null){var n,r,i,o,u=[],d=!0,s=!1;try{if(i=(a=a.call(e)).next,t!==0)for(;!(d=(n=i.call(a)).done)&&(u.push(n.value),u.length!==t);d=!0);}catch(c){s=!0,r=c}finally{try{if(!d&&a.return!=null&&(o=a.return(),Object(o)!==o))return}finally{if(s)throw r}}return u}}function ti(e){if(Array.isArray(e))return e}function F(){return F=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var a=arguments[t];for(var n in a)({}).hasOwnProperty.call(a,n)&&(e[n]=a[n])}return e},F.apply(null,arguments)}function yt(e,t){var a=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(r){return Object.getOwnPropertyDescriptor(e,r).enumerable})),a.push.apply(a,n)}return a}function I(e){for(var t=1;t<arguments.length;t++){var a=arguments[t]!=null?arguments[t]:{};t%2?yt(Object(a),!0).forEach(function(n){ai(e,n,a[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(a)):yt(Object(a)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(a,n))})}return e}function ai(e,t,a){return(t=ni(t))in e?Object.defineProperty(e,t,{value:a,enumerable:!0,configurable:!0,writable:!0}):e[t]=a,e}function ni(e){var t=ri(e,"string");return typeof t=="symbol"?t:t+""}function ri(e,t){if(typeof e!="object"||!e)return e;var a=e[Symbol.toPrimitive];if(a!==void 0){var n=a.call(e,t);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}function xe(e,t){if(e==null)return{};var a,n,r=ii(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;n<i.length;n++)a=i[n],t.indexOf(a)===-1&&{}.propertyIsEnumerable.call(e,a)&&(r[a]=e[a])}return r}function ii(e,t){if(e==null)return{};var a={};for(var n in e)if({}.hasOwnProperty.call(e,n)){if(t.indexOf(n)!==-1)continue;a[n]=e[n]}return a}var li=e=>{var t=e.dataKey,a=e.name,n=e.fill,r=e.legendType,i=e.hide;return[{inactive:i,dataKey:t,type:r,color:n,value:Ot(a,t),payload:e}]},oi=f.memo(e=>{var t=e.dataKey,a=e.stroke,n=e.strokeWidth,r=e.fill,i=e.name,o=e.hide,u=e.unit,d=e.formatter,s=e.tooltipType,c=e.id,m={dataDefinedOnItem:void 0,getPosition:qa,settings:{stroke:a,strokeWidth:n,fill:r,dataKey:t,nameKey:void 0,name:Ot(i,t),hide:o,type:s,color:r,unit:u,formatter:d,graphicalItemId:c}};return f.createElement(Ra,{tooltipEntrySettings:m})});function si(e){var t=oe(Nt),a=e.data,n=e.dataKey,r=e.background,i=e.allOtherBarProps,o=i.onMouseEnter,u=i.onMouseLeave,d=i.onClick,s=xe(i,Vr),c=Kt(o,n,i.id),m=_t(u),v=Ft(d,n,i.id);if(!r||a==null)return null;var y=Ga(r);return f.createElement(We,{zIndex:yr(r,Ue.barBackground)},a.map((h,b)=>{h.value;var p=h.background;h.tooltipPosition;var x=xe(h,Yr);if(!p)return null;var j=c(h,h.originalDataIndex),A=m(h,h.originalDataIndex),k=v(h,h.originalDataIndex),P=I(I(I(I(I({option:r,isActive:String(h.originalDataIndex)===t},x),{},{fill:"#eee"},p),y),ze(s,h,b)),{},{onMouseEnter:j,onMouseLeave:A,onClick:k,dataKey:n,index:b,className:"recharts-bar-background-rectangle"});return f.createElement(Ve,F({key:"background-bar-".concat(b)},P))}))}function ci(e){var t=e.showLabels,a=e.children,n=e.rects,r=n?.map(i=>{var o={x:i.x,y:i.y,width:i.width,lowerWidth:i.width,upperWidth:i.width,height:i.height};return I(I({},o),{},{value:i.value,payload:i.payload,parentViewBox:i.parentViewBox,viewBox:o,fill:i.fill})});return f.createElement(Za,{value:t?r:void 0},a)}function ui(e){var t=e.shape,a=e.activeBar,n=e.baseProps,r=e.entry,i=e.index,o=e.dataKey,u=oe(Nt),d=oe(Qa),s=a&&String(r.originalDataIndex)===u&&(d==null||o===d),c=f.useState(!1),m=pt(c,2),v=m[0],y=m[1],h=f.useState(!1),b=pt(h,2),p=b[0],x=b[1];f.useEffect(()=>{var T;return s?(y(!0),T=requestAnimationFrame(()=>{x(!0)})):x(!1),()=>{cancelAnimationFrame(T)}},[s]);var j=f.useCallback(()=>{s||y(!1)},[s]),A=s&&p,k=s||v,P;s?a===!0?P=t:P=a:P=t;var w=f.createElement(Ve,F({},n,{name:String(n.name)},r,{isActive:A,option:P,index:i,dataKey:o,animationElapsedTime:e.animationElapsedTime,isAnimating:e.isAnimating,isEntrance:e.isEntrance,onTransitionEnd:j}));return k?f.createElement(We,{zIndex:Ue.activeBar},f.createElement(Wt,{index:r.originalDataIndex},w)):w}function di(e){var t=e.shape,a=e.baseProps,n=e.entry,r=e.index,i=e.dataKey;return f.createElement(Ve,F({},a,{name:String(a.name)},n,{isActive:!1,option:t,index:r,dataKey:i,animationElapsedTime:e.animationElapsedTime,isAnimating:e.isAnimating,isEntrance:e.isEntrance}))}function mi(e){var t,a=e.data,n=e.props,r=e.animationElapsedTime,i=e.isAnimating,o=e.isEntrance,u=(t=Ja(n))!==null&&t!==void 0?t:{},d=u.id,s=xe(u,Xr),c=n.shape,m=n.dataKey,v=n.activeBar,y=n.onMouseEnter,h=n.onClick,b=n.onMouseLeave,p=xe(n,Zr),x=Kt(y,m,d),j=_t(b),A=Ft(h,m,d);return a?f.createElement(f.Fragment,null,a.map((k,P)=>f.createElement(Wt,F({index:k.originalDataIndex,key:"rectangle-".concat(k?.x,"-").concat(k?.y,"-").concat(k?.value,"-").concat(P),className:"recharts-bar-rectangle"},ze(p,k,P),{onMouseEnter:x(k,k.originalDataIndex),onMouseLeave:j(k,k.originalDataIndex),onClick:A(k,k.originalDataIndex)}),v?f.createElement(ui,{shape:c,activeBar:v,baseProps:s,entry:k,index:P,dataKey:m,animationElapsedTime:r,isAnimating:i,isEntrance:o}):f.createElement(di,{shape:c,baseProps:s,entry:k,index:P,dataKey:m,animationElapsedTime:r,isAnimating:i,isEntrance:o})))):null}var fi=(e,t,a)=>e==null?[]:t===1?e.flatMap(n=>n.status==="removed"?[]:[n.next]):e.flatMap(n=>{if(n.status==="removed")return a==="horizontal"?[I(I({},n.prev),{},{height:$(n.prev.height,0,t),y:$(n.prev.y,n.prev.y+n.prev.height,t)})]:[I(I({},n.prev),{},{width:$(n.prev.width,0,t)})];if(n.status==="matched")return[I(I({},n.next),{},{x:$(n.prev.x,n.next.x,t),y:$(n.prev.y,n.next.y,t),width:$(n.prev.width,n.next.width,t),height:$(n.prev.height,n.next.height,t)})];var r=n.next;return a==="horizontal"?[I(I({},r),{},{height:$(0,r.height,t),y:$(r.stackedBarStart,r.y,t)})]:[I(I({},r),{},{width:$(0,r.width,t),x:$(r.stackedBarStart,r.x,t)})]});function vi(e){var t=e.props,a=e.previousRectanglesRef,n=t.data,r=t.isAnimationActive,i=t.animationBegin,o=t.animationDuration,u=t.animationEasing,d=t.animationInterpolateFn,s=t.layout,c=Va(t.onAnimationStart,t.onAnimationEnd),m=c.isAnimating,v=c.handleAnimationStart,y=c.handleAnimationEnd;return f.createElement(ci,{showLabels:!m,rects:n},f.createElement(Ya,{animationInput:n,animationIdPrefix:"recharts-bar-",items:n,previousItemsRef:a,isAnimationActive:r,animationBegin:i,animationDuration:o,animationEasing:u,onAnimationStart:v,onAnimationEnd:y,animationInterpolateFn:d,animationMatchBy:t.animationMatchBy,layout:s},(h,b,p)=>f.createElement(pe,null,f.createElement(mi,{props:t,data:h,animationElapsedTime:b,isAnimating:m||b<1,isEntrance:p}))),f.createElement(Xa,{label:t.label}),t.children)}function hi(e){var t=f.useRef(null);return f.createElement(vi,{previousRectanglesRef:t,props:e})}var Ht=0,pi=(e,t)=>{var a=Array.isArray(e.value)?e.value[1]:e.value;return{x:e.x,y:e.y,value:a,errorVal:Ct(e,t)}};class gi extends f.PureComponent{render(){var t=this.props,a=t.hide,n=t.data,r=t.dataKey,i=t.className,o=t.xAxisId,u=t.yAxisId,d=t.needClip,s=t.background,c=t.id;if(a||n==null)return null;var m=_e("recharts-bar",i),v=c;return f.createElement(pe,{className:m,id:c},d&&f.createElement("defs",null,f.createElement(Ua,{clipPathId:v,xAxisId:o,yAxisId:u})),f.createElement(pe,{className:"recharts-bar-rectangles",clipPath:d?"url(#clipPath-".concat(v,")"):void 0},f.createElement(si,{data:n,dataKey:r,background:s,allOtherBarProps:this.props}),f.createElement(hi,this.props)))}}var yi={activeBar:!1,animationBegin:0,animationDuration:400,animationEasing:"ease",animationInterpolateFn:fi,animationMatchBy:Da,background:!1,hide:!1,isAnimationActive:"auto",label:!1,legendType:"rect",minPointSize:Ht,shape:Ge,xAxisId:0,yAxisId:0,zIndex:Ue.bar};function bi(e){var t=e.xAxisId,a=e.yAxisId,n=e.hide,r=e.legendType,i=e.minPointSize,o=e.activeBar,u=e.animationBegin,d=e.animationDuration,s=e.animationEasing,c=e.isAnimationActive,m=Ka(t,a),v=m.needClip,y=_a(),h=wt(),b=Fa(e.children,qt),p=oe(A=>_r(A,e.id,h,b));if(y!=="vertical"&&y!=="horizontal")return null;var x,j=p?.[0];return j==null||j.height==null||j.width==null?x=0:x=y==="vertical"?j.height/2:j.width/2,f.createElement(za,{xAxisId:t,yAxisId:a,data:p,dataPointFormatter:pi,errorBarOffset:x},f.createElement(gi,F({},e,{layout:y,needClip:v,data:p,xAxisId:t,yAxisId:a,hide:n,legendType:r,minPointSize:i,activeBar:o,animationBegin:u,animationDuration:d,animationEasing:s,isAnimationActive:c})))}function xi(e){var t=e.layout,a=e.barSettings,n=a.dataKey,r=a.minPointSize,i=a.hasCustomShape,o=e.pos,u=e.bandSize,d=e.xAxis,s=e.yAxis,c=e.xAxisTicks,m=e.yAxisTicks,v=e.stackedData,y=e.displayedData,h=e.offset,b=e.cells,p=e.parentViewBox,x=e.dataStartIndex,j=t==="horizontal"?s:d,A=v?j.scale.domain():null,k=Wa({numericAxis:j}),P=j.scale.map(k);return y.map((w,T)=>{var g,D,q,O,S,X;if(v){var W=v[T+x];if(W==null)return null;g=Ha(W,A)}else g=Ct(w,n),Array.isArray(g)||(g=[k,g]);var C=Sr(r,Ht)(g[1],T);if(t==="horizontal"){var re,Pe=s.scale.map(g[0]),ie=s.scale.map(g[1]);if(Pe==null||ie==null)return null;D=lt({axis:d,ticks:c,bandSize:u,offset:o.offset,entry:w,index:T}),q=(re=ie??Pe)!==null&&re!==void 0?re:void 0,O=o.size;var et=Pe-ie;if(S=en(et)?0:et,X={x:D,y:h.top,width:O,height:h.height},Math.abs(C)>0&&Math.abs(S)<Math.abs(C)){var tt=ot(S||C)*(Math.abs(C)-Math.abs(S));q-=tt,S+=tt}}else{var Ie=d.scale.map(g[0]),at=d.scale.map(g[1]);if(Ie==null||at==null)return null;if(D=Ie,q=lt({axis:s,ticks:m,bandSize:u,offset:o.offset,entry:w,index:T}),O=at-Ie,S=o.size,X={x:h.left,y:q,width:h.width,height:S},Math.abs(C)>0&&Math.abs(O)<Math.abs(C)){var na=ot(O||C)*(Math.abs(C)-Math.abs(O));O+=na}}if(D==null||q==null||O==null||S==null||!i&&(O===0||S===0))return null;var ra=I(I({},w),{},{stackedBarStart:P,x:D,y:q,width:O,height:S,value:v?g:g[1],payload:w,background:X,tooltipPosition:{x:D+O/2,y:q+S/2},parentViewBox:p,originalDataIndex:T},b&&b[T]&&b[T].props);return ra}).filter(Boolean)}function ki(e){var t=Fe(e,yi),a=Wr(t.stackId),n=wt();return f.createElement($a,{id:t.id,type:"bar"},r=>f.createElement(f.Fragment,null,f.createElement(La,{legendPayload:li(t)}),f.createElement(oi,{dataKey:t.dataKey,stroke:t.stroke,strokeWidth:t.strokeWidth,fill:t.fill,name:t.name,hide:t.hide,unit:t.unit,formatter:t.formatter,tooltipType:t.tooltipType,id:r}),f.createElement(Ba,{type:"bar",id:r,data:void 0,xAxisId:t.xAxisId,yAxisId:t.yAxisId,zAxisId:0,dataKey:t.dataKey,stackId:a,hide:t.hide,barSize:t.barSize,minPointSize:t.minPointSize,maxBarSize:t.maxBarSize,isPanorama:n,hasCustomShape:t.shape!=null&&t.shape!==Ge}),f.createElement(We,{zIndex:t.zIndex},f.createElement(bi,F({},t,{id:r})))))}var Gt=f.memo(ki,At);Gt.displayName="Bar";var ji=["axis","item"],Ai=f.forwardRef((e,t)=>f.createElement(tn,{chartName:"BarChart",defaultTooltipEventType:"axis",validateTooltipEventTypes:ji,tooltipPayloadSearcher:an,categoricalChartProps:e,ref:t}));const Oe=["#67b7ff","#9b82ff","#ea74ca","#ff8b78","#f6bd5c","#55d6ad","#49c6e5","#7f9cff","#c879ff","#8bd35f"],Vt=new Intl.NumberFormat("en-US"),Si=new Intl.NumberFormat("en-US",{notation:"compact",maximumFractionDigits:1}),H=new Intl.DateTimeFormat("en-US",{month:"short",day:"numeric",year:"numeric"}),Pi=new Intl.DateTimeFormat("en-US",{month:"short"});function Ii({account:e,summary:t,loading:a,range:n}){const[r,i]=f.useState("daily"),o=f.useMemo(()=>Mi(t?.daily??[],t?.range.to??t?.generatedAt),[t]),u=f.useMemo(()=>Bi(t?.models??[],t?.daily??[]),[t]),d=f.useMemo(()=>new Map(u.map(p=>[p.key,p.color])),[u]),s=qi(e),c=t?.totals??null,m=Ye(t?.models??[])[0]??null,v=c?.requests?c.completedRequests/c.requests:0,y=c&&c.promptTokens!==null&&c.completionTokens!==null?c.completionTokens/Math.max(1,c.promptTokens+c.completionTokens):null,h=[{label:n==="all"?"Lifetime tokens":"Tokens in range",value:c?G(c.totalTokens):a?"Loading":"0"},{label:"Peak day",value:c?G(c.peakDailyTokens):a?"Loading":"0"},{label:"Longest request",value:c?_i(c.longestRequestMs):a?"Loading":"—"},{label:"Current streak",value:c?bt(c.currentStreakDays):a?"Loading":"0 days"},{label:"Longest streak",value:c?bt(c.longestStreakDays):a?"Loading":"0 days"}],b=[{label:"Most used model",value:m?.model??"No model activity"},{label:"Successful requests",value:ve(v)},{label:"Active days",value:te(c?.activeDays??0)},{label:"Total requests",value:te(c?.requests??0)},{label:"Completion share",value:y===null?"Not reported":ve(y)},{label:"Prompt cache reuse",value:c?.cacheHitRate===null||c?.cacheHitRate===void 0?"Not reported":ve(c.cacheHitRate)},{label:"Cache telemetry",value:c&&c.promptTokens!==null?ve(c.cacheTelemetryCoverage):"Not reported"}];return l.jsxs("div",{className:"usage-activity-overview",children:[l.jsxs("header",{className:"usage-profile-header",children:[l.jsx("div",{className:"usage-profile-avatar","aria-hidden":"true",children:s.image?l.jsx("img",{src:s.image,alt:""}):l.jsx("span",{children:s.initial})}),l.jsxs("div",{className:"usage-profile-copy",children:[l.jsx("h1",{children:s.name}),l.jsxs("div",{className:"usage-profile-meta",children:[l.jsx("span",{children:s.handle}),s.badge?l.jsx("span",{className:"usage-profile-badge",children:s.badge}):null]})]})]}),l.jsx("div",{className:"usage-hero-metrics","aria-label":"Activity summary",children:h.map(p=>l.jsxs("div",{className:"usage-hero-metric",children:[l.jsx("strong",{children:p.value}),l.jsx("span",{children:p.label})]},p.label))}),l.jsxs("section",{className:"usage-activity-section","aria-labelledby":"usage-activity-title",children:[l.jsxs("div",{className:"usage-section-heading",children:[l.jsxs("div",{children:[l.jsx("h2",{id:"usage-activity-title",children:"Token activity"}),l.jsx("span",{children:Ki(t,n)})]}),l.jsx("div",{className:"usage-activity-mode",role:"group","aria-label":"Activity display",children:["daily","weekly","cumulative"].map(p=>l.jsx("button",{type:"button",className:r===p?"active":"",onClick:()=>i(p),children:Yt(p)},p))})]}),a&&!t?l.jsxs("div",{className:"usage-activity-loading",children:[l.jsx(kt,{className:"settings-spin",size:16}),l.jsx("span",{children:"Loading activity"})]}):l.jsx(Ti,{calendar:o,colorByModel:d,mode:r,modelColors:u})]}),l.jsxs("div",{className:"usage-insight-grid",children:[l.jsxs("section",{className:"usage-insight-section","aria-labelledby":"usage-summary-title",children:[l.jsx("h2",{id:"usage-summary-title",children:"Activity summary"}),l.jsx("div",{className:"usage-insight-list",children:b.map(p=>l.jsxs("div",{className:"usage-insight-row",children:[l.jsx("span",{children:p.label}),l.jsx("strong",{title:p.value,children:p.value})]},p.label))})]}),l.jsx(Ni,{colorByModel:d,rows:t?.models??[],totalTokens:c?.totalTokens??0})]})]})}function B(e,t){return JSON.stringify([e,t])}function Ti({calendar:e,colorByModel:t,mode:a,modelColors:n}){const[r,i]=f.useState(null),o=f.useRef(null),[u,d]=f.useState(e.length);f.useEffect(()=>{if(a!=="daily")return;const m=o.current;if(!m)return;const v=()=>{const h=Math.max(e.length,Math.ceil((m.clientWidth+4)/14));d(b=>b===h?b:h)};v();const y=new ResizeObserver(v);return y.observe(m),()=>y.disconnect()},[e.length,a]);const s=f.useMemo(()=>a==="daily"?Ei(e,u):e,[e,u,a]),c=s.map((m,v)=>{const y=K(m.firstDate),h=v>0?K(s[v-1].firstDate):null;return!h||h.getMonth()!==y.getMonth()?Pi.format(y):""});return l.jsxs("div",{className:"usage-activity-visualization",ref:o,children:[a==="daily"&&r&&!r.day.future?l.jsx(wi,{colorByModel:t,day:r.day,left:r.left,top:r.top}):null,l.jsx("div",{className:"usage-activity-scroll",children:l.jsxs("div",{className:"usage-activity-canvas",style:{"--usage-week-count":s.length,"--usage-canvas-width":`${Math.max(10,s.length*14-4)}px`},children:[a==="daily"?l.jsx("div",{className:"usage-heatmap",role:"grid","aria-label":"Daily token activity since July",children:s.flatMap(m=>m.days.map(v=>{const y=Li(v.models,t);return l.jsx("span",{"aria-label":$i(v),className:`usage-activity-cell ${v.future?"future":""} ${v.totalTokens>0?"has-activity":""}`,"data-level":Di(v.totalTokens,s),"data-model-count":v.models.length,onBlur:()=>i(null),onFocus:h=>{const b=Ce(v,h.currentTarget);b&&i(b)},onKeyDown:h=>{if(h.key!=="Enter"&&h.key!==" ")return;const b=Ce(v,h.currentTarget);b&&i(b)},onMouseEnter:h=>{const b=Ce(v,h.currentTarget);b&&i(b)},onMouseLeave:()=>i(null),role:"gridcell",style:y?{"--usage-cell-gradient":y}:void 0,tabIndex:v.future?void 0:-1},v.date)}))}):l.jsx(Ci,{calendar:s,cumulative:a==="cumulative"}),l.jsx("div",{className:"usage-activity-months","aria-hidden":"true",children:c.map((m,v)=>l.jsx("span",{children:m},`${s[v].firstDate}:${m}`))}),l.jsx("div",{className:"usage-activity-year","aria-hidden":"true",children:s.length?K(s[0].firstDate).getFullYear():""})]})}),n.length?l.jsx(Oi,{models:n}):null]})}function wi({colorByModel:e,day:t,left:a,top:n}){return l.jsxs("div",{className:"usage-day-tooltip",role:"status",style:{"--usage-tooltip-left":`${a}px`,"--usage-tooltip-top":`${n}px`},children:[l.jsx("strong",{children:H.format(K(t.date))}),l.jsx("span",{children:t.totalTokens>0?`${G(t.totalTokens)} tokens · ${te(t.requests)} ${t.requests===1?"request":"requests"}`:"No recorded usage"}),t.models.length?l.jsx("div",{className:"usage-day-tooltip-models",children:t.models.map(r=>l.jsxs("div",{children:[l.jsx("i",{"aria-hidden":"true",style:{background:e.get(B(r.provider,r.model)),color:e.get(B(r.provider,r.model))}}),l.jsx("small",{title:`${Xe(r.provider)} · ${r.model}`,children:r.model}),l.jsx("em",{children:G(r.totalTokens)})]},B(r.provider,r.model)))}):null]})}function Oi({models:e}){return l.jsx("div",{className:"usage-model-legend","aria-label":"Model colors",children:e.map(t=>l.jsxs("span",{title:`${Xe(t.provider)} · ${t.model}`,children:[l.jsx("i",{"aria-hidden":"true",style:{background:t.color}}),t.model]},t.key))})}function Ci({calendar:e,cumulative:t}){let a=0;const n=e.map(i=>(a+=i.totalTokens,t?a:i.totalTokens)),r=Math.max(1,...n);return l.jsx("div",{className:`usage-activity-bars ${t?"cumulative":""}`,role:"img","aria-label":t?"Cumulative token activity by week":"Weekly token activity",children:n.map((i,o)=>l.jsx("span",{"aria-hidden":"true",style:{height:`${Math.max(i>0?5:2,i/r*100)}%`},title:`${Ri(e[o])}: ${G(i)}${t?" cumulative":""}`},e[o].firstDate))})}function Ni({colorByModel:e,rows:t,totalTokens:a}){const n=Ye(t);return l.jsxs("section",{className:"usage-insight-section","aria-labelledby":"usage-model-mix-title",children:[l.jsx("h2",{id:"usage-model-mix-title",children:"Model activity"}),n.length?l.jsx("div",{className:"usage-model-mix",children:n.map(r=>{const i=(r.totalTokens??0)/Math.max(1,a),o=e.get(B(r.provider,r.model))??ke(0);return l.jsxs("div",{className:"usage-model-mix-row",children:[l.jsx("div",{className:"usage-model-mix-icon","aria-hidden":"true",style:{background:o}}),l.jsxs("div",{className:"usage-model-mix-copy",children:[l.jsx("strong",{title:r.model,children:r.model}),l.jsxs("span",{children:[Xe(r.provider)," · ",te(r.requests)," requests"]}),l.jsx("i",{style:{"--usage-model-color":o,"--usage-model-share":`${Math.min(100,i*100)}%`}})]}),l.jsx("span",{children:G(r.totalTokens)})]},B(r.provider,r.model))})}):l.jsxs("div",{className:"usage-model-mix-empty",children:[l.jsx(la,{size:16}),l.jsx("span",{children:"No model activity yet"})]})]})}function Mi(e,t){const a=t?new Date(t):new Date,n=Number.isNaN(a.getTime())?new Date:a,r=new Date(n.getFullYear(),6,1),i=Z(Fi(n),6-n.getDay()),o=Math.max(1,Math.ceil((i.getTime()-r.getTime()+1)/(10080*60*1e3))),u=new Map(e.map(s=>[s.date,s])),d=[];for(let s=0;s<o;s+=1){const c=[];for(let m=0;m<7;m+=1){const v=Z(r,s*7+m),y=Xt(v),h=u.get(y);c.push({date:y,future:v>n,models:h?.models??[],requests:h?.requests??0,totalTokens:h?.totalTokens??0})}d.push({days:c,firstDate:c[0].date,totalTokens:c.reduce((m,v)=>m+v.totalTokens,0)})}return d}function Ei(e,t){if(e.length>=t)return e;const a=[...e];let n=Z(K(e.at(-1).firstDate),7);for(;a.length<t;){const r=Array.from({length:7},(i,o)=>{const u=Z(n,o);return{date:Xt(u),future:!0,models:[],requests:0,totalTokens:0}});a.push({days:r,firstDate:r[0].date,totalTokens:0}),n=Z(n,7)}return a}function Di(e,t){if(e<=0)return 0;const a=t.flatMap(i=>i.days.map(o=>o.totalTokens)).filter(i=>i>0),n=Math.max(1,...a),r=e/n;return r>=.75?5:r>=.5?4:r>=.25?3:r>=.1?2:1}function $i(e){const t=K(e.date);return e.future?H.format(t):`${H.format(t)}: ${G(e.totalTokens)} tokens across ${te(e.requests)} requests`}function Ce(e,t){const a=t.closest(".usage-activity-visualization");if(!a)return null;const n=t.getBoundingClientRect(),r=a.getBoundingClientRect(),i=Math.min(125,Math.max(0,(r.width-16)/2)),o=n.left-r.left+n.width/2;return{day:e,left:Math.min(Math.max(o,i),Math.max(i,r.width-i)),top:n.top-r.top}}function Li(e,t){const a=e.filter(o=>o.totalTokens>0).sort((o,u)=>u.totalTokens-o.totalTokens);if(!a.length)return null;if(a.length===1){const o=t.get(B(a[0].provider,a[0].model))??ke(0);return`linear-gradient(135deg, ${o}, ${o})`}const n=a.reduce((o,u)=>o+u.totalTokens,0);let r=0;return`linear-gradient(135deg, ${a.map((o,u)=>{const d=t.get(B(o.provider,o.model))??ke(u),s=r+o.totalTokens/Math.max(1,n)*50;return r+=o.totalTokens/Math.max(1,n)*100,`${d} ${Math.round(s)}%`}).join(", ")})`}function Bi(e,t){const a=Ye(e),n=new Set(a.map(r=>B(r.provider,r.model)));for(const r of t)for(const i of r.models){const o=B(i.provider,i.model);n.has(o)||(n.add(o),a.push({provider:i.provider,model:i.model,route:"unknown",requests:i.requests,promptTokens:null,cacheTelemetryRequests:0,cacheHitRequests:0,cachedPromptTokens:null,uncachedPromptTokens:null,cacheWritePromptTokens:null,cacheHitRate:null,cacheRequestHitRate:null,cacheTelemetryCoverage:0,completionTokens:null,totalTokens:i.totalTokens,averageLatencyMs:null,p95LatencyMs:null,averageFirstTokenMs:null,p95FirstTokenMs:null,failures:0,failureRate:0,firstSeenAt:r.date,lastSeenAt:r.date}))}return a.map((r,i)=>({color:ke(i),key:B(r.provider,r.model),model:r.model,provider:r.provider}))}function ke(e){return e<Oe.length?Oe[e]:`hsl(${Math.round((205+(e-Oe.length)*137.508)%360)} 76% 68%)`}function Ri(e){const t=K(e.firstDate),a=Z(t,6);return`${H.format(t)} – ${H.format(a)}`}function Ye(e){const t=new Map;for(const a of e){const n=B(a.provider,a.model),r=t.get(n);if(!r){t.set(n,{...a});continue}r.requests+=a.requests,r.promptTokens=Me(r.promptTokens,a.promptTokens),r.completionTokens=Me(r.completionTokens,a.completionTokens),r.totalTokens=Me(r.totalTokens,a.totalTokens),r.failures+=a.failures,r.failureRate=r.requests>0?r.failures/r.requests:0,r.firstSeenAt=r.firstSeenAt<a.firstSeenAt?r.firstSeenAt:a.firstSeenAt,r.lastSeenAt=r.lastSeenAt>a.lastSeenAt?r.lastSeenAt:a.lastSeenAt}return[...t.values()].sort((a,n)=>(n.totalTokens??-1)-(a.totalTokens??-1)||n.requests-a.requests||a.model.localeCompare(n.model))}function qi(e){const t=e?.accounts.find(o=>o.isActive)??null,a=Ne(e?.profile?.name,t?.displayLabel,e?.label,e?.profile?.handle,"Your activity"),n=Ne(e?.profile?.handle,t?.handle,e?.activeProfile?.handle),r=n?`@${n.replace(/^@/,"")}`:"Local OpenPond usage",i=e?.products.find(o=>o.isActive)?.name??null;return{name:a,handle:r,badge:i,image:Ne(e?.profile?.image,e?.avatarUrl,t?.avatarUrl),initial:a.slice(0,1).toUpperCase()}}function Ki(e,t){if(t!=="all")return`${t==="7d"?"Last 7 days":t==="30d"?"Last 30 days":"Last 90 days"} · days outside this filter stay empty`;if(!e||e.totals.requests===0)return"Last 12 months · days without recorded usage stay empty";const a=e.daily[0]?.date,n=e.daily.at(-1)?.date;if(!a||!n)return"Last 12 months";const r=H.format(K(a)),i=H.format(K(n));return a===n?`Last 12 months · stored activity on ${r}`:`Last 12 months · stored activity ${r} – ${i}`}function Xe(e){return e==="openai"?"OpenAI":e==="anthropic"?"Anthropic":e==="google"?"Google":e==="openpond"?"OpenPond":e==="openrouter"?"OpenRouter":e==="codex"?"Codex":Yt(e.replaceAll("_"," "))}function Ne(...e){for(const t of e){const a=t?.trim();if(a)return a}return null}function Me(e,t){return e===null&&t===null?null:(e??0)+(t??0)}function G(e){return e===null?"Not reported":e>=1e4?Si.format(e):Vt.format(e)}function te(e){return Vt.format(e)}function ve(e){return`${Math.round(e*100)}%`}function bt(e){return`${te(e)} ${e===1?"day":"days"}`}function _i(e){if(e===null)return"Not reported";const t=Math.round(e/1e3);if(t<60)return`${t}s`;const a=Math.floor(t/3600),n=Math.floor(t%3600/60);return a>0?`${a}h ${n}m`:`${n}m ${t%60}s`}function Yt(e){return e.replace(/\b\w/g,t=>t.toUpperCase())}function Fi(e){return new Date(e.getFullYear(),e.getMonth(),e.getDate())}function Z(e,t){return new Date(e.getFullYear(),e.getMonth(),e.getDate()+t)}function Xt(e){return[e.getFullYear(),String(e.getMonth()+1).padStart(2,"0"),String(e.getDate()).padStart(2,"0")].join("-")}function K(e){const[t,a,n]=e.split("-").map(Number);return new Date(t,a-1,n)}const Ze=new Intl.NumberFormat("en-US"),Zt=new Intl.NumberFormat("en-US",{notation:"compact",maximumFractionDigits:1}),zi=new Intl.NumberFormat("en-US",{maximumFractionDigits:1}),Ui=new Intl.DateTimeFormat("en-US",{month:"short",day:"numeric"}),Wi=new Intl.DateTimeFormat("en-US",{month:"short",day:"numeric",hour:"numeric",minute:"2-digit"});function L(e){return Ze.format(e)}function Hi(e){return Zt.format(e)}function U(e){return e===null?"missing":e>=1e4?Zt.format(e):Ze.format(e)}function se(e){return e===null?"missing":e>=1e3?`${(e/1e3).toFixed(e>=1e4?0:1)}s`:`${Ze.format(Math.round(e))}ms`}function ae(e){return`${zi.format(e*100)}%`}function Jt(e){return e===null?"not reported":ae(e)}function Gi(e){if(e.cacheTelemetrySource===null)return"not reported";if(e.cachedPromptTokens===null||e.uncachedPromptTokens===null)return"reported";const t=e.cachedPromptTokens+e.uncachedPromptTokens;return t>0?ae(e.cachedPromptTokens/t):"0%"}function Vi(e){const t=new Date(`${e}T00:00:00`);return Number.isNaN(t.getTime())?e:Ui.format(t)}function Qt(e){const t=new Date(e);return Number.isNaN(t.getTime())?e:Wi.format(t)}function ea(e){if(typeof e=="number")return e;if(typeof e=="string"){const t=Number(e);return Number.isFinite(t)?t:0}return 0}function Je(e){return{openai:"OpenAI",anthropic:"Anthropic",google:"Google",openpond:"OpenPond",openrouter:"OpenRouter",codex:"Codex"}[e]??Se(e)}function Qe(e){return e==="openpond_hosted"?"OpenPond hosted":e==="local_byok"?"Local BYOK":e==="codex_app_server"?"Codex app server":"Unknown"}function Yi(e){return e==="provider_usage"?"Provider usage":e==="codex_context_usage"?"Codex context":e==="missing"?"Missing":Se(e)}function ta(e){return Se(e)}function Xi(e){return e?{composer_selection:"Composer selection",prompt_parse:"Prompt parse",server_parser:"Server parser",model_tool:"Model tool"}[e]??Se(e):"Unknown source"}function Zi(e){return{foreground:"Foreground",tool_loop:"Tool loop",compaction:"Compaction",subagent:"Subagent",refiner:"Refiner"}[e]??"Other"}function Ji(e){return{chat_turn:"Chat turn",tool_loop:"Tool loop",slash_command:"Slash command",create_improve_planner:"Create/Improve planner",harness_refiner:"Harness Refiner",context_compaction:"Compaction",subagent:"Subagent",codex_context:"Codex context"}[e]??"Other"}function Qi(e){return e.attribution.commandName?e.attribution.commandName:e.sessionId?aa(e.sessionId):"None"}function Se(e){return e.split("_").filter(Boolean).map(t=>`${t.slice(0,1).toUpperCase()}${t.slice(1)}`).join(" ")}function aa(e){return e.length<=14?e:`${e.slice(0,8)}...${e.slice(-4)}`}const el=[{value:"7d",label:"7 days"},{value:"30d",label:"30 days"},{value:"90d",label:"90 days"},{value:"all",label:"All time"}],tl=[{value:"all",label:"All calls"},{value:"user_facing",label:"User-facing"},{value:"background",label:"Background"},{value:"system",label:"System"}],al=[{value:"all",label:"All statuses"},{value:"started",label:"Started"},{value:"completed",label:"Completed"},{value:"failed",label:"Failed"},{value:"interrupted",label:"Interrupted"},{value:"missing",label:"Missing usage"}],Ee=8,he=["#5b8def","#41b883","#f2a65a","#d66ba0","#8f7ee7","#4fb6c2","#d6c15c","#9b9b9b"];function kl({account:e=null,connection:t,enabled:a,modelFocused:n=!1,onError:r,onOpenSourceSession:i}){const[o,u]=f.useState("all"),[d,s]=f.useState("all"),[c,m]=f.useState("all"),[v,y]=f.useState("all"),[h,b]=f.useState("all"),[p,x]=f.useState(null),[j,A]=f.useState(null),[k,P]=f.useState(null),[w,T]=f.useState(!1),[g,D]=f.useState(null);f.useEffect(()=>{if(!a)return;if(!t){x(null),A(null),P(null),T(!1),D("Usage data is unavailable");return}let S=!1;T(!0),D(null);const X={range:o,visibility:d,status:c};return Promise.all([Te.usage(t,{...X,provider:n&&v!=="all"?v:null,model:n&&h!=="all"?h:null}),Te.usageRecords(t,{...X,provider:n&&v!=="all"?v:null,model:n&&h!=="all"?h:null,limit:100}),n?Te.usage(t,{range:o}):Promise.resolve(null)]).then(([W,C,re])=>{S||(x(W),P(C),A(re),D(null),r(null))}).catch(W=>{if(S)return;const C=W instanceof Error?W.message:"Failed to load usage";D(C),r(C)}).finally(()=>{S||T(!1)}),()=>{S=!0}},[t,a,h,n,r,v,o,c,d]);const q=f.useMemo(()=>[...new Set((j?.models??[]).map(S=>S.provider))].sort(),[j]),O=f.useMemo(()=>[...new Set((j?.models??[]).filter(S=>v==="all"||S.provider===v).map(S=>S.model))].sort(),[j,v]);return l.jsx(nl,{account:e,summary:p,recordsResponse:k,loading:w,error:g,range:o,visibility:d,status:c,onRangeChange:u,onVisibilityChange:s,onStatusChange:m,provider:n?v:void 0,model:n?h:void 0,providerOptions:n?q:void 0,modelOptions:n?O:void 0,onProviderChange:n?S=>{y(S),b("all")}:void 0,onModelChange:n?b:void 0,onOpenSourceSession:i,modelFocused:n})}function nl({account:e=null,summary:t,recordsResponse:a,loading:n,error:r,range:i,visibility:o,status:u,onRangeChange:d,onVisibilityChange:s,onStatusChange:c,provider:m,model:v,providerOptions:y,modelOptions:h,onProviderChange:b,onModelChange:p,onOpenSourceSession:x,modelFocused:j=!1}){oa(r);const A=f.useMemo(()=>pl(t?.daily??[]),[t]),k=f.useMemo(()=>xt(sl,x,g=>g.sessionId,"Open thread"),[x]),P=f.useMemo(()=>xt(vl,x,g=>g.sessionId,"Open request source"),[x]),w=a?.records??[],T=!!(t&&t.totals.requests>0);return l.jsxs("section",{className:"account-settings usage-settings",children:[l.jsx(Ii,{account:e,summary:t,loading:n,range:i}),l.jsx("div",{className:"usage-details-title",children:l.jsxs("div",{children:[l.jsx("h2",{children:j?"Model usage":"Detailed usage"}),l.jsx("span",{children:j?"Inspect model requests, tokens, prompt-cache reuse, providers, and latency.":"Inspect cache reuse, latency, routes, threads, workflows, and individual requests."})]})}),l.jsxs("div",{className:"usage-toolbar",children:[l.jsx("div",{className:"usage-range-control",role:"group","aria-label":"Usage range",children:el.map(g=>l.jsx("button",{type:"button",className:i===g.value?"active":"",disabled:!d,onClick:()=>d?.(g.value),children:g.label},g.value))}),l.jsxs("label",{className:"usage-filter-control",children:[l.jsx("span",{children:"Visibility"}),l.jsx("select",{value:o,disabled:!s,onChange:g=>s?.(g.target.value),children:tl.map(g=>l.jsx("option",{value:g.value,children:g.label},g.value))})]}),l.jsxs("label",{className:"usage-filter-control",children:[l.jsx("span",{children:"Status"}),l.jsx("select",{value:u,disabled:!c,onChange:g=>c?.(g.target.value),children:al.map(g=>l.jsx("option",{value:g.value,children:g.label},g.value))})]}),m!==void 0?l.jsxs("label",{className:"usage-filter-control",children:[l.jsx("span",{children:"Provider"}),l.jsxs("select",{"aria-label":"Filter usage by provider",value:m,disabled:!b,onChange:g=>b?.(g.target.value),children:[l.jsx("option",{value:"all",children:"All providers"}),(y??[]).map(g=>l.jsx("option",{value:g,children:Je(g)},g))]})]}):null,v!==void 0?l.jsxs("label",{className:"usage-filter-control",children:[l.jsx("span",{children:"Model"}),l.jsxs("select",{"aria-label":"Filter usage by model",value:v,disabled:!p,onChange:g=>p?.(g.target.value),children:[l.jsx("option",{value:"all",children:"All models"}),(h??[]).map(g=>l.jsx("option",{value:g,children:g},g))]})]}):null]}),l.jsx(rl,{title:"Daily tokens",children:l.jsx(il,{chart:A,loading:n&&!t})}),t&&!T?l.jsxs("div",{className:"account-list usage-empty-state",children:[l.jsx("strong",{children:"No usage records"}),l.jsx("span",{children:"Calls will appear after the next model request."})]}):null,l.jsx(_,{title:"Models",rows:t?.models??[],rowKey:g=>`${g.provider}:${g.model}:${g.route}`,emptyLabel:"No model usage",columns:ol}),j?null:l.jsxs(l.Fragment,{children:[l.jsx(_,{title:"Threads",rows:t?.threads??[],rowKey:g=>g.sessionId,emptyLabel:"No thread usage",columns:k,pageSize:10}),l.jsx(_,{title:"Slash commands",rows:t?.commands??[],rowKey:g=>`${g.commandName}:${g.commandSource??"unknown"}`,emptyLabel:"No command usage",columns:cl}),l.jsxs("div",{className:"usage-breakdown-grid",children:[l.jsx(_,{title:"Cache cohorts",rows:t?.cohorts??[],rowKey:g=>g.cohort,emptyLabel:"No cache cohorts",columns:fl,compact:!0}),l.jsx(_,{title:"Routes",rows:t?.routes??[],rowKey:g=>g.route,emptyLabel:"No route usage",columns:ul,compact:!0}),l.jsx(_,{title:"Statuses",rows:t?.statuses??[],rowKey:g=>g.status,emptyLabel:"No status usage",columns:dl,compact:!0}),l.jsx(_,{title:"Sources",rows:t?.sources??[],rowKey:g=>g.source,emptyLabel:"No source usage",columns:ml,compact:!0})]})]}),l.jsx(_,{title:"Requests",rows:w,rowKey:g=>g.id,emptyLabel:"No requests",columns:P,footer:a?.hasMore?`Showing ${w.length} recent requests`:null})]})}function xt(e,t,a,n){return t?[...e,{key:"open-source",label:"Open",align:"end",render:r=>{const i=a(r);return i?l.jsx(hl,{label:n,sessionId:i,onOpenSourceSession:t}):l.jsx("span",{"aria-hidden":"true"})}}]:e}function rl({title:e,children:t}){return l.jsxs("div",{className:"account-list usage-panel",children:[l.jsx("div",{className:"account-list-heading",children:l.jsx("span",{children:e})}),t]})}function il({chart:e,loading:t}){return t?l.jsxs("div",{className:"usage-chart-empty",children:[l.jsx(kt,{className:"settings-spin",size:16}),l.jsx("span",{children:"Loading usage"})]}):e.rows.length===0||e.series.length===0?l.jsx("div",{className:"usage-chart-empty",children:"No daily tokens"}):l.jsx("div",{className:"usage-chart-frame",children:l.jsx(nn,{width:"100%",height:"100%",children:l.jsxs(Ai,{data:e.rows,margin:{top:18,right:10,bottom:2,left:-8},children:[l.jsx(rn,{stroke:"rgba(255, 255, 255, 0.06)",vertical:!1}),l.jsx(ln,{dataKey:"label",axisLine:!1,tickLine:!1,tick:{fill:"#9b9b9b",fontSize:11}}),l.jsx(on,{axisLine:!1,tickLine:!1,tick:{fill:"#9b9b9b",fontSize:11},tickFormatter:a=>Hi(Number(a))}),l.jsx(sn,{content:l.jsx(ll,{}),cursor:{fill:"rgba(255, 255, 255, 0.04)"}}),l.jsx(Rt,{iconType:"square",wrapperStyle:{color:"#c8c8c8",fontSize:11,paddingTop:8}}),e.series.map(a=>l.jsx(Gt,{dataKey:a.dataKey,name:a.label,stackId:"tokens",fill:a.color,radius:[3,3,0,0],isAnimationActive:!1},a.dataKey))]})})})}function ll({active:e,payload:t,label:a}){if(!e||!t?.length)return null;const n=t.map(r=>({color:r.color??"#9b9b9b",name:r.name??"Model",value:ea(r.value)})).filter(r=>r.value>0);return n.length===0?null:l.jsxs("div",{className:"usage-chart-tooltip",children:[l.jsx("strong",{children:a}),n.map(r=>l.jsxs("div",{children:[l.jsx("span",{style:{backgroundColor:r.color}}),l.jsx("small",{children:r.name}),l.jsx("em",{children:U(r.value)})]},r.name))]})}function _({title:e,rows:t,rowKey:a,columns:n,emptyLabel:r,footer:i,compact:o=!1,pageSize:u}){const[d,s]=f.useState(0),c=u?Math.max(1,Math.ceil(t.length/u)):1,m=Math.min(d,c-1),v=u?t.slice(m*u,m*u+u):t,y=m*(u??t.length)+1,h=Math.min(t.length,y+(u??t.length)-1);return f.useEffect(()=>{d!==m&&s(m)},[m,d]),l.jsxs("div",{className:`account-list usage-table-panel ${o?"compact":""}`,children:[l.jsxs("div",{className:"account-list-heading",children:[l.jsx("span",{children:e}),l.jsx("small",{children:t.length?L(t.length):""})]}),t.length===0?l.jsx("div",{className:"usage-table-empty",children:r}):l.jsxs("div",{className:"usage-table-scroll",children:[l.jsxs("table",{className:"usage-table",children:[l.jsx("thead",{children:l.jsx("tr",{children:n.map(b=>l.jsx("th",{className:b.align==="end"?"align-end":void 0,children:b.label},b.key))})}),l.jsx("tbody",{children:v.map((b,p)=>l.jsx("tr",{children:n.map(x=>l.jsx("td",{className:x.align==="end"?"align-end":void 0,children:x.render(b)},x.key))},a(b,p)))})]}),i||u?l.jsxs("div",{className:"usage-table-footer",children:[i?l.jsx("span",{children:i}):null,u&&t.length?l.jsxs("span",{children:["Showing ",L(y),"–",L(h)," of ",L(t.length)]}):null,u&&c>1?l.jsxs("nav",{className:"usage-table-pagination","aria-label":`${e} pages`,children:[l.jsx("button",{type:"button",disabled:m===0,onClick:()=>s(b=>Math.max(0,b-1)),children:"Previous"}),l.jsxs("span",{children:["Page ",m+1," of ",c]}),l.jsx("button",{type:"button",disabled:m===c-1,onClick:()=>s(b=>Math.min(c-1,b+1)),children:"Next"})]}):null]}):null]})]})}const ol=[{key:"model",label:"Model",render:e=>l.jsx(ce,{title:e.model,detail:`${Je(e.provider)} / ${Qe(e.route)}`})},{key:"tokens",label:"Tokens",align:"end",render:e=>U(e.totalTokens)},{key:"cache",label:"Cache reuse",align:"end",render:e=>Jt(e.cacheHitRate)},{key:"coverage",label:"Cache data",align:"end",render:e=>ae(e.cacheTelemetryCoverage)},{key:"requests",label:"Requests",align:"end",render:e=>L(e.requests)},{key:"latency",label:"p95 latency",align:"end",render:e=>se(e.p95LatencyMs)},{key:"first-token",label:"First token",align:"end",render:e=>se(e.p95FirstTokenMs)},{key:"failure-rate",label:"Failure rate",align:"end",render:e=>ae(e.failureRate)}],sl=[{key:"thread",label:"Thread",render:e=>l.jsx(ce,{title:e.title??"Untitled thread",detail:aa(e.sessionId)})},{key:"tokens",label:"Tokens",align:"end",render:e=>U(e.totalTokens)},{key:"requests",label:"Requests",align:"end",render:e=>L(e.requests)},{key:"latency",label:"p95 latency",align:"end",render:e=>se(e.p95LatencyMs)},{key:"last-seen",label:"Last seen",align:"end",render:e=>Qt(e.lastSeenAt)}],cl=[{key:"command",label:"Command",render:e=>l.jsx(ce,{title:e.commandName,detail:Xi(e.commandSource)})},{key:"tokens",label:"Tokens",align:"end",render:e=>U(e.totalTokens)},{key:"requests",label:"Requests",align:"end",render:e=>L(e.requests)},{key:"latency",label:"p95 latency",align:"end",render:e=>se(e.p95LatencyMs)},{key:"failure-rate",label:"Failure rate",align:"end",render:e=>ae(e.failureRate)}],ul=[{key:"route",label:"Route",render:e=>Qe(e.route)},{key:"requests",label:"Requests",align:"end",render:e=>L(e.requests)},{key:"tokens",label:"Tokens",align:"end",render:e=>U(e.totalTokens)}],dl=[{key:"status",label:"Status",render:e=>ta(e.status)},{key:"requests",label:"Requests",align:"end",render:e=>L(e.requests)},{key:"tokens",label:"Tokens",align:"end",render:e=>U(e.totalTokens)}],ml=[{key:"source",label:"Source",render:e=>Yi(e.source)},{key:"requests",label:"Requests",align:"end",render:e=>L(e.requests)},{key:"tokens",label:"Tokens",align:"end",render:e=>U(e.totalTokens)}],fl=[{key:"cohort",label:"Cohort",render:e=>Zi(e.cohort)},{key:"cache",label:"Cache reuse",align:"end",render:e=>Jt(e.cacheHitRate)},{key:"coverage",label:"Cache data",align:"end",render:e=>ae(e.cacheTelemetryCoverage)},{key:"requests",label:"Requests",align:"end",render:e=>L(e.requests)}],vl=[{key:"started",label:"Started",render:e=>Qt(e.startedAt)},{key:"model",label:"Model",render:e=>l.jsx(ce,{title:e.model,detail:Je(e.provider)})},{key:"route",label:"Route",render:e=>l.jsx(ce,{title:Qe(e.route),detail:ta(e.status)})},{key:"kind",label:"Kind",render:e=>Ji(e.requestKind)},{key:"tokens",label:"Tokens",align:"end",render:e=>U(e.totalTokens)},{key:"cache",label:"Cache",align:"end",render:e=>Gi(e)},{key:"latency",label:"Latency",align:"end",render:e=>se(e.durationMs)},{key:"context",label:"Context",render:e=>Qi(e)}];function ce({title:e,detail:t}){return l.jsxs("span",{className:"usage-primary-cell",children:[l.jsx("strong",{children:e}),l.jsx("small",{children:t})]})}function hl({label:e,sessionId:t,onOpenSourceSession:a}){return l.jsx("button",{type:"button",className:"settings-icon-button ghost usage-source-action",title:e,"aria-label":e,onClick:()=>a(t),children:l.jsx(sa,{size:14})})}function pl(e){const t=new Map;for(const s of e)for(const c of s.models){const m=De(c.provider,c.model),v=t.get(m)??{provider:c.provider,model:c.model,totalTokens:0,requests:0};v.totalTokens+=c.totalTokens,v.requests+=c.requests,t.set(m,v)}const a=[...t.values()].sort((s,c)=>c.totalTokens-s.totalTokens||c.requests-s.requests||s.model.localeCompare(c.model)),n=a.length>Ee?Ee-1:Ee,r=a.slice(0,n),i=new Map,o=r.map((s,c)=>{const m=`model${c}`;return i.set(De(s.provider,s.model),m),{dataKey:m,label:s.model,color:he[c%he.length]}}),u=a.length>r.length;return u&&o.push({dataKey:"otherModels",label:"Other models",color:he[Math.min(o.length,he.length-1)]}),{rows:e.map(s=>{const c={date:s.date,label:Vi(s.date),requests:s.requests,totalTokens:s.totalTokens};for(const v of o)c[v.dataKey]=0;let m=0;for(const v of s.models){const y=i.get(De(v.provider,v.model));y?c[y]=ea(c[y])+v.totalTokens:m+=v.totalTokens}return u&&(c.otherModels=m),c}),series:o}}function De(e,t){return`${e}\0${t}`}export{nl as UsageSettingsContent,kl as UsageSettingsSection};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{r as f,j as e}from"./index-UOGdfLzi.js";import{bd as X,i as y,aU as Y,ba as _,o as w,bz as Z}from"./App-C9aGkxVg.js";import{r as B,s as ee}from"./desktop-files-BQj1J-ob.js";import{F as W}from"./folder-open-DktdZNW7.js";import{M as te}from"./minimize-2-DumTpFtE.js";import{P as E}from"./MainPane-Gw-YK38n.js";import{T as ie}from"./chat-file-links-CWLsRYvW.js";import{M as ne}from"./MarkdownText-DOlVQR8a.js";import"./cloud-upload-uBJBUYTy.js";import"./arrow-up-right-_TX-awvK.js";import"./square-BJrVbmz6.js";function Ne({chatMessages:i,connection:r,contextWindowStatus:l,expanded:s,runtimeEvents:c,sessionId:d,showToast:u,onResizeStart:S,onToggleExpanded:L,onUseOutput:P,onHandoffOutput:T,onReviseOutput:D,onAgentPackageInstalled:I}){const[k,K]=f.useState("outputs"),[j,x]=f.useState(null),[o,m]=f.useState(null),[v,N]=f.useState(""),[V,H]=f.useState({}),A=f.useMemo(()=>oe(c),[c]),U=f.useMemo(()=>ae(A),[A]),R=f.useMemo(()=>se(i),[i]),$=f.useMemo(()=>re(i),[i]),z=f.useMemo(()=>le(i),[i]);f.useEffect(()=>()=>{o?.objectUrl&&URL.revokeObjectURL(o.objectUrl)},[o?.objectUrl]);async function b(t){if(!r||!d||t.kind!=="file")return null;x(p(t));try{const n=await w.workspaceTool(r,d,{action:"work_output_read",source:"ui_button",args:{outputId:t.id,revision:t.revision}});if(!n.ok)throw new Error(n.output);const a=pe(n.data),h=typeof a.contentsBase64=="string"?a.contentsBase64:"";if(!h)throw new Error("The output did not include file data.");return new File([de(h)],t.title,{type:t.contentType})}catch(n){return u(n instanceof Error?n.message:"Could not load the output.","error"),null}finally{x(null)}}async function q(t){const n=await b(t);if(!n)return;o?.objectUrl&&URL.revokeObjectURL(o.objectUrl);const a=t.kind==="file"&&(t.contentType.startsWith("text/")||t.contentType==="application/json");N(""),m({output:t,file:n,text:a?await n.text():null,objectUrl:a?null:URL.createObjectURL(n)})}async function G(t){const n=await b(t);n&&(P(n),u("Added the output to the task as input.","success"))}async function O(t,n){const a=n.kind==="file"?await b(n):null;n.kind==="file"&&!a||await T(t,n,a)}async function J(t){if(!(!r||!d)&&window.confirm(`Delete ${t.title} revision ${t.revision} from this device?`)){x(p(t));try{const n=await w.workspaceTool(r,d,{action:"work_output_delete",source:"ui_button",args:{outputId:t.id,revision:t.revision}});if(!n.ok)throw new Error(n.output);o?.output.id===t.id&&m(null),u("Work output deleted.","success")}catch(n){u(n instanceof Error?n.message:"Could not delete the output.","error")}finally{x(null)}}}async function Q(t){if(!r||!d||!window.confirm(`Add ${t.title} version ${t.versionId} to your active Agents profile?`))return;const n=async a=>w.workspaceTool(r,d,{action:"work_agent_package_install",source:"ui_button",args:{outputId:t.id,revision:t.revision,overwrite:a}});x(p(t));try{let a;try{a=await n(!1)}catch(h){if(!(h instanceof Error?h.message:"Agent installation failed.").includes("already exists")||!window.confirm(`${t.agentId} already exists. Replace its active checkout with this immutable version?`))throw h;a=await n(!0)}if(!a.ok)throw new Error(a.output);await I?.(),u(`${t.title} was added to Agents. Its package remains available in this Work task.`,"success")}catch(a){u(a instanceof Error?a.message:"Could not add the Agent package.","error")}finally{x(null)}}return e.jsxs("aside",{className:`workspace-diff-panel work-sidebar-panel ${s?"expanded":""}`,"aria-label":"Work details",children:[s?null:e.jsx("div",{className:"workspace-diff-resize-handle",role:"separator","aria-orientation":"vertical","aria-label":"Resize Work details",onPointerDown:S}),e.jsxs("div",{className:"workspace-diff-topbar",children:[e.jsx("div",{className:"workspace-diff-tabs",role:"tablist","aria-label":"Work details",children:[["outputs","Outputs"],["activity","Activity"],["context","Context"]].map(([t,n])=>e.jsx("button",{type:"button",className:`workspace-diff-tab ${k===t?"active":""}`,role:"tab","aria-selected":k===t,onClick:()=>K(t),children:n},t))}),e.jsx("div",{className:"workspace-diff-toolbar-actions",children:e.jsx("button",{type:"button",className:"diff-icon-button",title:s?"Dock sidebar":"Expand sidebar","aria-label":s?"Dock sidebar":"Expand sidebar",onClick:L,children:s?e.jsx(te,{size:14}):e.jsx(X,{size:14})})})]}),e.jsxs("div",{className:"work-sidebar-body",children:[k==="outputs"?o?e.jsxs("div",{className:"work-output-preview",children:[e.jsxs("header",{children:[e.jsx("button",{type:"button",onClick:()=>{o.objectUrl&&URL.revokeObjectURL(o.objectUrl),m(null)},children:"Outputs"}),e.jsxs("strong",{children:[o.output.title," · revision ",o.output.revision]})]}),o.text!==null?e.jsx(ne,{content:o.text}):o.output.kind==="file"&&o.output.contentType.startsWith("image/")&&o.objectUrl?e.jsx("img",{src:o.objectUrl,alt:o.output.title}):o.output.kind==="file"&&o.output.contentType==="application/pdf"&&o.objectUrl?e.jsx("iframe",{src:o.objectUrl,title:o.output.title}):o.output.kind==="file"&&o.output.contentType.startsWith("audio/")&&o.objectUrl?e.jsx("audio",{controls:!0,src:o.objectUrl}):o.output.kind==="file"&&o.output.contentType.startsWith("video/")&&o.objectUrl?e.jsx("video",{controls:!0,src:o.objectUrl}):e.jsx("p",{children:"This file type uses its native application for detailed review."}),e.jsxs("section",{className:"work-output-annotation",children:[e.jsx("label",{htmlFor:"work-output-revision-note",children:"Revision note"}),e.jsx("textarea",{id:"work-output-revision-note",value:v,onChange:t=>N(t.target.value),placeholder:"Describe the exact change to make in the next revision."}),e.jsx("button",{type:"button",disabled:!v.trim(),onClick:()=>{D(o.output,o.file,v.trim()),u(`Prepared revision ${o.output.revision+1}.`,"success")},children:"Revise this version"})]})]}):U.length>0?e.jsx("div",{className:"work-output-list",children:U.map(t=>{const n=t.revisions.find(a=>a.revision===V[t.id])??t.revisions[0];return e.jsxs("article",{className:"work-output-card",children:[e.jsxs("header",{children:[e.jsx(y,{size:16}),e.jsxs("span",{children:[e.jsx("strong",{children:n.title}),t.revisions.length>1?e.jsxs("label",{className:"work-output-version",children:[e.jsx("span",{children:"Version"}),e.jsx("select",{value:n.revision,onChange:a=>H(h=>({...h,[t.id]:Number(a.target.value)})),children:t.revisions.map(a=>e.jsxs("option",{value:a.revision,children:["Revision ",a.revision]},p(a)))})]}):e.jsxs("small",{children:["Revision ",n.revision]}),e.jsx("small",{children:ce(n)})]})]}),n.validation.length>0?e.jsxs("div",{className:"work-output-validation",children:[e.jsx(Y,{size:13}),e.jsxs("span",{children:[n.validation.filter(a=>a.status==="passed").length," ","checks passed"]})]}):null,e.jsxs("div",{className:"work-output-actions",children:[n.kind==="file"&&n.location.kind==="local"?e.jsxs(e.Fragment,{children:[e.jsxs("button",{type:"button",onClick:()=>{B(M(n))},children:[e.jsx(W,{size:13}),"Reveal"]}),e.jsx("button",{type:"button",onClick:async()=>{const a=await ee(M(n),n.title);a.ok?u("Saved a copy of the Work output.","success"):a.canceled||u("Could not save a copy of the Work output.","error")},children:"Save as"})]}):null,n.kind==="file"?e.jsxs(e.Fragment,{children:[e.jsx("button",{type:"button",disabled:j===p(n),onClick:()=>{q(n)},children:"Preview"}),e.jsxs("button",{type:"button",disabled:j===p(n),onClick:()=>{G(n)},children:[e.jsx(E,{size:13}),"Use as input"]})]}):n.kind==="agent_package"?e.jsx("button",{type:"button",disabled:j===p(n),onClick:()=>{Q(n)},children:"Add to Agents"}):"url"in n&&n.url?e.jsx("button",{type:"button",onClick:()=>window.open(n.url,"_blank","noopener,noreferrer"),children:"Open"}):null,n.kind==="file"&&n.location.kind==="local"?e.jsxs("button",{type:"button",className:"danger",disabled:j===p(n),onClick:()=>{J(n)},children:[e.jsx(ie,{size:13}),"Delete"]}):null,e.jsx("button",{type:"button",disabled:j===p(n),onClick:()=>{O("chat",n)},children:"Continue in Chat"}),e.jsx("button",{type:"button",disabled:j===p(n),onClick:()=>{O("work",n)},children:"Continue in repository Work"})]})]},t.id)})}):$.length>0?e.jsx("div",{className:"work-output-list",children:$.map(t=>e.jsxs("article",{className:"work-output-card",children:[e.jsxs("header",{children:[e.jsx(y,{size:16}),e.jsxs("span",{children:[e.jsx("strong",{children:t.title}),e.jsx("small",{children:C(t.sizeBytes)})]})]}),e.jsx("div",{className:"work-output-actions",children:e.jsxs("button",{type:"button",onClick:()=>{B(t.path)},children:[e.jsx(W,{size:13}),"Reveal"]})})]},t.path))}):e.jsx(F,{icon:y,title:"No saved outputs yet",detail:"Finished files and connected results will appear here."}):null,k==="activity"?R.length>0?e.jsx("div",{className:"work-activity-list",children:R.map(t=>e.jsxs("details",{className:`work-activity-row ${t.state??""}`,children:[e.jsxs("summary",{children:[e.jsx(_,{size:14}),e.jsx("span",{children:t.label}),e.jsx("small",{children:t.state??"completed"})]}),e.jsx("p",{children:t.content}),t.detail?e.jsx("pre",{children:t.detail}):null]},t.id))}):e.jsx(F,{icon:_,title:"No activity yet",detail:"Commands, tool receipts, and checks appear while Work runs."}):null,k==="context"?e.jsxs("div",{className:"work-context",children:[e.jsxs("section",{children:[e.jsx("h3",{children:"Model context"}),e.jsx("p",{children:l.summary}),e.jsx("small",{children:l.tokensLabel})]}),e.jsxs("section",{children:[e.jsx("h3",{children:"Task inputs and sources"}),z.length>0?e.jsx("ul",{children:z.map(t=>e.jsxs("li",{children:[e.jsx(E,{size:13}),e.jsxs("span",{children:[e.jsx("strong",{children:t.title}),e.jsx("small",{children:t.detail})]})]},t.key))}):e.jsx("p",{children:"No attached files or cited sources yet."})]})]}):null]})]})}function se(i){return i.flatMap(r=>r.activities??[]).filter(r=>r.kind!=="reasoning").reverse()}function re(i){const r=new Map;for(const l of i)for(const s of l.activities??[])for(const c of s.artifacts??[])!c.path||c.sizeBytes===null||r.set(c.path,{path:c.path,title:c.title,sizeBytes:c.sizeBytes});return[...r.values()].sort((l,s)=>s.path.localeCompare(l.path))}function oe(i){const r=new Map,l=new Set;for(const s of i){const c=g(s.data);if(s.action==="work_output_delete"&&s.status==="completed"){for(const d of c){const u=p(d);l.add(u),r.delete(u)}continue}if(s.action!=="work_output_read")for(const d of c){const u=p(d);l.has(u)||r.set(u,d)}}return[...r.values()].sort((s,c)=>c.createdAt.localeCompare(s.createdAt)||c.revision-s.revision)}function p(i){return`${i.id}:${i.revision}`}function ae(i){const r=new Map;for(const l of i){const s=r.get(l.id)??[];s.push(l),r.set(l.id,s)}return[...r.entries()].map(([l,s])=>({id:l,revisions:s.sort((c,d)=>d.revision-c.revision||d.createdAt.localeCompare(c.createdAt))})).sort((l,s)=>s.revisions[0].createdAt.localeCompare(l.revisions[0].createdAt))}function g(i,r=[],l=new Set,s=0){if(s>8||i==null)return r;const c=Z.safeParse(i);if(c.success){const d=`${c.data.id}:${c.data.revision}`;return l.has(d)||(l.add(d),r.push(c.data)),r}if(Array.isArray(i)){for(const d of i)g(d,r,l,s+1);return r}if(typeof i=="object")for(const d of Object.values(i))g(d,r,l,s+1);return r}function le(i){const r=new Map;for(const l of i){for(const s of l.attachments??[])r.set(`attachment:${s.id}`,{key:`attachment:${s.id}`,title:s.name,detail:`${s.mediaType} · ${C(s.sizeBytes)}`});for(const s of l.sources??[])r.set(`source:${s.id}`,{key:`source:${s.id}`,title:s.title,detail:s.sourceName??ue(s.url)})}return[...r.values()]}function F({icon:i,title:r,detail:l}){return e.jsxs("div",{className:"work-sidebar-empty",children:[e.jsx(i,{size:22}),e.jsx("strong",{children:r}),e.jsx("p",{children:l})]})}function ce(i){return i.kind==="deployment"?"Deployment":i.kind==="source_change"?"Source change":i.kind==="external_resource"?i.provider:i.kind==="agent_package"?`${i.actions.length} action${i.actions.length===1?"":"s"}`:i.location.kind==="local"?C(i.sizeBytes):i.location.kind==="managed"?"Managed file":i.location.provider}function C(i){return i<1024?`${i} B`:i<1024*1024?`${Math.round(i/1024)} KB`:`${(i/(1024*1024)).toFixed(1)} MB`}function de(i){const r=window.atob(i),l=new ArrayBuffer(r.length),s=new Uint8Array(l);for(let c=0;c<r.length;c+=1)s[c]=r.charCodeAt(c);return l}function M(i){return i.kind==="file"&&i.location.kind==="local"?i.location.path:""}function ue(i){try{return new URL(i).hostname||i}catch{return i}}function pe(i){return i&&typeof i=="object"&&!Array.isArray(i)?i:{}}export{Ne as WorkSidebarPanel,re as visibleChatFileArtifacts,se as visibleWorkActivities,oe as workOutputsFromEvents};
|
|
1
|
+
import{r as f,j as e}from"./index-667pXXsu.js";import{bg as X,i as y,aW as Y,bd as _,o as w,bC as Z}from"./App-BoJQRfeu.js";import{r as B,s as ee}from"./desktop-files-BQj1J-ob.js";import{F as W}from"./folder-open-bii4KUCv.js";import{M as te}from"./minimize-2-DtI1vgd7.js";import{P as E}from"./MainPane-Di-Rwe7x.js";import{T as ie}from"./chat-file-links-Bmz9kVct.js";import{M as ne}from"./MarkdownText-dK4SBPp_.js";import"./cloud-upload-BAycsdHL.js";import"./arrow-up-right-C5X-29oa.js";import"./square-CRytZWR_.js";function Ne({chatMessages:i,connection:r,contextWindowStatus:l,expanded:s,runtimeEvents:c,sessionId:d,showToast:u,onResizeStart:S,onToggleExpanded:L,onUseOutput:P,onHandoffOutput:T,onReviseOutput:D,onAgentPackageInstalled:I}){const[k,K]=f.useState("outputs"),[j,x]=f.useState(null),[o,m]=f.useState(null),[v,N]=f.useState(""),[V,H]=f.useState({}),A=f.useMemo(()=>oe(c),[c]),U=f.useMemo(()=>ae(A),[A]),R=f.useMemo(()=>se(i),[i]),$=f.useMemo(()=>re(i),[i]),O=f.useMemo(()=>le(i),[i]);f.useEffect(()=>()=>{o?.objectUrl&&URL.revokeObjectURL(o.objectUrl)},[o?.objectUrl]);async function b(t){if(!r||!d||t.kind!=="file")return null;x(p(t));try{const n=await w.workspaceTool(r,d,{action:"work_output_read",source:"ui_button",args:{outputId:t.id,revision:t.revision}});if(!n.ok)throw new Error(n.output);const a=pe(n.data),h=typeof a.contentsBase64=="string"?a.contentsBase64:"";if(!h)throw new Error("The output did not include file data.");return new File([de(h)],t.title,{type:t.contentType})}catch(n){return u(n instanceof Error?n.message:"Could not load the output.","error"),null}finally{x(null)}}async function q(t){const n=await b(t);if(!n)return;o?.objectUrl&&URL.revokeObjectURL(o.objectUrl);const a=t.kind==="file"&&(t.contentType.startsWith("text/")||t.contentType==="application/json");N(""),m({output:t,file:n,text:a?await n.text():null,objectUrl:a?null:URL.createObjectURL(n)})}async function G(t){const n=await b(t);n&&(P(n),u("Added the output to the task as input.","success"))}async function z(t,n){const a=n.kind==="file"?await b(n):null;n.kind==="file"&&!a||await T(t,n,a)}async function J(t){if(!(!r||!d)&&window.confirm(`Delete ${t.title} revision ${t.revision} from this device?`)){x(p(t));try{const n=await w.workspaceTool(r,d,{action:"work_output_delete",source:"ui_button",args:{outputId:t.id,revision:t.revision}});if(!n.ok)throw new Error(n.output);o?.output.id===t.id&&m(null),u("Work output deleted.","success")}catch(n){u(n instanceof Error?n.message:"Could not delete the output.","error")}finally{x(null)}}}async function Q(t){if(!r||!d||!window.confirm(`Add ${t.title} version ${t.versionId} to your active Agents profile?`))return;const n=async a=>w.workspaceTool(r,d,{action:"work_agent_package_install",source:"ui_button",args:{outputId:t.id,revision:t.revision,overwrite:a}});x(p(t));try{let a;try{a=await n(!1)}catch(h){if(!(h instanceof Error?h.message:"Agent installation failed.").includes("already exists")||!window.confirm(`${t.agentId} already exists. Replace its active checkout with this immutable version?`))throw h;a=await n(!0)}if(!a.ok)throw new Error(a.output);await I?.(),u(`${t.title} was added to Agents. Its package remains available in this Work task.`,"success")}catch(a){u(a instanceof Error?a.message:"Could not add the Agent package.","error")}finally{x(null)}}return e.jsxs("aside",{className:`workspace-diff-panel work-sidebar-panel ${s?"expanded":""}`,"aria-label":"Work details",children:[s?null:e.jsx("div",{className:"workspace-diff-resize-handle",role:"separator","aria-orientation":"vertical","aria-label":"Resize Work details",onPointerDown:S}),e.jsxs("div",{className:"workspace-diff-topbar",children:[e.jsx("div",{className:"workspace-diff-tabs",role:"tablist","aria-label":"Work details",children:[["outputs","Outputs"],["activity","Activity"],["context","Context"]].map(([t,n])=>e.jsx("button",{type:"button",className:`workspace-diff-tab ${k===t?"active":""}`,role:"tab","aria-selected":k===t,onClick:()=>K(t),children:n},t))}),e.jsx("div",{className:"workspace-diff-toolbar-actions",children:e.jsx("button",{type:"button",className:"diff-icon-button",title:s?"Dock sidebar":"Expand sidebar","aria-label":s?"Dock sidebar":"Expand sidebar",onClick:L,children:s?e.jsx(te,{size:14}):e.jsx(X,{size:14})})})]}),e.jsxs("div",{className:"work-sidebar-body",children:[k==="outputs"?o?e.jsxs("div",{className:"work-output-preview",children:[e.jsxs("header",{children:[e.jsx("button",{type:"button",onClick:()=>{o.objectUrl&&URL.revokeObjectURL(o.objectUrl),m(null)},children:"Outputs"}),e.jsxs("strong",{children:[o.output.title," · revision ",o.output.revision]})]}),o.text!==null?e.jsx(ne,{content:o.text}):o.output.kind==="file"&&o.output.contentType.startsWith("image/")&&o.objectUrl?e.jsx("img",{src:o.objectUrl,alt:o.output.title}):o.output.kind==="file"&&o.output.contentType==="application/pdf"&&o.objectUrl?e.jsx("iframe",{src:o.objectUrl,title:o.output.title}):o.output.kind==="file"&&o.output.contentType.startsWith("audio/")&&o.objectUrl?e.jsx("audio",{controls:!0,src:o.objectUrl}):o.output.kind==="file"&&o.output.contentType.startsWith("video/")&&o.objectUrl?e.jsx("video",{controls:!0,src:o.objectUrl}):e.jsx("p",{children:"This file type uses its native application for detailed review."}),e.jsxs("section",{className:"work-output-annotation",children:[e.jsx("label",{htmlFor:"work-output-revision-note",children:"Revision note"}),e.jsx("textarea",{id:"work-output-revision-note",value:v,onChange:t=>N(t.target.value),placeholder:"Describe the exact change to make in the next revision."}),e.jsx("button",{type:"button",disabled:!v.trim(),onClick:()=>{D(o.output,o.file,v.trim()),u(`Prepared revision ${o.output.revision+1}.`,"success")},children:"Revise this version"})]})]}):U.length>0?e.jsx("div",{className:"work-output-list",children:U.map(t=>{const n=t.revisions.find(a=>a.revision===V[t.id])??t.revisions[0];return e.jsxs("article",{className:"work-output-card",children:[e.jsxs("header",{children:[e.jsx(y,{size:16}),e.jsxs("span",{children:[e.jsx("strong",{children:n.title}),t.revisions.length>1?e.jsxs("label",{className:"work-output-version",children:[e.jsx("span",{children:"Version"}),e.jsx("select",{value:n.revision,onChange:a=>H(h=>({...h,[t.id]:Number(a.target.value)})),children:t.revisions.map(a=>e.jsxs("option",{value:a.revision,children:["Revision ",a.revision]},p(a)))})]}):e.jsxs("small",{children:["Revision ",n.revision]}),e.jsx("small",{children:ce(n)})]})]}),n.validation.length>0?e.jsxs("div",{className:"work-output-validation",children:[e.jsx(Y,{size:13}),e.jsxs("span",{children:[n.validation.filter(a=>a.status==="passed").length," ","checks passed"]})]}):null,e.jsxs("div",{className:"work-output-actions",children:[n.kind==="file"&&n.location.kind==="local"?e.jsxs(e.Fragment,{children:[e.jsxs("button",{type:"button",onClick:()=>{B(M(n))},children:[e.jsx(W,{size:13}),"Reveal"]}),e.jsx("button",{type:"button",onClick:async()=>{const a=await ee(M(n),n.title);a.ok?u("Saved a copy of the Work output.","success"):a.canceled||u("Could not save a copy of the Work output.","error")},children:"Save as"})]}):null,n.kind==="file"?e.jsxs(e.Fragment,{children:[e.jsx("button",{type:"button",disabled:j===p(n),onClick:()=>{q(n)},children:"Preview"}),e.jsxs("button",{type:"button",disabled:j===p(n),onClick:()=>{G(n)},children:[e.jsx(E,{size:13}),"Use as input"]})]}):n.kind==="agent_package"?e.jsx("button",{type:"button",disabled:j===p(n),onClick:()=>{Q(n)},children:"Add to Agents"}):"url"in n&&n.url?e.jsx("button",{type:"button",onClick:()=>window.open(n.url,"_blank","noopener,noreferrer"),children:"Open"}):null,n.kind==="file"&&n.location.kind==="local"?e.jsxs("button",{type:"button",className:"danger",disabled:j===p(n),onClick:()=>{J(n)},children:[e.jsx(ie,{size:13}),"Delete"]}):null,e.jsx("button",{type:"button",disabled:j===p(n),onClick:()=>{z("chat",n)},children:"Continue in Chat"}),e.jsx("button",{type:"button",disabled:j===p(n),onClick:()=>{z("work",n)},children:"Continue in repository Work"})]})]},t.id)})}):$.length>0?e.jsx("div",{className:"work-output-list",children:$.map(t=>e.jsxs("article",{className:"work-output-card",children:[e.jsxs("header",{children:[e.jsx(y,{size:16}),e.jsxs("span",{children:[e.jsx("strong",{children:t.title}),e.jsx("small",{children:C(t.sizeBytes)})]})]}),e.jsx("div",{className:"work-output-actions",children:e.jsxs("button",{type:"button",onClick:()=>{B(t.path)},children:[e.jsx(W,{size:13}),"Reveal"]})})]},t.path))}):e.jsx(F,{icon:y,title:"No saved outputs yet",detail:"Finished files and connected results will appear here."}):null,k==="activity"?R.length>0?e.jsx("div",{className:"work-activity-list",children:R.map(t=>e.jsxs("details",{className:`work-activity-row ${t.state??""}`,children:[e.jsxs("summary",{children:[e.jsx(_,{size:14}),e.jsx("span",{children:t.label}),e.jsx("small",{children:t.state??"completed"})]}),e.jsx("p",{children:t.content}),t.detail?e.jsx("pre",{children:t.detail}):null]},t.id))}):e.jsx(F,{icon:_,title:"No activity yet",detail:"Commands, tool receipts, and checks appear while Work runs."}):null,k==="context"?e.jsxs("div",{className:"work-context",children:[e.jsxs("section",{children:[e.jsx("h3",{children:"Model context"}),e.jsx("p",{children:l.summary}),e.jsx("small",{children:l.tokensLabel})]}),e.jsxs("section",{children:[e.jsx("h3",{children:"Task inputs and sources"}),O.length>0?e.jsx("ul",{children:O.map(t=>e.jsxs("li",{children:[e.jsx(E,{size:13}),e.jsxs("span",{children:[e.jsx("strong",{children:t.title}),e.jsx("small",{children:t.detail})]})]},t.key))}):e.jsx("p",{children:"No attached files or cited sources yet."})]})]}):null]})]})}function se(i){return i.flatMap(r=>r.activities??[]).filter(r=>r.kind!=="reasoning").reverse()}function re(i){const r=new Map;for(const l of i)for(const s of l.activities??[])for(const c of s.artifacts??[])!c.path||c.sizeBytes===null||r.set(c.path,{path:c.path,title:c.title,sizeBytes:c.sizeBytes});return[...r.values()].sort((l,s)=>s.path.localeCompare(l.path))}function oe(i){const r=new Map,l=new Set;for(const s of i){const c=g(s.data);if(s.action==="work_output_delete"&&s.status==="completed"){for(const d of c){const u=p(d);l.add(u),r.delete(u)}continue}if(s.action!=="work_output_read")for(const d of c){const u=p(d);l.has(u)||r.set(u,d)}}return[...r.values()].sort((s,c)=>c.createdAt.localeCompare(s.createdAt)||c.revision-s.revision)}function p(i){return`${i.id}:${i.revision}`}function ae(i){const r=new Map;for(const l of i){const s=r.get(l.id)??[];s.push(l),r.set(l.id,s)}return[...r.entries()].map(([l,s])=>({id:l,revisions:s.sort((c,d)=>d.revision-c.revision||d.createdAt.localeCompare(c.createdAt))})).sort((l,s)=>s.revisions[0].createdAt.localeCompare(l.revisions[0].createdAt))}function g(i,r=[],l=new Set,s=0){if(s>8||i==null)return r;const c=Z.safeParse(i);if(c.success){const d=`${c.data.id}:${c.data.revision}`;return l.has(d)||(l.add(d),r.push(c.data)),r}if(Array.isArray(i)){for(const d of i)g(d,r,l,s+1);return r}if(typeof i=="object")for(const d of Object.values(i))g(d,r,l,s+1);return r}function le(i){const r=new Map;for(const l of i){for(const s of l.attachments??[])r.set(`attachment:${s.id}`,{key:`attachment:${s.id}`,title:s.name,detail:`${s.mediaType} · ${C(s.sizeBytes)}`});for(const s of l.sources??[])r.set(`source:${s.id}`,{key:`source:${s.id}`,title:s.title,detail:s.sourceName??ue(s.url)})}return[...r.values()]}function F({icon:i,title:r,detail:l}){return e.jsxs("div",{className:"work-sidebar-empty",children:[e.jsx(i,{size:22}),e.jsx("strong",{children:r}),e.jsx("p",{children:l})]})}function ce(i){return i.kind==="deployment"?"Deployment":i.kind==="source_change"?"Source change":i.kind==="external_resource"?i.provider:i.kind==="agent_package"?`${i.actions.length} action${i.actions.length===1?"":"s"}`:i.location.kind==="local"?C(i.sizeBytes):i.location.kind==="managed"?"Managed file":i.location.provider}function C(i){return i<1024?`${i} B`:i<1024*1024?`${Math.round(i/1024)} KB`:`${(i/(1024*1024)).toFixed(1)} MB`}function de(i){const r=window.atob(i),l=new ArrayBuffer(r.length),s=new Uint8Array(l);for(let c=0;c<r.length;c+=1)s[c]=r.charCodeAt(c);return l}function M(i){return i.kind==="file"&&i.location.kind==="local"?i.location.path:""}function ue(i){try{return new URL(i).hostname||i}catch{return i}}function pe(i){return i&&typeof i=="object"&&!Array.isArray(i)?i:{}}export{Ne as WorkSidebarPanel,re as visibleChatFileArtifacts,se as visibleWorkActivities,oe as workOutputsFromEvents};
|