tokentracker-cli 0.80.2 → 0.80.4
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/dashboard/dist/assets/{AchievementBadge-lZzUk8UJ.js → AchievementBadge-DX-LggX4.js} +1 -1
- package/dashboard/dist/assets/{AchievementsPage-Ddht3Szx.js → AchievementsPage-B8wkE9xP.js} +2 -2
- package/dashboard/dist/assets/{AchievementsSection-Bz9Enx-j.js → AchievementsSection-DtzmIf9I.js} +1 -1
- package/dashboard/dist/assets/{BadgeDetailModal-C7QiFDH4.js → BadgeDetailModal-CZqdIWZQ.js} +1 -1
- package/dashboard/dist/assets/{Card-Cs_xyoXz.js → Card-BSUag_Em.js} +1 -1
- package/dashboard/dist/assets/{ClawdAnimated-C1Y6W_Di.js → ClawdAnimated-Dkhj87ak.js} +1 -1
- package/dashboard/dist/assets/{CommunityStatsModal-B1VvGpUY.js → CommunityStatsModal-C9mK6lce.js} +1 -1
- package/dashboard/dist/assets/{ConfirmModal-Cd-fM8lV.js → ConfirmModal-Bjh9H-Vd.js} +1 -1
- package/dashboard/dist/assets/{Controls-D0ULfwWh.js → Controls-BYSv1KGd.js} +1 -1
- package/dashboard/dist/assets/DashboardPage-BjYHD7cb.js +19 -0
- package/dashboard/dist/assets/{DevicePage-BJsSXmi0.js → DevicePage-DHBd7LbW.js} +1 -1
- package/dashboard/dist/assets/{DialogClose-BkG6LVKN.js → DialogClose-Be-pyoVu.js} +1 -1
- package/dashboard/dist/assets/DialogDescription-doJbC76C.js +1 -0
- package/dashboard/dist/assets/{DialogTitle-Do2zDkSF.js → DialogTitle-DeXrE3Jr.js} +1 -1
- package/dashboard/dist/assets/{FadeIn-BlxFR4Uo.js → FadeIn-BIj6T_Ni.js} +1 -1
- package/dashboard/dist/assets/{HeaderGithubStar-CsLBMMBv.js → HeaderGithubStar-CVPu84a0.js} +1 -1
- package/dashboard/dist/assets/{IpCheckPage-Bi1QPsiQ.js → IpCheckPage-2JMGIL_x.js} +1 -1
- package/dashboard/dist/assets/{LandingPage-Ble4Qxzj.js → LandingPage-B42AweLO.js} +1 -1
- package/dashboard/dist/assets/{LeaderboardAvatar-D2Iqj9VP.js → LeaderboardAvatar-j3c8hJFh.js} +1 -1
- package/dashboard/dist/assets/{LeaderboardPage-DImECEuN.js → LeaderboardPage-cOLb_Ssc.js} +2 -2
- package/dashboard/dist/assets/{LeaderboardProfileModal-BGkNzlpU.js → LeaderboardProfileModal-DvdDUUFU.js} +3 -3
- package/dashboard/dist/assets/{LeaderboardProfilePage-f-E74S02.js → LeaderboardProfilePage-Pg2Sggtd.js} +1 -1
- package/dashboard/dist/assets/{LimitsPage-BgTxwSrO.js → LimitsPage-DNMNpIgQ.js} +1 -1
- package/dashboard/dist/assets/{LocalOnlyNotice-D91Lp2zA.js → LocalOnlyNotice-Bm0n3EVD.js} +1 -1
- package/dashboard/dist/assets/{LoginPage-hbsmEr6V.js → LoginPage-DlZ1jBtd.js} +1 -1
- package/dashboard/dist/assets/{PetPage-CIj7VSZN.js → PetPage-5Qk5nTRF.js} +1 -1
- package/dashboard/dist/assets/{PopoverPopup-DMgjzzjH.js → PopoverPopup-RoYcoamh.js} +1 -1
- package/dashboard/dist/assets/{ResetPasswordPage-Cv1mRgno.js → ResetPasswordPage-PbCAaF56.js} +1 -1
- package/dashboard/dist/assets/{Select-DvneEQak.js → Select-B3plxksi.js} +1 -1
- package/dashboard/dist/assets/{SelectItemText-BQlJKuRz.js → SelectItemText-Deyr9uQd.js} +1 -1
- package/dashboard/dist/assets/{SettingsPage-DpnL6Jm6.js → SettingsPage-DloJH8fs.js} +1 -1
- package/dashboard/dist/assets/{SkillsPage-Cz7d619N.js → SkillsPage-DHhXoof-.js} +1 -1
- package/dashboard/dist/assets/{WidgetsPage-BP1zxfmh.js → WidgetsPage-CNGHvVDr.js} +1 -1
- package/dashboard/dist/assets/{WrappedPage-2eIams41.js → WrappedPage-2ZN38qnG.js} +1 -1
- package/dashboard/dist/assets/{agent-logos-C0_7FQ0s.js → agent-logos-DApZ1E-T.js} +1 -1
- package/dashboard/dist/assets/{arrow-up-right-DBYYRxgR.js → arrow-up-right-DMGmqVqe.js} +1 -1
- package/dashboard/dist/assets/check-D1YFQP0r.js +1 -0
- package/dashboard/dist/assets/{copy-BxhpNvJX.js → copy-CvnjBsmb.js} +1 -1
- package/dashboard/dist/assets/{download-DAvxmQ3t.js → download-sDeO57uc.js} +1 -1
- package/dashboard/dist/assets/{flame-DX9uRr7X.js → flame-CyiQUQcA.js} +1 -1
- package/dashboard/dist/assets/{format-tokens-mMtru3Ww.js → format-tokens-DlkEG-2M.js} +1 -1
- package/dashboard/dist/assets/{info-BLfeChk0.js → info-482LCF96.js} +1 -1
- package/dashboard/dist/assets/{link-2-JVAqARKl.js → link-2-DY_0gFgX.js} +1 -1
- package/dashboard/dist/assets/{loader-circle--bezqxUZ.js → loader-circle-xebF61S5.js} +1 -1
- package/dashboard/dist/assets/main-BbNuscIe.css +1 -0
- package/dashboard/dist/assets/{main-8AbVGr5W.js → main-DY9GCwr_.js} +18 -17
- package/dashboard/dist/assets/{provider-display-DUwBv-X6.js → provider-display-B6jUb-Ud.js} +1 -1
- package/dashboard/dist/assets/{trash-2-Z1EIC4PI.js → trash-2-D0iohG1v.js} +1 -1
- package/dashboard/dist/assets/{use-community-stats-Dr1q98cg.js → use-community-stats-DPHOiIBu.js} +1 -1
- package/dashboard/dist/assets/{use-limits-display-prefs-DnacsQ0f.js → use-limits-display-prefs-BfSnFqTR.js} +1 -1
- package/dashboard/dist/assets/{use-native-settings-BgBQK2b0.js → use-native-settings-Cx_HZy8t.js} +1 -1
- package/dashboard/dist/assets/{use-ordered-list-BBs8mEfc.js → use-ordered-list-IRGftZaJ.js} +1 -1
- package/dashboard/dist/assets/{use-quality-per-dollar-pref-BSagz4Mk.js → use-quality-per-dollar-pref-BoE3jESh.js} +1 -1
- package/dashboard/dist/assets/{use-transform-CL6RuAA2.js → use-transform-BJNb33iJ.js} +1 -1
- package/dashboard/dist/assets/{use-usage-limits-CzNniz6Z.js → use-usage-limits-Dyoqxe1m.js} +1 -1
- package/dashboard/dist/assets/{useCurrency-ByQkX7uG.js → useCurrency-f-244MeL.js} +1 -1
- package/dashboard/dist/assets/{useScrollLock-D5wf8_sp.js → useScrollLock-D6X4FH8b.js} +1 -1
- package/dashboard/dist/assets/useTokenFormat-Cz_Gqk4n.js +1 -0
- package/dashboard/dist/assets/{zap-v3s0o4Ig.js → zap-DN1VaJU3.js} +1 -1
- package/dashboard/dist/index.html +2 -2
- package/dashboard/dist/share.html +2 -2
- package/package.json +1 -1
- package/src/commands/sync.js +4 -0
- package/src/lib/pricing/seed-snapshot.json +1 -1
- package/dashboard/dist/assets/DashboardPage-DXbecrQR.js +0 -19
- package/dashboard/dist/assets/DialogDescription-DDDcU_07.js +0 -1
- package/dashboard/dist/assets/check-B1MZEuWp.js +0 -1
- package/dashboard/dist/assets/main-ilWqzAfD.css +0 -1
- package/dashboard/dist/assets/useTokenFormat-BpdwKlbn.js +0 -1
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import{c as Cn,f as Fl,i as cs,J as Il,r as h,M as Ll,j as r,L as Rl,u as br,m as Le,g as Bl,a as Dt,b as ln,d as Ye,e as zl,h as Yl,k as Jr,l as Xn,n as kr,o as wr,p as da,q as Hl,s as Ul,t as Vl,v as ql,w as Gl,x as Dn,y as Bt,z as Kl,A as Xl,B as Ql,C as Jl,D as _e,E as g,R as W,X as ua,F as fa,G as cn,H as pt,I as ds,K as Zl,N as or,O as us,P as Fe,Q as ia,S as dn,T as ec,U as fs,V as ms,W as vr,Y as tc,Z as nc,_ as hs,$ as ac,a0 as rc,a1 as Zr,a2 as oc,a3 as eo,a4 as sc,a5 as to,a6 as ic,a7 as lc,a8 as cc,a9 as dc,aa as uc,ab as fc,ac as mc,ad as hc,ae as gc,af as yc,ag as pc,ah as no,ai as Aa,aj as ao,ak as xc}from"./main-DY9GCwr_.js";import{u as ro,a as bc,C as kc,b as wc,c as oo,D as vc,S as _c,v as Nc,s as jc,K as Sc,P as Mc}from"./use-ordered-list-IRGftZaJ.js";import{u as Cc}from"./use-usage-limits-Dyoqxe1m.js";import{u as un}from"./useCurrency-f-244MeL.js";import{u as Qe}from"./useTokenFormat-Cz_Gqk4n.js";import{T as Dc,M as Tc,f as on,A as Pc}from"./provider-display-B6jUb-Ud.js";import{D as Oc,a as Ec,b as Ac,c as Wc,d as $c,e as Fc}from"./DialogTitle-DeXrE3Jr.js";import{D as Ic}from"./DialogClose-Be-pyoVu.js";import{C as nt}from"./Card-BSUag_Em.js";import{S as gs}from"./Select-B3plxksi.js";import{P as sr,a as ir,b as lr,c as cr,d as dr,C as ys}from"./PopoverPopup-RoYcoamh.js";import{u as ps,a as xs}from"./use-transform-BJNb33iJ.js";import{I as bs}from"./info-482LCF96.js";import{L as Lc}from"./loader-circle-xebF61S5.js";import{F as Et}from"./FadeIn-BIj6T_Ni.js";import{C as Rc}from"./ClawdAnimated-Dkhj87ak.js";import{u as Bc,P as zc}from"./use-quality-per-dollar-pref-BoE3jESh.js";import{L as Yc,A as Hc}from"./agent-logos-DApZ1E-T.js";import{C as Uc}from"./check-D1YFQP0r.js";import"./useScrollLock-D6X4FH8b.js";import"./SelectItemText-Deyr9uQd.js";const Vc=[["path",{d:"m15 18-6-6 6-6",key:"1wnfg3"}]],qc=Cn("chevron-left",Vc);const Gc=[["path",{d:"M15 6a9 9 0 0 0-9 9V3",key:"1cii5b"}],["circle",{cx:"18",cy:"6",r:"3",key:"1h7g24"}],["circle",{cx:"6",cy:"18",r:"3",key:"fqmcym"}]],Kc=Cn("git-branch",Gc);const Xc=[["path",{d:"M18 5a2 2 0 0 1 2 2v8.526a2 2 0 0 0 .212.897l1.068 2.127a1 1 0 0 1-.9 1.45H3.62a1 1 0 0 1-.9-1.45l1.068-2.127A2 2 0 0 0 4 15.526V7a2 2 0 0 1 2-2z",key:"1pdavp"}],["path",{d:"M20.054 15.987H3.946",key:"14rxg9"}]],Qc=Cn("laptop",Xc);const Jc=[["path",{d:"M18 8V6a2 2 0 0 0-2-2H4a2 2 0 0 0-2 2v7a2 2 0 0 0 2 2h8",key:"10dyio"}],["path",{d:"M10 19v-3.96 3.15",key:"1irgej"}],["path",{d:"M7 19h5",key:"qswx4l"}],["rect",{width:"6",height:"10",x:"16",y:"12",rx:"2",key:"1egngj"}]],ks=Cn("monitor-smartphone",Jc);const Zc=[["path",{d:"M21 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h6",key:"y09zxi"}],["path",{d:"m21 3-9 9",key:"mpx6sq"}],["path",{d:"M15 3h6v6",key:"1q9fwt"}]],ed=Cn("square-arrow-out-up-right",Zc);function td(e,t,n={}){const a=e.get();let o=null,s=a,i;const l=typeof a=="string"?a.replace(/[\d.-]/g,""):void 0,c=()=>{o&&(o.stop(),o=null),e.animation=void 0},d=()=>{const f=so(e.get()),m=so(s);if(f===m){c();return}const y=o?o.getGeneratorVelocity():e.getVelocity();c(),o=new Il({keyframes:[f,m],velocity:y,type:"spring",restDelta:.001,restSpeed:.01,...n,onUpdate:i})},u=()=>{d(),e.animation=o??void 0,e.events.animationStart?.notify(),o?.then(()=>{e.animation=void 0,e.events.animationComplete?.notify()})};if(e.attach((f,m)=>{s=f,i=y=>m(Wa(y,l)),Fl.postRender(u)},c),cs(t)){let f=n.skipInitialAnimation===!0;const m=t.on("change",p=>{f?(f=!1,e.jump(Wa(p,l),!1)):e.set(Wa(p,l))}),y=e.on("destroy",m);return()=>{m(),y()}}return c}function Wa(e,t){return t?e+t:e}function so(e){return typeof e=="number"?e:parseFloat(e)}function nd(e,t={}){const{isStatic:n}=h.useContext(Ll),a=()=>cs(e)?e.get():e;if(n)return ps(a);const o=xs(a());return h.useInsertionEffect(()=>td(o,e,t),[o,JSON.stringify(t)]),o}function ad(e,t={}){return nd(e,{type:"spring",...t})}function rd(){return r.jsxs(Rl,{to:"/landing",className:"flex items-center gap-2.5 no-underline hover:opacity-80 transition-opacity",children:[r.jsx("img",{src:"/app-icon.png",alt:"Token Tracker",width:28,height:28,className:"rounded-md"}),r.jsx("span",{className:"text-base font-semibold text-oai-black dark:text-oai-white leading-tight",children:"Token Tracker"})]})}function od({children:e,header:t,footer:n,className:a="",hideHeader:o=!1,hideFooter:s=!1,bare:i=!1}){return i?r.jsxs("div",{className:`flex flex-col flex-1 min-h-0 ${a}`,children:[r.jsx("main",{className:"flex-1 px-6 py-6",children:e}),!s&&n&&r.jsx("footer",{className:"border-t border-oai-gray-200 dark:border-oai-gray-800 px-6 py-4 mt-auto transition-colors duration-200",children:n})]}):r.jsxs("div",{className:`min-h-screen bg-oai-white dark:bg-oai-gray-950 text-oai-black dark:text-oai-white font-sans flex flex-col transition-colors duration-200 ${a}`,children:[!o&&r.jsxs("header",{className:"border-b border-oai-gray-200 dark:border-oai-gray-800 px-6 py-4 flex items-center justify-between transition-colors duration-200",children:[r.jsx(rd,{}),r.jsx("div",{className:"flex-1 flex justify-center",children:t})]}),r.jsx("main",{className:"flex-1 px-6 py-6",children:e}),!s&&n&&r.jsx("footer",{className:"border-t border-oai-gray-200 dark:border-oai-gray-800 px-6 py-4 mt-auto transition-colors duration-200",children:n})]})}function sd({children:e,variant:t="info",size:n="md",className:a=""}){const o="inline-flex items-center font-medium",s={success:"bg-oai-brand-100 dark:bg-oai-brand-900/30 text-oai-brand-700 dark:text-oai-brand-400 rounded-full",warning:"bg-oai-amber-50 dark:bg-oai-amber-900/30 text-oai-amber-dark dark:text-oai-amber-400 rounded-full",error:"bg-red-50 dark:bg-red-900/30 text-red-600 dark:text-red-400 rounded-full",info:"bg-oai-gray-100 dark:bg-oai-gray-800 text-oai-gray-600 dark:text-oai-gray-300 rounded-full",secondary:"bg-oai-gray-100 dark:bg-oai-gray-800 text-oai-gray-500 dark:text-oai-gray-300 rounded-md"},i={sm:"px-2 py-0.5 text-xs",md:"px-2.5 py-1 text-sm"},l=`${o} ${s[t]} ${i[n]} ${a}`.trim();return r.jsx("span",{className:l,children:e})}var id={};function ld(e,t){return e==="."?{width:"0.34ch",justifyContent:"center",marginInline:"-0.04ch"}:e===","?{width:"0.08ch",justifyContent:"center",marginInline:"-0.30ch"}:{width:"0.72ch",justifyContent:"flex-start",paddingLeft:"0.04ch",height:t}}function cd({mv:e,digit:t,height:n}){const a=ps(e,o=>{const s=(o%10+10)%10,i=(10+t-s)%10;let l=i*n;return i>5&&(l-=10*n),l});return r.jsx(Le.span,{style:{position:"absolute",inset:0,display:"flex",alignItems:"center",justifyContent:"center",y:a},children:t})}function dd(e){const t=Math.round(e),n=1e-9*Math.max(1,Math.abs(e));return Math.abs(e-t)<n?t:e}function ud(e,t){const n=e/t;return Math.floor(dd(n))}function fd(e){const t=String(e??""),n=Array.from(t),a=n.indexOf(".");let o=n.filter((l,c)=>/\d/.test(l)&&(a===-1||c<a)).length,s=0,i=!1;return n.map(l=>{if(!/\d/.test(l))return l==="."&&(i=!0),l;if(!i){const c=10**Math.max(o-1,0);return o-=1,c}return s+=1,10**-s})}function md({place:e,value:t,height:n,digitStyle:a,shouldReduceMotion:o}){if(typeof e!="number"){const c=ld(e,n),d=e!=="."&&e!==",",u=e===".";return r.jsx("span",{"data-counter-token":"static",className:"relative inline-flex items-center justify-center",style:{height:n,...c,...a,...d?{width:"auto",paddingInline:"0.06ch",justifyContent:"center"}:null,...u?{width:c.width}:null},children:e})}const s=ud(t,e),i=xs(0),l=ad(i,{stiffness:220,damping:26,mass:.8});return h.useEffect(()=>{i.set(s)},[i,s]),o?r.jsx("span",{"data-counter-token":"digit",className:"relative inline-flex items-center justify-center overflow-hidden",style:{height:n,position:"relative",width:"0.9ch",fontVariantNumeric:"tabular-nums",...a},children:Math.abs(s)%10}):r.jsx("span",{"data-counter-token":"digit",className:"relative inline-flex overflow-hidden",style:{height:n,position:"relative",width:"0.9ch",fontVariantNumeric:"tabular-nums",...a},children:Array.from({length:10},(c,d)=>r.jsx(cd,{mv:l,digit:d,height:n},d))})}function hd({value:e,displayValue:t,fontSize:n=72,padding:a=0,places:o,gap:s=6,borderRadius:i=4,horizontalPadding:l=0,textColor:c="inherit",fontWeight:d="inherit",containerStyle:u,counterStyle:f,digitStyle:m,gradientHeight:y=14,gradientFrom:p="rgba(255,255,255,0.95)",gradientTo:b="rgba(255,255,255,0)",topGradientStyle:x,bottomGradientStyle:w}){const k=String(t??e??""),N=h.useMemo(()=>Array.isArray(o)&&o.length?o:fd(k),[o,k]),S=typeof navigator<"u"&&/jsdom/i.test(navigator.userAgent||"")||typeof process<"u"&&id?.VITEST==="true",v=br()||S,j=Number.isFinite(Number(e))?Math.abs(Number(e)):0,T=n+a;return v?r.jsx("span",{"data-counter-root":"true",style:{display:"inline-flex",alignItems:"center",color:c,fontSize:n,fontWeight:d,lineHeight:1,...u,...f},children:k}):r.jsxs("span",{"data-counter-root":"true",style:{position:"relative",display:"inline-block",...u},children:[r.jsx("span",{style:{fontSize:n,display:"flex",gap:s,overflow:"hidden",borderRadius:i,paddingLeft:l,paddingRight:l,lineHeight:1,color:c,fontWeight:d,...f},children:N.map((_,M)=>r.jsx(md,{place:_,value:j,height:T,digitStyle:m,shouldReduceMotion:v},`${String(_)}-${M}`))}),r.jsxs("span",{style:{pointerEvents:"none",position:"absolute",inset:0,display:"flex",flexDirection:"column",justifyContent:"space-between"},children:[r.jsx("span",{style:x??{height:y,background:`linear-gradient(to bottom, ${p}, ${b})`}}),r.jsx("span",{style:w??{height:y,background:`linear-gradient(to top, ${p}, ${b})`}})]})]})}function gd({baseUrl:e,accessToken:t,guestAllowed:n=!1,weeks:a=52,weekStartsOn:o="sun",cacheKey:s,timeZone:i,tzOffsetMinutes:l,now:c,accountView:d=!1,accountAccessToken:u=null,accountRevision:f=0,accountViewResolving:m=!1,deviceId:y=null}={}){const p=!!(d&&u),b=p?"cloud":"local",x=h.useMemo(()=>Bl({weeks:a,weekStartsOn:o,now:c}),[c,a,o]),[w,k]=h.useState([]),[N,S]=h.useState(null),[v,j]=h.useState("edge"),[T,_]=h.useState(!1),[M,O]=h.useState(null),$=Dt(),Y=ln(t),H=!n,L=typeof window<"u"&&(window.location.hostname==="localhost"||window.location.hostname==="127.0.0.1"),D=h.useMemo(()=>{if(!s)return null;const U=da({timeZone:i,offsetMinutes:l});return`tokentracker.heatmap.${s}.${b}.${a}.${o}.${U}.${y||"all"}`},[s,y,b,i,l,a,o]),F=h.useCallback(()=>{if(!D||typeof window>"u")return null;try{const U=window.localStorage.getItem(D);if(!U)return null;const se=JSON.parse(U);return!se||!se.heatmap?null:se}catch{return null}},[D]),P=h.useCallback(U=>{if(!(!D||typeof window>"u"))try{window.localStorage.setItem(D,JSON.stringify(U))}catch{}},[D]),E=h.useCallback(()=>{if(!(!D||typeof window>"u"))try{window.localStorage.removeItem(D)}catch{}},[D]),B=h.useRef(b);h.useEffect(()=>{B.current!==b&&(B.current=b,k([]),S(null),j("edge"),O(null),_(!0))},[b]);const R=h.useCallback(async()=>{const U=await Ye(t),se=p?await Ye(u):null;if(!U&&!$&&!L&&!p)return;if(p&&!se){O("Your session expired. Please sign in again to view account data."),_(!1);return}const ce=p?se:U,de=p?zl:Yl,ye=p?kr:wr;_(!0),O(null);try{try{const q=await de({baseUrl:e,accessToken:ce,weeks:a,to:x.to,weekStartsOn:o,device:y,timeZone:i,tzOffsetMinutes:l}),J=Array.isArray(q?.weeks)?q.weeks:[];if(!J.length&&H){const G=F();if(G?.heatmap){S(G.heatmap),k(G.daily||[]),j("cache");return}}if(!J.some(G=>(Array.isArray(G)?G:[]).some(ne=>ne&&Number.isFinite(Number(ne.level))))&&J.length){const G=[];for(const Z of J)for(const te of Array.isArray(Z)?Z:[])te?.day&&G.push({day:te.day,total_tokens:te.total_tokens??te.value??0,billable_total_tokens:te.billable_total_tokens??te.value??te.total_tokens??0});const ne=Jr({dailyRows:G,weeks:a,to:q?.to||x.to,weekStartsOn:o});k(G),S({...ne,week_starts_on:o,active_days:G.filter(Z=>Number(Z?.billable_total_tokens??Z?.total_tokens)>0).length,streak_days:Xn({dailyRows:G,to:q?.to||x.to})}),j("client"),H?P({heatmap:{...ne,week_starts_on:o,active_days:G.filter(Z=>Number(Z?.billable_total_tokens??Z?.total_tokens)>0).length,streak_days:Xn({dailyRows:G,to:q?.to||x.to})},daily:G,fetchedAt:new Date().toISOString()}):E();return}S(q||null),k([]),j("edge"),q&&H?P({heatmap:q,daily:[],fetchedAt:new Date().toISOString()}):H||E();return}catch(q){const J=q,A=J?.status??J?.statusCode;if(A===401||A===403)throw q}const fe=await ye({baseUrl:e,accessToken:ce,from:x.from,to:x.to,device:y,timeZone:i,tzOffsetMinutes:l}),ie=Array.isArray(fe?.data)?fe.data:[];k(ie);const ae=Jr({dailyRows:ie,weeks:a,to:x.to,weekStartsOn:o});S({...ae,week_starts_on:o,active_days:ie.filter(q=>Number(q?.billable_total_tokens??q?.total_tokens)>0).length,streak_days:Xn({dailyRows:ie,to:x.to})}),j("client"),H?P({heatmap:{...ae,week_starts_on:o,active_days:ie.filter(q=>Number(q?.billable_total_tokens??q?.total_tokens)>0).length,streak_days:Xn({dailyRows:ie,to:x.to})},daily:ie,fetchedAt:new Date().toISOString()}):E()}catch(fe){if(H){const ie=F();if(ie?.heatmap)S(ie.heatmap),k(ie.daily||[]),j("cache"),O(null);else{const ae=fe;O(ae?.message||String(ae)),k([]),S(null),j("edge")}}else{const ie=fe;O(ie?.message||String(ie)),k([]),S(null),j("edge")}}finally{_(!1)}},[t,e,$,n,H,x.from,x.to,F,Y,i,l,o,a,E,P,L,p,u,f,y]);return h.useEffect(()=>{if(m){_(!0);return}if(!Y&&!n&&!$&&!L&&!p){k([]),_(!1),O(null),S(null),j("edge");return}if(!H)E(),k([]),O(null),S(null),j("edge");else{const U=F();U?.heatmap&&(S(U.heatmap),k(U.daily||[]),j("cache"))}R()},[t,$,F,R,Y,n,H,E,L,m]),{range:x,daily:w,heatmap:N,source:$?"mock":v==="client"?"edge":v,loading:T,error:M,refresh:R}}const yd="tokentracker.dashboard.leftCardOrder.v1",pd="tokentracker.dashboard.rightCardOrder.v1";function xd(e,t){const n=ro(yd,e),a=ro(pd,t),o=n.order.join("|")!==e.join("|")||a.order.join("|")!==t.join("|"),s=h.useCallback(()=>{n.reset(),a.reset()},[n,a]);return{left:n,right:a,isCustomized:o,resetAll:s}}function bd(e,t){return e.length===t.length&&e.every((n,a)=>Object.is(n,t[a]))}function fn(e){const t=h.useRef(e),n=h.useRef(0),a=h.useRef(!0);return h.useLayoutEffect(()=>{bd(t.current,e)||(t.current=e,n.current+=1)}),h.useEffect(()=>(a.current=!0,()=>{a.current=!1,n.current+=1}),[]),h.useCallback(()=>{const o=++n.current,s=t.current;return()=>a.current&&n.current===o&&t.current===s},[])}const kd=10;function wd({baseUrl:e,accessToken:t,from:n,to:a,source:o,timeZone:s,tzOffsetMinutes:i}={}){const[l,c]=h.useState([]),[d,u]=h.useState(!1),[f,m]=h.useState(null),y=Dt(),p=ln(t),b=typeof window<"u"&&(window.location.hostname==="localhost"||window.location.hostname==="127.0.0.1"),x=fn([e,t,n,a,o,s,i]),w=h.useCallback(async()=>{const k=x(),N=await Ye(t);if(k()){if(!N&&!y&&!b){c([]),m(null),u(!1);return}u(!0),m(null);try{const S=await Hl({baseUrl:e,accessToken:N,limit:kd,from:n,to:a,source:o,timeZone:s,tzOffsetMinutes:i});if(!k())return;c(Array.isArray(S?.entries)?S.entries:[])}catch(S){if(!k())return;const v=S?.message||String(S);m(v),c([])}finally{k()&&u(!1)}}},[t,e,n,y,o,s,a,i,b,x]);return h.useEffect(()=>{if(!p&&!y&&!b){c([]),m(null),u(!1);return}c([]),m(null),u(!0),w()},[y,w,p,b]),{entries:l,loading:d,error:f,refresh:w}}const vd=24;function ws({baseUrl:e,accessToken:t,guestAllowed:n=!1,period:a,from:o,to:s,months:i=vd,cacheKey:l,timeZone:c,tzOffsetMinutes:d,now:u,sharedRows:f,sharedRange:m,accountView:y=!1,accountAccessToken:p=null,accountRevision:b=0,accountViewResolving:x=!1,deviceId:w=null}={}){const k=!!(y&&p),N=k?"cloud":"local",[S,v]=h.useState([]),[j,T]=h.useState(()=>({from:o,to:s})),[_,M]=h.useState("edge"),[O,$]=h.useState(null),[Y,H]=h.useState(!1),[L,D]=h.useState(null),F=Dt(),P=ln(t),E=!n&&!F,B=Array.isArray(f),R=m?.from||o,z=m?.to||s,U=h.useMemo(()=>a==="day"?"hourly":a==="total"?"monthly":"daily",[a]),se=(()=>{if(!l)return null;const A=_d(e)||"default",G=da({timeZone:c,offsetMinutes:d}),ne=w||"all";if(U==="hourly")return`tokentracker.trend.${l}.${N}.${A}.hourly.${s||o||"day"}.${G}.${ne}`;if(U==="monthly")return`tokentracker.trend.${l}.${N}.${A}.monthly.${i}.${s||"today"}.${G}.${ne}`;const Z=`${o||""}.${s||""}`;return`tokentracker.trend.${l}.${N}.${A}.daily.${Z}.${G}.${ne}`})(),ce=h.useCallback(()=>{if(!se||typeof window>"u")return null;try{const A=window.localStorage.getItem(se);if(!A)return null;const G=JSON.parse(A);return!G||!Array.isArray(G.rows)?null:G}catch{return null}},[se]),de=h.useCallback(A=>{if(!(!se||typeof window>"u"))try{window.localStorage.setItem(se,JSON.stringify(A))}catch{}},[se]),ye=h.useCallback(()=>{if(!(!se||typeof window>"u"))try{window.localStorage.removeItem(se)}catch{}},[se]),fe=typeof window<"u"&&(window.location.hostname==="localhost"||window.location.hostname==="127.0.0.1"),ie=fn([e,U,o,s,i,N,t,p,b,w,c,d,B,f,R,z]),ae=h.useRef(N);h.useEffect(()=>{ae.current!==N&&(ae.current=N,v([]),T({from:o,to:s}),M("edge"),$(null),D(null),H(!0))},[N]);const q=h.useCallback(async()=>{const A=ie();if(B){v(Array.isArray(f)?f:[]),T({from:R,to:z}),M("shared"),$(null),H(!1),D(null);return}const G=await Ye(t),ne=k?await Ye(p):null;if(!A()||!G&&!F&&!fe&&!k)return;if(k&&!ne){D("Your session expired. Please sign in again to view account data."),H(!1);return}const Z=k?ne:G,te=k?Ul:Vl,be=k?ql:Gl,Se=k?kr:wr;H(!0),D(null);try{let Me;U==="hourly"?Me=await te({baseUrl:e,accessToken:Z,day:s||o,device:w,timeZone:c,tzOffsetMinutes:d}):U==="monthly"?Me=await be({baseUrl:e,accessToken:Z,months:i,to:s,device:w,timeZone:c,tzOffsetMinutes:d}):Me=await Se({baseUrl:e,accessToken:Z,from:o,to:s,device:w,timeZone:c,tzOffsetMinutes:d});const le=Me?.from||o||Me?.day||null,xe=Me?.to||s||Me?.day||null;let me=Array.isArray(Me?.data)?Me.data:[];U==="daily"?me=$a(me,le||o,xe||s,{timeZone:c,offsetMinutes:d,now:u}):U==="hourly"?(me=Fa(me,le||o||Me?.day,{timeZone:c,offsetMinutes:d,now:u}),me=Ia(me,{timeZone:c,offsetMinutes:d,now:u})):U==="monthly"&&(me=La(me,{timeZone:c,offsetMinutes:d,now:u}));const Ee=new Date().toISOString();if(!A())return;v(me),T({from:le,to:xe}),M("edge"),$(Ee),E?de({rows:me,from:le,to:xe,mode:U,fetchedAt:Ee}):ye()}catch(Me){if(!A())return;if(E){const le=ce();if(le?.rows){let xe=U==="daily"?$a(le.rows||[],le.from||o,le.to||s,{timeZone:c,offsetMinutes:d,now:u}):U==="hourly"?Fa(le.rows||[],le.from||o||le.day||s,{timeZone:c,offsetMinutes:d,now:u}):Array.isArray(le.rows)?le.rows:[];U==="hourly"?xe=Ia(xe,{timeZone:c,offsetMinutes:d,now:u}):U==="monthly"&&(xe=La(xe,{timeZone:c,offsetMinutes:d,now:u})),v(xe),T({from:le.from||o,to:le.to||s}),M("cache"),$(le.fetchedAt||null),D(null)}else{v([]),T({from:o,to:s}),M("edge"),$(null);const xe=Me;D(xe?.message||String(xe))}}else{v([]),T({from:o,to:s}),M("edge"),$(null);const le=Me;D(le?.message||String(le))}}finally{A()&&H(!1)}},[t,e,o,F,n,E,U,i,ce,P,B,R,f,z,c,s,d,u,ye,de,fe,k,p,b,w,ie]);h.useEffect(()=>{if(x){H(!0);return}if(B){v(Array.isArray(f)?f:[]),T({from:R,to:z}),M("shared"),$(null),H(!1),D(null);return}if(!P&&!n&&!F&&!fe&&!k){v([]),T({from:o,to:s}),D(null),H(!1),M("edge"),$(null);return}if(!E)ye(),v([]),T({from:o,to:s}),D(null),M("edge"),$(null);else{const A=ce();if(A?.rows){let G=U==="daily"?$a(A.rows||[],A.from||o,A.to||s,{timeZone:c,offsetMinutes:d,now:u}):U==="hourly"?Fa(A.rows||[],A.from||o||A.day||s,{timeZone:c,offsetMinutes:d,now:u}):Array.isArray(A.rows)?A.rows:[];U==="hourly"?G=Ia(G,{timeZone:c,offsetMinutes:d,now:u}):U==="monthly"&&(G=La(G,{timeZone:c,offsetMinutes:d,now:u})),v(G),T({from:A.from||o,to:A.to||s}),M("cache"),$(A.fetchedAt||null),D(null)}else v([]),T({from:o,to:s}),M("edge"),$(null),D(null)}H(!0),q()},[t,F,ce,q,B,R,f,z,P,n,E,ye,fe,x]);const J=F?"mock":_;return{rows:S,from:j.from||o,to:j.to||s,source:J,fetchedAt:O,loading:Y,error:L,refresh:q}}function _d(e){try{return new URL(e).host}catch{return null}}function aa(e){if(!e)return null;const t=String(e).trim(),n=t.split("-");if(n.length!==3)return null;const a=Number(n[0]),o=Number(n[1])-1,s=Number(n[2]);if(!Number.isFinite(a)||!Number.isFinite(o)||!Number.isFinite(s))return null;const i=new Date(Date.UTC(a,o,s));return Number.isFinite(i.getTime())&&Bt(i)===t?i:null}function vs(e,t){return new Date(Date.UTC(e.getUTCFullYear(),e.getUTCMonth(),e.getUTCDate()+t))}const _s=["total_tokens","billable_total_tokens","input_tokens","cached_input_tokens","cache_creation_input_tokens","output_tokens","reasoning_output_tokens","conversation_count"];function $a(e,t,n,{timeZone:a,offsetMinutes:o,now:s}={}){const i=aa(t),l=aa(n);if(!i||!l||l<i)return Array.isArray(e)?e:[];const c=s instanceof Date&&Number.isFinite(s.getTime())?s:new Date,d=Dn({timeZone:a,offsetMinutes:o,date:c}),u=aa(d),f=u?u.getTime():c.getTime(),m=new Map;for(const p of e||[])p?.day&&m.set(p.day,p);const y=[];for(let p=i;p<=l;p=vs(p,1)){const b=Bt(p),x=m.get(b),w=p.getTime()>f;if(x){y.push({...x,missing:!1,future:w});continue}y.push({day:b,total_tokens:null,billable_total_tokens:null,input_tokens:null,cached_input_tokens:null,output_tokens:null,reasoning_output_tokens:null,missing:!w,future:w})}return y}function Nd(e,t){const n=t?null:0;return{hour:e,total_tokens:n,billable_total_tokens:n,input_tokens:n,cached_input_tokens:n,cache_creation_input_tokens:n,output_tokens:n,reasoning_output_tokens:n,conversation_count:n,missing:!1,future:t}}function jd(e){if(!e||typeof e!="object")return!1;const t=e.models;return t&&typeof t=="object"&&Object.keys(t).length>0?!1:_s.every(n=>e[n]==null)}function Sd(e,t,n){const a={...e,hour:t,missing:!1,future:n};if(!n&&jd(e))for(const o of _s)a[o]=0;return a}function Md(e,t){const n=t===30?48:24,a=[];for(let o=0;o<n;o++){const s=Math.floor(o*t/60),i=o*t%60;a.push(`${e}T${String(s).padStart(2,"0")}:${String(i).padStart(2,"0")}:00`)}return a}function Cd(e,t,{timeZone:n,offsetMinutes:a}={}){const o=Md(e,t);if(!n||typeof Intl>"u"||!Intl.DateTimeFormat)return o;const s=aa(e);if(!s)return o;const i=s.getUTCFullYear()*1e4+(s.getUTCMonth()+1)*100+s.getUTCDate(),l=s.getTime()-2160*60*1e3,c=vs(s,2).getTime()+2160*60*1e3,d=[],u=new Set;for(let f=l;f<=c;f+=1800*1e3){const m=ma({timeZone:n,offsetMinutes:a,now:new Date(f)});if(!m||m.dayNum!==i||t===60&&m.minute!==0||t===30&&m.minute!==0&&m.minute!==30)continue;const y=`${e}T${String(m.hour).padStart(2,"0")}:${String(m.minute).padStart(2,"0")}:00`;u.has(y)||(u.add(y),d.push(y))}return d.length>0?d:o}function Fa(e,t,{timeZone:n,offsetMinutes:a,now:o}={}){if(!t)return Array.isArray(e)?e:[];const s=t.trim().slice(0,10),i=ma({timeZone:n,offsetMinutes:a,now:o}),l=i?i.dayNum:void 0;let c=!1;for(const y of e||[]){const p=y?.hour||y?.label||"",b=ra(p,l);if(b&&b.slot%2!==0){c=!0;break}}const d=c?30:60,u=new Map;for(const y of e||[]){const p=y?.hour||y?.label||"",b=ra(p,l);b&&u.set(b.slot,y)}const f=[],m=Cd(s,d,{timeZone:n,offsetMinutes:a});for(let y=0;y<m.length;y++){const p=m[y],b=ra(p,l),x=b?b.slot:c?y:y*2,w=u.get(x);let k=!1;if(i){const N=i.year*1e4+i.month*100+i.day,S=b?.dayNum??Number(s.replace(/-/g,""));if(S>N)k=!0;else if(S===N){const v=i.hour*2+(i.minute>=30?1:0);k=x>v}}w?f.push(Sd(w,p,k)):f.push(Nd(p,k))}return f}function Ia(e,{timeZone:t,offsetMinutes:n,now:a}={}){if(!Array.isArray(e))return[];const o=ma({timeZone:t,offsetMinutes:n,now:a});return o?e.map(s=>{const i=s?.hour||s?.label||"",l=ra(i,o.dayNum);if(!l)return{...s,future:!1};const c=l.dayNum!==null&&l.dayNum>o.dayNum||(l.dayNum===null||l.dayNum===o.dayNum)&&l.slot>o.slot;return{...s,future:!!c}}):e}function La(e,{timeZone:t,offsetMinutes:n,now:a}={}){if(!Array.isArray(e))return[];const o=ma({timeZone:t,offsetMinutes:n,now:a});return o?e.map(s=>{const i=s?.month||s?.label||"",l=Dd(i);if(!l)return{...s,future:!1};const c=l.year>o.year||l.year===o.year&&l.month>o.month;return{...s,future:c}}):e}function ma({timeZone:e,offsetMinutes:t,now:n}={}){const a=n instanceof Date&&Number.isFinite(n.getTime())?n:new Date;if(e&&typeof Intl<"u"&&Intl.DateTimeFormat)try{const m=new Intl.DateTimeFormat("en-CA",{timeZone:e,year:"numeric",month:"2-digit",day:"2-digit",hour:"2-digit",minute:"2-digit",hourCycle:"h23"}).formatToParts(a).reduce((k,N)=>(N.type&&N.value&&(k[N.type]=N.value),k),{}),y=Number(m.year),p=Number(m.month),b=Number(m.day),x=Number(m.hour),w=Number(m.minute);if(Number.isFinite(y)&&Number.isFinite(p)&&Number.isFinite(b)&&Number.isFinite(x)&&Number.isFinite(w)){const k=x*2+(w>=30?1:0);return{year:y,month:p,day:b,hour:x,minute:w,dayNum:y*1e4+p*100+b,slot:k}}}catch{}if(Number.isFinite(t)){const u=new Date(a.getTime()+t*60*1e3),f=u.getUTCFullYear(),m=u.getUTCMonth()+1,y=u.getUTCDate(),p=u.getUTCHours(),b=u.getUTCMinutes(),x=p*2+(b>=30?1:0);return{year:f,month:m,day:y,hour:p,minute:b,dayNum:f*1e4+m*100+y,slot:x}}const o=a.getFullYear(),s=a.getMonth()+1,i=a.getDate(),l=a.getHours(),c=a.getMinutes(),d=l*2+(c>=30?1:0);return{year:o,month:s,day:i,hour:l,minute:c,dayNum:o*1e4+s*100+i,slot:d}}function ra(e,t){if(!e)return null;const n=String(e).trim();if(n.includes("T")){const[a,o]=n.split("T");if(!a||!o)return null;const s=a.split("-");if(s.length!==3)return null;const i=Number(s[0]),l=Number(s[1]),c=Number(s[2]);if(!Number.isFinite(i)||!Number.isFinite(l)||!Number.isFinite(c))return null;const d=o.split(":"),u=Number(d[0]),f=Number(d[1]);if(!Number.isFinite(u)||u<0||u>23||!Number.isFinite(f)||f<0||f>59)return null;const m=u*2+(f>=30?1:0);return{dayNum:i*1e4+l*100+c,slot:m}}else{let a=NaN,o=0;if(/^\d{1,2}$/.test(n))a=Number(n);else if(/^\d{1,2}:\d{2}(:\d{2})?$/.test(n)){const i=n.split(":");a=Number(i[0]),o=Number(i[1])}if(!Number.isFinite(a)||a<0||a>23||!Number.isFinite(o)||o<0||o>59)return null;const s=a*2+(o>=30?1:0);return{dayNum:t||null,slot:s}}}function Dd(e){if(!e)return null;const n=String(e).trim().split("-");if(n.length!==2)return null;const a=Number(n[0]),o=Number(n[1]);return!Number.isFinite(a)||!Number.isFinite(o)||o<1||o>12?null:{year:a,month:o}}function io({baseUrl:e,accessToken:t,guestAllowed:n=!1,from:a,to:o,includeDaily:s=!0,includeSummary:i=!0,cacheKey:l,timeZone:c,tzOffsetMinutes:d,now:u,accountView:f=!1,accountAccessToken:m=null,accountRevision:y=0,accountViewResolving:p=!1,deviceId:b=null}={}){const x=!!(f&&m),w=x?"cloud":"local",[k,N]=h.useState([]),[S,v]=h.useState(null),[j,T]=h.useState(null),[_,M]=h.useState("edge"),[O,$]=h.useState(null),[Y,H]=h.useState(!1),[L,D]=h.useState(null),F=Dt(),P=ln(t),E=!n&&!F,B=b||"all",R=(()=>{if(!l)return null;const ae=Td(e)||"default",q=s?i?"daily-summary":"daily-only":"summary",J=da({timeZone:c,offsetMinutes:d});return`tokentracker.usage.${l}.${w}.${ae}.${a}.${o}.${q}.${J}.${B}`})(),z=h.useRef(w);h.useEffect(()=>{z.current!==w&&(z.current=w,N([]),v(null),T(null),M("edge"),$(null),D(null),H(!0))},[w]);const U=h.useCallback(()=>{if(!R||typeof window>"u")return null;try{const ae=window.localStorage.getItem(R);if(!ae)return null;const q=JSON.parse(ae),J=i?!!q?.summary:Array.isArray(q?.daily);return!q||!J?null:q}catch{return null}},[i,R]),se=h.useCallback(ae=>{if(!(!R||typeof window>"u"))try{window.localStorage.setItem(R,JSON.stringify(ae))}catch{}},[R]),ce=h.useCallback(()=>{if(!(!R||typeof window>"u"))try{window.localStorage.removeItem(R)}catch{}},[R]),de=typeof window<"u"&&(window.location.hostname==="localhost"||window.location.hostname==="127.0.0.1"),ye=fn([e,a,o,s,i,w,t,m,y,b,c,d]),fe=h.useCallback(async()=>{const ae=ye(),q=await Ye(t),J=x?await Ye(m):null;if(!ae()||!q&&!F&&!de&&!x)return;if(x&&!J){D("Your session expired. Please sign in again to view account data."),H(!1);return}const A=x?kr:wr,G=x?Kl:Xl,ne=x?J:q;H(!0),D(null);try{let Z=null,te=null;if(s)if(i){const[xe,me]=await Promise.allSettled([A({baseUrl:e,accessToken:ne,from:a,to:o,device:b,timeZone:c,tzOffsetMinutes:d}),G({baseUrl:e,accessToken:ne,from:a,to:o,device:b,timeZone:c,tzOffsetMinutes:d,rolling:!0})]);if(xe.status==="rejected")throw xe.reason;Z=xe.value,te=me.status==="fulfilled"?me.value:null}else Z=await A({baseUrl:e,accessToken:ne,from:a,to:o,device:b,timeZone:c,tzOffsetMinutes:d});else i&&(te=await G({baseUrl:e,accessToken:ne,from:a,to:o,device:b,timeZone:c,tzOffsetMinutes:d,rolling:!0}));let be=s&&Array.isArray(Z?.data)?Z.data:[];s&&(be=Ba(be,a,o,{timeZone:c,offsetMinutes:d,now:u}));let Se=i&&(te?.totals||Z?.summary?.totals)||null,Me=i&&(te?.rolling||Z?.summary?.rolling)||null;if(i&&s&&!Se&&!te)try{const xe=await G({baseUrl:e,accessToken:ne,from:a,to:o,device:b,timeZone:c,tzOffsetMinutes:d,rolling:!0});Se=xe?.totals||null,Me=xe?.rolling||Me}catch{}const le=new Date().toISOString();if(!ae())return;N(be),v(Se),T(Me),M("edge"),$(le),(Se||!i&&s)&&E?se({summary:Se,rolling:Me,daily:be,from:a,to:o,includeDaily:s,includeSummary:i,fetchedAt:le}):E||ce()}catch(Z){if(!ae())return;if(E){const te=U();if(te?.summary||!i&&Array.isArray(te?.daily)){v(te.summary),T(te.rolling||null);const be=Array.isArray(te.daily)?te.daily:[],Se=s?Ba(be,te.from||a,te.to||o,{timeZone:c,offsetMinutes:d,now:u}):be;N(Se),M("cache"),$(te.fetchedAt||null),D(null)}else{const be=Z;D(be?.message||String(be)),N([]),v(null),T(null),M("edge"),$(null)}}else{const te=Z;D(te?.message||String(te)),N([]),v(null),T(null),M("edge"),$(null)}}finally{ae()&&H(!1)}},[t,e,a,s,i,F,n,E,u,U,P,c,o,d,ce,se,de,x,m,y,b,ye]);return h.useEffect(()=>{if(p){H(!0);return}const ae=typeof window<"u"&&(window.location.hostname==="localhost"||window.location.hostname==="127.0.0.1");if(!P&&!n&&!F&&!ae&&!x){N([]),v(null),T(null),D(null),H(!1),M("edge"),$(null);return}if(!E)ce(),N([]),v(null),T(null),D(null),M("edge"),$(null);else{const q=U();if(q?.summary||!i&&Array.isArray(q?.daily)){v(q.summary),T(q.rolling||null);const J=Array.isArray(q.daily)?q.daily:[],A=s?Ba(J,q.from||a,q.to||o,{timeZone:c,offsetMinutes:d,now:u}):J;N(A),M("cache"),$(q.fetchedAt||null),D(null)}else N([]),v(null),T(null),M("edge"),$(null),D(null)}H(!0),fe()},[t,F,U,fe,P,n,E,ce,de,p,i]),h.useEffect(()=>{if(typeof window>"u"||typeof document>"u")return;const ae=15e3;let q=Date.now();const J=()=>{if(document.visibilityState!=="visible")return;const A=Date.now();A-q<ae||(q=A,fe())};return window.addEventListener("focus",J),document.addEventListener("visibilitychange",J),()=>{window.removeEventListener("focus",J),document.removeEventListener("visibilitychange",J)}},[fe]),{daily:k,summary:S,rolling:j,source:F?"mock":_,fetchedAt:O,loading:Y,error:L,refresh:fe}}function Td(e){try{return new URL(e).host}catch{return null}}function Ra(e){if(!e)return null;const t=String(e).trim(),n=t.split("-");if(n.length!==3)return null;const a=Number(n[0]),o=Number(n[1])-1,s=Number(n[2]);if(!Number.isFinite(a)||!Number.isFinite(o)||!Number.isFinite(s))return null;const i=new Date(Date.UTC(a,o,s));return Number.isFinite(i.getTime())&&Bt(i)===t?i:null}function Pd(e,t){return new Date(Date.UTC(e.getUTCFullYear(),e.getUTCMonth(),e.getUTCDate()+t))}function Ba(e,t,n,{timeZone:a,offsetMinutes:o,now:s}={}){const i=Ra(t),l=Ra(n);if(!i||!l||l<i)return Array.isArray(e)?e:[];const c=s instanceof Date&&Number.isFinite(s.getTime())?s:new Date,d=Dn({timeZone:a,offsetMinutes:o,date:c}),u=Ra(d),f=u?u.getTime():c.getTime(),m=new Map;for(const p of e||[])p?.day&&m.set(p.day,p);const y=[];for(let p=i;p<=l;p=Pd(p,1)){const b=Bt(p),x=m.get(b),w=p.getTime()>f;if(x){y.push({...x,missing:!1,future:w});continue}y.push({day:b,total_tokens:null,billable_total_tokens:null,input_tokens:null,cached_input_tokens:null,output_tokens:null,reasoning_output_tokens:null,missing:!w,future:w})}return y}function Od({baseUrl:e,accessToken:t,guestAllowed:n=!1,from:a,to:o,cacheKey:s,timeZone:i,tzOffsetMinutes:l,accountView:c=!1,accountAccessToken:d=null,accountRevision:u=0,accountViewResolving:f=!1,deviceId:m=null}={}){const y=!!(c&&d),p=y?"cloud":"local",[b,x]=h.useState(null),[w,k]=h.useState("edge"),[N,S]=h.useState(!1),[v,j]=h.useState(null),T=Dt(),_=ln(t),M=!n,O=h.useMemo(()=>{if(!s)return null;const B=Ed(e)||"default",R=da({timeZone:i,offsetMinutes:l});return`tokentracker.modelBreakdown.${s}.${p}.${B}.${a}.${o}.${R}.${m||"all"}`},[e,s,m,a,p,i,o,l]),$=h.useCallback(()=>{if(!O||typeof window>"u")return null;try{const B=window.localStorage.getItem(O);if(!B)return null;const R=JSON.parse(B);return!R||!R.breakdown?null:R}catch{return null}},[O]),Y=h.useCallback(B=>{if(!(!O||typeof window>"u"))try{window.localStorage.setItem(O,JSON.stringify(B))}catch{}},[O]),H=h.useCallback(()=>{if(!(!O||typeof window>"u"))try{window.localStorage.removeItem(O)}catch{}},[O]),L=typeof window<"u"&&(window.location.hostname==="localhost"||window.location.hostname==="127.0.0.1"),D=fn([e,a,o,p,t,d,u,m,i,l]),F=h.useRef(p);h.useEffect(()=>{F.current!==p&&(F.current=p,x(null),k("edge"),j(null),S(!0))},[p]);const P=h.useCallback(async()=>{const B=D(),R=await Ye(t),z=y?await Ye(d):null;if(!B()||!R&&!T&&!L&&!y)return;if(y&&!z){j("Your session expired. Please sign in again to view account data."),S(!1);return}const U=y?z:R,se=y?Ql:Jl;S(!0),j(null);try{const ce=await se({baseUrl:e,accessToken:U,from:a,to:o,device:m,timeZone:i,tzOffsetMinutes:l});if(!B())return;x(ce||null),k("edge"),ce&&M?Y({breakdown:ce,fetchedAt:new Date().toISOString()}):M||H()}catch(ce){if(!B())return;if(M){const de=$();if(de?.breakdown)x(de.breakdown),k("cache"),j(null);else{x(null),k("edge");const ye=ce;j(ye?.message||String(ye))}}else{x(null),k("edge");const de=ce;j(de?.message||String(de))}}finally{B()&&S(!1)}},[t,e,a,T,n,M,$,i,o,_,l,H,Y,L,y,d,u,m,D]);return h.useEffect(()=>{if(f){S(!0);return}if(!_&&!n&&!T&&!L&&!y){x(null),k("edge"),j(null),S(!1);return}if(!M)H(),x(null),k("edge"),j(null);else{const B=$();B?.breakdown?(x(B.breakdown),k("cache"),j(null)):(x(null),k("edge"),j(null))}S(!0),P()},[t,T,$,P,_,n,M,H,L,f]),{breakdown:b,source:T?"mock":w,loading:N,error:v,refresh:P}}function Ed(e){try{return new URL(e).host}catch{return null}}const Ns=new Set(["day","hour","month"]);function Ad(e){return Ns.has(e)}function lo(e){if(e==null)return null;const t=String(e).trim();if(!/^[0-9]+$/.test(t))return null;const n=t.replace(/^0+/,"");return n.length===0?"0":n}function Wd(e,t){const n=lo(e),a=lo(t);if(n&&a)return n.length!==a.length?n.length<a.length?-1:1:n===a?0:n<a?-1:1;const o=_e(e),s=_e(t);return o==null&&s==null?0:o==null?1:s==null?-1:o===s?0:o<s?-1:1}function $d(e,t){const n=typeof e=="string"?e:String(e||""),a=typeof t=="string"?t:String(t||"");return n===a?0:n<a?-1:1}function Fd(e){if(!e)return null;const n=String(e).trim().match(/^(\d{4})-(\d{2})-(\d{2})$/);if(!n)return null;const a=Number(n[1]),o=Number(n[2]),s=Number(n[3]);if(!Number.isFinite(a)||!Number.isFinite(o)||!Number.isFinite(s))return null;const i=new Date(Date.UTC(a,o-1,s));return!Number.isFinite(i.getTime())||i.getUTCFullYear()!==a||i.getUTCMonth()+1!==o||i.getUTCDate()!==s?null:i.getTime()}function Id(e){if(!e)return null;const n=String(e).trim().match(/^(\d{4})-(\d{2})$/);if(!n)return null;const a=Number(n[1]),o=Number(n[2]);if(!Number.isFinite(a)||!Number.isFinite(o)||o<1||o>12)return null;const s=new Date(Date.UTC(a,o-1,1));return Number.isFinite(s.getTime())?s.getTime():null}function Ld(e){if(!e)return null;const n=String(e).trim().match(/^(\d{4})-(\d{2})-(\d{2})T(\d{2}):(\d{2})(?::(\d{2}))?Z?$/);if(!n)return null;const a=Number(n[1]),o=Number(n[2]),s=Number(n[3]),i=Number(n[4]),l=Number(n[5]),c=Number(n[6]||0);if(!Number.isFinite(a)||!Number.isFinite(o)||!Number.isFinite(s)||!Number.isFinite(i)||!Number.isFinite(l)||!Number.isFinite(c)||o<1||o>12||s<1||s>31||i<0||i>23||l<0||l>59||c<0||c>59)return null;const d=new Date(Date.UTC(a,o-1,s,i,l,c));return Number.isFinite(d.getTime())?d.getTime():null}function Rd(e,t,n){const a=n==="hour"?Ld:n==="month"?Id:Fd,o=a(e),s=a(t);return o!=null&&s!=null?o===s?0:o<s?-1:1:$d(e,t)}function js(e,{key:t,dir:n}){const a=n==="asc"?1:-1,o=Array.isArray(e)?e:[],s=Ns.has(t)?(l,c)=>Rd(l,c,t):Wd,i=l=>t==="total_tokens"&&l?.billable_total_tokens!=null?l.billable_total_tokens:l?.[t];return o.map((l,c)=>({row:l,index:c})).sort((l,c)=>{const d=i(l.row),u=i(c.row),f=d==null,m=u==null;if(f&&m)return l.index-c.index;if(f)return 1;if(m)return-1;const y=s(d,u);return y!==0?y*a:l.index-c.index}).map(l=>l.row)}function Bd(){return[{key:"day",label:g("daily.sort.date.label"),title:g("daily.sort.date.title")},{key:"total_tokens",label:g("daily.sort.total.label"),title:g("daily.sort.total.title")},{key:"input_tokens",label:g("daily.sort.input.label"),title:g("daily.sort.input.title")},{key:"output_tokens",label:g("daily.sort.output.label"),title:g("daily.sort.output.title")},{key:"cached_input_tokens",label:g("daily.sort.cached.label"),title:g("daily.sort.cached.title")},{key:"reasoning_output_tokens",label:g("daily.sort.reasoning.label"),title:g("daily.sort.reasoning.title")},{key:"conversation_count",label:g("daily.sort.conversations.label"),title:g("daily.sort.conversations.title")}]}function co(e){const t=Ad(e)?e:"day";return Bd().map((n,a)=>a===0?{...n,key:t}:n)}function uo(e,{key:t,dir:n}){return js(e,{key:t,dir:n})}const la=12,zd=["total_tokens","billable_total_tokens","input_tokens","cached_input_tokens","cache_creation_input_tokens","output_tokens","reasoning_output_tokens"];function Yd(e){if(typeof e=="bigint")return e!==0n;if(typeof e=="number")return Number.isFinite(e)&&e!==0;if(e==null)return!1;const t=String(e).trim();if(!t||!/^-?\d+$/.test(t))return!1;const n=t.startsWith("-")?t.slice(1):t;return/[1-9]/.test(n)}function Hd(e){return zd.some(t=>Yd(e?.[t]))}function Ud(e){const t=Array.isArray(e)?e:[];if(!t.length)return[];const n=js(t,{key:"month",dir:"asc"}),a=n.findIndex(o=>o?.month&&Hd(o));return a===-1?t:n.slice(a)}function Vd(e,t,n=la){const a=Array.isArray(e)?e:[],o=Number.isFinite(n)&&n>0?n:la,i=(Number.isFinite(t)&&t>=0?Math.floor(t):0)*o;return a.slice(i,i+o)}function qd({publicMode:e,screenshotMode:t,forceInstall:n,accessEnabled:a,heatmapLoading:o,activeDays:s,hasActiveDeviceToken:i}={}){return e||t?!1:n?!0:a&&!o&&s===0&&!i}const Gd=3e4;function Kd({refresh:e,intervalMs:t=Gd,windowRef:n=window,documentRef:a=document,onError:o=()=>{}}){let s=!1,i=null;const l=()=>{if(s||a.visibilityState!=="visible"||i)return i;const u=Promise.resolve().then(()=>e()).catch(f=>o(f)).then(()=>{}).finally(()=>{i===u&&(i=null)});return i=u,u},c=n.setInterval(()=>{l()},t),d=()=>{a.visibilityState==="visible"&&l()};return n.addEventListener("focus",d),a.addEventListener("visibilitychange",d),{run:l,stop(){s=!0,n.clearInterval(c),n.removeEventListener("focus",d),a.removeEventListener("visibilitychange",d)}}}function Xd(e){if(!e)return null;const t=/^(\d{4})-(\d{2})-(\d{2})$/.exec(e);if(!t)return null;const n=new Date(Date.UTC(Number(t[1]),Number(t[2])-1,Number(t[3])));return Bt(n)===e?n:null}function Qd({period:e,selectedFrom:t,selectedTo:n,todayKey:a}={}){if(e==="total"&&t&&n)return{from:t,to:n};const o=Xd(a)||new Date,s=new Date(Date.UTC(o.getUTCFullYear(),o.getUTCMonth(),o.getUTCDate()-29));return{from:Bt(s),to:Bt(o)}}function Jd(e,{period:t}={}){const n=(Array.isArray(e)?e:[]).filter(o=>!o?.future&&o?.day);return(t==="total"?n.filter(o=>!o?.missing):n).slice(-30)}function Ss(e){if(typeof e!="string")return null;const t=e.trim();return t?t.toLowerCase():null}function Zd(e){const t=Ss(e?.model_id);return t||null}function Ms(e,t){return e?.model?String(e.model):t}function sn(e,t=0){const n=_e(e?.billable_total_tokens),a=_e(e?.total_tokens);return n!=null&&n>0?n:a!=null&&a>0?a:n??a??t}function eu(e,{copyFn:t}={}){const n=typeof t=="function"?t:i=>i,o=(Array.isArray(e?.sources)?e.sources:[]).map(i=>{const l=sn(i?.totals),c=_e(i?.totals?.total_cost_usd)??0;return{source:i?.source,totalTokens:Number.isFinite(l)?l:0,totalCost:Number.isFinite(c)?c:0,inputTokens:Math.max(0,_e(i?.totals?.input_tokens)??0),cacheRead:Math.max(0,_e(i?.totals?.cached_input_tokens)??0),cacheCreate:Math.max(0,_e(i?.totals?.cache_creation_input_tokens)??0),models:Array.isArray(i?.models)?i.models:[]}}).filter(i=>i.totalTokens>0);if(!o.length)return[];const s=o.reduce((i,l)=>i+l.totalTokens,0);return typeof e?.pricing?.pricing_mode=="string"&&e.pricing.pricing_mode.toUpperCase(),o.slice().sort((i,l)=>l.totalTokens-i.totalTokens).map(i=>{const l=i.source?String(i.source).toUpperCase():n("shared.placeholder.short"),c=s>0?i.totalTokens/s*100:0,d=Number.isFinite(c)?c.toFixed(2):"0.00",u=i.models.map(p=>{const b=sn(p?.totals);if(!Number.isFinite(b)||b<=0)return null;const x=i.totalTokens>0?Math.round(b/i.totalTokens*1e3)/10:0,w=Ms(p,n("shared.placeholder.short")),k=Zd(p),N=_e(p?.totals?.total_cost_usd),S=N??(i.totalCost>0&&i.totalTokens>0?b/i.totalTokens*i.totalCost:null);return{id:k,name:w,share:x,usage:b,cost:S}}).filter(Boolean),f=i.inputTokens+i.cacheRead+i.cacheCreate,y=i.cacheRead+i.cacheCreate>0&&f>0?Math.round(i.cacheRead/f*100):null;return{source:i.source,label:l,totalPercent:String(d),totalPercentValue:c,usd:i.totalCost,usage:i.totalTokens,cacheHitRate:y,cacheReusedTokens:i.cacheRead,cacheInputTokens:f,models:u}})}function tu(e,{limit:t=3,copyFn:n}={}){const a=typeof n=="function"?n:m=>m,o=Array.isArray(e?.sources)?e.sources:[];if(!o.length)return[];const s=new Map,i=new Map,l=new Map;let c=0;for(const m of o){const y=Array.isArray(m?.models)?m.models:[];for(const p of y){const b=sn(p?.totals);if(!Number.isFinite(b)||b<=0)continue;c+=b;const x=Ms(p,a("shared.placeholder.short")),w=Ss(x);if(!w)continue;s.set(w,(s.get(w)||0)+b);const k=l.get(w)||0;b>=k&&(l.set(w,b),i.set(w,x))}}if(!s.size)return[];const d=Array.from(s.values()).reduce((m,y)=>m+y,0),u=c>0?c:d,f=Number.isFinite(t)?Math.max(0,Math.floor(t)):3;return Array.from(s.entries()).map(([m,y])=>{const p=u>0?(y/u*100).toFixed(1):"0.0";return{id:m,name:i.get(m)||a("shared.placeholder.short"),tokens:y,percent:String(p)}}).sort((m,y)=>y.tokens!==m.tokens?y.tokens-m.tokens:String(m.name).localeCompare(String(y.name))).slice(0,f)}function nu(e,t,n){if(!Number.isFinite(e))return g("shared.placeholder.short");const a=cn(e,{decimals:2,currency:t,rate:n});return a==="-"?g("shared.placeholder.short"):a}function fo(e,t,n){if(!Number.isFinite(e)||e<=0)return null;const a=fa(t);return(t===ds?e:e*n)<.01?`<${a}0.01`:cn(e,{decimals:2,currency:t,rate:n})}function mo(e){const t=Number(e);return!Number.isFinite(t)||t<=0?null:pt(t,{decimals:1})}const au=W.memo(function({isOpen:t,onClose:n,fleetData:a=[]}){const{currency:o,rate:s}=un(),i=h.useMemo(()=>(Array.isArray(a)?a:[]).map(c=>{const d=_e(c?.usd)??0,u=_e(c?.usage)??0,f=Array.isArray(c?.models)?c.models:[];return{label:c?.label?String(c.label):"",usdValue:d,costLabel:fo(d,o,s),tokensLabel:mo(u),models:f.map(m=>{const y=_e(m?.usage)??0,p=_e(m?.cost)??0;return{id:m?.id?String(m.id):"",name:m?.name?String(m.name):"",tokensLabel:mo(y),costLabel:fo(p,o,s),sortCost:p}}).filter(m=>m.costLabel||m.tokensLabel).sort((m,y)=>y.sortCost-m.sortCost)}}).filter(c=>c.usdValue>0||c.models.length>0).sort((c,d)=>d.usdValue-c.usdValue),[a,o,s]),l=h.useMemo(()=>{const c=i.reduce((d,u)=>d+u.usdValue,0);return nu(c,o,s)},[i,o,s]);return r.jsx(Oc,{open:t,onOpenChange:c=>{c||n?.()},children:r.jsxs(Ec,{children:[r.jsx(Ac,{className:"cost-modal-backdrop","data-cost-analysis-backdrop":"true"}),r.jsx(Wc,{className:"fixed inset-0 z-[101] flex items-center justify-center p-4",children:r.jsxs($c,{className:"cost-modal-popup relative w-full max-w-[460px] max-h-[calc(100vh-2rem)] flex flex-col rounded-2xl bg-white dark:bg-oai-gray-950 shadow-[0_20px_60px_-20px_rgba(0,0,0,0.25)] dark:shadow-[0_20px_60px_-10px_rgba(0,0,0,0.65)] ring-1 ring-oai-gray-200 dark:ring-oai-gray-800 overflow-hidden",children:[r.jsx(Fc,{render:r.jsx("h2",{className:"sr-only"}),children:g("dashboard.cost_breakdown.title")}),r.jsx(Ic,{type:"button",className:"absolute top-3 right-3 flex h-9 w-9 items-center justify-center rounded-md text-oai-gray-500 dark:text-oai-gray-400 hover:text-oai-gray-800 dark:hover:text-oai-gray-100 hover:bg-oai-gray-100 dark:hover:bg-oai-gray-800 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-oai-brand/50 transition-colors z-10","aria-label":g("dashboard.cost_breakdown.close"),children:r.jsx(ua,{size:16,strokeWidth:2,"aria-hidden":!0})}),r.jsx("div",{className:"flex-1 min-h-0 overflow-y-auto oai-scrollbar",children:r.jsxs("div",{className:"px-3 py-6",children:[r.jsx("p",{className:"text-label uppercase tracking-[0.12em] text-oai-gray-500 dark:text-oai-gray-400 mb-2",children:g("dashboard.cost_breakdown.total_label")}),r.jsx("p",{className:"font-bold text-oai-brand tabular-nums tracking-tight leading-none mb-6",style:{fontSize:"clamp(24px, 6.5vw, 32px)"},children:l}),i.length===0?r.jsx("p",{className:"text-body-sm text-oai-gray-500 dark:text-oai-gray-400",children:"No spend recorded."}):r.jsxs("div",{role:"table","aria-label":g("dashboard.cost_breakdown.title"),children:[r.jsxs("div",{role:"row",className:"flex items-center justify-between gap-4 py-2 mb-2 border-b border-oai-gray-200 dark:border-oai-gray-800 text-label uppercase text-oai-gray-500 dark:text-oai-gray-400",children:[r.jsx("span",{role:"columnheader",children:"Model"}),r.jsx("span",{role:"columnheader",children:"Cost"})]}),i.map((c,d)=>{const u=`fleet-${d}`;return r.jsxs("div",{role:"rowgroup","aria-labelledby":u,className:d>0?"mt-5":"mt-2",children:[r.jsxs("div",{role:"row",className:"flex items-center justify-between gap-4 py-2",children:[r.jsx("span",{id:u,role:"rowheader",className:"flex-1 min-w-0 text-body-sm font-semibold text-oai-black dark:text-oai-white truncate leading-none",children:c.label}),r.jsx("span",{role:"cell",className:"shrink-0 text-body-sm font-semibold text-oai-black dark:text-oai-white tabular-nums leading-none",children:c.costLabel||"—"})]}),c.models.map((f,m)=>r.jsxs("div",{role:"row",className:"flex items-center justify-between gap-4 py-[5px]",children:[r.jsx("span",{role:"cell",className:"flex-1 min-w-0 text-caption text-oai-gray-500 dark:text-oai-gray-400 truncate leading-none",title:f.name,children:f.name}),r.jsx("span",{role:"cell",className:"shrink-0 text-caption text-oai-gray-700 dark:text-oai-gray-300 tabular-nums leading-none",children:f.costLabel||""})]},f.id||`${f.name}-${m}`))]},`${c.label}-${d}`)})]})]})})]})})]})})});function ru({projectKey:e,from:t,to:n,timeZone:a,tzOffsetMinutes:o}={}){const[s,i]=h.useState(null),[l,c]=h.useState(!1),[d,u]=h.useState(null),f=Dt();return h.useEffect(()=>{if(!e){i(null),u(null),c(!1);return}let m=!0;return c(!0),u(null),Zl({projectKey:e,from:t,to:n,timeZone:a,tzOffsetMinutes:o}).then(y=>{m&&i(y||null)}).catch(y=>{m&&(u(y?.message||String(y)),i(null))}).finally(()=>{m&&c(!1)}),()=>{m=!1}},[e,t,n,a,o,f]),{data:s,loading:l,error:d}}function ou(e){return e==="day"?"hourly":e==="total"?"monthly":"daily"}function su(e){return!!e&&!e.missing&&!e.future}function iu(e){const t=e?.billable_total_tokens??e?.total_tokens??e?.value,n=Number(t);return Number.isFinite(n)&&n>=0?n:0}function lu(e){const t=e?.total_tokens??e?.billable_total_tokens??e?.value,n=Number(t);return Number.isFinite(n)&&n>=0?n:0}function cu(e){const t=Array.isArray(e)?e.filter(su):[];let n=0,a=0,o=0,s=0,i=!1,l=0,c=-1,d=null;for(const u of t){const f=lu(u),m=iu(u);n+=f,a+=m;const y=Number(u?.conversation_count);Number.isFinite(y)&&y>0&&(o+=y);const p=Number(u?.total_cost_usd);Number.isFinite(p)&&(i=!0,s+=p),m>0&&(l+=1),m>c&&(c=m,d=u)}return{totalTokens:n,billableTokens:a,conversationCount:o,totalCostUsd:i?s:null,bucketCount:t.length,activeBuckets:l,peak:d&&c>0?{value:c,label:d.hour||d.day||d.month||""}:null}}function ho(e){return String(e).padStart(2,"0")}function du(e,t){if(!e)return"";if(t==="hourly"){const n=String(e.hour||e.label||""),a=/^(\d{4}-\d{2}-\d{2})T(\d{2}):(\d{2})/.exec(n);if(!a)return n;const[,o,s,i]=a,c=Number(s)*60+Number(i)+30,d=Math.floor(c/60)%24,u=c%60;return`${o} ${s}:${i}–${ho(d)}:${ho(u)}`}return String(t==="monthly"?e.month||e.label||"":e.day||e.label||"")}function uu(e){if(!e||e.activeBuckets===0)return"trend.zoom.insight.empty";const t=e.totalTokens||0;return t<1e7?"trend.zoom.insight.calm":t<5e8?"trend.zoom.insight.steady":t<5e9?"trend.zoom.insight.heavy":"trend.zoom.insight.massive"}function fu(e,t){if(!e)return"";if(t==="hourly"){const o=/T(\d{2}:\d{2})/.exec(String(e.hour||e.label||""));return o?o[1]:""}if(t==="monthly")return String(e.month||e.label||"");const n=String(e.day||e.label||""),a=/^\d{4}-(\d{2}-\d{2})$/.exec(n);return a?a[1]:n}function mu(e,t,n="long"){return new Intl.DateTimeFormat("en-US",{hour:"numeric",timeZone:e,timeZoneName:n}).format(t).split(/\s/g).slice(2).join(" ")}const hu={},jn={};function It(e,t){try{const a=(hu[e]||=new Intl.DateTimeFormat("en-US",{timeZone:e,timeZoneName:"longOffset"}).format)(t).split("GMT")[1];return a in jn?jn[a]:go(a,a.split(":"))}catch{if(e in jn)return jn[e];const n=e?.match(gu);return n?go(e,n.slice(1)):NaN}}const gu=/([+-]\d\d):?(\d\d)?/;function go(e,t){const n=+(t[0]||0),a=+(t[1]||0),o=+(t[2]||0)/60;return jn[e]=n*60+a>0?n*60+a+o:n*60-a-o}class ut extends Date{constructor(...t){super(),t.length>1&&typeof t[t.length-1]=="string"&&(this.timeZone=t.pop()),this.internal=new Date,isNaN(It(this.timeZone,this))?this.setTime(NaN):t.length?typeof t[0]=="number"&&(t.length===1||t.length===2&&typeof t[1]!="number")?this.setTime(t[0]):typeof t[0]=="string"?this.setTime(+new Date(t[0])):t[0]instanceof Date?this.setTime(+t[0]):(this.setTime(+new Date(...t)),Cs(this),ur(this)):this.setTime(Date.now())}static tz(t,...n){return n.length?new ut(...n,t):new ut(Date.now(),t)}withTimeZone(t){return new ut(+this,t)}getTimezoneOffset(){const t=-It(this.timeZone,this);return t>0?Math.floor(t):Math.ceil(t)}setTime(t){return Date.prototype.setTime.apply(this,arguments),ur(this),+this}[Symbol.for("constructDateFrom")](t){return new ut(+new Date(t),this.timeZone)}}const yo=/^(get|set)(?!UTC)/;Object.getOwnPropertyNames(Date.prototype).forEach(e=>{if(!yo.test(e))return;const t=e.replace(yo,"$1UTC");ut.prototype[t]&&(e.startsWith("get")?ut.prototype[e]=function(){return this.internal[t]()}:(ut.prototype[e]=function(){return Date.prototype[t].apply(this.internal,arguments),yu(this),+this},ut.prototype[t]=function(){return Date.prototype[t].apply(this,arguments),ur(this),+this}))});function ur(e){e.internal.setTime(+e),e.internal.setUTCSeconds(e.internal.getUTCSeconds()-Math.round(-It(e.timeZone,e)*60))}function yu(e){Date.prototype.setFullYear.call(e,e.internal.getUTCFullYear(),e.internal.getUTCMonth(),e.internal.getUTCDate()),Date.prototype.setHours.call(e,e.internal.getUTCHours(),e.internal.getUTCMinutes(),e.internal.getUTCSeconds(),e.internal.getUTCMilliseconds()),Cs(e)}function Cs(e){const t=It(e.timeZone,e),n=t>0?Math.floor(t):Math.ceil(t),a=new Date(+e);a.setUTCHours(a.getUTCHours()-1);const o=-new Date(+e).getTimezoneOffset(),s=-new Date(+a).getTimezoneOffset(),i=o-s,l=Date.prototype.getHours.apply(e)!==e.internal.getUTCHours();i&&l&&e.internal.setUTCMinutes(e.internal.getUTCMinutes()+i);const c=o-n;c&&Date.prototype.setUTCMinutes.call(e,Date.prototype.getUTCMinutes.call(e)+c);const d=new Date(+e);d.setUTCSeconds(0);const u=o>0?d.getSeconds():(d.getSeconds()-60)%60,f=Math.round(-(It(e.timeZone,e)*60))%60;(f||u)&&(e.internal.setUTCSeconds(e.internal.getUTCSeconds()+f),Date.prototype.setUTCSeconds.call(e,Date.prototype.getUTCSeconds.call(e)+f+u));const m=It(e.timeZone,e),y=m>0?Math.floor(m):Math.ceil(m),b=-new Date(+e).getTimezoneOffset()-y,x=y!==n,w=b-c;if(x&&w){Date.prototype.setUTCMinutes.call(e,Date.prototype.getUTCMinutes.call(e)+w);const k=It(e.timeZone,e),N=k>0?Math.floor(k):Math.ceil(k),S=y-N;S&&(e.internal.setUTCMinutes(e.internal.getUTCMinutes()+S),Date.prototype.setUTCMinutes.call(e,Date.prototype.getUTCMinutes.call(e)+S))}}class Ie extends ut{static tz(t,...n){return n.length?new Ie(...n,t):new Ie(Date.now(),t)}toISOString(){const[t,n,a]=this.tzComponents(),o=`${t}${n}:${a}`;return this.internal.toISOString().slice(0,-1)+o}toString(){return`${this.toDateString()} ${this.toTimeString()}`}toDateString(){const[t,n,a,o]=this.internal.toUTCString().split(" ");return`${t?.slice(0,-1)} ${a} ${n} ${o}`}toTimeString(){const t=this.internal.toUTCString().split(" ")[4],[n,a,o]=this.tzComponents();return`${t} GMT${n}${a}${o} (${mu(this.timeZone,this)})`}toLocaleString(t,n){return Date.prototype.toLocaleString.call(this,t,{...n,timeZone:n?.timeZone||this.timeZone})}toLocaleDateString(t,n){return Date.prototype.toLocaleDateString.call(this,t,{...n,timeZone:n?.timeZone||this.timeZone})}toLocaleTimeString(t,n){return Date.prototype.toLocaleTimeString.call(this,t,{...n,timeZone:n?.timeZone||this.timeZone})}tzComponents(){const t=this.getTimezoneOffset(),n=t>0?"-":"+",a=String(Math.floor(Math.abs(t)/60)).padStart(2,"0"),o=String(Math.abs(t)%60).padStart(2,"0");return[n,a,o]}withTimeZone(t){return new Ie(+this,t)}[Symbol.for("constructDateFrom")](t){return new Ie(+new Date(t),this.timeZone)}}const Ds=6048e5,pu=864e5,po=Symbol.for("constructDateFrom");function Oe(e,t){return typeof e=="function"?e(t):e&&typeof e=="object"&&po in e?e[po](t):e instanceof Date?new e.constructor(t):new Date(t)}function pe(e,t){return Oe(t||e,e)}function Ts(e,t,n){const a=pe(e,n?.in);return isNaN(t)?Oe(e,NaN):(t&&a.setDate(a.getDate()+t),a)}function Ps(e,t,n){const a=pe(e,n?.in);if(isNaN(t))return Oe(e,NaN);if(!t)return a;const o=a.getDate(),s=Oe(e,a.getTime());s.setMonth(a.getMonth()+t+1,0);const i=s.getDate();return o>=i?s:(a.setFullYear(s.getFullYear(),s.getMonth(),o),a)}let xu={};function Tn(){return xu}function Ct(e,t){const n=Tn(),a=t?.weekStartsOn??t?.locale?.options?.weekStartsOn??n.weekStartsOn??n.locale?.options?.weekStartsOn??0,o=pe(e,t?.in),s=o.getDay(),i=(s<a?7:0)+s-a;return o.setDate(o.getDate()-i),o.setHours(0,0,0,0),o}function Sn(e,t){return Ct(e,{...t,weekStartsOn:1})}function Os(e,t){const n=pe(e,t?.in),a=n.getFullYear(),o=Oe(n,0);o.setFullYear(a+1,0,4),o.setHours(0,0,0,0);const s=Sn(o),i=Oe(n,0);i.setFullYear(a,0,4),i.setHours(0,0,0,0);const l=Sn(i);return n.getTime()>=s.getTime()?a+1:n.getTime()>=l.getTime()?a:a-1}function xo(e){const t=pe(e),n=new Date(Date.UTC(t.getFullYear(),t.getMonth(),t.getDate(),t.getHours(),t.getMinutes(),t.getSeconds(),t.getMilliseconds()));return n.setUTCFullYear(t.getFullYear()),+e-+n}function zt(e,...t){const n=Oe.bind(null,e||t.find(a=>typeof a=="object"));return t.map(n)}function Mn(e,t){const n=pe(e,t?.in);return n.setHours(0,0,0,0),n}function _r(e,t,n){const[a,o]=zt(n?.in,e,t),s=Mn(a),i=Mn(o),l=+s-xo(s),c=+i-xo(i);return Math.round((l-c)/pu)}function bu(e,t){const n=Os(e,t),a=Oe(e,0);return a.setFullYear(n,0,4),a.setHours(0,0,0,0),Sn(a)}function ku(e,t,n){return Ts(e,t*7,n)}function wu(e,t,n){return Ps(e,t*12,n)}function vu(e,t){let n,a=t?.in;return e.forEach(o=>{!a&&typeof o=="object"&&(a=Oe.bind(null,o));const s=pe(o,a);(!n||n<s||isNaN(+s))&&(n=s)}),Oe(a,n||NaN)}function _u(e,t){let n,a=t?.in;return e.forEach(o=>{!a&&typeof o=="object"&&(a=Oe.bind(null,o));const s=pe(o,a);(!n||n>s||isNaN(+s))&&(n=s)}),Oe(a,n||NaN)}function Nu(e,t,n){const[a,o]=zt(n?.in,e,t);return+Mn(a)==+Mn(o)}function Es(e){return e instanceof Date||typeof e=="object"&&Object.prototype.toString.call(e)==="[object Date]"}function ju(e){return!(!Es(e)&&typeof e!="number"||isNaN(+pe(e)))}function As(e,t,n){const[a,o]=zt(n?.in,e,t),s=a.getFullYear()-o.getFullYear(),i=a.getMonth()-o.getMonth();return s*12+i}function Su(e,t){const n=pe(e,t?.in),a=n.getMonth();return n.setFullYear(n.getFullYear(),a+1,0),n.setHours(23,59,59,999),n}function Ws(e,t){const[n,a]=zt(e,t.start,t.end);return{start:n,end:a}}function Mu(e,t){const{start:n,end:a}=Ws(t?.in,e);let o=+n>+a;const s=o?+n:+a,i=o?a:n;i.setHours(0,0,0,0),i.setDate(1);let l=1;const c=[];for(;+i<=s;)c.push(Oe(n,i)),i.setMonth(i.getMonth()+l);return o?c.reverse():c}function Cu(e,t){const n=pe(e,t?.in);return n.setDate(1),n.setHours(0,0,0,0),n}function Du(e,t){const n=pe(e,t?.in),a=n.getFullYear();return n.setFullYear(a+1,0,0),n.setHours(23,59,59,999),n}function $s(e,t){const n=pe(e,t?.in);return n.setFullYear(n.getFullYear(),0,1),n.setHours(0,0,0,0),n}function Tu(e,t){const{start:n,end:a}=Ws(t?.in,e);let o=+n>+a;const s=o?+n:+a,i=o?a:n;i.setHours(0,0,0,0),i.setMonth(0,1);let l=1;const c=[];for(;+i<=s;)c.push(Oe(n,i)),i.setFullYear(i.getFullYear()+l);return o?c.reverse():c}function Fs(e,t){const n=Tn(),a=t?.weekStartsOn??t?.locale?.options?.weekStartsOn??n.weekStartsOn??n.locale?.options?.weekStartsOn??0,o=pe(e,t?.in),s=o.getDay(),i=(s<a?-7:0)+6-(s-a);return o.setDate(o.getDate()+i),o.setHours(23,59,59,999),o}function Pu(e,t){return Fs(e,{...t,weekStartsOn:1})}const Ou={lessThanXSeconds:{one:"less than a second",other:"less than {{count}} seconds"},xSeconds:{one:"1 second",other:"{{count}} seconds"},halfAMinute:"half a minute",lessThanXMinutes:{one:"less than a minute",other:"less than {{count}} minutes"},xMinutes:{one:"1 minute",other:"{{count}} minutes"},aboutXHours:{one:"about 1 hour",other:"about {{count}} hours"},xHours:{one:"1 hour",other:"{{count}} hours"},xDays:{one:"1 day",other:"{{count}} days"},aboutXWeeks:{one:"about 1 week",other:"about {{count}} weeks"},xWeeks:{one:"1 week",other:"{{count}} weeks"},aboutXMonths:{one:"about 1 month",other:"about {{count}} months"},xMonths:{one:"1 month",other:"{{count}} months"},aboutXYears:{one:"about 1 year",other:"about {{count}} years"},xYears:{one:"1 year",other:"{{count}} years"},overXYears:{one:"over 1 year",other:"over {{count}} years"},almostXYears:{one:"almost 1 year",other:"almost {{count}} years"}},Eu=(e,t,n)=>{let a;const o=Ou[e];return typeof o=="string"?a=o:t===1?a=o.one:a=o.other.replace("{{count}}",t.toString()),n?.addSuffix?n.comparison&&n.comparison>0?"in "+a:a+" ago":a};function Be(e){return(t={})=>{const n=t.width?String(t.width):e.defaultWidth;return e.formats[n]||e.formats[e.defaultWidth]}}const Au={full:"EEEE, MMMM do, y",long:"MMMM do, y",medium:"MMM d, y",short:"MM/dd/yyyy"},Wu={full:"h:mm:ss a zzzz",long:"h:mm:ss a z",medium:"h:mm:ss a",short:"h:mm a"},$u={full:"{{date}} 'at' {{time}}",long:"{{date}} 'at' {{time}}",medium:"{{date}}, {{time}}",short:"{{date}}, {{time}}"},Fu={date:Be({formats:Au,defaultWidth:"full"}),time:Be({formats:Wu,defaultWidth:"full"}),dateTime:Be({formats:$u,defaultWidth:"full"})},Iu={lastWeek:"'last' eeee 'at' p",yesterday:"'yesterday at' p",today:"'today at' p",tomorrow:"'tomorrow at' p",nextWeek:"eeee 'at' p",other:"P"},Lu=(e,t,n,a)=>Iu[e];function Ne(e){return(t,n)=>{const a=n?.context?String(n.context):"standalone";let o;if(a==="formatting"&&e.formattingValues){const i=e.defaultFormattingWidth||e.defaultWidth,l=n?.width?String(n.width):i;o=e.formattingValues[l]||e.formattingValues[i]}else{const i=e.defaultWidth,l=n?.width?String(n.width):e.defaultWidth;o=e.values[l]||e.values[i]}const s=e.argumentCallback?e.argumentCallback(t):t;return o[s]}}const Ru={narrow:["B","A"],abbreviated:["BC","AD"],wide:["Before Christ","Anno Domini"]},Bu={narrow:["1","2","3","4"],abbreviated:["Q1","Q2","Q3","Q4"],wide:["1st quarter","2nd quarter","3rd quarter","4th quarter"]},zu={narrow:["J","F","M","A","M","J","J","A","S","O","N","D"],abbreviated:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],wide:["January","February","March","April","May","June","July","August","September","October","November","December"]},Yu={narrow:["S","M","T","W","T","F","S"],short:["Su","Mo","Tu","We","Th","Fr","Sa"],abbreviated:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],wide:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"]},Hu={narrow:{am:"a",pm:"p",midnight:"mi",noon:"n",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},abbreviated:{am:"AM",pm:"PM",midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},wide:{am:"a.m.",pm:"p.m.",midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"}},Uu={narrow:{am:"a",pm:"p",midnight:"mi",noon:"n",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"},abbreviated:{am:"AM",pm:"PM",midnight:"midnight",noon:"noon",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"},wide:{am:"a.m.",pm:"p.m.",midnight:"midnight",noon:"noon",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"}},Vu=(e,t)=>{const n=Number(e),a=n%100;if(a>20||a<10)switch(a%10){case 1:return n+"st";case 2:return n+"nd";case 3:return n+"rd"}return n+"th"},qu={ordinalNumber:Vu,era:Ne({values:Ru,defaultWidth:"wide"}),quarter:Ne({values:Bu,defaultWidth:"wide",argumentCallback:e=>e-1}),month:Ne({values:zu,defaultWidth:"wide"}),day:Ne({values:Yu,defaultWidth:"wide"}),dayPeriod:Ne({values:Hu,defaultWidth:"wide",formattingValues:Uu,defaultFormattingWidth:"wide"})};function je(e){return(t,n={})=>{const a=n.width,o=a&&e.matchPatterns[a]||e.matchPatterns[e.defaultMatchWidth],s=t.match(o);if(!s)return null;const i=s[0],l=a&&e.parsePatterns[a]||e.parsePatterns[e.defaultParseWidth],c=Array.isArray(l)?Ku(l,f=>f.test(i)):Gu(l,f=>f.test(i));let d;d=e.valueCallback?e.valueCallback(c):c,d=n.valueCallback?n.valueCallback(d):d;const u=t.slice(i.length);return{value:d,rest:u}}}function Gu(e,t){for(const n in e)if(Object.prototype.hasOwnProperty.call(e,n)&&t(e[n]))return n}function Ku(e,t){for(let n=0;n<e.length;n++)if(t(e[n]))return n}function Pn(e){return(t,n={})=>{const a=t.match(e.matchPattern);if(!a)return null;const o=a[0],s=t.match(e.parsePattern);if(!s)return null;let i=e.valueCallback?e.valueCallback(s[0]):s[0];i=n.valueCallback?n.valueCallback(i):i;const l=t.slice(o.length);return{value:i,rest:l}}}const Xu=/^(\d+)(th|st|nd|rd)?/i,Qu=/\d+/i,Ju={narrow:/^(b|a)/i,abbreviated:/^(b\.?\s?c\.?|b\.?\s?c\.?\s?e\.?|a\.?\s?d\.?|c\.?\s?e\.?)/i,wide:/^(before christ|before common era|anno domini|common era)/i},Zu={any:[/^b/i,/^(a|c)/i]},ef={narrow:/^[1234]/i,abbreviated:/^q[1234]/i,wide:/^[1234](th|st|nd|rd)? quarter/i},tf={any:[/1/i,/2/i,/3/i,/4/i]},nf={narrow:/^[jfmasond]/i,abbreviated:/^(jan|feb|mar|apr|may|jun|jul|aug|sep|oct|nov|dec)/i,wide:/^(january|february|march|april|may|june|july|august|september|october|november|december)/i},af={narrow:[/^j/i,/^f/i,/^m/i,/^a/i,/^m/i,/^j/i,/^j/i,/^a/i,/^s/i,/^o/i,/^n/i,/^d/i],any:[/^ja/i,/^f/i,/^mar/i,/^ap/i,/^may/i,/^jun/i,/^jul/i,/^au/i,/^s/i,/^o/i,/^n/i,/^d/i]},rf={narrow:/^[smtwf]/i,short:/^(su|mo|tu|we|th|fr|sa)/i,abbreviated:/^(sun|mon|tue|wed|thu|fri|sat)/i,wide:/^(sunday|monday|tuesday|wednesday|thursday|friday|saturday)/i},of={narrow:[/^s/i,/^m/i,/^t/i,/^w/i,/^t/i,/^f/i,/^s/i],any:[/^su/i,/^m/i,/^tu/i,/^w/i,/^th/i,/^f/i,/^sa/i]},sf={narrow:/^(a|p|mi|n|(in the|at) (morning|afternoon|evening|night))/i,any:/^([ap]\.?\s?m\.?|midnight|noon|(in the|at) (morning|afternoon|evening|night))/i},lf={any:{am:/^a/i,pm:/^p/i,midnight:/^mi/i,noon:/^no/i,morning:/morning/i,afternoon:/afternoon/i,evening:/evening/i,night:/night/i}},cf={ordinalNumber:Pn({matchPattern:Xu,parsePattern:Qu,valueCallback:e=>parseInt(e,10)}),era:je({matchPatterns:Ju,defaultMatchWidth:"wide",parsePatterns:Zu,defaultParseWidth:"any"}),quarter:je({matchPatterns:ef,defaultMatchWidth:"wide",parsePatterns:tf,defaultParseWidth:"any",valueCallback:e=>e+1}),month:je({matchPatterns:nf,defaultMatchWidth:"wide",parsePatterns:af,defaultParseWidth:"any"}),day:je({matchPatterns:rf,defaultMatchWidth:"wide",parsePatterns:of,defaultParseWidth:"any"}),dayPeriod:je({matchPatterns:sf,defaultMatchWidth:"any",parsePatterns:lf,defaultParseWidth:"any"})},Mt={code:"en-US",formatDistance:Eu,formatLong:Fu,formatRelative:Lu,localize:qu,match:cf,options:{weekStartsOn:0,firstWeekContainsDate:1}};function df(e,t){const n=pe(e,t?.in);return _r(n,$s(n))+1}function Nr(e,t){const n=pe(e,t?.in),a=+Sn(n)-+bu(n);return Math.round(a/Ds)+1}function Is(e,t){const n=pe(e,t?.in),a=n.getFullYear(),o=Tn(),s=t?.firstWeekContainsDate??t?.locale?.options?.firstWeekContainsDate??o.firstWeekContainsDate??o.locale?.options?.firstWeekContainsDate??1,i=Oe(t?.in||e,0);i.setFullYear(a+1,0,s),i.setHours(0,0,0,0);const l=Ct(i,t),c=Oe(t?.in||e,0);c.setFullYear(a,0,s),c.setHours(0,0,0,0);const d=Ct(c,t);return+n>=+l?a+1:+n>=+d?a:a-1}function uf(e,t){const n=Tn(),a=t?.firstWeekContainsDate??t?.locale?.options?.firstWeekContainsDate??n.firstWeekContainsDate??n.locale?.options?.firstWeekContainsDate??1,o=Is(e,t),s=Oe(t?.in||e,0);return s.setFullYear(o,0,a),s.setHours(0,0,0,0),Ct(s,t)}function jr(e,t){const n=pe(e,t?.in),a=+Ct(n,t)-+uf(n,t);return Math.round(a/Ds)+1}function ge(e,t){const n=e<0?"-":"",a=Math.abs(e).toString().padStart(t,"0");return n+a}const Nt={y(e,t){const n=e.getFullYear(),a=n>0?n:1-n;return ge(t==="yy"?a%100:a,t.length)},M(e,t){const n=e.getMonth();return t==="M"?String(n+1):ge(n+1,2)},d(e,t){return ge(e.getDate(),t.length)},a(e,t){const n=e.getHours()/12>=1?"pm":"am";switch(t){case"a":case"aa":return n.toUpperCase();case"aaa":return n;case"aaaaa":return n[0];default:return n==="am"?"a.m.":"p.m."}},h(e,t){return ge(e.getHours()%12||12,t.length)},H(e,t){return ge(e.getHours(),t.length)},m(e,t){return ge(e.getMinutes(),t.length)},s(e,t){return ge(e.getSeconds(),t.length)},S(e,t){const n=t.length,a=e.getMilliseconds(),o=Math.trunc(a*Math.pow(10,n-3));return ge(o,t.length)}},tn={midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},bo={G:function(e,t,n){const a=e.getFullYear()>0?1:0;switch(t){case"G":case"GG":case"GGG":return n.era(a,{width:"abbreviated"});case"GGGGG":return n.era(a,{width:"narrow"});default:return n.era(a,{width:"wide"})}},y:function(e,t,n){if(t==="yo"){const a=e.getFullYear(),o=a>0?a:1-a;return n.ordinalNumber(o,{unit:"year"})}return Nt.y(e,t)},Y:function(e,t,n,a){const o=Is(e,a),s=o>0?o:1-o;if(t==="YY"){const i=s%100;return ge(i,2)}return t==="Yo"?n.ordinalNumber(s,{unit:"year"}):ge(s,t.length)},R:function(e,t){const n=Os(e);return ge(n,t.length)},u:function(e,t){const n=e.getFullYear();return ge(n,t.length)},Q:function(e,t,n){const a=Math.ceil((e.getMonth()+1)/3);switch(t){case"Q":return String(a);case"QQ":return ge(a,2);case"Qo":return n.ordinalNumber(a,{unit:"quarter"});case"QQQ":return n.quarter(a,{width:"abbreviated",context:"formatting"});case"QQQQQ":return n.quarter(a,{width:"narrow",context:"formatting"});default:return n.quarter(a,{width:"wide",context:"formatting"})}},q:function(e,t,n){const a=Math.ceil((e.getMonth()+1)/3);switch(t){case"q":return String(a);case"qq":return ge(a,2);case"qo":return n.ordinalNumber(a,{unit:"quarter"});case"qqq":return n.quarter(a,{width:"abbreviated",context:"standalone"});case"qqqqq":return n.quarter(a,{width:"narrow",context:"standalone"});default:return n.quarter(a,{width:"wide",context:"standalone"})}},M:function(e,t,n){const a=e.getMonth();switch(t){case"M":case"MM":return Nt.M(e,t);case"Mo":return n.ordinalNumber(a+1,{unit:"month"});case"MMM":return n.month(a,{width:"abbreviated",context:"formatting"});case"MMMMM":return n.month(a,{width:"narrow",context:"formatting"});default:return n.month(a,{width:"wide",context:"formatting"})}},L:function(e,t,n){const a=e.getMonth();switch(t){case"L":return String(a+1);case"LL":return ge(a+1,2);case"Lo":return n.ordinalNumber(a+1,{unit:"month"});case"LLL":return n.month(a,{width:"abbreviated",context:"standalone"});case"LLLLL":return n.month(a,{width:"narrow",context:"standalone"});default:return n.month(a,{width:"wide",context:"standalone"})}},w:function(e,t,n,a){const o=jr(e,a);return t==="wo"?n.ordinalNumber(o,{unit:"week"}):ge(o,t.length)},I:function(e,t,n){const a=Nr(e);return t==="Io"?n.ordinalNumber(a,{unit:"week"}):ge(a,t.length)},d:function(e,t,n){return t==="do"?n.ordinalNumber(e.getDate(),{unit:"date"}):Nt.d(e,t)},D:function(e,t,n){const a=df(e);return t==="Do"?n.ordinalNumber(a,{unit:"dayOfYear"}):ge(a,t.length)},E:function(e,t,n){const a=e.getDay();switch(t){case"E":case"EE":case"EEE":return n.day(a,{width:"abbreviated",context:"formatting"});case"EEEEE":return n.day(a,{width:"narrow",context:"formatting"});case"EEEEEE":return n.day(a,{width:"short",context:"formatting"});default:return n.day(a,{width:"wide",context:"formatting"})}},e:function(e,t,n,a){const o=e.getDay(),s=(o-a.weekStartsOn+8)%7||7;switch(t){case"e":return String(s);case"ee":return ge(s,2);case"eo":return n.ordinalNumber(s,{unit:"day"});case"eee":return n.day(o,{width:"abbreviated",context:"formatting"});case"eeeee":return n.day(o,{width:"narrow",context:"formatting"});case"eeeeee":return n.day(o,{width:"short",context:"formatting"});default:return n.day(o,{width:"wide",context:"formatting"})}},c:function(e,t,n,a){const o=e.getDay(),s=(o-a.weekStartsOn+8)%7||7;switch(t){case"c":return String(s);case"cc":return ge(s,t.length);case"co":return n.ordinalNumber(s,{unit:"day"});case"ccc":return n.day(o,{width:"abbreviated",context:"standalone"});case"ccccc":return n.day(o,{width:"narrow",context:"standalone"});case"cccccc":return n.day(o,{width:"short",context:"standalone"});default:return n.day(o,{width:"wide",context:"standalone"})}},i:function(e,t,n){const a=e.getDay(),o=a===0?7:a;switch(t){case"i":return String(o);case"ii":return ge(o,t.length);case"io":return n.ordinalNumber(o,{unit:"day"});case"iii":return n.day(a,{width:"abbreviated",context:"formatting"});case"iiiii":return n.day(a,{width:"narrow",context:"formatting"});case"iiiiii":return n.day(a,{width:"short",context:"formatting"});default:return n.day(a,{width:"wide",context:"formatting"})}},a:function(e,t,n){const o=e.getHours()/12>=1?"pm":"am";switch(t){case"a":case"aa":return n.dayPeriod(o,{width:"abbreviated",context:"formatting"});case"aaa":return n.dayPeriod(o,{width:"abbreviated",context:"formatting"}).toLowerCase();case"aaaaa":return n.dayPeriod(o,{width:"narrow",context:"formatting"});default:return n.dayPeriod(o,{width:"wide",context:"formatting"})}},b:function(e,t,n){const a=e.getHours();let o;switch(a===12?o=tn.noon:a===0?o=tn.midnight:o=a/12>=1?"pm":"am",t){case"b":case"bb":return n.dayPeriod(o,{width:"abbreviated",context:"formatting"});case"bbb":return n.dayPeriod(o,{width:"abbreviated",context:"formatting"}).toLowerCase();case"bbbbb":return n.dayPeriod(o,{width:"narrow",context:"formatting"});default:return n.dayPeriod(o,{width:"wide",context:"formatting"})}},B:function(e,t,n){const a=e.getHours();let o;switch(a>=17?o=tn.evening:a>=12?o=tn.afternoon:a>=4?o=tn.morning:o=tn.night,t){case"B":case"BB":case"BBB":return n.dayPeriod(o,{width:"abbreviated",context:"formatting"});case"BBBBB":return n.dayPeriod(o,{width:"narrow",context:"formatting"});default:return n.dayPeriod(o,{width:"wide",context:"formatting"})}},h:function(e,t,n){if(t==="ho"){let a=e.getHours()%12;return a===0&&(a=12),n.ordinalNumber(a,{unit:"hour"})}return Nt.h(e,t)},H:function(e,t,n){return t==="Ho"?n.ordinalNumber(e.getHours(),{unit:"hour"}):Nt.H(e,t)},K:function(e,t,n){const a=e.getHours()%12;return t==="Ko"?n.ordinalNumber(a,{unit:"hour"}):ge(a,t.length)},k:function(e,t,n){let a=e.getHours();return a===0&&(a=24),t==="ko"?n.ordinalNumber(a,{unit:"hour"}):ge(a,t.length)},m:function(e,t,n){return t==="mo"?n.ordinalNumber(e.getMinutes(),{unit:"minute"}):Nt.m(e,t)},s:function(e,t,n){return t==="so"?n.ordinalNumber(e.getSeconds(),{unit:"second"}):Nt.s(e,t)},S:function(e,t){return Nt.S(e,t)},X:function(e,t,n){const a=e.getTimezoneOffset();if(a===0)return"Z";switch(t){case"X":return wo(a);case"XXXX":case"XX":return $t(a);default:return $t(a,":")}},x:function(e,t,n){const a=e.getTimezoneOffset();switch(t){case"x":return wo(a);case"xxxx":case"xx":return $t(a);default:return $t(a,":")}},O:function(e,t,n){const a=e.getTimezoneOffset();switch(t){case"O":case"OO":case"OOO":return"GMT"+ko(a,":");default:return"GMT"+$t(a,":")}},z:function(e,t,n){const a=e.getTimezoneOffset();switch(t){case"z":case"zz":case"zzz":return"GMT"+ko(a,":");default:return"GMT"+$t(a,":")}},t:function(e,t,n){const a=Math.trunc(+e/1e3);return ge(a,t.length)},T:function(e,t,n){return ge(+e,t.length)}};function ko(e,t=""){const n=e>0?"-":"+",a=Math.abs(e),o=Math.trunc(a/60),s=a%60;return s===0?n+String(o):n+String(o)+t+ge(s,2)}function wo(e,t){return e%60===0?(e>0?"-":"+")+ge(Math.abs(e)/60,2):$t(e,t)}function $t(e,t=""){const n=e>0?"-":"+",a=Math.abs(e),o=ge(Math.trunc(a/60),2),s=ge(a%60,2);return n+o+t+s}const vo=(e,t)=>{switch(e){case"P":return t.date({width:"short"});case"PP":return t.date({width:"medium"});case"PPP":return t.date({width:"long"});default:return t.date({width:"full"})}},Ls=(e,t)=>{switch(e){case"p":return t.time({width:"short"});case"pp":return t.time({width:"medium"});case"ppp":return t.time({width:"long"});default:return t.time({width:"full"})}},ff=(e,t)=>{const n=e.match(/(P+)(p+)?/)||[],a=n[1],o=n[2];if(!o)return vo(e,t);let s;switch(a){case"P":s=t.dateTime({width:"short"});break;case"PP":s=t.dateTime({width:"medium"});break;case"PPP":s=t.dateTime({width:"long"});break;default:s=t.dateTime({width:"full"});break}return s.replace("{{date}}",vo(a,t)).replace("{{time}}",Ls(o,t))},mf={p:Ls,P:ff},hf=/^D+$/,gf=/^Y+$/,yf=["D","DD","YY","YYYY"];function pf(e){return hf.test(e)}function xf(e){return gf.test(e)}function bf(e,t,n){const a=kf(e,t,n);if(console.warn(a),yf.includes(e))throw new RangeError(a)}function kf(e,t,n){const a=e[0]==="Y"?"years":"days of the month";return`Use \`${e.toLowerCase()}\` instead of \`${e}\` (in \`${t}\`) for formatting ${a} to the input \`${n}\`; see: https://github.com/date-fns/date-fns/blob/master/docs/unicodeTokens.md`}const wf=/[yYQqMLwIdDecihHKkms]o|(\w)\1*|''|'(''|[^'])+('|$)|./g,vf=/P+p+|P+|p+|''|'(''|[^'])+('|$)|./g,_f=/^'([^]*?)'?$/,Nf=/''/g,jf=/[a-zA-Z]/;function ft(e,t,n){const a=Tn(),o=n?.locale??a.locale??Mt,s=n?.firstWeekContainsDate??n?.locale?.options?.firstWeekContainsDate??a.firstWeekContainsDate??a.locale?.options?.firstWeekContainsDate??1,i=n?.weekStartsOn??n?.locale?.options?.weekStartsOn??a.weekStartsOn??a.locale?.options?.weekStartsOn??0,l=pe(e,n?.in);if(!ju(l))throw new RangeError("Invalid time value");let c=t.match(vf).map(u=>{const f=u[0];if(f==="p"||f==="P"){const m=mf[f];return m(u,o.formatLong)}return u}).join("").match(wf).map(u=>{if(u==="''")return{isToken:!1,value:"'"};const f=u[0];if(f==="'")return{isToken:!1,value:Sf(u)};if(bo[f])return{isToken:!0,value:u};if(f.match(jf))throw new RangeError("Format string contains an unescaped latin alphabet character `"+f+"`");return{isToken:!1,value:u}});o.localize.preprocessor&&(c=o.localize.preprocessor(l,c));const d={firstWeekContainsDate:s,weekStartsOn:i,locale:o};return c.map(u=>{if(!u.isToken)return u.value;const f=u.value;(!n?.useAdditionalWeekYearTokens&&xf(f)||!n?.useAdditionalDayOfYearTokens&&pf(f))&&bf(f,t,String(e));const m=bo[f[0]];return m(l,f,o.localize,d)}).join("")}function Sf(e){const t=e.match(_f);return t?t[1].replace(Nf,"'"):e}function Mf(e,t){const n=pe(e,t?.in),a=n.getFullYear(),o=n.getMonth(),s=Oe(n,0);return s.setFullYear(a,o+1,0),s.setHours(0,0,0,0),s.getDate()}function Cf(e,t){return pe(e,t?.in).getMonth()}function Df(e,t){return pe(e,t?.in).getFullYear()}function Tf(e,t){return+pe(e)>+pe(t)}function Pf(e,t){return+pe(e)<+pe(t)}function Of(e,t,n){const[a,o]=zt(n?.in,e,t);return+Ct(a,n)==+Ct(o,n)}function Ef(e,t,n){const[a,o]=zt(n?.in,e,t);return a.getFullYear()===o.getFullYear()&&a.getMonth()===o.getMonth()}function Af(e,t,n){const[a,o]=zt(n?.in,e,t);return a.getFullYear()===o.getFullYear()}function Wf(e,t,n){const a=pe(e,n?.in),o=a.getFullYear(),s=a.getDate(),i=Oe(e,0);i.setFullYear(o,t,15),i.setHours(0,0,0,0);const l=Mf(i);return a.setMonth(t,Math.min(s,l)),a}function $f(e,t,n){const a=pe(e,n?.in);return isNaN(+a)?Oe(e,NaN):(a.setFullYear(t),a)}const _o=5,Ff=4;function If(e,t){const n=t.startOfMonth(e),a=n.getDay()>0?n.getDay():7,o=t.addDays(e,-a+1),s=t.addDays(o,_o*7-1);return t.getMonth(e)===t.getMonth(s)?_o:Ff}function Rs(e,t){const n=t.startOfMonth(e),a=n.getDay();return a===1?n:a===0?t.addDays(n,-6):t.addDays(n,-1*(a-1))}function Lf(e,t){const n=Rs(e,t),a=If(e,t);return t.addDays(n,a*7-1)}const Rf={lessThanXSeconds:{one:"1秒未満",other:"{{count}}秒未満",oneWithSuffix:"約1秒",otherWithSuffix:"約{{count}}秒"},xSeconds:{one:"1秒",other:"{{count}}秒"},halfAMinute:"30秒",lessThanXMinutes:{one:"1分未満",other:"{{count}}分未満",oneWithSuffix:"約1分",otherWithSuffix:"約{{count}}分"},xMinutes:{one:"1分",other:"{{count}}分"},aboutXHours:{one:"約1時間",other:"約{{count}}時間"},xHours:{one:"1時間",other:"{{count}}時間"},xDays:{one:"1日",other:"{{count}}日"},aboutXWeeks:{one:"約1週間",other:"約{{count}}週間"},xWeeks:{one:"1週間",other:"{{count}}週間"},aboutXMonths:{one:"約1か月",other:"約{{count}}か月"},xMonths:{one:"1か月",other:"{{count}}か月"},aboutXYears:{one:"約1年",other:"約{{count}}年"},xYears:{one:"1年",other:"{{count}}年"},overXYears:{one:"1年以上",other:"{{count}}年以上"},almostXYears:{one:"1年近く",other:"{{count}}年近く"}},Bf=(e,t,n)=>{n=n||{};let a;const o=Rf[e];return typeof o=="string"?a=o:t===1?n.addSuffix&&o.oneWithSuffix?a=o.oneWithSuffix:a=o.one:n.addSuffix&&o.otherWithSuffix?a=o.otherWithSuffix.replace("{{count}}",String(t)):a=o.other.replace("{{count}}",String(t)),n.addSuffix?n.comparison&&n.comparison>0?a+"後":a+"前":a},zf={full:"y年M月d日EEEE",long:"y年M月d日",medium:"y/MM/dd",short:"y/MM/dd"},Yf={full:"H時mm分ss秒 zzzz",long:"H:mm:ss z",medium:"H:mm:ss",short:"H:mm"},Hf={full:"{{date}} {{time}}",long:"{{date}} {{time}}",medium:"{{date}} {{time}}",short:"{{date}} {{time}}"},Uf={date:Be({formats:zf,defaultWidth:"full"}),time:Be({formats:Yf,defaultWidth:"full"}),dateTime:Be({formats:Hf,defaultWidth:"full"})},Vf={lastWeek:"先週のeeeeのp",yesterday:"昨日のp",today:"今日のp",tomorrow:"明日のp",nextWeek:"翌週のeeeeのp",other:"P"},qf=(e,t,n,a)=>Vf[e],Gf={narrow:["BC","AC"],abbreviated:["紀元前","西暦"],wide:["紀元前","西暦"]},Kf={narrow:["1","2","3","4"],abbreviated:["Q1","Q2","Q3","Q4"],wide:["第1四半期","第2四半期","第3四半期","第4四半期"]},Xf={narrow:["1","2","3","4","5","6","7","8","9","10","11","12"],abbreviated:["1月","2月","3月","4月","5月","6月","7月","8月","9月","10月","11月","12月"],wide:["1月","2月","3月","4月","5月","6月","7月","8月","9月","10月","11月","12月"]},Qf={narrow:["日","月","火","水","木","金","土"],short:["日","月","火","水","木","金","土"],abbreviated:["日","月","火","水","木","金","土"],wide:["日曜日","月曜日","火曜日","水曜日","木曜日","金曜日","土曜日"]},Jf={narrow:{am:"午前",pm:"午後",midnight:"深夜",noon:"正午",morning:"朝",afternoon:"午後",evening:"夜",night:"深夜"},abbreviated:{am:"午前",pm:"午後",midnight:"深夜",noon:"正午",morning:"朝",afternoon:"午後",evening:"夜",night:"深夜"},wide:{am:"午前",pm:"午後",midnight:"深夜",noon:"正午",morning:"朝",afternoon:"午後",evening:"夜",night:"深夜"}},Zf={narrow:{am:"午前",pm:"午後",midnight:"深夜",noon:"正午",morning:"朝",afternoon:"午後",evening:"夜",night:"深夜"},abbreviated:{am:"午前",pm:"午後",midnight:"深夜",noon:"正午",morning:"朝",afternoon:"午後",evening:"夜",night:"深夜"},wide:{am:"午前",pm:"午後",midnight:"深夜",noon:"正午",morning:"朝",afternoon:"午後",evening:"夜",night:"深夜"}},em=(e,t)=>{const n=Number(e);switch(String(t?.unit)){case"year":return`${n}年`;case"quarter":return`第${n}四半期`;case"month":return`${n}月`;case"week":return`第${n}週`;case"date":return`${n}日`;case"hour":return`${n}時`;case"minute":return`${n}分`;case"second":return`${n}秒`;default:return`${n}`}},tm={ordinalNumber:em,era:Ne({values:Gf,defaultWidth:"wide"}),quarter:Ne({values:Kf,defaultWidth:"wide",argumentCallback:e=>Number(e)-1}),month:Ne({values:Xf,defaultWidth:"wide"}),day:Ne({values:Qf,defaultWidth:"wide"}),dayPeriod:Ne({values:Jf,defaultWidth:"wide",formattingValues:Zf,defaultFormattingWidth:"wide"})},nm=/^第?\d+(年|四半期|月|週|日|時|分|秒)?/i,am=/\d+/i,rm={narrow:/^(B\.?C\.?|A\.?D\.?)/i,abbreviated:/^(紀元[前後]|西暦)/i,wide:/^(紀元[前後]|西暦)/i},om={narrow:[/^B/i,/^A/i],any:[/^(紀元前)/i,/^(西暦|紀元後)/i]},sm={narrow:/^[1234]/i,abbreviated:/^Q[1234]/i,wide:/^第[1234一二三四1234]四半期/i},im={any:[/(1|一|1)/i,/(2|二|2)/i,/(3|三|3)/i,/(4|四|4)/i]},lm={narrow:/^([123456789]|1[012])/,abbreviated:/^([123456789]|1[012])月/i,wide:/^([123456789]|1[012])月/i},cm={any:[/^1\D/,/^2/,/^3/,/^4/,/^5/,/^6/,/^7/,/^8/,/^9/,/^10/,/^11/,/^12/]},dm={narrow:/^[日月火水木金土]/,short:/^[日月火水木金土]/,abbreviated:/^[日月火水木金土]/,wide:/^[日月火水木金土]曜日/},um={any:[/^日/,/^月/,/^火/,/^水/,/^木/,/^金/,/^土/]},fm={any:/^(AM|PM|午前|午後|正午|深夜|真夜中|夜|朝)/i},mm={any:{am:/^(A|午前)/i,pm:/^(P|午後)/i,midnight:/^深夜|真夜中/i,noon:/^正午/i,morning:/^朝/i,afternoon:/^午後/i,evening:/^夜/i,night:/^深夜/i}},hm={ordinalNumber:Pn({matchPattern:nm,parsePattern:am,valueCallback:function(e){return parseInt(e,10)}}),era:je({matchPatterns:rm,defaultMatchWidth:"wide",parsePatterns:om,defaultParseWidth:"any"}),quarter:je({matchPatterns:sm,defaultMatchWidth:"wide",parsePatterns:im,defaultParseWidth:"any",valueCallback:e=>e+1}),month:je({matchPatterns:lm,defaultMatchWidth:"wide",parsePatterns:cm,defaultParseWidth:"any"}),day:je({matchPatterns:dm,defaultMatchWidth:"wide",parsePatterns:um,defaultParseWidth:"any"}),dayPeriod:je({matchPatterns:fm,defaultMatchWidth:"any",parsePatterns:mm,defaultParseWidth:"any"})},gm={code:"ja",formatDistance:Bf,formatLong:Uf,formatRelative:qf,localize:tm,match:hm,options:{weekStartsOn:0,firstWeekContainsDate:1}},ym={lessThanXSeconds:{one:"1초 미만",other:"{{count}}초 미만"},xSeconds:{one:"1초",other:"{{count}}초"},halfAMinute:"30초",lessThanXMinutes:{one:"1분 미만",other:"{{count}}분 미만"},xMinutes:{one:"1분",other:"{{count}}분"},aboutXHours:{one:"약 1시간",other:"약 {{count}}시간"},xHours:{one:"1시간",other:"{{count}}시간"},xDays:{one:"1일",other:"{{count}}일"},aboutXWeeks:{one:"약 1주",other:"약 {{count}}주"},xWeeks:{one:"1주",other:"{{count}}주"},aboutXMonths:{one:"약 1개월",other:"약 {{count}}개월"},xMonths:{one:"1개월",other:"{{count}}개월"},aboutXYears:{one:"약 1년",other:"약 {{count}}년"},xYears:{one:"1년",other:"{{count}}년"},overXYears:{one:"1년 이상",other:"{{count}}년 이상"},almostXYears:{one:"거의 1년",other:"거의 {{count}}년"}},pm=(e,t,n)=>{let a;const o=ym[e];return typeof o=="string"?a=o:t===1?a=o.one:a=o.other.replace("{{count}}",t.toString()),n?.addSuffix?n.comparison&&n.comparison>0?a+" 후":a+" 전":a},xm={full:"y년 M월 d일 EEEE",long:"y년 M월 d일",medium:"y.MM.dd",short:"y.MM.dd"},bm={full:"a H시 mm분 ss초 zzzz",long:"a H:mm:ss z",medium:"HH:mm:ss",short:"HH:mm"},km={full:"{{date}} {{time}}",long:"{{date}} {{time}}",medium:"{{date}} {{time}}",short:"{{date}} {{time}}"},wm={date:Be({formats:xm,defaultWidth:"full"}),time:Be({formats:bm,defaultWidth:"full"}),dateTime:Be({formats:km,defaultWidth:"full"})},vm={lastWeek:"'지난' eeee p",yesterday:"'어제' p",today:"'오늘' p",tomorrow:"'내일' p",nextWeek:"'다음' eeee p",other:"P"},_m=(e,t,n,a)=>vm[e],Nm={narrow:["BC","AD"],abbreviated:["BC","AD"],wide:["기원전","서기"]},jm={narrow:["1","2","3","4"],abbreviated:["Q1","Q2","Q3","Q4"],wide:["1분기","2분기","3분기","4분기"]},Sm={narrow:["1","2","3","4","5","6","7","8","9","10","11","12"],abbreviated:["1월","2월","3월","4월","5월","6월","7월","8월","9월","10월","11월","12월"],wide:["1월","2월","3월","4월","5월","6월","7월","8월","9월","10월","11월","12월"]},Mm={narrow:["일","월","화","수","목","금","토"],short:["일","월","화","수","목","금","토"],abbreviated:["일","월","화","수","목","금","토"],wide:["일요일","월요일","화요일","수요일","목요일","금요일","토요일"]},Cm={narrow:{am:"오전",pm:"오후",midnight:"자정",noon:"정오",morning:"아침",afternoon:"오후",evening:"저녁",night:"밤"},abbreviated:{am:"오전",pm:"오후",midnight:"자정",noon:"정오",morning:"아침",afternoon:"오후",evening:"저녁",night:"밤"},wide:{am:"오전",pm:"오후",midnight:"자정",noon:"정오",morning:"아침",afternoon:"오후",evening:"저녁",night:"밤"}},Dm={narrow:{am:"오전",pm:"오후",midnight:"자정",noon:"정오",morning:"아침",afternoon:"오후",evening:"저녁",night:"밤"},abbreviated:{am:"오전",pm:"오후",midnight:"자정",noon:"정오",morning:"아침",afternoon:"오후",evening:"저녁",night:"밤"},wide:{am:"오전",pm:"오후",midnight:"자정",noon:"정오",morning:"아침",afternoon:"오후",evening:"저녁",night:"밤"}},Tm=(e,t)=>{const n=Number(e);switch(String(t?.unit)){case"minute":case"second":return String(n);case"date":return n+"일";default:return n+"번째"}},Pm={ordinalNumber:Tm,era:Ne({values:Nm,defaultWidth:"wide"}),quarter:Ne({values:jm,defaultWidth:"wide",argumentCallback:e=>e-1}),month:Ne({values:Sm,defaultWidth:"wide"}),day:Ne({values:Mm,defaultWidth:"wide"}),dayPeriod:Ne({values:Cm,defaultWidth:"wide",formattingValues:Dm,defaultFormattingWidth:"wide"})},Om=/^(\d+)(일|번째)?/i,Em=/\d+/i,Am={narrow:/^(b\.?\s?c\.?|b\.?\s?c\.?\s?e\.?|a\.?\s?d\.?|c\.?\s?e\.?)/i,abbreviated:/^(b\.?\s?c\.?|b\.?\s?c\.?\s?e\.?|a\.?\s?d\.?|c\.?\s?e\.?)/i,wide:/^(기원전|서기)/i},Wm={any:[/^(bc|기원전)/i,/^(ad|서기)/i]},$m={narrow:/^[1234]/i,abbreviated:/^q[1234]/i,wide:/^[1234]사?분기/i},Fm={any:[/1/i,/2/i,/3/i,/4/i]},Im={narrow:/^(1[012]|[123456789])/,abbreviated:/^(1[012]|[123456789])월/i,wide:/^(1[012]|[123456789])월/i},Lm={any:[/^1월?$/,/^2/,/^3/,/^4/,/^5/,/^6/,/^7/,/^8/,/^9/,/^10/,/^11/,/^12/]},Rm={narrow:/^[일월화수목금토]/,short:/^[일월화수목금토]/,abbreviated:/^[일월화수목금토]/,wide:/^[일월화수목금토]요일/},Bm={any:[/^일/,/^월/,/^화/,/^수/,/^목/,/^금/,/^토/]},zm={any:/^(am|pm|오전|오후|자정|정오|아침|저녁|밤)/i},Ym={any:{am:/^(am|오전)/i,pm:/^(pm|오후)/i,midnight:/^자정/i,noon:/^정오/i,morning:/^아침/i,afternoon:/^오후/i,evening:/^저녁/i,night:/^밤/i}},Hm={ordinalNumber:Pn({matchPattern:Om,parsePattern:Em,valueCallback:e=>parseInt(e,10)}),era:je({matchPatterns:Am,defaultMatchWidth:"wide",parsePatterns:Wm,defaultParseWidth:"any"}),quarter:je({matchPatterns:$m,defaultMatchWidth:"wide",parsePatterns:Fm,defaultParseWidth:"any",valueCallback:e=>e+1}),month:je({matchPatterns:Im,defaultMatchWidth:"wide",parsePatterns:Lm,defaultParseWidth:"any"}),day:je({matchPatterns:Rm,defaultMatchWidth:"wide",parsePatterns:Bm,defaultParseWidth:"any"}),dayPeriod:je({matchPatterns:zm,defaultMatchWidth:"any",parsePatterns:Ym,defaultParseWidth:"any"})},Um={code:"ko",formatDistance:pm,formatLong:wm,formatRelative:_m,localize:Pm,match:Hm,options:{weekStartsOn:0,firstWeekContainsDate:1}},Vm={lessThanXSeconds:{one:"不到 1 秒",other:"不到 {{count}} 秒"},xSeconds:{one:"1 秒",other:"{{count}} 秒"},halfAMinute:"半分钟",lessThanXMinutes:{one:"不到 1 分钟",other:"不到 {{count}} 分钟"},xMinutes:{one:"1 分钟",other:"{{count}} 分钟"},xHours:{one:"1 小时",other:"{{count}} 小时"},aboutXHours:{one:"大约 1 小时",other:"大约 {{count}} 小时"},xDays:{one:"1 天",other:"{{count}} 天"},aboutXWeeks:{one:"大约 1 个星期",other:"大约 {{count}} 个星期"},xWeeks:{one:"1 个星期",other:"{{count}} 个星期"},aboutXMonths:{one:"大约 1 个月",other:"大约 {{count}} 个月"},xMonths:{one:"1 个月",other:"{{count}} 个月"},aboutXYears:{one:"大约 1 年",other:"大约 {{count}} 年"},xYears:{one:"1 年",other:"{{count}} 年"},overXYears:{one:"超过 1 年",other:"超过 {{count}} 年"},almostXYears:{one:"将近 1 年",other:"将近 {{count}} 年"}},qm=(e,t,n)=>{let a;const o=Vm[e];return typeof o=="string"?a=o:t===1?a=o.one:a=o.other.replace("{{count}}",String(t)),n?.addSuffix?n.comparison&&n.comparison>0?a+"内":a+"前":a},Gm={full:"y'年'M'月'd'日' EEEE",long:"y'年'M'月'd'日'",medium:"yyyy-MM-dd",short:"yy-MM-dd"},Km={full:"zzzz a h:mm:ss",long:"z a h:mm:ss",medium:"a h:mm:ss",short:"a h:mm"},Xm={full:"{{date}} {{time}}",long:"{{date}} {{time}}",medium:"{{date}} {{time}}",short:"{{date}} {{time}}"},Qm={date:Be({formats:Gm,defaultWidth:"full"}),time:Be({formats:Km,defaultWidth:"full"}),dateTime:Be({formats:Xm,defaultWidth:"full"})};function No(e,t,n){const a="eeee p";return Of(e,t,n)?a:e.getTime()>t.getTime()?"'下个'"+a:"'上个'"+a}const Jm={lastWeek:No,yesterday:"'昨天' p",today:"'今天' p",tomorrow:"'明天' p",nextWeek:No,other:"PP p"},Zm=(e,t,n,a)=>{const o=Jm[e];return typeof o=="function"?o(t,n,a):o},eh={narrow:["前","公元"],abbreviated:["前","公元"],wide:["公元前","公元"]},th={narrow:["1","2","3","4"],abbreviated:["第一季","第二季","第三季","第四季"],wide:["第一季度","第二季度","第三季度","第四季度"]},nh={narrow:["一","二","三","四","五","六","七","八","九","十","十一","十二"],abbreviated:["1月","2月","3月","4月","5月","6月","7月","8月","9月","10月","11月","12月"],wide:["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月"]},ah={narrow:["日","一","二","三","四","五","六"],short:["日","一","二","三","四","五","六"],abbreviated:["周日","周一","周二","周三","周四","周五","周六"],wide:["星期日","星期一","星期二","星期三","星期四","星期五","星期六"]},rh={narrow:{am:"上",pm:"下",midnight:"凌晨",noon:"午",morning:"早",afternoon:"下午",evening:"晚",night:"夜"},abbreviated:{am:"上午",pm:"下午",midnight:"凌晨",noon:"中午",morning:"早晨",afternoon:"中午",evening:"晚上",night:"夜间"},wide:{am:"上午",pm:"下午",midnight:"凌晨",noon:"中午",morning:"早晨",afternoon:"中午",evening:"晚上",night:"夜间"}},oh={narrow:{am:"上",pm:"下",midnight:"凌晨",noon:"午",morning:"早",afternoon:"下午",evening:"晚",night:"夜"},abbreviated:{am:"上午",pm:"下午",midnight:"凌晨",noon:"中午",morning:"早晨",afternoon:"中午",evening:"晚上",night:"夜间"},wide:{am:"上午",pm:"下午",midnight:"凌晨",noon:"中午",morning:"早晨",afternoon:"中午",evening:"晚上",night:"夜间"}},sh=(e,t)=>{const n=Number(e);switch(t?.unit){case"date":return n.toString()+"日";case"hour":return n.toString()+"时";case"minute":return n.toString()+"分";case"second":return n.toString()+"秒";default:return"第 "+n.toString()}},ih={ordinalNumber:sh,era:Ne({values:eh,defaultWidth:"wide"}),quarter:Ne({values:th,defaultWidth:"wide",argumentCallback:e=>e-1}),month:Ne({values:nh,defaultWidth:"wide"}),day:Ne({values:ah,defaultWidth:"wide"}),dayPeriod:Ne({values:rh,defaultWidth:"wide",formattingValues:oh,defaultFormattingWidth:"wide"})},lh=/^(第\s*)?\d+(日|时|分|秒)?/i,ch=/\d+/i,dh={narrow:/^(前)/i,abbreviated:/^(前)/i,wide:/^(公元前|公元)/i},uh={any:[/^(前)/i,/^(公元)/i]},fh={narrow:/^[1234]/i,abbreviated:/^第[一二三四]刻/i,wide:/^第[一二三四]刻钟/i},mh={any:[/(1|一)/i,/(2|二)/i,/(3|三)/i,/(4|四)/i]},hh={narrow:/^(一|二|三|四|五|六|七|八|九|十[二一]?)/i,abbreviated:/^(一|二|三|四|五|六|七|八|九|十[二一]?|\d|1[0-2])月/i,wide:/^(一|二|三|四|五|六|七|八|九|十[二一]?)月/i},gh={narrow:[/^一/i,/^二/i,/^三/i,/^四/i,/^五/i,/^六/i,/^七/i,/^八/i,/^九/i,/^十(?!(一|二))/i,/^十一/i,/^十二/i],any:[/^(一|1(?!\d))/i,/^(二|2)/i,/^(三|3)/i,/^(四|4)/i,/^(五|5)/i,/^(六|6)/i,/^(七|7)/i,/^(八|8)/i,/^(九|9)/i,/^(十(?!(一|二))|10)/i,/^(十一|11)/i,/^(十二|12)/i]},yh={narrow:/^[一二三四五六日]/i,short:/^[一二三四五六日]/i,abbreviated:/^周[一二三四五六日]/i,wide:/^星期[一二三四五六日]/i},ph={any:[/日/i,/一/i,/二/i,/三/i,/四/i,/五/i,/六/i]},xh={any:/^(上午?|下午?|午夜|[中正]午|早上?|下午|晚上?|凌晨|)/i},bh={any:{am:/^上午?/i,pm:/^下午?/i,midnight:/^午夜/i,noon:/^[中正]午/i,morning:/^早上/i,afternoon:/^下午/i,evening:/^晚上?/i,night:/^凌晨/i}},kh={ordinalNumber:Pn({matchPattern:lh,parsePattern:ch,valueCallback:e=>parseInt(e,10)}),era:je({matchPatterns:dh,defaultMatchWidth:"wide",parsePatterns:uh,defaultParseWidth:"any"}),quarter:je({matchPatterns:fh,defaultMatchWidth:"wide",parsePatterns:mh,defaultParseWidth:"any",valueCallback:e=>e+1}),month:je({matchPatterns:hh,defaultMatchWidth:"wide",parsePatterns:gh,defaultParseWidth:"any"}),day:je({matchPatterns:yh,defaultMatchWidth:"wide",parsePatterns:ph,defaultParseWidth:"any"}),dayPeriod:je({matchPatterns:xh,defaultMatchWidth:"any",parsePatterns:bh,defaultParseWidth:"any"})},wh={code:"zh-CN",formatDistance:qm,formatLong:Qm,formatRelative:Zm,localize:ih,match:kh,options:{weekStartsOn:1,firstWeekContainsDate:4}},vh={lessThanXSeconds:{one:"少於 1 秒",other:"少於 {{count}} 秒"},xSeconds:{one:"1 秒",other:"{{count}} 秒"},halfAMinute:"半分鐘",lessThanXMinutes:{one:"少於 1 分鐘",other:"少於 {{count}} 分鐘"},xMinutes:{one:"1 分鐘",other:"{{count}} 分鐘"},xHours:{one:"1 小時",other:"{{count}} 小時"},aboutXHours:{one:"大約 1 小時",other:"大約 {{count}} 小時"},xDays:{one:"1 天",other:"{{count}} 天"},aboutXWeeks:{one:"大約 1 個星期",other:"大約 {{count}} 個星期"},xWeeks:{one:"1 個星期",other:"{{count}} 個星期"},aboutXMonths:{one:"大約 1 個月",other:"大約 {{count}} 個月"},xMonths:{one:"1 個月",other:"{{count}} 個月"},aboutXYears:{one:"大約 1 年",other:"大約 {{count}} 年"},xYears:{one:"1 年",other:"{{count}} 年"},overXYears:{one:"超過 1 年",other:"超過 {{count}} 年"},almostXYears:{one:"將近 1 年",other:"將近 {{count}} 年"}},_h=(e,t,n)=>{let a;const o=vh[e];return typeof o=="string"?a=o:t===1?a=o.one:a=o.other.replace("{{count}}",String(t)),n?.addSuffix?n.comparison&&n.comparison>0?a+"內":a+"前":a},Nh={full:"y'年'M'月'd'日' EEEE",long:"y'年'M'月'd'日'",medium:"yyyy-MM-dd",short:"yy-MM-dd"},jh={full:"zzzz a h:mm:ss",long:"z a h:mm:ss",medium:"a h:mm:ss",short:"a h:mm"},Sh={full:"{{date}} {{time}}",long:"{{date}} {{time}}",medium:"{{date}} {{time}}",short:"{{date}} {{time}}"},Mh={date:Be({formats:Nh,defaultWidth:"full"}),time:Be({formats:jh,defaultWidth:"full"}),dateTime:Be({formats:Sh,defaultWidth:"full"})},Ch={lastWeek:"'上個'eeee p",yesterday:"'昨天' p",today:"'今天' p",tomorrow:"'明天' p",nextWeek:"'下個'eeee p",other:"P"},Dh=(e,t,n,a)=>Ch[e],Th={narrow:["前","公元"],abbreviated:["前","公元"],wide:["公元前","公元"]},Ph={narrow:["1","2","3","4"],abbreviated:["第一刻","第二刻","第三刻","第四刻"],wide:["第一刻鐘","第二刻鐘","第三刻鐘","第四刻鐘"]},Oh={narrow:["一","二","三","四","五","六","七","八","九","十","十一","十二"],abbreviated:["1月","2月","3月","4月","5月","6月","7月","8月","9月","10月","11月","12月"],wide:["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月"]},Eh={narrow:["日","一","二","三","四","五","六"],short:["日","一","二","三","四","五","六"],abbreviated:["週日","週一","週二","週三","週四","週五","週六"],wide:["星期日","星期一","星期二","星期三","星期四","星期五","星期六"]},Ah={narrow:{am:"上",pm:"下",midnight:"凌晨",noon:"午",morning:"早",afternoon:"下午",evening:"晚",night:"夜"},abbreviated:{am:"上午",pm:"下午",midnight:"凌晨",noon:"中午",morning:"早晨",afternoon:"中午",evening:"晚上",night:"夜間"},wide:{am:"上午",pm:"下午",midnight:"凌晨",noon:"中午",morning:"早晨",afternoon:"中午",evening:"晚上",night:"夜間"}},Wh={narrow:{am:"上",pm:"下",midnight:"凌晨",noon:"午",morning:"早",afternoon:"下午",evening:"晚",night:"夜"},abbreviated:{am:"上午",pm:"下午",midnight:"凌晨",noon:"中午",morning:"早晨",afternoon:"中午",evening:"晚上",night:"夜間"},wide:{am:"上午",pm:"下午",midnight:"凌晨",noon:"中午",morning:"早晨",afternoon:"中午",evening:"晚上",night:"夜間"}},$h=(e,t)=>{const n=Number(e);switch(t?.unit){case"date":return n+"日";case"hour":return n+"時";case"minute":return n+"分";case"second":return n+"秒";default:return"第 "+n}},Fh={ordinalNumber:$h,era:Ne({values:Th,defaultWidth:"wide"}),quarter:Ne({values:Ph,defaultWidth:"wide",argumentCallback:e=>e-1}),month:Ne({values:Oh,defaultWidth:"wide"}),day:Ne({values:Eh,defaultWidth:"wide"}),dayPeriod:Ne({values:Ah,defaultWidth:"wide",formattingValues:Wh,defaultFormattingWidth:"wide"})},Ih=/^(第\s*)?\d+(日|時|分|秒)?/i,Lh=/\d+/i,Rh={narrow:/^(前)/i,abbreviated:/^(前)/i,wide:/^(公元前|公元)/i},Bh={any:[/^(前)/i,/^(公元)/i]},zh={narrow:/^[1234]/i,abbreviated:/^第[一二三四]刻/i,wide:/^第[一二三四]刻鐘/i},Yh={any:[/(1|一)/i,/(2|二)/i,/(3|三)/i,/(4|四)/i]},Hh={narrow:/^(一|二|三|四|五|六|七|八|九|十[二一]?)/i,abbreviated:/^(一|二|三|四|五|六|七|八|九|十[二一]?|\d|1[0-2])月/i,wide:/^(一|二|三|四|五|六|七|八|九|十[二一]?)月/i},Uh={narrow:[/^一/i,/^二/i,/^三/i,/^四/i,/^五/i,/^六/i,/^七/i,/^八/i,/^九/i,/^十(?!(一|二))/i,/^十一/i,/^十二/i],any:[/^(一|1(?!\d))/i,/^(二|2)/i,/^(三|3)/i,/^(四|4)/i,/^(五|5)/i,/^(六|6)/i,/^(七|7)/i,/^(八|8)/i,/^(九|9)/i,/^(十(?!(一|二))|10)/i,/^(十一|11)/i,/^(十二|12)/i]},Vh={narrow:/^[一二三四五六日]/i,short:/^[一二三四五六日]/i,abbreviated:/^週[一二三四五六日]/i,wide:/^星期[一二三四五六日]/i},qh={any:[/日/i,/一/i,/二/i,/三/i,/四/i,/五/i,/六/i]},Gh={any:/^(上午?|下午?|午夜|[中正]午|早上?|下午|晚上?|凌晨)/i},Kh={any:{am:/^上午?/i,pm:/^下午?/i,midnight:/^午夜/i,noon:/^[中正]午/i,morning:/^早上/i,afternoon:/^下午/i,evening:/^晚上?/i,night:/^凌晨/i}},Xh={ordinalNumber:Pn({matchPattern:Ih,parsePattern:Lh,valueCallback:e=>parseInt(e,10)}),era:je({matchPatterns:Rh,defaultMatchWidth:"wide",parsePatterns:Bh,defaultParseWidth:"any"}),quarter:je({matchPatterns:zh,defaultMatchWidth:"wide",parsePatterns:Yh,defaultParseWidth:"any",valueCallback:e=>e+1}),month:je({matchPatterns:Hh,defaultMatchWidth:"wide",parsePatterns:Uh,defaultParseWidth:"any"}),day:je({matchPatterns:Vh,defaultMatchWidth:"wide",parsePatterns:qh,defaultParseWidth:"any"}),dayPeriod:je({matchPatterns:Gh,defaultMatchWidth:"any",parsePatterns:Kh,defaultParseWidth:"any"})},Qh={code:"zh-TW",formatDistance:_h,formatLong:Mh,formatRelative:Dh,localize:Fh,match:Xh,options:{weekStartsOn:1,firstWeekContainsDate:4}},Bs={...Mt,labels:{labelDayButton:(e,t,n,a)=>{let o;a&&typeof a.format=="function"?o=a.format.bind(a):o=(i,l)=>ft(i,l,{locale:Mt,...n});let s=o(e,"PPPP");return t.today&&(s=`Today, ${s}`),t.selected&&(s=`${s}, selected`),s},labelMonthDropdown:"Choose the Month",labelNext:"Go to the Next Month",labelPrevious:"Go to the Previous Month",labelWeekNumber:e=>`Week ${e}`,labelYearDropdown:"Choose the Year",labelGrid:(e,t,n)=>{let a;return n&&typeof n.format=="function"?a=n.format.bind(n):a=(o,s)=>ft(o,s,{locale:Mt,...t}),a(e,"LLLL yyyy")},labelGridcell:(e,t,n,a)=>{let o;a&&typeof a.format=="function"?o=a.format.bind(a):o=(i,l)=>ft(i,l,{locale:Mt,...n});let s=o(e,"PPPP");return t?.today&&(s=`Today, ${s}`),s},labelNav:"Navigation bar",labelWeekNumberHeader:"Week Number",labelWeekday:(e,t,n)=>{let a;return n&&typeof n.format=="function"?a=n.format.bind(n):a=(o,s)=>ft(o,s,{locale:Mt,...t}),a(e,"cccc")}}};class Xe{constructor(t,n){this.Date=Date,this.today=()=>this.overrides?.today?this.overrides.today():this.options.timeZone?Ie.tz(this.options.timeZone):new this.Date,this.newDate=(a,o,s)=>this.overrides?.newDate?this.overrides.newDate(a,o,s):this.options.timeZone?new Ie(a,o,s,this.options.timeZone):new Date(a,o,s),this.addDays=(a,o)=>this.overrides?.addDays?this.overrides.addDays(a,o):Ts(a,o),this.addMonths=(a,o)=>this.overrides?.addMonths?this.overrides.addMonths(a,o):Ps(a,o),this.addWeeks=(a,o)=>this.overrides?.addWeeks?this.overrides.addWeeks(a,o):ku(a,o),this.addYears=(a,o)=>this.overrides?.addYears?this.overrides.addYears(a,o):wu(a,o),this.differenceInCalendarDays=(a,o)=>this.overrides?.differenceInCalendarDays?this.overrides.differenceInCalendarDays(a,o):_r(a,o),this.differenceInCalendarMonths=(a,o)=>this.overrides?.differenceInCalendarMonths?this.overrides.differenceInCalendarMonths(a,o):As(a,o),this.eachMonthOfInterval=a=>this.overrides?.eachMonthOfInterval?this.overrides.eachMonthOfInterval(a):Mu(a),this.eachYearOfInterval=a=>{const o=this.overrides?.eachYearOfInterval?this.overrides.eachYearOfInterval(a):Tu(a),s=new Set(o.map(l=>this.getYear(l)));if(s.size===o.length)return o;const i=[];return s.forEach(l=>{i.push(new Date(l,0,1))}),i},this.endOfBroadcastWeek=a=>this.overrides?.endOfBroadcastWeek?this.overrides.endOfBroadcastWeek(a):Lf(a,this),this.endOfISOWeek=a=>this.overrides?.endOfISOWeek?this.overrides.endOfISOWeek(a):Pu(a),this.endOfMonth=a=>this.overrides?.endOfMonth?this.overrides.endOfMonth(a):Su(a),this.endOfWeek=(a,o)=>this.overrides?.endOfWeek?this.overrides.endOfWeek(a,o):Fs(a,this.options),this.endOfYear=a=>this.overrides?.endOfYear?this.overrides.endOfYear(a):Du(a),this.format=(a,o,s)=>{const i=this.overrides?.format?this.overrides.format(a,o,this.options):ft(a,o,this.options);return this.options.numerals&&this.options.numerals!=="latn"?this.replaceDigits(i):i},this.getISOWeek=a=>this.overrides?.getISOWeek?this.overrides.getISOWeek(a):Nr(a),this.getMonth=(a,o)=>this.overrides?.getMonth?this.overrides.getMonth(a,this.options):Cf(a,this.options),this.getYear=(a,o)=>this.overrides?.getYear?this.overrides.getYear(a,this.options):Df(a,this.options),this.getWeek=(a,o)=>this.overrides?.getWeek?this.overrides.getWeek(a,this.options):jr(a,this.options),this.isAfter=(a,o)=>this.overrides?.isAfter?this.overrides.isAfter(a,o):Tf(a,o),this.isBefore=(a,o)=>this.overrides?.isBefore?this.overrides.isBefore(a,o):Pf(a,o),this.isDate=a=>this.overrides?.isDate?this.overrides.isDate(a):Es(a),this.isSameDay=(a,o)=>this.overrides?.isSameDay?this.overrides.isSameDay(a,o):Nu(a,o),this.isSameMonth=(a,o)=>this.overrides?.isSameMonth?this.overrides.isSameMonth(a,o):Ef(a,o),this.isSameYear=(a,o)=>this.overrides?.isSameYear?this.overrides.isSameYear(a,o):Af(a,o),this.max=a=>this.overrides?.max?this.overrides.max(a):vu(a),this.min=a=>this.overrides?.min?this.overrides.min(a):_u(a),this.setMonth=(a,o)=>this.overrides?.setMonth?this.overrides.setMonth(a,o):Wf(a,o),this.setYear=(a,o)=>this.overrides?.setYear?this.overrides.setYear(a,o):$f(a,o),this.startOfBroadcastWeek=(a,o)=>this.overrides?.startOfBroadcastWeek?this.overrides.startOfBroadcastWeek(a,this):Rs(a,this),this.startOfDay=a=>this.overrides?.startOfDay?this.overrides.startOfDay(a):Mn(a),this.startOfISOWeek=a=>this.overrides?.startOfISOWeek?this.overrides.startOfISOWeek(a):Sn(a),this.startOfMonth=a=>this.overrides?.startOfMonth?this.overrides.startOfMonth(a):Cu(a),this.startOfWeek=(a,o)=>this.overrides?.startOfWeek?this.overrides.startOfWeek(a,this.options):Ct(a,this.options),this.startOfYear=a=>this.overrides?.startOfYear?this.overrides.startOfYear(a):$s(a),this.options={locale:Bs,...t},this.overrides=n}getDigitMap(){const{numerals:t="latn"}=this.options,n=new Intl.NumberFormat("en-US",{numberingSystem:t}),a={};for(let o=0;o<10;o++)a[o.toString()]=n.format(o);return a}replaceDigits(t){const n=this.getDigitMap();return t.replace(/\d/g,a=>n[a]||a)}formatNumber(t){return this.replaceDigits(t.toString())}getMonthYearOrder(){const t=this.options.locale?.code;return t&&Xe.yearFirstLocales.has(t)?"year-first":"month-first"}formatMonthYear(t){const{locale:n,timeZone:a,numerals:o}=this.options,s=n?.code;if(s&&Xe.yearFirstLocales.has(s))try{return new Intl.DateTimeFormat(s,{month:"long",year:"numeric",timeZone:a,numberingSystem:o}).format(t)}catch{}const i=this.getMonthYearOrder()==="year-first"?"y LLLL":"LLLL y";return this.format(t,i)}}Xe.yearFirstLocales=new Set(["eu","hu","ja","ja-Hira","ja-JP","ko","ko-KR","lt","lt-LT","lv","lv-LV","mn","mn-MN","zh","zh-CN","zh-HK","zh-TW"]);const mt=new Xe;class zs{constructor(t,n,a=mt){this.date=t,this.displayMonth=n,this.outside=!!(n&&!a.isSameMonth(t,n)),this.dateLib=a,this.isoDate=a.format(t,"yyyy-MM-dd"),this.displayMonthId=a.format(n,"yyyy-MM"),this.dateMonthId=a.format(t,"yyyy-MM")}isEqualTo(t){return this.dateLib.isSameDay(t.date,this.date)&&this.dateLib.isSameMonth(t.displayMonth,this.displayMonth)}}class Jh{constructor(t,n){this.date=t,this.weeks=n}}class Zh{constructor(t,n){this.days=n,this.weekNumber=t}}function e0(e){return W.createElement("button",{...e})}function t0(e){return W.createElement("span",{...e})}function n0(e){const{size:t=24,orientation:n="left",className:a}=e;return W.createElement("svg",{className:a,width:t,height:t,viewBox:"0 0 24 24"},n==="up"&&W.createElement("polygon",{points:"6.77 17 12.5 11.43 18.24 17 20 15.28 12.5 8 5 15.28"}),n==="down"&&W.createElement("polygon",{points:"6.77 8 12.5 13.57 18.24 8 20 9.72 12.5 17 5 9.72"}),n==="left"&&W.createElement("polygon",{points:"16 18.112 9.81111111 12 16 5.87733333 14.0888889 4 6 12 14.0888889 20"}),n==="right"&&W.createElement("polygon",{points:"8 18.112 14.18888889 12 8 5.87733333 9.91111111 4 18 12 9.91111111 20"}))}function a0(e){const{day:t,modifiers:n,...a}=e;return W.createElement("td",{...a})}function r0(e){const{day:t,modifiers:n,...a}=e,o=W.useRef(null);return W.useEffect(()=>{n.focused&&o.current?.focus()},[n.focused]),W.createElement("button",{ref:o,...a})}var X;(function(e){e.Root="root",e.Chevron="chevron",e.Day="day",e.DayButton="day_button",e.CaptionLabel="caption_label",e.Dropdowns="dropdowns",e.Dropdown="dropdown",e.DropdownRoot="dropdown_root",e.Footer="footer",e.MonthGrid="month_grid",e.MonthCaption="month_caption",e.MonthsDropdown="months_dropdown",e.Month="month",e.Months="months",e.Nav="nav",e.NextMonthButton="button_next",e.PreviousMonthButton="button_previous",e.Week="week",e.Weeks="weeks",e.Weekday="weekday",e.Weekdays="weekdays",e.WeekNumber="week_number",e.WeekNumberHeader="week_number_header",e.YearsDropdown="years_dropdown"})(X||(X={}));var Ce;(function(e){e.disabled="disabled",e.hidden="hidden",e.outside="outside",e.focused="focused",e.today="today"})(Ce||(Ce={}));var st;(function(e){e.range_end="range_end",e.range_middle="range_middle",e.range_start="range_start",e.selected="selected"})(st||(st={}));var Ke;(function(e){e.weeks_before_enter="weeks_before_enter",e.weeks_before_exit="weeks_before_exit",e.weeks_after_enter="weeks_after_enter",e.weeks_after_exit="weeks_after_exit",e.caption_after_enter="caption_after_enter",e.caption_after_exit="caption_after_exit",e.caption_before_enter="caption_before_enter",e.caption_before_exit="caption_before_exit"})(Ke||(Ke={}));function o0(e){const{options:t,className:n,components:a,classNames:o,...s}=e,i=[o[X.Dropdown],n].join(" "),l=t?.find(({value:c})=>c===s.value);return W.createElement("span",{"data-disabled":s.disabled,className:o[X.DropdownRoot]},W.createElement(a.Select,{className:i,...s},t?.map(({value:c,label:d,disabled:u})=>W.createElement(a.Option,{key:c,value:c,disabled:u},d))),W.createElement("span",{className:o[X.CaptionLabel],"aria-hidden":!0},l?.label,W.createElement(a.Chevron,{orientation:"down",size:18,className:o[X.Chevron]})))}function s0(e){return W.createElement("div",{...e})}function i0(e){return W.createElement("div",{...e})}function l0(e){const{calendarMonth:t,displayIndex:n,...a}=e;return W.createElement("div",{...a},e.children)}function c0(e){const{calendarMonth:t,displayIndex:n,...a}=e;return W.createElement("div",{...a})}function d0(e){return W.createElement("table",{...e})}function u0(e){return W.createElement("div",{...e})}const Ys=h.createContext(void 0);function On(){const e=h.useContext(Ys);if(e===void 0)throw new Error("useDayPicker() must be used within a custom component.");return e}function f0(e){const{components:t}=On();return W.createElement(t.Dropdown,{...e})}function m0(e){const{onPreviousClick:t,onNextClick:n,previousMonth:a,nextMonth:o,...s}=e,{components:i,classNames:l,labels:{labelPrevious:c,labelNext:d}}=On(),u=h.useCallback(m=>{o&&n?.(m)},[o,n]),f=h.useCallback(m=>{a&&t?.(m)},[a,t]);return W.createElement("nav",{...s},W.createElement(i.PreviousMonthButton,{type:"button",className:l[X.PreviousMonthButton],tabIndex:a?void 0:-1,"aria-disabled":a?void 0:!0,"aria-label":c(a),onClick:f},W.createElement(i.Chevron,{disabled:a?void 0:!0,className:l[X.Chevron],orientation:"left"})),W.createElement(i.NextMonthButton,{type:"button",className:l[X.NextMonthButton],tabIndex:o?void 0:-1,"aria-disabled":o?void 0:!0,"aria-label":d(o),onClick:u},W.createElement(i.Chevron,{disabled:o?void 0:!0,orientation:"right",className:l[X.Chevron]})))}function h0(e){const{components:t}=On();return W.createElement(t.Button,{...e})}function g0(e){return W.createElement("option",{...e})}function y0(e){const{components:t}=On();return W.createElement(t.Button,{...e})}function p0(e){const{rootRef:t,...n}=e;return W.createElement("div",{...n,ref:t})}function x0(e){return W.createElement("select",{...e})}function b0(e){const{week:t,...n}=e;return W.createElement("tr",{...n})}function k0(e){return W.createElement("th",{...e})}function w0(e){return W.createElement("thead",{"aria-hidden":!0},W.createElement("tr",{...e}))}function v0(e){const{week:t,...n}=e;return W.createElement("th",{...n})}function _0(e){return W.createElement("th",{...e})}function N0(e){return W.createElement("tbody",{...e})}function j0(e){const{components:t}=On();return W.createElement(t.Dropdown,{...e})}const S0=Object.freeze(Object.defineProperty({__proto__:null,Button:e0,CaptionLabel:t0,Chevron:n0,Day:a0,DayButton:r0,Dropdown:o0,DropdownNav:s0,Footer:i0,Month:l0,MonthCaption:c0,MonthGrid:d0,Months:u0,MonthsDropdown:f0,Nav:m0,NextMonthButton:h0,Option:g0,PreviousMonthButton:y0,Root:p0,Select:x0,Week:b0,WeekNumber:v0,WeekNumberHeader:_0,Weekday:k0,Weekdays:w0,Weeks:N0,YearsDropdown:j0},Symbol.toStringTag,{value:"Module"}));function xt(e,t,n=!1,a=mt){let{from:o,to:s}=e;const{differenceInCalendarDays:i,isSameDay:l}=a;return o&&s?(i(s,o)<0&&([o,s]=[s,o]),i(t,o)>=(n?1:0)&&i(s,t)>=(n?1:0)):!n&&s?l(s,t):!n&&o?l(o,t):!1}function Sr(e){return!!(e&&typeof e=="object"&&"before"in e&&"after"in e)}function ha(e){return!!(e&&typeof e=="object"&&"from"in e)}function Mr(e){return!!(e&&typeof e=="object"&&"after"in e)}function Cr(e){return!!(e&&typeof e=="object"&&"before"in e)}function Hs(e){return!!(e&&typeof e=="object"&&"dayOfWeek"in e)}function Us(e,t){return Array.isArray(e)&&e.every(t.isDate)}function bt(e,t,n=mt){const a=Array.isArray(t)?t:[t],{isSameDay:o,differenceInCalendarDays:s,isAfter:i}=n;return a.some(l=>{if(typeof l=="boolean")return l;if(n.isDate(l))return o(e,l);if(Us(l,n))return l.some(c=>o(e,c));if(ha(l))return xt(l,e,!1,n);if(Hs(l))return Array.isArray(l.dayOfWeek)?l.dayOfWeek.includes(e.getDay()):l.dayOfWeek===e.getDay();if(Sr(l)){const c=s(l.before,e),d=s(l.after,e),u=c>0,f=d<0;return i(l.before,l.after)?f&&u:u||f}return Mr(l)?s(e,l.after)>0:Cr(l)?s(l.before,e)>0:typeof l=="function"?l(e):!1})}function M0(e,t,n,a,o){const{disabled:s,hidden:i,modifiers:l,showOutsideDays:c,broadcastCalendar:d,today:u=o.today()}=t,{isSameDay:f,isSameMonth:m,startOfMonth:y,isBefore:p,endOfMonth:b,isAfter:x}=o,w=n&&y(n),k=a&&b(a),N={[Ce.focused]:[],[Ce.outside]:[],[Ce.disabled]:[],[Ce.hidden]:[],[Ce.today]:[]},S={};for(const v of e){const{date:j,displayMonth:T}=v,_=!!(T&&!m(j,T)),M=!!(w&&p(j,w)),O=!!(k&&x(j,k)),$=!!(s&&bt(j,s,o)),Y=!!(i&&bt(j,i,o))||M||O||!d&&!c&&_||d&&c===!1&&_,H=f(j,u);_&&N.outside.push(v),$&&N.disabled.push(v),Y&&N.hidden.push(v),H&&N.today.push(v),l&&Object.keys(l).forEach(L=>{const D=l?.[L];D&&bt(j,D,o)&&(S[L]?S[L].push(v):S[L]=[v])})}return v=>{const j={[Ce.focused]:!1,[Ce.disabled]:!1,[Ce.hidden]:!1,[Ce.outside]:!1,[Ce.today]:!1},T={};for(const _ in N){const M=N[_];j[_]=M.some(O=>O===v)}for(const _ in S)T[_]=S[_].some(M=>M===v);return{...j,...T}}}function C0(e,t,n={}){return Object.entries(e).filter(([,o])=>o===!0).reduce((o,[s])=>(n[s]?o.push(n[s]):t[Ce[s]]?o.push(t[Ce[s]]):t[st[s]]&&o.push(t[st[s]]),o),[t[X.Day]])}function D0(e){return{...S0,...e}}function T0(e){const t={"data-mode":e.mode??void 0,"data-required":"required"in e?e.required:void 0,"data-multiple-months":e.numberOfMonths&&e.numberOfMonths>1||void 0,"data-week-numbers":e.showWeekNumber||void 0,"data-broadcast-calendar":e.broadcastCalendar||void 0,"data-nav-layout":e.navLayout||void 0};return Object.entries(e).forEach(([n,a])=>{n.startsWith("data-")&&(t[n]=a)}),t}function P0(){const e={};for(const t in X)e[X[t]]=`rdp-${X[t]}`;for(const t in Ce)e[Ce[t]]=`rdp-${Ce[t]}`;for(const t in st)e[st[t]]=`rdp-${st[t]}`;for(const t in Ke)e[Ke[t]]=`rdp-${Ke[t]}`;return e}function Vs(e,t,n){return(n??new Xe(t)).formatMonthYear(e)}const O0=Vs;function E0(e,t,n){return(n??new Xe(t)).format(e,"d")}function A0(e,t=mt){return t.format(e,"LLLL")}function W0(e,t,n){return(n??new Xe(t)).format(e,"cccccc")}function $0(e,t=mt){return e<10?t.formatNumber(`0${e.toLocaleString()}`):t.formatNumber(`${e.toLocaleString()}`)}function F0(){return""}function qs(e,t=mt){return t.format(e,"yyyy")}const I0=qs,L0=Object.freeze(Object.defineProperty({__proto__:null,formatCaption:Vs,formatDay:E0,formatMonthCaption:O0,formatMonthDropdown:A0,formatWeekNumber:$0,formatWeekNumberHeader:F0,formatWeekdayName:W0,formatYearCaption:I0,formatYearDropdown:qs},Symbol.toStringTag,{value:"Module"}));function R0(e){return e?.formatMonthCaption&&!e.formatCaption&&(e.formatCaption=e.formatMonthCaption),e?.formatYearCaption&&!e.formatYearDropdown&&(e.formatYearDropdown=e.formatYearCaption),{...L0,...e}}function Dr(e,t,n,a){let o=(a??new Xe(n)).format(e,"PPPP");return t.today&&(o=`Today, ${o}`),t.selected&&(o=`${o}, selected`),o}const B0=Dr;function Tr(e,t,n){return(n??new Xe(t)).formatMonthYear(e)}const z0=Tr;function Gs(e,t,n,a){let o=(a??new Xe(n)).format(e,"PPPP");return t?.today&&(o=`Today, ${o}`),o}function Ks(e){return"Choose the Month"}function Xs(){return""}const Y0="Go to the Next Month";function Qs(e,t){return Y0}function Js(e){return"Go to the Previous Month"}function Zs(e,t,n){return(n??new Xe(t)).format(e,"cccc")}function ei(e,t){return`Week ${e}`}function ti(e){return"Week Number"}function ni(e){return"Choose the Year"}const H0=Object.freeze(Object.defineProperty({__proto__:null,labelCaption:z0,labelDay:B0,labelDayButton:Dr,labelGrid:Tr,labelGridcell:Gs,labelMonthDropdown:Ks,labelNav:Xs,labelNext:Qs,labelPrevious:Js,labelWeekNumber:ei,labelWeekNumberHeader:ti,labelWeekday:Zs,labelYearDropdown:ni},Symbol.toStringTag,{value:"Module"})),ot=(e,t,n)=>t||(n?typeof n=="function"?n:(...a)=>n:e);function U0(e,t){const n=t.locale?.labels??{};return{...H0,...e??{},labelDayButton:ot(Dr,e?.labelDayButton,n.labelDayButton),labelMonthDropdown:ot(Ks,e?.labelMonthDropdown,n.labelMonthDropdown),labelNext:ot(Qs,e?.labelNext,n.labelNext),labelPrevious:ot(Js,e?.labelPrevious,n.labelPrevious),labelWeekNumber:ot(ei,e?.labelWeekNumber,n.labelWeekNumber),labelYearDropdown:ot(ni,e?.labelYearDropdown,n.labelYearDropdown),labelGrid:ot(Tr,e?.labelGrid,n.labelGrid),labelGridcell:ot(Gs,e?.labelGridcell,n.labelGridcell),labelNav:ot(Xs,e?.labelNav,n.labelNav),labelWeekNumberHeader:ot(ti,e?.labelWeekNumberHeader,n.labelWeekNumberHeader),labelWeekday:ot(Zs,e?.labelWeekday,n.labelWeekday)}}function V0(e,t,n,a,o){const{startOfMonth:s,startOfYear:i,endOfYear:l,eachMonthOfInterval:c,getMonth:d}=o;return c({start:i(e),end:l(e)}).map(m=>{const y=a.formatMonthDropdown(m,o),p=d(m),b=t&&m<s(t)||n&&m>s(n)||!1;return{value:p,label:y,disabled:b}})}function q0(e,t={},n={}){let a={...t?.[X.Day]};return Object.entries(e).filter(([,o])=>o===!0).forEach(([o])=>{a={...a,...n?.[o]}}),a}function G0(e,t,n,a){const o=a??e.today(),s=n?e.startOfBroadcastWeek(o,e):t?e.startOfISOWeek(o):e.startOfWeek(o),i=[];for(let l=0;l<7;l++){const c=e.addDays(s,l);i.push(c)}return i}function K0(e,t,n,a,o=!1){if(!e||!t)return;const{startOfYear:s,endOfYear:i,eachYearOfInterval:l,getYear:c}=a,d=s(e),u=i(t),f=l({start:d,end:u});return o&&f.reverse(),f.map(m=>{const y=n.formatYearDropdown(m,a);return{value:c(m),label:y,disabled:!1}})}function X0(e,t={}){const{weekStartsOn:n,locale:a}=t,o=n??a?.options?.weekStartsOn??0,s=l=>{const c=typeof l=="number"||typeof l=="string"?new Date(l):l;return new Ie(c.getFullYear(),c.getMonth(),c.getDate(),12,0,0,e)},i=l=>{const c=s(l);return new Date(c.getFullYear(),c.getMonth(),c.getDate(),0,0,0,0)};return{today:()=>s(Ie.tz(e)),newDate:(l,c,d)=>new Ie(l,c,d,12,0,0,e),startOfDay:l=>s(l),startOfWeek:(l,c)=>{const d=s(l),u=c?.weekStartsOn??o,f=(d.getDay()-u+7)%7;return d.setDate(d.getDate()-f),d},startOfISOWeek:l=>{const c=s(l),d=(c.getDay()-1+7)%7;return c.setDate(c.getDate()-d),c},startOfMonth:l=>{const c=s(l);return c.setDate(1),c},startOfYear:l=>{const c=s(l);return c.setMonth(0,1),c},endOfWeek:(l,c)=>{const d=s(l),m=(((c?.weekStartsOn??o)+6)%7-d.getDay()+7)%7;return d.setDate(d.getDate()+m),d},endOfISOWeek:l=>{const c=s(l),d=(7-c.getDay())%7;return c.setDate(c.getDate()+d),c},endOfMonth:l=>{const c=s(l);return c.setMonth(c.getMonth()+1,0),c},endOfYear:l=>{const c=s(l);return c.setMonth(11,31),c},eachMonthOfInterval:l=>{const c=s(l.start),d=s(l.end),u=[],f=new Ie(c.getFullYear(),c.getMonth(),1,12,0,0,e),m=d.getFullYear()*12+d.getMonth();for(;f.getFullYear()*12+f.getMonth()<=m;)u.push(new Ie(f,e)),f.setMonth(f.getMonth()+1,1);return u},addDays:(l,c)=>{const d=s(l);return d.setDate(d.getDate()+c),d},addWeeks:(l,c)=>{const d=s(l);return d.setDate(d.getDate()+c*7),d},addMonths:(l,c)=>{const d=s(l);return d.setMonth(d.getMonth()+c),d},addYears:(l,c)=>{const d=s(l);return d.setFullYear(d.getFullYear()+c),d},eachYearOfInterval:l=>{const c=s(l.start),d=s(l.end),u=[],f=new Ie(c.getFullYear(),0,1,12,0,0,e);for(;f.getFullYear()<=d.getFullYear();)u.push(new Ie(f,e)),f.setFullYear(f.getFullYear()+1,0,1);return u},getWeek:(l,c)=>{const d=i(l);return jr(d,{weekStartsOn:c?.weekStartsOn??o,firstWeekContainsDate:c?.firstWeekContainsDate??a?.options?.firstWeekContainsDate??1})},getISOWeek:l=>{const c=i(l);return Nr(c)},differenceInCalendarDays:(l,c)=>{const d=i(l),u=i(c);return _r(d,u)},differenceInCalendarMonths:(l,c)=>{const d=i(l),u=i(c);return As(d,u)}}}const En=e=>e instanceof HTMLElement?e:null,za=e=>[...e.querySelectorAll("[data-animated-month]")??[]],Q0=e=>En(e.querySelector("[data-animated-month]")),Ya=e=>En(e.querySelector("[data-animated-caption]")),Ha=e=>En(e.querySelector("[data-animated-weeks]")),J0=e=>En(e.querySelector("[data-animated-nav]")),Z0=e=>En(e.querySelector("[data-animated-weekdays]"));function eg(e,t,{classNames:n,months:a,focused:o,dateLib:s}){const i=h.useRef(null),l=h.useRef(a),c=h.useRef(!1);h.useLayoutEffect(()=>{const d=l.current;if(l.current=a,!t||!e.current||!(e.current instanceof HTMLElement)||a.length===0||d.length===0||a.length!==d.length)return;const u=s.isSameMonth(a[0].date,d[0].date),f=s.isAfter(a[0].date,d[0].date),m=f?n[Ke.caption_after_enter]:n[Ke.caption_before_enter],y=f?n[Ke.weeks_after_enter]:n[Ke.weeks_before_enter],p=i.current,b=e.current.cloneNode(!0);if(b instanceof HTMLElement?(za(b).forEach(N=>{if(!(N instanceof HTMLElement))return;const S=Q0(N);S&&N.contains(S)&&N.removeChild(S);const v=Ya(N);v&&v.classList.remove(m);const j=Ha(N);j&&j.classList.remove(y)}),i.current=b):i.current=null,c.current||u||o)return;const x=p instanceof HTMLElement?za(p):[],w=za(e.current);if(w?.every(k=>k instanceof HTMLElement)&&x&&x.every(k=>k instanceof HTMLElement)){c.current=!0,e.current.style.isolation="isolate";const k=J0(e.current);k&&(k.style.zIndex="1"),w.forEach((N,S)=>{const v=x[S];if(!v)return;N.style.position="relative",N.style.overflow="hidden";const j=Ya(N);j&&j.classList.add(m);const T=Ha(N);T&&T.classList.add(y);const _=()=>{c.current=!1,e.current&&(e.current.style.isolation=""),k&&(k.style.zIndex=""),j&&j.classList.remove(m),T&&T.classList.remove(y),N.style.position="",N.style.overflow="",N.contains(v)&&N.removeChild(v)};v.style.pointerEvents="none",v.style.position="absolute",v.style.overflow="hidden",v.setAttribute("aria-hidden","true");const M=Z0(v);M&&(M.style.opacity="0");const O=Ya(v);O&&(O.classList.add(f?n[Ke.caption_before_exit]:n[Ke.caption_after_exit]),O.addEventListener("animationend",_));const $=Ha(v);$&&$.classList.add(f?n[Ke.weeks_before_exit]:n[Ke.weeks_after_exit]),N.insertBefore(v,N.firstChild)})}})}function tg(e,t,n,a){const o=e[0],s=e[e.length-1],{ISOWeek:i,fixedWeeks:l,broadcastCalendar:c}=n??{},{addDays:d,differenceInCalendarDays:u,differenceInCalendarMonths:f,endOfBroadcastWeek:m,endOfISOWeek:y,endOfMonth:p,endOfWeek:b,isAfter:x,startOfBroadcastWeek:w,startOfISOWeek:k,startOfWeek:N}=a,S=c?w(o,a):i?k(o):N(o),v=c?m(s):i?y(p(s)):b(p(s)),j=t&&(c?m(t):i?y(t):b(t)),T=j&&x(v,j)?j:v,_=u(T,S),M=f(s,o)+1,O=[];for(let H=0;H<=_;H++){const L=d(S,H);O.push(L)}const Y=(c?35:42)*M;if(l&&O.length<Y){const H=Y-O.length;for(let L=0;L<H;L++){const D=d(O[O.length-1],1);O.push(D)}}return O}function ng(e){const t=[];return e.reduce((n,a)=>{const o=a.weeks.reduce((s,i)=>s.concat(i.days.slice()),t.slice());return n.concat(o.slice())},t.slice())}function ag(e,t,n,a){const{numberOfMonths:o=1}=n,s=[];for(let i=0;i<o;i++){const l=a.addMonths(e,i);if(t&&l>t)break;s.push(l)}return s}function jo(e,t,n,a){const{month:o,defaultMonth:s,today:i=a.today(),numberOfMonths:l=1}=e;let c=o||s||i;const{differenceInCalendarMonths:d,addMonths:u,startOfMonth:f}=a;if(n&&d(n,c)<l-1){const m=-1*(l-1);c=u(n,m)}return t&&d(c,t)<0&&(c=t),f(c)}function rg(e,t,n,a){const{addDays:o,endOfBroadcastWeek:s,endOfISOWeek:i,endOfMonth:l,endOfWeek:c,getISOWeek:d,getWeek:u,startOfBroadcastWeek:f,startOfISOWeek:m,startOfWeek:y}=a,p=e.reduce((b,x)=>{const w=n.broadcastCalendar?f(x,a):n.ISOWeek?m(x):y(x),k=n.broadcastCalendar?s(x):n.ISOWeek?i(l(x)):c(l(x)),N=t.filter(T=>T>=w&&T<=k),S=n.broadcastCalendar?35:42;if(n.fixedWeeks&&N.length<S){const T=t.filter(_=>{const M=S-N.length;return _>k&&_<=o(k,M)});N.push(...T)}const v=N.reduce((T,_)=>{const M=n.ISOWeek?d(_):u(_),O=T.find(Y=>Y.weekNumber===M),$=new zs(_,x,a);return O?O.days.push($):T.push(new Zh(M,[$])),T},[]),j=new Jh(x,v);return b.push(j),b},[]);return n.reverseMonths?p.reverse():p}function og(e,t){let{startMonth:n,endMonth:a}=e;const{startOfYear:o,startOfDay:s,startOfMonth:i,endOfMonth:l,addYears:c,endOfYear:d,newDate:u,today:f}=t,{fromYear:m,toYear:y,fromMonth:p,toMonth:b}=e;!n&&p&&(n=p),!n&&m&&(n=t.newDate(m,0,1)),!a&&b&&(a=b),!a&&y&&(a=u(y,11,31));const x=e.captionLayout==="dropdown"||e.captionLayout==="dropdown-years";return n?n=i(n):m?n=u(m,0,1):!n&&x&&(n=o(c(e.today??f(),-100))),a?a=l(a):y?a=u(y,11,31):!a&&x&&(a=d(e.today??f())),[n&&s(n),a&&s(a)]}function sg(e,t,n,a){if(n.disableNavigation)return;const{pagedNavigation:o,numberOfMonths:s=1}=n,{startOfMonth:i,addMonths:l,differenceInCalendarMonths:c}=a,d=o?s:1,u=i(e);if(!t)return l(u,d);if(!(c(t,e)<s))return l(u,d)}function ig(e,t,n,a){if(n.disableNavigation)return;const{pagedNavigation:o,numberOfMonths:s}=n,{startOfMonth:i,addMonths:l,differenceInCalendarMonths:c}=a,d=o?s??1:1,u=i(e);if(!t)return l(u,-d);if(!(c(u,t)<=0))return l(u,-d)}function lg(e){const t=[];return e.reduce((n,a)=>n.concat(a.weeks.slice()),t.slice())}function ga(e,t){const[n,a]=h.useState(e);return[t===void 0?n:t,a]}function cg(e,t){const[n,a]=og(e,t),{startOfMonth:o,endOfMonth:s}=t,i=jo(e,n,a,t),[l,c]=ga(i,e.month?i:void 0);h.useEffect(()=>{const S=jo(e,n,a,t);c(S)},[e.timeZone]);const{months:d,weeks:u,days:f,previousMonth:m,nextMonth:y}=h.useMemo(()=>{const S=ag(l,a,{numberOfMonths:e.numberOfMonths},t),v=tg(S,e.endMonth?s(e.endMonth):void 0,{ISOWeek:e.ISOWeek,fixedWeeks:e.fixedWeeks,broadcastCalendar:e.broadcastCalendar},t),j=rg(S,v,{broadcastCalendar:e.broadcastCalendar,fixedWeeks:e.fixedWeeks,ISOWeek:e.ISOWeek,reverseMonths:e.reverseMonths},t),T=lg(j),_=ng(j),M=ig(l,n,e,t),O=sg(l,a,e,t);return{months:j,weeks:T,days:_,previousMonth:M,nextMonth:O}},[t,l.getTime(),a?.getTime(),n?.getTime(),e.disableNavigation,e.broadcastCalendar,e.endMonth?.getTime(),e.fixedWeeks,e.ISOWeek,e.numberOfMonths,e.pagedNavigation,e.reverseMonths]),{disableNavigation:p,onMonthChange:b}=e,x=S=>u.some(v=>v.days.some(j=>j.isEqualTo(S))),w=S=>{if(p)return;let v=o(S);n&&v<o(n)&&(v=o(n)),a&&v>o(a)&&(v=o(a)),c(v),b?.(v)};return{months:d,weeks:u,days:f,navStart:n,navEnd:a,previousMonth:m,nextMonth:y,goToMonth:w,goToDay:S=>{x(S)||w(S.date)}}}var dt;(function(e){e[e.Today=0]="Today",e[e.Selected=1]="Selected",e[e.LastFocused=2]="LastFocused",e[e.FocusedModifier=3]="FocusedModifier"})(dt||(dt={}));function So(e){return!e[Ce.disabled]&&!e[Ce.hidden]&&!e[Ce.outside]}function dg(e,t,n,a){let o,s=-1;for(const i of e){const l=t(i);So(l)&&(l[Ce.focused]&&s<dt.FocusedModifier?(o=i,s=dt.FocusedModifier):a?.isEqualTo(i)&&s<dt.LastFocused?(o=i,s=dt.LastFocused):n(i.date)&&s<dt.Selected?(o=i,s=dt.Selected):l[Ce.today]&&s<dt.Today&&(o=i,s=dt.Today))}return o||(o=e.find(i=>So(t(i)))),o}function ug(e,t,n,a,o,s,i){const{ISOWeek:l,broadcastCalendar:c}=s,{addDays:d,addMonths:u,addWeeks:f,addYears:m,endOfBroadcastWeek:y,endOfISOWeek:p,endOfWeek:b,max:x,min:w,startOfBroadcastWeek:k,startOfISOWeek:N,startOfWeek:S}=i;let j={day:d,week:f,month:u,year:m,startOfWeek:T=>c?k(T,i):l?N(T):S(T),endOfWeek:T=>c?y(T):l?p(T):b(T)}[e](n,t==="after"?1:-1);return t==="before"&&a?j=x([a,j]):t==="after"&&o&&(j=w([o,j])),j}function ai(e,t,n,a,o,s,i,l=0){if(l>365)return;const c=ug(e,t,n.date,a,o,s,i),d=!!(s.disabled&&bt(c,s.disabled,i)),u=!!(s.hidden&&bt(c,s.hidden,i)),f=c,m=new zs(c,f,i);return!d&&!u?m:ai(e,t,m,a,o,s,i,l+1)}function fg(e,t,n,a,o){const{autoFocus:s}=e,[i,l]=h.useState(),c=dg(t.days,n,a||(()=>!1),i),[d,u]=h.useState(s?c:void 0);return{isFocusTarget:b=>!!c?.isEqualTo(b),setFocused:u,focused:d,blur:()=>{l(d),u(void 0)},moveFocus:(b,x)=>{if(!d)return;const w=ai(b,x,d,t.navStart,t.navEnd,e,o);w&&(e.disableNavigation&&!t.days.some(N=>N.isEqualTo(w))||(t.goToDay(w),u(w)))}}}function mg(e,t){const{selected:n,required:a,onSelect:o}=e,[s,i]=ga(n,o?n:void 0),l=o?n:s,{isSameDay:c}=t,d=y=>l?.some(p=>c(p,y))??!1,{min:u,max:f}=e;return{selected:l,select:(y,p,b)=>{let x=[...l??[]];if(d(y)){if(l?.length===u||a&&l?.length===1)return;x=l?.filter(w=>!c(w,y))}else l?.length===f?x=[y]:x=[...x,y];return o||i(x),o?.(x,y,p,b),x},isSelected:d}}function hg(e,t,n=0,a=0,o=!1,s=mt){const{from:i,to:l}=t||{},{isSameDay:c,isAfter:d,isBefore:u}=s;let f;if(!i&&!l)f={from:e,to:n>0?void 0:e};else if(i&&!l)c(i,e)?n===0?f={from:i,to:e}:o?f={from:i,to:void 0}:f=void 0:u(e,i)?f={from:e,to:i}:f={from:i,to:e};else if(i&&l)if(c(i,e)&&c(l,e))o?f={from:i,to:l}:f=void 0;else if(c(i,e))f={from:i,to:n>0?void 0:e};else if(c(l,e))f={from:e,to:n>0?void 0:e};else if(u(e,i))f={from:e,to:l};else if(d(e,i))f={from:i,to:e};else if(d(e,l))f={from:i,to:e};else throw new Error("Invalid range");if(f?.from&&f?.to){const m=s.differenceInCalendarDays(f.to,f.from);a>0&&m>a?f={from:e,to:void 0}:n>1&&m<n&&(f={from:e,to:void 0})}return f}function gg(e,t,n=mt){const a=Array.isArray(t)?t:[t];let o=e.from;const s=n.differenceInCalendarDays(e.to,e.from),i=Math.min(s,6);for(let l=0;l<=i;l++){if(a.includes(o.getDay()))return!0;o=n.addDays(o,1)}return!1}function Mo(e,t,n=mt){return xt(e,t.from,!1,n)||xt(e,t.to,!1,n)||xt(t,e.from,!1,n)||xt(t,e.to,!1,n)}function yg(e,t,n=mt){const a=Array.isArray(t)?t:[t];if(a.filter(l=>typeof l!="function").some(l=>typeof l=="boolean"?l:n.isDate(l)?xt(e,l,!1,n):Us(l,n)?l.some(c=>xt(e,c,!1,n)):ha(l)?l.from&&l.to?Mo(e,{from:l.from,to:l.to},n):!1:Hs(l)?gg(e,l.dayOfWeek,n):Sr(l)?n.isAfter(l.before,l.after)?Mo(e,{from:n.addDays(l.after,1),to:n.addDays(l.before,-1)},n):bt(e.from,l,n)||bt(e.to,l,n):Mr(l)||Cr(l)?bt(e.from,l,n)||bt(e.to,l,n):!1))return!0;const i=a.filter(l=>typeof l=="function");if(i.length){let l=e.from;const c=n.differenceInCalendarDays(e.to,e.from);for(let d=0;d<=c;d++){if(i.some(u=>u(l)))return!0;l=n.addDays(l,1)}}return!1}function pg(e,t){const{disabled:n,excludeDisabled:a,resetOnSelect:o,selected:s,required:i,onSelect:l}=e,[c,d]=ga(s,l?s:void 0),u=l?s:c;return{selected:u,select:(y,p,b)=>{const{min:x,max:w}=e;let k;if(y){const N=u?.from,S=u?.to,v=!!N&&!!S,j=!!N&&!!S&&t.isSameDay(N,S)&&t.isSameDay(y,N);o&&(v||!u?.from)?!i&&j?k=void 0:k={from:y,to:void 0}:k=hg(y,u,x,w,i,t)}return a&&n&&k?.from&&k.to&&yg({from:k.from,to:k.to},n,t)&&(k.from=y,k.to=void 0),l||d(k),l?.(k,y,p,b),k},isSelected:y=>u&&xt(u,y,!1,t)}}function xg(e,t){const{selected:n,required:a,onSelect:o}=e,[s,i]=ga(n,o?n:void 0),l=o?n:s,{isSameDay:c}=t;return{selected:l,select:(f,m,y)=>{let p=f;return!a&&l&&l&&c(f,l)&&(p=void 0),o||i(p),o?.(p,f,m,y),p},isSelected:f=>l?c(l,f):!1}}function bg(e,t){const n=xg(e,t),a=mg(e,t),o=pg(e,t);switch(e.mode){case"single":return n;case"multiple":return a;case"range":return o;default:return}}function tt(e,t){return e instanceof Ie&&e.timeZone===t?e:new Ie(e,t)}function nn(e,t,n){return tt(e,t)}function Co(e,t,n){return typeof e=="boolean"||typeof e=="function"?e:e instanceof Date?nn(e,t):Array.isArray(e)?e.map(a=>a instanceof Date?nn(a,t):a):ha(e)?{...e,from:e.from?tt(e.from,t):e.from,to:e.to?tt(e.to,t):e.to}:Sr(e)?{before:nn(e.before,t),after:nn(e.after,t)}:Mr(e)?{after:nn(e.after,t)}:Cr(e)?{before:nn(e.before,t)}:e}function Ua(e,t,n){return e&&(Array.isArray(e)?e.map(a=>Co(a,t)):Co(e,t))}function kg(e){let t=e;const n=t.timeZone;if(n&&(t={...e,timeZone:n},t.today&&(t.today=tt(t.today,n)),t.month&&(t.month=tt(t.month,n)),t.defaultMonth&&(t.defaultMonth=tt(t.defaultMonth,n)),t.startMonth&&(t.startMonth=tt(t.startMonth,n)),t.endMonth&&(t.endMonth=tt(t.endMonth,n)),t.mode==="single"&&t.selected?t.selected=tt(t.selected,n):t.mode==="multiple"&&t.selected?t.selected=t.selected?.map(I=>tt(I,n)):t.mode==="range"&&t.selected&&(t.selected={from:t.selected.from?tt(t.selected.from,n):t.selected.from,to:t.selected.to?tt(t.selected.to,n):t.selected.to}),t.disabled!==void 0&&(t.disabled=Ua(t.disabled,n)),t.hidden!==void 0&&(t.hidden=Ua(t.hidden,n)),t.modifiers)){const I={};Object.keys(t.modifiers).forEach(ue=>{I[ue]=Ua(t.modifiers?.[ue],n)}),t.modifiers=I}const{components:a,formatters:o,labels:s,dateLib:i,locale:l,classNames:c}=h.useMemo(()=>{const I={...Bs,...t.locale},ue=t.broadcastCalendar?1:t.weekStartsOn,V=t.noonSafe&&t.timeZone?X0(t.timeZone,{weekStartsOn:ue,locale:I}):void 0,ee=t.dateLib&&V?{...V,...t.dateLib}:t.dateLib??V,ke=new Xe({locale:I,weekStartsOn:ue,firstWeekContainsDate:t.firstWeekContainsDate,useAdditionalWeekYearTokens:t.useAdditionalWeekYearTokens,useAdditionalDayOfYearTokens:t.useAdditionalDayOfYearTokens,timeZone:t.timeZone,numerals:t.numerals},ee);return{dateLib:ke,components:D0(t.components),formatters:R0(t.formatters),labels:U0(t.labels,ke.options),locale:I,classNames:{...P0(),...t.classNames}}},[t.locale,t.broadcastCalendar,t.weekStartsOn,t.firstWeekContainsDate,t.useAdditionalWeekYearTokens,t.useAdditionalDayOfYearTokens,t.timeZone,t.numerals,t.dateLib,t.noonSafe,t.components,t.formatters,t.labels,t.classNames]);t.today||(t={...t,today:i.today()});const{captionLayout:d,mode:u,navLayout:f,numberOfMonths:m=1,onDayBlur:y,onDayClick:p,onDayFocus:b,onDayKeyDown:x,onDayMouseEnter:w,onDayMouseLeave:k,onNextClick:N,onPrevClick:S,showWeekNumber:v,styles:j}=t,{formatCaption:T,formatDay:_,formatMonthDropdown:M,formatWeekNumber:O,formatWeekNumberHeader:$,formatWeekdayName:Y,formatYearDropdown:H}=o,L=cg(t,i),{days:D,months:F,navStart:P,navEnd:E,previousMonth:B,nextMonth:R,goToMonth:z}=L,U=M0(D,t,P,E,i),{isSelected:se,select:ce,selected:de}=bg(t,i)??{},{blur:ye,focused:fe,isFocusTarget:ie,moveFocus:ae,setFocused:q}=fg(t,L,U,se??(()=>!1),i),{labelDayButton:J,labelGridcell:A,labelGrid:G,labelMonthDropdown:ne,labelNav:Z,labelPrevious:te,labelNext:be,labelWeekday:Se,labelWeekNumber:Me,labelWeekNumberHeader:le,labelYearDropdown:xe}=s,me=h.useMemo(()=>G0(i,t.ISOWeek,t.broadcastCalendar,t.today),[i,t.ISOWeek,t.broadcastCalendar,t.today]),Ee=u!==void 0||p!==void 0,Re=h.useCallback(()=>{B&&(z(B),S?.(B))},[B,z,S]),Ae=h.useCallback(()=>{R&&(z(R),N?.(R))},[z,R,N]),Tt=h.useCallback((I,ue)=>V=>{V.preventDefault(),V.stopPropagation(),q(I),!ue.disabled&&(ce?.(I.date,ue,V),p?.(I.date,ue,V))},[ce,p,q]),Te=h.useCallback((I,ue)=>V=>{q(I),b?.(I.date,ue,V)},[b,q]),Pe=h.useCallback((I,ue)=>V=>{ye(),y?.(I.date,ue,V)},[ye,y]),ze=h.useCallback((I,ue)=>V=>{const ee={ArrowLeft:[V.shiftKey?"month":"day",t.dir==="rtl"?"after":"before"],ArrowRight:[V.shiftKey?"month":"day",t.dir==="rtl"?"before":"after"],ArrowDown:[V.shiftKey?"year":"week","after"],ArrowUp:[V.shiftKey?"year":"week","before"],PageUp:[V.shiftKey?"year":"month","before"],PageDown:[V.shiftKey?"year":"month","after"],Home:["startOfWeek","before"],End:["endOfWeek","after"]};if(ee[V.key]){V.preventDefault(),V.stopPropagation();const[ke,re]=ee[V.key];ae(ke,re)}x?.(I.date,ue,V)},[ae,x,t.dir]),Je=h.useCallback((I,ue)=>V=>{w?.(I.date,ue,V)},[w]),Pt=h.useCallback((I,ue)=>V=>{k?.(I.date,ue,V)},[k]),kt=h.useCallback(I=>ue=>{const V=Number(ue.target.value),ee=i.setMonth(i.startOfMonth(I),V);z(ee)},[i,z]),Ze=h.useCallback(I=>ue=>{const V=Number(ue.target.value),ee=i.setYear(i.startOfMonth(I),V);z(ee)},[i,z]),{className:hn,style:it}=h.useMemo(()=>({className:[c[X.Root],t.className].filter(Boolean).join(" "),style:{...j?.[X.Root],...t.style}}),[c,t.className,t.style,j]),gn=T0(t),Yt=h.useRef(null);eg(Yt,!!t.animate,{classNames:c,months:F,focused:fe,dateLib:i});const wt={dayPickerProps:t,selected:de,select:ce,isSelected:se,months:F,nextMonth:R,previousMonth:B,goToMonth:z,getModifiers:U,components:a,classNames:c,styles:j,labels:s,formatters:o};return W.createElement(Ys.Provider,{value:wt},W.createElement(a.Root,{rootRef:t.animate?Yt:void 0,className:hn,style:it,dir:t.dir,id:t.id,lang:t.lang??l.code,nonce:t.nonce,title:t.title,role:t.role,"aria-label":t["aria-label"],"aria-labelledby":t["aria-labelledby"],...gn},W.createElement(a.Months,{className:c[X.Months],style:j?.[X.Months]},!t.hideNavigation&&!f&&W.createElement(a.Nav,{"data-animated-nav":t.animate?"true":void 0,className:c[X.Nav],style:j?.[X.Nav],"aria-label":Z(),onPreviousClick:Re,onNextClick:Ae,previousMonth:B,nextMonth:R}),F.map((I,ue)=>W.createElement(a.Month,{"data-animated-month":t.animate?"true":void 0,className:c[X.Month],style:j?.[X.Month],key:ue,displayIndex:ue,calendarMonth:I},f==="around"&&!t.hideNavigation&&ue===0&&W.createElement(a.PreviousMonthButton,{type:"button",className:c[X.PreviousMonthButton],tabIndex:B?void 0:-1,"aria-disabled":B?void 0:!0,"aria-label":te(B),onClick:Re,"data-animated-button":t.animate?"true":void 0},W.createElement(a.Chevron,{disabled:B?void 0:!0,className:c[X.Chevron],orientation:t.dir==="rtl"?"right":"left"})),W.createElement(a.MonthCaption,{"data-animated-caption":t.animate?"true":void 0,className:c[X.MonthCaption],style:j?.[X.MonthCaption],calendarMonth:I,displayIndex:ue},d?.startsWith("dropdown")?W.createElement(a.DropdownNav,{className:c[X.Dropdowns],style:j?.[X.Dropdowns]},(()=>{const V=d==="dropdown"||d==="dropdown-months"?W.createElement(a.MonthsDropdown,{key:"month",className:c[X.MonthsDropdown],"aria-label":ne(),classNames:c,components:a,disabled:!!t.disableNavigation,onChange:kt(I.date),options:V0(I.date,P,E,o,i),style:j?.[X.Dropdown],value:i.getMonth(I.date)}):W.createElement("span",{key:"month"},M(I.date,i)),ee=d==="dropdown"||d==="dropdown-years"?W.createElement(a.YearsDropdown,{key:"year",className:c[X.YearsDropdown],"aria-label":xe(i.options),classNames:c,components:a,disabled:!!t.disableNavigation,onChange:Ze(I.date),options:K0(P,E,o,i,!!t.reverseYears),style:j?.[X.Dropdown],value:i.getYear(I.date)}):W.createElement("span",{key:"year"},H(I.date,i));return i.getMonthYearOrder()==="year-first"?[ee,V]:[V,ee]})(),W.createElement("span",{role:"status","aria-live":"polite",style:{border:0,clip:"rect(0 0 0 0)",height:"1px",margin:"-1px",overflow:"hidden",padding:0,position:"absolute",width:"1px",whiteSpace:"nowrap",wordWrap:"normal"}},T(I.date,i.options,i))):W.createElement(a.CaptionLabel,{className:c[X.CaptionLabel],role:"status","aria-live":"polite"},T(I.date,i.options,i))),f==="around"&&!t.hideNavigation&&ue===m-1&&W.createElement(a.NextMonthButton,{type:"button",className:c[X.NextMonthButton],tabIndex:R?void 0:-1,"aria-disabled":R?void 0:!0,"aria-label":be(R),onClick:Ae,"data-animated-button":t.animate?"true":void 0},W.createElement(a.Chevron,{disabled:R?void 0:!0,className:c[X.Chevron],orientation:t.dir==="rtl"?"left":"right"})),ue===m-1&&f==="after"&&!t.hideNavigation&&W.createElement(a.Nav,{"data-animated-nav":t.animate?"true":void 0,className:c[X.Nav],style:j?.[X.Nav],"aria-label":Z(),onPreviousClick:Re,onNextClick:Ae,previousMonth:B,nextMonth:R}),W.createElement(a.MonthGrid,{role:"grid","aria-multiselectable":u==="multiple"||u==="range","aria-label":G(I.date,i.options,i)||void 0,className:c[X.MonthGrid],style:j?.[X.MonthGrid]},!t.hideWeekdays&&W.createElement(a.Weekdays,{"data-animated-weekdays":t.animate?"true":void 0,className:c[X.Weekdays],style:j?.[X.Weekdays]},v&&W.createElement(a.WeekNumberHeader,{"aria-label":le(i.options),className:c[X.WeekNumberHeader],style:j?.[X.WeekNumberHeader],scope:"col"},$()),me.map(V=>W.createElement(a.Weekday,{"aria-label":Se(V,i.options,i),className:c[X.Weekday],key:String(V),style:j?.[X.Weekday],scope:"col"},Y(V,i.options,i)))),W.createElement(a.Weeks,{"data-animated-weeks":t.animate?"true":void 0,className:c[X.Weeks],style:j?.[X.Weeks]},I.weeks.map(V=>W.createElement(a.Week,{className:c[X.Week],key:V.weekNumber,style:j?.[X.Week],week:V},v&&W.createElement(a.WeekNumber,{week:V,style:j?.[X.WeekNumber],"aria-label":Me(V.weekNumber,{locale:l}),className:c[X.WeekNumber],scope:"row",role:"rowheader"},O(V.weekNumber,i)),V.days.map(ee=>{const{date:ke}=ee,re=U(ee);if(re[Ce.focused]=!re.hidden&&!!fe?.isEqualTo(ee),re[st.selected]=se?.(ke)||re.selected,ha(de)){const{from:He,to:ht}=de;re[st.range_start]=!!(He&&ht&&i.isSameDay(ke,He)),re[st.range_end]=!!(He&&ht&&i.isSameDay(ke,ht)),re[st.range_middle]=xt(de,ke,!0,i)}const Ht=q0(re,j,t.modifiersStyles),Ut=C0(re,c,t.modifiersClassNames),Vt=!Ee&&!re.hidden?A(ke,re,i.options,i):void 0;return W.createElement(a.Day,{key:`${ee.isoDate}_${ee.displayMonthId}`,day:ee,modifiers:re,className:Ut.join(" "),style:Ht,role:"gridcell","aria-selected":re.selected||void 0,"aria-label":Vt,"data-day":ee.isoDate,"data-month":ee.outside?ee.dateMonthId:void 0,"data-selected":re.selected||void 0,"data-disabled":re.disabled||void 0,"data-hidden":re.hidden||void 0,"data-outside":ee.outside||void 0,"data-focused":re.focused||void 0,"data-today":re.today||void 0},!re.hidden&&Ee?W.createElement(a.DayButton,{className:c[X.DayButton],style:j?.[X.DayButton],type:"button",day:ee,modifiers:re,disabled:!re.focused&&re.disabled||void 0,"aria-disabled":re.focused&&re.disabled||void 0,tabIndex:ie(ee)?0:-1,"aria-label":J(ke,re,i.options,i),onClick:Tt(ee,re),onBlur:Pe(ee,re),onFocus:Te(ee,re),onKeyDown:ze(ee,re),onMouseEnter:Je(ee,re),onMouseLeave:Pt(ee,re)},_(ke,i.options,i)):!re.hidden&&_(ee.date,i.options,i))})))))))),t.footer&&W.createElement(a.Footer,{className:c[X.Footer],style:j?.[X.Footer],role:"status","aria-live":"polite"},t.footer)))}const wg={en:Mt,"zh-CN":wh,"zh-TW":Qh,ja:gm,ko:Um};function ri(e){return wg[e]||Mt}function Do(e,t){if(!e)return"";const n=e.split("-");if(n.length!==3)return e;const a=new Date(Number(n[0]),Number(n[1])-1,Number(n[2]));return Number.isFinite(a.getTime())?ft(a,"MMM d",t?{locale:t}:void 0):e}function fr({from:e,to:t,onApply:n,onCancel:a}){const o=h.useMemo(()=>{const u={from:void 0,to:void 0};if(e){const f=e.split("-");u.from=new Date(Number(f[0]),Number(f[1])-1,Number(f[2]))}if(t){const f=t.split("-");u.to=new Date(Number(f[0]),Number(f[1])-1,Number(f[2]))}return u},[e,t]),[s,i]=h.useState(o),l=ri(us()),c=()=>{if(!s?.from)return;const u=ft(s.from,"yyyy-MM-dd"),f=s.to?ft(s.to,"yyyy-MM-dd"):u;n?.(u,f)},d=!!s?.from;return r.jsxs("div",{className:"p-4",children:[r.jsx(kg,{mode:"range",locale:l,selected:s,onSelect:i,numberOfMonths:2,showOutsideDays:!1,classNames:{root:"rdp-oai",months:"flex gap-4",month:"space-y-3",month_caption:"flex justify-center items-center h-8",caption_label:"text-sm font-medium text-oai-black dark:text-oai-white",nav:"flex items-center justify-between absolute inset-x-0 top-0 px-2",button_previous:"inline-flex items-center justify-center w-7 h-7 rounded-md text-oai-gray-500 hover:text-oai-black dark:text-oai-gray-400 dark:hover:text-oai-white hover:bg-oai-gray-100 dark:hover:bg-oai-gray-800 transition-colors",button_next:"inline-flex items-center justify-center w-7 h-7 rounded-md text-oai-gray-500 hover:text-oai-black dark:text-oai-gray-400 dark:hover:text-oai-white hover:bg-oai-gray-100 dark:hover:bg-oai-gray-800 transition-colors",chevron:"w-4 h-4 fill-current",month_grid:"border-collapse",weekdays:"flex",weekday:"w-9 text-center text-xs font-medium text-oai-gray-400 dark:text-oai-gray-500 py-1",week:"flex",day:"w-9 h-9 text-center text-sm p-0 relative",day_button:"w-full h-full inline-flex items-center justify-center rounded-md transition-colors hover:bg-oai-gray-100 dark:hover:bg-oai-gray-800 text-oai-black dark:text-oai-white cursor-pointer rdp-day-btn",today:"font-bold",selected:"rdp-selected",range_start:"rdp-selected rdp-range-start",range_end:"rdp-selected rdp-range-end",range_middle:"rdp-range-mid",outside:"text-oai-gray-300 dark:text-oai-gray-600",disabled:"text-oai-gray-300 dark:text-oai-gray-600 cursor-not-allowed",hidden:"invisible"},styles:{months:{position:"relative"}}}),r.jsxs("div",{className:"flex items-center justify-end gap-2 mt-4 pt-3 border-t border-oai-gray-200 dark:border-oai-gray-700",children:[d&&s.from&&r.jsxs("span",{className:"text-xs text-oai-gray-500 dark:text-oai-gray-400 mr-auto",children:[ft(s.from,"MMM d, yyyy",{locale:l}),s.to&&s.to.getTime()!==s.from.getTime()?` — ${ft(s.to,"MMM d, yyyy",{locale:l})}`:""]}),r.jsx(or,{variant:"secondary",size:"sm",onClick:a,children:g("shared.action.cancel")}),r.jsx(or,{variant:"primary",size:"sm",onClick:c,disabled:!d,children:g("shared.action.apply")})]})]})}const vg=[{period:"day",labelKey:"trend.zoom.gran.30min"},{period:"month",labelKey:"trend.zoom.gran.day"},{period:"total",labelKey:"trend.zoom.gran.month"}],_g=24,an="#10b981";function To(e){return e==="day"?"day":e==="total"?"total":"month"}function mr(e,t){const n=/^(\d{4})-(\d{2})-(\d{2})$/.exec(String(e||""));if(!n)return e;const a=new Date(Date.UTC(Number(n[1]),Number(n[2])-1,Number(n[3])));a.setUTCDate(a.getUTCDate()+t);const o=a.getUTCFullYear(),s=String(a.getUTCMonth()+1).padStart(2,"0"),i=String(a.getUTCDate()).padStart(2,"0");return`${o}-${s}-${i}`}function Ng(e,t){const n=/^(\d{4})-(\d{2})-(\d{2})$/.exec(String(e||""));if(!n)return e;const a=new Date(Date.UTC(Number(n[1]),Number(n[2])-1+t,Number(n[3]))),o=a.getUTCFullYear(),s=String(a.getUTCMonth()+1).padStart(2,"0"),i=String(a.getUTCDate()).padStart(2,"0");return`${o}-${s}-${i}`}function jg(e,t){const n=/^(\d{4})-(\d{2})/.exec(String(e||"")),a=/^(\d{4})-(\d{2})/.exec(String(t||""));if(!n||!a)return _g;const o=Number(a[1])*12+Number(a[2])-(Number(n[1])*12+Number(n[2]))+1;return Math.max(1,o)}function Po(e,t){return t?e==="total"?{from:Ng(t,-23),to:t}:{from:mr(t,-29),to:t}:{from:null,to:null}}function Sg(e){const t=/^\d{4}-(\d{2}-\d{2})T(\d{2}:\d{2})/.exec(String(e||""));return t?`${t[1]} ${t[2]}`:e||""}function Qn({label:e,value:t,sub:n,title:a}){return r.jsxs("div",{className:"flex flex-col gap-1.5 group",children:[r.jsx("span",{className:"text-[9px] font-bold uppercase tracking-widest font-mono text-zinc-400 dark:text-zinc-500",children:e}),r.jsx("span",{title:a,className:"text-xl font-black font-mono text-zinc-900 dark:text-zinc-50 tracking-tight leading-none tabular-nums transition-transform duration-200 group-hover:-translate-y-[1px]",children:t}),n?r.jsx("span",{className:"text-[10px] font-bold text-zinc-400 dark:text-zinc-500 font-mono tabular-nums",children:n}):null]})}function Mg({zoomConfig:e,period:t,from:n,to:a,timeZoneLabel:o,onClose:s,renderChart:i}){const{currency:l,rate:c}=un(),{formatTokens:d,formatTokensTooltip:u}=Qe(),f=W.useMemo(()=>Dn({timeZone:e?.timeZone,offsetMinutes:e?.tzOffsetMinutes,date:e?.now||new Date})||a||n||null,[e?.timeZone,e?.tzOffsetMinutes,e?.now,a,n]),[m,y]=W.useState(()=>To(t)),[p,b]=W.useState(f),[x,w]=W.useState(()=>Po(To(t),f)),[k,N]=W.useState(!1),[S,v]=W.useState(!1),[j,T]=W.useState(!1),_=f,M=z=>{y(z),z!=="day"&&w(Po(z,f))},O=W.useMemo(()=>m==="day"?{from:p,to:p,months:void 0}:m==="total"?{from:void 0,to:x.to,months:jg(x.from,x.to)}:{from:x.from,to:x.to,months:void 0},[m,p,x]),{rows:$,from:Y,to:H,loading:L}=ws({...e,period:m,from:O.from,to:O.to,months:O.months}),D=W.useMemo(()=>cu($),[$]),F=W.useCallback(()=>T(!0),[]),P=z=>{z.target===z.currentTarget&&j&&s()};if(W.useEffect(()=>{const z=U=>{U.key==="Escape"&&F()};return window.addEventListener("keydown",z),()=>window.removeEventListener("keydown",z)},[F]),typeof document>"u")return null;const E=m==="day"&&!!p,B=m==="day"&&!!p&&(!_||p<_),R=D.totalCostUsd!=null?cn(D.totalCostUsd,{currency:l,rate:c}):null;return r.jsxs("div",{onAnimationEnd:P,onClick:z=>{z.target===z.currentTarget&&F()},className:Fe("fixed inset-0 z-50 flex items-center justify-center p-3 md:p-6 backdrop-blur-md bg-black/15 dark:bg-black/40",j?"animate-tt-fade-out":"animate-tt-fade-in"),children:[r.jsx("style",{children:`
|
|
2
|
+
@keyframes tt-fade-in { from { opacity: 0; } to { opacity: 1; } }
|
|
3
|
+
@keyframes tt-fade-out { from { opacity: 1; } to { opacity: 0; } }
|
|
4
|
+
@keyframes tt-modal-entrance {
|
|
5
|
+
from { opacity: 0; transform: scale(0.96) translateY(10px); }
|
|
6
|
+
to { opacity: 1; transform: scale(1) translateY(0); }
|
|
7
|
+
}
|
|
8
|
+
@keyframes tt-modal-exit {
|
|
9
|
+
from { opacity: 1; transform: scale(1) translateY(0); }
|
|
10
|
+
to { opacity: 0; transform: scale(0.96) translateY(10px); }
|
|
11
|
+
}
|
|
12
|
+
.animate-tt-fade-in { animation: tt-fade-in 0.2s cubic-bezier(0.16, 1, 0.3, 1) forwards; }
|
|
13
|
+
.animate-tt-fade-out { animation: tt-fade-out 0.2s cubic-bezier(0.16, 1, 0.3, 1) forwards; }
|
|
14
|
+
.animate-tt-modal { animation: tt-modal-entrance 0.3s cubic-bezier(0.34, 1.3, 0.64, 1) forwards; }
|
|
15
|
+
.animate-tt-modal-exit { animation: tt-modal-exit 0.2s cubic-bezier(0.16, 1, 0.3, 1) forwards; }
|
|
16
|
+
@media (prefers-reduced-motion: reduce) {
|
|
17
|
+
.animate-tt-fade-in, .animate-tt-fade-out, .animate-tt-modal, .animate-tt-modal-exit { animation: none; }
|
|
18
|
+
}
|
|
19
|
+
`}),r.jsxs("div",{className:Fe("relative w-full max-w-6xl h-[88vh] backdrop-blur-2xl bg-white/90 dark:bg-oai-gray-900/90 border border-oai-gray-200/50 dark:border-white/10 shadow-2xl rounded-2xl flex flex-col md:flex-row overflow-hidden",j?"animate-tt-modal-exit":"animate-tt-modal"),children:[r.jsx("button",{type:"button",onClick:F,"aria-label":g("trend.zoom.close_aria"),className:"absolute top-4 right-4 z-50 p-2 rounded-full border border-oai-gray-200/60 dark:border-oai-gray-800/60 bg-white/50 dark:bg-oai-gray-900/50 text-oai-gray-500 dark:text-oai-gray-400 hover:text-oai-gray-900 dark:hover:text-white hover:rotate-90 hover:scale-105 active:scale-95 transition-all duration-300",children:r.jsx(ua,{size:16})}),r.jsxs("div",{className:"w-full md:w-[320px] shrink-0 border-b md:border-b-0 md:border-r border-zinc-200/50 dark:border-zinc-800/40 p-5 md:p-6 flex flex-col gap-6 overflow-y-auto backdrop-blur-md bg-zinc-50/50 dark:bg-zinc-950/50",children:[r.jsxs("div",{children:[r.jsxs("div",{className:"flex items-center gap-1.5 select-none",children:[r.jsxs("span",{className:"relative flex h-1.5 w-1.5",children:[r.jsx("span",{className:"animate-ping absolute inline-flex h-full w-full rounded-full opacity-75",style:{backgroundColor:an}}),r.jsx("span",{className:"relative inline-flex rounded-full h-1.5 w-1.5",style:{backgroundColor:an}})]}),r.jsx("span",{className:"text-[9px] font-extrabold uppercase tracking-widest font-mono text-zinc-400 dark:text-zinc-500",children:g("trend.zoom.badge")})]}),r.jsx("h4",{className:"text-xl font-black text-zinc-900 dark:text-zinc-50 tracking-tight leading-none mt-2 select-none",children:g("trend.monitor.label")}),o?r.jsx("p",{className:"text-[10px] text-zinc-400 dark:text-zinc-500 mt-1.5 font-mono select-none",children:o}):null,r.jsx("p",{className:"text-[11px] leading-relaxed text-zinc-400 dark:text-zinc-500 mt-2 font-normal select-none",children:g("trend.zoom.desc")})]}),r.jsxs("div",{className:"grid grid-cols-2 gap-x-5 gap-y-5 border-y border-zinc-200/50 dark:border-zinc-800/50 py-5 select-none",children:[r.jsx(Qn,{label:g("trend.zoom.stats.tokens"),value:d(D.totalTokens),title:u(D.totalTokens)}),R?r.jsx(Qn,{label:g("trend.zoom.stats.cost"),value:R}):null,r.jsx(Qn,{label:g("trend.zoom.stats.conversations"),value:D.conversationCount.toLocaleString()}),D.peak?r.jsx(Qn,{label:g("trend.zoom.stats.peak"),value:d(D.peak.value),title:u(D.peak.value),sub:Sg(D.peak.label)}):null]}),r.jsxs("div",{className:"flex flex-col gap-2 select-none",children:[r.jsxs("div",{className:"flex items-center gap-1.5",children:[r.jsx(Dc,{size:11,style:{color:an}}),r.jsx("span",{className:"text-[9px] font-extrabold uppercase tracking-widest font-mono",style:{color:an},children:g("trend.zoom.insight_badge")})]}),r.jsxs("div",{className:"pl-3.5 border-l-2 relative",style:{borderColor:an},children:[r.jsx("div",{className:"absolute inset-y-0 left-0 w-[3px] blur-[2px] opacity-15 pointer-events-none rounded-full",style:{backgroundColor:an}}),r.jsx("p",{className:"text-[11px] leading-relaxed text-zinc-600 dark:text-zinc-400 font-normal",children:g(uu(D),{active:D.activeBuckets,peak:d(D.peak?.value||0)})})]})]})]}),r.jsxs("div",{className:"flex-1 min-w-0 flex flex-col p-5 md:p-6 overflow-y-auto",children:[r.jsxs("div",{className:"flex items-center justify-between gap-3 mb-6 pr-10",children:[r.jsx("div",{role:"tablist","aria-label":g("trend.zoom.gran.aria"),className:"flex rounded-md border border-oai-gray-200 dark:border-oai-gray-800 p-0.5 text-[11px]",children:vg.map(z=>r.jsx("button",{type:"button",role:"tab","aria-selected":m===z.period,onClick:()=>M(z.period),className:Fe("px-2.5 py-1 rounded transition-colors",m===z.period?"bg-oai-gray-100 text-oai-black dark:bg-oai-gray-800 dark:text-oai-white font-medium":"text-oai-gray-500 dark:text-oai-gray-400 hover:text-oai-gray-700 dark:hover:text-oai-gray-200"),children:g(z.labelKey)},z.period))}),m==="day"?r.jsxs("div",{className:"flex items-center gap-1.5",children:[r.jsx("button",{type:"button",onClick:()=>E&&b(z=>mr(z,-1)),disabled:!E,"aria-label":g("trend.zoom.prev_day"),className:"p-1 rounded-md text-oai-gray-400 hover:text-oai-gray-700 dark:hover:text-oai-gray-200 hover:bg-oai-gray-100 dark:hover:bg-oai-gray-800 disabled:opacity-30 disabled:pointer-events-none transition-colors",children:r.jsx(qc,{size:16})}),r.jsxs(sr,{open:k,onOpenChange:N,children:[r.jsx(ir,{"aria-label":g("trend.zoom.pick_day"),className:"text-[12px] font-medium text-oai-gray-700 dark:text-oai-gray-200 tabular-nums min-w-[100px] text-center px-2 py-0.5 rounded-md border border-oai-gray-200 dark:border-oai-gray-800 hover:bg-oai-gray-100 dark:hover:bg-oai-gray-800 transition-colors",children:p||"—"}),r.jsx(lr,{children:r.jsx(cr,{sideOffset:8,side:"bottom",align:"center",className:"!z-[9999]",children:r.jsx(dr,{className:"bg-white dark:bg-oai-gray-900 border border-oai-gray-200 dark:border-oai-gray-700 rounded-xl shadow-lg",children:r.jsx(fr,{from:p,to:p,onApply:z=>{z&&b(z),N(!1)},onCancel:()=>N(!1)})})})})]}),r.jsx("button",{type:"button",onClick:()=>B&&b(z=>mr(z,1)),disabled:!B,"aria-label":g("trend.zoom.next_day"),className:"p-1 rounded-md text-oai-gray-400 hover:text-oai-gray-700 dark:hover:text-oai-gray-200 hover:bg-oai-gray-100 dark:hover:bg-oai-gray-800 disabled:opacity-30 disabled:pointer-events-none transition-colors",children:r.jsx(ys,{size:16})})]}):r.jsxs(sr,{open:S,onOpenChange:v,children:[r.jsx(ir,{"aria-label":g("trend.zoom.pick_range"),className:"text-xs font-medium text-oai-gray-600 dark:text-oai-gray-300 tabular-nums px-2.5 py-1 rounded-md border border-oai-gray-200 dark:border-oai-gray-800 hover:bg-oai-gray-100 dark:hover:bg-oai-gray-800 transition-colors select-none",children:x.from&&x.to?x.from===x.to?x.from:`${x.from} → ${x.to}`:"—"}),r.jsx(lr,{children:r.jsx(cr,{sideOffset:8,side:"bottom",align:"end",className:"!z-[9999]",children:r.jsx(dr,{className:"bg-white dark:bg-oai-gray-900 border border-oai-gray-200 dark:border-oai-gray-700 rounded-xl shadow-lg",children:r.jsx(fr,{from:x.from,to:x.to,onApply:(z,U)=>{z&&w({from:z,to:U||z}),v(!1)},onCancel:()=>v(!1)})})})})]})]}),r.jsx("div",{className:"flex-1 min-h-0 flex flex-col",children:L&&(!$||$.length===0)?r.jsx("div",{className:"flex-1 flex items-center justify-center",children:r.jsx("p",{className:"text-sm text-oai-gray-400 dark:text-oai-gray-400",children:g("trend.zoom.loading")})}):i({rows:$,from:Y,to:H,period:m,timeZoneLabel:o})})]})]})]})}function Oo(e,t){if(!Array.isArray(e)||e.length===0)return 0;if(e.length===1)return e[0];const n=(e.length-1)*t,a=Math.floor(n),o=Math.ceil(n);if(a===o)return e[a];const s=n-a;return e[a]+(e[o]-e[a])*s}function Cg(e){const t=Array.isArray(e)?e.filter(o=>Number.isFinite(o)&&o>0).sort((o,s)=>o-s):[];if(t.length===0)return{rawMax:0,effectiveMax:1,clippedValues:Array.isArray(e)?e.map(()=>0):[]};const n=t.at(-1)??0;let a=n;if(t.length>=4){const o=Oo(t,.25),s=Oo(t,.75),i=Math.max(s-o,0),l=s+i*1.5;n>l&&(a=Math.max(l,s,1))}return{rawMax:n,effectiveMax:Math.max(a,1),clippedValues:Array.isArray(e)?e.map(o=>!Number.isFinite(o)||o<=0?0:Math.min(o,Math.max(a,1))):[]}}const Eo=["#f472b6","#38bdf8","#34d399","#fbbf24","#a78bfa","#fb7185","#2dd4bf","#f97316","#6366f1","#ec4899","#14b8a6","#f59e0b"],oi={Input:"#38bdf8","Cached Input":"#14b8a6",Output:"#a78bfa","Reasoning Output":"#fb7185"},Dg={codex:"#3b82f6",gpt:"#10b981",openai:"#10b981",claude:"#d97757",anthropic:"#d97757",gemini:"#2196f3",google:"#2196f3",kimi:"#a78bfa",moonshot:"#a78bfa",opencode:"#f59e0b",deepseek:"#f59e0b",droid:"#ef4444",kilo:"#facc15"};function Pr(e){const t=e.toLowerCase();for(const[o,s]of Object.entries(Dg))if(t.includes(o))return s;let n=0;for(let o=0;o<e.length;o++)n=e.charCodeAt(o)+((n<<5)-n);const a=Math.abs(n)%Eo.length;return Eo[a]}function Tg(e){if(!e)return[];const t=[];if(e.models&&typeof e.models=="object")for(const[n,a]of Object.entries(e.models)){const o=Number(a);Number.isFinite(o)&&o>0&&t.push({type:"model",name:n,value:o})}if(t.length===0){const n=[{name:"Input",key:"input_tokens"},{name:"Cached Input",key:"cached_input_tokens"},{name:"Output",key:"output_tokens"},{name:"Reasoning Output",key:"reasoning_output_tokens"}];for(const a of n){const o=Number(e[a.key]);Number.isFinite(o)&&o>0&&t.push({type:"token_type",name:a.name,value:o})}}return t.sort((n,a)=>a.value-n.value)}function Pg(e,t){return e?.future?"predicted":e?.missing?"unsynced":t>0?"real":"real_zero"}const Og=.35,Ao=2,Wo=4;function Eg({value:e,displayValue:t,scale:n,index:a,row:o,totalBars:s,onMouseEnter:i,onMouseLeave:l}){const c=br(),d=Pg(o,e),u=d==="predicted"||d==="unsynced",f=n.effectiveMax>0?t/n.effectiveMax*100:0;let m,y;d==="real"?(m=`${Math.max(f,2)}%`,y=`${Wo}px`):u&&f>0?(m=`${f}%`,y=`${Wo}px`):(m=`${Ao}px`,y=`${Ao}px`);const p=d==="real"?Tg(o):[],b=p.reduce((w,k)=>w+k.value,0),x=d!=="real"||b<=0;return r.jsxs(Le.div,{className:"group relative flex-1 self-stretch",initial:{opacity:0,scaleY:0},animate:{opacity:1,scaleY:1},transition:{duration:c?0:.3,delay:c?0:.4+a*.008,ease:[.16,1,.3,1]},style:{originY:1},onMouseEnter:w=>i(w,o,e,p,d,t),onMouseLeave:l,children:[r.jsx("div",{className:"absolute inset-x-0 top-0 bottom-0 bg-oai-gray-100/70 dark:bg-white/[0.08] opacity-0 group-hover:opacity-100 transition-opacity duration-150 pointer-events-none"}),r.jsx("div",{className:"absolute inset-x-0 bottom-0 flex flex-col-reverse justify-start overflow-hidden cursor-pointer transition-all duration-200",style:{height:m,minHeight:y},children:x?r.jsx("div",{"data-trend-bar":"true",className:Fe("h-full w-full group-hover:brightness-110 transition-all",d==="real"?"":"bg-oai-gray-100 dark:bg-oai-gray-800"),style:{opacity:u?Og:1,background:d==="real"?"#10b981":void 0}}):p.map((w,k)=>{const N=w.type==="token_type"?oi[w.name]:Pr(w.name),S=`${w.value/b*100}%`;return r.jsx("div",{"data-trend-bar":k===0?"true":void 0,className:"w-full group-hover:brightness-110 transition-all",style:{height:S,background:N}},k)})})]})}function Ag(e){if(e?.missing||e?.future)return null;const t=e?.billable_total_tokens??e?.total_tokens??e?.value;if(t==null)return null;const n=Number(t);return Number.isFinite(n)&&n>=0?n:null}const $o=.98;function Wg(e){if(!Array.isArray(e))return[];const t=new Array(e.length);for(let n=0;n<e.length;n++){if(e[n]!==null){t[n]=e[n];continue}let a=null,o=-1;for(let l=n-1;l>=0;l--)if(e[l]!==null){a=e[l],o=l;break}let s=null,i=-1;for(let l=n+1;l<e.length;l++)if(e[l]!==null){s=e[l],i=l;break}if(a!==null&&s!==null){const l=(n-o)/(i-o);t[n]=a+(s-a)*l}else if(a!==null){let l=0,c=0;for(let u=0;u<=o;u++)e[u]!==null&&(l+=e[u],c+=1);const d=c>0?l/c:a;t[n]=d*Math.pow($o,n-o)}else if(s!==null){let l=0,c=0;for(let u=i;u<e.length;u++)e[u]!==null&&(l+=e[u],c+=1);const d=c>0?l/c:s;t[n]=d*Math.pow($o,i-n)}else t[n]=0}return t}function Or({rows:e,from:t,to:n,period:a,timeZoneLabel:o,showTimeZoneLabel:s=!0,className:i="",embedded:l=!1,chartHeightClass:c="h-40",isZoom:d=!1,zoomConfig:u=null}){const f=W.useMemo(()=>Array.isArray(e)&&e.length?e:[],[e]),{rawValues:m,seriesValues:y,scale:p,interpolatedValues:b}=W.useMemo(()=>{const D=f.map(Ag),F=D.map(P=>P??0);return{rawValues:D,seriesValues:F,scale:Cg(F),interpolatedValues:Wg(D)}},[f]),{currency:x,rate:w}=un(),{formatTokens:k,formatTokensTooltip:N}=Qe(),S=ou(a),[v,j]=W.useState(null),[T,_]=W.useState({x:0,y:0,shiftX:0,flipDown:!1}),[M,O]=W.useState(!1),$=W.useRef(null),Y=W.useRef(null),H=(D,F,P,E,B,R)=>{Y.current&&(clearTimeout(Y.current),Y.current=null);const z=d?du(F,S):F?.day||F?.hour||F?.month||"";j({row:F,value:P,segments:E,timeLabel:z,kind:B,displayValue:R});const U=D.currentTarget.querySelector('[data-trend-bar="true"]'),se=U&&U.parentElement?U.parentElement.getBoundingClientRect():D.currentTarget.getBoundingClientRect(),ce=$.current;if(!ce)return;const de=ce.getBoundingClientRect(),ye=se.left-de.left+se.width/2,fe=se.top-de.top,ie=140;let ae=0;ye<ie?ae=ie-ye:ye>de.width-ie&&(ae=de.width-ie-ye);const q=96+(d?22:0)+(E.length?Math.min(E.length*30+24,174):0),J=fe<q+12;_({x:ye,y:fe,shiftX:ae,flipDown:J})},L=()=>{Y.current&&clearTimeout(Y.current),Y.current=setTimeout(()=>{j(null)},150)};return r.jsxs("div",{ref:$,className:Fe("relative",!l&&"rounded-xl border border-oai-gray-200 dark:border-oai-gray-800 bg-white dark:bg-oai-gray-900 p-5",d&&"flex h-full flex-col",i),children:[!l&&r.jsxs("div",{className:"mb-3 flex items-start justify-between gap-2",children:[r.jsxs("div",{children:[r.jsx("h3",{className:"text-sm font-medium text-oai-gray-500 dark:text-oai-gray-300 uppercase tracking-wide",children:g("trend.monitor.label")}),s&&o&&r.jsx("p",{className:"text-xs text-oai-gray-400 dark:text-oai-gray-400 mt-0.5",children:o})]}),u&&r.jsx("button",{type:"button",onClick:()=>O(!0),"aria-label":g("trend.zoom.open_aria"),title:g("trend.zoom.open_aria"),className:"shrink-0 p-1.5 rounded-md text-oai-gray-400 hover:text-oai-gray-700 dark:hover:text-oai-gray-200 hover:bg-oai-gray-100 dark:hover:bg-oai-gray-800 transition-colors",children:r.jsx(Tc,{size:14})})]}),r.jsxs("div",{className:Fe("space-y-3",d&&"flex flex-1 flex-col min-h-0 !space-y-0 gap-3"),children:[r.jsxs("div",{className:Fe("relative",d&&"flex-1 min-h-0"),children:[r.jsx("div",{className:"absolute inset-0 flex flex-col justify-between pointer-events-none",children:[0,25,50,75,100].map(D=>r.jsx("div",{className:"w-full border-t border-oai-gray-100 dark:border-oai-gray-800",style:{top:`${100-D}%`}},D))}),r.jsx("div",{className:Fe("flex items-end gap-0.5 relative z-0",c),children:y.length>0?y.map((D,F)=>{const P=f[F],B=P?.missing||P?.future?Math.min(b[F]??0,p.effectiveMax):p.clippedValues[F]??0;return r.jsx(Eg,{value:D,displayValue:B,scale:p,index:F,row:P,totalBars:y.length,onMouseEnter:H,onMouseLeave:L},F)}):r.jsx("div",{className:"flex-1 h-full flex items-center justify-center",children:r.jsx("p",{className:"text-sm text-oai-gray-400 dark:text-oai-gray-400",children:"No data yet"})})})]}),d&&y.length>0&&r.jsx("div",{className:"flex gap-0.5 select-none",children:f.map((D,F)=>{const P=y.length-1,E=Math.max(1,Math.ceil(y.length/8)),B=F%E===0||F===P,R=F===0?"justify-start":F===P?"justify-end":"justify-center";return r.jsx("div",{className:Fe("flex-1 min-w-0 flex",R),children:B&&r.jsx("span",{className:"text-[9px] text-oai-gray-400 dark:text-oai-gray-500 whitespace-nowrap font-mono",children:fu(D,S)})},F)})}),t&&n&&r.jsxs("div",{className:"flex justify-between text-xs text-oai-gray-500 dark:text-oai-gray-300 font-medium pt-2 border-t border-oai-gray-100 dark:border-oai-gray-800",children:[r.jsx("span",{children:t===n?`${t} 00:00`:t}),r.jsx("span",{children:t===n?`${n} 24:00`:n})]})]}),v&&r.jsxs("div",{className:"absolute z-[9999] w-0 h-0 transition-all duration-100 ease-out pointer-events-none",style:{left:`${T.x}px`,top:`${T.y}px`},children:[r.jsxs("div",{className:Fe("absolute left-0 backdrop-blur-md bg-white/95 dark:bg-oai-gray-900/95 border border-oai-gray-200/50 dark:border-oai-gray-800/50 shadow-xl rounded-xl p-3.5 max-w-[280px] min-w-[220px] flex flex-col gap-2 animate-in fade-in zoom-in-95 duration-100",T.flipDown?"top-[10px]":"bottom-[10px]"),style:{transform:`translateX(calc(-50% + ${T.shiftX}px))`},children:[r.jsxs("div",{className:"flex items-center justify-between border-b border-oai-gray-100 dark:border-oai-gray-800/80 pb-1.5",children:[r.jsx("span",{className:"text-[11px] font-semibold text-oai-gray-500 dark:text-oai-gray-400",children:v.timeLabel}),v.kind==="predicted"&&r.jsx("span",{className:"text-[9px] font-semibold uppercase tracking-wider text-oai-gray-400 dark:text-oai-gray-500",children:"Predicted"}),v.kind==="unsynced"&&r.jsx("span",{className:"text-[9px] font-semibold uppercase tracking-wider text-oai-gray-400 dark:text-oai-gray-500",children:"Unsynced"})]}),r.jsxs("div",{className:"flex flex-col gap-2",children:[r.jsxs("div",{className:"flex items-baseline gap-1",children:[r.jsx("span",{title:N(v.kind==="predicted"||v.kind==="unsynced"?v.displayValue:v.value),className:"text-lg font-bold text-oai-gray-900 dark:text-white leading-none",children:v.kind==="predicted"||v.kind==="unsynced"?`~${k(Math.round(v.displayValue??0))}`:k(v.value)}),r.jsx("span",{className:"text-[10px] text-oai-gray-400 uppercase tracking-wider font-semibold",children:"Tokens"})]}),d&&(v.row?.total_cost_usd!=null||Number(v.row?.conversation_count)>0)&&r.jsxs("div",{className:"flex items-center gap-3 text-[11px] text-oai-gray-500 dark:text-oai-gray-400",children:[v.row?.total_cost_usd!=null&&r.jsxs("span",{children:[r.jsx("span",{className:"font-semibold text-oai-gray-700 dark:text-oai-gray-200",children:cn(v.row.total_cost_usd,{currency:x,rate:w})})," ",g("trend.zoom.tooltip.cost")]}),Number(v.row?.conversation_count)>0&&r.jsxs("span",{children:[r.jsx("span",{className:"font-semibold text-oai-gray-700 dark:text-oai-gray-200",children:Number(v.row.conversation_count).toLocaleString()})," ",g("trend.zoom.tooltip.conversations")]})]}),v.segments&&v.segments.length>0?r.jsxs("div",{className:"mt-1.5 border-t border-oai-gray-100 dark:border-oai-gray-800/60 pt-2 flex flex-col gap-1.5",children:[r.jsx("div",{className:"text-[10px] font-semibold text-oai-gray-400 dark:text-oai-gray-500 uppercase tracking-wider",children:v.segments[0].type==="model"?"Model Breakdown":"Token Breakdown"}),r.jsx("div",{className:"flex flex-col gap-2 max-h-[150px] overflow-y-auto pr-1.5 oai-scrollbar",children:v.segments.map(({name:D,value:F,type:P})=>{const E=v.value||1,B=Math.round(F/E*100),R=P==="token_type"?oi[D]:Pr(D);return r.jsxs("div",{className:"flex flex-col gap-1",children:[r.jsxs("div",{className:"flex items-center justify-between text-[11px] gap-3",children:[r.jsx("span",{className:"font-medium text-oai-gray-750 dark:text-oai-gray-200 truncate max-w-[130px]",title:D,children:D}),r.jsxs("div",{className:"flex items-center gap-1.5 shrink-0",children:[r.jsx("span",{title:N(F),className:"font-mono text-oai-gray-900 dark:text-oai-gray-100 font-semibold",children:k(F)}),r.jsxs("span",{className:"text-[9px] text-oai-gray-450 dark:text-oai-gray-500 min-w-[28px] text-right font-medium",children:[B,"%"]})]})]}),r.jsx("div",{className:"w-full h-1 bg-oai-gray-100 dark:bg-oai-gray-800/85 rounded-full overflow-hidden",children:r.jsx("div",{className:"h-full rounded-full transition-all duration-300",style:{width:`${B}%`,backgroundColor:R,boxShadow:`0 0 4px ${R}55`}})})]},D)})})]}):null]})]}),r.jsx("div",{className:Fe("absolute left-0 -translate-x-1/2 w-2.5 h-2.5 rotate-45 bg-white dark:bg-oai-gray-900 border-oai-gray-200/50 dark:border-oai-gray-800/50 shadow-sm",T.flipDown?"top-[6px] border-l border-t":"bottom-[6px] border-r border-b"),style:T.flipDown?{marginTop:"1px"}:{marginBottom:"1px"}})]}),M&&u&&r.jsx(Mg,{zoomConfig:u,period:a,from:t,to:n,timeZoneLabel:o,onClose:()=>O(!1),renderChart:D=>r.jsx(Or,{embedded:!0,isZoom:!0,chartHeightClass:"h-full",...D})})]})}function si(e){if(typeof e!="string"||!e)return{owner:"",repo:""};const t=e.indexOf("/");return t<0?{owner:"",repo:e}:{owner:e.slice(0,t),repo:e.slice(t+1)}}function ii(e){try{return new URL(e).hostname.toLowerCase()}catch{return""}}function li(e){return e?e==="github.com"||e.endsWith(".github.com")?"github":e.includes("gitlab")||e.startsWith("git.")?"gitlab":"generic":""}function ci(e,t){return t&&li(ii(e))==="github"?t:""}function di({githubOwner:e,letter:t,size:n="w-8 h-8"}){const[a,o]=h.useState(!1);return e&&!a?r.jsx("img",{src:`https://github.com/${e}.png?size=80`,alt:"",loading:"lazy",onError:()=>o(!0),className:`${n} rounded-md object-cover bg-oai-gray-100 dark:bg-oai-gray-800 flex-shrink-0`}):r.jsx("div",{className:`${n} rounded-md oai-bg-elevated flex items-center justify-center oai-text-caption font-medium text-oai-gray-500 dark:text-oai-gray-300 flex-shrink-0`,children:t})}const Fo="#10b981",Va=[{key:"input_tokens",labelKey:"dashboard.projects.detail.comp_input",color:"#38bdf8"},{key:"cached_input_tokens",labelKey:"dashboard.projects.detail.comp_cached",color:"#14b8a6"},{key:"cache_creation_input_tokens",labelKey:"dashboard.projects.detail.comp_cache_write",color:"#f59e0b"},{key:"output_tokens",labelKey:"dashboard.projects.detail.comp_output",color:"#a78bfa"},{key:"reasoning_output_tokens",labelKey:"dashboard.projects.detail.comp_reasoning",color:"#fb7185"}],qa=60;function $g(e,t,n,a){if(!Array.isArray(e)||e.length===0)return[];const o=new Map(e.map(m=>[m.day,m]));let s=t||e[0].day,i=n||e[e.length-1].day;s>i&&([s,i]=[i,s]),a&&i>a&&(i=a);const l=e[e.length-1].day;i<l&&(i=l);const c=new Date(`${s}T00:00:00Z`),d=new Date(`${i}T00:00:00Z`);if(!Number.isFinite(c.getTime())||!Number.isFinite(d.getTime()))return e;const u=Math.round((d.getTime()-c.getTime())/864e5)+1;u>qa&&c.setUTCDate(c.getUTCDate()+(u-qa));const f=[];for(;c.getTime()<=d.getTime()&&f.length<qa;){const m=c.toISOString().slice(0,10);f.push(o.get(m)||{day:m,total_tokens:0,billable_total_tokens:0}),c.setUTCDate(c.getUTCDate()+1)}return f}function Ga(e){if(!Number.isFinite(e))return"—";const t=e*100;return`${t>=10?Math.round(t):t.toFixed(1)}%`}function rn({label:e,value:t,title:n}){return r.jsxs("div",{className:"flex flex-col gap-1.5 group min-w-0",children:[r.jsx("span",{className:"text-[9px] font-bold uppercase tracking-widest font-mono text-zinc-400 dark:text-zinc-500",children:e}),r.jsx("span",{className:"text-xl font-black font-mono text-zinc-900 dark:text-zinc-50 tracking-tight leading-none tabular-nums truncate transition-transform duration-200 group-hover:-translate-y-[1px]",title:n,children:t})]})}function Fg({host:e}){if(!e)return null;let t;const n=li(e);return n==="github"||n==="gitlab"?t=r.jsx(dn,{provider:n,size:12,className:"fill-current"}):t=r.jsx(Kc,{size:12}),r.jsx("span",{title:e,"aria-label":e,className:"inline-flex flex-shrink-0 items-center",children:t})}function Ka({children:e}){return r.jsx("span",{className:"text-[9px] font-extrabold uppercase tracking-widest font-mono text-zinc-400 dark:text-zinc-500 select-none",children:e})}function Ig({entry:e,query:t={},onClose:n}){const[a,o]=W.useState(!1),s=typeof e?.project_key=="string"?e.project_key:"",{owner:i,repo:l}=si(s),c=typeof e?.project_ref=="string"?e.project_ref:"",d=ii(c),{data:u,loading:f,error:m}=ru({projectKey:s,from:t.from,to:t.to,timeZone:t.timeZone,tzOffsetMinutes:t.tzOffsetMinutes}),{formatTokens:y,formatTokensTooltip:p}=Qe(),b=W.useCallback(()=>o(!0),[]),x=L=>{L.target===L.currentTarget&&a&&n()};W.useEffect(()=>{const L=D=>{D.key==="Escape"&&b()};return window.addEventListener("keydown",L),()=>window.removeEventListener("keydown",L)},[b]);const w=u?.totals||null,k=_e(w?.billable_total_tokens)??0,N=Number(u?.days_active||0),S=_e(w?.input_tokens)??0,v=_e(w?.cached_input_tokens)??0,j=S+v>0?v/(S+v):null,T=_e(u?.range_total_tokens)??0,_=_e(w?.total_tokens)??0,M=T>0?_/T:null,O=W.useMemo(()=>$g(u?.daily,u?.from,u?.to,Dn({timeZone:t.timeZone,offsetMinutes:t.tzOffsetMinutes})),[u,t.timeZone,t.tzOffsetMinutes]),$=Va.reduce((L,D)=>L+(_e(w?.[D.key])??0),0),Y=Array.isArray(u?.sources)?u.sources:[],H=!f&&!m&&w&&_>0;return r.jsx("div",{onAnimationEnd:x,onClick:L=>{L.target===L.currentTarget&&b()},className:Fe("fixed inset-0 z-50 flex items-center justify-center p-3 md:p-6 backdrop-blur-md bg-black/15 dark:bg-black/40",a?"animate-tt-fade-out":"animate-tt-fade-in"),children:r.jsxs("div",{role:"dialog","aria-modal":"true","aria-label":s,className:Fe("relative w-full max-w-4xl max-h-[88vh] backdrop-blur-2xl bg-white/90 dark:bg-oai-gray-900/90 border border-oai-gray-200/50 dark:border-white/10 shadow-2xl rounded-2xl flex flex-col md:flex-row overflow-hidden",a?"animate-tt-modal-exit":"animate-tt-modal"),children:[r.jsx("button",{type:"button",onClick:b,"aria-label":g("dashboard.projects.detail.close_aria"),className:"absolute top-4 right-4 z-50 p-2 rounded-full border border-oai-gray-200/60 dark:border-oai-gray-800/60 bg-white/50 dark:bg-oai-gray-900/50 text-oai-gray-500 dark:text-oai-gray-400 hover:text-oai-gray-900 dark:hover:text-white hover:rotate-90 hover:scale-105 active:scale-95 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-oai-brand/60 transition-all duration-300",children:r.jsx(ua,{size:16})}),r.jsxs("div",{className:"w-full md:w-[300px] shrink-0 border-b md:border-b-0 md:border-r border-zinc-200/50 dark:border-zinc-800/40 p-5 md:p-6 flex flex-col gap-5 overflow-y-auto backdrop-blur-md bg-zinc-50/50 dark:bg-zinc-950/50",children:[r.jsxs("div",{className:"select-none",children:[r.jsxs("div",{className:"flex items-center gap-1.5",children:[r.jsxs("span",{className:"relative flex h-1.5 w-1.5",children:[r.jsx("span",{className:"animate-ping absolute inline-flex h-full w-full rounded-full opacity-75",style:{backgroundColor:Fo}}),r.jsx("span",{className:"relative inline-flex rounded-full h-1.5 w-1.5",style:{backgroundColor:Fo}})]}),r.jsx("span",{className:"text-[9px] font-extrabold uppercase tracking-widest font-mono text-zinc-400 dark:text-zinc-500",children:g("dashboard.projects.detail.badge")})]}),r.jsxs("div",{className:"mt-3 flex items-center gap-3 min-w-0",children:[r.jsx(di,{githubOwner:ci(c,i),letter:(l?.[0]||s?.[0]||"?").toUpperCase(),size:"w-10 h-10"}),r.jsxs("div",{className:"min-w-0",children:[i?r.jsxs("p",{className:"text-[10px] font-mono text-zinc-400 dark:text-zinc-500 truncate leading-tight",children:[i,"/"]}):null,r.jsx("h4",{className:"text-xl font-black text-zinc-900 dark:text-zinc-50 tracking-tight leading-tight truncate",children:l||s||"—"})]})]}),r.jsxs("div",{className:"mt-2 flex items-center gap-1.5 text-[10px] font-mono text-zinc-400 dark:text-zinc-500 leading-relaxed",children:[r.jsx(Fg,{host:d}),d&&u?.from&&u?.to?r.jsx("span",{children:"·"}):null,u?.from&&u?.to?r.jsxs("span",{className:"tabular-nums",children:[u.from," – ",u.to]}):null]})]}),H?r.jsxs("div",{className:"grid grid-cols-2 gap-x-5 gap-y-5 border-t border-zinc-200/50 dark:border-zinc-800/50 pt-5 select-none",children:[r.jsx(rn,{label:g("dashboard.projects.detail.stat_total"),value:y(k),title:p(k)}),r.jsx(rn,{label:g("dashboard.projects.detail.stat_share"),value:M==null?"—":Ga(M)}),r.jsx(rn,{label:g("dashboard.projects.detail.stat_cache_hit"),value:j==null?"—":Ga(j)}),r.jsx(rn,{label:g("dashboard.projects.detail.stat_conversations"),value:ia(w.conversation_count)}),r.jsx(rn,{label:g("dashboard.projects.detail.stat_active_days"),value:ia(N)}),r.jsx(rn,{label:g("dashboard.projects.detail.stat_avg_day"),value:N>0?y(Math.round(k/N)):"—"})]}):null]}),r.jsxs("div",{className:"flex-1 min-w-0 overflow-y-auto",children:[f&&r.jsxs("div",{className:"space-y-4 p-5 md:p-6",children:[r.jsx("div",{className:"h-32 rounded-lg bg-oai-gray-100 dark:bg-oai-gray-800 animate-pulse"}),r.jsx("div",{className:"h-16 rounded-lg bg-oai-gray-100 dark:bg-oai-gray-800 animate-pulse"}),r.jsx("div",{className:"h-24 rounded-lg bg-oai-gray-100 dark:bg-oai-gray-800 animate-pulse"})]}),!f&&m&&r.jsx("p",{className:"oai-text-body-sm text-oai-gray-500 dark:text-oai-gray-300 p-5 md:p-6",children:g("dashboard.projects.detail.error")}),!f&&!m&&!H&&r.jsx("p",{className:"oai-text-body-sm text-oai-gray-500 dark:text-oai-gray-300 p-5 md:p-6",children:g("dashboard.projects.detail.empty_range")}),H&&r.jsxs("div",{className:"divide-y divide-zinc-200/50 dark:divide-zinc-800/40",children:[O.length>1&&r.jsxs("section",{className:"px-5 py-5 md:px-6 first:md:pt-6",children:[r.jsx(Ka,{children:g("dashboard.projects.detail.section_trend")}),r.jsx("div",{className:"mt-3",children:r.jsx(Or,{embedded:!0,rows:O,from:O[0]?.day,to:O[O.length-1]?.day,period:"month",showTimeZoneLabel:!1,chartHeightClass:"h-36"})})]}),$>0&&r.jsxs("section",{className:"px-5 py-5 md:px-6 first:md:pt-6",children:[r.jsx(Ka,{children:g("dashboard.projects.detail.section_composition")}),r.jsx("div",{className:"mt-3 flex h-1.5 w-full overflow-hidden rounded-full",children:Va.map(L=>{const D=_e(w[L.key])??0;return D<=0?null:r.jsx("div",{style:{width:`${D/$*100}%`,backgroundColor:L.color,minWidth:"2px"}},L.key)})}),r.jsx("div",{className:"mt-2.5 flex flex-wrap gap-x-4 gap-y-1.5",children:Va.map(L=>{const D=_e(w[L.key])??0;return r.jsxs("div",{className:"flex items-center gap-1.5",children:[r.jsx("span",{className:"h-1.5 w-1.5 flex-shrink-0 rounded-full",style:{backgroundColor:L.color}}),r.jsx("span",{className:"text-[11px] text-zinc-500 dark:text-zinc-400",children:g(L.labelKey)}),r.jsx("span",{className:"text-[11px] font-bold font-mono text-zinc-900 dark:text-zinc-50 tabular-nums",title:p(D),children:y(D)})]},L.key)})})]}),Y.length>0&&r.jsxs("section",{className:"px-5 py-5 md:px-6 first:md:pt-6",children:[r.jsx(Ka,{children:g("dashboard.projects.detail.section_sources")}),r.jsx("div",{className:"mt-3 space-y-3.5",children:Y.map(L=>{const D=Number(L.total_tokens||0),F=_>0?D/_:0,P=F*100,E=Number(L.conversation_count||0),B=Pr(L.source||"unknown");return r.jsxs("div",{children:[r.jsxs("div",{className:"flex items-center gap-1.5 min-w-0",children:[r.jsx(dn,{provider:L.source,size:13,className:"flex-shrink-0"}),r.jsx("span",{className:"text-[11px] font-bold uppercase tracking-wide text-zinc-900 dark:text-zinc-50 truncate",children:on(L.source)}),r.jsxs("span",{className:"hidden text-[10px] font-mono text-zinc-400 dark:text-zinc-500 tabular-nums whitespace-nowrap sm:inline",children:[g("dashboard.projects.detail.source_days",{n:Number(L.days_active||0)}),E>0?r.jsxs(r.Fragment,{children:[" · ",g("dashboard.projects.detail.source_conv",{n:E})]}):null]}),r.jsx("span",{className:"ml-auto text-[12px] font-bold font-mono text-zinc-900 dark:text-zinc-50 tabular-nums",title:p(D),children:y(D)}),r.jsx("span",{className:"w-9 text-right text-[10px] font-mono text-zinc-400 dark:text-zinc-500 tabular-nums",children:Ga(F)})]}),r.jsx("div",{className:"mt-1.5 h-1 w-full overflow-hidden rounded-full bg-zinc-100 dark:bg-zinc-800/60",children:r.jsx("div",{className:"h-full rounded-full",style:{width:`${Math.min(100,Math.max(P,D>0?1:0))}%`,minWidth:D>0?"3px":0,backgroundColor:B}})})]},L.source)})})]})]})]})]})})}const Lg=5;function Rg({entry:e,maxTokens:t,copy:n,formatTokens:a,formatTokensTooltip:o,onSelect:s}){const i=typeof e?.project_key=="string"?e.project_key:"",l=typeof e?.project_ref=="string"?e.project_ref:"",{owner:c,repo:d}=si(i),u=ci(l,c),f=_e(e?.billable_total_tokens??e?.total_tokens)??0,m=t>0?Math.min(100,Math.max(2,f/t*100)):0,y=Array.isArray(e?.sources)?e.sources:[],p=y.slice(0,Lg),b=y.length-p.length;return r.jsxs("button",{type:"button",onClick:()=>s?.(e),className:"flex w-full items-center gap-3 p-2 rounded-lg text-left hover:bg-oai-gray-50 dark:hover:bg-oai-gray-800/50 active:bg-oai-gray-100 dark:active:bg-oai-gray-800 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-oai-brand/60 transition-colors",children:[r.jsx(di,{githubOwner:u,letter:(d?.[0]||i?.[0]||"?").toUpperCase()}),r.jsxs("div",{className:"min-w-0 flex-1",children:[r.jsxs("div",{className:"flex items-baseline min-w-0",children:[c?r.jsxs("span",{className:"oai-text-caption text-oai-gray-400 dark:text-oai-gray-500 truncate flex-shrink-[2]",children:[c,"/"]}):null,r.jsx("span",{className:"oai-text-body-sm font-medium text-oai-black dark:text-oai-white truncate",children:d||i||"—"})]}),p.length>0&&r.jsxs("div",{className:"mt-0.5 flex items-center gap-1",children:[p.map(x=>r.jsx(dn,{provider:x.source,size:12,className:"text-oai-gray-400 dark:text-oai-gray-500"},x.source)),b>0&&r.jsx("span",{className:"oai-text-caption text-oai-gray-400 dark:text-oai-gray-500",children:n("dashboard.projects.sources_more",{n:b})})]})]}),r.jsxs("div",{className:"flex w-24 flex-shrink-0 flex-col items-end gap-1",children:[r.jsx("span",{className:"oai-text-body-sm font-medium text-oai-black dark:text-oai-white tabular-nums",title:o(f),children:a(f)}),r.jsx("div",{className:"h-1 w-full overflow-hidden rounded-full bg-oai-gray-100 dark:bg-oai-gray-800",children:r.jsx("div",{className:"h-full rounded-full bg-emerald-500",style:{width:`${m}%`,minWidth:f>0?"3px":0}})})]})]})}function Bg({projectEntries:e=[],projectLimit:t=3,onProjectLimitChange:n,projectDetailQuery:a={},copy:o,hasDetailsActual:s,dailyEmptyPrefix:i,installSyncCmd:l,dailyEmptySuffix:c,detailsColumns:d,ariaSortFor:u,toggleSort:f,sortIconFor:m,pagedDetails:y,dailyBreakdownRows:p=[],dailyBreakdownColumns:b=[],dailyBreakdownAriaSortFor:x,dailyBreakdownSortIconFor:w,dailyBreakdownDateKey:k="day",detailsDateKey:N,renderDetailDate:S,renderDailyBreakdownDate:v,renderDetailCell:j,DETAILS_PAGED_PERIODS:T,period:_,detailsPageCount:M,detailsPage:O,setDetailsPage:$}){const[Y,H]=h.useState("daily"),[L,D]=h.useState(null),{formatTokens:F,formatTokensTooltip:P}=Qe();return r.jsxs(nt,{children:[r.jsxs("div",{className:"flex items-center justify-between gap-3 mb-4",children:[r.jsxs("div",{role:"tablist","aria-label":"Data view",className:"flex gap-1",children:[r.jsx("button",{role:"tab","aria-selected":Y==="daily",type:"button",onClick:()=>H("daily"),className:`text-xs font-medium px-3 py-1.5 rounded transition-colors ${Y==="daily"?"text-oai-black dark:text-oai-white bg-oai-gray-100 dark:bg-oai-gray-800":"text-oai-gray-500 dark:text-oai-gray-300 hover:text-oai-black dark:hover:text-oai-white hover:bg-oai-gray-50 dark:hover:bg-oai-gray-800/50"}`,children:o("dashboard.daily.title")}),r.jsx("button",{role:"tab","aria-selected":Y==="projects",type:"button",onClick:()=>H("projects"),className:`text-xs font-medium px-3 py-1.5 rounded transition-colors ${Y==="projects"?"text-oai-black dark:text-oai-white bg-oai-gray-100 dark:bg-oai-gray-800":"text-oai-gray-500 dark:text-oai-gray-300 hover:text-oai-black dark:hover:text-oai-white hover:bg-oai-gray-50 dark:hover:bg-oai-gray-800/50"}`,children:o("dashboard.projects.title")})]}),Y==="projects"&&r.jsx(gs,{ariaLabel:o("dashboard.projects.limit_aria"),value:t,onValueChange:E=>n?.(Number(E)),options:[{value:3,label:o("dashboard.projects.limit_top_3")},{value:6,label:o("dashboard.projects.limit_top_6")},{value:10,label:o("dashboard.projects.limit_top_10")}],align:"end",className:"px-2 py-1 text-xs text-oai-gray-600 dark:text-oai-gray-300"})]}),Y==="projects"&&(()=>{const E=e.slice(0,t);if(E.length===0)return r.jsx("div",{className:"oai-text-body-sm text-oai-gray-500 dark:text-oai-gray-300",children:o("dashboard.projects.empty")});const B=E.reduce((R,z)=>{const U=_e(z?.billable_total_tokens??z?.total_tokens)??0;return U>R?U:R},0);return r.jsx("div",{className:"space-y-1",children:E.map((R,z)=>r.jsx(Rg,{entry:R,maxTokens:B,copy:o,formatTokens:F,formatTokensTooltip:P,onSelect:D},R?.project_key||R?.project_ref||`entry-${z}`))})})(),L&&r.jsx(Ig,{entry:L,query:a,onClose:()=>D(null)}),Y==="daily"&&r.jsxs("div",{children:[p?.length===0?r.jsxs("div",{className:"oai-text-body-sm text-oai-gray-500 dark:text-oai-gray-300 mb-4",children:[i,r.jsx("code",{className:"mx-1 rounded border border-oai-gray-300 dark:border-oai-gray-700 oai-bg-elevated px-1.5 py-0.5 font-mono oai-text-caption",children:l}),c]}):r.jsx("div",{className:"overflow-auto max-h-[384px] -mx-4 oai-scrollbar",children:r.jsxs("table",{className:"w-full border-collapse",children:[r.jsx("thead",{className:"sticky top-0 z-10",children:r.jsx("tr",{className:"border-b border-oai-gray-200 dark:border-oai-gray-700",children:b.map(E=>r.jsx("th",{"aria-sort":x?.(E.key)||"none",className:"text-left p-0 bg-white dark:bg-oai-gray-900",children:r.jsx("button",{type:"button",onClick:()=>f(E.key),className:"flex w-full items-center justify-start px-2.5 sm:px-4 py-2 text-left oai-text-caption font-semibold text-oai-gray-600 dark:text-oai-gray-300 hover:text-oai-black dark:hover:text-oai-white transition-colors",children:r.jsxs("span",{className:"inline-flex items-center gap-1",children:[r.jsx("span",{children:E.label}),r.jsx("span",{className:"text-oai-gray-400 dark:text-oai-gray-400",children:w?.(E.key)||""})]})})},E.key))})}),r.jsx("tbody",{children:p.map(E=>r.jsxs("tr",{className:`border-b border-oai-gray-100 dark:border-oai-gray-800 last:border-b-0 hover:bg-oai-gray-50/50 dark:hover:bg-oai-gray-800/50 transition-colors ${E.missing?"text-oai-gray-400 dark:text-oai-gray-400":E.future?"text-oai-gray-300 dark:text-oai-gray-600":"text-oai-black dark:text-oai-white"}`,children:[r.jsx("td",{className:"px-2.5 sm:px-4 py-2 oai-text-body-sm text-oai-gray-500 dark:text-oai-gray-300 whitespace-nowrap",children:v?v(E):S(E)}),r.jsx("td",{className:"px-2.5 sm:px-4 py-2 oai-text-body-sm font-medium text-oai-black dark:text-oai-white tabular-nums",children:j(E,"total_tokens")}),r.jsx("td",{className:"px-2.5 sm:px-4 py-2 oai-text-body-sm text-oai-gray-600 dark:text-oai-gray-300 tabular-nums",children:j(E,"input_tokens")}),r.jsx("td",{className:"px-2.5 sm:px-4 py-2 oai-text-body-sm text-oai-gray-600 dark:text-oai-gray-300 tabular-nums",children:j(E,"output_tokens")}),r.jsx("td",{className:"px-2.5 sm:px-4 py-2 oai-text-body-sm text-oai-gray-600 dark:text-oai-gray-300 tabular-nums",children:j(E,"cached_input_tokens")}),r.jsx("td",{className:"px-2.5 sm:px-4 py-2 oai-text-body-sm text-oai-gray-600 dark:text-oai-gray-300 tabular-nums",children:j(E,"reasoning_output_tokens")}),r.jsx("td",{className:"px-2.5 sm:px-4 py-2 oai-text-body-sm text-oai-gray-600 dark:text-oai-gray-300 tabular-nums",children:j(E,"conversation_count")})]},String(E?.[k]||E?.day||E?.hour||E?.month||"")))})]})}),Y!=="daily"&&T.has(_)&&M>1?r.jsxs("div",{className:"mt-3 flex items-center justify-between oai-text-caption",children:[r.jsx("button",{type:"button",onClick:()=>$(E=>Math.max(0,E-1)),disabled:O===0,className:"px-3 py-1.5 text-oai-gray-600 dark:text-oai-gray-300 hover:bg-oai-gray-100 dark:hover:bg-oai-gray-800 rounded-md disabled:opacity-50 disabled:cursor-not-allowed transition-colors",children:o("details.pagination.prev")}),r.jsxs("span",{className:"oai-text-muted",children:[O+1," / ",M]}),r.jsx("button",{type:"button",onClick:()=>$(E=>Math.min(M-1,E+1)),disabled:O+1>=M,className:"px-3 py-1.5 text-oai-gray-600 dark:text-oai-gray-300 hover:bg-oai-gray-100 dark:hover:bg-oai-gray-800 rounded-md disabled:opacity-50 disabled:cursor-not-allowed transition-colors",children:o("details.pagination.next")})]}):null]})]})}function oa(e){return typeof e!="string"?"":e.trim()}function Io(e){const t=oa(e);return t?t.split(/[_\-\s]+/).filter(Boolean).map(n=>n.slice(0,1).toUpperCase()+n.slice(1).toLowerCase()).join(" "):""}function zg(e){if(!Array.isArray(e))return[];const t=new Map;for(const n of e){if(!n||typeof n!="object")continue;const a=oa(n.tool),o=oa(n.planType)||oa(n.plan_type);if(!a||!o)continue;const s=Io(a)||a,i=Io(o)||o;t.set(`${a.toLowerCase()}::${o.toLowerCase()}`,{tool:s,plan:i})}return Array.from(t.values())}function Yg({rankLabel:e,streakDays:t,subscriptions:n=[],periodConversations:a,rolling:o,topModels:s=[],className:i=""}){const{formatTokensTooltip:l}=Qe(),c=g("shared.placeholder.short"),d=g("shared.unit.percent"),u=e??g("identity_card.rank_placeholder"),f=Number.isFinite(Number(t))?Number(t):0,m=f?g("identity_card.streak_value",{days:f}):g("identity_card.rank_placeholder"),y=zg(n),p={thousandSuffix:g("shared.unit.thousand_abbrev"),millionSuffix:g("shared.unit.million_abbrev"),billionSuffix:g("shared.unit.billion_abbrev")},b=k=>{if(k==null)return c;const N=pt(k,p);return N==="-"?c:N},x={last7d:g("stats.period.last_7d"),last30d:g("stats.period.last_30d"),avg:g("stats.period.avg"),convs:g("stats.period.convs")},w=s.slice(0,3);return r.jsxs(nt,{className:`h-full ${i}`,children:[r.jsxs("div",{className:"grid grid-cols-2 sm:grid-cols-4 gap-2",children:[r.jsxs("div",{className:"flex flex-col items-center justify-center px-2 py-2 bg-oai-gray-50 dark:bg-oai-gray-800 rounded-lg",children:[r.jsx("span",{title:l(o?.last_7d?.totals?.billable_total_tokens),className:"text-sm font-semibold text-oai-black dark:text-oai-white tabular-nums",children:b(o?.last_7d?.totals?.billable_total_tokens)}),r.jsx("span",{className:"text-[10px] text-oai-gray-400 dark:text-oai-gray-400 mt-0.5 whitespace-nowrap",children:x.last7d})]}),r.jsxs("div",{className:"flex flex-col items-center justify-center px-2 py-2 bg-oai-gray-50 dark:bg-oai-gray-800 rounded-lg",children:[r.jsx("span",{title:l(o?.last_30d?.totals?.billable_total_tokens),className:"text-sm font-semibold text-oai-black dark:text-oai-white tabular-nums",children:b(o?.last_30d?.totals?.billable_total_tokens)}),r.jsx("span",{className:"text-[10px] text-oai-gray-400 dark:text-oai-gray-400 mt-0.5 whitespace-nowrap",children:x.last30d})]}),r.jsxs("div",{className:"flex flex-col items-center justify-center px-2 py-2 bg-oai-gray-50 dark:bg-oai-gray-800 rounded-lg",children:[r.jsx("span",{title:l(o?.last_30d?.avg_per_active_day),className:"text-sm font-semibold text-oai-black dark:text-oai-white tabular-nums",children:b(o?.last_30d?.avg_per_active_day)}),r.jsx("span",{className:"text-[10px] text-oai-gray-400 dark:text-oai-gray-400 mt-0.5 whitespace-nowrap",children:x.avg})]}),r.jsxs("div",{className:"flex flex-col items-center justify-center px-2 py-2 bg-oai-gray-50 dark:bg-oai-gray-800 rounded-lg",children:[r.jsx("span",{className:"text-sm font-semibold text-oai-black dark:text-oai-white tabular-nums",children:b(a)}),r.jsx("span",{className:"text-[10px] text-oai-gray-400 dark:text-oai-gray-400 mt-0.5 whitespace-nowrap",children:x.convs})]})]}),w.length>0&&r.jsx("div",{className:"mt-4 pt-3 border-t border-oai-gray-100 dark:border-oai-gray-800",children:w.map((k,N)=>{const S=k?.name?String(k.name):c,v=k?.percent?String(k.percent):"",j=N===w.length-1,T=N+1;return r.jsxs("div",{className:`flex items-center py-2 ${j?"":"border-b border-oai-gray-50 dark:border-oai-gray-800"}`,children:[r.jsx("span",{className:"w-5 h-5 flex items-center justify-center rounded-full bg-oai-gray-100 dark:bg-oai-gray-800 text-[10px] font-semibold text-oai-gray-500 dark:text-oai-gray-300 flex-shrink-0",children:T}),r.jsx("span",{className:"flex-1 text-sm text-oai-gray-700 dark:text-oai-gray-300 truncate px-2.5",title:S,children:S}),r.jsxs("span",{className:"text-sm font-semibold text-oai-black dark:text-oai-white tabular-nums flex-shrink-0",children:[v,d]})]},k.id||S)})}),y.length>0&&r.jsx("div",{className:"mt-3 pt-3 border-t border-oai-gray-100 dark:border-oai-gray-800 flex flex-wrap gap-1.5",children:y.map((k,N)=>r.jsxs(sd,{variant:"secondary",size:"sm",children:[k.tool," ",k.plan]},`${k.tool}:${k.plan}:${N}`))}),r.jsxs("div",{className:"mt-4 pt-3 border-t border-oai-gray-100 dark:border-oai-gray-800 flex items-center justify-between text-xs text-oai-gray-400 dark:text-oai-gray-400",children:[r.jsxs("div",{className:"flex items-center gap-1.5",children:[r.jsx("span",{children:g("identity_card.rank_label")}),r.jsx("span",{className:"text-oai-gray-500 dark:text-oai-gray-300 tabular-nums",children:u})]}),r.jsxs("div",{className:"flex items-center gap-1",children:[r.jsx("span",{children:g("identity_card.streak_label")}),r.jsx("span",{className:"text-oai-gray-500 dark:text-oai-gray-300 tabular-nums",children:m})]})]})]})}let Jn=null;function Hg(){if(Jn===null)try{Jn=typeof CSS<"u"&&typeof CSS.supports=="function"&&CSS.supports("color","oklch(0 0 0)")}catch{Jn=!1}return Jn}function Ug(e,t,n){const a=n*Math.PI/180,o=t*Math.cos(a),s=t*Math.sin(a),i=e+.3963377774*o+.2158037573*s,l=e-.1055613458*o-.0638541728*s,c=e-.0894841775*o-1.291485548*s,d=i*i*i,u=l*l*l,f=c*c*c;return[4.0767416621*d-3.3077115913*u+.2309699292*f,-1.2684380046*d+2.6097574011*u-.3413193965*f,-.0041960863*d-.7034186147*u+1.707614701*f].map(y=>{const p=Math.min(1,Math.max(0,y)),b=p<=.0031308?12.92*p:1.055*Math.pow(p,1/2.4)-.055;return Math.round(b*255)})}function ui(e,t,n,a){if(Hg())return a==null?`oklch(${e} ${t} ${n})`:`oklch(${e} ${t} ${n} / ${a})`;const[o,s,i]=Ug(e,t,n);return a==null?`rgb(${o} ${s} ${i})`:`rgb(${o} ${s} ${i} / ${a})`}function mn(e){const t=/^oklch\(\s*([0-9.]+)\s+([0-9.]+)\s+([0-9.]+)\s*\)$/.exec(e);return t?ui(Number(t[1]),Number(t[2]),Number(t[3])):e}const Lo={claude:35,codex:250},Ro={system_prompt:{l:.55,c:.05},messages:{l:.65,c:.18},tool_calls:{l:.6,c:.14},custom_agents:{l:.55,c:.1},reasoning:{l:.7,c:.08}};function Vg(e,t){const n=Lo[t]??Lo.claude,a=Ro[e]||Ro.system_prompt;return ui(a.l,a.c,n)}const qg=[{key:"system_prompt",from:["system_prefix"]},{key:"messages",from:["user_input","conversation_history","assistant_response"]},{key:"tool_calls",from:["tool_calls"]},{key:"custom_agents",from:["subagents"]},{key:"reasoning",from:["reasoning"]}],Gg=[["by_type","dashboard.context_breakdown.exec_details.group_by_type"],["by_executable","dashboard.context_breakdown.exec_details.group_by_executable"],["by_command","dashboard.context_breakdown.exec_details.group_by_command"],["by_duration","dashboard.context_breakdown.exec_details.group_by_duration"],["by_output","dashboard.context_breakdown.exec_details.group_by_output"],["by_exit","dashboard.context_breakdown.exec_details.group_by_exit"]],Kg={duration:.18,ease:[.4,0,.2,1]},Xg={height:0,opacity:0},Qg={height:"auto",opacity:1},Jg={height:0,opacity:0};function Zg(e){const t=Number(e||0);return Number.isFinite(t)&&t>0?t:0}function ey(e,t){const n={};for(const a of["input_tokens","cached_input_tokens","cache_creation_input_tokens","output_tokens","reasoning_output_tokens","total_tokens"])n[a]=Math.round(Number(e?.[a]||0)*t);return n}function fi(e,t=null){const n=e.reduce((i,l)=>i+Number(l.totals.total_tokens||0),0),a=Zg(t),o=a||n,s=a&&n>0?a/n:1;return e.map(i=>{const l=s===1?i.totals:ey(i.totals,s);return{...i,totals:l,percent:o>0?Number((l.total_tokens/o*100).toFixed(2)):0}}).sort((i,l)=>l.totals.total_tokens-i.totals.total_tokens)}function ty(e,t=null){const n=new Map;for(const o of e||[])n.set(o.key,o);const a=qg.map(o=>{const s={input_tokens:0,cached_input_tokens:0,cache_creation_input_tokens:0,output_tokens:0,reasoning_output_tokens:0,total_tokens:0};for(const i of o.from){const l=n.get(i);if(!l)continue;const c=l.totals||{};s.input_tokens+=c.input_tokens||0,s.cached_input_tokens+=c.cached_input_tokens||0,s.cache_creation_input_tokens+=c.cache_creation_input_tokens||0,s.output_tokens+=c.output_tokens||0,s.reasoning_output_tokens+=c.reasoning_output_tokens||0,s.total_tokens+=c.total_tokens||0}return{key:o.key,totals:s}});return fi(a,t)}function ny(e,t=null){const n=e?.totals||{},a=Number(n.reasoning_output_tokens||0),o=(e?.tool_calls_breakdown?.categories||[]).reduce((d,u)=>u?.name==="Text Response"?d:d+Number(u?.totals?.total_tokens||0),0),s=Number(n.total_tokens||0),i=Math.min(Math.max(0,o),Math.max(0,s-a)),c=[{key:"messages",totals:{total_tokens:Math.max(0,s-a-i)}},{key:"tool_calls",totals:{total_tokens:i}},{key:"reasoning",totals:{total_tokens:a}}];return fi(c,t)}const Bo="MCP: ";function ay(e){if(!e?.categories?.length)return{mcpSet:null,residualSet:e,mcpTotalTokens:0};const t=[],n=[];let a=0;for(const o of e.categories){const s=String(o?.name||"");s.startsWith(Bo)?(t.push({...o,name:s.slice(Bo.length)}),a+=Number(o?.totals?.total_tokens||0)):n.push(o)}return t.length===0?{mcpSet:null,residualSet:e,mcpTotalTokens:0}:(t.sort((o,s)=>(s.totals?.total_tokens||0)-(o.totals?.total_tokens||0)),{mcpSet:{...e,categories:t},residualSet:{...e,categories:n},mcpTotalTokens:a})}function zo(e){return g(`dashboard.context_breakdown.category.${e}`)}function ry(e){return typeof e!="string"?"":e.startsWith("mcp__")?e.split("__").slice(2).join("__")||e:e.includes("/")&&e.split("/").pop()||e}function oy(e){return(Array.isArray(e)?e:[]).map(t=>{const n=t?.totals||null,a=Number(n?n.input_tokens||0:t?.input_tokens||0),o=Number(n?n.output_tokens||0:t?.output_tokens||0),s=Number(n?n.cached_input_tokens||0:t?.cache_read||0),i=Number(n?n.cache_creation_input_tokens||0:t?.cache_creation||0),l=Number(n?n.total_tokens||a+o:t?.total_tokens||o);return{name:ry(t?.name?String(t.name):""),calls:Number(t?.calls||0),input_tokens:a,output_tokens:o,cache_read:s,cache_creation:i,total_tokens:Number(l||0)}}).filter(t=>t.name).sort((t,n)=>(n.total_tokens||0)-(t.total_tokens||0))}function sy(e){return(Array.isArray(e)?e:[]).map(t=>{const n=t?.totals||{},a=Array.isArray(t?.tools)?t.tools:[],o=Number(n.input_tokens||0),s=Number(n.output_tokens||0),i=Number(n.cached_input_tokens||0),l=Number(n.cache_creation_input_tokens||0);return{name:t?.name?String(t.name):"",calls:Number(t?.calls||0),totals:{input_tokens:o,output_tokens:s,cached_input_tokens:i,cache_creation_input_tokens:l,total_tokens:Number(n.total_tokens||o+s)},tools:oy(a),toolCount:a.length}}).filter(t=>t.name).sort((t,n)=>(n.totals.total_tokens||0)-(t.totals.total_tokens||0))}function iy(e){return(Array.isArray(e)?e:[]).map(t=>{const n=t?.totals||{},a=Number(n.input_tokens||0),o=Number(n.output_tokens||0),s=Number(n.cached_input_tokens||0),i=Number(n.cache_creation_input_tokens||0);return{key:t?.key?String(t.key):"",name:t?.name?String(t.name):"",totals:{input_tokens:a,output_tokens:o,cached_input_tokens:s,cache_creation_input_tokens:i,total_tokens:Number(n.total_tokens||a+o+s+i)}}}).filter(t=>t.key||t.name).sort((t,n)=>(n.totals.total_tokens||0)-(t.totals.total_tokens||0))}function ly(e){return(Array.isArray(e)?e:[]).map(t=>{const n=t?.totals||{};return{name:t?.name?String(t.name):"",calls:Number(t?.calls||0),total_tokens:Number(n.total_tokens||0)}}).filter(t=>t.name).sort((t,n)=>Number(n.total_tokens||0)-Number(t.total_tokens||0))}function cy(e){if(e?.key){const t=g(`dashboard.context_breakdown.message_details.${e.key}`);if(t&&!t.includes("dashboard.context_breakdown"))return t}return e?.name||""}function dy(e){return(Array.isArray(e)?e:[]).map(t=>{const n=t?.totals||{},a=Number(n.input_tokens||0),o=Number(n.output_tokens||0),s=Number(n.cached_input_tokens||0),i=Number(n.cache_creation_input_tokens||0);return{name:t?.name?String(t.name):"",calls:Number(t?.calls||0),failures:Number(t?.failures||0),duration_ms:Number(t?.duration_ms||0),max_duration_ms:Number(t?.max_duration_ms||0),output_chars:Number(t?.output_chars||0),output_lines:Number(t?.output_lines||0),totals:{input_tokens:a,output_tokens:o,cached_input_tokens:s,cache_creation_input_tokens:i,total_tokens:Number(n.total_tokens||a+o)}}}).filter(t=>t.name).sort((t,n)=>Number(n.totals.total_tokens||0)-Number(t.totals.total_tokens||0))}function Yo(e){const t=Number(e||0);return!Number.isFinite(t)||t<=0?"0ms":t<1e3?`${Math.round(t)}ms`:t<6e4?`${(t/1e3).toFixed(1)}s`:`${Math.round(t/1e3)}s`}function uy(e,t){return e?t==="by_executable"?e.by_executable||[]:t==="by_command"?e.by_command||[]:t==="by_duration"?e.by_duration||[]:t==="by_output"?e.by_output||[]:t==="by_exit"?e.by_exit||[]:e.by_type||[]:[]}function Ho(e){return e==="exec_command"||e==="Bash"}function mi(e){return e==="codex"?"dashboard.context_breakdown.empty_codex":"dashboard.context_breakdown.empty"}function fy(e){return e==="codex"?"dashboard.context_breakdown.error_codex":"dashboard.context_breakdown.error"}function my(e){return e==="codex"?"dashboard.context_breakdown.footnote_codex":"dashboard.context_breakdown.footnote"}const hy=10;function yt({level:e=0,colorSquare:t=null,label:n,labelSuffix:a=null,labelTone:o="default",hasChevron:s=!1,open:i=!1,onToggle:l,tokens:c,percent:d=null,children:u,share:f=null,fillColor:m=null}){const y=o==="accent"?"text-oai-brand truncate":o==="muted"?"text-oai-gray-500 dark:text-oai-gray-400 truncate":o==="strong"?"font-medium text-oai-black dark:text-oai-white truncate":"text-oai-gray-700 dark:text-oai-gray-300 truncate",p=r.jsx("span",{className:"shrink-0 flex items-center justify-start",style:{width:hy},"aria-hidden":!t,children:t}),b=r.jsxs(r.Fragment,{children:[p,r.jsx("span",{className:y,children:n}),a,s&&r.jsx(Le.span,{animate:{rotate:i?90:0},transition:{duration:.15},className:"shrink-0 text-oai-gray-400 dark:text-oai-gray-500 flex items-center","aria-hidden":"true",children:r.jsx(ys,{size:11})})]}),x=m&&f!=null&&f>0,w=x?Math.max(0,Math.min(100,f)):0;return r.jsxs("li",{className:"min-w-0 group/row",children:[r.jsxs("div",{className:"relative grid grid-cols-[minmax(0,1fr)_minmax(9rem,max-content)_4rem] items-center gap-x-3 text-xs py-1 px-1 rounded-sm transition-colors duration-150",style:x?{backgroundImage:`linear-gradient(to right, ${m.replace(/\)\s*$/," / 0.10)")} 0%, ${m.replace(/\)\s*$/," / 0.10)")} ${w}%, transparent ${w}%)`}:void 0,children:[s?r.jsx("button",{type:"button",onClick:l,"aria-expanded":i,className:"relative col-start-1 row-start-1 flex items-center gap-1.5 min-w-0 text-left cursor-pointer focus-visible:outline-none focus-visible:ring-inset focus-visible:ring-2 focus-visible:ring-oai-brand/40 rounded-sm",children:b}):r.jsx("div",{className:"relative col-start-1 row-start-1 flex items-center gap-1.5 min-w-0",children:b}),r.jsx("span",{className:"relative col-start-2 row-start-1 text-right whitespace-nowrap tabular-nums text-oai-gray-500 dark:text-oai-gray-400",children:c||""}),r.jsx("span",{className:"relative col-start-3 row-start-1 text-right whitespace-nowrap tabular-nums text-[10px] text-oai-gray-400 dark:text-oai-gray-500 font-normal",children:d||""})]}),s&&u?r.jsx(vr,{initial:!1,children:i&&r.jsx(Le.div,{initial:Xg,animate:Qg,exit:Jg,transition:Kg,style:{overflow:"hidden"},children:u},"content")}):null]})}function Uo({execDetails:e,source:t="claude"}){const{formatTokens:n}=Qe(),[a,o]=h.useState("by_type"),s=dy(uy(e,a)),i=t==="codex",l=i?"grid-cols-[minmax(0,1fr)_48px_48px_72px_72px_60px_60px]":"grid-cols-[minmax(0,1fr)_56px_60px]";return r.jsxs("div",{className:"mt-2 ml-4",children:[r.jsx("div",{className:"flex flex-wrap items-center gap-1 rounded-md bg-oai-gray-100 dark:bg-oai-gray-900 p-1 w-fit max-w-full",children:Gg.map(([c,d])=>r.jsx("button",{type:"button",onClick:()=>o(c),className:"h-7 px-2 rounded-md text-[10px] font-medium transition-colors "+(a===c?"bg-oai-white dark:bg-oai-gray-800 text-oai-black dark:text-oai-white shadow-sm":"text-oai-gray-600 dark:text-oai-gray-300 hover:bg-oai-white/70 dark:hover:bg-oai-gray-800/70"),children:g(d)},c))}),s.length===0?r.jsx("p",{className:"mt-2 text-[10px] text-oai-gray-400 dark:text-oai-gray-500",children:"—"}):r.jsx("div",{className:"mt-2 overflow-x-auto",children:r.jsxs("div",{role:"table","aria-label":g("dashboard.context_breakdown.exec_details.title"),className:i?"min-w-[420px]":"min-w-[260px]",children:[r.jsxs("div",{role:"row",className:`grid ${l} gap-2 py-1.5 mb-1 border-b border-oai-gray-200 dark:border-oai-gray-800 text-label uppercase text-oai-gray-500 dark:text-oai-gray-400`,children:[r.jsx("span",{role:"columnheader",children:g("dashboard.context_breakdown.exec_details.kind_column")}),r.jsx("span",{role:"columnheader",className:"text-right",children:g("dashboard.context_breakdown.exec_details.calls_column")}),i&&r.jsxs(r.Fragment,{children:[r.jsx("span",{role:"columnheader",className:"text-right",children:g("dashboard.context_breakdown.exec_details.failures_column")}),r.jsx("span",{role:"columnheader",className:"text-right",children:g("dashboard.context_breakdown.exec_details.duration_column")}),r.jsx("span",{role:"columnheader",className:"text-right",children:g("dashboard.context_breakdown.exec_details.max_duration_column")})]}),r.jsx("span",{role:"columnheader",className:"text-right",children:g("dashboard.context_breakdown.tool_details.total_column")}),i&&r.jsx("span",{role:"columnheader",className:"text-right",children:g("dashboard.context_breakdown.exec_details.output_column")})]}),s.map((c,d)=>r.jsxs(Le.div,{role:"row",className:`grid ${l} gap-2 py-1.5`,title:c.name,initial:{opacity:0},animate:{opacity:1},transition:{duration:.18,delay:d*.02},children:[r.jsx("span",{role:"cell",className:"min-w-0 text-body-sm font-medium text-oai-black dark:text-oai-white truncate",children:c.name}),r.jsx("span",{role:"cell",className:"text-right text-body-sm tabular-nums text-oai-gray-700 dark:text-oai-gray-300",children:pt(c.calls||0)}),i&&r.jsxs(r.Fragment,{children:[r.jsx("span",{role:"cell",className:"text-right text-body-sm tabular-nums text-oai-gray-700 dark:text-oai-gray-300",children:pt(c.failures||0)}),r.jsx("span",{role:"cell",className:"text-right text-body-sm tabular-nums text-oai-gray-700 dark:text-oai-gray-300",children:Yo(c.duration_ms||0)}),r.jsx("span",{role:"cell",className:"text-right text-body-sm tabular-nums text-oai-gray-700 dark:text-oai-gray-300",children:Yo(c.max_duration_ms||0)})]}),r.jsx("span",{role:"cell",className:"text-right text-body-sm tabular-nums text-oai-gray-700 dark:text-oai-gray-300",children:n(c.totals.total_tokens||0)}),i&&r.jsx("span",{role:"cell",className:"text-right text-body-sm tabular-nums text-oai-gray-700 dark:text-oai-gray-300",children:pt(c.output_lines||0)})]},c.name))]})})]})}function _n({toolSet:e,execDetails:t,source:n,codexQueueFallback:a}){const{formatTokens:o}=Qe(),[s,i]=h.useState({}),[l,c]=h.useState(!1),d=sy(e?.categories||[]);function u(f){i(m=>({...m,[f]:!m[f]}))}return d.length===0?r.jsx("p",{className:"text-[11px] text-oai-gray-400 dark:text-oai-gray-500 py-0.5",children:n==="codex"&&a?g("dashboard.context_breakdown.tool_details.unavailable_codex"):g(mi(n))}):r.jsx("ul",{className:"mt-0.5 mb-0.5 space-y-0.5",children:d.map(f=>{const m=f.toolCount>0,y=f.name==="Execution"&&t,p=y&&f.tools.some(x=>Ho(x.name)),b=!!s[f.name];return r.jsxs(yt,{level:1,label:f.name,labelTone:"strong",hasChevron:m||y&&!p,open:b||y&&!p&&l,onToggle:()=>{m?u(f.name):y&&!p&&c(x=>!x)},tokens:o(f.totals.total_tokens||0),percent:null,children:[m&&r.jsx("ul",{className:"space-y-0.5",children:f.tools.map(x=>{const w=y&&Ho(x.name);return r.jsx(yt,{level:2,label:x.name,labelTone:w?"accent":"default",hasChevron:w,open:l,onToggle:()=>c(k=>!k),tokens:o(x.total_tokens||0),percent:null,children:w&&r.jsx(Uo,{execDetails:t,source:n})},x.name)})}),y&&!p&&r.jsx(Uo,{execDetails:t,source:n})]},f.name)})})}function gy({from:e,to:t,source:n="claude",referenceTotalTokens:a=null,onLoadingChange:o=null}){const{formatTokens:s}=Qe(),[i,l]=h.useState(null),[c,d]=h.useState(!1),[u,f]=h.useState(null),[m,y]=h.useState({});function p(P){y(E=>({...E,[P]:!E[P]}))}if(h.useEffect(()=>{let P=!1;return d(!0),o?.(!0),f(null),ec({from:e,to:t,source:n,timeZone:ms(),tzOffsetMinutes:fs()}).then(E=>{P||l(E)}).catch(E=>{P||f(E?.message||String(E))}).finally(()=>{P||(d(!1),o?.(!1))}),()=>{P=!0}},[e,t,n]),c&&!i)return r.jsxs("div",{children:[r.jsx("div",{className:"h-1 w-full bg-oai-gray-100 dark:bg-oai-gray-800 rounded-full overflow-hidden animate-pulse"}),r.jsx("div",{className:"mt-3 grid grid-cols-1 sm:grid-cols-2 gap-x-4 gap-y-2",children:[0,1,2,3,4].map(P=>r.jsx("div",{className:"h-3 rounded bg-oai-gray-100 dark:bg-oai-gray-800 animate-pulse",style:{animationDelay:`${P*80}ms`}},P))}),r.jsx("p",{className:"mt-3 text-[11px] text-oai-gray-500 dark:text-oai-gray-400",children:g("dashboard.context_breakdown.loading_hint")})]});if(u)return r.jsx("p",{className:"text-xs text-oai-gray-500 dark:text-oai-gray-400",children:g(fy(n))});if(!i||i.scope!=="supported"||!i.totals?.total_tokens)return r.jsx("p",{className:"text-xs text-oai-gray-500 dark:text-oai-gray-400",children:g(mi(n))});const b=n==="claude"?ty(i.categories||[],a):ny(i,a),x=i.tool_calls_breakdown||null,w=i.skills_breakdown||null,k=i.message_breakdown||null,N=i.configured_resources||null,S=i.exec_command_breakdown||null,v=ly(w?.skills||[]),j=iy(k?.categories||[]),T=n==="codex"&&(i?.breakdown_status==="queue_fallback"||i?.fallback==="queue_totals"),_=n==="claude"?x?.tool_calls||null:x||null,{mcpSet:M,residualSet:O,mcpTotalTokens:$}=ay(_),Y=n==="claude"&&x?.subagents||null,H=Y?.categories?.length>0||(N?.custom_agents_count||0)>0,L=n==="claude"?(O?.categories||[]).reduce((P,E)=>P+Number(E?.totals?.total_tokens||0),0):0,D=n==="claude"?(Y?.categories||[]).reduce((P,E)=>P+Number(E?.totals?.total_tokens||0),0):0,F=[...b].sort((P,E)=>(E.totals?.total_tokens||0)-(P.totals?.total_tokens||0));return r.jsxs("div",{role:"region","aria-label":g("dashboard.context_breakdown.bar_aria",{summary:b.filter(P=>P.percent>0).filter(P=>!(n==="claude"&&(P.key==="tool_calls"||P.key==="custom_agents"))).map(P=>`${zo(P.key)} ${P.percent}%`).join(",")}),children:[r.jsxs("ul",{className:"space-y-0.5",children:[F.map(P=>{const E=P.key==="system_prompt",B=P.key==="messages",R=P.key==="tool_calls",z=P.key==="custom_agents";if(P.key,n==="claude"&&(R||z))return null;const U=B&&j.length>0||R&&(O?.categories?.length>0||T)||z&&H&&Y,se=!!m[P.key],ce=Vg(P.key,n),de=r.jsx("span",{className:"h-2 w-2 rounded-sm shrink-0",style:{backgroundColor:ce},"aria-hidden":"true"}),ye=E?r.jsxs("span",{className:"relative inline-flex shrink-0 group",children:[r.jsx(bs,{size:11,className:"text-oai-gray-400 dark:text-oai-gray-500 cursor-help","aria-hidden":"true"}),r.jsx("span",{role:"tooltip",className:"pointer-events-none absolute left-1/2 bottom-full z-20 mb-1.5 -translate-x-1/2 w-64 rounded-md border border-oai-gray-200 dark:border-oai-gray-700 bg-oai-white dark:bg-oai-gray-900 px-2.5 py-1.5 text-[11px] leading-snug text-oai-gray-700 dark:text-oai-gray-200 shadow-md opacity-0 group-hover:opacity-100 transition-opacity",children:g("dashboard.context_breakdown.system_prefix_tooltip")})]}):null,fe=P.percent>0?`${P.percent.toFixed(P.percent<.1&&P.percent>0?2:1)}%`:"0.0%";return r.jsxs(yt,{level:0,colorSquare:de,label:zo(P.key),labelSuffix:ye,tokens:s(P.totals?.total_tokens||0),percent:fe,hasChevron:U,open:se,onToggle:()=>p(P.key),share:P.percent,fillColor:ce,children:[B&&r.jsx("ul",{className:"space-y-0.5",children:j.map(ie=>r.jsx(yt,{level:1,label:cy(ie),tokens:s(ie.totals.total_tokens||0),percent:null},ie.key||ie.name))}),R&&O&&r.jsx(_n,{toolSet:O,execDetails:S,source:n,codexQueueFallback:T}),R&&T&&!O&&r.jsx("p",{className:"text-[11px] text-oai-gray-400 dark:text-oai-gray-500 py-0.5",children:g("dashboard.context_breakdown.tool_details.unavailable_codex")}),z&&Y&&r.jsx(_n,{toolSet:Y,execDetails:null,source:n,codexQueueFallback:!1})]},P.key)}),n==="claude"&&O?.categories?.length>0&&r.jsx(yt,{level:0,colorSquare:r.jsx("span",{className:"h-2 w-2 rounded-sm shrink-0 bg-oai-gray-300 dark:bg-oai-gray-600","aria-hidden":"true"}),label:g("dashboard.context_breakdown.category.tool_calls"),tokens:s(L),percent:null,hasChevron:!0,open:!!m.tool_calls_aux,onToggle:()=>p("tool_calls_aux"),children:r.jsx(_n,{toolSet:O,execDetails:S,source:n,codexQueueFallback:!1})}),n==="claude"&&Y?.categories?.length>0&&r.jsx(yt,{level:0,colorSquare:r.jsx("span",{className:"h-2 w-2 rounded-sm shrink-0 bg-oai-gray-300 dark:bg-oai-gray-600","aria-hidden":"true"}),label:g("dashboard.context_breakdown.category.custom_agents"),tokens:s(D),percent:null,hasChevron:!0,open:!!m.custom_agents_aux,onToggle:()=>p("custom_agents_aux"),children:r.jsx(_n,{toolSet:Y,execDetails:null,source:n,codexQueueFallback:!1})}),M?.categories?.length>0&&r.jsx(yt,{level:0,colorSquare:r.jsx("span",{className:"h-2 w-2 rounded-sm shrink-0 bg-oai-gray-300 dark:bg-oai-gray-600","aria-hidden":"true"}),label:g("dashboard.context_breakdown.category.mcp_servers"),tokens:s($),percent:null,hasChevron:!0,open:!!m.mcp_servers,onToggle:()=>p("mcp_servers"),children:r.jsx(_n,{toolSet:M,execDetails:null,source:n,codexQueueFallback:!1})}),v.length>0&&r.jsx(yt,{level:0,colorSquare:r.jsx("span",{className:"h-2 w-2 rounded-sm shrink-0 bg-oai-gray-300 dark:bg-oai-gray-600","aria-hidden":"true"}),label:g("dashboard.context_breakdown.category.skills"),tokens:s(v.reduce((P,E)=>P+(E.total_tokens||0),0)),percent:null,hasChevron:!0,open:!!m.skills,onToggle:()=>p("skills"),children:r.jsx("ul",{className:"space-y-0.5",children:v.slice(0,12).map(P=>r.jsx(yt,{level:1,label:P.name,tokens:s(P.total_tokens),percent:null},P.name))})})]}),r.jsx("p",{className:"mt-2 text-[10px] text-oai-gray-400 dark:text-oai-gray-500",children:g(my(n))}),T?r.jsx("p",{className:"mt-2 text-[11px] text-oai-gray-500 dark:text-oai-gray-400",children:g("dashboard.context_breakdown.tool_details.unavailable_codex")}):null,N?r.jsxs("p",{className:"mt-2 text-[10px] text-oai-gray-400 dark:text-oai-gray-500",children:[pt(N.skills_count||0)," skills ·"," ",pt(N.mcp_servers_count||0)," MCP servers ·"," ",pt(N.custom_agents_count||0)," agents ·"," ",pt(N.memory_files_count||0)," memory files"]}):null]})}function sa(e,t){const n=Number(t);return Number.isFinite(n)&&n>0?e(n):null}function hi(e,t,n){const a=Number(e);if(!Number.isFinite(a)||a<=0)return null;const o=fa(t);return(t===ds?a:a*n)<.01?`<${o}0.01`:cn(a,{decimals:2,currency:t,rate:n})}function yy(e){return Array.isArray(e)?e.map(t=>typeof t=="string"?{key:t,label:Vo(t)}:{key:t.key,label:t.label||Vo(t.key)}):[]}function py(e){if(typeof e!="string")return null;const t=e.replace(/,/g,"").match(/-?\d+(?:\.\d+)?/);if(!t)return null;const n=Number(t[0]);return Number.isFinite(n)?n:null}const xy={CODEX:"#3b82f6",CLAUDE:"#d97757",OPENCODE:"#f59e0b",GEMINI:"#2196f3",KIMI:"#a78bfa","KILO-CLI":"#facc15","KILO-CODE":"#facc15",MIMO:"#ff6900",DROID:"#ef4444",ZCODE:"#14b8a6",ANYTHINGLLM:"var(--provider-anythingllm)"};function Xa(e,t){const n=e?.toUpperCase?.()||"";return xy[n]||`hsl(${150+t*40}, 60%, 45%)`}function by(e){const t=String(e?.source||"").trim().toLowerCase(),n=String(e?.label||"").trim().toLowerCase();return t==="claude"||n==="claude"?"claude":t==="codex"||n==="codex"?"codex":null}function ky(e){return!!e?.models?.length}function gi(e){const t=Number(e?.totalPercentValue??e?.totalPercent);return Number.isFinite(t)?Math.max(0,t):0}function Qa(e){const t=gi(e);return t>0&&!(t>=.01)?g("usage.overview.percent_below_threshold"):t.toFixed(2)}const wy={day:"usage.period.day",week:"usage.period.week",month:"usage.period.month",total:"usage.period.total",custom:"usage.period.custom"};function Vo(e){const t=wy[e];return t?g(t):String(e).toUpperCase()}function vy({loading:e,onClick:t}){const n=br();return r.jsx(or,{variant:"secondary",size:"sm",disabled:e,onClick:t,"aria-label":g("usage.button.refresh"),className:"w-8 p-0",children:r.jsx(Le.span,{"aria-hidden":"true",animate:e?{rotate:360}:{rotate:0},transition:e&&!n?{duration:1,repeat:1/0,ease:"linear"}:{duration:.3},style:{display:"inline-block"},children:"↻"})})}function _y(){return r.jsx("div",{"data-testid":"usage-summary-skeleton","aria-hidden":"true",className:"mx-auto h-[58px] sm:h-[72px] w-[min(72vw,18rem)] rounded-2xl bg-oai-gray-100 dark:bg-oai-gray-800 animate-pulse motion-reduce:animate-none"})}function Ny(){return r.jsxs("div",{"data-testid":"usage-provider-skeleton","aria-hidden":"true",className:"space-y-6",children:[r.jsx("div",{className:"h-1.5 w-full rounded-full bg-oai-gray-100 dark:bg-oai-gray-800 animate-pulse motion-reduce:animate-none"}),r.jsx("div",{className:"grid grid-cols-[repeat(auto-fill,minmax(140px,1fr))] gap-3",children:[0,1,2,3].map(e=>r.jsx("div",{className:"h-[92px] rounded-xl border border-oai-gray-100 dark:border-oai-gray-800 bg-oai-gray-50 dark:bg-oai-gray-800/60 animate-pulse motion-reduce:animate-none",style:{animationDelay:`${e*70}ms`}},e))})]})}function jy({period:e,periods:t,onPeriodChange:n,summaryValue:a,summaryFullValue:o,onToggleSummaryFormat:s,summaryLabel:i,summaryCostValue:l,onCostInfo:c,fleetData:d=[],onRefresh:u,loading:f,summaryLoading:m=!1,providersLoading:y=!1,hasSummary:p=!0,className:b="",customFrom:x,customTo:w,onCustomRangeApply:k,customRangeOpen:N,onCustomRangeOpenChange:S,onOpenShare:v,from:j,to:T,deviceOptions:_=[],selectedDevice:M="",onDeviceChange:O}){const $=yy(t),Y=ri(us()),H=py(String(a??"")),L=()=>typeof window<"u"&&typeof window.matchMedia=="function"&&window.matchMedia("(max-width: 639px)").matches,[D,F]=h.useState(L);h.useEffect(()=>{if(typeof window>"u"||typeof window.matchMedia!="function")return;const A=window.matchMedia("(max-width: 639px)"),G=ne=>F(ne.matches);return A.addEventListener("change",G),()=>A.removeEventListener("change",G)},[]);const P=H!=null&&!D,E=h.useRef(null);h.useEffect(()=>{const A=E.current?.querySelector('[aria-selected="true"]');A&&typeof A.scrollIntoView=="function"&&A.scrollIntoView({block:"nearest",inline:"center"})},[e]);const[B,R]=h.useState(null),{resolvedTheme:z}=tc(),{currency:U,rate:se}=un(),{formatTokens:ce}=Qe(),de=z==="dark",ye=de?"rgba(10,10,10,0.98)":"rgba(255,255,255,0.96)",fe=de?"rgba(10,10,10,0)":"rgba(255,255,255,0)",ie=m&&!p,ae=y&&!d.some(ky),q=P?r.jsx(hd,{value:H,displayValue:a,fontSize:72,padding:6,gap:1,textColor:"var(--oai-black, #111827)",fontWeight:700,gradientHeight:de?0:8,gradientFrom:ye,gradientTo:fe,counterStyle:{paddingLeft:0,paddingRight:0,gap:0},digitStyle:{width:"0.88ch"}}):a,J=d.filter(A=>A.models?.length>0);return r.jsx(nt,{className:b,children:r.jsxs("div",{"aria-busy":ie||ae,children:[r.jsxs("div",{className:"flex items-center gap-2 mb-6",children:[r.jsx("div",{ref:E,role:"tablist","aria-label":g("usage.overview.tablist_aria"),className:"flex flex-1 min-w-0 gap-1 overflow-x-auto [scrollbar-width:none] [&::-webkit-scrollbar]:hidden",children:$.map(A=>{const G=e===A.key,ne=`shrink-0 whitespace-nowrap text-xs font-medium px-3 py-1.5 rounded-md transition-colors ${G?"text-oai-black dark:text-oai-white bg-oai-gray-100 dark:bg-oai-gray-800":"text-oai-gray-500 dark:text-oai-gray-300 hover:text-oai-black dark:hover:text-oai-white hover:bg-oai-gray-50 dark:hover:bg-oai-gray-800"}`;if(A.key==="custom"){const Z=G&&x&&w?`${Do(x,Y)} — ${Do(w,Y)}`:A.label;return r.jsxs(sr,{open:N,onOpenChange:te=>{te?n?.("custom"):S?.(te)},children:[r.jsx(ir,{render:r.jsx("button",{role:"tab","aria-selected":G,type:"button",className:ne}),children:Z}),r.jsx(lr,{children:r.jsx(cr,{sideOffset:8,side:"bottom",align:"start",className:"!z-[9999]",children:r.jsx(dr,{className:"bg-white dark:bg-oai-gray-900 border border-oai-gray-200 dark:border-oai-gray-700 rounded-xl shadow-lg",children:r.jsx(fr,{from:x,to:w,onApply:k,onCancel:()=>S?.(!1)})})})})]},"custom")}return r.jsx("button",{role:"tab","aria-selected":G,type:"button",className:ne,onClick:()=>n?.(A.key),children:A.label},A.key)})}),r.jsxs("div",{className:"flex items-center gap-1.5 shrink-0",children:[_.length>1?r.jsx(gs,{value:M,onValueChange:O,options:_,ariaLabel:g("dashboard.device_filter.aria"),matchTriggerWidth:!0,className:"h-8 px-3 text-xs font-medium rounded-md border-oai-gray-300 dark:border-oai-gray-700 bg-oai-white dark:bg-oai-gray-900 text-oai-black dark:text-oai-white hover:border-oai-brand hover:text-oai-brand hover:[&_svg]:text-oai-brand transition-colors duration-200"}):null,v?r.jsxs("button",{type:"button",onClick:v,"aria-label":g("share.button.aria"),className:"inline-flex items-center justify-center gap-1.5 h-8 px-3 text-xs font-medium rounded-md border border-oai-gray-300 dark:border-oai-gray-700 bg-oai-white dark:bg-oai-gray-900 text-oai-black dark:text-oai-white hover:border-oai-brand hover:text-oai-brand transition-colors duration-200",children:[r.jsx(ed,{className:"h-3.5 w-3.5",strokeWidth:2}),g("share.button.label")]}):null,u&&r.jsx(vy,{loading:f,onClick:u})]})]}),r.jsxs("div",{className:"text-center mb-8",children:[r.jsx("div",{className:"text-xs text-oai-gray-500 dark:text-oai-gray-300 uppercase tracking-wider mb-3",children:i}),r.jsxs("div",{className:"relative text-5xl sm:text-6xl md:text-7xl font-bold text-oai-black dark:text-oai-white tracking-tight tabular-nums",children:[r.jsx("div",{className:ie?"invisible":void 0,children:s?r.jsx("button",{type:"button",onClick:s,title:o||void 0,"aria-label":g("usage.summary.toggle_aria"),className:"cursor-pointer rounded-lg leading-none transition-opacity hover:opacity-80 focus:outline-none focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-oai-brand",children:q}):r.jsx("span",{title:o||void 0,children:q})}),r.jsx("div",{className:`absolute inset-0 flex items-center justify-center ${ie?"":"hidden"}`,children:r.jsx(_y,{})})]}),l&&r.jsx("div",{className:"flex items-center justify-center gap-2 mt-4",children:c?r.jsxs("button",{type:"button",onClick:c,className:"inline-flex items-center gap-1.5 text-xl font-bold text-oai-brand hover:text-oai-brand-dark dark:hover:text-oai-brand-light transition-colors cursor-pointer","aria-label":g("usage.overview.cost_breakdown_aria"),children:[l,r.jsx(bs,{size:16,strokeWidth:2,className:"opacity-80"})]}):r.jsx("span",{className:"text-xl font-bold text-oai-brand",children:l})})]}),r.jsx("div",{className:ae?void 0:"hidden",children:r.jsx(Ny,{})}),J.length>0&&r.jsxs("div",{className:"space-y-6",children:[r.jsx("div",{role:"img","aria-label":g("usage.overview.distribution_aria",{items:J.map(A=>g("usage.overview.distribution_item",{label:on(A.label),percent:Qa(A)})).join(",")}),className:"h-1.5 w-full bg-oai-gray-100 dark:bg-oai-gray-800 rounded-full overflow-hidden flex",children:J.map((A,G)=>{const ne=Xa(A.label,G),Z=on(A.label),te=Qa(A);return r.jsx(Le.div,{initial:{width:0},animate:{width:`${gi(A)}%`},transition:{duration:.5,delay:.45+G*.04,ease:[.16,1,.3,1]},className:"h-full",style:{backgroundColor:ne},title:`${Z}: ${te}%`},A.label)})}),r.jsx("div",{className:"grid grid-cols-[repeat(auto-fill,minmax(140px,1fr))] gap-3",children:J.map((A,G)=>{const ne=Xa(A.label,G),Z=B===A.label,te=on(A.label),be=Qa(A);return r.jsxs("button",{"aria-expanded":Z,"aria-controls":`provider-details-${A.label}`,"aria-label":g("usage.overview.provider_card_aria",{provider:te,percent:be,tokens:sa(ce,A.usage)||String(0),cost:hi(A.usd,U,se)||`${fa(U)}0`,action:g(Z?"usage.overview.collapse":"usage.overview.expand")}),onClick:()=>R(Z?null:A.label),className:`min-w-0 text-left p-3 rounded-lg border transition-colors duration-200 ${Z?"border-oai-gray-300 dark:border-oai-gray-600 bg-oai-gray-50 dark:bg-oai-gray-800":"border-oai-gray-200 dark:border-oai-gray-700 hover:border-oai-gray-300 dark:hover:border-oai-gray-600"}`,children:[r.jsxs("div",{className:"flex items-center gap-1.5 mb-1 min-w-0",children:[r.jsx(dn,{provider:A.label,size:15,color:ne,className:"text-oai-gray-700 dark:text-oai-gray-300 shrink-0"}),r.jsx("span",{className:"text-sm font-medium text-oai-black dark:text-oai-white truncate",title:te,children:te})]}),r.jsxs("div",{className:"text-lg font-semibold text-oai-black dark:text-oai-white tabular-nums",children:[be,"%"]}),r.jsx("div",{className:"mt-0.5 text-[11px] text-oai-gray-400 dark:text-oai-gray-400 tabular-nums",children:g("usage.overview.model_count",{count:A.models.length})})]},A.label)})}),B&&r.jsx("div",{id:`provider-details-${B}`,role:"region","aria-label":g("usage.overview.model_details_aria",{provider:B}),className:"mt-2",children:J.filter(A=>A.label===B).map(A=>{const G=Xa(A.label,0),ne=by(A),Z=[...A.models].sort((be,Se)=>(Se.share||0)-(be.share||0)),te=ne?`${ne==="claude"?"Claude":"Codex"} Context Breakdown`:on(A.label);return r.jsx(Sy,{provider:A,color:G,providerHeading:te,contextSource:ne,from:j,to:T,sortedModels:Z},A.label)})})]})]})})}function Sy({provider:e,color:t,providerHeading:n,contextSource:a,from:o,to:s,sortedModels:i}){const{currency:l,rate:c}=un(),{formatTokens:d,formatTokensTooltip:u}=Qe(),[f,m]=h.useState(!1),y=String(e?.source||e?.label||"").trim().toLowerCase()==="antigravity";return r.jsxs("div",{children:[r.jsxs("div",{className:"flex items-center gap-1.5 mb-3",children:[r.jsx(dn,{provider:e.label,size:14,color:t,className:"shrink-0"}),r.jsx("span",{className:"text-sm font-medium text-oai-black dark:text-oai-white",children:n}),a&&f&&r.jsx(Lc,{size:12,className:"text-oai-gray-400 dark:text-oai-gray-500 animate-spin shrink-0","aria-label":g("dashboard.context_breakdown.loading_aria")})]}),e.cacheHitRate!=null&&r.jsxs("p",{className:"mb-3 text-[11px] leading-snug text-oai-gray-500 dark:text-oai-gray-400 tabular-nums",children:[r.jsx("span",{className:"font-medium text-oai-gray-600 dark:text-oai-gray-300",children:g("usage.overview.cache_hit_rate_label")})," ",r.jsxs("span",{className:"text-oai-black dark:text-oai-white",children:[e.cacheHitRate,"%"]})," · ",g("usage.overview.cache_hit_rate_detail",{reused:sa(d,e.cacheReusedTokens)||String(0),input:sa(d,e.cacheInputTokens)||String(0)})]}),y&&r.jsxs("p",{className:"mb-3 text-[10px] leading-snug text-oai-gray-400 dark:text-oai-gray-500",children:[r.jsxs("span",{className:"font-medium text-oai-gray-500 dark:text-oai-gray-400",children:[g("usage.overview.antigravity_notice_title"),"."]})," ",g("usage.overview.antigravity_notice_body")]}),a?r.jsx("div",{className:"mb-4 pb-4 border-b border-oai-gray-200 dark:border-oai-gray-700",children:r.jsx(gy,{from:o,to:s,source:a,referenceTotalTokens:e.usage,onLoadingChange:m})}):null,r.jsx("div",{className:"space-y-3",children:i.map(p=>{const b=sa(d,p.usage),x=hi(p.cost,l,c),w=Math.max(0,Math.min(100,Number(p.share)||0));return r.jsxs("div",{children:[r.jsxs("div",{className:"grid grid-cols-[minmax(0,1fr)_minmax(8rem,max-content)_minmax(5.5rem,max-content)_4rem] items-baseline gap-x-3 mb-1.5",children:[r.jsx("span",{className:"col-start-1 row-start-1 min-w-0 text-sm text-oai-gray-700 dark:text-oai-gray-300 truncate",title:p.name,children:p.name}),r.jsx("span",{title:u(p.usage),className:"col-start-2 row-start-1 text-right whitespace-nowrap text-sm text-oai-gray-500 dark:text-oai-gray-400 tabular-nums",children:b}),r.jsx("span",{className:"col-start-3 row-start-1 text-right whitespace-nowrap text-sm text-oai-gray-500 dark:text-oai-gray-400 tabular-nums",children:x}),r.jsxs("span",{className:"col-start-4 row-start-1 text-right whitespace-nowrap text-sm text-oai-black dark:text-oai-white tabular-nums",children:[p.share,"%"]})]}),r.jsx("div",{className:"h-[3px] bg-oai-gray-100 dark:bg-oai-gray-800 rounded-full overflow-hidden",role:"progressbar","aria-valuenow":w,"aria-valuemin":0,"aria-valuemax":100,children:r.jsx("div",{className:"h-full transition-[width] duration-500 ease-out",style:{width:`${w}%`,backgroundColor:t,opacity:.45}})})]},p.id||p.name)})})]})}function My({id:e,children:t,onEmptyChange:n}){const{attributes:a,listeners:o,setNodeRef:s,transform:i,transition:l,isDragging:c}=bc({id:e}),d=h.useRef(null),u=h.useRef(null);h.useLayoutEffect(()=>{if(!n)return;const m=d.current?d.current.childNodes.length===0:!0;u.current!==m&&(u.current=m,n(e,m))});const f={transform:kc.Transform.toString(i)||void 0,transition:l,zIndex:c?20:void 0};return r.jsxs("div",{ref:s,style:f,className:Fe("group/sortable relative has-[[data-sortable-body]:empty]:hidden",c&&"opacity-90"),children:[r.jsx("button",{type:"button","aria-label":g("dashboard.overview.layout.drag_handle"),className:Fe("peer absolute left-1/2 top-1 z-10 flex h-5 w-6 -translate-x-1/2 items-center justify-center rounded-md","cursor-grab active:cursor-grabbing touch-none select-none","text-oai-gray-400 dark:text-oai-gray-600 opacity-0 transition-colors duration-150","hover:text-oai-gray-600 dark:hover:text-oai-gray-300 hover:bg-oai-gray-100 dark:hover:bg-oai-gray-800","group-hover/sortable:opacity-100 focus-visible:opacity-100 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-oai-brand/50",c&&"opacity-100 bg-oai-gray-100 dark:bg-oai-gray-800"),...a,...o,children:r.jsxs("svg",{viewBox:"0 0 14 8",width:"14",height:"8",fill:"currentColor","aria-hidden":"true",children:[r.jsx("circle",{cx:"2",cy:"2",r:"1"}),r.jsx("circle",{cx:"2",cy:"6",r:"1"}),r.jsx("circle",{cx:"7",cy:"2",r:"1"}),r.jsx("circle",{cx:"7",cy:"6",r:"1"}),r.jsx("circle",{cx:"12",cy:"2",r:"1"}),r.jsx("circle",{cx:"12",cy:"6",r:"1"})]})}),r.jsx("div",{ref:d,"data-sortable-body":!0,className:Fe("rounded-xl transition-shadow duration-200 ease-out","peer-hover:shadow-[0_12px_28px_-14px_rgba(15,23,42,0.22)] dark:peer-hover:shadow-[0_12px_28px_-12px_rgba(0,0,0,0.6)]","peer-focus-visible:shadow-[0_12px_28px_-14px_rgba(15,23,42,0.22)] dark:peer-focus-visible:shadow-[0_12px_28px_-12px_rgba(0,0,0,0.6)]",c&&"shadow-[0_12px_28px_-14px_rgba(15,23,42,0.22)] dark:shadow-[0_12px_28px_-12px_rgba(0,0,0,0.6)]"),children:t})]})}function Cy({todayTokens:e=0,isSyncing:t=!1,hasError:n=!1,isDisconnected:a=!1}={}){return h.useMemo(()=>n?"error":a?"disconnected":t?"working-typing":e===0?"sleeping":e<5e4?"idle-living":e<2e5?"idle-look":e<5e5?"working-ultrathink":e<2e6?"working-typing":"working-ultrathink",[e,t,n,a])}const qo="macAppBannerDismissed",Dy="leaderboardBannerDismissed",Ty="https://github.com/mm7894215/TokenTracker/releases/latest",Go="tokentracker_native_app",Zn=(()=>{try{return new URLSearchParams(window.location.search).get("app")==="1"?(localStorage.setItem(Go,"1"),!0):localStorage.getItem(Go)==="1"}catch{return!1}})();function Py({todayTokens:e=0,isSyncing:t=!1,enterDelay:n=0}){const{openLoginModal:a}=nc(),{signedIn:o}=hs(),s=Cy({todayTokens:e,isSyncing:t}),i=Zn?Dy:qo,[l,c]=h.useState(()=>{try{return localStorage.getItem(i)==="1"?!0:!Zn&&new URLSearchParams(window.location.search).get("from")==="menubar"?(localStorage.setItem(qo,"1"),!0):!1}catch{return!1}}),d=h.useCallback(()=>{c(!0);try{localStorage.setItem(i,"1")}catch{}},[i]);if(l)return null;let u,f,m,y,p,b;Zn&&o?(u="View the Leaderboard",f="Compare your usage globally",m="Leaderboard",y=r.jsx("svg",{width:"12",height:"12",viewBox:"0 0 12 12",fill:"none",className:"opacity-70",children:r.jsx("path",{d:"M2 8.5V10h8V8.5M6 1.5v6m0 0L3.5 5M6 7.5l2.5-2.5",stroke:"currentColor",strokeWidth:"1.2",strokeLinecap:"round",strokeLinejoin:"round",transform:"rotate(180 6 6)"})}),p=()=>{window.location.pathname="/leaderboard"}):Zn?(u="Join the Leaderboard",f="Log in to compare your usage with others",m="Log In",y=r.jsx("svg",{width:"12",height:"12",viewBox:"0 0 12 12",fill:"none",className:"opacity-70",children:r.jsx("path",{d:"M6.5 1.5h3a1 1 0 011 1v7a1 1 0 01-1 1h-3M5 8.5L7.5 6 5 3.5M7.5 6H1.5",stroke:"currentColor",strokeWidth:"1.2",strokeLinecap:"round",strokeLinejoin:"round"})}),p=a):(u="Try the Menu Bar App",f="Always-on stats with Clawd companion",m="Download",y=r.jsx("svg",{width:"12",height:"12",viewBox:"0 0 12 12",fill:"none",className:"opacity-70",children:r.jsx("path",{d:"M6 2v6m0 0L3.5 5.5M6 8l2.5-2.5M2 10h8",stroke:"currentColor",strokeWidth:"1.2",strokeLinecap:"round",strokeLinejoin:"round"})}),b=Ty);const x=b?Le.a:Le.button,w=b?{href:b,target:"_blank",rel:"noopener noreferrer"}:{onClick:p};return r.jsx(Le.div,{initial:{opacity:0,y:12},animate:{opacity:1,y:0},transition:{duration:.35,delay:n,ease:[.16,1,.3,1]},className:"rounded-xl border border-oai-gray-200 dark:border-oai-gray-800 bg-white dark:bg-oai-gray-900 p-4",children:r.jsxs("div",{className:"flex items-center gap-3",children:[r.jsx("div",{className:"flex-shrink-0",children:r.jsx(Rc,{state:s,size:56})}),r.jsxs("div",{className:"flex-1 min-w-0",children:[r.jsx("div",{className:"text-sm font-medium text-oai-gray-900 dark:text-oai-white",children:u}),r.jsx("div",{className:"text-xs text-oai-gray-500 dark:text-oai-gray-400 mt-0.5",children:f})]}),r.jsxs("div",{className:"flex items-center gap-2 flex-shrink-0",children:[r.jsxs(x,{...w,whileHover:{scale:1.03},whileTap:{scale:.97},className:"inline-flex items-center gap-1.5 px-3 py-1.5 text-xs font-medium text-white bg-oai-gray-900 dark:bg-oai-white dark:text-oai-gray-900 rounded-md hover:opacity-90 transition-opacity",children:[m,y]}),r.jsx("button",{onClick:d,className:"p-1 text-oai-gray-400 hover:text-oai-gray-600 dark:hover:text-oai-gray-300 transition-colors","aria-label":"Dismiss",children:r.jsx("svg",{width:"14",height:"14",viewBox:"0 0 14 14",fill:"none",children:r.jsx("path",{d:"M4 4l6 6m0-6L4 10",stroke:"currentColor",strokeWidth:"1.2",strokeLinecap:"round"})})})]})]})})}const Ko="widgetOnboardingDismissed",Xo="tokentracker_native_app",Oy=(()=>{try{return new URLSearchParams(window.location.search).get("app")==="1"?(localStorage.setItem(Xo,"1"),!0):localStorage.getItem(Xo)==="1"}catch{return!1}})();function Ey({enterDelay:e=0}){const[t,n]=h.useState(()=>{try{return localStorage.getItem(Ko)==="1"}catch{return!1}}),a=h.useCallback(()=>{n(!0);try{localStorage.setItem(Ko,"1")}catch{}},[]);return!Oy||ac()?null:r.jsx(vr,{initial:!1,children:!t&&r.jsxs(Le.div,{initial:{opacity:0,y:12},animate:{opacity:1,y:0},exit:{opacity:0,y:-8,transition:{duration:.2,ease:[.4,0,.2,1]}},transition:{duration:.35,delay:e,ease:[.16,1,.3,1]},className:"relative rounded-xl border border-oai-gray-200 dark:border-oai-gray-800 bg-white dark:bg-oai-gray-900 p-4",children:[r.jsx("button",{type:"button",onClick:a,"aria-label":g("dashboard.widgets.dismiss_aria"),className:"absolute top-2.5 right-2.5 z-10 inline-flex items-center justify-center w-7 h-7 rounded-md text-oai-gray-400 hover:text-oai-gray-700 dark:hover:text-oai-gray-200 hover:bg-oai-gray-100 dark:hover:bg-oai-gray-800 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-oai-gray-300 dark:focus-visible:ring-oai-gray-600 transition-colors",children:r.jsx("svg",{width:"14",height:"14",viewBox:"0 0 14 14",fill:"none","aria-hidden":"true",children:r.jsx("path",{d:"M4 4l6 6m0-6L4 10",stroke:"currentColor",strokeWidth:"1.4",strokeLinecap:"round"})})}),r.jsx("div",{className:"rounded-lg overflow-hidden ring-1 ring-black/5 dark:ring-white/10 shadow-sm",children:r.jsx("img",{src:"/widgets-overview.png",alt:g("dashboard.widgets.title"),width:734,height:552,className:"w-full h-auto block",loading:"lazy",decoding:"async"})}),r.jsxs("div",{className:"mt-4",children:[r.jsx("div",{className:"text-sm font-medium tracking-tight text-oai-gray-900 dark:text-oai-white",children:g("dashboard.widgets.title")}),r.jsx("div",{className:"text-xs text-oai-gray-500 dark:text-oai-gray-400 mt-1 leading-snug",children:g("dashboard.widgets.hint")})]})]},"widget-onboarding-card")})}function Ay({enabled:e=!1,from:t,to:n,accessToken:a,deviceId:o=null}={}){const[s,i]=h.useState(null),[l,c]=h.useState(!1),[d,u]=h.useState(null),f=fn([e,t,n,a,o]),m=h.useCallback(async()=>{if(!e)return;const y=f();c(!0),u(null);try{const p=await Ye(a);if(!y())return;const b=await rc({from:t,to:n,device:o,accessToken:p});if(!y())return;i(b||null)}catch(p){if(!y())return;u(p?.message||String(p)),i(null)}finally{y()&&c(!1)}},[e,t,n,a,o,f]);return h.useEffect(()=>{if(!e){i(null),u(null),c(!1);return}i(null),u(null),c(!0),m()},[e,m]),{data:s,loading:l,error:d,refresh:m}}function yi(e){return e==null?"—":e===0?"$0":e<1?`$${e.toFixed(4)}`:`$${e.toFixed(2)}`}function pi(e){return e==null?"—":`${Math.round(e*100)}%`}function Wy(e,t){if(t==null||t===0||e==null||e===0)return"—";const n=e/t;return n<1?`$${n.toFixed(4)}`:`$${n.toFixed(2)}`}function $y({row:e}){return r.jsxs("tr",{className:"border-t border-oai-gray-100 dark:border-oai-gray-800/60 hover:bg-oai-gray-50/40 dark:hover:bg-oai-gray-800/10 transition-colors",children:[r.jsx("td",{className:"py-2.5 pr-2 font-mono text-[11px] text-oai-gray-700 dark:text-oai-gray-300 truncate max-w-[80px] xs:max-w-[110px] sm:max-w-[140px]",title:e.key,children:e.key}),r.jsx("td",{className:"py-2.5 px-1.5 text-right tabular-nums text-oai-gray-600 dark:text-oai-gray-400",children:yi(e.cost_usd)}),r.jsxs("td",{className:"py-2.5 px-1.5 text-right tabular-nums text-oai-gray-600 dark:text-oai-gray-400",children:[e.accepted,"/",e.outcomes]}),r.jsx("td",{className:"py-2.5 px-1.5 text-right tabular-nums text-oai-gray-600 dark:text-oai-gray-400",children:pi(e.acceptance_rate)}),r.jsx("td",{className:"py-2.5 pl-2 pr-2 text-right tabular-nums font-semibold text-oai-black dark:text-oai-white",children:Wy(e.cost_usd,e.accepted)})]})}function Fy({from:e,to:t,deviceId:n=null}){const{formatTokens:a,formatTokensTooltip:o}=Qe(),{enabled:s}=Bc(),{data:i,loading:l}=Ay({enabled:s,from:e,to:t,deviceId:n});if(!s)return null;const c=(i&&i.available&&Array.isArray(i.by_model)?i.by_model:[]).filter(m=>m.outcomes>0&&m.key!=="unknown");if(!c.length)return null;const d=c.slice(0,6),u=i.totals||{},f=`${g("qpd.card.subtitle")}${l?` ${g("qpd.card.updating")}`:""}`;return r.jsxs(nt,{children:[r.jsxs("div",{className:"mb-2 flex items-center gap-2",children:[r.jsx("h3",{className:"text-sm font-medium text-oai-black dark:text-oai-white",children:g("qpd.card.title")}),r.jsx("span",{className:"px-1.5 py-0.5 text-[9px] font-semibold tracking-wider text-oai-gray-500 bg-oai-gray-100 dark:text-oai-gray-400 dark:bg-oai-gray-800/80 rounded uppercase",children:g("qpd.card.badge")})]}),r.jsx("p",{className:"mb-3 text-xs text-oai-gray-500 dark:text-oai-gray-400",children:f}),r.jsx("div",{className:"w-full overflow-x-auto oai-scrollbar",children:r.jsxs("table",{className:"w-full text-xs min-w-[340px] sm:min-w-0",children:[r.jsx("thead",{children:r.jsxs("tr",{className:"text-[10px] uppercase tracking-wide text-oai-gray-400 dark:text-oai-gray-500",children:[r.jsx("th",{className:"pb-1.5 pr-2 text-left font-medium",children:g("qpd.card.col_model")}),r.jsx("th",{className:"pb-1.5 px-1.5 text-right font-medium",children:g("qpd.card.col_cost")}),r.jsx("th",{className:"pb-1.5 px-1.5 text-right font-medium",children:g("qpd.card.col_accepted")}),r.jsx("th",{className:"pb-1.5 px-1.5 text-right font-medium",children:g("qpd.card.col_rate")}),r.jsx("th",{className:"pb-1.5 pl-2 pr-2 text-right font-medium",title:g("qpd.card.qpd_tooltip"),children:g("qpd.card.col_qpd")})]})}),r.jsx("tbody",{children:d.map(m=>r.jsx($y,{row:m},m.key))})]})}),r.jsxs("div",{className:"mt-3 flex items-center justify-between border-t border-oai-gray-200 dark:border-oai-gray-800 pt-2.5 text-[11px] text-oai-gray-500 dark:text-oai-gray-400",children:[r.jsx("span",{children:g("qpd.card.totals",{accepted:u.accepted??0,outcomes:u.outcomes??0,cost:yi(u.cost_usd)})}),r.jsx("span",{title:`${g("qpd.card.et_tooltip")} · ${o(u.effective_tokens)}`,children:g("qpd.card.et",{tokens:a(u.effective_tokens),rate:pi(u.acceptance_rate)})})]}),u.outcomes<15&&r.jsxs("p",{className:"mt-3 text-[10px] text-oai-gray-400 dark:text-oai-gray-500 italic border-t border-oai-gray-100 dark:border-oai-gray-800/40 pt-2",children:["* ",g("qpd.card.sparse_notice","Tip: Spark outcomes dataset might skew Quality/$ ratios. For precise metrics, select a narrower time window.")]})]})}function we({className:e}){return r.jsx("div",{className:Fe("rounded bg-oai-gray-200/70 dark:bg-oai-gray-800/70 animate-pulse",e)})}function Iy(){return r.jsx("div",{className:"flex gap-1 overflow-hidden",children:Array.from({length:20},(e,t)=>r.jsx("div",{className:"flex flex-col gap-1",children:Array.from({length:7},(n,a)=>r.jsx(we,{className:"h-2.5 w-2.5 rounded-[2px]"},a))},t))})}function Ly(){return r.jsxs("div",{className:"grid grid-cols-1 lg:grid-cols-12 gap-4",children:[r.jsxs("div",{className:"lg:col-span-4 flex flex-col gap-4 min-w-0 order-2 lg:order-1",children:[r.jsx(nt,{children:r.jsxs("div",{className:"flex flex-col gap-2.5",children:[r.jsx(we,{className:"h-4 w-32"}),r.jsx(we,{className:"h-6 w-24"})]})}),r.jsx(nt,{children:r.jsxs("div",{className:"flex flex-col gap-3",children:[r.jsx(we,{className:"h-3.5 w-24"}),Array.from({length:4},(e,t)=>r.jsxs("div",{className:"flex items-center justify-between gap-2",children:[r.jsx(we,{className:"h-3 w-20"}),r.jsx(we,{className:"h-3 w-12"})]},t))]})}),r.jsx(nt,{children:r.jsxs("div",{className:"flex flex-col gap-3",children:[r.jsx(we,{className:"h-3.5 w-20"}),r.jsx(Iy,{})]})}),r.jsx(nt,{children:r.jsxs("div",{className:"flex flex-col gap-3",children:[r.jsx(we,{className:"h-3.5 w-28"}),r.jsx(we,{className:"h-32 w-full"})]})})]}),r.jsxs("div",{className:"lg:col-span-8 flex flex-col gap-4 min-w-0 order-1 lg:order-2",children:[r.jsxs(nt,{children:[r.jsxs("div",{className:"flex items-center gap-2 mb-6",children:[r.jsx("div",{className:"flex flex-1 min-w-0 gap-1",children:Array.from({length:5},(e,t)=>r.jsx(we,{className:"h-7 w-14 rounded-md shrink-0"},t))}),r.jsxs("div",{className:"flex items-center gap-1.5 shrink-0",children:[r.jsx(we,{className:"h-8 w-20 rounded-md"}),r.jsx(we,{className:"h-8 w-8 rounded-md"})]})]}),r.jsxs("div",{className:"flex flex-col items-center gap-4 mb-8",children:[r.jsx(we,{className:"h-3 w-28"}),r.jsx(we,{className:"h-14 w-3/5 max-w-xs"}),r.jsx(we,{className:"h-6 w-24"})]}),r.jsxs("div",{className:"flex flex-col gap-6",children:[r.jsx(we,{className:"h-1.5 w-full rounded-full"}),r.jsx("div",{className:"grid grid-cols-2 sm:grid-cols-3 xl:grid-cols-5 gap-3",children:Array.from({length:5},(e,t)=>r.jsxs("div",{className:"flex flex-col gap-2 rounded-lg border border-oai-gray-200 dark:border-oai-gray-700 p-3",children:[r.jsxs("div",{className:"flex items-center gap-1.5",children:[r.jsx(we,{className:"h-[15px] w-[15px] rounded-sm shrink-0"}),r.jsx(we,{className:"h-3 w-12"})]}),r.jsx(we,{className:"h-5 w-10"}),r.jsx(we,{className:"h-2.5 w-14"})]},t))})]})]}),r.jsxs(nt,{children:[r.jsxs("div",{className:"flex items-center gap-1 mb-4",children:[r.jsx(we,{className:"h-7 w-16 rounded"}),r.jsx(we,{className:"h-7 w-20 rounded"})]}),r.jsxs("div",{className:"flex items-center gap-3 border-b border-oai-gray-200 dark:border-oai-gray-700 pb-2",children:[r.jsx(we,{className:"h-3 w-20 shrink-0"}),Array.from({length:5},(e,t)=>r.jsx(we,{className:"h-3 flex-1"},t))]}),r.jsx("div",{className:"flex flex-col",children:Array.from({length:8},(e,t)=>r.jsxs("div",{className:"flex items-center gap-3 border-b border-oai-gray-100 dark:border-oai-gray-800 py-2.5 last:border-b-0",children:[r.jsx(we,{className:"h-3.5 w-20 shrink-0"}),Array.from({length:5},(n,a)=>r.jsx(we,{className:"h-3.5 flex-1"},a))]},t))})]})]})]})}const Ry=Hc.slice(0,10),Qo=.06,By=.11,zy=.05,Yy=new Set(["macAppBanner","widgetOnboarding"]);function Jo({title:e,subtitle:t,desc:n,loginCard:a,copy:o}){return r.jsxs("div",{className:"min-h-[85vh] w-full flex items-center justify-center text-oai-black dark:text-white relative overflow-hidden px-4 md:px-8 py-8 md:py-16 transition-colors duration-200 bg-[linear-gradient(to_right,#80808007_1px,transparent_1px),linear-gradient(to_bottom,#80808007_1px,transparent_1px)] bg-[size:40px_40px]",children:[r.jsx("div",{className:"absolute inset-0 bg-[radial-gradient(circle_at_50%_0%,rgba(59,130,246,0.03),transparent_50%)] dark:bg-[radial-gradient(circle_at_50%_0%,rgba(99,102,241,0.05),transparent_50%)] pointer-events-none"}),r.jsxs("div",{className:"w-full max-w-5xl grid grid-cols-1 lg:grid-cols-12 gap-8 lg:gap-16 items-start relative z-10",children:[r.jsxs("div",{className:"lg:col-span-7 flex flex-col justify-center space-y-8 text-left pr-0 lg:pr-6",children:[r.jsxs("div",{className:"flex items-center gap-2.5",children:[r.jsx("img",{src:"/app-icon.png",alt:"",width:32,height:32,className:"rounded-md shadow-md border border-oai-gray-200/50 dark:border-oai-gray-800 shadow-black/10 dark:shadow-black/30"}),r.jsx("span",{className:"text-xl font-bold tracking-tight bg-gradient-to-r from-oai-black to-oai-gray-600 dark:from-white dark:to-oai-gray-400 bg-clip-text text-transparent font-oai",children:o("shared.app_name")})]}),r.jsxs("div",{className:"space-y-5",children:[r.jsxs("div",{className:"space-y-4",children:[r.jsx("h1",{className:"text-3xl md:text-4xl lg:text-4.5xl font-black tracking-tight leading-[1.15] text-oai-black dark:text-white",children:e}),r.jsx("p",{className:"text-oai-gray-500 dark:text-oai-gray-400 text-sm md:text-base max-w-xl leading-relaxed",children:n})]}),r.jsx("div",{className:"w-full max-w-[280px] sm:max-w-md opacity-85 hover:opacity-100 transition-opacity duration-200",children:r.jsx("div",{className:"flex justify-start",children:r.jsx(Yc,{logos:Ry,columnCount:6})})})]})]}),r.jsx("div",{className:"lg:col-span-5 flex justify-center",children:r.jsxs(Le.div,{initial:{opacity:0,x:20},animate:{opacity:1,x:0},transition:{duration:.3},className:"w-full max-w-[400px] rounded-2xl border border-oai-gray-200/80 dark:border-oai-gray-800 bg-white/70 dark:bg-oai-gray-950/40 backdrop-blur-md shadow-2xl p-1 relative overflow-hidden",children:[r.jsx("div",{className:"absolute -inset-px bg-gradient-to-b from-white/10 dark:from-white/5 to-transparent pointer-events-none rounded-2xl"}),a]})})]})]})}function Hy(e){const{copy:t,onOpenShare:n,screenshotMode:a,showExpiredGate:o,showAuthGate:s,identityDisplayName:i,identityStartDate:l,activeDays:c,identitySubscriptions:d,identityScrambleDurationMs:u,projectUsageEntries:f,projectUsageLimit:m,setProjectUsageLimit:y,projectDetailQuery:p,topModels:b,signedIn:x,publicMode:w,isLocalMode:k,shouldShowInstall:N,installPrompt:S,handleCopyInstall:v,installCopied:j,installInitCmdDisplay:T,trendRowsForDisplay:_,trendFromForDisplay:M,trendToForDisplay:O,trendZoomConfig:$,usageFrom:Y,usageTo:H,period:L,trendTimeZoneLabel:D,activityHeatmapBlock:F,periodsForDisplay:P,setSelectedPeriod:E,customFrom:B,customTo:R,onCustomRangeApply:z,customRangeOpen:U,onCustomRangeOpenChange:se,summaryLabel:ce,summaryValue:de,summaryFullValue:ye,hasSummary:fe,summaryLoading:ie,providersLoading:ae,onToggleSummaryFormat:q,summaryTotalTokensRaw:J,summaryCostValue:A,summaryConversationsValue:G,rollingUsage:ne,costInfoEnabled:Z,openCostModal:te,costModalOpen:be,closeCostModal:Se,allowBreakdownToggle:Me,refreshAll:le,usageLoadingState:xe,initialDashboardLoading:me,fleetData:Ee,hasDetailsActual:Re,dailyEmptyPrefix:Ae,installSyncCmd:Tt,dailyEmptySuffix:Te,detailsColumns:Pe,ariaSortFor:ze,toggleSort:Je,sortIconFor:Pt,pagedDetails:kt,dailyBreakdownRows:Ze,dailyBreakdownColumns:hn,dailyBreakdownAriaSortFor:it,dailyBreakdownSortIconFor:gn,dailyBreakdownDateKey:Yt,detailsDateKey:wt,renderDetailDate:I,renderDailyBreakdownDate:ue,renderDetailCell:V,DETAILS_PAGED_PERIODS:ee,detailsPageCount:ke,detailsPage:re,setDetailsPage:Ht,deviceOptions:Ut,selectedDevice:Vt,onDeviceChange:He,deviceUsageBlock:ht,leftCardOrder:qt,onLeftReorder:Gt,rightCardOrder:ya,onRightReorder:An}=e,Wn=null,yn=null,[$n,pn]=h.useState(()=>new Set),xn=h.useCallback((ve,he)=>{Yy.has(ve)&&pn($e=>{if($e.has(ve)===he)return $e;const vt=new Set($e);return he?vt.add(ve):vt.delete(ve),vt})},[]),pa={macAppBanner:k,statsPanel:!0,widgetOnboarding:k,installCopy:N,activityHeatmap:!!F,deviceUsage:!!ht,trendMonitor:!a,qualityPerDollar:!a},Ot=(qt||[]).filter(ve=>pa[ve]&&!$n.has(ve)),Fn={usageOverview:!0,dataDetails:!a},lt=(ya||[]).filter(ve=>Fn[ve]&&!$n.has(ve));function De(ve,he){switch(ve){case"macAppBanner":return r.jsx(Py,{todayTokens:J,isSyncing:xe,enterDelay:he});case"statsPanel":return r.jsx(Et,{delay:he,children:r.jsx(Yg,{title:t("dashboard.identity.title"),subtitle:t("dashboard.identity.subtitle"),period:L,rankLabel:l??t("identity_card.rank_placeholder"),streakDays:c,subscriptions:d,periodConversations:G,rolling:ne,topModels:b})});case"widgetOnboarding":return r.jsx(Ey,{enterDelay:he});case"installCopy":return r.jsx(Et,{delay:he,children:r.jsxs("div",{className:"rounded-xl border border-oai-gray-200 dark:border-oai-gray-800 bg-white dark:bg-oai-gray-900 p-3",children:[r.jsx("div",{className:"text-xs text-oai-gray-500 dark:text-oai-gray-300 mb-1.5",children:S}),r.jsxs(Le.button,{onClick:v,whileHover:{scale:1.01},whileTap:{scale:.99},className:"w-full flex items-center justify-between px-3 py-2 bg-oai-gray-50 dark:bg-oai-gray-800 hover:bg-oai-gray-100 dark:hover:bg-oai-gray-700 rounded-lg transition-colors",children:[r.jsx("code",{className:"text-xs font-mono text-oai-gray-700 dark:text-oai-gray-300",children:T}),r.jsx(Le.span,{initial:{opacity:0,y:-5},animate:{opacity:1,y:0},className:"text-xs text-oai-brand",children:j?"Copied ✓":"Copy"},j?"copied":"copy")]})]})});case"activityHeatmap":return r.jsx(Et,{delay:he,children:F});case"deviceUsage":return r.jsx(Et,{delay:he,children:ht});case"trendMonitor":return r.jsx(Et,{delay:he,children:r.jsx(Or,{rows:_,from:M,to:O,period:L,timeZoneLabel:D,showTimeZoneLabel:!1,zoomConfig:$})});case"qualityPerDollar":return r.jsx(Fy,{from:Y,to:H,deviceId:Vt});default:return null}}function xa(ve,he){switch(ve){case"usageOverview":return r.jsx(Et,{delay:he,children:r.jsx(jy,{period:L,periods:P,onPeriodChange:E,summaryLabel:ce,summaryValue:de,summaryFullValue:ye,hasSummary:fe,summaryLoading:ie,providersLoading:ae,onToggleSummaryFormat:fe?q:null,summaryCostValue:A,onCostInfo:Z?te:null,fleetData:Ee,onRefresh:a?null:le,loading:xe,onOpenShare:a?null:n,customFrom:B,customTo:R,onCustomRangeApply:z,customRangeOpen:U,onCustomRangeOpenChange:se,from:Y,to:H,deviceOptions:Ut,selectedDevice:Vt,onDeviceChange:He})});case"dataDetails":return r.jsx(Et,{delay:he,children:r.jsx(Bg,{projectEntries:f,projectLimit:m,onProjectLimitChange:y,projectDetailQuery:p,copy:t,hasDetailsActual:Re,dailyEmptyPrefix:Ae,installSyncCmd:Tt,dailyEmptySuffix:Te,detailsColumns:Pe,ariaSortFor:ze,toggleSort:Je,sortIconFor:Pt,pagedDetails:kt,dailyBreakdownRows:Ze,dailyBreakdownColumns:hn,dailyBreakdownAriaSortFor:it,dailyBreakdownSortIconFor:gn,dailyBreakdownDateKey:Yt,detailsDateKey:wt,renderDetailDate:I,renderDailyBreakdownDate:ue,renderDetailCell:V,DETAILS_PAGED_PERIODS:ee,period:L,detailsPageCount:ke,detailsPage:re,setDetailsPage:Ht})});default:return null}}const In=wc(oo(Mc,{activationConstraint:{distance:6}}),oo(Sc,{coordinateGetter:jc})),Ln=h.useCallback(ve=>{const{active:he,over:$e}=ve;!$e||he.id===$e.id||Gt?.(String(he.id),String($e.id))},[Gt]),ba=h.useCallback(ve=>{const{active:he,over:$e}=ve;!$e||he.id===$e.id||An?.(String(he.id),String($e.id))},[An]);function bn(ve,he,$e,vt){return a?r.jsx(r.Fragment,{children:ve.map((_t,kn)=>r.jsx(W.Fragment,{children:he(_t,$e+Qo*kn)},_t))}):r.jsx(vc,{sensors:In,onDragEnd:vt,children:r.jsx(_c,{items:ve,strategy:Nc,children:ve.map((_t,kn)=>r.jsx(My,{id:_t,onEmptyChange:xn,children:he(_t,$e+Qo*kn)},_t))})})}const Rn=bn(Ot,De,By,Ln),ka=bn(lt,xa,zy,ba);return r.jsxs(r.Fragment,{children:[r.jsxs(od,{bare:!a,hideHeader:a,header:Wn,footer:a?null:yn,className:a?"screenshot-mode":"",children:[s&&r.jsx(Jo,{title:t("dashboard.auth_gate.hero_title"),desc:t("dashboard.auth_gate.desc"),copy:t,loginCard:r.jsx(Zr,{title:t("dashboard.auth_gate.title"),subtitle:t("dashboard.auth_gate.subtitle"),hideLogo:!0,className:"bg-transparent rounded-xl"})}),o&&r.jsx(Jo,{title:t("dashboard.expired_gate.hero_title"),desc:t("dashboard.expired_gate.desc"),copy:t,loginCard:r.jsx(Zr,{title:t("dashboard.expired_gate.title"),subtitle:t("dashboard.expired_gate.subtitle"),hideLogo:!0,className:"bg-transparent rounded-xl"})}),!s&&!o&&me&&r.jsx(Ly,{}),!s&&!o&&!me&&r.jsx(r.Fragment,{children:r.jsxs("div",{className:"grid grid-cols-1 lg:grid-cols-12 gap-4",children:[r.jsx("div",{className:"lg:col-span-4 flex flex-col gap-4 min-w-0 order-2 lg:order-1",children:Rn}),r.jsx("div",{className:"lg:col-span-8 flex flex-col gap-4 min-w-0 order-1 lg:order-2",children:ka})]})})]}),r.jsx(au,{isOpen:be,onClose:Se,fleetData:Ee})]})}function Uy({from:e,to:t,timeZone:n,tzOffsetMinutes:a,accountView:o=!1,accountAccessToken:s=null,accountRevision:i=0}={}){const l=!!(o&&s),[c,d]=h.useState([]),[u,f]=h.useState([]),[m,y]=h.useState(!1),[p,b]=h.useState(null),x=fn([l,e,t,n,a,s,i]),w=h.useCallback(async()=>{const k=x();if(!l){d([]),f([]),y(!1),b(null);return}y(!0),b(null);try{const N=await Ye(s);if(!k())return;const S=await oc({from:e,to:t,timeZone:n,tzOffsetMinutes:a,accessToken:N});if(!k())return;d(Array.isArray(S?.devices)?S.devices:[]),f(Array.isArray(S?.account_sources)?S.account_sources:[])}catch(N){if(!k())return;b(N?.message||String(N)),d([]),f([])}finally{k()&&y(!1)}},[l,s,e,t,n,a,i,x]);return h.useEffect(()=>{d([]),f([]),b(null),l&&y(!0),w()},[l,w]),{devices:c,accountSources:u,loading:m,error:p,refresh:w}}const Vy=/^Token Tracker \(dashboard\)(?: #([0-9a-fA-F]+))?$/;function Zo(e){const t=String(e||"").toLowerCase();return/iphone|ipad|ios/.test(t)?"iOS":/android/.test(t)?"Android":/mac|darwin/.test(t)?"Mac":/win/.test(t)?"Windows":/linux/.test(t)?"Linux":"Web"}function hr(e){if(!e)return null;const t=typeof e.device_name=="string"?e.device_name.trim():"",n=t.match(Vy);if(!n)return t||null;const a=(n[1]||String(e.id||"")).slice(0,8).toLowerCase();return a?`${Zo(e.platform)} · ${a}`:Zo(e.platform)}const es=" · ",ts="%";function ns({platform:e,className:t}){const n=String(e||"").toLowerCase();return n.includes("darwin")||n.includes("mac")?r.jsx(Qc,{className:t,"aria-hidden":!0}):n.includes("win")?r.jsx(eo,{className:t,"aria-hidden":!0}):n.includes("linux")?r.jsx(eo,{className:t,"aria-hidden":!0}):r.jsx(ks,{className:t,"aria-hidden":!0})}function qy({devices:e=[],accountSources:t=[],selectedDeviceId:n="",onSelectDevice:a,onRenameDevice:o}){const{formatTokens:s,formatTokensTooltip:i}=Qe(),[l,c]=h.useState(""),[d,u]=h.useState(""),[f,m]=h.useState(!1),[y,p]=h.useState(""),b=typeof o=="function",x=typeof a=="function",w=!!n,k=e.reduce((_,M)=>_+(Number(M.total_tokens)||0),0)+t.reduce((_,M)=>_+(Number(M.total_tokens)||0),0),N=h.useMemo(()=>e.filter(_=>(Number(_.total_tokens)||0)>0).sort((_,M)=>(Number(M.total_tokens)||0)-(Number(_.total_tokens)||0)),[e]);function S(_){p(""),c(_.id);const M=typeof _.device_name=="string"?_.device_name:"";u(hr(_)===M?M:"")}function v(){c(""),u(""),p("")}async function j(_){const M=d.trim();if(!(!M||f)){m(!0),p("");try{await o(_.id,M),c(""),u("")}catch{p(_.id)}finally{m(!1)}}}const T=t.filter(_=>(Number(_.total_tokens)||0)>0);return N.length===0&&T.length===0?r.jsxs(nt,{bodyClassName:"!px-3 !py-3.5",children:[r.jsx("div",{className:"flex items-center justify-between gap-2 mb-2 px-2",children:r.jsx("div",{className:"text-sm font-medium text-oai-gray-500 dark:text-oai-gray-300 uppercase tracking-wide px-2",children:g("dashboard.device_card.title")})}),r.jsxs("div",{className:"flex flex-col items-center justify-center py-6 text-center",children:[r.jsx(ks,{className:"h-7 w-7 text-oai-gray-300 dark:text-oai-gray-600 mb-2 stroke-[1.5]"}),r.jsx("p",{className:"text-[11px] text-oai-gray-500 dark:text-oai-gray-400 font-medium",children:g("dashboard.device_card.empty")})]})]}):r.jsxs(nt,{bodyClassName:"!px-3 !py-3.5",children:[r.jsxs("div",{className:"flex items-center justify-between gap-2 mb-2 px-2",children:[r.jsx("div",{className:"text-sm font-medium text-oai-gray-500 dark:text-oai-gray-300 uppercase tracking-wide",children:g("dashboard.device_card.title")}),x&&w&&r.jsx("button",{type:"button",onClick:()=>a(""),className:"text-xs text-oai-gray-400 hover:text-oai-brand focus:outline-none transition-colors",children:g("dashboard.device_card.clear")})]}),r.jsxs("div",{className:"space-y-[2px]",children:[N.map(_=>{const M=Number(_.total_tokens)||0,O=k>0?(M/k*100).toFixed(1):"0.0",$=n===_.id,Y=hr(_)||g("dashboard.device_card.unnamed"),H=l===_.id,L=$?"bg-oai-brand":w?"bg-oai-gray-300 dark:bg-oai-gray-600":"bg-oai-brand/50",D=w&&!$?"opacity-40 hover:opacity-80":"opacity-100";return r.jsxs("div",{className:"group relative",children:[H?r.jsxs("div",{className:"w-full rounded-md px-2 py-1.5 bg-oai-gray-50/50 dark:bg-oai-gray-900/40",children:[r.jsxs("div",{className:"flex items-center justify-between gap-2",children:[r.jsxs("div",{className:"flex items-center gap-2 min-w-0 flex-1",children:[r.jsx(ns,{platform:_.platform,className:"h-3.5 w-3.5 shrink-0 text-oai-gray-500 dark:text-oai-gray-400"}),r.jsx("input",{autoFocus:!0,value:d,disabled:f,maxLength:60,placeholder:g("dashboard.device_card.rename_placeholder"),onChange:F=>u(F.target.value),onKeyDown:F=>{F.key==="Enter"?j(_):F.key==="Escape"&&v()},className:"flex-1 min-w-0 bg-transparent text-xs font-medium text-oai-black dark:text-oai-white border-b border-oai-gray-300 dark:border-oai-gray-700 focus:outline-none focus:border-oai-brand py-0"})]}),r.jsxs("div",{className:"shrink-0 flex items-center gap-0.5",children:[r.jsx("button",{type:"button","aria-label":g("dashboard.device_card.rename_save"),disabled:f||!d.trim(),onClick:()=>j(_),className:"text-oai-gray-400 hover:text-oai-brand dark:hover:text-white disabled:opacity-30 transition-colors p-0.5",children:r.jsx(Uc,{className:"h-3.5 w-3.5"})}),r.jsx("button",{type:"button","aria-label":g("dashboard.device_card.rename_cancel"),disabled:f,onClick:v,className:"text-oai-gray-400 hover:text-oai-black dark:hover:text-white disabled:opacity-30 transition-colors p-0.5",children:r.jsx(ua,{className:"h-3.5 w-3.5"})})]})]}),r.jsx("div",{className:"mt-1.5 h-[2px] bg-oai-gray-100 dark:bg-oai-gray-800 rounded-full overflow-hidden opacity-40 select-none",children:r.jsx("div",{className:`h-full rounded-full transition-[width,background-color] duration-700 ease-out ${L}`,style:{width:`${O}%`}})})]}):r.jsxs(r.Fragment,{children:[r.jsxs("button",{type:"button","aria-pressed":$,"aria-label":`${g("dashboard.device_filter.aria")}: ${Y}`,onClick:()=>a?.($?"":_.id),className:`w-full text-left rounded-md px-2 py-1.5 transition-all duration-200 focus:outline-none focus-visible:ring-1 focus-visible:ring-inset focus-visible:ring-oai-brand/50 ${D} ${$?"bg-oai-gray-100/70 dark:bg-oai-gray-800/80 text-oai-black dark:text-oai-white":"bg-transparent hover:bg-oai-gray-50 dark:hover:bg-oai-gray-800/40 text-oai-black dark:text-oai-white"}`,children:[r.jsxs("div",{className:"flex items-center justify-between gap-2",children:[r.jsxs("div",{className:"flex items-center gap-2 min-w-0 flex-1",children:[r.jsx(ns,{platform:_.platform,className:"h-3.5 w-3.5 shrink-0 text-oai-gray-500 dark:text-oai-gray-400"}),r.jsx("span",{className:"block truncate text-[13px] font-medium text-oai-black dark:text-oai-white",title:Y,children:Y})]}),r.jsxs("span",{title:i(M),className:`shrink-0 text-[13px] font-semibold tabular-nums text-oai-black dark:text-oai-white transition-opacity duration-150 ${b?"group-hover:opacity-0":""}`,children:[s(M),r.jsxs("span",{className:"text-oai-gray-400 dark:text-oai-gray-500 font-normal",children:[es,O,ts]})]})]}),r.jsx("div",{className:"mt-1.5 h-[2px] bg-oai-gray-100 dark:bg-oai-gray-800 rounded-full overflow-hidden",children:r.jsx("div",{className:`h-full rounded-full transition-[width,background-color] duration-700 ease-out ${L}`,style:{width:`${O}%`}})})]}),b&&r.jsx("button",{type:"button","aria-label":g("dashboard.device_card.rename_aria"),onClick:()=>S(_),className:"absolute right-2 top-1.5 flex h-4 items-center text-oai-gray-400 opacity-0 group-hover:opacity-100 focus-visible:opacity-100 hover:text-oai-brand focus:outline-none transition-opacity duration-150",children:r.jsx(zc,{className:"h-3 w-3"})})]}),y===_.id&&r.jsx("div",{className:"px-2 mt-1 text-xs text-red-500 font-medium",children:g("dashboard.device_card.rename_error")})]},_.id)}),T.map(_=>{const M=Number(_.total_tokens)||0,O=k>0?(M/k*100).toFixed(1):"0.0",$=w?"opacity-40":"opacity-100";return r.jsxs("div",{className:`rounded-md px-2 py-1.5 transition-all duration-200 ${$}`,title:g("dashboard.device_card.account_scope_tip"),children:[r.jsxs("div",{className:"flex items-center justify-between gap-2",children:[r.jsxs("div",{className:"flex items-center gap-2 min-w-0 flex-1",children:[r.jsx("span",{className:"h-3.5 w-3.5 shrink-0 flex items-center justify-center",children:r.jsx(dn,{provider:_.source,size:14})}),r.jsx("span",{className:"block truncate text-[13px] font-medium text-oai-black dark:text-oai-white",children:on(_.source)}),r.jsx("span",{className:"shrink-0 text-[10px] uppercase tracking-wide text-oai-gray-400 dark:text-oai-gray-500",children:g("dashboard.device_card.account_scope")})]}),r.jsxs("span",{title:i(M),className:"shrink-0 text-[13px] font-semibold tabular-nums text-oai-black dark:text-oai-white",children:[s(M),r.jsxs("span",{className:"text-oai-gray-400 dark:text-oai-gray-500 font-normal",children:[es,O,ts]})]})]}),r.jsx("div",{className:"mt-1.5 h-[2px] bg-oai-gray-100 dark:bg-oai-gray-800 rounded-full overflow-hidden",children:r.jsx("div",{className:`h-full rounded-full transition-[width,background-color] duration-700 ease-out ${w?"bg-oai-gray-300 dark:bg-oai-gray-600":"bg-oai-brand/50"}`,style:{width:`${O}%`}})})]},`account-${_.source}`)})]})]})}function xi(){return typeof window>"u"?!1:!!window?.webkit?.messageHandlers?.nativeBridge}const Lt=new Map,Rt=new Map;function bi(){typeof window>"u"||window.__tokentrackerNativeSaveListener||(window.__tokentrackerNativeSaveListener=!0,window.addEventListener("native:saveImageResult",e=>{const t=e?.detail||{},n=typeof t.requestId=="string"?t.requestId:null;if(!n||!Lt.has(n))return;const a=Lt.get(n);Lt.delete(n),a({ok:!!t.ok,path:typeof t.path=="string"?t.path:void 0,error:typeof t.error=="string"?t.error:void 0})}),window.addEventListener("native:copyImageResult",e=>{const t=e?.detail||{},n=typeof t.requestId=="string"?t.requestId:null;if(!n||!Rt.has(n))return;const a=Rt.get(n);Rt.delete(n),a({ok:!!t.ok,error:typeof t.error=="string"?t.error:void 0})}))}async function Gy(e){if(!xi()||typeof window>"u")return{ok:!1,error:"native bridge unavailable"};const t=window?.webkit?.messageHandlers?.nativeBridge;if(!t)return{ok:!1,error:"native bridge unavailable"};bi();const n=`copy_${Date.now()}_${Math.random().toString(36).slice(2,8)}`;return new Promise(a=>{const o=window.setTimeout(()=>{Rt.has(n)&&(Rt.delete(n),a({ok:!1,error:"timeout"}))},8e3);Rt.set(n,s=>{window.clearTimeout(o),a(s)});try{t.postMessage({type:"action",name:"copyImageToClipboard",requestId:n,dataUrl:e})}catch(s){Rt.delete(n),window.clearTimeout(o),a({ok:!1,error:s?.message||String(s)})}})}async function as(e,t){if(!xi()||typeof window>"u")return{ok:!1,error:"native bridge unavailable"};const n=window?.webkit?.messageHandlers?.nativeBridge;if(!n)return{ok:!1,error:"native bridge unavailable"};bi();const a=`save_${Date.now()}_${Math.random().toString(36).slice(2,8)}`;return new Promise(o=>{const s=window.setTimeout(()=>{Lt.has(a)&&(Lt.delete(a),o({ok:!1,error:"timeout"}))},8e3);Lt.set(a,i=>{window.clearTimeout(s),o(i)});try{n.postMessage({type:"action",name:"saveImageToDownloads",requestId:a,filename:t,dataUrl:e})}catch(i){Lt.delete(a),window.clearTimeout(s),o({ok:!1,error:i?.message||String(i)})}})}const ki=1200,wi=1630,vi={broadsheet:{width:1200,height:1630},"annual-report":{width:1080,height:1865}},Ky="https://fonts.googleapis.com/css2?family=Instrument+Serif:ital@0;1&family=Inter+Tight:wght@400;500;600;700&family=IBM+Plex+Serif:ital,wght@0,400;0,500;0,600;1,400&family=IBM+Plex+Mono:wght@400;500&family=Space+Grotesk:wght@500;600;700&display=swap";let Ja=!1;function Xy(){if(typeof document>"u"||Ja)return;if(document.querySelector('link[data-share-card-fonts="true"]')){Ja=!0;return}const t=document.createElement("link");t.rel="stylesheet",t.href=Ky,t.dataset.shareCardFonts="true",t.crossOrigin="anonymous",document.head.appendChild(t),Ja=!0}async function Qy(){if(typeof document>"u")return;const e=document.fonts;if(!(!e||typeof e.ready?.then!="function"))try{await e.ready}catch{}}async function Jy(e,t={}){if(typeof window>"u"||!e)return null;Xy(),await Qy(),await new Promise(c=>requestAnimationFrame(()=>c(null)));const{toBlob:n,toPng:a}=await sc(async()=>{const{toBlob:c,toPng:d}=await import("./index-BFIcLxb4.js");return{toBlob:c,toPng:d}},[]),o=t.pixelRatio??2,s=e.offsetWidth||ki,i=e.offsetHeight||wi,l={pixelRatio:o,cacheBust:!0,width:s,height:i,style:{width:`${s}px`,height:`${i}px`},skipFonts:!1,filter:c=>!(c instanceof HTMLElement)||c.dataset?.screenshotExclude!=="true"};try{const c=await n(e,l);if(c)return c}catch{}try{const c=await a(e,l);return c?await(await fetch(c)).blob():null}catch{return null}}async function Za(e){return new Promise(t=>{const n=new FileReader;n.onload=()=>{const a=typeof n.result=="string"?n.result:null;t(a)},n.onerror=()=>t(null),n.readAsDataURL(e)})}function rs(e,t){if(typeof window>"u"||!e)return!1;try{const n=URL.createObjectURL(e),a=document.createElement("a");return a.href=n,a.download=t,document.body.appendChild(a),a.click(),a.remove(),setTimeout(()=>URL.revokeObjectURL(n),1e3),!0}catch{return!1}}function gr(e){const t=_e(e);return Number.isFinite(t)?t:0}function Zy(e){return e?gr(e.billable_total_tokens??e.total_tokens):0}function ep(e){const t=Array.isArray(e?.weeks)?e.weeks:[];if(!t.length)return{weeks:[],totalDays:0,activeDays:0};let n=0,a=0;return{weeks:t.map(s=>(Array.isArray(s)?s:[]).slice(0,7).map(l=>{const c=!!l?.future,d=Number.isFinite(l?.level)?Math.max(0,Math.min(4,Math.round(l.level))):0;l?.day&&!c&&(n+=1,d>0&&(a+=1));const u=l?.billable_total_tokens??l?.total_tokens??l?.value??0,f=Number.isFinite(u)?Math.max(0,u):0;return{day:typeof l?.day=="string"?l.day:"",level:d,value:f,future:c}})),totalDays:n,activeDays:a}}function tp(e){const{handle:t,startDate:n,activeDays:a,summary:o,topModels:s,rank:i,period:l,periodFrom:c,periodTo:d,heatmap:u,capturedAt:f,currency:m,exchangeRate:y}=e,p=Zy(o),b=gr(o?.total_cost_usd),x=Array.isArray(s)?s.slice(0,3).map(k=>({id:k?.id??null,name:typeof k?.name=="string"&&k.name?k.name:"—",tokens:gr(k?.tokens),percent:typeof k?.percent=="string"&&k.percent?k.percent:"0.0"})):[],w=ep(u);return{handle:t||"—",startDate:n||null,activeDays:Number.isFinite(a)&&a>0?Math.floor(a):0,totalTokens:p,totalCost:b,period:l,periodFrom:c,periodTo:d,topModels:x,rank:typeof i=="number"&&Number.isFinite(i)&&i>0?Math.floor(i):null,heatmapWeeks:w.weeks,heatmapTotalDays:w.totalDays,heatmapActiveDays:w.activeDays,capturedAt:f||new Date().toISOString(),currency:typeof m=="string"&&m.length>0?m.toUpperCase():"USD",exchangeRate:Number.isFinite(y)&&y>0?y:1}}const np=["share.month_short.jan","share.month_short.feb","share.month_short.mar","share.month_short.apr","share.month_short.may","share.month_short.jun","share.month_short.jul","share.month_short.aug","share.month_short.sep","share.month_short.oct","share.month_short.nov","share.month_short.dec"];function ap(e){const t=np[e];return t?g(t):"—"}function _i(e,t){return g("share.date.month_year",{month:ap(e),year:t})}function rp(e){if(!e)return"—";const t=e.split("-");if(t.length!==3)return e;const[n,a]=t,o=Number(a)-1;return o<0||o>11?e:_i(o,n)}function op(e){if(e.period==="total")return g("share.issue.all_time");if(e.period==="day"&&e.periodTo)return e.periodTo.replace(/-/g,".");if(e.period==="custom"&&e.periodFrom&&e.periodTo)return`${e.periodFrom.replace(/-/g,".")} — ${e.periodTo.replace(/-/g,".")}`;if(e.periodTo){const t=new Date(`${e.periodTo}T00:00:00Z`);if(!Number.isNaN(t.getTime()))return _i(t.getUTCMonth(),t.getUTCFullYear())}return g(`usage.period.${e.period}`)}function yr(e){return Number.isFinite(e)?Math.round(e).toLocaleString("en-US"):"—"}function Ni(e,t={}){const{currency:n="USD",rate:a=1}=t,o=fa(n);if(!Number.isFinite(e)||e<=0)return`${o}0.00`;const s=n!=="USD"&&Number.isFinite(a)&&a>0?e*a:e;return s>=1e3?`${o}${Math.round(s).toLocaleString("en-US")}`:`${o}${s.toFixed(2)}`}function sp(e){const t=e.topModels[0];if(t){const n=parseFloat(t.percent);return Number.isFinite(n)&&n>=60?g("share.hook.top_loyal",{percent:Math.round(n),name:t.name}):e.activeDays>=60?g("share.hook.days_record",{days:e.activeDays}):Number.isFinite(n)&&n>=30?g("share.hook.top_led",{name:t.name,percent:Math.round(n)}):e.topModels.length>1?g("share.hook.multi_models",{count:e.topModels.length,days:e.activeDays}):g("share.hook.days_with_model",{days:e.activeDays,name:t.name})}return e.activeDays>0?g("share.hook.days_record",{days:e.activeDays}):g("share.hook.new_chapter")}function ip(e,t){const n=(e||"").length;if(n<=t.baseChars)return t.baseSize;const a=t.baseSize-(n-t.baseChars)*t.shrinkPerChar;return Math.max(t.minSize,a)}function lp(e){if(!e||e.future)return null;const t=typeof e.level=="number"?e.level:0;return t<0?0:t>4?4:Math.round(t)}function cp({weeks:e,palette:t,width:n,gap:a=3,radius:o=2,emptyColor:s}){if(!Array.isArray(e)||e.length===0||!n||n<=0)return null;const i=t||["#eee","#ccc","#999","#666","#333"],l=s||i[0],c=e.length,d=(c-1)*a,u=Math.max(4,(n-d)/c),f=7*u+6*a;return r.jsx("svg",{width:n,height:f,viewBox:`0 0 ${n} ${f}`,xmlns:"http://www.w3.org/2000/svg","aria-hidden":!0,style:{display:"block"},children:e.map((m,y)=>(Array.isArray(m)?m:[]).map((b,x)=>{if(x>=7)return null;const w=lp(b),k=y*(u+a),N=x*(u+a),S=w===null?l:i[w];return r.jsx("rect",{x:k,y:N,width:u,height:u,rx:o,ry:o,fill:S},`${y}-${x}`)}))})}const dp=mn("oklch(0.97 0.01 85)"),Ge=mn("oklch(0.18 0.02 85)"),jt=mn("oklch(0.38 0.015 85)"),os=mn("oklch(0.55 0.012 85)"),At=mn("oklch(0.55 0.22 25)"),Wt='"Instrument Serif", "Times New Roman", Georgia, serif',up='"Inter Tight", "Helvetica Neue", Arial, sans-serif',fp=["oklch(0.93 0.013 80)","oklch(0.87 0.04 55)","oklch(0.78 0.09 45)","oklch(0.67 0.16 35)","oklch(0.55 0.22 25)"].map(mn);function ji({data:e}){const t=op(e),n=yr(e.totalTokens),a=Ni(e.totalCost,{currency:e.currency,rate:e.exchangeRate}),o=rp(e.startDate),s=ip(n,{baseSize:188,baseChars:9,shrinkPerChar:14,minSize:104}),i=sp(e),l=Array.isArray(e.heatmapWeeks)&&e.heatmapWeeks.length>0;return r.jsxs("div",{style:{width:"100%",height:"100%",background:dp,color:Ge,fontFamily:up,padding:"80px 88px 68px 88px",boxSizing:"border-box",display:"flex",flexDirection:"column",position:"relative"},children:[r.jsxs("header",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",gap:24,paddingBottom:14,borderBottom:`1px solid ${os}`},children:[r.jsxs("div",{style:{display:"flex",alignItems:"center",gap:14,fontSize:14,fontWeight:500,letterSpacing:"0.22em",textTransform:"uppercase",color:Ge},children:[r.jsx("div",{style:{width:10,height:10,borderRadius:"50%",background:At}}),"The Token Tracker"]}),r.jsxs("div",{style:{fontSize:12,letterSpacing:"0.22em",textTransform:"uppercase",color:jt,textAlign:"right"},children:[g("share.card.broadsheet.issue")," № ",t]})]}),r.jsxs("div",{style:{marginTop:24,display:"flex",justifyContent:"space-between",alignItems:"flex-end",gap:24},children:[r.jsxs("div",{children:[r.jsx("div",{style:{fontSize:12,letterSpacing:"0.2em",textTransform:"uppercase",color:jt,marginBottom:6},children:g("share.card.broadsheet.by")}),r.jsx("div",{style:{fontFamily:Wt,fontSize:52,fontStyle:"italic",lineHeight:1,color:Ge,letterSpacing:"-0.01em"},children:e.handle})]}),r.jsxs("div",{style:{fontSize:12,letterSpacing:"0.18em",textTransform:"uppercase",color:jt,textAlign:"right",lineHeight:1.6},children:[g("share.card.broadsheet.tracked_since"),r.jsx("br",{}),r.jsx("span",{style:{color:Ge},children:o})]})]}),r.jsxs("div",{style:{marginTop:40,display:"flex",flexDirection:"column"},children:[r.jsx("div",{style:{fontSize:13,letterSpacing:"0.3em",textTransform:"uppercase",color:At,marginBottom:10},children:g("share.card.broadsheet.total_tokens")}),r.jsx("div",{style:{fontFamily:Wt,fontSize:s,fontWeight:400,lineHeight:.86,letterSpacing:"-0.032em",color:Ge,fontFeatureSettings:'"lnum" 1, "tnum" 1',whiteSpace:"nowrap",overflow:"hidden"},children:n}),r.jsxs("div",{style:{marginTop:14,fontFamily:Wt,fontStyle:"italic",fontSize:34,lineHeight:1.15,color:Ge,letterSpacing:"-0.005em",whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis"},children:["“",i,"”"]}),r.jsx("div",{style:{marginTop:14,height:1,background:At,width:"100%"}}),r.jsxs("div",{style:{marginTop:10,display:"flex",justifyContent:"space-between",fontSize:13,letterSpacing:"0.16em",textTransform:"uppercase",color:jt},children:[r.jsxs("span",{children:[g("share.card.broadsheet.estimated_spend")," · ",a]}),r.jsx("span",{children:g("share.card.broadsheet.billable_days",{days:e.activeDays})})]})]}),l?r.jsxs("section",{style:{marginTop:40},children:[r.jsxs("div",{style:{display:"flex",alignItems:"baseline",justifyContent:"space-between",marginBottom:12},children:[r.jsx("div",{style:{fontSize:12,letterSpacing:"0.3em",textTransform:"uppercase",color:Ge,fontWeight:600},children:g("share.card.broadsheet.heatmap_title")}),r.jsx("div",{style:{fontSize:11,letterSpacing:"0.18em",textTransform:"uppercase",color:jt},children:g("share.card.broadsheet.heatmap_days_on_record",{active:e.heatmapActiveDays,total:e.heatmapTotalDays})})]}),r.jsx(cp,{weeks:e.heatmapWeeks,palette:fp,width:1024,gap:3,radius:2})]}):null,r.jsxs("section",{style:{marginTop:30,flex:1},children:[r.jsxs("div",{style:{display:"flex",alignItems:"baseline",justifyContent:"space-between",borderBottom:`1px solid ${Ge}`,paddingBottom:10,marginBottom:6},children:[r.jsx("div",{style:{fontSize:12,letterSpacing:"0.3em",textTransform:"uppercase",color:Ge,fontWeight:600},children:g("share.card.broadsheet.roster_title")}),r.jsx("div",{style:{fontSize:11,letterSpacing:"0.18em",textTransform:"uppercase",color:jt},children:g("share.card.broadsheet.roster_subtitle")})]}),e.topModels.length===0?r.jsx("div",{style:{fontFamily:Wt,fontStyle:"italic",fontSize:26,color:jt,paddingTop:14},children:g("share.card.broadsheet.empty")}):e.topModels.map((c,d)=>r.jsxs("div",{style:{display:"grid",gridTemplateColumns:"52px 1fr auto 68px",alignItems:"baseline",gap:16,padding:"13px 0",borderBottom:`1px solid ${os}`},children:[r.jsx("div",{style:{fontFamily:Wt,fontSize:34,fontStyle:"italic",color:At,lineHeight:1},children:String(d+1).padStart(2,"0")}),r.jsx("div",{style:{fontFamily:Wt,fontSize:32,color:Ge,lineHeight:1.1,letterSpacing:"-0.01em",whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis"},children:c.name}),r.jsx("div",{style:{fontFamily:Wt,fontSize:28,color:Ge,fontFeatureSettings:'"lnum" 1, "tnum" 1',whiteSpace:"nowrap"},children:yr(c.tokens)}),r.jsxs("div",{style:{fontSize:13,letterSpacing:"0.1em",color:jt,textAlign:"right",fontFeatureSettings:'"tnum" 1'},children:[c.percent,"%"]})]},c.id||c.name))]}),r.jsxs("footer",{style:{marginTop:18,paddingTop:12,borderTop:`1px solid ${Ge}`,display:"flex",justifyContent:"space-between",alignItems:"center",fontSize:12,letterSpacing:"0.22em",textTransform:"uppercase",color:Ge},children:[r.jsxs("div",{style:{display:"flex",gap:28},children:[r.jsxs("span",{children:[g("share.card.broadsheet.global_rank")," ",r.jsxs("span",{style:{color:At},children:["№ ",e.rank!=null?e.rank:"—"]})]}),r.jsxs("span",{children:[g("share.card.broadsheet.active_days")," ",r.jsx("span",{style:{color:At},children:g("share.card.broadsheet.days_count",{days:e.activeDays})})]})]}),r.jsxs("div",{children:[g("share.card.broadsheet.track_yours")," ",r.jsx("span",{style:{color:At},children:"→ tokentracker.cc"})]})]})]})}const mp=vi["annual-report"].width,hp="#0a0820",St="#ffffffee",Ft="rgba(255,255,255,0.45)",er="#a78bfa",gp={background:"rgba(20,15,50,0.38)",backdropFilter:"blur(40px)",WebkitBackdropFilter:"blur(40px)",border:"1px solid rgba(255,255,255,0.05)",boxShadow:["0 39px 56px -36px rgba(255,255,255,0.10) inset","0 7px 11px -4px rgba(255,255,255,0.06) inset","0 -82px 68px -64px rgba(101,67,149,0.08) inset","0 98px 100px -48px rgba(208,171,255,0.06) inset","0 4px 18px 0 rgba(156,146,215,0.06) inset","0 1px 40px 0 rgba(228,222,255,0.04) inset"].join(", ")},ea={background:"rgba(20,15,50,0.38)",backdropFilter:"blur(32px)",WebkitBackdropFilter:"blur(32px)",border:"1px solid rgba(255,255,255,0.06)",boxShadow:"0 1px 8px 0 rgba(228,222,255,0.06) inset"},pr='"Space Grotesk", "Inter Tight", sans-serif',tr='"Inter Tight", sans-serif',yp="rgba(255,255,255,0.06)",Si=[yp,"#4a3d8f","#6b5cbe","#9060e0","#d946ef"],Mi=48,Ci=28,ca=4,Di=20,pp=mp-Mi*2-Ci*2,xp=(pp-Di*2)/3,xr=Math.min(Math.floor((xp-ca*6)/7),40),bp=xr*7+ca*6;function kp(e){if(!Array.isArray(e))return e;const t=[];for(const l of e)if(Array.isArray(l))for(const c of l)c?.day&&!c.future&&c.value>0&&t.push(c.value);if(!t.length)return e;t.sort((l,c)=>l-c);const n=l=>{const c=t.length,d=(c-1)*l,u=Math.floor(d);return Math.round((t[u]??0)+((t[Math.min(c-1,u+1)]??0)-(t[u]??0))*(d-u))},a=n(.5),o=n(.75),s=n(.9),i=l=>!l||l<=0?0:l<=a?1:l<=o?2:l<=s?3:4;return e.map(l=>Array.isArray(l)?l.map(c=>c?.day&&!c.future&&typeof c.value=="number"?{...c,level:i(c.value)}:c):l)}function wp(e){if(!Array.isArray(e))return[];const t={},n=kp(e);for(const a of n)if(Array.isArray(a))for(const o of a){if(!o?.day||o.future)continue;const s=o.day.split("-");if(s.length<2)continue;const i=`${s[0]}-${s[1]}`;(t[i]??=[]).push(o)}return Object.entries(t).sort(([a],[o])=>a.localeCompare(o)).slice(-12).map(([a,o])=>({month:parseInt(a.split("-")[1],10),cells:o}))}function vp(e){if(!e.length)return[];const t=[...e].sort((i,l)=>i.day.localeCompare(l.day));let n=new Date(`${t[0].day}T00:00:00Z`).getUTCDay();const a=Array(n).fill(null).concat(t),o=[];for(let i=0;i<a.length;i+=7)o.push(a.slice(i,i+7));const s=o[o.length-1];for(;s&&s.length<7;)s.push(null);return o.slice(0,6)}const _p=["","Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];function Np(e){if(!Array.isArray(e))return 0;const t=[];for(const o of e)if(Array.isArray(o))for(const s of o)s?.day&&!s.future&&t.push(s);t.sort((o,s)=>o.day.localeCompare(s.day));let n=0,a=0;for(const o of t)(o.level||0)>0?(a++,a>n&&(n=a)):a=0;return n}function ss(e){const[t,n]=h.useState(null);return h.useEffect(()=>{if(!e){n(null);return}let a=!1;const o=new Image;return o.crossOrigin="anonymous",o.onload=()=>{if(!a)try{const s=document.createElement("canvas");s.width=o.naturalWidth,s.height=o.naturalHeight,s.getContext("2d").drawImage(o,0,0),n(s.toDataURL("image/png"))}catch{n(null)}},o.onerror=()=>{a||n(null)},o.src=e,()=>{a=!0}},[e]),t}function jp({data:e}){const t=vp(e.cells);return r.jsxs("div",{children:[r.jsx("div",{style:{fontSize:16,fontWeight:600,color:Ft,fontFamily:pr,marginBottom:4},children:_p[e.month]}),r.jsx("div",{style:{display:"flex",flexDirection:"column",gap:ca},children:t.map((n,a)=>r.jsx("div",{style:{display:"flex",gap:ca},children:n.map((o,s)=>{const i=o?Math.min(4,Math.max(0,o.level||0)):-1;return r.jsx("div",{style:{width:xr,height:xr,borderRadius:4,background:i<0?"transparent":Si[i]}},s)})},a))})]})}function Sp({data:e}){const t=wp(e.heatmapWeeks),n=Np(e.heatmapWeeks),a=e.topModels[0],o=e.avatarUrl||null,s=ss(o),i=ss("/neon_bg.png"),l=(e.handle||"?")[0].toUpperCase(),c=16;return r.jsxs("div",{style:{width:"100%",height:"100%",background:hp,fontFamily:pr,position:"relative",overflow:"hidden",boxSizing:"border-box"},children:[r.jsx("img",{src:i||"/neon_bg.png",alt:"",style:{position:"absolute",inset:0,width:"100%",height:"100%",objectFit:"cover",pointerEvents:"none"}}),r.jsxs("div",{style:{position:"relative",zIndex:1,display:"flex",flexDirection:"column",height:"100%",padding:Mi,boxSizing:"border-box"},children:[r.jsxs("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center",marginBottom:c*3},children:[r.jsxs("div",{style:{display:"flex",alignItems:"center",gap:16},children:[r.jsx("img",{src:"/app-icon.png",alt:"",width:64,height:64,style:{width:64,height:64,borderRadius:16,display:"block"}}),r.jsxs("div",{children:[r.jsx("div",{style:{fontSize:20,fontWeight:500,color:Ft,lineHeight:1.2},children:"Token Tracker"}),r.jsx("div",{style:{fontSize:36,fontWeight:700,lineHeight:1.15,color:St},children:g("share.card.annual.report_title")})]})]}),r.jsxs("div",{style:{display:"flex",alignItems:"center",gap:10},children:[r.jsx("div",{style:{width:48,height:48,borderRadius:"50%",background:"linear-gradient(135deg,#4c1d95,#7c3aed)",display:"flex",alignItems:"center",justifyContent:"center",border:"2px solid rgba(255,255,255,0.15)",overflow:"hidden",flexShrink:0},children:s?r.jsx("img",{src:s,alt:"",width:48,height:48,style:{width:48,height:48,objectFit:"cover",display:"block"},crossOrigin:"anonymous",referrerPolicy:"no-referrer"}):r.jsx("span",{style:{fontSize:20,fontWeight:700,color:St},children:l})}),r.jsx("div",{style:{fontSize:32,fontWeight:700,color:St},children:e.handle})]})]}),r.jsxs("div",{style:{...gp,borderRadius:22,padding:Ci,marginBottom:c},children:[r.jsxs("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center",marginBottom:12},children:[r.jsxs("div",{style:{display:"flex",alignItems:"center",gap:6,fontSize:14,color:Ft},children:[r.jsx("span",{children:g("share.card.annual.less")}),Si.map((d,u)=>r.jsx("div",{style:{width:16,height:16,borderRadius:3,background:d}},u)),r.jsx("span",{children:g("share.card.annual.more")})]}),r.jsx("div",{style:{fontSize:16,fontWeight:700,letterSpacing:"0.14em",color:"rgba(255,255,255,0.22)",textTransform:"uppercase"},children:g("share.card.annual.heatmap_title")})]}),r.jsx("div",{style:{display:"grid",gridTemplateColumns:`repeat(3,${bp}px)`,gap:`8px ${Di}px`,justifyContent:"center"},children:t.map(d=>r.jsx(jp,{data:d},d.month))})]}),r.jsxs("div",{style:{display:"grid",gridTemplateColumns:"1fr 1fr",gap:c,marginBottom:c},children:[r.jsxs("div",{style:{...ea,borderRadius:22,padding:"28px 16px",textAlign:"center"},children:[r.jsx("div",{style:{fontFamily:tr,fontSize:52,fontWeight:700,color:St,letterSpacing:"-0.02em",lineHeight:1},children:yr(e.totalTokens)}),r.jsx("div",{style:{fontSize:22,color:Ft,marginTop:12},children:g("share.card.annual.total_tokens")})]}),r.jsxs("div",{style:{...ea,borderRadius:22,padding:"28px 16px",textAlign:"center"},children:[r.jsx("div",{style:{fontFamily:tr,fontSize:52,fontWeight:700,color:St,letterSpacing:"-0.02em",lineHeight:1},children:Ni(e.totalCost,{currency:e.currency,rate:e.exchangeRate})}),r.jsx("div",{style:{fontSize:22,color:Ft,marginTop:12},children:g("share.card.annual.estimated_cost")})]})]}),r.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:c},children:[r.jsxs("div",{style:{...ea,borderRadius:22,padding:"18px 24px",display:"flex",justifyContent:"space-between",alignItems:"center"},children:[r.jsxs("div",{style:{display:"flex",alignItems:"center",gap:10},children:[r.jsxs("svg",{width:"22",height:"22",viewBox:"0 0 24 24",fill:"none",stroke:er,strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:[r.jsx("path",{d:"M12 2v4m0 12v4M4.93 4.93l2.83 2.83m8.48 8.48 2.83 2.83M2 12h4m12 0h4M4.93 19.07l2.83-2.83m8.48-8.48 2.83-2.83"}),r.jsx("circle",{cx:"12",cy:"12",r:"4"})]}),r.jsx("span",{style:{fontSize:20,color:Ft},children:g("share.card.annual.longest_streak")})]}),r.jsx("span",{style:{fontFamily:tr,fontSize:28,fontWeight:700,color:St},children:g("share.card.annual.days_count",{days:n})})]}),r.jsxs("div",{style:{...ea,borderRadius:22,padding:"18px 24px",display:"flex",justifyContent:"space-between",alignItems:"center"},children:[r.jsxs("div",{style:{display:"flex",alignItems:"center",gap:10},children:[r.jsxs("svg",{width:"22",height:"22",viewBox:"0 0 24 24",fill:"none",stroke:er,strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:[r.jsx("path",{d:"M21 16V8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16z"}),r.jsx("circle",{cx:"12",cy:"12",r:"4"})]}),r.jsx("span",{style:{fontSize:20,color:Ft},children:g("share.card.annual.top_model")})]}),r.jsx("span",{style:{fontFamily:pr,fontSize:28,fontWeight:700,color:St},children:a?a.name:"—"})]})]}),r.jsxs("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center",marginTop:"auto"},children:[r.jsxs("div",{style:{display:"flex",alignItems:"center",gap:10},children:[r.jsx("img",{src:"/app-icon.png",alt:"",width:44,height:44,style:{width:44,height:44,borderRadius:8,display:"block"}}),r.jsx("span",{style:{fontSize:22,fontWeight:600,color:St},children:"Token Tracker"})]}),r.jsx("span",{style:{fontSize:22,fontWeight:600,color:er},children:"tokentracker.cc"})]})]})]})}const Ti=[{id:"annual-report",labelKey:"share.variant.neon"},{id:"broadsheet",labelKey:"share.variant.broadsheet"}],Mp={broadsheet:ji,"annual-report":Sp};function Pi(e){return vi[e]||{width:ki,height:wi}}function Cp(e){const t=Ti.find(n=>n.id===e);return t?.labelKey?g(t.labelKey):e}const is=h.forwardRef(function({data:t,variant:n},a){const o=Mp[n]||ji,{width:s,height:i}=Pi(n);return r.jsx("div",{ref:a,"data-share-card":"true",style:{width:s,height:i,position:"relative",overflow:"hidden",boxSizing:"border-box"},children:r.jsx(o,{data:t})})});function ta(){return typeof window>"u"?!1:!!window?.webkit?.messageHandlers?.nativeBridge}const Dp=440;function Tp(){const[e,t]=h.useState(null),n=h.useRef(null),a=h.useCallback((o,s="info")=>{n.current&&window.clearTimeout(n.current),t({id:Date.now(),kind:s,text:o}),n.current=window.setTimeout(()=>t(null),2800)},[]);return h.useEffect(()=>()=>{n.current&&window.clearTimeout(n.current)},[]),{toast:e,push:a}}function nr({onClick:e,disabled:t,children:n,emphasis:a,ariaLabel:o}){return r.jsx("button",{type:"button",onClick:e,disabled:t,"aria-label":o,className:["group relative flex items-center justify-between gap-3 w-full px-4 py-3 text-left","rounded-lg border transition-colors",a?"border-oai-black dark:border-oai-white bg-oai-black dark:bg-oai-white text-oai-white dark:text-oai-black hover:opacity-90":"border-oai-gray-200 dark:border-oai-gray-800 bg-white dark:bg-oai-gray-900 text-oai-black dark:text-oai-white hover:border-oai-gray-400 dark:hover:border-oai-gray-600",t?"opacity-60 cursor-not-allowed":"cursor-pointer"].join(" "),children:n})}function Pp({open:e,onClose:t,data:n,twitterText:a}){const[o,s]=h.useState(null),[i,l]=h.useState(""),[c,d]=h.useState("annual-report"),u=h.useRef(null),{toast:f,push:m}=Tp(),y=hs(),p=h.useMemo(()=>{const _=y?.user;if(!_||typeof _!="object")return null;const M=_.user_metadata||{},O=_.profile||{},$=M.avatar_url||M.picture||O.avatar_url||_.avatar_url;return typeof $=="string"&&$.trim()?$.trim():null},[y?.user]);h.useEffect(()=>{e&&(s(null),l(n?.handle||""))},[e,n?.handle]);const b=n&&{...n,handle:i||n.handle,avatarUrl:p},{width:x,height:w}=Pi(c),k=Dp/x;h.useEffect(()=>{if(!e)return;const _=M=>{M.key==="Escape"&&t?.()};return window.addEventListener("keydown",_),()=>window.removeEventListener("keydown",_)},[e,t]);const N=h.useCallback(async()=>{const _=u.current;if(!_)return null;try{return await Jy(_)}catch(M){return console.warn("[share] capture failed",M),null}},[]),S=h.useCallback(async()=>{if(o)return;s("copy");const _=await N();if(!_){m(g("share.toast.failed"),"error"),s(null);return}let M=!1;if(ta()){const O=await Za(_);O&&(M=(await Gy(O)).ok)}else M=await to(_);m(M?g("share.toast.copied"):g("share.toast.failed"),M?"success":"error"),s(null)},[o,N,m]),v=h.useCallback(()=>`tokentracker-share-${Date.now()}.png`,[]),j=h.useCallback(async()=>{if(o)return;s("download");const _=await N();if(!_){m(g("share.toast.failed"),"error"),s(null);return}if(ta()){const O=await Za(_);if(O&&(await as(O,v())).ok){m(g("share.toast.downloaded"),"success"),s(null);return}}const M=rs(_,v());m(M?g("share.toast.downloaded"):g("share.toast.failed"),M?"success":"error"),s(null)},[o,N,v,m]),T=h.useCallback(async()=>{if(o)return;s("x");const _=await N();if(!_){m(g("share.toast.failed"),"error"),s(null);return}if(ta()){const Y=await Za(_);Y&&(await as(Y,v()),m(g("share.toast.downloaded"),"success"))}else await to(_)?m(g("share.toast.copied"),"success"):rs(_,v());const M=new URL("https://twitter.com/intent/tweet");a&&M.searchParams.set("text",a);const O=y?.user?.id,$=typeof O=="string"&&O?`/u/${O}`:"/";if(M.searchParams.set("url",`https://www.tokentracker.cc${$}?ref=share`),ta())try{window.webkit?.messageHandlers?.nativeBridge?.postMessage({type:"action",name:"openURL",value:M.toString()})}catch{window.open(M.toString(),"_blank","noopener,noreferrer")}else window.open(M.toString(),"_blank","noopener,noreferrer");s(null)},[o,N,m,a,v,y]);return e?r.jsxs("div",{role:"dialog","aria-modal":"true","aria-label":g("share.modal.title"),"data-screenshot-exclude":"true",className:"fixed inset-0 z-[9999] flex items-center justify-center p-4 sm:p-6",style:{background:"rgba(10,10,10,0.72)"},onClick:_=>{_.target===_.currentTarget&&t?.()},children:[r.jsx("div",{"aria-hidden":!0,style:{position:"fixed",left:0,top:0,width:x,height:w,pointerEvents:"none",opacity:0,zIndex:-1,clip:"rect(0,0,0,0)",overflow:"hidden"},children:r.jsx(is,{ref:u,data:b,variant:c})}),r.jsxs(Le.div,{initial:{opacity:0,y:12},animate:{opacity:1,y:0},exit:{opacity:0,y:12},transition:{duration:.18,ease:[.2,.8,.2,1]},className:"relative w-full max-w-[1040px] max-h-[92vh] overflow-hidden rounded-2xl border border-oai-gray-200 dark:border-oai-gray-800 bg-white dark:bg-oai-black shadow-oai-lg",children:[r.jsxs("div",{className:"flex flex-col lg:flex-row max-h-[92vh]",children:[r.jsx("div",{className:"flex-1 min-w-0 p-4 sm:p-7 bg-oai-gray-50 dark:bg-oai-gray-950 flex items-center justify-center overflow-auto",children:r.jsxs("div",{style:{width:x*k,height:w*k,flexShrink:0,position:"relative"},className:"rounded-xl overflow-hidden shadow-oai-md ring-1 ring-black/5",children:[o?r.jsx("div",{className:"absolute inset-0 z-10 flex items-center justify-center bg-white/70 dark:bg-black/50",children:r.jsxs("svg",{className:"animate-spin h-6 w-6 text-oai-gray-500",viewBox:"0 0 24 24",fill:"none",children:[r.jsx("circle",{className:"opacity-25",cx:"12",cy:"12",r:"10",stroke:"currentColor",strokeWidth:"3"}),r.jsx("path",{className:"opacity-75",fill:"currentColor",d:"M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4z"})]})}):null,r.jsx("div",{style:{width:x,height:w,transform:`scale(${k})`,transformOrigin:"top left"},children:r.jsx(is,{data:b,variant:c})})]})}),r.jsxs("div",{className:"w-full lg:w-[340px] flex-shrink-0 border-t lg:border-t-0 lg:border-l border-oai-gray-200 dark:border-oai-gray-800 p-5 sm:p-6 flex flex-col gap-5 overflow-y-auto",children:[r.jsxs("div",{className:"flex items-start justify-between gap-2",children:[r.jsxs("div",{children:[r.jsx("h2",{className:"text-lg font-semibold text-oai-black dark:text-oai-white",children:g("share.modal.title")}),r.jsx("p",{className:"mt-1 text-xs text-oai-gray-500 dark:text-oai-gray-400",children:g("share.modal.subtitle")})]}),r.jsx("button",{type:"button",onClick:t,"aria-label":g("share.modal.close"),className:"p-1.5 -mt-1 -mr-1 rounded-md text-oai-gray-500 hover:text-oai-black dark:hover:text-oai-white hover:bg-oai-gray-100 dark:hover:bg-oai-gray-800 transition-colors",children:r.jsx("svg",{width:"18",height:"18",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:r.jsx("path",{d:"M18 6L6 18M6 6l12 12"})})})]}),r.jsxs("div",{children:[r.jsx("label",{htmlFor:"share-handle",className:"text-[11px] tracking-[0.18em] uppercase text-oai-gray-500 dark:text-oai-gray-400 mb-1.5 block",children:g("share.modal.name_label")}),r.jsx("input",{id:"share-handle",type:"text",value:i,onChange:_=>l(_.target.value),placeholder:g("share.modal.name_placeholder"),className:"w-full px-3 py-2 text-sm rounded-lg border border-oai-gray-200 dark:border-oai-gray-800 bg-white dark:bg-oai-gray-900 text-oai-black dark:text-oai-white placeholder:text-oai-gray-400 dark:placeholder:text-oai-gray-600 focus:outline-none focus:ring-1 focus:ring-inset focus:ring-oai-brand transition-colors"})]}),r.jsxs("div",{children:[r.jsx("label",{className:"text-[11px] tracking-[0.18em] uppercase text-oai-gray-500 dark:text-oai-gray-400 mb-1.5 block",children:g("share.modal.style_label")}),r.jsx("div",{className:"flex gap-2",children:Ti.map(_=>r.jsx("button",{type:"button",onClick:()=>d(_.id),className:["flex-1 px-3 py-2 text-sm rounded-lg border transition-colors",c===_.id?"border-oai-black dark:border-oai-white bg-white dark:bg-oai-gray-900 text-oai-black dark:text-oai-white font-medium":"border-oai-gray-200 dark:border-oai-gray-800 bg-white dark:bg-oai-gray-900 text-oai-gray-500 dark:text-oai-gray-400 hover:border-oai-gray-400 dark:hover:border-oai-gray-600"].join(" "),children:Cp(_.id)},_.id))})]}),r.jsxs("div",{className:"grid grid-cols-1 gap-2",children:[r.jsxs(nr,{onClick:T,disabled:!!o,emphasis:!0,children:[r.jsxs("span",{className:"flex items-center gap-3",children:[r.jsx("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"currentColor","aria-hidden":!0,children:r.jsx("path",{d:"M18.244 2.25h3.308l-7.227 8.26 8.502 11.24H16.17l-5.214-6.817L4.99 21.75H1.68l7.73-8.835L1.254 2.25H8.08l4.713 6.231zm-1.161 17.52h1.833L7.084 4.126H5.117z"})}),r.jsx("span",{className:"font-medium text-sm",children:g("share.modal.action.x")})]}),r.jsx("span",{className:"text-[11px] opacity-70",children:o==="x"?g("share.toast.working"):g("share.modal.hint.x")})]}),r.jsxs(nr,{onClick:j,disabled:!!o,children:[r.jsxs("span",{className:"flex items-center gap-3",children:[r.jsxs("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":!0,children:[r.jsx("path",{d:"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4"}),r.jsx("polyline",{points:"7 10 12 15 17 10"}),r.jsx("line",{x1:"12",y1:"15",x2:"12",y2:"3"})]}),r.jsx("span",{className:"font-medium text-sm",children:g("share.modal.action.download")})]}),r.jsx("span",{className:"text-[11px] text-oai-gray-500 dark:text-oai-gray-400",children:"PNG"})]}),r.jsxs(nr,{onClick:S,disabled:!!o,children:[r.jsxs("span",{className:"flex items-center gap-3",children:[r.jsxs("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":!0,children:[r.jsx("rect",{x:"9",y:"9",width:"13",height:"13",rx:"2",ry:"2"}),r.jsx("path",{d:"M5 15H4a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h9a2 2 0 0 1 2 2v1"})]}),r.jsx("span",{className:"font-medium text-sm",children:g("share.modal.action.copy")})]}),r.jsx("span",{className:"text-[11px] text-oai-gray-500 dark:text-oai-gray-400",children:g("share.modal.hint.copy")})]})]}),r.jsx("div",{className:"mt-auto pt-4 border-t border-oai-gray-200 dark:border-oai-gray-800",children:r.jsx("p",{className:"text-[11px] leading-relaxed text-oai-gray-500 dark:text-oai-gray-400",children:g("share.modal.footer")})})]})]}),r.jsx(vr,{children:f?r.jsx(Le.div,{initial:{opacity:0,y:8},animate:{opacity:1,y:0},exit:{opacity:0,y:8},className:"pointer-events-none absolute left-1/2 bottom-4 -translate-x-1/2",children:r.jsx("div",{className:["px-4 py-2 rounded-full text-xs font-medium shadow-oai-md",f.kind==="error"?"bg-red-600 text-white":f.kind==="success"?"bg-oai-black dark:bg-oai-white text-oai-white dark:text-oai-black":"bg-oai-gray-800 text-white"].join(" "),children:f.text})},f.id):null})]})]}):null}function Op(e){const{enabled:t,handle:n,startDate:a,activeDays:o,summary:s,topModels:i,period:l,periodFrom:c,periodTo:d,heatmap:u,accessToken:f,userId:m,currency:y,exchangeRate:p}=e,[b,x]=h.useState(null),w=p;return h.useEffect(()=>{if(!t||!m&&!Dt())return;let k=!1;return(async()=>{try{const S=await ic({accessToken:f,userId:m,period:l==="day"||l==="custom"?"week":l,metric:"all",limit:100,offset:0});if(k)return;const j=(Array.isArray(S?.entries)?S.entries:Array.isArray(S)?S:[]).find(_=>_?.is_me===!0),T=typeof j?.rank=="number"?j.rank:null;x(T)}catch{k||x(null)}})(),()=>{k=!0}},[t,f,m,l]),h.useMemo(()=>tp({handle:n,startDate:a,activeDays:o,summary:s,topModels:i,rank:b,period:l,periodFrom:c,periodTo:d,heatmap:u,currency:y,exchangeRate:typeof w=="number"?w:void 0}),[n,a,o,s,i,b,l,c,d,u,y,w])}const Ep=["day","week","month","total","custom"],ar=new Set(["day","hour","month"]),Nn=new Set(["day","total","custom"]),Ap=["macAppBanner","statsPanel","widgetOnboarding","installCopy","activityHeatmap","deviceUsage","trendMonitor","qualityPerDollar"],Wp=["usageOverview","dataDetails"];function rr(e,t){if(typeof t=="number"&&t>0)return!0;if(typeof e=="bigint")return e>0n;if(typeof e=="number")return Number.isFinite(e)&&e>0;if(typeof e=="string"){const n=e.trim();if(!n)return!1;if(/^[0-9]+$/.test(n))try{return BigInt(n)>0n}catch{return!1}const a=Number(n);return Number.isFinite(a)&&a>0}return!1}function na(e){return e?sn(e,null):null}function ls(e){return e?e?.billable_total_tokens??e?.value??e?.total_tokens:null}function $p(e){return e?e==="www.tokentracker.cc"||e==="tokentracker.cc":!1}function Fp(){if(typeof window>"u")return!1;const e=new URLSearchParams(window.location.search),t=String(e.get("force_install")||"").toLowerCase();return t!=="1"&&t!=="true"?!1:!$p(window.location.hostname)}function ix({baseUrl:e,auth:t,signedIn:n,sessionSoftExpired:a,signOut:o,publicMode:s=!1,publicToken:i=null,signInUrl:l="/sign-in",signUpUrl:c="/sign-up",onMainContentVisible:d}){const{resolvedLocale:u}=lc(),{currency:f,rate:m}=un(),{mode:y,setMode:p,formatTokens:b,formatTokensTooltip:x}=Qe(),[w,k]=h.useState(!1),[N,S]=h.useState(null),[v,j]=h.useState(null),[T,_]=h.useState(!1),[M,O]=h.useState(null),[$,Y]=h.useState(0),[H,L]=h.useState(0),[D,F]=h.useState(null),P=h.useMemo(()=>typeof window>"u"?!1:cc(window.location.search),[]),E=h.useMemo(()=>Fp(),[]),[B,R]=h.useState(!1),z=2200,[U,se]=h.useState(!0),[ce,de]=h.useState(!1),[ye,fe]=h.useState(!1),[ie,ae]=h.useState(!1),q=h.useRef(!1),J=Dt(),A=n&&!a,G=h.useMemo(()=>A&&(typeof t=="function"||typeof t=="string"||t&&typeof t=="object")?t:null,[t,A]),ne=A?G:null,Z=s?dc(i):ne,te=n||J||s,be=A&&ln(ne),Se=n&&a&&!s,{accountView:Me,revision:le,resolving:xe}=uc(),me=Me&&!s,Ee=me?ne:null,Re=xe&&!s;h.useEffect(()=>{if(!n||J){S(null),j(null),_(!1),O(null);return}if(s)return;if(!be){S(null),j(null),_(!1),O(null);return}let C=!0;const Q=()=>{S(null),j(null),_(!1),O(null)};return _(!0),O(null),(async()=>{let K=null;try{K=await Ye(ne)}catch{K=null}if(C){if(!K){Q();return}try{const oe={link_code:null,expires_at:null};if(!C)return;S(typeof oe?.link_code=="string"?oe.link_code:null),j(typeof oe?.expires_at=="string"?oe.expires_at:null)}catch(oe){if(!C)return;S(null),j(null),O(oe?.message||"Failed to load link code")}finally{if(!C)return;_(!1)}}})(),()=>{C=!1}},[e,J,n,s,be,ne,H]);const Ae=typeof window<"u"&&(window.location.hostname==="localhost"||window.location.hostname==="127.0.0.1");h.useEffect(()=>{if(!Ae&&(!n||J||s)){F(null);return}if(!Ae&&!be){F(null);return}let C=!0;return(async()=>{let Q=null;try{Q=await Ye(ne)}catch{Q=null}if(C){if(!Q&&!Ae){F(null);return}try{const K=await fc({baseUrl:e,accessToken:Q});if(!C)return;F(K&&typeof K=="object"?K:null)}catch{if(!C)return;F(null)}}})(),()=>{C=!1}},[be,e,ne,J,s,n]);const Tt=h.useMemo(()=>{if(!v)return!1;const C=Date.parse(v);if(!Number.isFinite(C))return!1;const Q=$||Date.now();return C<=Q},[v,$]);h.useEffect(()=>{!n||J||s||!v||!Tt||T||(S(null),j(null),O(null),L(C=>C+1))},[Tt,v,T,J,n]),h.useEffect(()=>{if(!v||s)return;const C=Date.parse(v);if(!Number.isFinite(C))return;const Q=Date.now();if(Y(Q),C<=Q)return;const K=window.setTimeout(()=>Y(Date.now()),C-Q),oe=()=>{typeof document>"u"||document.visibilityState==="visible"&&Y(Date.now())};return typeof document<"u"&&document.addEventListener("visibilitychange",oe),window.addEventListener("focus",oe),()=>{window.clearTimeout(K),typeof document<"u"&&document.removeEventListener("visibilitychange",oe),window.removeEventListener("focus",oe)}},[v]);const Te=h.useMemo(()=>ms(),[]),Pe=h.useMemo(()=>fs(),[]),ze=h.useMemo(()=>mc(),[]),Je=s?null:t?.userId||t?.email||"default",[Pt,kt]=h.useState("month"),[Ze,hn]=h.useState(null),[it,gn]=h.useState(null),[Yt,wt]=h.useState(!1),I=P?"total":Pt,ue=h.useMemo(()=>I==="custom"&&Ze&&it?{from:Ze,to:it}:hc(I,{timeZone:Te,offsetMinutes:Pe,now:ze}),[ze,I,Te,Pe,Ze,it]),V=ue.from,ee=ue.to,[ke,re]=h.useState(null),{devices:Ht,accountSources:Ut,refresh:Vt}=Uy({from:V,to:ee,timeZone:Te,tzOffsetMinutes:Pe,accountView:me,accountAccessToken:Ee,accountRevision:le}),He=h.useMemo(()=>Ht.filter(C=>(Number(C.total_tokens)||0)>0),[Ht]),ht=h.useMemo(()=>Ut.filter(C=>(Number(C.total_tokens)||0)>0),[Ut]),qt=me&&He.length>=2,Gt=me&&He.length+ht.length>=2;h.useEffect(()=>{if(!qt&&!Gt){ke!==null&&re(null);return}ke&&!He.some(C=>C.id===ke)&&re(null)},[qt,Gt,He,ke]);const ya=h.useMemo(()=>qt?[{value:"",label:g("dashboard.device_filter.all")},...He.map(C=>({value:C.id,label:hr(C)||g("dashboard.device_card.unnamed")}))]:[],[qt,He,u]),An=Gt?r.jsx(qy,{devices:He,accountSources:ht,selectedDeviceId:ke||"",onSelectDevice:C=>re(C||null),onRenameDevice:async(C,Q)=>{const K=await Ye(Ee);await xc({deviceId:C,name:Q,accessToken:K}),await Vt()}}):null,Wn=h.useMemo(()=>gc({timeZone:Te,offsetMinutes:Pe}),[Te,Pe]),yn=h.useMemo(()=>yc({timeZone:Te,offsetMinutes:Pe}),[Te,Pe]),$n=h.useMemo(()=>`Local time (${yn})`,[yn]),pn=Te,xn=Pe,pa=Wn,Ot=h.useMemo(()=>Dn({timeZone:Te,offsetMinutes:Pe,date:ze||new Date}),[ze,Te,Pe]),Fn=h.useMemo(()=>Qd({period:I,selectedFrom:V,selectedTo:ee,todayKey:Ot}),[V,I,ee,Ot]),{daily:lt,summary:De,rolling:xa,source:In,loading:Ln,error:ba,refresh:bn}=io({baseUrl:e,accessToken:Z,guestAllowed:Se,from:V,to:ee,includeDaily:I!=="total",cacheKey:Je,timeZone:Te,tzOffsetMinutes:Pe,now:ze,accountView:me,accountAccessToken:Ee,accountRevision:le,accountViewResolving:Re,deviceId:ke}),{daily:Rn,loading:ka,refresh:ve}=io({baseUrl:e,accessToken:Z,guestAllowed:Se,from:Fn.from,to:Fn.to,includeDaily:!0,includeSummary:!1,cacheKey:Je?`${Je}.daily-breakdown`:"daily-breakdown",timeZone:Te,tzOffsetMinutes:Pe,now:ze,accountView:me,accountAccessToken:Ee,accountRevision:le,accountViewResolving:Re}),{breakdown:he,loading:$e,refresh:vt}=Od({baseUrl:e,accessToken:Z,guestAllowed:Se,from:V,to:ee,cacheKey:Je,timeZone:Te,tzOffsetMinutes:Pe,accountView:me,accountAccessToken:Ee,accountRevision:le,accountViewResolving:Re,deviceId:ke}),[_t,kn]=h.useState(3),{entries:Oi,loading:Ei,refresh:Er}=wd({baseUrl:e,accessToken:Z,from:V,to:ee,timeZone:Te,tzOffsetMinutes:Pe}),Ar=I==="week"||I==="month",Bn=I==="week"||I==="month",Wr=h.useMemo(()=>lt.filter(C=>C?.future?!1:!C?.day||!Ot?!0:String(C.day)<=String(Ot)),[lt,Ot]),{rows:gt,from:Ai,to:Wi,loading:$i,refresh:$r}=ws({baseUrl:e,accessToken:Z,guestAllowed:Se,period:I,from:V,to:ee,months:24,cacheKey:Je,timeZone:pn,tzOffsetMinutes:xn,now:ze,sharedRows:Ar?lt:null,sharedRange:Ar?{from:V,to:ee}:null,accountView:me,accountAccessToken:Ee,accountRevision:le,accountViewResolving:Re,deviceId:ke}),Fi=h.useMemo(()=>({baseUrl:e,accessToken:Z,guestAllowed:Se,cacheKey:Je,timeZone:pn,tzOffsetMinutes:xn,now:ze,accountView:me,accountAccessToken:Ee,accountRevision:le,accountViewResolving:Re}),[e,Z,Se,Je,pn,xn,ze,me,Ee,le,Re]),{daily:Kt,heatmap:ct,loading:Fr,refresh:Ir}=gd({baseUrl:e,accessToken:Z,guestAllowed:Se,weeks:52,cacheKey:Je,timeZone:Te,tzOffsetMinutes:Pe,now:ze,accountView:me,accountAccessToken:Ee,accountRevision:le,accountViewResolving:Re,deviceId:ke}),{data:zn,refresh:Lr}=Cc();h.useEffect(()=>{zn&&typeof zn=="object"&&pc(zn)},[zn]);const at=h.useMemo(()=>I==="day"?"hour":I==="total"?"month":"day",[I]),Ii=h.useMemo(()=>co(at),[at]),Yn="day",Li=h.useMemo(()=>co(Yn),[]),[rt,Rr]=h.useState(()=>({key:"day",dir:"desc"}));h.useEffect(()=>{Rr(C=>!ar.has(C.key)||C.key===at?C:{key:at,dir:C.dir})},[at]);const Xt=h.useMemo(()=>ar.has(rt.key)&&rt.key!==at?{...rt,key:at}:rt,[at,rt]),Hn=h.useMemo(()=>{if(I==="day")return Array.isArray(gt)?gt.filter(K=>K?.hour&&!K?.future):[];if(I==="total"){const K=Array.isArray(gt)?gt.filter(oe=>oe?.month&&!oe?.future):[];return Ud(K)}const C=Wr;return!C.some(K=>!K?.missing&&!K?.future)&<.length>0?lt.filter(K=>!K?.future).slice(-30).filter(K=>K?.day):C},[I,gt,Wr,lt]),wn=h.useMemo(()=>uo(Hn,Xt),[Hn,Xt]),Br=h.useMemo(()=>Hn.some(C=>!C?.missing&&!C?.future),[Hn]),wa=h.useMemo(()=>{if(!Nn.has(I))return 1;const C=Math.ceil(wn.length/la);return C>0?C:1},[I,wn.length]),[va,Un]=h.useState(0);h.useEffect(()=>{if(!Nn.has(I)){Un(0);return}Un(C=>Math.min(C,wa-1))},[wa,I]),h.useEffect(()=>{Nn.has(I)&&Un(0)},[I,rt.dir,rt.key]);const Ri=h.useMemo(()=>Nn.has(I)?Vd(wn,va,la):wn,[va,I,wn]),zr=h.useMemo(()=>Jd(Rn,{period:I}),[Rn,I]),Qt=h.useMemo(()=>ar.has(rt.key)?{...rt,key:Yn}:rt,[rt]),Bi=h.useMemo(()=>uo(zr,Qt),[zr,Qt]),zi=h.useMemo(()=>Bn?lt:I==="day"?Array.isArray(gt)?gt.filter(C=>C?.hour):[]:gt,[lt,I,gt,Bn]),Yi=Bn?V:Ai,Hi=Bn?ee:Wi;function Ui(C,Q){if(C?.future)return"—";if(C?.missing)return g("shared.status.unsynced");if(Q.endsWith("_tokens")){const K=Q==="total_tokens"?na(C):C?.[Q];return r.jsx("span",{title:x(K),children:b(K)})}return ia(C?.[Q])}function Vi(C){const Q=C?.[at];if(Q==null)return"";const K=String(Q);if(at==="hour"){const[oe,Ve]=K.split("T");if(oe&&Ve)return`${oe} ${Ve.slice(0,5)}`}return K}function qi(C){const Q=C?.[Yn];return Q==null?"":String(Q)}function Gi(C){Rr(Q=>Q.key===C?{key:C,dir:Q.dir==="asc"?"desc":"asc"}:{key:C,dir:"desc"})}function Ki(C){return Xt.key!==C?"none":Xt.dir==="asc"?"ascending":"descending"}function Xi(C){return Xt.key!==C?"":Xt.dir==="asc"?"▲":"▼"}function Qi(C){return Qt.key!==C?"none":Qt.dir==="asc"?"ascending":"descending"}function Ji(C){return Qt.key!==C?"":Qt.dir==="asc"?"▲":"▼"}const _a=h.useMemo(()=>{if(!n&&!J&&!s&&!Ae)return 0;const C=Number(ct?.active_days);if(Number.isFinite(C))return C;let Q=0;const K=new Set,oe=(We,et,qe)=>{typeof We!="string"||!We||K.has(We)||rr(et,qe)&&(K.add(We),Q+=1)};if(Array.isArray(Kt))for(const We of Kt)oe(We?.day,na(We));const Ve=Array.isArray(ct?.weeks)?ct.weeks:[];for(const We of Ve)for(const et of Array.isArray(We)?We:[]){const qe=ls(et);oe(et?.day,qe,et?.level)}return Q},[n,J,ct?.active_days,ct?.weeks,Kt]),[Yr,Hr]=h.useState("month"),Zi=h.useCallback(C=>{C==="custom"?(Hr(Q=>Q==="custom"?"month":Q),kt(Q=>Ze&&it?"custom":Q),wt(!0)):(kt(C),Hr(C),wt(!1))},[Ze,it]),el=h.useCallback((C,Q)=>{hn(C),gn(Q),kt("custom"),wt(!1)},[]),tl=h.useCallback(C=>{wt(C),!C&&Pt==="custom"&&!Ze&&kt(Yr)},[Pt,Ze,Yr]),Jt=h.useCallback(async()=>{await Promise.all([bn(),Ir(),$r(),vt(),Er(),ve()])},[ve,Ir,vt,Er,$r,bn]),Ur=h.useCallback(async()=>{await Promise.all([Jt(),Lr()])},[Jt,Lr]),Na=h.useRef(null);h.useEffect(()=>{if(!Ae||J)return;Na.current||(Na.current=no({auto:!0,background:!0,allLocalSources:!0}));let C=!0;return Na.current.then(()=>{if(C)return Jt()}).catch(Q=>{C&&console.warn("[DashboardPage] Reload sync failed:",Q)}),()=>{C=!1}},[Ae,J,Jt]),h.useEffect(()=>{if(!Ae||J)return;const C=Kd({refresh:Jt,onError:Q=>console.warn("[DashboardPage] Automatic usage refresh failed:",Q)});return()=>C.stop()},[Ae,J,Jt]);const nl=h.useCallback(async()=>{ae(!0);try{Ae&&await no(),await Ur()}catch(C){console.error("[DashboardPage] Refresh failed:",C)}finally{ae(!1)}},[Ae,Ur]),Vn=ie||Ln||ka||Fr||$i||$e||Ei,al=Re||me&&Vn&&!Br,rl=h.useMemo(()=>g("shared.data_source",{source:String(In||"edge").toUpperCase()}),[In,u]),qn=h.useMemo(()=>typeof t?.name!="string"?"":t.name.trim(),[t?.name]),ol="",Vr=h.useMemo(()=>!qn||qn.includes("@")?g("dashboard.identity.fallback"):qn,[qn]),qr=h.useMemo(()=>Vr.replace(/[^a-zA-Z0-9._-]/g,"_"),[Vr]),Gr=h.useMemo(()=>s?g("dashboard.identity.fallback"):qr,[qr,ol,s]),Kr=h.useMemo(()=>{let C=null;const Q=oe=>{typeof oe!="string"||!oe||(!C||oe<C)&&(C=oe)};if(Array.isArray(Kt))for(const oe of Kt)oe?.day&&rr(na(oe))&&Q(oe.day);const K=Array.isArray(ct?.weeks)?ct.weeks:[];for(const oe of K)for(const Ve of Array.isArray(oe)?oe:[]){if(!Ve?.day)continue;const We=ls(Ve),et=Ve?.level;rr(We,et)&&Q(Ve.day)}return C},[ct?.weeks,Kt]),sl=h.useMemo(()=>s?[]:(Array.isArray(D?.subscriptions?.items)?D.subscriptions.items:[]).map(K=>{const oe=typeof K?.tool=="string"?K.tool.trim():"",We=(typeof K?.plan_type=="string"?K.plan_type:typeof K?.planType=="string"?K.planType:"").trim();return!oe||!We?null:{tool:oe,planType:We,provider:typeof K?.provider=="string"?K.provider.trim():"",product:typeof K?.product=="string"?K.product.trim():"",rateLimitTier:typeof K?.rate_limit_tier=="string"?K.rate_limit_tier.trim():typeof K?.rateLimitTier=="string"?K.rateLimitTier.trim():""}}).filter(Boolean).slice(0,6),[s,D]),il=r.jsx(Pc,{heatmap:ct,timeZoneLabel:Wn,timeZoneShortLabel:yn,hideLegend:P,defaultToLatestMonth:P}),ll=h.useMemo(()=>`${V}..${ee}`,[V,I,ee]),cl=g("usage.summary.total"),Ue=De!=null,Zt=Ue?na(De):0,dl=b(Zt),ul=h.useCallback(()=>{p(y===Aa.COMPACT?Aa.FULL:Aa.COMPACT)},[p,y]),fl=g("dashboard.core_index.collapse_label"),ml=g("dashboard.core_index.expand_label"),hl=g("dashboard.core_index.collapse_aria"),gl=g("dashboard.core_index.expand_aria"),yl=!P,en=g("shared.placeholder.short"),ja=h.useMemo(()=>{const C=Array.isArray(he?.sources)?he.sources:[];let Q=null,K=0;for(const et of C){const qe=sn(et?.totals);!Number.isFinite(qe)||qe<=0||qe>K&&(K=qe,Q=et)}let oe=en,Ve=en,We="0.0";if(Q&&K>0){oe=Q?.source?String(Q.source).toUpperCase():en;const et=Array.isArray(Q?.models)?Q.models:[];let qe=0;for(const Ea of et){const Kn=sn(Ea?.totals);!Number.isFinite(Kn)||Kn<=0||Kn>qe&&(qe=Kn,Ve=Ea?.model?String(Ea.model):en)}qe>0&&(We=(qe/K*100).toFixed(1))}return{agentName:oe,modelName:Ve,modelPercent:We}},[he,en]),Sa=ia(Zt),pl=g("dashboard.screenshot.twitter_text",{total_tokens:Sa==="-"?en:Sa,agent_name:ja.agentName,model_name:ja.modelName,model_percent:ja.modelPercent}),xl=h.useMemo(()=>P?[]:Ep,[P]),bl=h.useMemo(()=>[{label:g("usage.metric.total"),value:Ue?b(Zt):"—",title:Ue?x(Zt):void 0,valueClassName:"text-white"},{label:g("usage.metric.input"),value:Ue?b(De?.input_tokens):"—",title:Ue?x(De?.input_tokens):void 0},{label:g("usage.metric.output"),value:Ue?b(De?.output_tokens):"—",title:Ue?x(De?.output_tokens):void 0},{label:g("usage.metric.cached_input"),value:Ue?b(De?.cached_input_tokens):"—",title:Ue?x(De?.cached_input_tokens):void 0},{label:g("usage.metric.reasoning_output"),value:Ue?b(De?.reasoning_output_tokens):"—",title:Ue?x(De?.reasoning_output_tokens):void 0}],[De?.cached_input_tokens,De?.input_tokens,De?.output_tokens,De?.reasoning_output_tokens,Zt,Ue,b,x]),Ma=h.useMemo(()=>cn(De?.total_cost_usd,{currency:f,rate:m}),[De?.total_cost_usd,f,m]),kl=h.useMemo(()=>De?.conversation_count??null,[De?.conversation_count]),Xr=h.useMemo(()=>eu(he,{copyFn:g}),[he]),Qr=h.useMemo(()=>tu(he,{limit:3,copyFn:g}),[he]),wl=Op({enabled:B,handle:Gr,startDate:Kr,activeDays:_a,summary:De,topModels:Qr,period:I,periodFrom:V,periodTo:ee,heatmap:ct,accessToken:typeof Z=="string"?Z:null,userId:t?.userId||null,currency:f,exchangeRate:m}),vl=h.useCallback(()=>R(!0),[]),_l=h.useCallback(()=>R(!1),[]),Nl=h.useCallback(()=>k(!0),[]),jl=h.useCallback(()=>k(!1),[]),Sl=Ma&&Ma!=="-"&&Xr.length>0,vn=g("dashboard.install.cmd.init"),Ca=Tt?null:N,Da=Ca?g("dashboard.install.cmd.init_link_code",{link_code:Ca}):vn,Ml=vn,Cl=g("dashboard.install.cmd.sync"),Dl=Ca?g("dashboard.install.copy"):g("dashboard.install.copy_base"),Tl=g("dashboard.install.copied");g("dashboard.session_expired.copy_label"),g("dashboard.session_expired.copied");const Pl=!!(D?.install?.has_active_device_token??D?.install?.hasActiveDeviceToken),Ol=qd({publicMode:s,screenshotMode:P,forceInstall:E,accessEnabled:te,heatmapLoading:Fr,activeDays:_a,hasActiveDeviceToken:Pl}),El=g("dashboard.install.prompt"),Al=h.useCallback(async()=>{!Da||!await ao(Da)||(de(!0),window.setTimeout(()=>de(!1),2e3))},[Da]);h.useCallback(async()=>{!vn||!await ao(vn)||(fe(!0),window.setTimeout(()=>fe(!1),2e3))},[vn]);const Ta=h.useMemo(()=>g("dashboard.daily.empty",{cmd:"{{cmd}}"}),[u]),[Wl,$l]=h.useMemo(()=>{const C=Ta.split("{{cmd}}");return C.length===1?[Ta,""]:[C[0],C.slice(1).join("{{cmd}}")]},[Ta]),Pa=a&&!s,Oa=!n&&!J&&!a&&!Ae&&!s,Gn=xd(Ap,Wp);return h.useEffect(()=>{q.current||Pa||Oa||Vn||(q.current=!0,d?.())},[d,Oa,Pa,Vn]),r.jsxs(r.Fragment,{children:[r.jsx(Hy,{copy:g,onOpenShare:vl,screenshotMode:P,showExpiredGate:Pa,showAuthGate:Oa,identityDisplayName:Gr,identityStartDate:Kr,activeDays:_a,identitySubscriptions:sl,identityScrambleDurationMs:z,projectUsageEntries:Oi,projectUsageLimit:_t,setProjectUsageLimit:kn,projectDetailQuery:{from:V,to:ee,timeZone:Te,tzOffsetMinutes:Pe},topModels:Qr,signedIn:n,publicMode:s,isLocalMode:Ae,shouldShowInstall:Ol,installPrompt:El,handleCopyInstall:Al,installCopied:ce,installCopiedLabel:Tl,installCopyLabel:Dl,installInitCmdDisplay:Ml,linkCodeLoading:T,linkCodeError:M,trendRowsForDisplay:zi,trendFromForDisplay:Yi,trendToForDisplay:Hi,trendZoomConfig:Fi,usageFrom:V,usageTo:ee,period:I,trendTimeZoneLabel:pa,activityHeatmapBlock:il,periodsForDisplay:xl,setSelectedPeriod:Zi,customFrom:Ze,customTo:it,onCustomRangeApply:el,customRangeOpen:Yt,onCustomRangeOpenChange:tl,metricsRows:bl,summaryLabel:cl,summaryValue:dl,hasSummary:Ue,summaryLoading:Ln,providersLoading:$e,summaryFullValue:Sa,onToggleSummaryFormat:ul,summaryTotalTokensRaw:_e(Zt)||0,summaryCostValue:Ma,summaryConversationsValue:kl,rollingUsage:xa,costInfoEnabled:Sl,openCostModal:Nl,allowBreakdownToggle:yl,coreIndexCollapsed:U,setCoreIndexCollapsed:se,coreIndexCollapseLabel:fl,coreIndexExpandLabel:ml,coreIndexCollapseAria:hl,coreIndexExpandAria:gl,refreshAll:nl,usageLoadingState:Vn,initialDashboardLoading:al,usageError:ba,rangeLabel:ll,timeZoneRangeLabel:$n,usageSourceLabel:rl,fleetData:Xr,hasDetailsActual:Br,dailyEmptyPrefix:Wl,installSyncCmd:Cl,dailyEmptySuffix:$l,detailsColumns:Ii,ariaSortFor:Ki,toggleSort:Gi,sortIconFor:Xi,pagedDetails:Ri,dailyBreakdownRows:Bi,dailyBreakdownColumns:Li,dailyBreakdownAriaSortFor:Qi,dailyBreakdownSortIconFor:Ji,dailyBreakdownDateKey:Yn,detailsDateKey:at,renderDetailDate:Vi,renderDailyBreakdownDate:qi,renderDetailCell:Ui,DETAILS_PAGED_PERIODS:Nn,detailsPageCount:wa,detailsPage:va,setDetailsPage:Un,costModalOpen:w,closeCostModal:jl,deviceOptions:ya,selectedDevice:ke||"",onDeviceChange:C=>re(C||null),deviceUsageBlock:An,leftCardOrder:Gn.left.order,onLeftReorder:Gn.left.reorder,rightCardOrder:Gn.right.order,onRightReorder:Gn.right.reorder}),r.jsx(Pp,{open:B,onClose:_l,data:wl,twitterText:pl})]})}export{ix as DashboardPage};
|