tokentracker-cli 0.29.2 → 0.30.0
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/ActivityHeatmap-BzW0rtoR.js +42 -0
- package/dashboard/dist/assets/{Card-DSgpCS30.js → Card-wgEcKm5u.js} +1 -1
- package/dashboard/dist/assets/DashboardPage-BH_InuuJ.js +19 -0
- package/dashboard/dist/assets/{DevicePage-CvrCNfjD.js → DevicePage-D82cqG-v.js} +1 -1
- package/dashboard/dist/assets/DialogTitle-QumMNQjm.js +12 -0
- package/dashboard/dist/assets/{FadeIn-D1-QPLIW.js → FadeIn-B2rj5E5l.js} +1 -1
- package/dashboard/dist/assets/{HeaderGithubStar-B98VaHbR.js → HeaderGithubStar-CSBGOKw2.js} +1 -1
- package/dashboard/dist/assets/{IpCheckPage-CJxv_Sd8.js → IpCheckPage-WXEmhuVW.js} +1 -1
- package/dashboard/dist/assets/LandingPage-ap4xIJva.js +4356 -0
- package/dashboard/dist/assets/{LeaderboardAvatar-D6qRteef.js → LeaderboardAvatar-CjaHOh8E.js} +1 -1
- package/dashboard/dist/assets/{LeaderboardPage-CgtoFmMi.js → LeaderboardPage-DN4Sd56j.js} +3 -3
- package/dashboard/dist/assets/{LeaderboardProfileModal-OTLhvzV6.js → LeaderboardProfileModal-BX4b5Uqc.js} +3 -3
- package/dashboard/dist/assets/LeaderboardProfilePage-hkIYzooc.js +1 -0
- package/dashboard/dist/assets/{LimitsPage-pyyJbh3F.js → LimitsPage-BgoAXuwU.js} +2 -2
- package/dashboard/dist/assets/{LocalOnlyNotice-3LPVUJ2h.js → LocalOnlyNotice-D43ZmQJl.js} +1 -1
- package/dashboard/dist/assets/LoginPage-gqSOnPUr.js +1 -0
- package/dashboard/dist/assets/PopoverPopup-BkMR2-Ij.js +1 -0
- package/dashboard/dist/assets/{ProviderIcon-XOgnf2pw.js → ProviderIcon-No-nxvR1.js} +1 -1
- package/dashboard/dist/assets/SettingsPage-BVpnWPq9.js +1 -0
- package/dashboard/dist/assets/SkillsPage-DnIxIt1d.js +1 -0
- package/dashboard/dist/assets/{WidgetsPage-BU7ejAYd.js → WidgetsPage-DY7qT8jg.js} +1 -1
- package/dashboard/dist/assets/WrappedPage-BTkoEQPM.js +1 -0
- package/dashboard/dist/assets/agent-logos-Dp5LiRgu.js +1 -0
- package/dashboard/dist/assets/{arrow-up-right-CBzDSqD7.js → arrow-up-right-BXWeIpuU.js} +1 -1
- package/dashboard/dist/assets/check-B_JRaxbD.js +1 -0
- package/dashboard/dist/assets/{chevron-down--Hb5e71i.js → chevron-down-u-JNpncG.js} +1 -1
- package/dashboard/dist/assets/{download-BaVXaxbw.js → download-DvfHniid.js} +1 -1
- package/dashboard/dist/assets/{info-WGRGGnfx.js → info-BdrJIus6.js} +1 -1
- package/dashboard/dist/assets/main-BojOq9Ae.css +1 -0
- package/dashboard/dist/assets/{main-DDTfmaoo.js → main-DhcQGvkP.js} +80 -17
- package/dashboard/dist/assets/{use-limits-display-prefs-C1AkRZcO.js → use-limits-display-prefs-DU4WDeXF.js} +1 -1
- package/dashboard/dist/assets/{use-native-settings-DdooJHwm.js → use-native-settings-CefuRE0t.js} +1 -1
- package/dashboard/dist/assets/{use-reduced-motion-wvh7iFTi.js → use-reduced-motion-nzFM1j1r.js} +1 -1
- package/dashboard/dist/assets/{use-usage-limits-D1mepldk.js → use-usage-limits-BvZsTD3e.js} +1 -1
- package/dashboard/dist/assets/{useCurrency-C3szwbkj.js → useCurrency-C62kk8HZ.js} +1 -1
- package/dashboard/dist/dashboard-dark.png +0 -0
- package/dashboard/dist/index.html +2 -2
- package/dashboard/dist/share.html +2 -2
- package/package.json +1 -1
- package/src/lib/pricing/seed-snapshot.json +1 -1
- package/dashboard/dist/assets/ActivityHeatmap-C7-tnMYf.js +0 -42
- package/dashboard/dist/assets/DashboardPage-CB6VzM2W.js +0 -1
- package/dashboard/dist/assets/DialogTitle-B-afswln.js +0 -12
- package/dashboard/dist/assets/LandingPage-CIOqWNDm.js +0 -4356
- package/dashboard/dist/assets/LeaderboardProfilePage-C7OaZcf2.js +0 -1
- package/dashboard/dist/assets/LoginPage-CDLz8PnP.js +0 -1
- package/dashboard/dist/assets/PopoverPopup-97Rik7mb.js +0 -1
- package/dashboard/dist/assets/SettingsPage-KVjKUepK.js +0 -1
- package/dashboard/dist/assets/SkillsPage-DyIY1U9O.js +0 -1
- package/dashboard/dist/assets/WrappedPage-Cp8uyLbu.js +0 -1
- package/dashboard/dist/assets/check-Bsgzg2T8.js +0 -1
- package/dashboard/dist/assets/main-ClqhPPd3.css +0 -1
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{c as Ci,i as Ti,f as eo,a as to,J as Oi,u as no,m as Ai,r as m,M as ro,b as Ei,d as Fi,e as Rn,g as Wi,h as vt,j as Lt,k as wt,l as Ii,n as oa,o as hn,p as pr,q as _n,s as Pi,t as Li,v as Bi,w as br,x as Wt,y as $n,z as Ri,A as Se,B as y,C as s,L as $i,D as be,R as F,X as Yi,E as Nn,F as Sn,G as Te,H as ao,I as kn,K as Hi,N as oo,O as so,P as xr,Q as Ui,S as io,T as zi,U as lo,_ as co,V as dr,W as qi,Y as Vi,Z as Gi,$ as Ki,a0 as Xi,a1 as Qi,a2 as Ji,a3 as Zi,a4 as el,a5 as tl,a6 as Qe,a7 as sa}from"./main-DDTfmaoo.js";import{u as nl}from"./use-usage-limits-D1mepldk.js";import{u as Mn}from"./useCurrency-C3szwbkj.js";import{A as rl}from"./ActivityHeatmap-C7-tnMYf.js";import{u as al,a as ol,c as sl,b as il,D as ll,d as cl,e as dl,f as ul,g as fl,h as ml}from"./DialogTitle-B-afswln.js";import{u as hl,C as gl,P as yl,a as pl,b as bl,c as xl,d as kl,L as wl}from"./PopoverPopup-97Rik7mb.js";import{C as kr}from"./Card-DSgpCS30.js";import{u as wr}from"./use-reduced-motion-wvh7iFTi.js";import{P as uo}from"./ProviderIcon-XOgnf2pw.js";import{I as fo}from"./info-WGRGGnfx.js";import{F as Ot}from"./FadeIn-D1-QPLIW.js";const vl=[["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"}]],_l=Ci("square-arrow-out-up-right",vl);function Nl(...e){const t=!Array.isArray(e[0]),n=t?0:-1,r=e[0+n],a=e[1+n],o=e[2+n],l=e[3+n],i=Ti(a,o,l);return t?i(r):i}function Sl(e,t,n={}){const r=e.get();let a=null,o=r,l;const i=typeof r=="string"?r.replace(/[\d.-]/g,""):void 0,c=()=>{a&&(a.stop(),a=null),e.animation=void 0},d=()=>{const f=ia(e.get()),h=ia(o);if(f===h){c();return}const g=a?a.getGeneratorVelocity():e.getVelocity();c(),a=new Oi({keyframes:[f,h],velocity:g,type:"spring",restDelta:.001,restSpeed:.01,...n,onUpdate:l})},u=()=>{d(),e.animation=a??void 0,e.events.animationStart?.notify(),a?.then(()=>{e.animation=void 0,e.events.animationComplete?.notify()})};if(e.attach((f,h)=>{o=f,l=g=>h(Yn(g,i)),eo.postRender(u)},c),to(t)){let f=n.skipInitialAnimation===!0;const h=t.on("change",b=>{f?(f=!1,e.jump(Yn(b,i),!1)):e.set(Yn(b,i))}),g=e.on("destroy",h);return()=>{h(),g()}}return c}function Yn(e,t){return t?e+t:e}function ia(e){return typeof e=="number"?e:parseFloat(e)}function vr(e){const t=no(()=>Ai(e)),{isStatic:n}=m.useContext(ro);if(n){const[,r]=m.useState(e);m.useEffect(()=>t.on("change",r),[])}return t}function mo(e,t){const n=vr(t()),r=()=>n.set(t());return r(),Ei(()=>{const a=()=>eo.preRender(r,!1,!0),o=e.map(l=>l.on("change",a));return()=>{o.forEach(l=>l()),Fi(r)}}),n}function Ml(e){Rn.current=[],e();const t=mo(Rn.current,e);return Rn.current=void 0,t}function ho(e,t,n,r){if(typeof e=="function")return Ml(e);const o=typeof t=="function"?t:Nl(t,n,r),l=Array.isArray(e)?la(e,o):la([e],([c])=>o(c)),i=Array.isArray(e)?void 0:e.accelerate;return i&&!i.isTransformed&&typeof t!="function"&&Array.isArray(n)&&r?.clamp!==!1&&(l.accelerate={...i,times:t,keyframes:n,isTransformed:!0}),l}function la(e,t){const n=no(()=>[]);return mo(e,()=>{n.length=0;const r=e.length;for(let a=0;a<r;a++)n[a]=e[a].get();return t(n)})}function jl(e,t={}){const{isStatic:n}=m.useContext(ro),r=()=>to(e)?e.get():e;if(n)return ho(r);const a=vr(r());return m.useInsertionEffect(()=>Sl(a,e,t),[a,JSON.stringify(t)]),a}function Dl(e,t={}){return jl(e,{type:"spring",...t})}function Cl({baseUrl:e,accessToken:t,guestAllowed:n=!1,weeks:r=52,weekStartsOn:a="sun",cacheKey:o,timeZone:l,tzOffsetMinutes:i,now:c}={}){const d=m.useMemo(()=>Wi({weeks:r,weekStartsOn:a,now:c}),[c,r,a]),[u,f]=m.useState([]),[h,g]=m.useState(null),[b,p]=m.useState("edge"),[k,v]=m.useState(!1),[x,_]=m.useState(null),D=vt(),N=Lt(t),w=!n,T=typeof window<"u"&&(window.location.hostname==="localhost"||window.location.hostname==="127.0.0.1"),S=m.useMemo(()=>{if(!o)return null;const P=_n({timeZone:l,offsetMinutes:i});return`tokentracker.heatmap.${o}.${r}.${a}.${P}`},[o,l,i,r,a]),O=m.useCallback(()=>{if(!S||typeof window>"u")return null;try{const P=window.localStorage.getItem(S);if(!P)return null;const C=JSON.parse(P);return!C||!C.heatmap?null:C}catch{return null}},[S]),E=m.useCallback(P=>{if(!(!S||typeof window>"u"))try{window.localStorage.setItem(S,JSON.stringify(P))}catch{}},[S]),A=m.useCallback(()=>{if(!(!S||typeof window>"u"))try{window.localStorage.removeItem(S)}catch{}},[S]),K=m.useCallback(async()=>{const P=await wt(t);if(!(!P&&!D&&!T)){v(!0),_(null);try{try{const L=await Ii({baseUrl:e,accessToken:P,weeks:r,to:d.to,weekStartsOn:a,timeZone:l,tzOffsetMinutes:i}),W=Array.isArray(L?.weeks)?L.weeks:[];if(!W.length&&w){const V=O();if(V?.heatmap){g(V.heatmap),f(V.daily||[]),p("cache");return}}if(!W.some(V=>(Array.isArray(V)?V:[]).some(se=>se&&Number.isFinite(Number(se.level))))&&W.length){const V=[];for(const z of W)for(const G of Array.isArray(z)?z:[])G?.day&&V.push({day:G.day,total_tokens:G.total_tokens??G.value??0,billable_total_tokens:G.billable_total_tokens??G.value??G.total_tokens??0});const se=oa({dailyRows:V,weeks:r,to:L?.to||d.to,weekStartsOn:a});f(V),g({...se,week_starts_on:a,active_days:V.filter(z=>Number(z?.billable_total_tokens??z?.total_tokens)>0).length,streak_days:hn({dailyRows:V,to:L?.to||d.to})}),p("client"),w?E({heatmap:{...se,week_starts_on:a,active_days:V.filter(z=>Number(z?.billable_total_tokens??z?.total_tokens)>0).length,streak_days:hn({dailyRows:V,to:L?.to||d.to})},daily:V,fetchedAt:new Date().toISOString()}):A();return}g(L||null),f([]),p("edge"),L&&w?E({heatmap:L,daily:[],fetchedAt:new Date().toISOString()}):w||A();return}catch(L){const W=L,Y=W?.status??W?.statusCode;if(Y===401||Y===403)throw L}const C=await pr({baseUrl:e,accessToken:P,from:d.from,to:d.to,timeZone:l,tzOffsetMinutes:i}),j=Array.isArray(C?.data)?C.data:[];f(j);const H=oa({dailyRows:j,weeks:r,to:d.to,weekStartsOn:a});g({...H,week_starts_on:a,active_days:j.filter(L=>Number(L?.billable_total_tokens??L?.total_tokens)>0).length,streak_days:hn({dailyRows:j,to:d.to})}),p("client"),w?E({heatmap:{...H,week_starts_on:a,active_days:j.filter(L=>Number(L?.billable_total_tokens??L?.total_tokens)>0).length,streak_days:hn({dailyRows:j,to:d.to})},daily:j,fetchedAt:new Date().toISOString()}):A()}catch(C){if(w){const j=O();if(j?.heatmap)g(j.heatmap),f(j.daily||[]),p("cache"),_(null);else{const H=C;_(H?.message||String(H)),f([]),g(null),p("edge")}}else{const j=C;_(j?.message||String(j)),f([]),g(null),p("edge")}}finally{v(!1)}}},[t,e,D,n,w,d.from,d.to,O,N,l,i,a,r,A,E,T]);return m.useEffect(()=>{if(!N&&!n&&!D&&!T){f([]),v(!1),_(null),g(null),p("edge");return}if(!w)A(),f([]),_(null),g(null),p("edge");else{const P=O();P?.heatmap&&(g(P.heatmap),f(P.daily||[]),p("cache"))}K()},[t,D,O,K,N,n,w,A,T]),{range:d,daily:u,heatmap:h,source:D?"mock":b==="client"?"edge":b,loading:k,error:x,refresh:K}}function Tl({baseUrl:e,accessToken:t,limit:n=3,from:r,to:a,source:o,timeZone:l,tzOffsetMinutes:i}={}){const[c,d]=m.useState([]),[u,f]=m.useState(!1),[h,g]=m.useState(null),b=vt(),p=Lt(t),k=typeof window<"u"&&(window.location.hostname==="localhost"||window.location.hostname==="127.0.0.1"),v=m.useCallback(async()=>{const x=await wt(t);if(!x&&!b&&!k){d([]),g(null),f(!1);return}f(!0),g(null);try{const _=await Pi({baseUrl:e,accessToken:x,limit:n,from:r,to:a,source:o,timeZone:l,tzOffsetMinutes:i});d(Array.isArray(_?.entries)?_.entries:[])}catch(_){const D=_?.message||String(_);g(D),d([])}finally{f(!1)}},[t,e,r,n,b,o,l,a,i,k]);return m.useEffect(()=>{if(!p&&!b&&!k){d([]),g(null),f(!1);return}v()},[b,v,p,k]),{entries:c,loading:u,error:h,refresh:v}}const Ol=24;function Al({baseUrl:e,accessToken:t,guestAllowed:n=!1,period:r,from:a,to:o,months:l=Ol,cacheKey:i,timeZone:c,tzOffsetMinutes:d,now:u,sharedRows:f,sharedRange:h}={}){const[g,b]=m.useState([]),[p,k]=m.useState(()=>({from:a,to:o})),[v,x]=m.useState("edge"),[_,D]=m.useState(null),[N,w]=m.useState(!1),[T,S]=m.useState(null),O=vt(),E=Lt(t),A=!n&&!O,K=Array.isArray(f),I=h?.from||a,P=h?.to||o,C=m.useMemo(()=>r==="day"?"hourly":r==="total"?"monthly":"daily",[r]),j=(()=>{if(!i)return null;const z=El(e)||"default",G=_n({timeZone:c,offsetMinutes:d});if(C==="hourly")return`tokentracker.trend.${i}.${z}.hourly.${o||a||"day"}.${G}`;if(C==="monthly")return`tokentracker.trend.${i}.${z}.monthly.${l}.${o||"today"}.${G}`;const J=`${a||""}.${o||""}`;return`tokentracker.trend.${i}.${z}.daily.${J}.${G}`})(),H=m.useCallback(()=>{if(!j||typeof window>"u")return null;try{const z=window.localStorage.getItem(j);if(!z)return null;const G=JSON.parse(z);return!G||!Array.isArray(G.rows)?null:G}catch{return null}},[j]),L=m.useCallback(z=>{if(!(!j||typeof window>"u"))try{window.localStorage.setItem(j,JSON.stringify(z))}catch{}},[j]),W=m.useCallback(()=>{if(!(!j||typeof window>"u"))try{window.localStorage.removeItem(j)}catch{}},[j]),Y=typeof window<"u"&&(window.location.hostname==="localhost"||window.location.hostname==="127.0.0.1"),V=m.useCallback(async()=>{if(K){b(Array.isArray(f)?f:[]),k({from:I,to:P}),x("shared"),D(null),w(!1),S(null);return}const z=await wt(t);if(!(!z&&!O&&!Y)){w(!0),S(null);try{let G;C==="hourly"?G=await Li({baseUrl:e,accessToken:z,day:o||a,timeZone:c,tzOffsetMinutes:d}):C==="monthly"?G=await Bi({baseUrl:e,accessToken:z,months:l,to:o,timeZone:c,tzOffsetMinutes:d}):G=await pr({baseUrl:e,accessToken:z,from:a,to:o,timeZone:c,tzOffsetMinutes:d});const J=G?.from||a||G?.day||null,ae=G?.to||o||G?.day||null;let ce=Array.isArray(G?.data)?G.data:[];C==="daily"?ce=Un(ce,J||a,ae||o,{timeZone:c,offsetMinutes:d,now:u}):C==="hourly"?(ce=zn(ce,J||a||G?.day,{timeZone:c,offsetMinutes:d,now:u}),ce=qn(ce,{timeZone:c,offsetMinutes:d,now:u})):C==="monthly"&&(ce=Vn(ce,{timeZone:c,offsetMinutes:d,now:u}));const qe=new Date().toISOString();b(ce),k({from:J,to:ae}),x("edge"),D(qe),A?L({rows:ce,from:J,to:ae,mode:C,fetchedAt:qe}):W()}catch(G){if(A){const J=H();if(J?.rows){let ae=C==="daily"?Un(J.rows||[],J.from||a,J.to||o,{timeZone:c,offsetMinutes:d,now:u}):C==="hourly"?zn(J.rows||[],J.from||a||J.day||o,{timeZone:c,offsetMinutes:d,now:u}):Array.isArray(J.rows)?J.rows:[];C==="hourly"?ae=qn(ae,{timeZone:c,offsetMinutes:d,now:u}):C==="monthly"&&(ae=Vn(ae,{timeZone:c,offsetMinutes:d,now:u})),b(ae),k({from:J.from||a,to:J.to||o}),x("cache"),D(J.fetchedAt||null),S(null)}else{b([]),k({from:a,to:o}),x("edge"),D(null);const ae=G;S(ae?.message||String(ae))}}else{b([]),k({from:a,to:o}),x("edge"),D(null);const J=G;S(J?.message||String(J))}}finally{w(!1)}}},[t,e,a,O,n,A,C,l,H,E,K,I,f,P,c,o,d,u,W,L,Y]);m.useEffect(()=>{if(K){b(Array.isArray(f)?f:[]),k({from:I,to:P}),x("shared"),D(null),w(!1),S(null);return}if(!E&&!n&&!O&&!Y){b([]),k({from:a,to:o}),S(null),w(!1),x("edge"),D(null);return}if(!A)W(),b([]),k({from:a,to:o}),S(null),x("edge"),D(null);else{const z=H();if(z?.rows){let G=C==="daily"?Un(z.rows||[],z.from||a,z.to||o,{timeZone:c,offsetMinutes:d,now:u}):C==="hourly"?zn(z.rows||[],z.from||a||z.day||o,{timeZone:c,offsetMinutes:d,now:u}):Array.isArray(z.rows)?z.rows:[];C==="hourly"?G=qn(G,{timeZone:c,offsetMinutes:d,now:u}):C==="monthly"&&(G=Vn(G,{timeZone:c,offsetMinutes:d,now:u})),b(G),k({from:z.from||a,to:z.to||o}),x("cache"),D(z.fetchedAt||null)}}V()},[t,O,H,V,K,I,f,P,E,n,A,W,Y]);const se=O?"mock":v;return{rows:g,from:p.from||a,to:p.to||o,source:se,fetchedAt:_,loading:N,error:T,refresh:V}}function El(e){try{return new URL(e).host}catch{return null}}function Hn(e){if(!e)return null;const t=String(e).trim(),n=t.split("-");if(n.length!==3)return null;const r=Number(n[0]),a=Number(n[1])-1,o=Number(n[2]);if(!Number.isFinite(r)||!Number.isFinite(a)||!Number.isFinite(o))return null;const l=new Date(Date.UTC(r,a,o));return Number.isFinite(l.getTime())&&Wt(l)===t?l:null}function Fl(e,t){return new Date(Date.UTC(e.getUTCFullYear(),e.getUTCMonth(),e.getUTCDate()+t))}function Un(e,t,n,{timeZone:r,offsetMinutes:a,now:o}={}){const l=Hn(t),i=Hn(n);if(!l||!i||i<l)return Array.isArray(e)?e:[];const c=o instanceof Date&&Number.isFinite(o.getTime())?o:new Date,d=br({timeZone:r,offsetMinutes:a,date:c}),u=Hn(d),f=u?u.getTime():c.getTime(),h=new Map;for(const b of e||[])b?.day&&h.set(b.day,b);const g=[];for(let b=l;b<=i;b=Fl(b,1)){const p=Wt(b),k=h.get(p),v=b.getTime()>f;if(k){g.push({...k,missing:!1,future:v});continue}g.push({day:p,total_tokens:null,billable_total_tokens:null,input_tokens:null,cached_input_tokens:null,output_tokens:null,reasoning_output_tokens:null,missing:!v,future:v})}return g}function zn(e,t,{timeZone:n,offsetMinutes:r,now:a}={}){if(!t)return Array.isArray(e)?e:[];const o=t.trim().slice(0,10),l=_r({timeZone:n,offsetMinutes:r,now:a}),i=l?l.dayNum:void 0;let c=!1;for(const g of e||[]){const b=g?.hour||g?.label||"",p=ur(b,i);if(p&&p.slot%2!==0){c=!0;break}}const d=c?30:60,u=c?48:24,f=new Map;for(const g of e||[]){const b=g?.hour||g?.label||"",p=ur(b,i);p&&f.set(p.slot,g)}const h=[];l&&`${l.year}${String(l.month).padStart(2,"0")}${String(l.day).padStart(2,"0")}`;for(let g=0;g<u;g++){const b=c?g:g*2,p=f.get(b),k=Math.floor(g*d/60),v=g*d%60,x=String(k).padStart(2,"0"),_=String(v).padStart(2,"0"),D=`${o}T${x}:${_}:00`;let N=!1;if(l){const w=l.year*1e4+l.month*100+l.day,T=Number(o.replace(/-/g,""));if(T>w)N=!0;else if(T===w){const S=l.hour*2+(l.minute>=30?1:0);N=b>S}}p?h.push({...p,hour:D,missing:!1,future:N}):h.push({hour:D,total_tokens:null,billable_total_tokens:null,input_tokens:null,cached_input_tokens:null,output_tokens:null,reasoning_output_tokens:null,missing:!N,future:N})}return h}function qn(e,{timeZone:t,offsetMinutes:n,now:r}={}){if(!Array.isArray(e))return[];const a=_r({timeZone:t,offsetMinutes:n,now:r});return a?e.map(o=>{const l=o?.hour||o?.label||"",i=ur(l,a.dayNum);if(!i)return{...o,future:!1};const c=i.dayNum!==null&&i.dayNum>a.dayNum||(i.dayNum===null||i.dayNum===a.dayNum)&&i.slot>a.slot;return{...o,future:!!c}}):e}function Vn(e,{timeZone:t,offsetMinutes:n,now:r}={}){if(!Array.isArray(e))return[];const a=_r({timeZone:t,offsetMinutes:n,now:r});return a?e.map(o=>{const l=o?.month||o?.label||"",i=Wl(l);if(!i)return{...o,future:!1};const c=i.year>a.year||i.year===a.year&&i.month>a.month;return{...o,future:c}}):e}function _r({timeZone:e,offsetMinutes:t,now:n}={}){const r=n instanceof Date&&Number.isFinite(n.getTime())?n:new Date;if(e&&typeof Intl<"u"&&Intl.DateTimeFormat)try{const h=new Intl.DateTimeFormat("en-CA",{timeZone:e,year:"numeric",month:"2-digit",day:"2-digit",hour:"2-digit",minute:"2-digit",hourCycle:"h23"}).formatToParts(r).reduce((x,_)=>(_.type&&_.value&&(x[_.type]=_.value),x),{}),g=Number(h.year),b=Number(h.month),p=Number(h.day),k=Number(h.hour),v=Number(h.minute);if(Number.isFinite(g)&&Number.isFinite(b)&&Number.isFinite(p)&&Number.isFinite(k)&&Number.isFinite(v)){const x=k*2+(v>=30?1:0);return{year:g,month:b,day:p,hour:k,minute:v,dayNum:g*1e4+b*100+p,slot:x}}}catch{}if(Number.isFinite(t)){const u=new Date(r.getTime()+t*60*1e3),f=u.getUTCFullYear(),h=u.getUTCMonth()+1,g=u.getUTCDate(),b=u.getUTCHours(),p=u.getUTCMinutes(),k=b*2+(p>=30?1:0);return{year:f,month:h,day:g,hour:b,minute:p,dayNum:f*1e4+h*100+g,slot:k}}const a=r.getFullYear(),o=r.getMonth()+1,l=r.getDate(),i=r.getHours(),c=r.getMinutes(),d=i*2+(c>=30?1:0);return{year:a,month:o,day:l,hour:i,minute:c,dayNum:a*1e4+o*100+l,slot:d}}function ur(e,t){if(!e)return null;const n=String(e).trim();if(n.includes("T")){const[r,a]=n.split("T");if(!r||!a)return null;const o=r.split("-");if(o.length!==3)return null;const l=Number(o[0]),i=Number(o[1]),c=Number(o[2]);if(!Number.isFinite(l)||!Number.isFinite(i)||!Number.isFinite(c))return null;const d=a.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 h=u*2+(f>=30?1:0);return{dayNum:l*1e4+i*100+c,slot:h}}else{let r=NaN,a=0;if(/^\d{1,2}$/.test(n))r=Number(n);else if(/^\d{1,2}:\d{2}(:\d{2})?$/.test(n)){const l=n.split(":");r=Number(l[0]),a=Number(l[1])}if(!Number.isFinite(r)||r<0||r>23||!Number.isFinite(a)||a<0||a>59)return null;const o=r*2+(a>=30?1:0);return{dayNum:t||null,slot:o}}}function Wl(e){if(!e)return null;const n=String(e).trim().split("-");if(n.length!==2)return null;const r=Number(n[0]),a=Number(n[1]);return!Number.isFinite(r)||!Number.isFinite(a)||a<1||a>12?null:{year:r,month:a}}function ca({baseUrl:e,accessToken:t,guestAllowed:n=!1,from:r,to:a,includeDaily:o=!0,cacheKey:l,timeZone:i,tzOffsetMinutes:c,now:d}={}){const[u,f]=m.useState([]),[h,g]=m.useState(null),[b,p]=m.useState(null),[k,v]=m.useState("edge"),[x,_]=m.useState(null),[D,N]=m.useState(!1),[w,T]=m.useState(null),S=vt(),O=Lt(t),E=!n&&!S,A=(()=>{if(!l)return null;const L=Il(e)||"default",W=o?"daily":"summary",Y=_n({timeZone:i,offsetMinutes:c});return`tokentracker.usage.${l}.${L}.${r}.${a}.${W}.${Y}`})(),K=m.useCallback(()=>{if(!A||typeof window>"u")return null;try{const L=window.localStorage.getItem(A);if(!L)return null;const W=JSON.parse(L);return!W||!W.summary?null:W}catch{return null}},[A]),I=m.useCallback(L=>{if(!(!A||typeof window>"u"))try{window.localStorage.setItem(A,JSON.stringify(L))}catch{}},[A]),P=m.useCallback(()=>{if(!(!A||typeof window>"u"))try{window.localStorage.removeItem(A)}catch{}},[A]),C=typeof window<"u"&&(window.location.hostname==="localhost"||window.location.hostname==="127.0.0.1"),j=m.useCallback(async()=>{const L=await wt(t);if(!(!L&&!S&&!C)){N(!0),T(null);try{let W=null,Y=null;if(o){const[J,ae]=await Promise.allSettled([pr({baseUrl:e,accessToken:L,from:r,to:a,timeZone:i,tzOffsetMinutes:c}),$n({baseUrl:e,accessToken:L,from:r,to:a,timeZone:i,tzOffsetMinutes:c,rolling:!0})]);if(J.status==="rejected")throw J.reason;W=J.value,Y=ae.status==="fulfilled"?ae.value:null}else Y=await $n({baseUrl:e,accessToken:L,from:r,to:a,timeZone:i,tzOffsetMinutes:c,rolling:!0});let V=o&&Array.isArray(W?.data)?W.data:[];o&&(V=Kn(V,r,a,{timeZone:i,offsetMinutes:c,now:d}));let se=Y?.totals||W?.summary?.totals||null,z=Y?.rolling||W?.summary?.rolling||null;if(o&&!se&&!Y)try{const J=await $n({baseUrl:e,accessToken:L,from:r,to:a,timeZone:i,tzOffsetMinutes:c,rolling:!0});se=J?.totals||null,z=J?.rolling||z}catch{}const G=new Date().toISOString();f(V),g(se),p(z),v("edge"),_(G),se&&E?I({summary:se,rolling:z,daily:V,from:r,to:a,includeDaily:o,fetchedAt:G}):E||P()}catch(W){if(E){const Y=K();if(Y?.summary){g(Y.summary),p(Y.rolling||null);const V=Array.isArray(Y.daily)?Y.daily:[],se=o?Kn(V,Y.from||r,Y.to||a,{timeZone:i,offsetMinutes:c,now:d}):V;f(se),v("cache"),_(Y.fetchedAt||null),T(null)}else{const V=W;T(V?.message||String(V)),f([]),g(null),p(null),v("edge"),_(null)}}else{const Y=W;T(Y?.message||String(Y)),f([]),g(null),p(null),v("edge"),_(null)}}finally{N(!1)}}},[t,e,r,o,S,n,E,d,K,O,i,a,c,P,I,C]);return m.useEffect(()=>{const L=typeof window<"u"&&(window.location.hostname==="localhost"||window.location.hostname==="127.0.0.1");if(!O&&!n&&!S&&!L){f([]),g(null),p(null),T(null),N(!1),v("edge"),_(null);return}if(!E)P(),f([]),g(null),p(null),T(null),v("edge"),_(null);else{const W=K();if(W?.summary){g(W.summary),p(W.rolling||null);const Y=Array.isArray(W.daily)?W.daily:[],V=o?Kn(Y,W.from||r,W.to||a,{timeZone:i,offsetMinutes:c,now:d}):Y;f(V),v("cache"),_(W.fetchedAt||null)}}j()},[t,S,K,j,O,n,E,P,C]),{daily:u,summary:h,rolling:b,source:S?"mock":k,fetchedAt:x,loading:D,error:w,refresh:j}}function Il(e){try{return new URL(e).host}catch{return null}}function Gn(e){if(!e)return null;const t=String(e).trim(),n=t.split("-");if(n.length!==3)return null;const r=Number(n[0]),a=Number(n[1])-1,o=Number(n[2]);if(!Number.isFinite(r)||!Number.isFinite(a)||!Number.isFinite(o))return null;const l=new Date(Date.UTC(r,a,o));return Number.isFinite(l.getTime())&&Wt(l)===t?l:null}function Pl(e,t){return new Date(Date.UTC(e.getUTCFullYear(),e.getUTCMonth(),e.getUTCDate()+t))}function Kn(e,t,n,{timeZone:r,offsetMinutes:a,now:o}={}){const l=Gn(t),i=Gn(n);if(!l||!i||i<l)return Array.isArray(e)?e:[];const c=o instanceof Date&&Number.isFinite(o.getTime())?o:new Date,d=br({timeZone:r,offsetMinutes:a,date:c}),u=Gn(d),f=u?u.getTime():c.getTime(),h=new Map;for(const b of e||[])b?.day&&h.set(b.day,b);const g=[];for(let b=l;b<=i;b=Pl(b,1)){const p=Wt(b),k=h.get(p),v=b.getTime()>f;if(k){g.push({...k,missing:!1,future:v});continue}g.push({day:p,total_tokens:null,billable_total_tokens:null,input_tokens:null,cached_input_tokens:null,output_tokens:null,reasoning_output_tokens:null,missing:!v,future:v})}return g}function Ll({baseUrl:e,accessToken:t,guestAllowed:n=!1,from:r,to:a,cacheKey:o,timeZone:l,tzOffsetMinutes:i}={}){const[c,d]=m.useState(null),[u,f]=m.useState("edge"),[h,g]=m.useState(!1),[b,p]=m.useState(null),k=vt(),v=Lt(t),x=!n,_=m.useMemo(()=>{if(!o)return null;const E=Bl(e)||"default",A=_n({timeZone:l,offsetMinutes:i});return`tokentracker.modelBreakdown.${o}.${E}.${r}.${a}.${A}`},[e,o,r,l,a,i]),D=m.useCallback(()=>{if(!_||typeof window>"u")return null;try{const E=window.localStorage.getItem(_);if(!E)return null;const A=JSON.parse(E);return!A||!A.breakdown?null:A}catch{return null}},[_]),N=m.useCallback(E=>{if(!(!_||typeof window>"u"))try{window.localStorage.setItem(_,JSON.stringify(E))}catch{}},[_]),w=m.useCallback(()=>{if(!(!_||typeof window>"u"))try{window.localStorage.removeItem(_)}catch{}},[_]),T=typeof window<"u"&&(window.location.hostname==="localhost"||window.location.hostname==="127.0.0.1"),S=m.useCallback(async()=>{const E=await wt(t);if(!(!E&&!k&&!T)){g(!0),p(null);try{const A=await Ri({baseUrl:e,accessToken:E,from:r,to:a,timeZone:l,tzOffsetMinutes:i});d(A||null),f("edge"),A&&x?N({breakdown:A,fetchedAt:new Date().toISOString()}):x||w()}catch(A){if(x){const K=D();if(K?.breakdown)d(K.breakdown),f("cache"),p(null);else{d(null),f("edge");const I=A;p(I?.message||String(I))}}else{d(null),f("edge");const K=A;p(K?.message||String(K))}}finally{g(!1)}}},[t,e,r,k,n,x,D,l,a,v,i,w,N,T]);return m.useEffect(()=>{if(!v&&!n&&!k&&!T){d(null),f("edge"),p(null),g(!1);return}if(!x)w(),d(null),f("edge"),p(null);else{const E=D();E?.breakdown&&(d(E.breakdown),f("cache"))}S()},[t,k,D,S,v,n,x,w,T]),{breakdown:c,source:k?"mock":u,loading:h,error:b,refresh:S}}function Bl(e){try{return new URL(e).host}catch{return null}}const go=new Set(["day","hour","month"]);function Rl(e){return go.has(e)}function da(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 $l(e,t){const n=da(e),r=da(t);if(n&&r)return n.length!==r.length?n.length<r.length?-1:1:n===r?0:n<r?-1:1;const a=Se(e),o=Se(t);return a==null&&o==null?0:a==null?1:o==null?-1:a===o?0:a<o?-1:1}function Yl(e,t){const n=typeof e=="string"?e:String(e||""),r=typeof t=="string"?t:String(t||"");return n===r?0:n<r?-1:1}function Hl(e){if(!e)return null;const n=String(e).trim().match(/^(\d{4})-(\d{2})-(\d{2})$/);if(!n)return null;const r=Number(n[1]),a=Number(n[2]),o=Number(n[3]);if(!Number.isFinite(r)||!Number.isFinite(a)||!Number.isFinite(o))return null;const l=new Date(Date.UTC(r,a-1,o));return!Number.isFinite(l.getTime())||l.getUTCFullYear()!==r||l.getUTCMonth()+1!==a||l.getUTCDate()!==o?null:l.getTime()}function Ul(e){if(!e)return null;const n=String(e).trim().match(/^(\d{4})-(\d{2})$/);if(!n)return null;const r=Number(n[1]),a=Number(n[2]);if(!Number.isFinite(r)||!Number.isFinite(a)||a<1||a>12)return null;const o=new Date(Date.UTC(r,a-1,1));return Number.isFinite(o.getTime())?o.getTime():null}function zl(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 r=Number(n[1]),a=Number(n[2]),o=Number(n[3]),l=Number(n[4]),i=Number(n[5]),c=Number(n[6]||0);if(!Number.isFinite(r)||!Number.isFinite(a)||!Number.isFinite(o)||!Number.isFinite(l)||!Number.isFinite(i)||!Number.isFinite(c)||a<1||a>12||o<1||o>31||l<0||l>23||i<0||i>59||c<0||c>59)return null;const d=new Date(Date.UTC(r,a-1,o,l,i,c));return Number.isFinite(d.getTime())?d.getTime():null}function ql(e,t,n){const r=n==="hour"?zl:n==="month"?Ul:Hl,a=r(e),o=r(t);return a!=null&&o!=null?a===o?0:a<o?-1:1:Yl(e,t)}function yo(e,{key:t,dir:n}){const r=n==="asc"?1:-1,a=Array.isArray(e)?e:[],o=go.has(t)?(i,c)=>ql(i,c,t):$l,l=i=>t==="total_tokens"&&i?.billable_total_tokens!=null?i.billable_total_tokens:i?.[t];return a.map((i,c)=>({row:i,index:c})).sort((i,c)=>{const d=l(i.row),u=l(c.row),f=d==null,h=u==null;if(f&&h)return i.index-c.index;if(f)return 1;if(h)return-1;const g=o(d,u);return g!==0?g*r:i.index-c.index}).map(i=>i.row)}function Vl(){return[{key:"day",label:y("daily.sort.date.label"),title:y("daily.sort.date.title")},{key:"total_tokens",label:y("daily.sort.total.label"),title:y("daily.sort.total.title")},{key:"input_tokens",label:y("daily.sort.input.label"),title:y("daily.sort.input.title")},{key:"output_tokens",label:y("daily.sort.output.label"),title:y("daily.sort.output.title")},{key:"cached_input_tokens",label:y("daily.sort.cached.label"),title:y("daily.sort.cached.title")},{key:"reasoning_output_tokens",label:y("daily.sort.reasoning.label"),title:y("daily.sort.reasoning.title")},{key:"conversation_count",label:y("daily.sort.conversations.label"),title:y("daily.sort.conversations.title")}]}function ua(e){const t=Rl(e)?e:"day";return Vl().map((n,r)=>r===0?{...n,key:t}:n)}function fa(e,{key:t,dir:n}){return yo(e,{key:t,dir:n})}const wn=12,Gl=["total_tokens","billable_total_tokens","input_tokens","cached_input_tokens","cache_creation_input_tokens","output_tokens","reasoning_output_tokens"];function Kl(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 Xl(e){return Gl.some(t=>Kl(e?.[t]))}function Ql(e){const t=Array.isArray(e)?e:[];if(!t.length)return[];const n=yo(t,{key:"month",dir:"asc"}),r=n.findIndex(a=>a?.month&&Xl(a));return r===-1?t:n.slice(r)}function Jl(e,t,n=wn){const r=Array.isArray(e)?e:[],a=Number.isFinite(n)&&n>0?n:wn,l=(Number.isFinite(t)&&t>=0?Math.floor(t):0)*a;return r.slice(l,l+a)}function Zl({publicMode:e,screenshotMode:t,forceInstall:n,accessEnabled:r,heatmapLoading:a,activeDays:o,hasActiveDeviceToken:l}={}){return e||t?!1:n?!0:r&&!a&&o===0&&!l}function po(e){if(typeof e!="string")return null;const t=e.trim();return t?t.toLowerCase():null}function ec(e){const t=po(e?.model_id);return t||null}function bo(e,t){return e?.model?String(e.model):t}function It(e,t=0){const n=Se(e?.billable_total_tokens),r=Se(e?.total_tokens);return n!=null&&n>0?n:r!=null&&r>0?r:n??r??t}function tc(e,{copyFn:t}={}){const n=typeof t=="function"?t:l=>l,a=(Array.isArray(e?.sources)?e.sources:[]).map(l=>{const i=It(l?.totals),c=Se(l?.totals?.total_cost_usd)??0;return{source:l?.source,totalTokens:Number.isFinite(i)?i:0,totalCost:Number.isFinite(c)?c:0,models:Array.isArray(l?.models)?l.models:[]}}).filter(l=>l.totalTokens>0);if(!a.length)return[];const o=a.reduce((l,i)=>l+i.totalTokens,0);return typeof e?.pricing?.pricing_mode=="string"&&e.pricing.pricing_mode.toUpperCase(),a.slice().sort((l,i)=>i.totalTokens-l.totalTokens).map(l=>{const i=l.source?String(l.source).toUpperCase():n("shared.placeholder.short"),c=o>0?l.totalTokens/o*100:0,d=Number.isFinite(c)?c.toFixed(1):"0.0",u=l.models.map(f=>{const h=It(f?.totals);if(!Number.isFinite(h)||h<=0)return null;const g=l.totalTokens>0?Math.round(h/l.totalTokens*1e3)/10:0,b=bo(f,n("shared.placeholder.short")),p=ec(f),k=Se(f?.totals?.total_cost_usd),v=k??(l.totalCost>0&&l.totalTokens>0?h/l.totalTokens*l.totalCost:null);return{id:p,name:b,share:g,usage:h,cost:v}}).filter(Boolean);return{source:l.source,label:i,totalPercent:String(d),usd:l.totalCost,usage:l.totalTokens,models:u}})}function nc(e,{limit:t=3,copyFn:n}={}){const r=typeof n=="function"?n:h=>h,a=Array.isArray(e?.sources)?e.sources:[];if(!a.length)return[];const o=new Map,l=new Map,i=new Map;let c=0;for(const h of a){const g=Array.isArray(h?.models)?h.models:[];for(const b of g){const p=It(b?.totals);if(!Number.isFinite(p)||p<=0)continue;c+=p;const k=bo(b,r("shared.placeholder.short")),v=po(k);if(!v)continue;o.set(v,(o.get(v)||0)+p);const x=i.get(v)||0;p>=x&&(i.set(v,p),l.set(v,k))}}if(!o.size)return[];const d=Array.from(o.values()).reduce((h,g)=>h+g,0),u=c>0?c:d,f=Number.isFinite(t)?Math.max(0,Math.floor(t)):3;return Array.from(o.entries()).map(([h,g])=>{const b=u>0?(g/u*100).toFixed(1):"0.0";return{id:h,name:l.get(h)||r("shared.placeholder.short"),tokens:g,percent:String(b)}}).sort((h,g)=>g.tokens!==h.tokens?g.tokens-h.tokens:String(h.name).localeCompare(String(g.name))).slice(0,f)}function rc(){return s.jsxs($i,{to:"/landing",className:"flex items-center gap-2.5 no-underline hover:opacity-80 transition-opacity",children:[s.jsx("img",{src:"/app-icon.png",alt:"Token Tracker",width:28,height:28,className:"rounded-md"}),s.jsx("span",{className:"text-base font-semibold text-oai-black dark:text-oai-white leading-tight",children:"Token Tracker"})]})}function ac({children:e,header:t,footer:n,className:r="",hideHeader:a=!1,hideFooter:o=!1,bare:l=!1}){return l?s.jsxs("div",{className:`flex flex-col flex-1 min-h-0 ${r}`,children:[s.jsx("main",{className:"flex-1 px-6 py-6",children:e}),!o&&n&&s.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})]}):s.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 ${r}`,children:[!a&&s.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:[s.jsx(rc,{}),s.jsx("div",{className:"flex-1 flex justify-center",children:t})]}),s.jsx("main",{className:"flex-1 px-6 py-6",children:e}),!o&&n&&s.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 oc({children:e,variant:t="info",size:n="md",className:r=""}){const a="inline-flex items-center font-medium",o={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"},l={sm:"px-2 py-0.5 text-xs",md:"px-2.5 py-1 text-sm"},i=`${a} ${o[t]} ${l[n]} ${r}`.trim();return s.jsx("span",{className:i,children:e})}const sc=m.forwardRef(function(t,n){const{render:r,className:a,disabled:o=!1,nativeButton:l=!0,...i}=t,{store:c}=al(),d=c.useState("open");function u(b){d&&c.setOpen(!1,sl(il,b.nativeEvent))}const{getButtonProps:f,buttonRef:h}=hl({disabled:o,native:l}),g=m.useMemo(()=>({disabled:o}),[o]);return ol("button",t,{state:g,ref:[n,h],props:[{onClick:u},i,f]})});var ic={};function lc(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 cc({mv:e,digit:t,height:n}){const r=ho(e,a=>{const o=(a%10+10)%10,l=(10+t-o)%10;let i=l*n;return l>5&&(i-=10*n),i});return s.jsx(be.span,{style:{position:"absolute",inset:0,display:"flex",alignItems:"center",justifyContent:"center",y:r},children:t})}function dc(e){const t=Math.round(e),n=1e-9*Math.max(1,Math.abs(e));return Math.abs(e-t)<n?t:e}function uc(e,t){const n=e/t;return Math.floor(dc(n))}function fc(e){const t=String(e??""),n=Array.from(t),r=n.indexOf(".");let a=n.filter((i,c)=>/\d/.test(i)&&(r===-1||c<r)).length,o=0,l=!1;return n.map(i=>{if(!/\d/.test(i))return i==="."&&(l=!0),i;if(!l){const c=10**Math.max(a-1,0);return a-=1,c}return o+=1,10**-o})}function mc({place:e,value:t,height:n,digitStyle:r,shouldReduceMotion:a}){if(typeof e!="number"){const c=lc(e,n);return s.jsx("span",{"data-counter-token":"static",className:"relative inline-flex items-center justify-center",style:{height:n,...c,...r},children:e})}const o=uc(t,e),l=vr(0),i=Dl(l,{stiffness:220,damping:26,mass:.8});return m.useEffect(()=>{l.set(o)},[l,o]),a?s.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",...r},children:Math.abs(o)%10}):s.jsx("span",{"data-counter-token":"digit",className:"relative inline-flex overflow-hidden",style:{height:n,position:"relative",width:"0.9ch",fontVariantNumeric:"tabular-nums",...r},children:Array.from({length:10},(c,d)=>s.jsx(cc,{mv:i,digit:d,height:n},d))})}function hc({value:e,displayValue:t,fontSize:n=72,padding:r=0,places:a,gap:o=6,borderRadius:l=4,horizontalPadding:i=0,textColor:c="inherit",fontWeight:d="inherit",containerStyle:u,counterStyle:f,digitStyle:h,gradientHeight:g=14,gradientFrom:b="rgba(255,255,255,0.95)",gradientTo:p="rgba(255,255,255,0)",topGradientStyle:k,bottomGradientStyle:v}){const x=String(t??e??""),_=m.useMemo(()=>Array.isArray(a)&&a.length?a:fc(x),[a,x]),D=typeof navigator<"u"&&/jsdom/i.test(navigator.userAgent||"")||typeof process<"u"&&ic?.VITEST==="true",N=wr()||D,w=Number.isFinite(Number(e))?Math.abs(Number(e)):0,T=n+r;return N?s.jsx("span",{"data-counter-root":"true",style:{display:"inline-flex",alignItems:"center",color:c,fontSize:n,fontWeight:d,lineHeight:1,...u,...f},children:x}):s.jsxs("span",{"data-counter-root":"true",style:{position:"relative",display:"inline-block",...u},children:[s.jsx("span",{style:{fontSize:n,display:"flex",gap:o,overflow:"hidden",borderRadius:l,paddingLeft:i,paddingRight:i,lineHeight:1,color:c,fontWeight:d,...f},children:_.map((S,O)=>s.jsx(mc,{place:S,value:w,height:T,digitStyle:h,shouldReduceMotion:N},`${String(S)}-${O}`))}),s.jsxs("span",{style:{pointerEvents:"none",position:"absolute",inset:0,display:"flex",flexDirection:"column",justifyContent:"space-between"},children:[s.jsx("span",{style:k??{height:g,background:`linear-gradient(to bottom, ${b}, ${p})`}}),s.jsx("span",{style:v??{height:g,background:`linear-gradient(to top, ${b}, ${p})`}})]})]})}function gc(e,t,n){if(!Number.isFinite(e))return y("shared.placeholder.short");const r=Sn(e,{decimals:2,currency:t,rate:n});return r==="-"?y("shared.placeholder.short"):r}function ma(e,t,n){if(!Number.isFinite(e)||e<=0)return null;const r=Nn(t);return(t===ao?e:e*n)<.01?`<${r}0.01`:Sn(e,{decimals:2,currency:t,rate:n})}function ha(e){const t=Number(e);return!Number.isFinite(t)||t<=0?null:Te(t,{decimals:1})}const yc=F.memo(function({isOpen:t,onClose:n,fleetData:r=[]}){const{currency:a,rate:o}=Mn(),l=m.useMemo(()=>(Array.isArray(r)?r:[]).map(c=>{const d=Se(c?.usd)??0,u=Se(c?.usage)??0,f=Array.isArray(c?.models)?c.models:[];return{label:c?.label?String(c.label):"",usdValue:d,costLabel:ma(d,a,o),tokensLabel:ha(u),models:f.map(h=>{const g=Se(h?.usage)??0,b=Se(h?.cost)??0;return{id:h?.id?String(h.id):"",name:h?.name?String(h.name):"",tokensLabel:ha(g),costLabel:ma(b,a,o),sortCost:b}}).filter(h=>h.costLabel||h.tokensLabel).sort((h,g)=>g.sortCost-h.sortCost)}}).filter(c=>c.usdValue>0||c.models.length>0).sort((c,d)=>d.usdValue-c.usdValue),[r,a,o]),i=m.useMemo(()=>{const c=l.reduce((d,u)=>d+u.usdValue,0);return gc(c,a,o)},[l,a,o]);return s.jsx(ll,{open:t,onOpenChange:c=>{c||n?.()},children:s.jsxs(cl,{children:[s.jsx(dl,{className:"cost-modal-backdrop","data-cost-analysis-backdrop":"true"}),s.jsx(ul,{className:"fixed inset-0 z-[101] flex items-center justify-center p-4",children:s.jsxs(fl,{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:[s.jsx(ml,{render:s.jsx("h2",{className:"sr-only"}),children:y("dashboard.cost_breakdown.title")}),s.jsx(sc,{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":y("dashboard.cost_breakdown.close"),children:s.jsx(Yi,{size:16,strokeWidth:2,"aria-hidden":!0})}),s.jsx("div",{className:"flex-1 min-h-0 overflow-y-auto oai-scrollbar",children:s.jsxs("div",{className:"px-3 py-6",children:[s.jsx("p",{className:"text-label uppercase tracking-[0.12em] text-oai-gray-500 dark:text-oai-gray-400 mb-2",children:y("dashboard.cost_breakdown.total_label")}),s.jsx("p",{className:"font-bold text-oai-brand tabular-nums tracking-tight leading-none mb-6",style:{fontSize:"clamp(24px, 6.5vw, 32px)"},children:i}),l.length===0?s.jsx("p",{className:"text-body-sm text-oai-gray-500 dark:text-oai-gray-400",children:"No spend recorded."}):s.jsxs("div",{role:"table","aria-label":y("dashboard.cost_breakdown.title"),children:[s.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:[s.jsx("span",{role:"columnheader",children:"Model"}),s.jsx("span",{role:"columnheader",children:"Cost"})]}),l.map((c,d)=>{const u=`fleet-${d}`;return s.jsxs("div",{role:"rowgroup","aria-labelledby":u,className:d>0?"mt-5":"mt-2",children:[s.jsxs("div",{role:"row",className:"flex items-center justify-between gap-4 py-2",children:[s.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}),s.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,h)=>s.jsxs("div",{role:"row",className:"flex items-center justify-between gap-4 py-[5px]",children:[s.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}),s.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}-${h}`))]},`${c.label}-${d}`)})]})]})})]})})]})})});function pc({projectEntries:e=[],projectLimit:t=3,onProjectLimitChange:n,copy:r,hasDetailsActual:a,dailyEmptyPrefix:o,installSyncCmd:l,dailyEmptySuffix:i,detailsColumns:c,ariaSortFor:d,toggleSort:u,sortIconFor:f,pagedDetails:h,dailyBreakdownRows:g=[],dailyBreakdownColumns:b=[],dailyBreakdownAriaSortFor:p,dailyBreakdownSortIconFor:k,dailyBreakdownDateKey:v="day",detailsDateKey:x,renderDetailDate:_,renderDailyBreakdownDate:D,renderDetailCell:N,DETAILS_PAGED_PERIODS:w,period:T,detailsPageCount:S,detailsPage:O,setDetailsPage:E}){const[A,K]=m.useState("daily");return s.jsxs(kr,{children:[s.jsxs("div",{className:"flex items-center justify-between gap-3 mb-4",children:[s.jsxs("div",{role:"tablist","aria-label":"Data view",className:"flex gap-1",children:[s.jsx("button",{role:"tab","aria-selected":A==="daily",type:"button",onClick:()=>K("daily"),className:`text-xs font-medium px-3 py-1.5 rounded transition-colors ${A==="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:r("dashboard.daily.title")}),s.jsx("button",{role:"tab","aria-selected":A==="projects",type:"button",onClick:()=>K("projects"),className:`text-xs font-medium px-3 py-1.5 rounded transition-colors ${A==="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:r("dashboard.projects.title")})]}),A==="projects"&&s.jsxs("select",{"aria-label":"Number of projects to display",value:t,onChange:I=>n?.(Number(I.target.value)),className:"text-xs text-oai-gray-600 dark:text-oai-gray-300 bg-white dark:bg-oai-gray-900 border border-oai-gray-200 dark:border-oai-gray-700 rounded px-2 py-1 hover:border-oai-gray-300 dark:hover:border-oai-gray-600 focus:border-oai-brand dark:focus:border-oai-brand focus:outline-none transition-colors",children:[s.jsx("option",{value:3,children:r("dashboard.projects.limit_top_3")}),s.jsx("option",{value:6,children:r("dashboard.projects.limit_top_6")}),s.jsx("option",{value:10,children:r("dashboard.projects.limit_top_10")})]})]}),A==="projects"&&s.jsx("div",{className:"space-y-1",children:e.slice(0,t).map((I,P)=>{const C=typeof I?.project_ref=="string"?I.project_ref:"",j=I?.project_key||C||`entry-${P}`,H=I?.billable_total_tokens??I?.total_tokens,L=Number(H),W=Number.isFinite(L)?L.toLocaleString():"—",Y=I?.project_key||C.split("/").pop()||"—";return s.jsxs("div",{className:"flex items-center gap-3 p-2 rounded-lg",children:[s.jsx("div",{className:"w-8 h-8 rounded-md oai-bg-elevated flex items-center justify-center oai-text-caption font-medium text-oai-gray-500 dark:text-oai-gray-300",children:(I?.project_key?.[0]||"?").toUpperCase()}),s.jsx("div",{className:"min-w-0 flex-1",children:s.jsx("div",{className:"oai-text-body-sm font-medium text-oai-black dark:text-oai-white truncate",children:Y})}),s.jsx("div",{className:"oai-text-body-sm font-medium text-oai-black dark:text-oai-white tabular-nums",children:W})]},j)})}),A==="daily"&&s.jsxs("div",{children:[g?.length===0?s.jsxs("div",{className:"oai-text-body-sm text-oai-gray-500 dark:text-oai-gray-300 mb-4",children:[o,s.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}),i]}):s.jsx("div",{className:"overflow-auto max-h-[384px] -mx-4 oai-scrollbar",children:s.jsxs("table",{className:"w-full border-collapse",children:[s.jsx("thead",{className:"sticky top-0 z-10",children:s.jsx("tr",{className:"border-b border-oai-gray-200 dark:border-oai-gray-700",children:b.map(I=>s.jsx("th",{"aria-sort":p?.(I.key)||"none",className:"text-left p-0 bg-white dark:bg-oai-gray-900",children:s.jsx("button",{type:"button",onClick:()=>u(I.key),className:"flex w-full items-center justify-start 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:s.jsxs("span",{className:"inline-flex items-center gap-1",children:[s.jsx("span",{children:I.label}),s.jsx("span",{className:"text-oai-gray-400 dark:text-oai-gray-400",children:k?.(I.key)||""})]})})},I.key))})}),s.jsx("tbody",{children:g.map(I=>s.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 ${I.missing?"text-oai-gray-400 dark:text-oai-gray-400":I.future?"text-oai-gray-300 dark:text-oai-gray-600":"text-oai-black dark:text-oai-white"}`,children:[s.jsx("td",{className:"px-4 py-2 oai-text-body-sm text-oai-gray-500 dark:text-oai-gray-300",children:D?D(I):_(I)}),s.jsx("td",{className:"px-4 py-2 oai-text-body-sm font-medium text-oai-black dark:text-oai-white tabular-nums",children:N(I,"total_tokens")}),s.jsx("td",{className:"px-4 py-2 oai-text-body-sm text-oai-gray-600 dark:text-oai-gray-300 tabular-nums",children:N(I,"input_tokens")}),s.jsx("td",{className:"px-4 py-2 oai-text-body-sm text-oai-gray-600 dark:text-oai-gray-300 tabular-nums",children:N(I,"output_tokens")}),s.jsx("td",{className:"px-4 py-2 oai-text-body-sm text-oai-gray-600 dark:text-oai-gray-300 tabular-nums",children:N(I,"cached_input_tokens")}),s.jsx("td",{className:"px-4 py-2 oai-text-body-sm text-oai-gray-600 dark:text-oai-gray-300 tabular-nums",children:N(I,"reasoning_output_tokens")}),s.jsx("td",{className:"px-4 py-2 oai-text-body-sm text-oai-gray-600 dark:text-oai-gray-300 tabular-nums",children:N(I,"conversation_count")})]},String(I?.[v]||I?.day||I?.hour||I?.month||"")))})]})}),A!=="daily"&&w.has(T)&&S>1?s.jsxs("div",{className:"mt-3 flex items-center justify-between oai-text-caption",children:[s.jsx("button",{type:"button",onClick:()=>E(I=>Math.max(0,I-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:r("details.pagination.prev")}),s.jsxs("span",{className:"oai-text-muted",children:[O+1," / ",S]}),s.jsx("button",{type:"button",onClick:()=>E(I=>Math.min(S-1,I+1)),disabled:O+1>=S,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:r("details.pagination.next")})]}):null]})]})}function xn(e){return typeof e!="string"?"":e.trim()}function ga(e){const t=xn(e);return t?t.split(/[_\-\s]+/).filter(Boolean).map(n=>n.slice(0,1).toUpperCase()+n.slice(1).toLowerCase()).join(" "):""}function bc(e){if(!Array.isArray(e))return[];const t=new Map;for(const n of e){if(!n||typeof n!="object")continue;const r=xn(n.tool),a=xn(n.planType)||xn(n.plan_type);if(!r||!a)continue;const o=ga(r)||r,l=ga(a)||a;t.set(`${r.toLowerCase()}::${a.toLowerCase()}`,{tool:o,plan:l})}return Array.from(t.values())}function xc({period:e="month",rankLabel:t,streakDays:n,subscriptions:r=[],periodConversations:a,rolling:o,topModels:l=[],className:i=""}){const c=y("shared.placeholder.short"),d=y("shared.unit.percent"),u=t??y("identity_card.rank_placeholder"),f=Number.isFinite(Number(n))?Number(n):0,h=f?y("identity_card.streak_value",{days:f}):y("identity_card.rank_placeholder"),g=bc(r),b={thousandSuffix:y("shared.unit.thousand_abbrev"),millionSuffix:y("shared.unit.million_abbrev"),billionSuffix:y("shared.unit.billion_abbrev")},p=x=>{if(x==null)return c;const _=Te(x,b);return _==="-"?c:_},k=(()=>{switch(e){case"day":return y("stats.period.today");case"week":return y("stats.period.week");case"month":return y("stats.period.month");case"total":return y("stats.period.all");default:return y("stats.period.convs")}})(),v=l.slice(0,3);return s.jsxs(kr,{className:`h-full ${i}`,children:[s.jsxs("div",{className:"grid grid-cols-4 gap-2",children:[s.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:[s.jsx("span",{className:"text-sm font-semibold text-oai-black dark:text-oai-white tabular-nums",children:p(o?.last_7d?.totals?.billable_total_tokens)}),s.jsx("span",{className:"text-[10px] text-oai-gray-400 dark:text-oai-gray-400 mt-0.5 whitespace-nowrap",children:"7d"})]}),s.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:[s.jsx("span",{className:"text-sm font-semibold text-oai-black dark:text-oai-white tabular-nums",children:p(o?.last_30d?.totals?.billable_total_tokens)}),s.jsx("span",{className:"text-[10px] text-oai-gray-400 dark:text-oai-gray-400 mt-0.5 whitespace-nowrap",children:"30d"})]}),s.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:[s.jsx("span",{className:"text-sm font-semibold text-oai-black dark:text-oai-white tabular-nums",children:p(o?.last_30d?.avg_per_active_day)}),s.jsx("span",{className:"text-[10px] text-oai-gray-400 dark:text-oai-gray-400 mt-0.5 whitespace-nowrap",children:"avg"})]}),s.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:[s.jsx("span",{className:"text-sm font-semibold text-oai-black dark:text-oai-white tabular-nums",children:p(a)}),s.jsx("span",{className:"text-[10px] text-oai-gray-400 dark:text-oai-gray-400 mt-0.5 whitespace-nowrap",children:k})]})]}),v.length>0&&s.jsx("div",{className:"mt-4 pt-3 border-t border-oai-gray-100 dark:border-oai-gray-800",children:v.map((x,_)=>{const D=x?.name?String(x.name):c,N=x?.percent?String(x.percent):"",w=_===v.length-1,T=_+1;return s.jsxs("div",{className:`flex items-center py-2 ${w?"":"border-b border-oai-gray-50 dark:border-oai-gray-800"}`,children:[s.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}),s.jsx("span",{className:"flex-1 text-sm text-oai-gray-700 dark:text-oai-gray-300 truncate px-2.5",title:D,children:D}),s.jsxs("span",{className:"text-sm font-semibold text-oai-black dark:text-oai-white tabular-nums flex-shrink-0",children:[N,d]})]},x.id||D)})}),g.length>0&&s.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:g.map((x,_)=>s.jsxs(oc,{variant:"secondary",size:"sm",children:[x.tool," ",x.plan]},`${x.tool}:${x.plan}:${_}`))}),s.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:[s.jsxs("div",{className:"flex items-center gap-1.5",children:[s.jsx("span",{children:y("identity_card.rank_label")}),s.jsx("span",{className:"text-oai-gray-500 dark:text-oai-gray-300 tabular-nums",children:u})]}),s.jsxs("div",{className:"flex items-center gap-1",children:[s.jsx("span",{children:y("identity_card.streak_label")}),s.jsx("span",{className:"text-oai-gray-500 dark:text-oai-gray-300 tabular-nums",children:h})]})]})]})}function kc(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 wc={},tn={};function bt(e,t){try{const r=(wc[e]||=new Intl.DateTimeFormat("en-US",{timeZone:e,timeZoneName:"longOffset"}).format)(t).split("GMT")[1];return r in tn?tn[r]:ya(r,r.split(":"))}catch{if(e in tn)return tn[e];const n=e?.match(vc);return n?ya(e,n.slice(1)):NaN}}const vc=/([+-]\d\d):?(\d\d)?/;function ya(e,t){const n=+(t[0]||0),r=+(t[1]||0),a=+(t[2]||0)/60;return tn[e]=n*60+r>0?n*60+r+a:n*60-r-a}class He extends Date{constructor(...t){super(),t.length>1&&typeof t[t.length-1]=="string"&&(this.timeZone=t.pop()),this.internal=new Date,isNaN(bt(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)),xo(this),fr(this)):this.setTime(Date.now())}static tz(t,...n){return n.length?new He(...n,t):new He(Date.now(),t)}withTimeZone(t){return new He(+this,t)}getTimezoneOffset(){const t=-bt(this.timeZone,this);return t>0?Math.floor(t):Math.ceil(t)}setTime(t){return Date.prototype.setTime.apply(this,arguments),fr(this),+this}[Symbol.for("constructDateFrom")](t){return new He(+new Date(t),this.timeZone)}}const pa=/^(get|set)(?!UTC)/;Object.getOwnPropertyNames(Date.prototype).forEach(e=>{if(!pa.test(e))return;const t=e.replace(pa,"$1UTC");He.prototype[t]&&(e.startsWith("get")?He.prototype[e]=function(){return this.internal[t]()}:(He.prototype[e]=function(){return Date.prototype[t].apply(this.internal,arguments),_c(this),+this},He.prototype[t]=function(){return Date.prototype[t].apply(this,arguments),fr(this),+this}))});function fr(e){e.internal.setTime(+e),e.internal.setUTCSeconds(e.internal.getUTCSeconds()-Math.round(-bt(e.timeZone,e)*60))}function _c(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()),xo(e)}function xo(e){const t=bt(e.timeZone,e),n=t>0?Math.floor(t):Math.ceil(t),r=new Date(+e);r.setUTCHours(r.getUTCHours()-1);const a=-new Date(+e).getTimezoneOffset(),o=-new Date(+r).getTimezoneOffset(),l=a-o,i=Date.prototype.getHours.apply(e)!==e.internal.getUTCHours();l&&i&&e.internal.setUTCMinutes(e.internal.getUTCMinutes()+l);const c=a-n;c&&Date.prototype.setUTCMinutes.call(e,Date.prototype.getUTCMinutes.call(e)+c);const d=new Date(+e);d.setUTCSeconds(0);const u=a>0?d.getSeconds():(d.getSeconds()-60)%60,f=Math.round(-(bt(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 h=bt(e.timeZone,e),g=h>0?Math.floor(h):Math.ceil(h),p=-new Date(+e).getTimezoneOffset()-g,k=g!==n,v=p-c;if(k&&v){Date.prototype.setUTCMinutes.call(e,Date.prototype.getUTCMinutes.call(e)+v);const x=bt(e.timeZone,e),_=x>0?Math.floor(x):Math.ceil(x),D=g-_;D&&(e.internal.setUTCMinutes(e.internal.getUTCMinutes()+D),Date.prototype.setUTCMinutes.call(e,Date.prototype.getUTCMinutes.call(e)+D))}}class pe extends He{static tz(t,...n){return n.length?new pe(...n,t):new pe(Date.now(),t)}toISOString(){const[t,n,r]=this.tzComponents(),a=`${t}${n}:${r}`;return this.internal.toISOString().slice(0,-1)+a}toString(){return`${this.toDateString()} ${this.toTimeString()}`}toDateString(){const[t,n,r,a]=this.internal.toUTCString().split(" ");return`${t?.slice(0,-1)} ${r} ${n} ${a}`}toTimeString(){const t=this.internal.toUTCString().split(" ")[4],[n,r,a]=this.tzComponents();return`${t} GMT${n}${r}${a} (${kc(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?"-":"+",r=String(Math.floor(Math.abs(t)/60)).padStart(2,"0"),a=String(Math.abs(t)%60).padStart(2,"0");return[n,r,a]}withTimeZone(t){return new pe(+this,t)}[Symbol.for("constructDateFrom")](t){return new pe(+new Date(t),this.timeZone)}}const ko=6048e5,Nc=864e5,ba=Symbol.for("constructDateFrom");function ue(e,t){return typeof e=="function"?e(t):e&&typeof e=="object"&&ba in e?e[ba](t):e instanceof Date?new e.constructor(t):new Date(t)}function re(e,t){return ue(t||e,e)}function wo(e,t,n){const r=re(e,n?.in);return isNaN(t)?ue(e,NaN):(t&&r.setDate(r.getDate()+t),r)}function vo(e,t,n){const r=re(e,n?.in);if(isNaN(t))return ue(e,NaN);if(!t)return r;const a=r.getDate(),o=ue(e,r.getTime());o.setMonth(r.getMonth()+t+1,0);const l=o.getDate();return a>=l?o:(r.setFullYear(o.getFullYear(),o.getMonth(),a),r)}let Sc={};function an(){return Sc}function Pt(e,t){const n=an(),r=t?.weekStartsOn??t?.locale?.options?.weekStartsOn??n.weekStartsOn??n.locale?.options?.weekStartsOn??0,a=re(e,t?.in),o=a.getDay(),l=(o<r?7:0)+o-r;return a.setDate(a.getDate()-l),a.setHours(0,0,0,0),a}function nn(e,t){return Pt(e,{...t,weekStartsOn:1})}function _o(e,t){const n=re(e,t?.in),r=n.getFullYear(),a=ue(n,0);a.setFullYear(r+1,0,4),a.setHours(0,0,0,0);const o=nn(a),l=ue(n,0);l.setFullYear(r,0,4),l.setHours(0,0,0,0);const i=nn(l);return n.getTime()>=o.getTime()?r+1:n.getTime()>=i.getTime()?r:r-1}function xa(e){const t=re(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 Bt(e,...t){const n=ue.bind(null,t.find(r=>typeof r=="object"));return t.map(n)}function rn(e,t){const n=re(e,t?.in);return n.setHours(0,0,0,0),n}function Nr(e,t,n){const[r,a]=Bt(n?.in,e,t),o=rn(r),l=rn(a),i=+o-xa(o),c=+l-xa(l);return Math.round((i-c)/Nc)}function Mc(e,t){const n=_o(e,t),r=ue(e,0);return r.setFullYear(n,0,4),r.setHours(0,0,0,0),nn(r)}function jc(e,t,n){return wo(e,t*7,n)}function Dc(e,t,n){return vo(e,t*12,n)}function Cc(e,t){let n,r=t?.in;return e.forEach(a=>{!r&&typeof a=="object"&&(r=ue.bind(null,a));const o=re(a,r);(!n||n<o||isNaN(+o))&&(n=o)}),ue(r,n||NaN)}function Tc(e,t){let n,r=t?.in;return e.forEach(a=>{!r&&typeof a=="object"&&(r=ue.bind(null,a));const o=re(a,r);(!n||n>o||isNaN(+o))&&(n=o)}),ue(r,n||NaN)}function Oc(e,t,n){const[r,a]=Bt(n?.in,e,t);return+rn(r)==+rn(a)}function No(e){return e instanceof Date||typeof e=="object"&&Object.prototype.toString.call(e)==="[object Date]"}function Ac(e){return!(!No(e)&&typeof e!="number"||isNaN(+re(e)))}function So(e,t,n){const[r,a]=Bt(n?.in,e,t),o=r.getFullYear()-a.getFullYear(),l=r.getMonth()-a.getMonth();return o*12+l}function Ec(e,t){const n=re(e,t?.in),r=n.getMonth();return n.setFullYear(n.getFullYear(),r+1,0),n.setHours(23,59,59,999),n}function Mo(e,t){const[n,r]=Bt(e,t.start,t.end);return{start:n,end:r}}function Fc(e,t){const{start:n,end:r}=Mo(t?.in,e);let a=+n>+r;const o=a?+n:+r,l=a?r:n;l.setHours(0,0,0,0),l.setDate(1);let i=1;const c=[];for(;+l<=o;)c.push(ue(n,l)),l.setMonth(l.getMonth()+i);return a?c.reverse():c}function Wc(e,t){const n=re(e,t?.in);return n.setDate(1),n.setHours(0,0,0,0),n}function Ic(e,t){const n=re(e,t?.in),r=n.getFullYear();return n.setFullYear(r+1,0,0),n.setHours(23,59,59,999),n}function jo(e,t){const n=re(e,t?.in);return n.setFullYear(n.getFullYear(),0,1),n.setHours(0,0,0,0),n}function Pc(e,t){const{start:n,end:r}=Mo(t?.in,e);let a=+n>+r;const o=a?+n:+r,l=a?r:n;l.setHours(0,0,0,0),l.setMonth(0,1);let i=1;const c=[];for(;+l<=o;)c.push(ue(n,l)),l.setFullYear(l.getFullYear()+i);return a?c.reverse():c}function Do(e,t){const n=an(),r=t?.weekStartsOn??t?.locale?.options?.weekStartsOn??n.weekStartsOn??n.locale?.options?.weekStartsOn??0,a=re(e,t?.in),o=a.getDay(),l=(o<r?-7:0)+6-(o-r);return a.setDate(a.getDate()+l),a.setHours(23,59,59,999),a}function Lc(e,t){return Do(e,{...t,weekStartsOn:1})}const Bc={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"}},Rc=(e,t,n)=>{let r;const a=Bc[e];return typeof a=="string"?r=a:t===1?r=a.one:r=a.other.replace("{{count}}",t.toString()),n?.addSuffix?n.comparison&&n.comparison>0?"in "+r:r+" ago":r};function Xn(e){return(t={})=>{const n=t.width?String(t.width):e.defaultWidth;return e.formats[n]||e.formats[e.defaultWidth]}}const $c={full:"EEEE, MMMM do, y",long:"MMMM do, y",medium:"MMM d, y",short:"MM/dd/yyyy"},Yc={full:"h:mm:ss a zzzz",long:"h:mm:ss a z",medium:"h:mm:ss a",short:"h:mm a"},Hc={full:"{{date}} 'at' {{time}}",long:"{{date}} 'at' {{time}}",medium:"{{date}}, {{time}}",short:"{{date}}, {{time}}"},Uc={date:Xn({formats:$c,defaultWidth:"full"}),time:Xn({formats:Yc,defaultWidth:"full"}),dateTime:Xn({formats:Hc,defaultWidth:"full"})},zc={lastWeek:"'last' eeee 'at' p",yesterday:"'yesterday at' p",today:"'today at' p",tomorrow:"'tomorrow at' p",nextWeek:"eeee 'at' p",other:"P"},qc=(e,t,n,r)=>zc[e];function Qt(e){return(t,n)=>{const r=n?.context?String(n.context):"standalone";let a;if(r==="formatting"&&e.formattingValues){const l=e.defaultFormattingWidth||e.defaultWidth,i=n?.width?String(n.width):l;a=e.formattingValues[i]||e.formattingValues[l]}else{const l=e.defaultWidth,i=n?.width?String(n.width):e.defaultWidth;a=e.values[i]||e.values[l]}const o=e.argumentCallback?e.argumentCallback(t):t;return a[o]}}const Vc={narrow:["B","A"],abbreviated:["BC","AD"],wide:["Before Christ","Anno Domini"]},Gc={narrow:["1","2","3","4"],abbreviated:["Q1","Q2","Q3","Q4"],wide:["1st quarter","2nd quarter","3rd quarter","4th quarter"]},Kc={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"]},Xc={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"]},Qc={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"}},Jc={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"}},Zc=(e,t)=>{const n=Number(e),r=n%100;if(r>20||r<10)switch(r%10){case 1:return n+"st";case 2:return n+"nd";case 3:return n+"rd"}return n+"th"},ed={ordinalNumber:Zc,era:Qt({values:Vc,defaultWidth:"wide"}),quarter:Qt({values:Gc,defaultWidth:"wide",argumentCallback:e=>e-1}),month:Qt({values:Kc,defaultWidth:"wide"}),day:Qt({values:Xc,defaultWidth:"wide"}),dayPeriod:Qt({values:Qc,defaultWidth:"wide",formattingValues:Jc,defaultFormattingWidth:"wide"})};function Jt(e){return(t,n={})=>{const r=n.width,a=r&&e.matchPatterns[r]||e.matchPatterns[e.defaultMatchWidth],o=t.match(a);if(!o)return null;const l=o[0],i=r&&e.parsePatterns[r]||e.parsePatterns[e.defaultParseWidth],c=Array.isArray(i)?nd(i,f=>f.test(l)):td(i,f=>f.test(l));let d;d=e.valueCallback?e.valueCallback(c):c,d=n.valueCallback?n.valueCallback(d):d;const u=t.slice(l.length);return{value:d,rest:u}}}function td(e,t){for(const n in e)if(Object.prototype.hasOwnProperty.call(e,n)&&t(e[n]))return n}function nd(e,t){for(let n=0;n<e.length;n++)if(t(e[n]))return n}function rd(e){return(t,n={})=>{const r=t.match(e.matchPattern);if(!r)return null;const a=r[0],o=t.match(e.parsePattern);if(!o)return null;let l=e.valueCallback?e.valueCallback(o[0]):o[0];l=n.valueCallback?n.valueCallback(l):l;const i=t.slice(a.length);return{value:l,rest:i}}}const ad=/^(\d+)(th|st|nd|rd)?/i,od=/\d+/i,sd={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},id={any:[/^b/i,/^(a|c)/i]},ld={narrow:/^[1234]/i,abbreviated:/^q[1234]/i,wide:/^[1234](th|st|nd|rd)? quarter/i},cd={any:[/1/i,/2/i,/3/i,/4/i]},dd={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},ud={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]},fd={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},md={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]},hd={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},gd={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}},yd={ordinalNumber:rd({matchPattern:ad,parsePattern:od,valueCallback:e=>parseInt(e,10)}),era:Jt({matchPatterns:sd,defaultMatchWidth:"wide",parsePatterns:id,defaultParseWidth:"any"}),quarter:Jt({matchPatterns:ld,defaultMatchWidth:"wide",parsePatterns:cd,defaultParseWidth:"any",valueCallback:e=>e+1}),month:Jt({matchPatterns:dd,defaultMatchWidth:"wide",parsePatterns:ud,defaultParseWidth:"any"}),day:Jt({matchPatterns:fd,defaultMatchWidth:"wide",parsePatterns:md,defaultParseWidth:"any"}),dayPeriod:Jt({matchPatterns:hd,defaultMatchWidth:"any",parsePatterns:gd,defaultParseWidth:"any"})},Ft={code:"en-US",formatDistance:Rc,formatLong:Uc,formatRelative:qc,localize:ed,match:yd,options:{weekStartsOn:0,firstWeekContainsDate:1}};function pd(e,t){const n=re(e,t?.in);return Nr(n,jo(n))+1}function Sr(e,t){const n=re(e,t?.in),r=+nn(n)-+Mc(n);return Math.round(r/ko)+1}function Co(e,t){const n=re(e,t?.in),r=n.getFullYear(),a=an(),o=t?.firstWeekContainsDate??t?.locale?.options?.firstWeekContainsDate??a.firstWeekContainsDate??a.locale?.options?.firstWeekContainsDate??1,l=ue(t?.in||e,0);l.setFullYear(r+1,0,o),l.setHours(0,0,0,0);const i=Pt(l,t),c=ue(t?.in||e,0);c.setFullYear(r,0,o),c.setHours(0,0,0,0);const d=Pt(c,t);return+n>=+i?r+1:+n>=+d?r:r-1}function bd(e,t){const n=an(),r=t?.firstWeekContainsDate??t?.locale?.options?.firstWeekContainsDate??n.firstWeekContainsDate??n.locale?.options?.firstWeekContainsDate??1,a=Co(e,t),o=ue(t?.in||e,0);return o.setFullYear(a,0,r),o.setHours(0,0,0,0),Pt(o,t)}function Mr(e,t){const n=re(e,t?.in),r=+Pt(n,t)-+bd(n,t);return Math.round(r/ko)+1}function ne(e,t){const n=e<0?"-":"",r=Math.abs(e).toString().padStart(t,"0");return n+r}const st={y(e,t){const n=e.getFullYear(),r=n>0?n:1-n;return ne(t==="yy"?r%100:r,t.length)},M(e,t){const n=e.getMonth();return t==="M"?String(n+1):ne(n+1,2)},d(e,t){return ne(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 ne(e.getHours()%12||12,t.length)},H(e,t){return ne(e.getHours(),t.length)},m(e,t){return ne(e.getMinutes(),t.length)},s(e,t){return ne(e.getSeconds(),t.length)},S(e,t){const n=t.length,r=e.getMilliseconds(),a=Math.trunc(r*Math.pow(10,n-3));return ne(a,t.length)}},At={midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},ka={G:function(e,t,n){const r=e.getFullYear()>0?1:0;switch(t){case"G":case"GG":case"GGG":return n.era(r,{width:"abbreviated"});case"GGGGG":return n.era(r,{width:"narrow"});default:return n.era(r,{width:"wide"})}},y:function(e,t,n){if(t==="yo"){const r=e.getFullYear(),a=r>0?r:1-r;return n.ordinalNumber(a,{unit:"year"})}return st.y(e,t)},Y:function(e,t,n,r){const a=Co(e,r),o=a>0?a:1-a;if(t==="YY"){const l=o%100;return ne(l,2)}return t==="Yo"?n.ordinalNumber(o,{unit:"year"}):ne(o,t.length)},R:function(e,t){const n=_o(e);return ne(n,t.length)},u:function(e,t){const n=e.getFullYear();return ne(n,t.length)},Q:function(e,t,n){const r=Math.ceil((e.getMonth()+1)/3);switch(t){case"Q":return String(r);case"QQ":return ne(r,2);case"Qo":return n.ordinalNumber(r,{unit:"quarter"});case"QQQ":return n.quarter(r,{width:"abbreviated",context:"formatting"});case"QQQQQ":return n.quarter(r,{width:"narrow",context:"formatting"});default:return n.quarter(r,{width:"wide",context:"formatting"})}},q:function(e,t,n){const r=Math.ceil((e.getMonth()+1)/3);switch(t){case"q":return String(r);case"qq":return ne(r,2);case"qo":return n.ordinalNumber(r,{unit:"quarter"});case"qqq":return n.quarter(r,{width:"abbreviated",context:"standalone"});case"qqqqq":return n.quarter(r,{width:"narrow",context:"standalone"});default:return n.quarter(r,{width:"wide",context:"standalone"})}},M:function(e,t,n){const r=e.getMonth();switch(t){case"M":case"MM":return st.M(e,t);case"Mo":return n.ordinalNumber(r+1,{unit:"month"});case"MMM":return n.month(r,{width:"abbreviated",context:"formatting"});case"MMMMM":return n.month(r,{width:"narrow",context:"formatting"});default:return n.month(r,{width:"wide",context:"formatting"})}},L:function(e,t,n){const r=e.getMonth();switch(t){case"L":return String(r+1);case"LL":return ne(r+1,2);case"Lo":return n.ordinalNumber(r+1,{unit:"month"});case"LLL":return n.month(r,{width:"abbreviated",context:"standalone"});case"LLLLL":return n.month(r,{width:"narrow",context:"standalone"});default:return n.month(r,{width:"wide",context:"standalone"})}},w:function(e,t,n,r){const a=Mr(e,r);return t==="wo"?n.ordinalNumber(a,{unit:"week"}):ne(a,t.length)},I:function(e,t,n){const r=Sr(e);return t==="Io"?n.ordinalNumber(r,{unit:"week"}):ne(r,t.length)},d:function(e,t,n){return t==="do"?n.ordinalNumber(e.getDate(),{unit:"date"}):st.d(e,t)},D:function(e,t,n){const r=pd(e);return t==="Do"?n.ordinalNumber(r,{unit:"dayOfYear"}):ne(r,t.length)},E:function(e,t,n){const r=e.getDay();switch(t){case"E":case"EE":case"EEE":return n.day(r,{width:"abbreviated",context:"formatting"});case"EEEEE":return n.day(r,{width:"narrow",context:"formatting"});case"EEEEEE":return n.day(r,{width:"short",context:"formatting"});default:return n.day(r,{width:"wide",context:"formatting"})}},e:function(e,t,n,r){const a=e.getDay(),o=(a-r.weekStartsOn+8)%7||7;switch(t){case"e":return String(o);case"ee":return ne(o,2);case"eo":return n.ordinalNumber(o,{unit:"day"});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"})}},c:function(e,t,n,r){const a=e.getDay(),o=(a-r.weekStartsOn+8)%7||7;switch(t){case"c":return String(o);case"cc":return ne(o,t.length);case"co":return n.ordinalNumber(o,{unit:"day"});case"ccc":return n.day(a,{width:"abbreviated",context:"standalone"});case"ccccc":return n.day(a,{width:"narrow",context:"standalone"});case"cccccc":return n.day(a,{width:"short",context:"standalone"});default:return n.day(a,{width:"wide",context:"standalone"})}},i:function(e,t,n){const r=e.getDay(),a=r===0?7:r;switch(t){case"i":return String(a);case"ii":return ne(a,t.length);case"io":return n.ordinalNumber(a,{unit:"day"});case"iii":return n.day(r,{width:"abbreviated",context:"formatting"});case"iiiii":return n.day(r,{width:"narrow",context:"formatting"});case"iiiiii":return n.day(r,{width:"short",context:"formatting"});default:return n.day(r,{width:"wide",context:"formatting"})}},a:function(e,t,n){const a=e.getHours()/12>=1?"pm":"am";switch(t){case"a":case"aa":return n.dayPeriod(a,{width:"abbreviated",context:"formatting"});case"aaa":return n.dayPeriod(a,{width:"abbreviated",context:"formatting"}).toLowerCase();case"aaaaa":return n.dayPeriod(a,{width:"narrow",context:"formatting"});default:return n.dayPeriod(a,{width:"wide",context:"formatting"})}},b:function(e,t,n){const r=e.getHours();let a;switch(r===12?a=At.noon:r===0?a=At.midnight:a=r/12>=1?"pm":"am",t){case"b":case"bb":return n.dayPeriod(a,{width:"abbreviated",context:"formatting"});case"bbb":return n.dayPeriod(a,{width:"abbreviated",context:"formatting"}).toLowerCase();case"bbbbb":return n.dayPeriod(a,{width:"narrow",context:"formatting"});default:return n.dayPeriod(a,{width:"wide",context:"formatting"})}},B:function(e,t,n){const r=e.getHours();let a;switch(r>=17?a=At.evening:r>=12?a=At.afternoon:r>=4?a=At.morning:a=At.night,t){case"B":case"BB":case"BBB":return n.dayPeriod(a,{width:"abbreviated",context:"formatting"});case"BBBBB":return n.dayPeriod(a,{width:"narrow",context:"formatting"});default:return n.dayPeriod(a,{width:"wide",context:"formatting"})}},h:function(e,t,n){if(t==="ho"){let r=e.getHours()%12;return r===0&&(r=12),n.ordinalNumber(r,{unit:"hour"})}return st.h(e,t)},H:function(e,t,n){return t==="Ho"?n.ordinalNumber(e.getHours(),{unit:"hour"}):st.H(e,t)},K:function(e,t,n){const r=e.getHours()%12;return t==="Ko"?n.ordinalNumber(r,{unit:"hour"}):ne(r,t.length)},k:function(e,t,n){let r=e.getHours();return r===0&&(r=24),t==="ko"?n.ordinalNumber(r,{unit:"hour"}):ne(r,t.length)},m:function(e,t,n){return t==="mo"?n.ordinalNumber(e.getMinutes(),{unit:"minute"}):st.m(e,t)},s:function(e,t,n){return t==="so"?n.ordinalNumber(e.getSeconds(),{unit:"second"}):st.s(e,t)},S:function(e,t){return st.S(e,t)},X:function(e,t,n){const r=e.getTimezoneOffset();if(r===0)return"Z";switch(t){case"X":return va(r);case"XXXX":case"XX":return yt(r);default:return yt(r,":")}},x:function(e,t,n){const r=e.getTimezoneOffset();switch(t){case"x":return va(r);case"xxxx":case"xx":return yt(r);default:return yt(r,":")}},O:function(e,t,n){const r=e.getTimezoneOffset();switch(t){case"O":case"OO":case"OOO":return"GMT"+wa(r,":");default:return"GMT"+yt(r,":")}},z:function(e,t,n){const r=e.getTimezoneOffset();switch(t){case"z":case"zz":case"zzz":return"GMT"+wa(r,":");default:return"GMT"+yt(r,":")}},t:function(e,t,n){const r=Math.trunc(+e/1e3);return ne(r,t.length)},T:function(e,t,n){return ne(+e,t.length)}};function wa(e,t=""){const n=e>0?"-":"+",r=Math.abs(e),a=Math.trunc(r/60),o=r%60;return o===0?n+String(a):n+String(a)+t+ne(o,2)}function va(e,t){return e%60===0?(e>0?"-":"+")+ne(Math.abs(e)/60,2):yt(e,t)}function yt(e,t=""){const n=e>0?"-":"+",r=Math.abs(e),a=ne(Math.trunc(r/60),2),o=ne(r%60,2);return n+a+t+o}const _a=(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"})}},To=(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"})}},xd=(e,t)=>{const n=e.match(/(P+)(p+)?/)||[],r=n[1],a=n[2];if(!a)return _a(e,t);let o;switch(r){case"P":o=t.dateTime({width:"short"});break;case"PP":o=t.dateTime({width:"medium"});break;case"PPP":o=t.dateTime({width:"long"});break;default:o=t.dateTime({width:"full"});break}return o.replace("{{date}}",_a(r,t)).replace("{{time}}",To(a,t))},kd={p:To,P:xd},wd=/^D+$/,vd=/^Y+$/,_d=["D","DD","YY","YYYY"];function Nd(e){return wd.test(e)}function Sd(e){return vd.test(e)}function Md(e,t,n){const r=jd(e,t,n);if(console.warn(r),_d.includes(e))throw new RangeError(r)}function jd(e,t,n){const r=e[0]==="Y"?"years":"days of the month";return`Use \`${e.toLowerCase()}\` instead of \`${e}\` (in \`${t}\`) for formatting ${r} to the input \`${n}\`; see: https://github.com/date-fns/date-fns/blob/master/docs/unicodeTokens.md`}const Dd=/[yYQqMLwIdDecihHKkms]o|(\w)\1*|''|'(''|[^'])+('|$)|./g,Cd=/P+p+|P+|p+|''|'(''|[^'])+('|$)|./g,Td=/^'([^]*?)'?$/,Od=/''/g,Ad=/[a-zA-Z]/;function Ue(e,t,n){const r=an(),a=n?.locale??r.locale??Ft,o=n?.firstWeekContainsDate??n?.locale?.options?.firstWeekContainsDate??r.firstWeekContainsDate??r.locale?.options?.firstWeekContainsDate??1,l=n?.weekStartsOn??n?.locale?.options?.weekStartsOn??r.weekStartsOn??r.locale?.options?.weekStartsOn??0,i=re(e,n?.in);if(!Ac(i))throw new RangeError("Invalid time value");let c=t.match(Cd).map(u=>{const f=u[0];if(f==="p"||f==="P"){const h=kd[f];return h(u,a.formatLong)}return u}).join("").match(Dd).map(u=>{if(u==="''")return{isToken:!1,value:"'"};const f=u[0];if(f==="'")return{isToken:!1,value:Ed(u)};if(ka[f])return{isToken:!0,value:u};if(f.match(Ad))throw new RangeError("Format string contains an unescaped latin alphabet character `"+f+"`");return{isToken:!1,value:u}});a.localize.preprocessor&&(c=a.localize.preprocessor(i,c));const d={firstWeekContainsDate:o,weekStartsOn:l,locale:a};return c.map(u=>{if(!u.isToken)return u.value;const f=u.value;(!n?.useAdditionalWeekYearTokens&&Sd(f)||!n?.useAdditionalDayOfYearTokens&&Nd(f))&&Md(f,t,String(e));const h=ka[f[0]];return h(i,f,a.localize,d)}).join("")}function Ed(e){const t=e.match(Td);return t?t[1].replace(Od,"'"):e}function Fd(e,t){const n=re(e,t?.in),r=n.getFullYear(),a=n.getMonth(),o=ue(n,0);return o.setFullYear(r,a+1,0),o.setHours(0,0,0,0),o.getDate()}function Wd(e,t){return re(e,t?.in).getMonth()}function Id(e,t){return re(e,t?.in).getFullYear()}function Pd(e,t){return+re(e)>+re(t)}function Ld(e,t){return+re(e)<+re(t)}function Bd(e,t,n){const[r,a]=Bt(n?.in,e,t);return r.getFullYear()===a.getFullYear()&&r.getMonth()===a.getMonth()}function Rd(e,t,n){const[r,a]=Bt(n?.in,e,t);return r.getFullYear()===a.getFullYear()}function $d(e,t,n){const r=re(e,n?.in),a=r.getFullYear(),o=r.getDate(),l=ue(e,0);l.setFullYear(a,t,15),l.setHours(0,0,0,0);const i=Fd(l);return r.setMonth(t,Math.min(o,i)),r}function Yd(e,t,n){const r=re(e,n?.in);return isNaN(+r)?ue(e,NaN):(r.setFullYear(t),r)}const Na=5,Hd=4;function Ud(e,t){const n=t.startOfMonth(e),r=n.getDay()>0?n.getDay():7,a=t.addDays(e,-r+1),o=t.addDays(a,Na*7-1);return t.getMonth(e)===t.getMonth(o)?Na:Hd}function Oo(e,t){const n=t.startOfMonth(e),r=n.getDay();return r===1?n:r===0?t.addDays(n,-6):t.addDays(n,-1*(r-1))}function zd(e,t){const n=Oo(e,t),r=Ud(e,t);return t.addDays(n,r*7-1)}const Ao={...Ft,labels:{labelDayButton:(e,t,n,r)=>{let a;r&&typeof r.format=="function"?a=r.format.bind(r):a=(l,i)=>Ue(l,i,{locale:Ft,...n});let o=a(e,"PPPP");return t.today&&(o=`Today, ${o}`),t.selected&&(o=`${o}, selected`),o},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 r;return n&&typeof n.format=="function"?r=n.format.bind(n):r=(a,o)=>Ue(a,o,{locale:Ft,...t}),r(e,"LLLL yyyy")},labelGridcell:(e,t,n,r)=>{let a;r&&typeof r.format=="function"?a=r.format.bind(r):a=(l,i)=>Ue(l,i,{locale:Ft,...n});let o=a(e,"PPPP");return t?.today&&(o=`Today, ${o}`),o},labelNav:"Navigation bar",labelWeekNumberHeader:"Week Number",labelWeekday:(e,t,n)=>{let r;return n&&typeof n.format=="function"?r=n.format.bind(n):r=(a,o)=>Ue(a,o,{locale:Ft,...t}),r(e,"cccc")}}};class Me{constructor(t,n){this.Date=Date,this.today=()=>this.overrides?.today?this.overrides.today():this.options.timeZone?pe.tz(this.options.timeZone):new this.Date,this.newDate=(r,a,o)=>this.overrides?.newDate?this.overrides.newDate(r,a,o):this.options.timeZone?new pe(r,a,o,this.options.timeZone):new Date(r,a,o),this.addDays=(r,a)=>this.overrides?.addDays?this.overrides.addDays(r,a):wo(r,a),this.addMonths=(r,a)=>this.overrides?.addMonths?this.overrides.addMonths(r,a):vo(r,a),this.addWeeks=(r,a)=>this.overrides?.addWeeks?this.overrides.addWeeks(r,a):jc(r,a),this.addYears=(r,a)=>this.overrides?.addYears?this.overrides.addYears(r,a):Dc(r,a),this.differenceInCalendarDays=(r,a)=>this.overrides?.differenceInCalendarDays?this.overrides.differenceInCalendarDays(r,a):Nr(r,a),this.differenceInCalendarMonths=(r,a)=>this.overrides?.differenceInCalendarMonths?this.overrides.differenceInCalendarMonths(r,a):So(r,a),this.eachMonthOfInterval=r=>this.overrides?.eachMonthOfInterval?this.overrides.eachMonthOfInterval(r):Fc(r),this.eachYearOfInterval=r=>{const a=this.overrides?.eachYearOfInterval?this.overrides.eachYearOfInterval(r):Pc(r),o=new Set(a.map(i=>this.getYear(i)));if(o.size===a.length)return a;const l=[];return o.forEach(i=>{l.push(new Date(i,0,1))}),l},this.endOfBroadcastWeek=r=>this.overrides?.endOfBroadcastWeek?this.overrides.endOfBroadcastWeek(r):zd(r,this),this.endOfISOWeek=r=>this.overrides?.endOfISOWeek?this.overrides.endOfISOWeek(r):Lc(r),this.endOfMonth=r=>this.overrides?.endOfMonth?this.overrides.endOfMonth(r):Ec(r),this.endOfWeek=(r,a)=>this.overrides?.endOfWeek?this.overrides.endOfWeek(r,a):Do(r,this.options),this.endOfYear=r=>this.overrides?.endOfYear?this.overrides.endOfYear(r):Ic(r),this.format=(r,a,o)=>{const l=this.overrides?.format?this.overrides.format(r,a,this.options):Ue(r,a,this.options);return this.options.numerals&&this.options.numerals!=="latn"?this.replaceDigits(l):l},this.getISOWeek=r=>this.overrides?.getISOWeek?this.overrides.getISOWeek(r):Sr(r),this.getMonth=(r,a)=>this.overrides?.getMonth?this.overrides.getMonth(r,this.options):Wd(r,this.options),this.getYear=(r,a)=>this.overrides?.getYear?this.overrides.getYear(r,this.options):Id(r,this.options),this.getWeek=(r,a)=>this.overrides?.getWeek?this.overrides.getWeek(r,this.options):Mr(r,this.options),this.isAfter=(r,a)=>this.overrides?.isAfter?this.overrides.isAfter(r,a):Pd(r,a),this.isBefore=(r,a)=>this.overrides?.isBefore?this.overrides.isBefore(r,a):Ld(r,a),this.isDate=r=>this.overrides?.isDate?this.overrides.isDate(r):No(r),this.isSameDay=(r,a)=>this.overrides?.isSameDay?this.overrides.isSameDay(r,a):Oc(r,a),this.isSameMonth=(r,a)=>this.overrides?.isSameMonth?this.overrides.isSameMonth(r,a):Bd(r,a),this.isSameYear=(r,a)=>this.overrides?.isSameYear?this.overrides.isSameYear(r,a):Rd(r,a),this.max=r=>this.overrides?.max?this.overrides.max(r):Cc(r),this.min=r=>this.overrides?.min?this.overrides.min(r):Tc(r),this.setMonth=(r,a)=>this.overrides?.setMonth?this.overrides.setMonth(r,a):$d(r,a),this.setYear=(r,a)=>this.overrides?.setYear?this.overrides.setYear(r,a):Yd(r,a),this.startOfBroadcastWeek=(r,a)=>this.overrides?.startOfBroadcastWeek?this.overrides.startOfBroadcastWeek(r,this):Oo(r,this),this.startOfDay=r=>this.overrides?.startOfDay?this.overrides.startOfDay(r):rn(r),this.startOfISOWeek=r=>this.overrides?.startOfISOWeek?this.overrides.startOfISOWeek(r):nn(r),this.startOfMonth=r=>this.overrides?.startOfMonth?this.overrides.startOfMonth(r):Wc(r),this.startOfWeek=(r,a)=>this.overrides?.startOfWeek?this.overrides.startOfWeek(r,this.options):Pt(r,this.options),this.startOfYear=r=>this.overrides?.startOfYear?this.overrides.startOfYear(r):jo(r),this.options={locale:Ao,...t},this.overrides=n}getDigitMap(){const{numerals:t="latn"}=this.options,n=new Intl.NumberFormat("en-US",{numberingSystem:t}),r={};for(let a=0;a<10;a++)r[a.toString()]=n.format(a);return r}replaceDigits(t){const n=this.getDigitMap();return t.replace(/\d/g,r=>n[r]||r)}formatNumber(t){return this.replaceDigits(t.toString())}getMonthYearOrder(){const t=this.options.locale?.code;return t&&Me.yearFirstLocales.has(t)?"year-first":"month-first"}formatMonthYear(t){const{locale:n,timeZone:r,numerals:a}=this.options,o=n?.code;if(o&&Me.yearFirstLocales.has(o))try{return new Intl.DateTimeFormat(o,{month:"long",year:"numeric",timeZone:r,numberingSystem:a}).format(t)}catch{}const l=this.getMonthYearOrder()==="year-first"?"y LLLL":"LLLL y";return this.format(t,l)}}Me.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 ze=new Me;class Eo{constructor(t,n,r=ze){this.date=t,this.displayMonth=n,this.outside=!!(n&&!r.isSameMonth(t,n)),this.dateLib=r,this.isoDate=r.format(t,"yyyy-MM-dd"),this.displayMonthId=r.format(n,"yyyy-MM"),this.dateMonthId=r.format(t,"yyyy-MM")}isEqualTo(t){return this.dateLib.isSameDay(t.date,this.date)&&this.dateLib.isSameMonth(t.displayMonth,this.displayMonth)}}class qd{constructor(t,n){this.date=t,this.weeks=n}}class Vd{constructor(t,n){this.days=n,this.weekNumber=t}}function Gd(e){return F.createElement("button",{...e})}function Kd(e){return F.createElement("span",{...e})}function Xd(e){const{size:t=24,orientation:n="left",className:r}=e;return F.createElement("svg",{className:r,width:t,height:t,viewBox:"0 0 24 24"},n==="up"&&F.createElement("polygon",{points:"6.77 17 12.5 11.43 18.24 17 20 15.28 12.5 8 5 15.28"}),n==="down"&&F.createElement("polygon",{points:"6.77 8 12.5 13.57 18.24 8 20 9.72 12.5 17 5 9.72"}),n==="left"&&F.createElement("polygon",{points:"16 18.112 9.81111111 12 16 5.87733333 14.0888889 4 6 12 14.0888889 20"}),n==="right"&&F.createElement("polygon",{points:"8 18.112 14.18888889 12 8 5.87733333 9.91111111 4 18 12 9.91111111 20"}))}function Qd(e){const{day:t,modifiers:n,...r}=e;return F.createElement("td",{...r})}function Jd(e){const{day:t,modifiers:n,...r}=e,a=F.useRef(null);return F.useEffect(()=>{n.focused&&a.current?.focus()},[n.focused]),F.createElement("button",{ref:a,...r})}var $;(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"})($||($={}));var le;(function(e){e.disabled="disabled",e.hidden="hidden",e.outside="outside",e.focused="focused",e.today="today"})(le||(le={}));var We;(function(e){e.range_end="range_end",e.range_middle="range_middle",e.range_start="range_start",e.selected="selected"})(We||(We={}));var Ne;(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"})(Ne||(Ne={}));function Zd(e){const{options:t,className:n,components:r,classNames:a,...o}=e,l=[a[$.Dropdown],n].join(" "),i=t?.find(({value:c})=>c===o.value);return F.createElement("span",{"data-disabled":o.disabled,className:a[$.DropdownRoot]},F.createElement(r.Select,{className:l,...o},t?.map(({value:c,label:d,disabled:u})=>F.createElement(r.Option,{key:c,value:c,disabled:u},d))),F.createElement("span",{className:a[$.CaptionLabel],"aria-hidden":!0},i?.label,F.createElement(r.Chevron,{orientation:"down",size:18,className:a[$.Chevron]})))}function eu(e){return F.createElement("div",{...e})}function tu(e){return F.createElement("div",{...e})}function nu(e){const{calendarMonth:t,displayIndex:n,...r}=e;return F.createElement("div",{...r},e.children)}function ru(e){const{calendarMonth:t,displayIndex:n,...r}=e;return F.createElement("div",{...r})}function au(e){return F.createElement("table",{...e})}function ou(e){return F.createElement("div",{...e})}const Fo=m.createContext(void 0);function on(){const e=m.useContext(Fo);if(e===void 0)throw new Error("useDayPicker() must be used within a custom component.");return e}function su(e){const{components:t}=on();return F.createElement(t.Dropdown,{...e})}function iu(e){const{onPreviousClick:t,onNextClick:n,previousMonth:r,nextMonth:a,...o}=e,{components:l,classNames:i,labels:{labelPrevious:c,labelNext:d}}=on(),u=m.useCallback(h=>{a&&n?.(h)},[a,n]),f=m.useCallback(h=>{r&&t?.(h)},[r,t]);return F.createElement("nav",{...o},F.createElement(l.PreviousMonthButton,{type:"button",className:i[$.PreviousMonthButton],tabIndex:r?void 0:-1,"aria-disabled":r?void 0:!0,"aria-label":c(r),onClick:f},F.createElement(l.Chevron,{disabled:r?void 0:!0,className:i[$.Chevron],orientation:"left"})),F.createElement(l.NextMonthButton,{type:"button",className:i[$.NextMonthButton],tabIndex:a?void 0:-1,"aria-disabled":a?void 0:!0,"aria-label":d(a),onClick:u},F.createElement(l.Chevron,{disabled:a?void 0:!0,orientation:"right",className:i[$.Chevron]})))}function lu(e){const{components:t}=on();return F.createElement(t.Button,{...e})}function cu(e){return F.createElement("option",{...e})}function du(e){const{components:t}=on();return F.createElement(t.Button,{...e})}function uu(e){const{rootRef:t,...n}=e;return F.createElement("div",{...n,ref:t})}function fu(e){return F.createElement("select",{...e})}function mu(e){const{week:t,...n}=e;return F.createElement("tr",{...n})}function hu(e){return F.createElement("th",{...e})}function gu(e){return F.createElement("thead",{"aria-hidden":!0},F.createElement("tr",{...e}))}function yu(e){const{week:t,...n}=e;return F.createElement("th",{...n})}function pu(e){return F.createElement("th",{...e})}function bu(e){return F.createElement("tbody",{...e})}function xu(e){const{components:t}=on();return F.createElement(t.Dropdown,{...e})}const ku=Object.freeze(Object.defineProperty({__proto__:null,Button:Gd,CaptionLabel:Kd,Chevron:Xd,Day:Qd,DayButton:Jd,Dropdown:Zd,DropdownNav:eu,Footer:tu,Month:nu,MonthCaption:ru,MonthGrid:au,Months:ou,MonthsDropdown:su,Nav:iu,NextMonthButton:lu,Option:cu,PreviousMonthButton:du,Root:uu,Select:fu,Week:mu,WeekNumber:yu,WeekNumberHeader:pu,Weekday:hu,Weekdays:gu,Weeks:bu,YearsDropdown:xu},Symbol.toStringTag,{value:"Module"}));function Ze(e,t,n=!1,r=ze){let{from:a,to:o}=e;const{differenceInCalendarDays:l,isSameDay:i}=r;return a&&o?(l(o,a)<0&&([a,o]=[o,a]),l(t,a)>=(n?1:0)&&l(o,t)>=(n?1:0)):!n&&o?i(o,t):!n&&a?i(a,t):!1}function jr(e){return!!(e&&typeof e=="object"&&"before"in e&&"after"in e)}function jn(e){return!!(e&&typeof e=="object"&&"from"in e)}function Dr(e){return!!(e&&typeof e=="object"&&"after"in e)}function Cr(e){return!!(e&&typeof e=="object"&&"before"in e)}function Wo(e){return!!(e&&typeof e=="object"&&"dayOfWeek"in e)}function Io(e,t){return Array.isArray(e)&&e.every(t.isDate)}function et(e,t,n=ze){const r=Array.isArray(t)?t:[t],{isSameDay:a,differenceInCalendarDays:o,isAfter:l}=n;return r.some(i=>{if(typeof i=="boolean")return i;if(n.isDate(i))return a(e,i);if(Io(i,n))return i.some(c=>a(e,c));if(jn(i))return Ze(i,e,!1,n);if(Wo(i))return Array.isArray(i.dayOfWeek)?i.dayOfWeek.includes(e.getDay()):i.dayOfWeek===e.getDay();if(jr(i)){const c=o(i.before,e),d=o(i.after,e),u=c>0,f=d<0;return l(i.before,i.after)?f&&u:u||f}return Dr(i)?o(e,i.after)>0:Cr(i)?o(i.before,e)>0:typeof i=="function"?i(e):!1})}function wu(e,t,n,r,a){const{disabled:o,hidden:l,modifiers:i,showOutsideDays:c,broadcastCalendar:d,today:u=a.today()}=t,{isSameDay:f,isSameMonth:h,startOfMonth:g,isBefore:b,endOfMonth:p,isAfter:k}=a,v=n&&g(n),x=r&&p(r),_={[le.focused]:[],[le.outside]:[],[le.disabled]:[],[le.hidden]:[],[le.today]:[]},D={};for(const N of e){const{date:w,displayMonth:T}=N,S=!!(T&&!h(w,T)),O=!!(v&&b(w,v)),E=!!(x&&k(w,x)),A=!!(o&&et(w,o,a)),K=!!(l&&et(w,l,a))||O||E||!d&&!c&&S||d&&c===!1&&S,I=f(w,u);S&&_.outside.push(N),A&&_.disabled.push(N),K&&_.hidden.push(N),I&&_.today.push(N),i&&Object.keys(i).forEach(P=>{const C=i?.[P];C&&et(w,C,a)&&(D[P]?D[P].push(N):D[P]=[N])})}return N=>{const w={[le.focused]:!1,[le.disabled]:!1,[le.hidden]:!1,[le.outside]:!1,[le.today]:!1},T={};for(const S in _){const O=_[S];w[S]=O.some(E=>E===N)}for(const S in D)T[S]=D[S].some(O=>O===N);return{...w,...T}}}function vu(e,t,n={}){return Object.entries(e).filter(([,a])=>a===!0).reduce((a,[o])=>(n[o]?a.push(n[o]):t[le[o]]?a.push(t[le[o]]):t[We[o]]&&a.push(t[We[o]]),a),[t[$.Day]])}function _u(e){return{...ku,...e}}function Nu(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,r])=>{n.startsWith("data-")&&(t[n]=r)}),t}function Su(){const e={};for(const t in $)e[$[t]]=`rdp-${$[t]}`;for(const t in le)e[le[t]]=`rdp-${le[t]}`;for(const t in We)e[We[t]]=`rdp-${We[t]}`;for(const t in Ne)e[Ne[t]]=`rdp-${Ne[t]}`;return e}function Po(e,t,n){return(n??new Me(t)).formatMonthYear(e)}const Mu=Po;function ju(e,t,n){return(n??new Me(t)).format(e,"d")}function Du(e,t=ze){return t.format(e,"LLLL")}function Cu(e,t,n){return(n??new Me(t)).format(e,"cccccc")}function Tu(e,t=ze){return e<10?t.formatNumber(`0${e.toLocaleString()}`):t.formatNumber(`${e.toLocaleString()}`)}function Ou(){return""}function Lo(e,t=ze){return t.format(e,"yyyy")}const Au=Lo,Eu=Object.freeze(Object.defineProperty({__proto__:null,formatCaption:Po,formatDay:ju,formatMonthCaption:Mu,formatMonthDropdown:Du,formatWeekNumber:Tu,formatWeekNumberHeader:Ou,formatWeekdayName:Cu,formatYearCaption:Au,formatYearDropdown:Lo},Symbol.toStringTag,{value:"Module"}));function Fu(e){return e?.formatMonthCaption&&!e.formatCaption&&(e.formatCaption=e.formatMonthCaption),e?.formatYearCaption&&!e.formatYearDropdown&&(e.formatYearDropdown=e.formatYearCaption),{...Eu,...e}}function Tr(e,t,n,r){let a=(r??new Me(n)).format(e,"PPPP");return t.today&&(a=`Today, ${a}`),t.selected&&(a=`${a}, selected`),a}const Wu=Tr;function Or(e,t,n){return(n??new Me(t)).formatMonthYear(e)}const Iu=Or;function Bo(e,t,n,r){let a=(r??new Me(n)).format(e,"PPPP");return t?.today&&(a=`Today, ${a}`),a}function Ro(e){return"Choose the Month"}function $o(){return""}const Pu="Go to the Next Month";function Yo(e,t){return Pu}function Ho(e){return"Go to the Previous Month"}function Uo(e,t,n){return(n??new Me(t)).format(e,"cccc")}function zo(e,t){return`Week ${e}`}function qo(e){return"Week Number"}function Vo(e){return"Choose the Year"}const Lu=Object.freeze(Object.defineProperty({__proto__:null,labelCaption:Iu,labelDay:Wu,labelDayButton:Tr,labelGrid:Or,labelGridcell:Bo,labelMonthDropdown:Ro,labelNav:$o,labelNext:Yo,labelPrevious:Ho,labelWeekNumber:zo,labelWeekNumberHeader:qo,labelWeekday:Uo,labelYearDropdown:Vo},Symbol.toStringTag,{value:"Module"})),Fe=(e,t,n)=>t||(n?typeof n=="function"?n:(...r)=>n:e);function Bu(e,t){const n=t.locale?.labels??{};return{...Lu,...e??{},labelDayButton:Fe(Tr,e?.labelDayButton,n.labelDayButton),labelMonthDropdown:Fe(Ro,e?.labelMonthDropdown,n.labelMonthDropdown),labelNext:Fe(Yo,e?.labelNext,n.labelNext),labelPrevious:Fe(Ho,e?.labelPrevious,n.labelPrevious),labelWeekNumber:Fe(zo,e?.labelWeekNumber,n.labelWeekNumber),labelYearDropdown:Fe(Vo,e?.labelYearDropdown,n.labelYearDropdown),labelGrid:Fe(Or,e?.labelGrid,n.labelGrid),labelGridcell:Fe(Bo,e?.labelGridcell,n.labelGridcell),labelNav:Fe($o,e?.labelNav,n.labelNav),labelWeekNumberHeader:Fe(qo,e?.labelWeekNumberHeader,n.labelWeekNumberHeader),labelWeekday:Fe(Uo,e?.labelWeekday,n.labelWeekday)}}function Ru(e,t,n,r,a){const{startOfMonth:o,startOfYear:l,endOfYear:i,eachMonthOfInterval:c,getMonth:d}=a;return c({start:l(e),end:i(e)}).map(h=>{const g=r.formatMonthDropdown(h,a),b=d(h),p=t&&h<o(t)||n&&h>o(n)||!1;return{value:b,label:g,disabled:p}})}function $u(e,t={},n={}){let r={...t?.[$.Day]};return Object.entries(e).filter(([,a])=>a===!0).forEach(([a])=>{r={...r,...n?.[a]}}),r}function Yu(e,t,n,r){const a=r??e.today(),o=n?e.startOfBroadcastWeek(a,e):t?e.startOfISOWeek(a):e.startOfWeek(a),l=[];for(let i=0;i<7;i++){const c=e.addDays(o,i);l.push(c)}return l}function Hu(e,t,n,r,a=!1){if(!e||!t)return;const{startOfYear:o,endOfYear:l,eachYearOfInterval:i,getYear:c}=r,d=o(e),u=l(t),f=i({start:d,end:u});return a&&f.reverse(),f.map(h=>{const g=n.formatYearDropdown(h,r);return{value:c(h),label:g,disabled:!1}})}function Uu(e,t={}){const{weekStartsOn:n,locale:r}=t,a=n??r?.options?.weekStartsOn??0,o=i=>{const c=typeof i=="number"||typeof i=="string"?new Date(i):i;return new pe(c.getFullYear(),c.getMonth(),c.getDate(),12,0,0,e)},l=i=>{const c=o(i);return new Date(c.getFullYear(),c.getMonth(),c.getDate(),0,0,0,0)};return{today:()=>o(pe.tz(e)),newDate:(i,c,d)=>new pe(i,c,d,12,0,0,e),startOfDay:i=>o(i),startOfWeek:(i,c)=>{const d=o(i),u=c?.weekStartsOn??a,f=(d.getDay()-u+7)%7;return d.setDate(d.getDate()-f),d},startOfISOWeek:i=>{const c=o(i),d=(c.getDay()-1+7)%7;return c.setDate(c.getDate()-d),c},startOfMonth:i=>{const c=o(i);return c.setDate(1),c},startOfYear:i=>{const c=o(i);return c.setMonth(0,1),c},endOfWeek:(i,c)=>{const d=o(i),h=(((c?.weekStartsOn??a)+6)%7-d.getDay()+7)%7;return d.setDate(d.getDate()+h),d},endOfISOWeek:i=>{const c=o(i),d=(7-c.getDay())%7;return c.setDate(c.getDate()+d),c},endOfMonth:i=>{const c=o(i);return c.setMonth(c.getMonth()+1,0),c},endOfYear:i=>{const c=o(i);return c.setMonth(11,31),c},eachMonthOfInterval:i=>{const c=o(i.start),d=o(i.end),u=[],f=new pe(c.getFullYear(),c.getMonth(),1,12,0,0,e),h=d.getFullYear()*12+d.getMonth();for(;f.getFullYear()*12+f.getMonth()<=h;)u.push(new pe(f,e)),f.setMonth(f.getMonth()+1,1);return u},addDays:(i,c)=>{const d=o(i);return d.setDate(d.getDate()+c),d},addWeeks:(i,c)=>{const d=o(i);return d.setDate(d.getDate()+c*7),d},addMonths:(i,c)=>{const d=o(i);return d.setMonth(d.getMonth()+c),d},addYears:(i,c)=>{const d=o(i);return d.setFullYear(d.getFullYear()+c),d},eachYearOfInterval:i=>{const c=o(i.start),d=o(i.end),u=[],f=new pe(c.getFullYear(),0,1,12,0,0,e);for(;f.getFullYear()<=d.getFullYear();)u.push(new pe(f,e)),f.setFullYear(f.getFullYear()+1,0,1);return u},getWeek:(i,c)=>{const d=l(i);return Mr(d,{weekStartsOn:c?.weekStartsOn??a,firstWeekContainsDate:c?.firstWeekContainsDate??r?.options?.firstWeekContainsDate??1})},getISOWeek:i=>{const c=l(i);return Sr(c)},differenceInCalendarDays:(i,c)=>{const d=l(i),u=l(c);return Nr(d,u)},differenceInCalendarMonths:(i,c)=>{const d=l(i),u=l(c);return So(d,u)}}}const sn=e=>e instanceof HTMLElement?e:null,Qn=e=>[...e.querySelectorAll("[data-animated-month]")??[]],zu=e=>sn(e.querySelector("[data-animated-month]")),Jn=e=>sn(e.querySelector("[data-animated-caption]")),Zn=e=>sn(e.querySelector("[data-animated-weeks]")),qu=e=>sn(e.querySelector("[data-animated-nav]")),Vu=e=>sn(e.querySelector("[data-animated-weekdays]"));function Gu(e,t,{classNames:n,months:r,focused:a,dateLib:o}){const l=m.useRef(null),i=m.useRef(r),c=m.useRef(!1);m.useLayoutEffect(()=>{const d=i.current;if(i.current=r,!t||!e.current||!(e.current instanceof HTMLElement)||r.length===0||d.length===0||r.length!==d.length)return;const u=o.isSameMonth(r[0].date,d[0].date),f=o.isAfter(r[0].date,d[0].date),h=f?n[Ne.caption_after_enter]:n[Ne.caption_before_enter],g=f?n[Ne.weeks_after_enter]:n[Ne.weeks_before_enter],b=l.current,p=e.current.cloneNode(!0);if(p instanceof HTMLElement?(Qn(p).forEach(_=>{if(!(_ instanceof HTMLElement))return;const D=zu(_);D&&_.contains(D)&&_.removeChild(D);const N=Jn(_);N&&N.classList.remove(h);const w=Zn(_);w&&w.classList.remove(g)}),l.current=p):l.current=null,c.current||u||a)return;const k=b instanceof HTMLElement?Qn(b):[],v=Qn(e.current);if(v?.every(x=>x instanceof HTMLElement)&&k&&k.every(x=>x instanceof HTMLElement)){c.current=!0,e.current.style.isolation="isolate";const x=qu(e.current);x&&(x.style.zIndex="1"),v.forEach((_,D)=>{const N=k[D];if(!N)return;_.style.position="relative",_.style.overflow="hidden";const w=Jn(_);w&&w.classList.add(h);const T=Zn(_);T&&T.classList.add(g);const S=()=>{c.current=!1,e.current&&(e.current.style.isolation=""),x&&(x.style.zIndex=""),w&&w.classList.remove(h),T&&T.classList.remove(g),_.style.position="",_.style.overflow="",_.contains(N)&&_.removeChild(N)};N.style.pointerEvents="none",N.style.position="absolute",N.style.overflow="hidden",N.setAttribute("aria-hidden","true");const O=Vu(N);O&&(O.style.opacity="0");const E=Jn(N);E&&(E.classList.add(f?n[Ne.caption_before_exit]:n[Ne.caption_after_exit]),E.addEventListener("animationend",S));const A=Zn(N);A&&A.classList.add(f?n[Ne.weeks_before_exit]:n[Ne.weeks_after_exit]),_.insertBefore(N,_.firstChild)})}})}function Ku(e,t,n,r){const a=e[0],o=e[e.length-1],{ISOWeek:l,fixedWeeks:i,broadcastCalendar:c}=n??{},{addDays:d,differenceInCalendarDays:u,differenceInCalendarMonths:f,endOfBroadcastWeek:h,endOfISOWeek:g,endOfMonth:b,endOfWeek:p,isAfter:k,startOfBroadcastWeek:v,startOfISOWeek:x,startOfWeek:_}=r,D=c?v(a,r):l?x(a):_(a),N=c?h(o):l?g(b(o)):p(b(o)),w=t&&(c?h(t):l?g(t):p(t)),T=w&&k(N,w)?w:N,S=u(T,D),O=f(o,a)+1,E=[];for(let I=0;I<=S;I++){const P=d(D,I);E.push(P)}const K=(c?35:42)*O;if(i&&E.length<K){const I=K-E.length;for(let P=0;P<I;P++){const C=d(E[E.length-1],1);E.push(C)}}return E}function Xu(e){const t=[];return e.reduce((n,r)=>{const a=r.weeks.reduce((o,l)=>o.concat(l.days.slice()),t.slice());return n.concat(a.slice())},t.slice())}function Qu(e,t,n,r){const{numberOfMonths:a=1}=n,o=[];for(let l=0;l<a;l++){const i=r.addMonths(e,l);if(t&&i>t)break;o.push(i)}return o}function Sa(e,t,n,r){const{month:a,defaultMonth:o,today:l=r.today(),numberOfMonths:i=1}=e;let c=a||o||l;const{differenceInCalendarMonths:d,addMonths:u,startOfMonth:f}=r;if(n&&d(n,c)<i-1){const h=-1*(i-1);c=u(n,h)}return t&&d(c,t)<0&&(c=t),f(c)}function Ju(e,t,n,r){const{addDays:a,endOfBroadcastWeek:o,endOfISOWeek:l,endOfMonth:i,endOfWeek:c,getISOWeek:d,getWeek:u,startOfBroadcastWeek:f,startOfISOWeek:h,startOfWeek:g}=r,b=e.reduce((p,k)=>{const v=n.broadcastCalendar?f(k,r):n.ISOWeek?h(k):g(k),x=n.broadcastCalendar?o(k):n.ISOWeek?l(i(k)):c(i(k)),_=t.filter(T=>T>=v&&T<=x),D=n.broadcastCalendar?35:42;if(n.fixedWeeks&&_.length<D){const T=t.filter(S=>{const O=D-_.length;return S>x&&S<=a(x,O)});_.push(...T)}const N=_.reduce((T,S)=>{const O=n.ISOWeek?d(S):u(S),E=T.find(K=>K.weekNumber===O),A=new Eo(S,k,r);return E?E.days.push(A):T.push(new Vd(O,[A])),T},[]),w=new qd(k,N);return p.push(w),p},[]);return n.reverseMonths?b.reverse():b}function Zu(e,t){let{startMonth:n,endMonth:r}=e;const{startOfYear:a,startOfDay:o,startOfMonth:l,endOfMonth:i,addYears:c,endOfYear:d,newDate:u,today:f}=t,{fromYear:h,toYear:g,fromMonth:b,toMonth:p}=e;!n&&b&&(n=b),!n&&h&&(n=t.newDate(h,0,1)),!r&&p&&(r=p),!r&&g&&(r=u(g,11,31));const k=e.captionLayout==="dropdown"||e.captionLayout==="dropdown-years";return n?n=l(n):h?n=u(h,0,1):!n&&k&&(n=a(c(e.today??f(),-100))),r?r=i(r):g?r=u(g,11,31):!r&&k&&(r=d(e.today??f())),[n&&o(n),r&&o(r)]}function ef(e,t,n,r){if(n.disableNavigation)return;const{pagedNavigation:a,numberOfMonths:o=1}=n,{startOfMonth:l,addMonths:i,differenceInCalendarMonths:c}=r,d=a?o:1,u=l(e);if(!t)return i(u,d);if(!(c(t,e)<o))return i(u,d)}function tf(e,t,n,r){if(n.disableNavigation)return;const{pagedNavigation:a,numberOfMonths:o}=n,{startOfMonth:l,addMonths:i,differenceInCalendarMonths:c}=r,d=a?o??1:1,u=l(e);if(!t)return i(u,-d);if(!(c(u,t)<=0))return i(u,-d)}function nf(e){const t=[];return e.reduce((n,r)=>n.concat(r.weeks.slice()),t.slice())}function Dn(e,t){const[n,r]=m.useState(e);return[t===void 0?n:t,r]}function rf(e,t){const[n,r]=Zu(e,t),{startOfMonth:a,endOfMonth:o}=t,l=Sa(e,n,r,t),[i,c]=Dn(l,e.month?l:void 0);m.useEffect(()=>{const D=Sa(e,n,r,t);c(D)},[e.timeZone]);const{months:d,weeks:u,days:f,previousMonth:h,nextMonth:g}=m.useMemo(()=>{const D=Qu(i,r,{numberOfMonths:e.numberOfMonths},t),N=Ku(D,e.endMonth?o(e.endMonth):void 0,{ISOWeek:e.ISOWeek,fixedWeeks:e.fixedWeeks,broadcastCalendar:e.broadcastCalendar},t),w=Ju(D,N,{broadcastCalendar:e.broadcastCalendar,fixedWeeks:e.fixedWeeks,ISOWeek:e.ISOWeek,reverseMonths:e.reverseMonths},t),T=nf(w),S=Xu(w),O=tf(i,n,e,t),E=ef(i,r,e,t);return{months:w,weeks:T,days:S,previousMonth:O,nextMonth:E}},[t,i.getTime(),r?.getTime(),n?.getTime(),e.disableNavigation,e.broadcastCalendar,e.endMonth?.getTime(),e.fixedWeeks,e.ISOWeek,e.numberOfMonths,e.pagedNavigation,e.reverseMonths]),{disableNavigation:b,onMonthChange:p}=e,k=D=>u.some(N=>N.days.some(w=>w.isEqualTo(D))),v=D=>{if(b)return;let N=a(D);n&&N<a(n)&&(N=a(n)),r&&N>a(r)&&(N=a(r)),c(N),p?.(N)};return{months:d,weeks:u,days:f,navStart:n,navEnd:r,previousMonth:h,nextMonth:g,goToMonth:v,goToDay:D=>{k(D)||v(D.date)}}}var $e;(function(e){e[e.Today=0]="Today",e[e.Selected=1]="Selected",e[e.LastFocused=2]="LastFocused",e[e.FocusedModifier=3]="FocusedModifier"})($e||($e={}));function Ma(e){return!e[le.disabled]&&!e[le.hidden]&&!e[le.outside]}function af(e,t,n,r){let a,o=-1;for(const l of e){const i=t(l);Ma(i)&&(i[le.focused]&&o<$e.FocusedModifier?(a=l,o=$e.FocusedModifier):r?.isEqualTo(l)&&o<$e.LastFocused?(a=l,o=$e.LastFocused):n(l.date)&&o<$e.Selected?(a=l,o=$e.Selected):i[le.today]&&o<$e.Today&&(a=l,o=$e.Today))}return a||(a=e.find(l=>Ma(t(l)))),a}function of(e,t,n,r,a,o,l){const{ISOWeek:i,broadcastCalendar:c}=o,{addDays:d,addMonths:u,addWeeks:f,addYears:h,endOfBroadcastWeek:g,endOfISOWeek:b,endOfWeek:p,max:k,min:v,startOfBroadcastWeek:x,startOfISOWeek:_,startOfWeek:D}=l;let w={day:d,week:f,month:u,year:h,startOfWeek:T=>c?x(T,l):i?_(T):D(T),endOfWeek:T=>c?g(T):i?b(T):p(T)}[e](n,t==="after"?1:-1);return t==="before"&&r?w=k([r,w]):t==="after"&&a&&(w=v([a,w])),w}function Go(e,t,n,r,a,o,l,i=0){if(i>365)return;const c=of(e,t,n.date,r,a,o,l),d=!!(o.disabled&&et(c,o.disabled,l)),u=!!(o.hidden&&et(c,o.hidden,l)),f=c,h=new Eo(c,f,l);return!d&&!u?h:Go(e,t,h,r,a,o,l,i+1)}function sf(e,t,n,r,a){const{autoFocus:o}=e,[l,i]=m.useState(),c=af(t.days,n,r||(()=>!1),l),[d,u]=m.useState(o?c:void 0);return{isFocusTarget:p=>!!c?.isEqualTo(p),setFocused:u,focused:d,blur:()=>{i(d),u(void 0)},moveFocus:(p,k)=>{if(!d)return;const v=Go(p,k,d,t.navStart,t.navEnd,e,a);v&&(e.disableNavigation&&!t.days.some(_=>_.isEqualTo(v))||(t.goToDay(v),u(v)))}}}function lf(e,t){const{selected:n,required:r,onSelect:a}=e,[o,l]=Dn(n,a?n:void 0),i=a?n:o,{isSameDay:c}=t,d=g=>i?.some(b=>c(b,g))??!1,{min:u,max:f}=e;return{selected:i,select:(g,b,p)=>{let k=[...i??[]];if(d(g)){if(i?.length===u||r&&i?.length===1)return;k=i?.filter(v=>!c(v,g))}else i?.length===f?k=[g]:k=[...k,g];return a||l(k),a?.(k,g,b,p),k},isSelected:d}}function cf(e,t,n=0,r=0,a=!1,o=ze){const{from:l,to:i}=t||{},{isSameDay:c,isAfter:d,isBefore:u}=o;let f;if(!l&&!i)f={from:e,to:n>0?void 0:e};else if(l&&!i)c(l,e)?n===0?f={from:l,to:e}:a?f={from:l,to:void 0}:f=void 0:u(e,l)?f={from:e,to:l}:f={from:l,to:e};else if(l&&i)if(c(l,e)&&c(i,e))a?f={from:l,to:i}:f=void 0;else if(c(l,e))f={from:l,to:n>0?void 0:e};else if(c(i,e))f={from:e,to:n>0?void 0:e};else if(u(e,l))f={from:e,to:i};else if(d(e,l))f={from:l,to:e};else if(d(e,i))f={from:l,to:e};else throw new Error("Invalid range");if(f?.from&&f?.to){const h=o.differenceInCalendarDays(f.to,f.from);r>0&&h>r?f={from:e,to:void 0}:n>1&&h<n&&(f={from:e,to:void 0})}return f}function df(e,t,n=ze){const r=Array.isArray(t)?t:[t];let a=e.from;const o=n.differenceInCalendarDays(e.to,e.from),l=Math.min(o,6);for(let i=0;i<=l;i++){if(r.includes(a.getDay()))return!0;a=n.addDays(a,1)}return!1}function ja(e,t,n=ze){return Ze(e,t.from,!1,n)||Ze(e,t.to,!1,n)||Ze(t,e.from,!1,n)||Ze(t,e.to,!1,n)}function uf(e,t,n=ze){const r=Array.isArray(t)?t:[t];if(r.filter(i=>typeof i!="function").some(i=>typeof i=="boolean"?i:n.isDate(i)?Ze(e,i,!1,n):Io(i,n)?i.some(c=>Ze(e,c,!1,n)):jn(i)?i.from&&i.to?ja(e,{from:i.from,to:i.to},n):!1:Wo(i)?df(e,i.dayOfWeek,n):jr(i)?n.isAfter(i.before,i.after)?ja(e,{from:n.addDays(i.after,1),to:n.addDays(i.before,-1)},n):et(e.from,i,n)||et(e.to,i,n):Dr(i)||Cr(i)?et(e.from,i,n)||et(e.to,i,n):!1))return!0;const l=r.filter(i=>typeof i=="function");if(l.length){let i=e.from;const c=n.differenceInCalendarDays(e.to,e.from);for(let d=0;d<=c;d++){if(l.some(u=>u(i)))return!0;i=n.addDays(i,1)}}return!1}function ff(e,t){const{disabled:n,excludeDisabled:r,resetOnSelect:a,selected:o,required:l,onSelect:i}=e,[c,d]=Dn(o,i?o:void 0),u=i?o:c;return{selected:u,select:(g,b,p)=>{const{min:k,max:v}=e;let x;if(g){const _=u?.from,D=u?.to,N=!!_&&!!D,w=!!_&&!!D&&t.isSameDay(_,D)&&t.isSameDay(g,_);a&&(N||!u?.from)?!l&&w?x=void 0:x={from:g,to:void 0}:x=cf(g,u,k,v,l,t)}return r&&n&&x?.from&&x.to&&uf({from:x.from,to:x.to},n,t)&&(x.from=g,x.to=void 0),i||d(x),i?.(x,g,b,p),x},isSelected:g=>u&&Ze(u,g,!1,t)}}function mf(e,t){const{selected:n,required:r,onSelect:a}=e,[o,l]=Dn(n,a?n:void 0),i=a?n:o,{isSameDay:c}=t;return{selected:i,select:(f,h,g)=>{let b=f;return!r&&i&&i&&c(f,i)&&(b=void 0),a||l(b),a?.(b,f,h,g),b},isSelected:f=>i?c(i,f):!1}}function hf(e,t){const n=mf(e,t),r=lf(e,t),a=ff(e,t);switch(e.mode){case"single":return n;case"multiple":return r;case"range":return a;default:return}}function Ce(e,t){return e instanceof pe&&e.timeZone===t?e:new pe(e,t)}function Et(e,t,n){return Ce(e,t)}function Da(e,t,n){return typeof e=="boolean"||typeof e=="function"?e:e instanceof Date?Et(e,t):Array.isArray(e)?e.map(r=>r instanceof Date?Et(r,t):r):jn(e)?{...e,from:e.from?Ce(e.from,t):e.from,to:e.to?Ce(e.to,t):e.to}:jr(e)?{before:Et(e.before,t),after:Et(e.after,t)}:Dr(e)?{after:Et(e.after,t)}:Cr(e)?{before:Et(e.before,t)}:e}function er(e,t,n){return e&&(Array.isArray(e)?e.map(r=>Da(r,t)):Da(e,t))}function gf(e){let t=e;const n=t.timeZone;if(n&&(t={...e,timeZone:n},t.today&&(t.today=Ce(t.today,n)),t.month&&(t.month=Ce(t.month,n)),t.defaultMonth&&(t.defaultMonth=Ce(t.defaultMonth,n)),t.startMonth&&(t.startMonth=Ce(t.startMonth,n)),t.endMonth&&(t.endMonth=Ce(t.endMonth,n)),t.mode==="single"&&t.selected?t.selected=Ce(t.selected,n):t.mode==="multiple"&&t.selected?t.selected=t.selected?.map(Q=>Ce(Q,n)):t.mode==="range"&&t.selected&&(t.selected={from:t.selected.from?Ce(t.selected.from,n):t.selected.from,to:t.selected.to?Ce(t.selected.to,n):t.selected.to}),t.disabled!==void 0&&(t.disabled=er(t.disabled,n)),t.hidden!==void 0&&(t.hidden=er(t.hidden,n)),t.modifiers)){const Q={};Object.keys(t.modifiers).forEach(ee=>{Q[ee]=er(t.modifiers?.[ee],n)}),t.modifiers=Q}const{components:r,formatters:a,labels:o,dateLib:l,locale:i,classNames:c}=m.useMemo(()=>{const Q={...Ao,...t.locale},ee=t.broadcastCalendar?1:t.weekStartsOn,U=t.noonSafe&&t.timeZone?Uu(t.timeZone,{weekStartsOn:ee,locale:Q}):void 0,Z=t.dateLib&&U?{...U,...t.dateLib}:t.dateLib??U,ie=new Me({locale:Q,weekStartsOn:ee,firstWeekContainsDate:t.firstWeekContainsDate,useAdditionalWeekYearTokens:t.useAdditionalWeekYearTokens,useAdditionalDayOfYearTokens:t.useAdditionalDayOfYearTokens,timeZone:t.timeZone,numerals:t.numerals},Z);return{dateLib:ie,components:_u(t.components),formatters:Fu(t.formatters),labels:Bu(t.labels,ie.options),locale:Q,classNames:{...Su(),...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:l.today()});const{captionLayout:d,mode:u,navLayout:f,numberOfMonths:h=1,onDayBlur:g,onDayClick:b,onDayFocus:p,onDayKeyDown:k,onDayMouseEnter:v,onDayMouseLeave:x,onNextClick:_,onPrevClick:D,showWeekNumber:N,styles:w}=t,{formatCaption:T,formatDay:S,formatMonthDropdown:O,formatWeekNumber:E,formatWeekNumberHeader:A,formatWeekdayName:K,formatYearDropdown:I}=a,P=rf(t,l),{days:C,months:j,navStart:H,navEnd:L,previousMonth:W,nextMonth:Y,goToMonth:V}=P,se=wu(C,t,H,L,l),{isSelected:z,select:G,selected:J}=hf(t,l)??{},{blur:ae,focused:ce,isFocusTarget:qe,moveFocus:ye,setFocused:Oe}=sf(t,P,se,z??(()=>!1),l),{labelDayButton:Rt,labelGridcell:Ie,labelGrid:je,labelMonthDropdown:$t,labelNav:Ve,labelPrevious:Ge,labelNext:De,labelWeekday:_t,labelWeekNumber:ge,labelWeekNumberHeader:fe,labelYearDropdown:ve}=o,Pe=m.useMemo(()=>Yu(l,t.ISOWeek,t.broadcastCalendar,t.today),[l,t.ISOWeek,t.broadcastCalendar,t.today]),tt=u!==void 0||b!==void 0,Le=m.useCallback(()=>{W&&(V(W),D?.(W))},[W,V,D]),xe=m.useCallback(()=>{Y&&(V(Y),_?.(Y))},[V,Y,_]),Yt=m.useCallback((Q,ee)=>U=>{U.preventDefault(),U.stopPropagation(),Oe(Q),!ee.disabled&&(G?.(Q.date,ee,U),b?.(Q.date,ee,U))},[G,b,Oe]),Be=m.useCallback((Q,ee)=>U=>{Oe(Q),p?.(Q.date,ee,U)},[p,Oe]),Ht=m.useCallback((Q,ee)=>U=>{ae(),g?.(Q.date,ee,U)},[ae,g]),Ut=m.useCallback((Q,ee)=>U=>{const Z={ArrowLeft:[U.shiftKey?"month":"day",t.dir==="rtl"?"after":"before"],ArrowRight:[U.shiftKey?"month":"day",t.dir==="rtl"?"before":"after"],ArrowDown:[U.shiftKey?"year":"week","after"],ArrowUp:[U.shiftKey?"year":"week","before"],PageUp:[U.shiftKey?"year":"month","before"],PageDown:[U.shiftKey?"year":"month","after"],Home:["startOfWeek","before"],End:["endOfWeek","after"]};if(Z[U.key]){U.preventDefault(),U.stopPropagation();const[ie,q]=Z[U.key];ye(ie,q)}k?.(Q.date,ee,U)},[ye,k,t.dir]),nt=m.useCallback((Q,ee)=>U=>{v?.(Q.date,ee,U)},[v]),te=m.useCallback((Q,ee)=>U=>{x?.(Q.date,ee,U)},[x]),Nt=m.useCallback(Q=>ee=>{const U=Number(ee.target.value),Z=l.setMonth(l.startOfMonth(Q),U);V(Z)},[l,V]),ke=m.useCallback(Q=>ee=>{const U=Number(ee.target.value),Z=l.setYear(l.startOfMonth(Q),U);V(Z)},[l,V]),{className:we,style:St}=m.useMemo(()=>({className:[c[$.Root],t.className].filter(Boolean).join(" "),style:{...w?.[$.Root],...t.style}}),[c,t.className,t.style,w]),ct=Nu(t),Mt=m.useRef(null);Gu(Mt,!!t.animate,{classNames:c,months:j,focused:ce,dateLib:l});const zt={dayPickerProps:t,selected:J,select:G,isSelected:z,months:j,nextMonth:Y,previousMonth:W,goToMonth:V,getModifiers:se,components:r,classNames:c,styles:w,labels:o,formatters:a};return F.createElement(Fo.Provider,{value:zt},F.createElement(r.Root,{rootRef:t.animate?Mt:void 0,className:we,style:St,dir:t.dir,id:t.id,lang:t.lang??i.code,nonce:t.nonce,title:t.title,role:t.role,"aria-label":t["aria-label"],"aria-labelledby":t["aria-labelledby"],...ct},F.createElement(r.Months,{className:c[$.Months],style:w?.[$.Months]},!t.hideNavigation&&!f&&F.createElement(r.Nav,{"data-animated-nav":t.animate?"true":void 0,className:c[$.Nav],style:w?.[$.Nav],"aria-label":Ve(),onPreviousClick:Le,onNextClick:xe,previousMonth:W,nextMonth:Y}),j.map((Q,ee)=>F.createElement(r.Month,{"data-animated-month":t.animate?"true":void 0,className:c[$.Month],style:w?.[$.Month],key:ee,displayIndex:ee,calendarMonth:Q},f==="around"&&!t.hideNavigation&&ee===0&&F.createElement(r.PreviousMonthButton,{type:"button",className:c[$.PreviousMonthButton],tabIndex:W?void 0:-1,"aria-disabled":W?void 0:!0,"aria-label":Ge(W),onClick:Le,"data-animated-button":t.animate?"true":void 0},F.createElement(r.Chevron,{disabled:W?void 0:!0,className:c[$.Chevron],orientation:t.dir==="rtl"?"right":"left"})),F.createElement(r.MonthCaption,{"data-animated-caption":t.animate?"true":void 0,className:c[$.MonthCaption],style:w?.[$.MonthCaption],calendarMonth:Q,displayIndex:ee},d?.startsWith("dropdown")?F.createElement(r.DropdownNav,{className:c[$.Dropdowns],style:w?.[$.Dropdowns]},(()=>{const U=d==="dropdown"||d==="dropdown-months"?F.createElement(r.MonthsDropdown,{key:"month",className:c[$.MonthsDropdown],"aria-label":$t(),classNames:c,components:r,disabled:!!t.disableNavigation,onChange:Nt(Q.date),options:Ru(Q.date,H,L,a,l),style:w?.[$.Dropdown],value:l.getMonth(Q.date)}):F.createElement("span",{key:"month"},O(Q.date,l)),Z=d==="dropdown"||d==="dropdown-years"?F.createElement(r.YearsDropdown,{key:"year",className:c[$.YearsDropdown],"aria-label":ve(l.options),classNames:c,components:r,disabled:!!t.disableNavigation,onChange:ke(Q.date),options:Hu(H,L,a,l,!!t.reverseYears),style:w?.[$.Dropdown],value:l.getYear(Q.date)}):F.createElement("span",{key:"year"},I(Q.date,l));return l.getMonthYearOrder()==="year-first"?[Z,U]:[U,Z]})(),F.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(Q.date,l.options,l))):F.createElement(r.CaptionLabel,{className:c[$.CaptionLabel],role:"status","aria-live":"polite"},T(Q.date,l.options,l))),f==="around"&&!t.hideNavigation&&ee===h-1&&F.createElement(r.NextMonthButton,{type:"button",className:c[$.NextMonthButton],tabIndex:Y?void 0:-1,"aria-disabled":Y?void 0:!0,"aria-label":De(Y),onClick:xe,"data-animated-button":t.animate?"true":void 0},F.createElement(r.Chevron,{disabled:Y?void 0:!0,className:c[$.Chevron],orientation:t.dir==="rtl"?"left":"right"})),ee===h-1&&f==="after"&&!t.hideNavigation&&F.createElement(r.Nav,{"data-animated-nav":t.animate?"true":void 0,className:c[$.Nav],style:w?.[$.Nav],"aria-label":Ve(),onPreviousClick:Le,onNextClick:xe,previousMonth:W,nextMonth:Y}),F.createElement(r.MonthGrid,{role:"grid","aria-multiselectable":u==="multiple"||u==="range","aria-label":je(Q.date,l.options,l)||void 0,className:c[$.MonthGrid],style:w?.[$.MonthGrid]},!t.hideWeekdays&&F.createElement(r.Weekdays,{"data-animated-weekdays":t.animate?"true":void 0,className:c[$.Weekdays],style:w?.[$.Weekdays]},N&&F.createElement(r.WeekNumberHeader,{"aria-label":fe(l.options),className:c[$.WeekNumberHeader],style:w?.[$.WeekNumberHeader],scope:"col"},A()),Pe.map(U=>F.createElement(r.Weekday,{"aria-label":_t(U,l.options,l),className:c[$.Weekday],key:String(U),style:w?.[$.Weekday],scope:"col"},K(U,l.options,l)))),F.createElement(r.Weeks,{"data-animated-weeks":t.animate?"true":void 0,className:c[$.Weeks],style:w?.[$.Weeks]},Q.weeks.map(U=>F.createElement(r.Week,{className:c[$.Week],key:U.weekNumber,style:w?.[$.Week],week:U},N&&F.createElement(r.WeekNumber,{week:U,style:w?.[$.WeekNumber],"aria-label":ge(U.weekNumber,{locale:i}),className:c[$.WeekNumber],scope:"row",role:"rowheader"},E(U.weekNumber,l)),U.days.map(Z=>{const{date:ie}=Z,q=se(Z);if(q[le.focused]=!q.hidden&&!!ce?.isEqualTo(Z),q[We.selected]=z?.(ie)||q.selected,jn(J)){const{from:rt,to:at}=J;q[We.range_start]=!!(rt&&at&&l.isSameDay(ie,rt)),q[We.range_end]=!!(rt&&at&&l.isSameDay(ie,at)),q[We.range_middle]=Ze(J,ie,!0,l)}const qt=$u(q,w,t.modifiersStyles),dt=vu(q,c,t.modifiersClassNames),Vt=!tt&&!q.hidden?Ie(ie,q,l.options,l):void 0;return F.createElement(r.Day,{key:`${Z.isoDate}_${Z.displayMonthId}`,day:Z,modifiers:q,className:dt.join(" "),style:qt,role:"gridcell","aria-selected":q.selected||void 0,"aria-label":Vt,"data-day":Z.isoDate,"data-month":Z.outside?Z.dateMonthId:void 0,"data-selected":q.selected||void 0,"data-disabled":q.disabled||void 0,"data-hidden":q.hidden||void 0,"data-outside":Z.outside||void 0,"data-focused":q.focused||void 0,"data-today":q.today||void 0},!q.hidden&&tt?F.createElement(r.DayButton,{className:c[$.DayButton],style:w?.[$.DayButton],type:"button",day:Z,modifiers:q,disabled:!q.focused&&q.disabled||void 0,"aria-disabled":q.focused&&q.disabled||void 0,tabIndex:qe(Z)?0:-1,"aria-label":Rt(ie,q,l.options,l),onClick:Yt(Z,q),onBlur:Ht(Z,q),onFocus:Be(Z,q),onKeyDown:Ut(Z,q),onMouseEnter:nt(Z,q),onMouseLeave:te(Z,q)},S(ie,l.options,l)):!q.hidden&&S(Z.date,l.options,l))})))))))),t.footer&&F.createElement(r.Footer,{className:c[$.Footer],style:w?.[$.Footer],role:"status","aria-live":"polite"},t.footer)))}function Ca(e){if(!e)return"";const t=e.split("-");if(t.length!==3)return e;const n=new Date(Number(t[0]),Number(t[1])-1,Number(t[2]));return Number.isFinite(n.getTime())?Ue(n,"MMM d"):e}function yf({from:e,to:t,onApply:n,onCancel:r}){const a=m.useMemo(()=>{const d={from:void 0,to:void 0};if(e){const u=e.split("-");d.from=new Date(Number(u[0]),Number(u[1])-1,Number(u[2]))}if(t){const u=t.split("-");d.to=new Date(Number(u[0]),Number(u[1])-1,Number(u[2]))}return d},[e,t]),[o,l]=m.useState(a),i=()=>{if(!o?.from)return;const d=Ue(o.from,"yyyy-MM-dd"),u=o.to?Ue(o.to,"yyyy-MM-dd"):d;n?.(d,u)},c=!!o?.from;return s.jsxs("div",{className:"p-4",children:[s.jsx(gf,{mode:"range",selected:o,onSelect:l,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",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"}}}),s.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:[c&&o.from&&s.jsxs("span",{className:"text-xs text-oai-gray-500 dark:text-oai-gray-400 mr-auto",children:[Ue(o.from,"MMM d, yyyy"),o.to&&o.to.getTime()!==o.from.getTime()?` — ${Ue(o.to,"MMM d, yyyy")}`:""]}),s.jsx(kn,{variant:"secondary",size:"sm",onClick:r,children:"Cancel"}),s.jsx(kn,{variant:"primary",size:"sm",onClick:i,disabled:!c,children:"Apply"})]})]})}const Ta={claude:35,codex:250},Oa={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 pf(e,t){const n=Ta[t]??Ta.claude,r=Oa[e]||Oa.system_prompt;return`oklch(${r.l} ${r.c} ${n})`}const bf=[{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"]}],xf=[["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"]],kf={duration:.18,ease:[.4,0,.2,1]},wf={height:0,opacity:0},vf={height:"auto",opacity:1},_f={height:0,opacity:0};function Nf(e){const t=Number(e||0);return Number.isFinite(t)&&t>0?t:0}function Sf(e,t){const n={};for(const r of["input_tokens","cached_input_tokens","cache_creation_input_tokens","output_tokens","reasoning_output_tokens","total_tokens"])n[r]=Math.round(Number(e?.[r]||0)*t);return n}function Ko(e,t=null){const n=e.reduce((l,i)=>l+Number(i.totals.total_tokens||0),0),r=Nf(t),a=r||n,o=r&&n>0?r/n:1;return e.map(l=>{const i=o===1?l.totals:Sf(l.totals,o);return{...l,totals:i,percent:a>0?Number((i.total_tokens/a*100).toFixed(2)):0}}).sort((l,i)=>i.totals.total_tokens-l.totals.total_tokens)}function Mf(e,t=null){const n=new Map;for(const a of e||[])n.set(a.key,a);const r=bf.map(a=>{const o={input_tokens:0,cached_input_tokens:0,cache_creation_input_tokens:0,output_tokens:0,reasoning_output_tokens:0,total_tokens:0};for(const l of a.from){const i=n.get(l);if(!i)continue;const c=i.totals||{};o.input_tokens+=c.input_tokens||0,o.cached_input_tokens+=c.cached_input_tokens||0,o.cache_creation_input_tokens+=c.cache_creation_input_tokens||0,o.output_tokens+=c.output_tokens||0,o.reasoning_output_tokens+=c.reasoning_output_tokens||0,o.total_tokens+=c.total_tokens||0}return{key:a.key,totals:o}});return Ko(r,t)}function jf(e,t=null){const n=e?.totals||{},r=Number(n.reasoning_output_tokens||0),a=(e?.tool_calls_breakdown?.categories||[]).reduce((d,u)=>u?.name==="Text Response"?d:d+Number(u?.totals?.total_tokens||0),0),o=Number(n.total_tokens||0),l=Math.min(Math.max(0,a),Math.max(0,o-r)),c=[{key:"messages",totals:{total_tokens:Math.max(0,o-r-l)}},{key:"tool_calls",totals:{total_tokens:l}},{key:"reasoning",totals:{total_tokens:r}}];return Ko(c,t)}const Aa="MCP: ";function Df(e){if(!e?.categories?.length)return{mcpSet:null,residualSet:e,mcpTotalTokens:0};const t=[],n=[];let r=0;for(const a of e.categories){const o=String(a?.name||"");o.startsWith(Aa)?(t.push({...a,name:o.slice(Aa.length)}),r+=Number(a?.totals?.total_tokens||0)):n.push(a)}return t.length===0?{mcpSet:null,residualSet:e,mcpTotalTokens:0}:(t.sort((a,o)=>(o.totals?.total_tokens||0)-(a.totals?.total_tokens||0)),{mcpSet:{...e,categories:t},residualSet:{...e,categories:n},mcpTotalTokens:r})}function Ea(e){return y(`dashboard.context_breakdown.category.${e}`)}function Ye(e){return!Number.isFinite(Number(e))||Number(e)<=0?"0":Te(Number(e),{decimals:1})}function Cf(e){return typeof e!="string"?"":e.startsWith("mcp__")?e.split("__").slice(2).join("__")||e:e.includes("/")&&e.split("/").pop()||e}function Tf(e){return(Array.isArray(e)?e:[]).map(t=>{const n=t?.totals||null,r=Number(n?n.input_tokens||0:t?.input_tokens||0),a=Number(n?n.output_tokens||0:t?.output_tokens||0),o=Number(n?n.cached_input_tokens||0:t?.cache_read||0),l=Number(n?n.cache_creation_input_tokens||0:t?.cache_creation||0),i=Number(n?n.total_tokens||r+a:t?.total_tokens||a);return{name:Cf(t?.name?String(t.name):""),calls:Number(t?.calls||0),input_tokens:r,output_tokens:a,cache_read:o,cache_creation:l,total_tokens:Number(i||0)}}).filter(t=>t.name).sort((t,n)=>(n.total_tokens||0)-(t.total_tokens||0))}function Of(e){return(Array.isArray(e)?e:[]).map(t=>{const n=t?.totals||{},r=Array.isArray(t?.tools)?t.tools:[],a=Number(n.input_tokens||0),o=Number(n.output_tokens||0),l=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),totals:{input_tokens:a,output_tokens:o,cached_input_tokens:l,cache_creation_input_tokens:i,total_tokens:Number(n.total_tokens||a+o)},tools:Tf(r),toolCount:r.length}}).filter(t=>t.name).sort((t,n)=>(n.totals.total_tokens||0)-(t.totals.total_tokens||0))}function Af(e){return(Array.isArray(e)?e:[]).map(t=>{const n=t?.totals||{},r=Number(n.input_tokens||0),a=Number(n.output_tokens||0),o=Number(n.cached_input_tokens||0),l=Number(n.cache_creation_input_tokens||0);return{key:t?.key?String(t.key):"",name:t?.name?String(t.name):"",totals:{input_tokens:r,output_tokens:a,cached_input_tokens:o,cache_creation_input_tokens:l,total_tokens:Number(n.total_tokens||r+a+o+l)}}}).filter(t=>t.key||t.name).sort((t,n)=>(n.totals.total_tokens||0)-(t.totals.total_tokens||0))}function Ef(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 Ff(e){if(e?.key){const t=y(`dashboard.context_breakdown.message_details.${e.key}`);if(t&&!t.includes("dashboard.context_breakdown"))return t}return e?.name||""}function Wf(e){return(Array.isArray(e)?e:[]).map(t=>{const n=t?.totals||{},r=Number(n.input_tokens||0),a=Number(n.output_tokens||0),o=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),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:r,output_tokens:a,cached_input_tokens:o,cache_creation_input_tokens:l,total_tokens:Number(n.total_tokens||r+a)}}}).filter(t=>t.name).sort((t,n)=>Number(n.totals.total_tokens||0)-Number(t.totals.total_tokens||0))}function Fa(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 If(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 Wa(e){return e==="exec_command"||e==="Bash"}function Xo(e){return e==="codex"?"dashboard.context_breakdown.empty_codex":"dashboard.context_breakdown.empty"}function Pf(e){return e==="codex"?"dashboard.context_breakdown.error_codex":"dashboard.context_breakdown.error"}function Lf(e){return e==="codex"?"dashboard.context_breakdown.footnote_codex":"dashboard.context_breakdown.footnote"}const Bf=10;function Je({level:e=0,colorSquare:t=null,label:n,labelSuffix:r=null,labelTone:a="default",hasChevron:o=!1,open:l=!1,onToggle:i,tokens:c,percent:d=null,children:u,share:f=null,fillColor:h=null}){const g=a==="accent"?"text-oai-brand truncate":a==="muted"?"text-oai-gray-500 dark:text-oai-gray-400 truncate":a==="strong"?"font-medium text-oai-black dark:text-oai-white truncate":"text-oai-gray-700 dark:text-oai-gray-300 truncate",b=s.jsx("span",{className:"shrink-0 flex items-center justify-start",style:{width:Bf},"aria-hidden":!t,children:t}),p=s.jsxs(s.Fragment,{children:[b,s.jsx("span",{className:g,children:n}),r,o&&s.jsx(be.span,{animate:{rotate:l?90:0},transition:{duration:.15},className:"shrink-0 text-oai-gray-400 dark:text-oai-gray-500 flex items-center","aria-hidden":"true",children:s.jsx(gl,{size:11})})]}),k=h&&f!=null&&f>0,v=k?Math.max(0,Math.min(100,f)):0;return s.jsxs("li",{className:"min-w-0 group/row",children:[s.jsxs("div",{className:"relative grid grid-cols-[minmax(0,1fr)_64px_48px] items-center gap-2 text-xs py-1 px-1 rounded-sm transition-colors duration-150",style:k?{backgroundImage:`linear-gradient(to right, ${h.replace(/\)\s*$/," / 0.10)")} 0%, ${h.replace(/\)\s*$/," / 0.10)")} ${v}%, transparent ${v}%)`}:void 0,children:[o?s.jsx("button",{type:"button",onClick:i,"aria-expanded":l,className:"relative 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:p}):s.jsx("div",{className:"relative flex items-center gap-1.5 min-w-0",children:p}),s.jsx("span",{className:"relative text-right tabular-nums text-oai-gray-500 dark:text-oai-gray-400",children:c||""}),s.jsx("span",{className:"relative text-right tabular-nums text-[10px] text-oai-gray-400 dark:text-oai-gray-500 font-normal",children:d||""})]}),o&&u?s.jsx(xr,{initial:!1,children:l&&s.jsx(be.div,{initial:wf,animate:vf,exit:_f,transition:kf,style:{overflow:"hidden"},children:u},"content")}):null]})}function Ia({execDetails:e,source:t="claude"}){const[n,r]=m.useState("by_type"),a=Wf(If(e,n)),o=t==="codex",l=o?"grid-cols-[minmax(0,1fr)_48px_48px_72px_72px_60px_60px]":"grid-cols-[minmax(0,1fr)_56px_60px]";return s.jsxs("div",{className:"mt-2 ml-4",children:[s.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:xf.map(([i,c])=>s.jsx("button",{type:"button",onClick:()=>r(i),className:"h-7 px-2 rounded-md text-[10px] font-medium transition-colors "+(n===i?"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:y(c)},i))}),a.length===0?s.jsx("p",{className:"mt-2 text-[10px] text-oai-gray-400 dark:text-oai-gray-500",children:"—"}):s.jsx("div",{className:"mt-2 overflow-x-auto",children:s.jsxs("div",{role:"table","aria-label":y("dashboard.context_breakdown.exec_details.title"),className:o?"min-w-[420px]":"min-w-[260px]",children:[s.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:[s.jsx("span",{role:"columnheader",children:y("dashboard.context_breakdown.exec_details.kind_column")}),s.jsx("span",{role:"columnheader",className:"text-right",children:y("dashboard.context_breakdown.exec_details.calls_column")}),o&&s.jsxs(s.Fragment,{children:[s.jsx("span",{role:"columnheader",className:"text-right",children:y("dashboard.context_breakdown.exec_details.failures_column")}),s.jsx("span",{role:"columnheader",className:"text-right",children:y("dashboard.context_breakdown.exec_details.duration_column")}),s.jsx("span",{role:"columnheader",className:"text-right",children:y("dashboard.context_breakdown.exec_details.max_duration_column")})]}),s.jsx("span",{role:"columnheader",className:"text-right",children:y("dashboard.context_breakdown.tool_details.total_column")}),o&&s.jsx("span",{role:"columnheader",className:"text-right",children:y("dashboard.context_breakdown.exec_details.output_column")})]}),a.map((i,c)=>s.jsxs(be.div,{role:"row",className:`grid ${l} gap-2 py-1.5`,title:i.name,initial:{opacity:0},animate:{opacity:1},transition:{duration:.18,delay:c*.02},children:[s.jsx("span",{role:"cell",className:"min-w-0 text-body-sm font-medium text-oai-black dark:text-oai-white truncate",children:i.name}),s.jsx("span",{role:"cell",className:"text-right text-body-sm tabular-nums text-oai-gray-700 dark:text-oai-gray-300",children:Te(i.calls||0)}),o&&s.jsxs(s.Fragment,{children:[s.jsx("span",{role:"cell",className:"text-right text-body-sm tabular-nums text-oai-gray-700 dark:text-oai-gray-300",children:Te(i.failures||0)}),s.jsx("span",{role:"cell",className:"text-right text-body-sm tabular-nums text-oai-gray-700 dark:text-oai-gray-300",children:Fa(i.duration_ms||0)}),s.jsx("span",{role:"cell",className:"text-right text-body-sm tabular-nums text-oai-gray-700 dark:text-oai-gray-300",children:Fa(i.max_duration_ms||0)})]}),s.jsx("span",{role:"cell",className:"text-right text-body-sm tabular-nums text-oai-gray-700 dark:text-oai-gray-300",children:Ye(i.totals.total_tokens||0)}),o&&s.jsx("span",{role:"cell",className:"text-right text-body-sm tabular-nums text-oai-gray-700 dark:text-oai-gray-300",children:Te(i.output_lines||0)})]},i.name))]})})]})}function Zt({toolSet:e,execDetails:t,source:n,codexQueueFallback:r}){const[a,o]=m.useState({}),[l,i]=m.useState(!1),c=Of(e?.categories||[]);function d(u){o(f=>({...f,[u]:!f[u]}))}return c.length===0?s.jsx("p",{className:"text-[11px] text-oai-gray-400 dark:text-oai-gray-500 py-0.5",children:n==="codex"&&r?y("dashboard.context_breakdown.tool_details.unavailable_codex"):y(Xo(n))}):s.jsx("ul",{className:"mt-0.5 mb-0.5 space-y-0.5",children:c.map(u=>{const f=u.toolCount>0,h=u.name==="Execution"&&t,g=h&&u.tools.some(p=>Wa(p.name)),b=!!a[u.name];return s.jsxs(Je,{level:1,label:u.name,labelTone:"strong",hasChevron:f||h&&!g,open:b||h&&!g&&l,onToggle:()=>{f?d(u.name):h&&!g&&i(p=>!p)},tokens:Ye(u.totals.total_tokens||0),percent:null,children:[f&&s.jsx("ul",{className:"space-y-0.5",children:u.tools.map(p=>{const k=h&&Wa(p.name);return s.jsx(Je,{level:2,label:p.name,labelTone:k?"accent":"default",hasChevron:k,open:l,onToggle:()=>i(v=>!v),tokens:Ye(p.total_tokens||0),percent:null,children:k&&s.jsx(Ia,{execDetails:t,source:n})},p.name)})}),h&&!g&&s.jsx(Ia,{execDetails:t,source:n})]},u.name)})})}function Rf({from:e,to:t,source:n="claude",referenceTotalTokens:r=null,onLoadingChange:a=null}){const[o,l]=m.useState(null),[i,c]=m.useState(!1),[d,u]=m.useState(null),[f,h]=m.useState({});function g(j){h(H=>({...H,[j]:!H[j]}))}if(m.useEffect(()=>{let j=!1;return c(!0),a?.(!0),u(null),Hi({from:e,to:t,source:n,timeZone:so(),tzOffsetMinutes:oo()}).then(H=>{j||l(H)}).catch(H=>{j||u(H?.message||String(H))}).finally(()=>{j||(c(!1),a?.(!1))}),()=>{j=!0}},[e,t,n]),i&&!o)return s.jsxs("div",{children:[s.jsx("div",{className:"h-1 w-full bg-oai-gray-100 dark:bg-oai-gray-800 rounded-full overflow-hidden animate-pulse"}),s.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(j=>s.jsx("div",{className:"h-3 rounded bg-oai-gray-100 dark:bg-oai-gray-800 animate-pulse",style:{animationDelay:`${j*80}ms`}},j))}),s.jsx("p",{className:"mt-3 text-[11px] text-oai-gray-500 dark:text-oai-gray-400",children:y("dashboard.context_breakdown.loading_hint")})]});if(d)return s.jsx("p",{className:"text-xs text-oai-gray-500 dark:text-oai-gray-400",children:y(Pf(n))});if(!o||o.scope!=="supported"||!o.totals?.total_tokens)return s.jsx("p",{className:"text-xs text-oai-gray-500 dark:text-oai-gray-400",children:y(Xo(n))});const b=n==="claude"?Mf(o.categories||[],r):jf(o,r),p=o.tool_calls_breakdown||null,k=o.skills_breakdown||null,v=o.message_breakdown||null,x=o.configured_resources||null,_=o.exec_command_breakdown||null,D=Ef(k?.skills||[]),N=Af(v?.categories||[]),w=n==="codex"&&(o?.breakdown_status==="queue_fallback"||o?.fallback==="queue_totals"),T=n==="claude"?p?.tool_calls||null:p||null,{mcpSet:S,residualSet:O,mcpTotalTokens:E}=Df(T),A=n==="claude"&&p?.subagents||null,K=A?.categories?.length>0||(x?.custom_agents_count||0)>0,I=n==="claude"?(O?.categories||[]).reduce((j,H)=>j+Number(H?.totals?.total_tokens||0),0):0,P=n==="claude"?(A?.categories||[]).reduce((j,H)=>j+Number(H?.totals?.total_tokens||0),0):0,C=[...b].sort((j,H)=>(H.totals?.total_tokens||0)-(j.totals?.total_tokens||0));return s.jsxs("div",{role:"region","aria-label":y("dashboard.context_breakdown.bar_aria",{summary:b.filter(j=>j.percent>0).filter(j=>!(n==="claude"&&(j.key==="tool_calls"||j.key==="custom_agents"))).map(j=>`${Ea(j.key)} ${j.percent}%`).join(",")}),children:[s.jsxs("ul",{className:"space-y-0.5",children:[C.map(j=>{const H=j.key==="system_prompt",L=j.key==="messages",W=j.key==="tool_calls",Y=j.key==="custom_agents";if(j.key,n==="claude"&&(W||Y))return null;const V=L&&N.length>0||W&&(O?.categories?.length>0||w)||Y&&K&&A,se=!!f[j.key],z=pf(j.key,n),G=s.jsx("span",{className:"h-2 w-2 rounded-sm shrink-0",style:{backgroundColor:z},"aria-hidden":"true"}),J=H?s.jsxs("span",{className:"relative inline-flex shrink-0 group",children:[s.jsx(fo,{size:11,className:"text-oai-gray-400 dark:text-oai-gray-500 cursor-help","aria-hidden":"true"}),s.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:y("dashboard.context_breakdown.system_prefix_tooltip")})]}):null,ae=j.percent>0?`${j.percent.toFixed(j.percent<.1&&j.percent>0?2:1)}%`:"0.0%";return s.jsxs(Je,{level:0,colorSquare:G,label:Ea(j.key),labelSuffix:J,tokens:Ye(j.totals?.total_tokens||0),percent:ae,hasChevron:V,open:se,onToggle:()=>g(j.key),share:j.percent,fillColor:z,children:[L&&s.jsx("ul",{className:"space-y-0.5",children:N.map(ce=>s.jsx(Je,{level:1,label:Ff(ce),tokens:Ye(ce.totals.total_tokens||0),percent:null},ce.key||ce.name))}),W&&O&&s.jsx(Zt,{toolSet:O,execDetails:_,source:n,codexQueueFallback:w}),W&&w&&!O&&s.jsx("p",{className:"text-[11px] text-oai-gray-400 dark:text-oai-gray-500 py-0.5",children:y("dashboard.context_breakdown.tool_details.unavailable_codex")}),Y&&A&&s.jsx(Zt,{toolSet:A,execDetails:null,source:n,codexQueueFallback:!1})]},j.key)}),n==="claude"&&O?.categories?.length>0&&s.jsx(Je,{level:0,colorSquare:s.jsx("span",{className:"h-2 w-2 rounded-sm shrink-0 bg-oai-gray-300 dark:bg-oai-gray-600","aria-hidden":"true"}),label:y("dashboard.context_breakdown.category.tool_calls"),tokens:Ye(I),percent:null,hasChevron:!0,open:!!f.tool_calls_aux,onToggle:()=>g("tool_calls_aux"),children:s.jsx(Zt,{toolSet:O,execDetails:_,source:n,codexQueueFallback:!1})}),n==="claude"&&A?.categories?.length>0&&s.jsx(Je,{level:0,colorSquare:s.jsx("span",{className:"h-2 w-2 rounded-sm shrink-0 bg-oai-gray-300 dark:bg-oai-gray-600","aria-hidden":"true"}),label:y("dashboard.context_breakdown.category.custom_agents"),tokens:Ye(P),percent:null,hasChevron:!0,open:!!f.custom_agents_aux,onToggle:()=>g("custom_agents_aux"),children:s.jsx(Zt,{toolSet:A,execDetails:null,source:n,codexQueueFallback:!1})}),S?.categories?.length>0&&s.jsx(Je,{level:0,colorSquare:s.jsx("span",{className:"h-2 w-2 rounded-sm shrink-0 bg-oai-gray-300 dark:bg-oai-gray-600","aria-hidden":"true"}),label:y("dashboard.context_breakdown.category.mcp_servers"),tokens:Ye(E),percent:null,hasChevron:!0,open:!!f.mcp_servers,onToggle:()=>g("mcp_servers"),children:s.jsx(Zt,{toolSet:S,execDetails:null,source:n,codexQueueFallback:!1})}),D.length>0&&s.jsx(Je,{level:0,colorSquare:s.jsx("span",{className:"h-2 w-2 rounded-sm shrink-0 bg-oai-gray-300 dark:bg-oai-gray-600","aria-hidden":"true"}),label:y("dashboard.context_breakdown.category.skills"),tokens:Ye(D.reduce((j,H)=>j+(H.total_tokens||0),0)),percent:null,hasChevron:!0,open:!!f.skills,onToggle:()=>g("skills"),children:s.jsx("ul",{className:"space-y-0.5",children:D.slice(0,12).map(j=>s.jsx(Je,{level:1,label:j.name,tokens:Ye(j.total_tokens),percent:null},j.name))})})]}),s.jsx("p",{className:"mt-2 text-[10px] text-oai-gray-400 dark:text-oai-gray-500",children:y(Lf(n))}),w?s.jsx("p",{className:"mt-2 text-[11px] text-oai-gray-500 dark:text-oai-gray-400",children:y("dashboard.context_breakdown.tool_details.unavailable_codex")}):null,x?s.jsxs("p",{className:"mt-2 text-[10px] text-oai-gray-400 dark:text-oai-gray-500",children:[Te(x.skills_count||0)," skills ·"," ",Te(x.mcp_servers_count||0)," MCP servers ·"," ",Te(x.custom_agents_count||0)," agents ·"," ",Te(x.memory_files_count||0)," memory files"]}):null]})}function Qo(e){if(!Number.isFinite(Number(e)))return null;const t=Number(e);return t<=0?null:Te(t,{decimals:1})}function Jo(e,t,n){const r=Number(e);if(!Number.isFinite(r)||r<=0)return null;const a=Nn(t);return(t===ao?r:r*n)<.01?`<${a}0.01`:Sn(r,{decimals:2,currency:t,rate:n})}function $f(e){return Array.isArray(e)?e.map(t=>typeof t=="string"?{key:t,label:Pa(t)}:{key:t.key,label:t.label||Pa(t.key)}):[]}function Yf(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 Hf={CODEX:"#3b82f6",CLAUDE:"#d97757",OPENCODE:"#f59e0b",GEMINI:"#2196f3",KIMI:"#a78bfa","KILO-CLI":"#facc15","KILO-CODE":"#facc15",DROID:"#ef4444"};function tr(e,t){const n=e?.toUpperCase?.()||"";return Hf[n]||`hsl(${150+t*40}, 60%, 45%)`}function Uf(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}const zf={day:"usage.period.day",week:"usage.period.week",month:"usage.period.month",total:"usage.period.total",custom:"usage.period.custom"};function Pa(e){const t=zf[e];return t?y(t):String(e).toUpperCase()}function qf({loading:e,onClick:t}){const n=wr();return s.jsx(kn,{variant:"secondary",size:"sm",disabled:e,onClick:t,"aria-label":y("usage.button.refresh"),className:"w-8 p-0",children:s.jsx(be.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 Vf({period:e,periods:t,onPeriodChange:n,summaryValue:r,summaryLabel:a,summaryCostValue:o,onCostInfo:l,fleetData:i=[],onRefresh:c,loading:d,className:u="",customFrom:f,customTo:h,onCustomRangeApply:g,customRangeOpen:b,onCustomRangeOpenChange:p,onOpenShare:k,from:v,to:x}){const _=$f(t),D=Yf(String(r??"")),N=D!=null,[w,T]=m.useState(null),{resolvedTheme:S}=Ui(),{currency:O,rate:E}=Mn(),A=S==="dark",K=A?"rgba(10,10,10,0.98)":"rgba(255,255,255,0.96)",I=A?"rgba(10,10,10,0)":"rgba(255,255,255,0)",P=i.filter(C=>C.models?.length>0);return s.jsxs(kr,{className:u,children:[s.jsxs("div",{className:"flex items-center justify-between gap-3 mb-6",children:[s.jsx("div",{role:"tablist","aria-label":y("usage.overview.tablist_aria"),className:"flex gap-1",children:_.map(C=>{const j=e===C.key,H=`text-xs font-medium px-3 py-1.5 rounded-md transition-colors ${j?"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(C.key==="custom"){const L=j&&f&&h?`${Ca(f)} — ${Ca(h)}`:C.label;return s.jsxs(yl,{open:b,onOpenChange:W=>{W?n?.("custom"):p?.(W)},children:[s.jsx(pl,{render:s.jsx("button",{role:"tab","aria-selected":j,type:"button",className:H}),children:L}),s.jsx(bl,{children:s.jsx(xl,{sideOffset:8,side:"bottom",align:"start",className:"!z-[9999]",children:s.jsx(kl,{className:"bg-white dark:bg-oai-gray-900 border border-oai-gray-200 dark:border-oai-gray-700 rounded-xl shadow-lg",children:s.jsx(yf,{from:f,to:h,onApply:g,onCancel:()=>p?.(!1)})})})})]},"custom")}return s.jsx("button",{role:"tab","aria-selected":j,type:"button",className:H,onClick:()=>n?.(C.key),children:C.label},C.key)})}),s.jsxs("div",{className:"flex items-center gap-1.5",children:[k?s.jsxs("button",{type:"button",onClick:k,"aria-label":y("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:[s.jsx(_l,{className:"h-3.5 w-3.5",strokeWidth:2}),y("share.button.label")]}):null,c&&s.jsx(qf,{loading:d,onClick:c})]})]}),s.jsxs("div",{className:"text-center mb-8",children:[s.jsx("div",{className:"text-xs text-oai-gray-500 dark:text-oai-gray-300 uppercase tracking-wider mb-3",children:a}),s.jsx("div",{className:"text-6xl md:text-7xl font-bold text-oai-black dark:text-oai-white tracking-tight tabular-nums",children:N?s.jsx(hc,{value:D,displayValue:r,fontSize:72,padding:6,gap:1,textColor:"var(--oai-black, #111827)",fontWeight:700,gradientHeight:A?0:8,gradientFrom:K,gradientTo:I,counterStyle:{paddingLeft:0,paddingRight:0,gap:0},digitStyle:{width:"0.88ch"}}):r}),o&&s.jsx("div",{className:"flex items-center justify-center gap-2 mt-4",children:l?s.jsxs("button",{type:"button",onClick:l,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":y("usage.overview.cost_breakdown_aria"),children:[o,s.jsx(fo,{size:16,strokeWidth:2,className:"opacity-80"})]}):s.jsx("span",{className:"text-xl font-bold text-oai-brand",children:o})})]}),P.length>0&&s.jsxs("div",{className:"space-y-6",children:[s.jsx("div",{role:"img","aria-label":y("usage.overview.distribution_aria",{items:P.map(C=>y("usage.overview.distribution_item",{label:C.label,percent:C.totalPercent})).join(",")}),className:"h-1.5 w-full bg-oai-gray-100 dark:bg-oai-gray-800 rounded-full overflow-hidden flex",children:P.map((C,j)=>{const H=tr(C.label,j);return s.jsx(be.div,{initial:{width:0},animate:{width:`${C.totalPercent}%`},transition:{duration:.5,delay:.45+j*.04,ease:[.16,1,.3,1]},className:"h-full",style:{backgroundColor:H},title:`${C.label}: ${C.totalPercent}%`},C.label)})}),s.jsx("div",{className:"grid grid-cols-2 sm:grid-cols-3 xl:grid-cols-5 gap-3",children:P.map((C,j)=>{const H=tr(C.label,j),L=w===C.label;return s.jsxs("button",{"aria-expanded":L,"aria-controls":`provider-details-${C.label}`,"aria-label":y("usage.overview.provider_card_aria",{provider:C.label,percent:C.totalPercent,tokens:Qo(C.usage)||"0",cost:Jo(C.usd,O,E)||`${Nn(O)}0`,action:y(L?"usage.overview.collapse":"usage.overview.expand")}),onClick:()=>T(L?null:C.label),className:`min-w-0 text-left p-3 rounded-lg border transition-colors duration-200 ${L?"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:[s.jsxs("div",{className:"flex items-center gap-1.5 mb-1",children:[s.jsx(uo,{provider:C.label,size:15,color:H,className:"text-oai-gray-700 dark:text-oai-gray-300 shrink-0"}),s.jsx("span",{className:"text-sm font-medium text-oai-black dark:text-oai-white",children:C.label})]}),s.jsxs("div",{className:"text-lg font-semibold text-oai-black dark:text-oai-white tabular-nums",children:[C.totalPercent,"%"]}),s.jsx("div",{className:"mt-0.5 text-[11px] text-oai-gray-400 dark:text-oai-gray-400 tabular-nums",children:y("usage.overview.model_count",{count:C.models.length})})]},C.label)})}),w&&s.jsx("div",{id:`provider-details-${w}`,role:"region","aria-label":y("usage.overview.model_details_aria",{provider:w}),className:"mt-2",children:P.filter(C=>C.label===w).map(C=>{const j=tr(C.label,0),H=Uf(C),L=[...C.models].sort((Y,V)=>(V.share||0)-(Y.share||0)),W=H?`${H==="claude"?"Claude":"Codex"} Context Breakdown`:C.label;return s.jsx(Gf,{provider:C,color:j,providerHeading:W,contextSource:H,from:v,to:x,sortedModels:L},C.label)})})]})]})}function Gf({provider:e,color:t,providerHeading:n,contextSource:r,from:a,to:o,sortedModels:l}){const{currency:i,rate:c}=Mn(),[d,u]=m.useState(!1),f=String(e?.source||e?.label||"").trim().toLowerCase()==="antigravity";return s.jsxs("div",{children:[s.jsxs("div",{className:"flex items-center gap-1.5 mb-3",children:[s.jsx(uo,{provider:e.label,size:14,color:t,className:"shrink-0"}),s.jsx("span",{className:"text-sm font-medium text-oai-black dark:text-oai-white",children:n}),r&&d&&s.jsx(wl,{size:12,className:"text-oai-gray-400 dark:text-oai-gray-500 animate-spin shrink-0","aria-label":y("dashboard.context_breakdown.loading_aria")})]}),f&&s.jsxs("p",{className:"mb-3 text-[10px] leading-snug text-oai-gray-400 dark:text-oai-gray-500",children:[s.jsxs("span",{className:"font-medium text-oai-gray-500 dark:text-oai-gray-400",children:[y("usage.overview.antigravity_notice_title"),"."]})," ",y("usage.overview.antigravity_notice_body")]}),r?s.jsx("div",{className:"mb-4 pb-4 border-b border-oai-gray-200 dark:border-oai-gray-700",children:s.jsx(Rf,{from:a,to:o,source:r,referenceTotalTokens:e.usage,onLoadingChange:u})}):null,s.jsx("div",{className:"space-y-3",children:l.map(h=>{const g=Qo(h.usage),b=Jo(h.cost,i,c),p=Math.max(0,Math.min(100,Number(h.share)||0));return s.jsxs("div",{children:[s.jsxs("div",{className:"flex items-baseline gap-4 mb-1.5",children:[s.jsx("span",{className:"flex-1 min-w-0 text-sm text-oai-gray-700 dark:text-oai-gray-300 truncate",title:h.name,children:h.name}),s.jsx("span",{className:"shrink-0 w-16 text-right text-sm text-oai-gray-500 dark:text-oai-gray-400 tabular-nums",children:g}),s.jsx("span",{className:"shrink-0 w-16 text-right text-sm text-oai-gray-500 dark:text-oai-gray-400 tabular-nums",children:b}),s.jsxs("span",{className:"shrink-0 w-12 text-right text-sm text-oai-black dark:text-oai-white tabular-nums",children:[h.share,"%"]})]}),s.jsx("div",{className:"h-[3px] bg-oai-gray-100 dark:bg-oai-gray-800 rounded-full overflow-hidden",role:"progressbar","aria-valuenow":p,"aria-valuemin":0,"aria-valuemax":100,children:s.jsx("div",{className:"h-full transition-[width] duration-500 ease-out",style:{width:`${p}%`,backgroundColor:t,opacity:.45}})})]},h.id||h.name)})})]})}function La(e,t){if(!Array.isArray(e)||e.length===0)return 0;if(e.length===1)return e[0];const n=(e.length-1)*t,r=Math.floor(n),a=Math.ceil(n);if(r===a)return e[r];const o=n-r;return e[r]+(e[a]-e[r])*o}function Kf(e){const t=Array.isArray(e)?e.filter(a=>Number.isFinite(a)&&a>0).sort((a,o)=>a-o):[];if(t.length===0)return{rawMax:0,effectiveMax:1,clippedValues:Array.isArray(e)?e.map(()=>0):[]};const n=t.at(-1)??0;let r=n;if(t.length>=4){const a=La(t,.25),o=La(t,.75),l=Math.max(o-a,0),i=o+l*1.5;n>i&&(r=Math.max(i,o,1))}return{rawMax:n,effectiveMax:Math.max(r,1),clippedValues:Array.isArray(e)?e.map(a=>!Number.isFinite(a)||a<=0?0:Math.min(a,Math.max(r,1))):[]}}const Ba=["#f472b6","#38bdf8","#34d399","#fbbf24","#a78bfa","#fb7185","#2dd4bf","#f97316","#6366f1","#ec4899","#14b8a6","#f59e0b"],Zo={Input:"#38bdf8","Cached Input":"#14b8a6",Output:"#a78bfa","Reasoning Output":"#fb7185"},Xf={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 es(e){const t=e.toLowerCase();for(const[a,o]of Object.entries(Xf))if(t.includes(a))return o;let n=0;for(let a=0;a<e.length;a++)n=e.charCodeAt(a)+((n<<5)-n);const r=Math.abs(n)%Ba.length;return Ba[r]}function Qf(e){if(!e)return[];const t=[];if(e.models&&typeof e.models=="object")for(const[n,r]of Object.entries(e.models)){const a=Number(r);Number.isFinite(a)&&a>0&&t.push({type:"model",name:n,value:a})}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 r of n){const a=Number(e[r.key]);Number.isFinite(a)&&a>0&&t.push({type:"token_type",name:r.name,value:a})}}return t.sort((n,r)=>r.value-n.value)}function Jf(e,t){return e?.future?"predicted":e?.missing?"unsynced":t>0?"real":"real_zero"}const Zf=.35,Ra=2,$a=4;function em({value:e,displayValue:t,scale:n,index:r,row:a,totalBars:o,onMouseEnter:l,onMouseLeave:i}){const c=wr(),d=Jf(a,e),u=d==="predicted"||d==="unsynced",f=n.effectiveMax>0?t/n.effectiveMax*100:0;let h,g;d==="real"?(h=`${Math.max(f,2)}%`,g=`${$a}px`):u&&f>0?(h=`${f}%`,g=`${$a}px`):(h=`${Ra}px`,g=`${Ra}px`);const b=d==="real"?Qf(a):[],p=b.reduce((v,x)=>v+x.value,0),k=d!=="real"||p<=0;return s.jsxs(be.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+r*.008,ease:[.16,1,.3,1]},style:{originY:1},onMouseEnter:v=>l(v,a,e,b,d,t),onMouseLeave:i,children:[s.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"}),s.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:h,minHeight:g},children:k?s.jsx("div",{"data-trend-bar":"true",className:io("h-full w-full group-hover:brightness-110 transition-all",d==="real"?"":"bg-oai-gray-100 dark:bg-oai-gray-800"),style:{opacity:u?Zf:1,background:d==="real"?"#10b981":void 0}}):b.map((v,x)=>{const _=v.type==="token_type"?Zo[v.name]:es(v.name),D=`${v.value/p*100}%`;return s.jsx("div",{"data-trend-bar":x===0?"true":void 0,className:"w-full group-hover:brightness-110 transition-all",style:{height:D,background:_}},x)})})]})}function tm(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 Ya=.98;function nm(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 r=null,a=-1;for(let i=n-1;i>=0;i--)if(e[i]!==null){r=e[i],a=i;break}let o=null,l=-1;for(let i=n+1;i<e.length;i++)if(e[i]!==null){o=e[i],l=i;break}if(r!==null&&o!==null){const i=(n-a)/(l-a);t[n]=r+(o-r)*i}else if(r!==null){let i=0,c=0;for(let u=0;u<=a;u++)e[u]!==null&&(i+=e[u],c+=1);const d=c>0?i/c:r;t[n]=d*Math.pow(Ya,n-a)}else if(o!==null){let i=0,c=0;for(let u=l;u<e.length;u++)e[u]!==null&&(i+=e[u],c+=1);const d=c>0?i/c:o;t[n]=d*Math.pow(Ya,l-n)}else t[n]=0}return t}function rm({rows:e,from:t,to:n,period:r,timeZoneLabel:a,showTimeZoneLabel:o=!0,className:l="",embedded:i=!1}){const c=F.useMemo(()=>Array.isArray(e)&&e.length?e:[],[e]),{rawValues:d,seriesValues:u,scale:f,interpolatedValues:h}=F.useMemo(()=>{const N=c.map(tm),w=N.map(T=>T??0);return{rawValues:N,seriesValues:w,scale:Kf(w),interpolatedValues:nm(N)}},[c]),[g,b]=F.useState(null),[p,k]=F.useState({x:0,y:0,shiftX:0}),v=F.useRef(null),x=F.useRef(null),_=(N,w,T,S,O,E)=>{x.current&&(clearTimeout(x.current),x.current=null);const A=w?.day||w?.hour||w?.month||"";b({row:w,value:T,segments:S,timeLabel:A,kind:O,displayValue:E});const K=N.currentTarget.querySelector('[data-trend-bar="true"]'),I=K&&K.parentElement?K.parentElement.getBoundingClientRect():N.currentTarget.getBoundingClientRect(),P=v.current;if(!P)return;const C=P.getBoundingClientRect(),j=I.left-C.left+I.width/2,H=I.top-C.top,L=140;let W=0;j<L?W=L-j:j>C.width-L&&(W=C.width-L-j),k({x:j,y:H,shiftX:W})},D=()=>{x.current&&clearTimeout(x.current),x.current=setTimeout(()=>{b(null)},150)};return s.jsxs("div",{ref:v,className:io("relative",!i&&"rounded-xl border border-oai-gray-200 dark:border-oai-gray-800 bg-white dark:bg-oai-gray-900 p-5",l),children:[!i&&s.jsxs("div",{className:"mb-3",children:[s.jsx("h3",{className:"text-sm font-medium text-oai-gray-500 dark:text-oai-gray-300 uppercase tracking-wide",children:y("trend.monitor.label")}),o&&a&&s.jsx("p",{className:"text-xs text-oai-gray-400 dark:text-oai-gray-400 mt-0.5",children:a})]}),s.jsxs("div",{className:"space-y-3",children:[s.jsxs("div",{className:"relative",children:[s.jsx("div",{className:"absolute inset-0 flex flex-col justify-between pointer-events-none",children:[0,25,50,75,100].map(N=>s.jsx("div",{className:"w-full border-t border-oai-gray-100 dark:border-oai-gray-800",style:{top:`${100-N}%`}},N))}),s.jsx("div",{className:"h-40 flex items-end gap-0.5 relative z-0",children:u.length>0?u.map((N,w)=>{const T=c[w],O=T?.missing||T?.future?Math.min(h[w]??0,f.effectiveMax):f.clippedValues[w]??0;return s.jsx(em,{value:N,displayValue:O,scale:f,index:w,row:T,totalBars:u.length,onMouseEnter:_,onMouseLeave:D},w)}):s.jsx("div",{className:"flex-1 h-full flex items-center justify-center",children:s.jsx("p",{className:"text-sm text-oai-gray-400 dark:text-oai-gray-400",children:"No data yet"})})})]}),t&&n&&s.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:[s.jsx("span",{children:t===n?`${t} 00:00`:t}),s.jsx("span",{children:t===n?`${n} 24:00`:n})]})]}),g&&s.jsxs("div",{className:"absolute z-[9999] w-0 h-0 transition-all duration-100 ease-out pointer-events-none",style:{left:`${p.x}px`,top:`${p.y}px`},children:[s.jsxs("div",{className:"absolute left-0 bottom-[10px] 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",style:{transform:`translateX(calc(-50% + ${p.shiftX}px))`},children:[s.jsxs("div",{className:"flex items-center justify-between border-b border-oai-gray-100 dark:border-oai-gray-800/80 pb-1.5",children:[s.jsx("span",{className:"text-[11px] font-semibold text-oai-gray-500 dark:text-oai-gray-400",children:g.timeLabel}),g.kind==="predicted"&&s.jsx("span",{className:"text-[9px] font-semibold uppercase tracking-wider text-oai-gray-400 dark:text-oai-gray-500",children:"Predicted"}),g.kind==="unsynced"&&s.jsx("span",{className:"text-[9px] font-semibold uppercase tracking-wider text-oai-gray-400 dark:text-oai-gray-500",children:"Unsynced"})]}),s.jsxs("div",{className:"flex flex-col gap-2",children:[s.jsxs("div",{className:"flex items-baseline gap-1",children:[s.jsx("span",{className:"text-lg font-bold text-oai-gray-900 dark:text-white leading-none",children:g.kind==="predicted"||g.kind==="unsynced"?`~${Math.round(g.displayValue??0).toLocaleString()}`:g.value.toLocaleString()}),s.jsx("span",{className:"text-[10px] text-oai-gray-400 uppercase tracking-wider font-semibold",children:"Tokens"})]}),g.segments&&g.segments.length>0?s.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:[s.jsx("div",{className:"text-[10px] font-semibold text-oai-gray-400 dark:text-oai-gray-500 uppercase tracking-wider",children:g.segments[0].type==="model"?"Model Breakdown":"Token Breakdown"}),s.jsx("div",{className:"flex flex-col gap-2 max-h-[150px] overflow-y-auto pr-1.5 oai-scrollbar",children:g.segments.map(({name:N,value:w,type:T})=>{const S=g.value||1,O=Math.round(w/S*100),E=T==="token_type"?Zo[N]:es(N);return s.jsxs("div",{className:"flex flex-col gap-1",children:[s.jsxs("div",{className:"flex items-center justify-between text-[11px] gap-3",children:[s.jsx("span",{className:"font-medium text-oai-gray-750 dark:text-oai-gray-200 truncate max-w-[130px]",title:N,children:N}),s.jsxs("div",{className:"flex items-center gap-1.5 shrink-0",children:[s.jsx("span",{className:"font-mono text-oai-gray-900 dark:text-oai-gray-100 font-semibold",children:w.toLocaleString()}),s.jsxs("span",{className:"text-[9px] text-oai-gray-450 dark:text-oai-gray-500 min-w-[28px] text-right font-medium",children:[O,"%"]})]})]}),s.jsx("div",{className:"w-full h-1 bg-oai-gray-100 dark:bg-oai-gray-800/85 rounded-full overflow-hidden",children:s.jsx("div",{className:"h-full rounded-full transition-all duration-300",style:{width:`${O}%`,backgroundColor:E,boxShadow:`0 0 4px ${E}55`}})})]},N)})})]}):null]})]}),s.jsx("div",{className:"absolute bottom-[6px] left-0 -translate-x-1/2 w-2.5 h-2.5 rotate-45 bg-white dark:bg-oai-gray-900 border-r border-b border-oai-gray-200/50 dark:border-oai-gray-800/50 shadow-sm",style:{marginBottom:"1px"}})]})]})}const Ha={"idle-living":"idle/living.svg","idle-doze":"idle/doze.svg","idle-follow":"idle/follow.svg","idle-look":"idle/look.svg","idle-yawn":"idle/yawn.svg","idle-collapse":"idle/collapse.svg","working-building":"working/building.svg","working-carrying":"working/carrying.svg","working-conducting":"working/conducting.svg","working-confused":"working/confused.svg","working-debugger":"working/debugger.svg","working-juggling":"working/juggling.svg","working-overheated":"working/overheated.svg","working-pushing":"working/pushing.svg","working-sweeping":"working/sweeping.svg","working-thinking":"working/thinking.svg","working-typing":"working/typing.svg","working-ultrathink":"working/ultrathink.svg","working-wizard":"working/wizard.svg","mini-alert":"mini/alert.svg","mini-crabwalk":"mini/crabwalk.svg","mini-enter":"mini/enter.svg","mini-enter-sleep":"mini/enter-sleep.svg","mini-happy":"mini/happy.svg","mini-idle":"mini/idle.svg","mini-peek":"mini/peek.svg","mini-sleep":"mini/sleep.svg","react-double":"react/double.svg","react-drag":"react/drag.svg","react-left":"react/left.svg","react-right":"react/right.svg","collapse-sleep":"sleep/collapse-sleep.svg",sleeping:"sleep/sleeping.svg",wake:"sleep/wake.svg",disconnected:"status/disconnected.svg",error:"status/error.svg",notification:"status/notification.svg",happy:"happy.svg","static-base":"static-base.svg"},nr=new Map;async function am(e){if(nr.has(e))return nr.get(e);const t=await fetch(`/clawd/${e}`);if(!t.ok)return null;const r=(await t.text()).replace(/<svg([^>]*)>/,(a,o)=>`<svg${o.replace(/\s+width="[^"]*"/g,"").replace(/\s+height="[^"]*"/g,"")} width="100%" height="100%">`);return nr.set(e,r),r}function om({state:e="idle-living",size:t=48,className:n=""}){const[r,a]=m.useState(""),o=m.useRef(null),i=sm()?"static-base":e,c=Ha[i]||Ha["static-base"];return m.useEffect(()=>{let d=!1;return am(c).then(u=>{!d&&u&&a(u)}),()=>{d=!0}},[c]),m.useEffect(()=>{const d=o.current?.querySelector("svg");if(d)try{const u=d.getBBox();u.width>0&&u.height>0&&d.setAttribute("viewBox",`${u.x-2} ${u.y-2} ${u.width+4} ${u.height+4}`)}catch{}},[r]),s.jsx("div",{ref:o,className:`clawd-animated ${n}`,style:{width:t,height:t,display:"inline-flex",alignItems:"center",justifyContent:"center",overflow:"hidden"},dangerouslySetInnerHTML:{__html:r}})}function sm(){const[e,t]=m.useState(()=>typeof window>"u"?!1:window.matchMedia("(prefers-reduced-motion: reduce)").matches);return m.useEffect(()=>{const n=window.matchMedia("(prefers-reduced-motion: reduce)"),r=a=>t(a.matches);return n.addEventListener("change",r),()=>n.removeEventListener("change",r)},[]),e}function im({todayTokens:e=0,isSyncing:t=!1,hasError:n=!1,isDisconnected:r=!1}={}){return m.useMemo(()=>n?"error":r?"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,r])}const Ua="macAppBannerDismissed",lm="leaderboardBannerDismissed",cm="https://github.com/mm7894215/TokenTracker/releases/latest",za="tokentracker_native_app",gn=(()=>{try{return new URLSearchParams(window.location.search).get("app")==="1"?(localStorage.setItem(za,"1"),!0):localStorage.getItem(za)==="1"}catch{return!1}})();function dm({todayTokens:e=0,isSyncing:t=!1,enterDelay:n=0}){const{openLoginModal:r}=zi(),{signedIn:a}=lo(),o=im({todayTokens:e,isSyncing:t}),l=gn?lm:Ua,[i,c]=m.useState(()=>{try{return localStorage.getItem(l)==="1"?!0:!gn&&new URLSearchParams(window.location.search).get("from")==="menubar"?(localStorage.setItem(Ua,"1"),!0):!1}catch{return!1}}),d=m.useCallback(()=>{c(!0);try{localStorage.setItem(l,"1")}catch{}},[l]);if(i)return null;let u,f,h,g,b,p;gn&&a?(u="View the Leaderboard",f="Compare your usage globally",h="Leaderboard",g=s.jsx("svg",{width:"12",height:"12",viewBox:"0 0 12 12",fill:"none",className:"opacity-70",children:s.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)"})}),b=()=>{window.location.pathname="/leaderboard"}):gn?(u="Join the Leaderboard",f="Log in to compare your usage with others",h="Log In",g=s.jsx("svg",{width:"12",height:"12",viewBox:"0 0 12 12",fill:"none",className:"opacity-70",children:s.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"})}),b=r):(u="Try the Menu Bar App",f="Always-on stats with Clawd companion",h="Download",g=s.jsx("svg",{width:"12",height:"12",viewBox:"0 0 12 12",fill:"none",className:"opacity-70",children:s.jsx("path",{d:"M6 2v6m0 0L3.5 5.5M6 8l2.5-2.5M2 10h8",stroke:"currentColor",strokeWidth:"1.2",strokeLinecap:"round",strokeLinejoin:"round"})}),p=cm);const k=p?be.a:be.button,v=p?{href:p,target:"_blank",rel:"noopener noreferrer"}:{onClick:b};return s.jsx(be.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:s.jsxs("div",{className:"flex items-center gap-3",children:[s.jsx("div",{className:"flex-shrink-0",children:s.jsx(om,{state:o,size:56})}),s.jsxs("div",{className:"flex-1 min-w-0",children:[s.jsx("div",{className:"text-sm font-medium text-oai-gray-900 dark:text-oai-white",children:u}),s.jsx("div",{className:"text-xs text-oai-gray-500 dark:text-oai-gray-400 mt-0.5",children:f})]}),s.jsxs("div",{className:"flex items-center gap-2 flex-shrink-0",children:[s.jsxs(k,{...v,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:[h,g]}),s.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:s.jsx("svg",{width:"14",height:"14",viewBox:"0 0 14 14",fill:"none",children:s.jsx("path",{d:"M4 4l6 6m0-6L4 10",stroke:"currentColor",strokeWidth:"1.2",strokeLinecap:"round"})})})]})]})})}const qa="widgetOnboardingDismissed",Va="tokentracker_native_app",um=(()=>{try{return new URLSearchParams(window.location.search).get("app")==="1"?(localStorage.setItem(Va,"1"),!0):localStorage.getItem(Va)==="1"}catch{return!1}})();function fm({enterDelay:e=0}){const[t,n]=m.useState(()=>{try{return localStorage.getItem(qa)==="1"}catch{return!1}}),r=m.useCallback(()=>{n(!0);try{localStorage.setItem(qa,"1")}catch{}},[]);return um?s.jsx(xr,{initial:!1,children:!t&&s.jsxs(be.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:[s.jsx("button",{type:"button",onClick:r,"aria-label":y("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:s.jsx("svg",{width:"14",height:"14",viewBox:"0 0 14 14",fill:"none","aria-hidden":"true",children:s.jsx("path",{d:"M4 4l6 6m0-6L4 10",stroke:"currentColor",strokeWidth:"1.4",strokeLinecap:"round"})})}),s.jsx("div",{className:"rounded-lg overflow-hidden ring-1 ring-black/5 dark:ring-white/10 shadow-sm",children:s.jsx("img",{src:"/widgets-overview.png",alt:y("dashboard.widgets.title"),width:734,height:552,className:"w-full h-auto block",loading:"lazy",decoding:"async"})}),s.jsxs("div",{className:"mt-4",children:[s.jsx("div",{className:"text-sm font-medium tracking-tight text-oai-gray-900 dark:text-oai-white",children:y("dashboard.widgets.title")}),s.jsx("div",{className:"text-xs text-oai-gray-500 dark:text-oai-gray-400 mt-1 leading-snug",children:y("dashboard.widgets.hint")})]})]},"widget-onboarding-card")}):null}function mm(e){const{copy:t,onOpenShare:n,screenshotMode:r,showExpiredGate:a,showAuthGate:o,screenshotTitleLine1:l,screenshotTitleLine2:i,identityDisplayName:c,identityStartDate:d,activeDays:u,identitySubscriptions:f,identityScrambleDurationMs:h,projectUsageEntries:g,projectUsageLimit:b,setProjectUsageLimit:p,topModels:k,signedIn:v,publicMode:x,isLocalMode:_,shouldShowInstall:D,installPrompt:N,handleCopyInstall:w,installCopied:T,installInitCmdDisplay:S,trendRowsForDisplay:O,trendFromForDisplay:E,trendToForDisplay:A,usageFrom:K,usageTo:I,period:P,trendTimeZoneLabel:C,activityHeatmapBlock:j,isCapturing:H,handleShareToX:L,screenshotTwitterButton:W,screenshotTwitterHint:Y,periodsForDisplay:V,setSelectedPeriod:se,customFrom:z,customTo:G,onCustomRangeApply:J,customRangeOpen:ae,onCustomRangeOpenChange:ce,summaryLabel:qe,summaryValue:ye,summaryTotalTokensRaw:Oe,summaryCostValue:Rt,summaryConversationsValue:Ie,rollingUsage:je,costInfoEnabled:$t,openCostModal:Ve,costModalOpen:Ge,closeCostModal:De,allowBreakdownToggle:_t,refreshAll:ge,usageLoadingState:fe,fleetData:ve,hasDetailsActual:Pe,dailyEmptyPrefix:tt,installSyncCmd:Le,dailyEmptySuffix:xe,detailsColumns:Yt,ariaSortFor:Be,toggleSort:Ht,sortIconFor:Ut,pagedDetails:nt,dailyBreakdownRows:te,dailyBreakdownColumns:Nt,dailyBreakdownAriaSortFor:ke,dailyBreakdownSortIconFor:we,dailyBreakdownDateKey:St,detailsDateKey:ct,renderDetailDate:Mt,renderDailyBreakdownDate:zt,renderDetailCell:Q,DETAILS_PAGED_PERIODS:ee,detailsPageCount:U,detailsPage:Z,setDetailsPage:ie}=e,q=null,qt=null,dt=.06,Vt=.05,rt=.11;let at=0;const Ke=()=>rt+dt*at++,Cn=rt+dt*5;return s.jsxs(s.Fragment,{children:[s.jsx(ac,{bare:!r,hideHeader:r,header:q,footer:r?null:qt,className:r?"screenshot-mode":"",children:a||o?null:s.jsxs("div",{className:"grid grid-cols-1 lg:grid-cols-12 gap-4",children:[s.jsxs("div",{className:"lg:col-span-4 flex flex-col gap-4 min-w-0 order-2 lg:order-1",children:[r?s.jsx("div",{className:"flex items-start justify-between gap-4",children:s.jsxs("div",{className:"flex flex-col gap-1",children:[s.jsx("span",{className:"text-3xl md:text-4xl font-semibold text-oai-black dark:text-oai-white tracking-tight leading-none",children:l}),s.jsx("span",{className:"text-2xl md:text-3xl font-semibold text-oai-black dark:text-oai-white tracking-tight leading-none",children:i})]})}):null,_?s.jsx(dm,{todayTokens:Oe,isSyncing:fe,enterDelay:Ke()}):null,s.jsx(Ot,{delay:Ke(),children:s.jsx(xc,{title:t("dashboard.identity.title"),subtitle:t("dashboard.identity.subtitle"),period:P,rankLabel:d??t("identity_card.rank_placeholder"),streakDays:u,subscriptions:f,periodConversations:Ie,rolling:je,topModels:k})}),_?s.jsx(fm,{enterDelay:Ke()}):null,D?s.jsx(Ot,{delay:Ke(),children:s.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:[s.jsx("div",{className:"text-xs text-oai-gray-500 dark:text-oai-gray-300 mb-1.5",children:N}),s.jsxs(be.button,{onClick:w,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:[s.jsx("code",{className:"text-xs font-mono text-oai-gray-700 dark:text-oai-gray-300",children:S}),s.jsx(be.span,{initial:{opacity:0,y:-5},animate:{opacity:1,y:0},className:"text-xs text-oai-brand",children:T?"Copied ✓":"Copy"},T?"copied":"copy")]})]})}):null,j&&s.jsx(Ot,{delay:Ke(),children:j}),r?null:s.jsx(Ot,{delay:Ke(),children:s.jsx(rm,{rows:O,from:E,to:A,period:P,timeZoneLabel:C,showTimeZoneLabel:!1})}),r?s.jsxs("div",{className:"mt-4 flex flex-col items-center gap-2","data-screenshot-exclude":"true",style:H?{display:"none"}:void 0,children:[s.jsx(kn,{type:"button",onClick:L,variant:"primary",size:"lg",disabled:H,children:W}),s.jsx("span",{className:"text-sm text-oai-gray-500 dark:text-oai-gray-300",children:Y})]}):null]}),s.jsxs("div",{className:"lg:col-span-8 flex flex-col gap-4 min-w-0 order-1 lg:order-2",children:[s.jsx(Ot,{delay:Vt,children:s.jsx(Vf,{period:P,periods:V,onPeriodChange:se,summaryLabel:qe,summaryValue:ye,summaryCostValue:Rt,onCostInfo:$t?Ve:null,fleetData:ve,onRefresh:r?null:ge,loading:fe,onOpenShare:r?null:n,customFrom:z,customTo:G,onCustomRangeApply:J,customRangeOpen:ae,onCustomRangeOpenChange:ce,from:K,to:I})}),r?null:s.jsx(Ot,{delay:Cn,children:s.jsx(pc,{projectEntries:g,projectLimit:b,onProjectLimitChange:p,copy:t,hasDetailsActual:Pe,dailyEmptyPrefix:tt,installSyncCmd:Le,dailyEmptySuffix:xe,detailsColumns:Yt,ariaSortFor:Be,toggleSort:Ht,sortIconFor:Ut,pagedDetails:nt,dailyBreakdownRows:te,dailyBreakdownColumns:Nt,dailyBreakdownAriaSortFor:ke,dailyBreakdownSortIconFor:we,dailyBreakdownDateKey:St,detailsDateKey:ct,renderDetailDate:Mt,renderDailyBreakdownDate:zt,renderDetailCell:Q,DETAILS_PAGED_PERIODS:ee,period:P,detailsPageCount:U,detailsPage:Z,setDetailsPage:ie})})]})]})}),s.jsx(yc,{isOpen:Ge,onClose:De,fleetData:ve})]})}function ts(){return typeof window>"u"?!1:!!window?.webkit?.messageHandlers?.nativeBridge}const xt=new Map,kt=new Map;function ns(){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||!xt.has(n))return;const r=xt.get(n);xt.delete(n),r({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||!kt.has(n))return;const r=kt.get(n);kt.delete(n),r({ok:!!t.ok,error:typeof t.error=="string"?t.error:void 0})}))}async function hm(e){if(!ts()||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"};ns();const n=`copy_${Date.now()}_${Math.random().toString(36).slice(2,8)}`;return new Promise(r=>{const a=window.setTimeout(()=>{kt.has(n)&&(kt.delete(n),r({ok:!1,error:"timeout"}))},8e3);kt.set(n,o=>{window.clearTimeout(a),r(o)});try{t.postMessage({type:"action",name:"copyImageToClipboard",requestId:n,dataUrl:e})}catch(o){kt.delete(n),window.clearTimeout(a),r({ok:!1,error:o?.message||String(o)})}})}async function Ga(e,t){if(!ts()||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"};ns();const r=`save_${Date.now()}_${Math.random().toString(36).slice(2,8)}`;return new Promise(a=>{const o=window.setTimeout(()=>{xt.has(r)&&(xt.delete(r),a({ok:!1,error:"timeout"}))},8e3);xt.set(r,l=>{window.clearTimeout(o),a(l)});try{n.postMessage({type:"action",name:"saveImageToDownloads",requestId:r,filename:t,dataUrl:e})}catch(l){xt.delete(r),window.clearTimeout(o),a({ok:!1,error:l?.message||String(l)})}})}const rs=1200,as=1630,os={broadsheet:{width:1200,height:1630},"annual-report":{width:1080,height:1865}},gm="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 rr=!1;function ym(){if(typeof document>"u"||rr)return;if(document.querySelector('link[data-share-card-fonts="true"]')){rr=!0;return}const t=document.createElement("link");t.rel="stylesheet",t.href=gm,t.dataset.shareCardFonts="true",t.crossOrigin="anonymous",document.head.appendChild(t),rr=!0}async function pm(){if(typeof document>"u")return;const e=document.fonts;if(!(!e||typeof e.ready?.then!="function"))try{await e.ready}catch{}}async function bm(e,t={}){if(typeof window>"u"||!e)return null;ym(),await pm(),await new Promise(c=>requestAnimationFrame(()=>c(null)));const{toBlob:n,toPng:r}=await co(async()=>{const{toBlob:c,toPng:d}=await import("./index-BeoRn2gJ.js");return{toBlob:c,toPng:d}},[]),a=t.pixelRatio??2,o=e.offsetWidth||rs,l=e.offsetHeight||as,i={pixelRatio:a,cacheBust:!0,width:o,height:l,style:{width:`${o}px`,height:`${l}px`},skipFonts:!1,filter:c=>!(c instanceof HTMLElement)||c.dataset?.screenshotExclude!=="true"};try{const c=await n(e,i);if(c)return c}catch{}try{const c=await r(e,i);return c?await(await fetch(c)).blob():null}catch{return null}}async function ar(e){return new Promise(t=>{const n=new FileReader;n.onload=()=>{const r=typeof n.result=="string"?n.result:null;t(r)},n.onerror=()=>t(null),n.readAsDataURL(e)})}function Ka(e,t){if(typeof window>"u"||!e)return!1;try{const n=URL.createObjectURL(e),r=document.createElement("a");return r.href=n,r.download=t,document.body.appendChild(r),r.click(),r.remove(),setTimeout(()=>URL.revokeObjectURL(n),1e3),!0}catch{return!1}}function mr(e){const t=Se(e);return Number.isFinite(t)?t:0}function xm(e){return e?mr(e.billable_total_tokens??e.total_tokens):0}function km(e){const t=Array.isArray(e?.weeks)?e.weeks:[];if(!t.length)return{weeks:[],totalDays:0,activeDays:0};let n=0,r=0;return{weeks:t.map(o=>(Array.isArray(o)?o:[]).slice(0,7).map(i=>{const c=!!i?.future,d=Number.isFinite(i?.level)?Math.max(0,Math.min(4,Math.round(i.level))):0;i?.day&&!c&&(n+=1,d>0&&(r+=1));const u=i?.billable_total_tokens??i?.total_tokens??i?.value??0,f=Number.isFinite(u)?Math.max(0,u):0;return{day:typeof i?.day=="string"?i.day:"",level:d,value:f,future:c}})),totalDays:n,activeDays:r}}function wm(e){const{handle:t,startDate:n,activeDays:r,summary:a,topModels:o,rank:l,period:i,periodFrom:c,periodTo:d,heatmap:u,capturedAt:f,currency:h,exchangeRate:g}=e,b=xm(a),p=mr(a?.total_cost_usd),k=Array.isArray(o)?o.slice(0,3).map(x=>({id:x?.id??null,name:typeof x?.name=="string"&&x.name?x.name:"—",tokens:mr(x?.tokens),percent:typeof x?.percent=="string"&&x.percent?x.percent:"0.0"})):[],v=km(u);return{handle:t||"—",startDate:n||null,activeDays:Number.isFinite(r)&&r>0?Math.floor(r):0,totalTokens:b,totalCost:p,period:i,periodFrom:c,periodTo:d,topModels:k,rank:typeof l=="number"&&Number.isFinite(l)&&l>0?Math.floor(l):null,heatmapWeeks:v.weeks,heatmapTotalDays:v.totalDays,heatmapActiveDays:v.activeDays,capturedAt:f||new Date().toISOString(),currency:typeof h=="string"&&h.length>0?h.toUpperCase():"USD",exchangeRate:Number.isFinite(g)&&g>0?g:1}}const vm=["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 _m(e){const t=vm[e];return t?y(t):"—"}function ss(e,t){return y("share.date.month_year",{month:_m(e),year:t})}function Nm(e){if(!e)return"—";const t=e.split("-");if(t.length!==3)return e;const[n,r]=t,a=Number(r)-1;return a<0||a>11?e:ss(a,n)}function Sm(e){if(e.period==="total")return y("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 ss(t.getUTCMonth(),t.getUTCFullYear())}return y(`usage.period.${e.period}`)}function hr(e){return Number.isFinite(e)?Math.round(e).toLocaleString("en-US"):"—"}function is(e,t={}){const{currency:n="USD",rate:r=1}=t,a=Nn(n);if(!Number.isFinite(e)||e<=0)return`${a}0.00`;const o=n!=="USD"&&Number.isFinite(r)&&r>0?e*r:e;return o>=1e3?`${a}${Math.round(o).toLocaleString("en-US")}`:`${a}${o.toFixed(2)}`}function Mm(e){const t=e.topModels[0];if(t){const n=parseFloat(t.percent);return Number.isFinite(n)&&n>=60?y("share.hook.top_loyal",{percent:Math.round(n),name:t.name}):e.activeDays>=60?y("share.hook.days_record",{days:e.activeDays}):Number.isFinite(n)&&n>=30?y("share.hook.top_led",{name:t.name,percent:Math.round(n)}):e.topModels.length>1?y("share.hook.multi_models",{count:e.topModels.length,days:e.activeDays}):y("share.hook.days_with_model",{days:e.activeDays,name:t.name})}return e.activeDays>0?y("share.hook.days_record",{days:e.activeDays}):y("share.hook.new_chapter")}function jm(e,t){const n=(e||"").length;if(n<=t.baseChars)return t.baseSize;const r=t.baseSize-(n-t.baseChars)*t.shrinkPerChar;return Math.max(t.minSize,r)}function Dm(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 Cm({weeks:e,palette:t,width:n,gap:r=3,radius:a=2,emptyColor:o}){if(!Array.isArray(e)||e.length===0||!n||n<=0)return null;const l=t||["#eee","#ccc","#999","#666","#333"],i=o||l[0],c=e.length,d=(c-1)*r,u=Math.max(4,(n-d)/c),f=7*u+6*r;return s.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((h,g)=>(Array.isArray(h)?h:[]).map((p,k)=>{if(k>=7)return null;const v=Dm(p),x=g*(u+r),_=k*(u+r),D=v===null?i:l[v];return s.jsx("rect",{x,y:_,width:u,height:u,rx:a,ry:a,fill:D},`${g}-${k}`)}))})}const Tm="oklch(0.97 0.01 85)",_e="oklch(0.18 0.02 85)",it="oklch(0.38 0.015 85)",Xa="oklch(0.55 0.012 85)",ht="oklch(0.55 0.22 25)",gt='"Instrument Serif", "Times New Roman", Georgia, serif',Om='"Inter Tight", "Helvetica Neue", Arial, sans-serif',Am=["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)"];function ls({data:e}){const t=Sm(e),n=hr(e.totalTokens),r=is(e.totalCost,{currency:e.currency,rate:e.exchangeRate}),a=Nm(e.startDate),o=jm(n,{baseSize:188,baseChars:9,shrinkPerChar:14,minSize:104}),l=Mm(e),i=Array.isArray(e.heatmapWeeks)&&e.heatmapWeeks.length>0;return s.jsxs("div",{style:{width:"100%",height:"100%",background:Tm,color:_e,fontFamily:Om,padding:"80px 88px 68px 88px",boxSizing:"border-box",display:"flex",flexDirection:"column",position:"relative"},children:[s.jsxs("header",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",gap:24,paddingBottom:14,borderBottom:`1px solid ${Xa}`},children:[s.jsxs("div",{style:{display:"flex",alignItems:"center",gap:14,fontSize:14,fontWeight:500,letterSpacing:"0.22em",textTransform:"uppercase",color:_e},children:[s.jsx("div",{style:{width:10,height:10,borderRadius:"50%",background:ht}}),"The Token Tracker"]}),s.jsxs("div",{style:{fontSize:12,letterSpacing:"0.22em",textTransform:"uppercase",color:it,textAlign:"right"},children:[y("share.card.broadsheet.issue")," № ",t]})]}),s.jsxs("div",{style:{marginTop:24,display:"flex",justifyContent:"space-between",alignItems:"flex-end",gap:24},children:[s.jsxs("div",{children:[s.jsx("div",{style:{fontSize:12,letterSpacing:"0.2em",textTransform:"uppercase",color:it,marginBottom:6},children:y("share.card.broadsheet.by")}),s.jsx("div",{style:{fontFamily:gt,fontSize:52,fontStyle:"italic",lineHeight:1,color:_e,letterSpacing:"-0.01em"},children:e.handle})]}),s.jsxs("div",{style:{fontSize:12,letterSpacing:"0.18em",textTransform:"uppercase",color:it,textAlign:"right",lineHeight:1.6},children:[y("share.card.broadsheet.tracked_since"),s.jsx("br",{}),s.jsx("span",{style:{color:_e},children:a})]})]}),s.jsxs("div",{style:{marginTop:40,display:"flex",flexDirection:"column"},children:[s.jsx("div",{style:{fontSize:13,letterSpacing:"0.3em",textTransform:"uppercase",color:ht,marginBottom:10},children:y("share.card.broadsheet.total_tokens")}),s.jsx("div",{style:{fontFamily:gt,fontSize:o,fontWeight:400,lineHeight:.86,letterSpacing:"-0.032em",color:_e,fontFeatureSettings:'"lnum" 1, "tnum" 1',whiteSpace:"nowrap",overflow:"hidden"},children:n}),s.jsxs("div",{style:{marginTop:14,fontFamily:gt,fontStyle:"italic",fontSize:34,lineHeight:1.15,color:_e,letterSpacing:"-0.005em",whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis"},children:["“",l,"”"]}),s.jsx("div",{style:{marginTop:14,height:1,background:ht,width:"100%"}}),s.jsxs("div",{style:{marginTop:10,display:"flex",justifyContent:"space-between",fontSize:13,letterSpacing:"0.16em",textTransform:"uppercase",color:it},children:[s.jsxs("span",{children:[y("share.card.broadsheet.estimated_spend")," · ",r]}),s.jsx("span",{children:y("share.card.broadsheet.billable_days",{days:e.activeDays})})]})]}),i?s.jsxs("section",{style:{marginTop:40},children:[s.jsxs("div",{style:{display:"flex",alignItems:"baseline",justifyContent:"space-between",marginBottom:12},children:[s.jsx("div",{style:{fontSize:12,letterSpacing:"0.3em",textTransform:"uppercase",color:_e,fontWeight:600},children:y("share.card.broadsheet.heatmap_title")}),s.jsx("div",{style:{fontSize:11,letterSpacing:"0.18em",textTransform:"uppercase",color:it},children:y("share.card.broadsheet.heatmap_days_on_record",{active:e.heatmapActiveDays,total:e.heatmapTotalDays})})]}),s.jsx(Cm,{weeks:e.heatmapWeeks,palette:Am,width:1024,gap:3,radius:2})]}):null,s.jsxs("section",{style:{marginTop:30,flex:1},children:[s.jsxs("div",{style:{display:"flex",alignItems:"baseline",justifyContent:"space-between",borderBottom:`1px solid ${_e}`,paddingBottom:10,marginBottom:6},children:[s.jsx("div",{style:{fontSize:12,letterSpacing:"0.3em",textTransform:"uppercase",color:_e,fontWeight:600},children:y("share.card.broadsheet.roster_title")}),s.jsx("div",{style:{fontSize:11,letterSpacing:"0.18em",textTransform:"uppercase",color:it},children:y("share.card.broadsheet.roster_subtitle")})]}),e.topModels.length===0?s.jsx("div",{style:{fontFamily:gt,fontStyle:"italic",fontSize:26,color:it,paddingTop:14},children:y("share.card.broadsheet.empty")}):e.topModels.map((c,d)=>s.jsxs("div",{style:{display:"grid",gridTemplateColumns:"52px 1fr auto 68px",alignItems:"baseline",gap:16,padding:"13px 0",borderBottom:`1px solid ${Xa}`},children:[s.jsx("div",{style:{fontFamily:gt,fontSize:34,fontStyle:"italic",color:ht,lineHeight:1},children:String(d+1).padStart(2,"0")}),s.jsx("div",{style:{fontFamily:gt,fontSize:32,color:_e,lineHeight:1.1,letterSpacing:"-0.01em",whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis"},children:c.name}),s.jsx("div",{style:{fontFamily:gt,fontSize:28,color:_e,fontFeatureSettings:'"lnum" 1, "tnum" 1',whiteSpace:"nowrap"},children:hr(c.tokens)}),s.jsxs("div",{style:{fontSize:13,letterSpacing:"0.1em",color:it,textAlign:"right",fontFeatureSettings:'"tnum" 1'},children:[c.percent,"%"]})]},c.id||c.name))]}),s.jsxs("footer",{style:{marginTop:18,paddingTop:12,borderTop:`1px solid ${_e}`,display:"flex",justifyContent:"space-between",alignItems:"center",fontSize:12,letterSpacing:"0.22em",textTransform:"uppercase",color:_e},children:[s.jsxs("div",{style:{display:"flex",gap:28},children:[s.jsxs("span",{children:[y("share.card.broadsheet.global_rank")," ",s.jsxs("span",{style:{color:ht},children:["№ ",e.rank!=null?e.rank:"—"]})]}),s.jsxs("span",{children:[y("share.card.broadsheet.active_days")," ",s.jsx("span",{style:{color:ht},children:y("share.card.broadsheet.days_count",{days:e.activeDays})})]})]}),s.jsxs("div",{children:[y("share.card.broadsheet.track_yours")," ",s.jsx("span",{style:{color:ht},children:"→ tokentracker.cc"})]})]})]})}const Em=os["annual-report"].width,Fm="#0a0820",lt="#ffffffee",pt="rgba(255,255,255,0.45)",or="#a78bfa",Wm={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(", ")},yn={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"},gr='"Space Grotesk", "Inter Tight", sans-serif',sr='"Inter Tight", sans-serif',Im="rgba(255,255,255,0.06)",cs=[Im,"#4a3d8f","#6b5cbe","#9060e0","#d946ef"],ds=48,us=28,vn=4,fs=20,Pm=Em-ds*2-us*2,Lm=(Pm-fs*2)/3,yr=Math.min(Math.floor((Lm-vn*6)/7),40),Bm=yr*7+vn*6;function Rm(e){if(!Array.isArray(e))return e;const t=[];for(const i of e)if(Array.isArray(i))for(const c of i)c?.day&&!c.future&&c.value>0&&t.push(c.value);if(!t.length)return e;t.sort((i,c)=>i-c);const n=i=>{const c=t.length,d=(c-1)*i,u=Math.floor(d);return Math.round((t[u]??0)+((t[Math.min(c-1,u+1)]??0)-(t[u]??0))*(d-u))},r=n(.5),a=n(.75),o=n(.9),l=i=>!i||i<=0?0:i<=r?1:i<=a?2:i<=o?3:4;return e.map(i=>Array.isArray(i)?i.map(c=>c?.day&&!c.future&&typeof c.value=="number"?{...c,level:l(c.value)}:c):i)}function $m(e){if(!Array.isArray(e))return[];const t={},n=Rm(e);for(const r of n)if(Array.isArray(r))for(const a of r){if(!a?.day||a.future)continue;const o=a.day.split("-");if(o.length<2)continue;const l=`${o[0]}-${o[1]}`;(t[l]??=[]).push(a)}return Object.entries(t).sort(([r],[a])=>r.localeCompare(a)).slice(-12).map(([r,a])=>({month:parseInt(r.split("-")[1],10),cells:a}))}function Ym(e){if(!e.length)return[];const t=[...e].sort((l,i)=>l.day.localeCompare(i.day));let n=new Date(`${t[0].day}T00:00:00Z`).getUTCDay();const r=Array(n).fill(null).concat(t),a=[];for(let l=0;l<r.length;l+=7)a.push(r.slice(l,l+7));const o=a[a.length-1];for(;o&&o.length<7;)o.push(null);return a.slice(0,6)}const Hm=["","Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];function Um(e){if(!Array.isArray(e))return 0;const t=[];for(const a of e)if(Array.isArray(a))for(const o of a)o?.day&&!o.future&&t.push(o);t.sort((a,o)=>a.day.localeCompare(o.day));let n=0,r=0;for(const a of t)(a.level||0)>0?(r++,r>n&&(n=r)):r=0;return n}function Qa(e){const[t,n]=m.useState(null);return m.useEffect(()=>{if(!e){n(null);return}let r=!1;const a=new Image;return a.crossOrigin="anonymous",a.onload=()=>{if(!r)try{const o=document.createElement("canvas");o.width=a.naturalWidth,o.height=a.naturalHeight,o.getContext("2d").drawImage(a,0,0),n(o.toDataURL("image/png"))}catch{n(null)}},a.onerror=()=>{r||n(null)},a.src=e,()=>{r=!0}},[e]),t}function zm({data:e}){const t=Ym(e.cells);return s.jsxs("div",{children:[s.jsx("div",{style:{fontSize:16,fontWeight:600,color:pt,fontFamily:gr,marginBottom:4},children:Hm[e.month]}),s.jsx("div",{style:{display:"flex",flexDirection:"column",gap:vn},children:t.map((n,r)=>s.jsx("div",{style:{display:"flex",gap:vn},children:n.map((a,o)=>{const l=a?Math.min(4,Math.max(0,a.level||0)):-1;return s.jsx("div",{style:{width:yr,height:yr,borderRadius:4,background:l<0?"transparent":cs[l]}},o)})},r))})]})}function qm({data:e}){const t=$m(e.heatmapWeeks),n=Um(e.heatmapWeeks),r=e.topModels[0],a=e.avatarUrl||null,o=Qa(a),l=Qa("/neon_bg.png"),i=(e.handle||"?")[0].toUpperCase(),c=16;return s.jsxs("div",{style:{width:"100%",height:"100%",background:Fm,fontFamily:gr,position:"relative",overflow:"hidden",boxSizing:"border-box"},children:[s.jsx("img",{src:l||"/neon_bg.png",alt:"",style:{position:"absolute",inset:0,width:"100%",height:"100%",objectFit:"cover",pointerEvents:"none"}}),s.jsxs("div",{style:{position:"relative",zIndex:1,display:"flex",flexDirection:"column",height:"100%",padding:ds,boxSizing:"border-box"},children:[s.jsxs("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center",marginBottom:c*3},children:[s.jsxs("div",{style:{display:"flex",alignItems:"center",gap:16},children:[s.jsx("img",{src:"/app-icon.png",alt:"",width:64,height:64,style:{width:64,height:64,borderRadius:16,display:"block"}}),s.jsxs("div",{children:[s.jsx("div",{style:{fontSize:20,fontWeight:500,color:pt,lineHeight:1.2},children:"Token Tracker"}),s.jsx("div",{style:{fontSize:36,fontWeight:700,lineHeight:1.15,color:lt},children:y("share.card.annual.report_title")})]})]}),s.jsxs("div",{style:{display:"flex",alignItems:"center",gap:10},children:[s.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:o?s.jsx("img",{src:o,alt:"",width:48,height:48,style:{width:48,height:48,objectFit:"cover",display:"block"},crossOrigin:"anonymous",referrerPolicy:"no-referrer"}):s.jsx("span",{style:{fontSize:20,fontWeight:700,color:lt},children:i})}),s.jsx("div",{style:{fontSize:32,fontWeight:700,color:lt},children:e.handle})]})]}),s.jsxs("div",{style:{...Wm,borderRadius:22,padding:us,marginBottom:c},children:[s.jsxs("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center",marginBottom:12},children:[s.jsxs("div",{style:{display:"flex",alignItems:"center",gap:6,fontSize:14,color:pt},children:[s.jsx("span",{children:y("share.card.annual.less")}),cs.map((d,u)=>s.jsx("div",{style:{width:16,height:16,borderRadius:3,background:d}},u)),s.jsx("span",{children:y("share.card.annual.more")})]}),s.jsx("div",{style:{fontSize:16,fontWeight:700,letterSpacing:"0.14em",color:"rgba(255,255,255,0.22)",textTransform:"uppercase"},children:y("share.card.annual.heatmap_title")})]}),s.jsx("div",{style:{display:"grid",gridTemplateColumns:`repeat(3,${Bm}px)`,gap:`8px ${fs}px`,justifyContent:"center"},children:t.map(d=>s.jsx(zm,{data:d},d.month))})]}),s.jsxs("div",{style:{display:"grid",gridTemplateColumns:"1fr 1fr",gap:c,marginBottom:c},children:[s.jsxs("div",{style:{...yn,borderRadius:22,padding:"28px 16px",textAlign:"center"},children:[s.jsx("div",{style:{fontFamily:sr,fontSize:52,fontWeight:700,color:lt,letterSpacing:"-0.02em",lineHeight:1},children:hr(e.totalTokens)}),s.jsx("div",{style:{fontSize:22,color:pt,marginTop:12},children:y("share.card.annual.total_tokens")})]}),s.jsxs("div",{style:{...yn,borderRadius:22,padding:"28px 16px",textAlign:"center"},children:[s.jsx("div",{style:{fontFamily:sr,fontSize:52,fontWeight:700,color:lt,letterSpacing:"-0.02em",lineHeight:1},children:is(e.totalCost,{currency:e.currency,rate:e.exchangeRate})}),s.jsx("div",{style:{fontSize:22,color:pt,marginTop:12},children:y("share.card.annual.estimated_cost")})]})]}),s.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:c},children:[s.jsxs("div",{style:{...yn,borderRadius:22,padding:"18px 24px",display:"flex",justifyContent:"space-between",alignItems:"center"},children:[s.jsxs("div",{style:{display:"flex",alignItems:"center",gap:10},children:[s.jsxs("svg",{width:"22",height:"22",viewBox:"0 0 24 24",fill:"none",stroke:or,strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:[s.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"}),s.jsx("circle",{cx:"12",cy:"12",r:"4"})]}),s.jsx("span",{style:{fontSize:20,color:pt},children:y("share.card.annual.longest_streak")})]}),s.jsx("span",{style:{fontFamily:sr,fontSize:28,fontWeight:700,color:lt},children:y("share.card.annual.days_count",{days:n})})]}),s.jsxs("div",{style:{...yn,borderRadius:22,padding:"18px 24px",display:"flex",justifyContent:"space-between",alignItems:"center"},children:[s.jsxs("div",{style:{display:"flex",alignItems:"center",gap:10},children:[s.jsxs("svg",{width:"22",height:"22",viewBox:"0 0 24 24",fill:"none",stroke:or,strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:[s.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"}),s.jsx("circle",{cx:"12",cy:"12",r:"4"})]}),s.jsx("span",{style:{fontSize:20,color:pt},children:y("share.card.annual.top_model")})]}),s.jsx("span",{style:{fontFamily:gr,fontSize:28,fontWeight:700,color:lt},children:r?r.name:"—"})]})]}),s.jsxs("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center",marginTop:"auto"},children:[s.jsxs("div",{style:{display:"flex",alignItems:"center",gap:10},children:[s.jsx("img",{src:"/app-icon.png",alt:"",width:44,height:44,style:{width:44,height:44,borderRadius:8,display:"block"}}),s.jsx("span",{style:{fontSize:22,fontWeight:600,color:lt},children:"Token Tracker"})]}),s.jsx("span",{style:{fontSize:22,fontWeight:600,color:or},children:"tokentracker.cc"})]})]})]})}const ms=[{id:"annual-report",labelKey:"share.variant.neon"},{id:"broadsheet",labelKey:"share.variant.broadsheet"}],Vm={broadsheet:ls,"annual-report":qm};function hs(e){return os[e]||{width:rs,height:as}}function Gm(e){const t=ms.find(n=>n.id===e);return t?.labelKey?y(t.labelKey):e}const Ja=m.forwardRef(function({data:t,variant:n},r){const a=Vm[n]||ls,{width:o,height:l}=hs(n);return s.jsx("div",{ref:r,"data-share-card":"true",style:{width:o,height:l,position:"relative",overflow:"hidden",boxSizing:"border-box"},children:s.jsx(a,{data:t})})});function pn(){return typeof window>"u"?!1:!!window?.webkit?.messageHandlers?.nativeBridge}const Km=440;function Xm(){const[e,t]=m.useState(null),n=m.useRef(null),r=m.useCallback((a,o="info")=>{n.current&&window.clearTimeout(n.current),t({id:Date.now(),kind:o,text:a}),n.current=window.setTimeout(()=>t(null),2800)},[]);return m.useEffect(()=>()=>{n.current&&window.clearTimeout(n.current)},[]),{toast:e,push:r}}function ir({onClick:e,disabled:t,children:n,emphasis:r,ariaLabel:a}){return s.jsx("button",{type:"button",onClick:e,disabled:t,"aria-label":a,className:["group relative flex items-center justify-between gap-3 w-full px-4 py-3 text-left","rounded-lg border transition-colors",r?"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 Qm({open:e,onClose:t,data:n,twitterText:r}){const[a,o]=m.useState(null),[l,i]=m.useState(""),[c,d]=m.useState("annual-report"),u=m.useRef(null),{toast:f,push:h}=Xm(),g=lo(),b=m.useMemo(()=>{const S=g?.user;if(!S||typeof S!="object")return null;const O=S.user_metadata||{},E=S.profile||{},A=O.avatar_url||O.picture||E.avatar_url||S.avatar_url;return typeof A=="string"&&A.trim()?A.trim():null},[g?.user]);m.useEffect(()=>{e&&(o(null),i(n?.handle||""))},[e,n?.handle]);const p=n&&{...n,handle:l||n.handle,avatarUrl:b},{width:k,height:v}=hs(c),x=Km/k;m.useEffect(()=>{if(!e)return;const S=O=>{O.key==="Escape"&&t?.()};return window.addEventListener("keydown",S),()=>window.removeEventListener("keydown",S)},[e,t]);const _=m.useCallback(async()=>{const S=u.current;if(!S)return null;try{return await bm(S)}catch(O){return console.warn("[share] capture failed",O),null}},[]),D=m.useCallback(async()=>{if(a)return;o("copy");const S=await _();if(!S){h(y("share.toast.failed"),"error"),o(null);return}let O=!1;if(pn()){const E=await ar(S);E&&(O=(await hm(E)).ok)}else O=await dr(S);h(O?y("share.toast.copied"):y("share.toast.failed"),O?"success":"error"),o(null)},[a,_,h]),N=m.useCallback(()=>`tokentracker-share-${Date.now()}.png`,[]),w=m.useCallback(async()=>{if(a)return;o("download");const S=await _();if(!S){h(y("share.toast.failed"),"error"),o(null);return}if(pn()){const E=await ar(S);if(E&&(await Ga(E,N())).ok){h(y("share.toast.downloaded"),"success"),o(null);return}}const O=Ka(S,N());h(O?y("share.toast.downloaded"):y("share.toast.failed"),O?"success":"error"),o(null)},[a,_,N,h]),T=m.useCallback(async()=>{if(a)return;o("x");const S=await _();if(!S){h(y("share.toast.failed"),"error"),o(null);return}if(pn()){const K=await ar(S);K&&(await Ga(K,N()),h(y("share.toast.downloaded"),"success"))}else await dr(S)?h(y("share.toast.copied"),"success"):Ka(S,N());const O=new URL("https://twitter.com/intent/tweet");r&&O.searchParams.set("text",r);const E=g?.user?.id,A=typeof E=="string"&&E?`/u/${E}`:"/";if(O.searchParams.set("url",`https://www.tokentracker.cc${A}?ref=share`),pn())try{window.webkit?.messageHandlers?.nativeBridge?.postMessage({type:"action",name:"openURL",value:O.toString()})}catch{window.open(O.toString(),"_blank","noopener,noreferrer")}else window.open(O.toString(),"_blank","noopener,noreferrer");o(null)},[a,_,h,r,N,g]);return e?s.jsxs("div",{role:"dialog","aria-modal":"true","aria-label":y("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:S=>{S.target===S.currentTarget&&t?.()},children:[s.jsx("div",{"aria-hidden":!0,style:{position:"fixed",left:0,top:0,width:k,height:v,pointerEvents:"none",opacity:0,zIndex:-1,clip:"rect(0,0,0,0)",overflow:"hidden"},children:s.jsx(Ja,{ref:u,data:p,variant:c})}),s.jsxs(be.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:[s.jsxs("div",{className:"flex flex-col lg:flex-row max-h-[92vh]",children:[s.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:s.jsxs("div",{style:{width:k*x,height:v*x,flexShrink:0,position:"relative"},className:"rounded-xl overflow-hidden shadow-oai-md ring-1 ring-black/5",children:[a?s.jsx("div",{className:"absolute inset-0 z-10 flex items-center justify-center bg-white/70 dark:bg-black/50",children:s.jsxs("svg",{className:"animate-spin h-6 w-6 text-oai-gray-500",viewBox:"0 0 24 24",fill:"none",children:[s.jsx("circle",{className:"opacity-25",cx:"12",cy:"12",r:"10",stroke:"currentColor",strokeWidth:"3"}),s.jsx("path",{className:"opacity-75",fill:"currentColor",d:"M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4z"})]})}):null,s.jsx("div",{style:{width:k,height:v,transform:`scale(${x})`,transformOrigin:"top left"},children:s.jsx(Ja,{data:p,variant:c})})]})}),s.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:[s.jsxs("div",{className:"flex items-start justify-between gap-2",children:[s.jsxs("div",{children:[s.jsx("h2",{className:"text-lg font-semibold text-oai-black dark:text-oai-white",children:y("share.modal.title")}),s.jsx("p",{className:"mt-1 text-xs text-oai-gray-500 dark:text-oai-gray-400",children:y("share.modal.subtitle")})]}),s.jsx("button",{type:"button",onClick:t,"aria-label":y("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:s.jsx("svg",{width:"18",height:"18",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:s.jsx("path",{d:"M18 6L6 18M6 6l12 12"})})})]}),s.jsxs("div",{children:[s.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:y("share.modal.name_label")}),s.jsx("input",{id:"share-handle",type:"text",value:l,onChange:S=>i(S.target.value),placeholder:y("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"})]}),s.jsxs("div",{children:[s.jsx("label",{className:"text-[11px] tracking-[0.18em] uppercase text-oai-gray-500 dark:text-oai-gray-400 mb-1.5 block",children:y("share.modal.style_label")}),s.jsx("div",{className:"flex gap-2",children:ms.map(S=>s.jsx("button",{type:"button",onClick:()=>d(S.id),className:["flex-1 px-3 py-2 text-sm rounded-lg border transition-colors",c===S.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:Gm(S.id)},S.id))})]}),s.jsxs("div",{className:"grid grid-cols-1 gap-2",children:[s.jsxs(ir,{onClick:T,disabled:!!a,emphasis:!0,children:[s.jsxs("span",{className:"flex items-center gap-3",children:[s.jsx("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"currentColor","aria-hidden":!0,children:s.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"})}),s.jsx("span",{className:"font-medium text-sm",children:y("share.modal.action.x")})]}),s.jsx("span",{className:"text-[11px] opacity-70",children:a==="x"?y("share.toast.working"):y("share.modal.hint.x")})]}),s.jsxs(ir,{onClick:w,disabled:!!a,children:[s.jsxs("span",{className:"flex items-center gap-3",children:[s.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:[s.jsx("path",{d:"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4"}),s.jsx("polyline",{points:"7 10 12 15 17 10"}),s.jsx("line",{x1:"12",y1:"15",x2:"12",y2:"3"})]}),s.jsx("span",{className:"font-medium text-sm",children:y("share.modal.action.download")})]}),s.jsx("span",{className:"text-[11px] text-oai-gray-500 dark:text-oai-gray-400",children:"PNG"})]}),s.jsxs(ir,{onClick:D,disabled:!!a,children:[s.jsxs("span",{className:"flex items-center gap-3",children:[s.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:[s.jsx("rect",{x:"9",y:"9",width:"13",height:"13",rx:"2",ry:"2"}),s.jsx("path",{d:"M5 15H4a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h9a2 2 0 0 1 2 2v1"})]}),s.jsx("span",{className:"font-medium text-sm",children:y("share.modal.action.copy")})]}),s.jsx("span",{className:"text-[11px] text-oai-gray-500 dark:text-oai-gray-400",children:y("share.modal.hint.copy")})]})]}),s.jsx("div",{className:"mt-auto pt-4 border-t border-oai-gray-200 dark:border-oai-gray-800",children:s.jsx("p",{className:"text-[11px] leading-relaxed text-oai-gray-500 dark:text-oai-gray-400",children:y("share.modal.footer")})})]})]}),s.jsx(xr,{children:f?s.jsx(be.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:s.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 Jm(e){const{enabled:t,handle:n,startDate:r,activeDays:a,summary:o,topModels:l,period:i,periodFrom:c,periodTo:d,heatmap:u,accessToken:f,userId:h,currency:g,exchangeRate:b}=e,[p,k]=m.useState(null),v=b;return m.useEffect(()=>{if(!t||!h&&!vt())return;let x=!1;return(async()=>{try{const D=await qi({accessToken:f,userId:h,period:i==="day"||i==="custom"?"week":i,metric:"all",limit:100,offset:0});if(x)return;const w=(Array.isArray(D?.entries)?D.entries:Array.isArray(D)?D:[]).find(S=>S?.is_me===!0),T=typeof w?.rank=="number"?w.rank:null;k(T)}catch{x||k(null)}})(),()=>{x=!0}},[t,f,h,i]),m.useMemo(()=>wm({handle:n,startDate:r,activeDays:a,summary:o,topModels:l,rank:p,period:i,periodFrom:c,periodTo:d,heatmap:u,currency:g,exchangeRate:typeof v=="number"?v:void 0}),[n,r,a,o,l,p,i,c,d,u,g,v])}const Zm=["day","week","month","total","custom"],lr=new Set(["day","hour","month"]),en=new Set(["day","total","custom"]);function cr(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 r=Number(n);return Number.isFinite(r)&&r>0}return!1}function bn(e){return e?It(e,null):null}function Za(e){return e?e?.billable_total_tokens??e?.value??e?.total_tokens:null}function eh(e){if(typeof e!="string"||!e)return null;const t=e.split("-");if(t.length!==3)return null;const n=Number(t[0]),r=Number(t[1])-1,a=Number(t[2]);if(!Number.isFinite(n)||!Number.isFinite(r)||!Number.isFinite(a))return null;const o=new Date(Date.UTC(n,r,a));return Number.isFinite(o.getTime())?o:null}function th(e,t){return new Date(Date.UTC(e.getUTCFullYear(),e.getUTCMonth(),e.getUTCDate()+t))}function nh(e){return e?e==="www.tokentracker.cc"||e==="tokentracker.cc":!1}function rh(){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:!nh(window.location.hostname)}function ph({baseUrl:e,auth:t,signedIn:n,sessionSoftExpired:r,signOut:a,publicMode:o=!1,publicToken:l=null,signInUrl:i="/sign-in",signUpUrl:c="/sign-up"}){const{resolvedLocale:d}=Vi(),{currency:u,rate:f}=Mn(),[h,g]=m.useState(!1),[b,p]=m.useState(null),[k,v]=m.useState(null),[x,_]=m.useState(!1),[D,N]=m.useState(null),[w,T]=m.useState(0),[S,O]=m.useState(0),[E,A]=m.useState(null),[K,I]=m.useState(()=>typeof window>"u"||!window.matchMedia?!1:window.matchMedia("(max-width: 640px)").matches),P=m.useMemo(()=>typeof window>"u"?!1:Gi(window.location.search),[]),C=m.useMemo(()=>rh(),[]),[j,H]=m.useState(!1),[L,W]=m.useState(!1),Y=2200,[V,se]=m.useState(!0),[z,G]=m.useState(!1),[J,ae]=m.useState(!1),[ce,qe]=m.useState(!1),ye=vt(),Oe=n&&!r,Rt=m.useMemo(()=>Oe&&(typeof t=="function"||typeof t=="string"||t&&typeof t=="object")?t:null,[t,Oe]),Ie=Oe?Rt:null,je=o?Ki(l):Ie,$t=n||ye||o,Ve=Oe&&Lt(Ie),Ge=n&&r&&!o;m.useEffect(()=>{if(!n||ye){p(null),v(null),_(!1),N(null);return}if(o)return;if(!Ve){p(null),v(null),_(!1),N(null);return}let M=!0;const B=()=>{p(null),v(null),_(!1),N(null)};return _(!0),N(null),(async()=>{let R=null;try{R=await wt(Ie)}catch{R=null}if(M){if(!R){B();return}try{const X={link_code:null,expires_at:null};if(!M)return;p(typeof X?.link_code=="string"?X.link_code:null),v(typeof X?.expires_at=="string"?X.expires_at:null)}catch(X){if(!M)return;p(null),v(null),N(X?.message||"Failed to load link code")}finally{if(!M)return;_(!1)}}})(),()=>{M=!1}},[e,ye,n,o,Ve,Ie,S]);const De=typeof window<"u"&&(window.location.hostname==="localhost"||window.location.hostname==="127.0.0.1");m.useEffect(()=>{if(!De&&(!n||ye||o)){A(null);return}if(!De&&!Ve){A(null);return}let M=!0;return(async()=>{let B=null;try{B=await wt(Ie)}catch{B=null}if(M){if(!B&&!De){A(null);return}try{const R=await Xi({baseUrl:e,accessToken:B});if(!M)return;A(R&&typeof R=="object"?R:null)}catch{if(!M)return;A(null)}}})(),()=>{M=!1}},[Ve,e,Ie,ye,o,n]);const _t=m.useMemo(()=>{if(!k)return!1;const M=Date.parse(k);if(!Number.isFinite(M))return!1;const B=w||Date.now();return M<=B},[k,w]);m.useEffect(()=>{!n||ye||o||!k||!_t||x||(p(null),v(null),N(null),O(M=>M+1))},[_t,k,x,ye,n]),m.useEffect(()=>{if(!k||o)return;const M=Date.parse(k);if(!Number.isFinite(M))return;const B=Date.now();if(T(B),M<=B)return;const R=window.setTimeout(()=>T(Date.now()),M-B),X=()=>{typeof document>"u"||document.visibilityState==="visible"&&T(Date.now())};return typeof document<"u"&&document.addEventListener("visibilitychange",X),window.addEventListener("focus",X),()=>{window.clearTimeout(R),typeof document<"u"&&document.removeEventListener("visibilitychange",X),window.removeEventListener("focus",X)}},[k]),m.useEffect(()=>{if(typeof window>"u"||!window.matchMedia)return;const M=window.matchMedia("(max-width: 640px)"),B=()=>I(M.matches);return B(),M.addEventListener?(M.addEventListener("change",B),()=>M.removeEventListener("change",B)):(M.addListener(B),()=>M.removeListener(B))},[]);const ge=m.useMemo(()=>so(),[]),fe=m.useMemo(()=>oo(),[]),ve=m.useMemo(()=>Qi(),[]),Pe=o?null:t?.userId||t?.email||"default",[tt,Le]=m.useState("month"),[xe,Yt]=m.useState(null),[Be,Ht]=m.useState(null),[Ut,nt]=m.useState(!1),te=P?"total":tt,Nt=m.useMemo(()=>te==="custom"&&xe&&Be?{from:xe,to:Be}:Ji(te,{timeZone:ge,offsetMinutes:fe,now:ve}),[ve,te,ge,fe,xe,Be]),ke=Nt.from,we=Nt.to,St=m.useMemo(()=>Zi({timeZone:ge,offsetMinutes:fe}),[ge,fe]),ct=m.useMemo(()=>el({timeZone:ge,offsetMinutes:fe}),[ge,fe]),Mt=m.useMemo(()=>`Local time (${ct})`,[ct]),zt=ge,Q=fe,ee=St,U=m.useMemo(()=>br({timeZone:ge,offsetMinutes:fe,date:ve||new Date}),[ve,ge,fe]),Z=m.useMemo(()=>{const M=eh(U)||new Date,B=th(M,-29);return{from:Wt(B),to:Wt(M)}},[U]),{daily:ie,summary:q,rolling:qt,source:dt,loading:Vt,error:rt,refresh:at}=ca({baseUrl:e,accessToken:je,guestAllowed:Ge,from:ke,to:we,includeDaily:te!=="total",cacheKey:Pe,timeZone:ge,tzOffsetMinutes:fe,now:ve}),{daily:Ke,loading:Cn,refresh:Ar}=ca({baseUrl:e,accessToken:je,guestAllowed:Ge,from:Z.from,to:Z.to,includeDaily:!0,cacheKey:Pe?`${Pe}.daily-breakdown`:"daily-breakdown",timeZone:ge,tzOffsetMinutes:fe,now:ve}),{breakdown:ut,loading:gs,refresh:Er}=Ll({baseUrl:e,accessToken:je,guestAllowed:Ge,from:ke,to:we,cacheKey:Pe,timeZone:ge,tzOffsetMinutes:fe}),[Fr,ys]=m.useState(3),{entries:ps,loading:bs,refresh:Wr}=Tl({baseUrl:e,accessToken:je,limit:Fr,from:ke,to:we,timeZone:ge,tzOffsetMinutes:fe}),Ir=te==="week"||te==="month",ln=te==="week"||te==="month",Pr=m.useMemo(()=>ie.filter(M=>M?.future?!1:!M?.day||!U?!0:String(M.day)<=String(U)),[ie,U]),{rows:Xe,from:xs,to:ks,loading:ws,refresh:Lr}=Al({baseUrl:e,accessToken:je,guestAllowed:Ge,period:te,from:ke,to:we,months:24,cacheKey:Pe,timeZone:zt,tzOffsetMinutes:Q,now:ve,sharedRows:Ir?ie:null,sharedRange:Ir?{from:ke,to:we}:null}),{daily:jt,heatmap:Re,loading:Br,refresh:Rr}=Cl({baseUrl:e,accessToken:je,guestAllowed:Ge,weeks:52,cacheKey:Pe,timeZone:ge,tzOffsetMinutes:fe,now:ve}),{refresh:$r}=nl(),Ae=m.useMemo(()=>te==="day"?"hour":te==="total"?"month":"day",[te]),vs=m.useMemo(()=>ua(Ae),[Ae]),cn="day",_s=m.useMemo(()=>ua(cn),[]),[Ee,Yr]=m.useState(()=>({key:"day",dir:"desc"}));m.useEffect(()=>{Yr(M=>!lr.has(M.key)||M.key===Ae?M:{key:Ae,dir:M.dir})},[Ae]);const Dt=m.useMemo(()=>lr.has(Ee.key)&&Ee.key!==Ae?{...Ee,key:Ae}:Ee,[Ae,Ee]),dn=m.useMemo(()=>{if(te==="day")return Array.isArray(Xe)?Xe.filter(R=>R?.hour&&!R?.future):[];if(te==="total"){const R=Array.isArray(Xe)?Xe.filter(X=>X?.month&&!X?.future):[];return Ql(R)}const M=Pr;return!M.some(R=>!R?.missing&&!R?.future)&&ie.length>0?ie.filter(R=>!R?.future).slice(-30).filter(R=>R?.day):M},[te,Xe,Pr,ie]),Gt=m.useMemo(()=>fa(dn,Dt),[dn,Dt]),Ns=m.useMemo(()=>dn.some(M=>!M?.missing&&!M?.future),[dn]),Tn=m.useMemo(()=>{if(!en.has(te))return 1;const M=Math.ceil(Gt.length/wn);return M>0?M:1},[te,Gt.length]),[On,un]=m.useState(0);m.useEffect(()=>{if(!en.has(te)){un(0);return}un(M=>Math.min(M,Tn-1))},[Tn,te]),m.useEffect(()=>{en.has(te)&&un(0)},[te,Ee.dir,Ee.key]);const Ss=m.useMemo(()=>en.has(te)?Jl(Gt,On,wn):Gt,[On,te,Gt]),Hr=m.useMemo(()=>Ke.filter(M=>!M?.future&&M?.day).slice(-30),[Ke]),Ct=m.useMemo(()=>lr.has(Ee.key)?{...Ee,key:cn}:Ee,[Ee]),Ms=m.useMemo(()=>fa(Hr,Ct),[Hr,Ct]),js=m.useMemo(()=>ln?ie:te==="day"?Array.isArray(Xe)?Xe.filter(M=>M?.hour):[]:Xe,[ie,te,Xe,ln]),Ds=ln?ke:xs,Cs=ln?we:ks;function Ts(M,B){return M?.future?"—":M?.missing?y("shared.status.unsynced"):B==="total_tokens"?Qe(bn(M)):Qe(M?.[B])}function Os(M){const B=M?.[Ae];if(B==null)return"";const R=String(B);if(Ae==="hour"){const[X,me]=R.split("T");if(X&&me)return`${X} ${me.slice(0,5)}`}return R}function As(M){const B=M?.[cn];return B==null?"":String(B)}function Es(M){Yr(B=>B.key===M?{key:M,dir:B.dir==="asc"?"desc":"asc"}:{key:M,dir:"desc"})}function Fs(M){return Dt.key!==M?"none":Dt.dir==="asc"?"ascending":"descending"}function Ws(M){return Dt.key!==M?"":Dt.dir==="asc"?"▲":"▼"}function Is(M){return Ct.key!==M?"none":Ct.dir==="asc"?"ascending":"descending"}function Ps(M){return Ct.key!==M?"":Ct.dir==="asc"?"▲":"▼"}const An=m.useMemo(()=>{if(!n&&!ye&&!o&&!De)return 0;const M=Number(Re?.active_days);if(Number.isFinite(M))return M;let B=0;const R=new Set,X=(oe,de,he)=>{typeof oe!="string"||!oe||R.has(oe)||cr(de,he)&&(R.add(oe),B+=1)};if(Array.isArray(jt))for(const oe of jt)X(oe?.day,bn(oe));const me=Array.isArray(Re?.weeks)?Re.weeks:[];for(const oe of me)for(const de of Array.isArray(oe)?oe:[]){const he=Za(de);X(de?.day,he,de?.level)}return B},[n,ye,Re?.active_days,Re?.weeks,jt]),[Ur,zr]=m.useState("month"),Ls=m.useCallback(M=>{M==="custom"?(zr(B=>B==="custom"?"month":B),Le(B=>xe&&Be?"custom":B),nt(!0)):(Le(M),zr(M),nt(!1))},[xe,Be]),Bs=m.useCallback((M,B)=>{Yt(M),Ht(B),Le("custom"),nt(!1)},[]),Rs=m.useCallback(M=>{nt(M),!M&&tt==="custom"&&!xe&&Le(Ur)},[tt,xe,Ur]),qr=m.useCallback(async()=>{await Promise.all([at(),Rr(),Lr(),Er(),Wr(),Ar(),$r()])},[Ar,Rr,Er,Wr,Lr,at,$r]),$s=m.useCallback(async()=>{qe(!0);try{De&&await tl(),await qr()}catch(M){console.error("[DashboardPage] Refresh failed:",M)}finally{qe(!1)}},[De,qr]),Ys=ce||Vt||Cn||Br||ws||gs||bs,Hs=m.useMemo(()=>y("shared.data_source",{source:String(dt||"edge").toUpperCase()}),[dt,d]),fn=m.useMemo(()=>typeof t?.name!="string"?"":t.name.trim(),[t?.name]),Us="",Vr=m.useMemo(()=>!fn||fn.includes("@")?y("dashboard.identity.fallback"):fn,[fn]),Gr=m.useMemo(()=>Vr.replace(/[^a-zA-Z0-9._-]/g,"_"),[Vr]),Kr=m.useMemo(()=>o?y("dashboard.identity.fallback"):Gr,[Gr,Us,o]),Xr=m.useMemo(()=>{let M=null;const B=X=>{typeof X!="string"||!X||(!M||X<M)&&(M=X)};if(Array.isArray(jt))for(const X of jt)X?.day&&cr(bn(X))&&B(X.day);const R=Array.isArray(Re?.weeks)?Re.weeks:[];for(const X of R)for(const me of Array.isArray(X)?X:[]){if(!me?.day)continue;const oe=Za(me),de=me?.level;cr(oe,de)&&B(me.day)}return M},[Re?.weeks,jt]),zs=m.useMemo(()=>o?[]:(Array.isArray(E?.subscriptions?.items)?E.subscriptions.items:[]).map(R=>{const X=typeof R?.tool=="string"?R.tool.trim():"",oe=(typeof R?.plan_type=="string"?R.plan_type:typeof R?.planType=="string"?R.planType:"").trim();return!X||!oe?null:{tool:X,planType:oe,provider:typeof R?.provider=="string"?R.provider.trim():"",product:typeof R?.product=="string"?R.product.trim():"",rateLimitTier:typeof R?.rate_limit_tier=="string"?R.rate_limit_tier.trim():typeof R?.rateLimitTier=="string"?R.rateLimitTier.trim():""}}).filter(Boolean).slice(0,6),[o,E]),qs=s.jsx(rl,{heatmap:Re,timeZoneLabel:St,timeZoneShortLabel:ct,hideLegend:P,defaultToLatestMonth:P}),Vs=m.useMemo(()=>`${ke}..${we}`,[ke,te,we]),Gs=y("usage.summary.total"),ft=bn(q),Qr=y("shared.unit.thousand_abbrev"),Jr=y("shared.unit.million_abbrev"),Zr=y("shared.unit.billion_abbrev"),mn=Se(ft),ea=K&&mn!=null&&Math.abs(mn)>=1e9,Ks=m.useMemo(()=>ea?Te(mn,{thousandSuffix:Qr,millionSuffix:Jr,billionSuffix:Zr,decimals:1}):Qe(ft),[Zr,Jr,ft,mn,Qr,ea]),Xs=y("dashboard.core_index.collapse_label"),Qs=y("dashboard.core_index.expand_label"),Js=y("dashboard.core_index.collapse_aria"),Zs=y("dashboard.core_index.expand_aria"),ei=!P,ti=y("dashboard.screenshot.title_line1"),ni=y("dashboard.screenshot.title_line2"),ri=y("dashboard.screenshot.twitter_label"),ai=y("dashboard.screenshot.twitter_button"),oi=y("dashboard.screenshot.twitter_hint"),Tt=y("shared.placeholder.short"),En=m.useMemo(()=>{const M=Array.isArray(ut?.sources)?ut.sources:[];let B=null,R=0;for(const de of M){const he=It(de?.totals);!Number.isFinite(he)||he<=0||he>R&&(R=he,B=de)}let X=Tt,me=Tt,oe="0.0";if(B&&R>0){X=B?.source?String(B.source).toUpperCase():Tt;const de=Array.isArray(B?.models)?B.models:[];let he=0;for(const ot of de){const Xt=It(ot?.totals);!Number.isFinite(Xt)||Xt<=0||Xt>he&&(he=Xt,me=ot?.model?String(ot.model):Tt)}he>0&&(oe=(he/R*100).toFixed(1))}return{agentName:X,modelName:me,modelPercent:oe}},[ut,Tt]),ta=Qe(ft),Fn=y("dashboard.screenshot.twitter_text",{total_tokens:ta==="-"?Tt:ta,agent_name:En.agentName,model_name:En.modelName,model_percent:En.modelPercent}),Wn=m.useMemo(()=>{if(typeof window>"u")return"";const M=new URL("https://twitter.com/intent/tweet");M.searchParams.set("text",Fn);const B=t?.userId?`/u/${t.userId}`:"/";return M.searchParams.set("url",`https://www.tokentracker.cc${B}?ref=share`),M.toString()},[Fn,t?.userId]),na=m.useCallback(async()=>{if(typeof window>"u")return null;const M=async()=>{const de=performance.now();for(;performance.now()-de<2e3;){const he=document.querySelector("[data-heatmap-scroll='true']");if(!he||he.dataset.latestMonthReady==="true")return;await new Promise(ot=>requestAnimationFrame(ot))}},B=document.querySelector("#root")||document.body,R=document.documentElement,{scrollWidth:X,scrollHeight:me}=document.documentElement;R?.classList.add("screenshot-capture"),document.body?.classList.add("screenshot-capture"),await new Promise(oe=>requestAnimationFrame(oe)),await M();try{const{toBlob:oe,toPng:de}=await co(async()=>{const{toBlob:mt,toPng:Di}=await import("./index-BeoRn2gJ.js");return{toBlob:mt,toPng:Di}},[]),he=await oe(B,{backgroundColor:"#050505",pixelRatio:2,cacheBust:!0,width:X,height:me,style:{width:`${X}px`,height:`${me}px`},filter:mt=>!(mt instanceof HTMLElement)||mt.dataset?.screenshotExclude!=="true"});if(he)return he;const ot=await de(B,{backgroundColor:"#050505",pixelRatio:2,cacheBust:!0,width:X,height:me,style:{width:`${X}px`,height:`${me}px`},filter:mt=>!(mt instanceof HTMLElement)||mt.dataset?.screenshotExclude!=="true"});return ot?await(await fetch(ot)).blob():null}finally{R?.classList.remove("screenshot-capture"),document.body?.classList.remove("screenshot-capture")}},[]),si=m.useCallback(async()=>{if(typeof window>"u"||j)return;H(!0);const M=navigator?.userAgent||"",B=/iP(hone|od|ad)/i.test(M),R=/Safari/i.test(M)&&!/Chrome|Chromium|Edg|OPR|CriOS|FxiOS/i.test(M),X=typeof navigator<"u"&&!!navigator.clipboard?.write&&typeof window<"u"&&!!window.ClipboardItem;let oe=!X||B||R;try{const de=await na();de&&X&&(typeof document<"u"&&!document.hasFocus()&&window.focus?.(),oe=await dr(de))}catch(de){console.error("Failed to capture screenshot",de)}finally{if(H(!1),!oe){console.warn("Failed to write screenshot to clipboard.");return}Wn&&(window.location.href=Wn)}},[na,j,Wn]),ii=m.useMemo(()=>P?[]:Zm,[P]),li=m.useMemo(()=>[{label:y("usage.metric.total"),value:Qe(ft),valueClassName:"text-white"},{label:y("usage.metric.input"),value:Qe(q?.input_tokens)},{label:y("usage.metric.output"),value:Qe(q?.output_tokens)},{label:y("usage.metric.cached_input"),value:Qe(q?.cached_input_tokens)},{label:y("usage.metric.reasoning_output"),value:Qe(q?.reasoning_output_tokens)}],[q?.cached_input_tokens,q?.input_tokens,q?.output_tokens,q?.reasoning_output_tokens,ft]),In=m.useMemo(()=>Sn(q?.total_cost_usd,{currency:u,rate:f}),[q?.total_cost_usd,u,f]),ci=m.useMemo(()=>q?.conversation_count??null,[q?.conversation_count]),ra=m.useMemo(()=>tc(ut,{copyFn:y}),[ut]),aa=m.useMemo(()=>nc(ut,{limit:3,copyFn:y}),[ut]),di=Jm({enabled:L,handle:Kr,startDate:Xr,activeDays:An,summary:q,topModels:aa,period:te,periodFrom:ke,periodTo:we,heatmap:Re,accessToken:typeof je=="string"?je:null,userId:t?.userId||null,currency:u,exchangeRate:f}),ui=m.useCallback(()=>W(!0),[]),fi=m.useCallback(()=>W(!1),[]),mi=m.useCallback(()=>g(!0),[]),hi=m.useCallback(()=>g(!1),[]),gi=In&&In!=="-"&&ra.length>0,Kt=y("dashboard.install.cmd.init"),Pn=_t?null:b,Ln=Pn?y("dashboard.install.cmd.init_link_code",{link_code:Pn}):Kt,yi=Kt,pi=y("dashboard.install.cmd.sync"),bi=Pn?y("dashboard.install.copy"):y("dashboard.install.copy_base"),xi=y("dashboard.install.copied");y("dashboard.session_expired.copy_label"),y("dashboard.session_expired.copied");const ki=!!(E?.install?.has_active_device_token??E?.install?.hasActiveDeviceToken),wi=Zl({publicMode:o,screenshotMode:P,forceInstall:C,accessEnabled:$t,heatmapLoading:Br,activeDays:An,hasActiveDeviceToken:ki}),vi=y("dashboard.install.prompt"),_i=m.useCallback(async()=>{!Ln||!await sa(Ln)||(G(!0),window.setTimeout(()=>G(!1),2e3))},[Ln]);m.useCallback(async()=>{!Kt||!await sa(Kt)||(ae(!0),window.setTimeout(()=>ae(!1),2e3))},[Kt]);const Bn=m.useMemo(()=>y("dashboard.daily.empty",{cmd:"{{cmd}}"}),[d]),[Ni,Si]=m.useMemo(()=>{const M=Bn.split("{{cmd}}");return M.length===1?[Bn,""]:[M[0],M.slice(1).join("{{cmd}}")]},[Bn]),Mi=r&&!o,ji=!n&&!ye&&!r&&!De&&!o;return s.jsxs(s.Fragment,{children:[s.jsx(mm,{copy:y,onOpenShare:ui,screenshotMode:P,showExpiredGate:Mi,showAuthGate:ji,screenshotTitleLine1:ti,screenshotTitleLine2:ni,identityDisplayName:Kr,identityStartDate:Xr,activeDays:An,identitySubscriptions:zs,identityScrambleDurationMs:Y,projectUsageEntries:ps,projectUsageLimit:Fr,setProjectUsageLimit:ys,topModels:aa,signedIn:n,publicMode:o,isLocalMode:De,shouldShowInstall:wi,installPrompt:vi,handleCopyInstall:_i,installCopied:z,installCopiedLabel:xi,installCopyLabel:bi,installInitCmdDisplay:yi,linkCodeLoading:x,linkCodeError:D,trendRowsForDisplay:js,trendFromForDisplay:Ds,trendToForDisplay:Cs,usageFrom:ke,usageTo:we,period:te,trendTimeZoneLabel:ee,activityHeatmapBlock:qs,isCapturing:j,handleShareToX:si,screenshotTwitterLabel:ri,screenshotTwitterButton:ai,screenshotTwitterHint:oi,periodsForDisplay:ii,setSelectedPeriod:Ls,customFrom:xe,customTo:Be,onCustomRangeApply:Bs,customRangeOpen:Ut,onCustomRangeOpenChange:Rs,metricsRows:li,summaryLabel:Gs,summaryValue:Ks,summaryTotalTokensRaw:Se(ft)||0,summaryCostValue:In,summaryConversationsValue:ci,rollingUsage:qt,costInfoEnabled:gi,openCostModal:mi,allowBreakdownToggle:ei,coreIndexCollapsed:V,setCoreIndexCollapsed:se,coreIndexCollapseLabel:Xs,coreIndexExpandLabel:Qs,coreIndexCollapseAria:Js,coreIndexExpandAria:Zs,refreshAll:$s,usageLoadingState:Ys,usageError:rt,rangeLabel:Vs,timeZoneRangeLabel:Mt,usageSourceLabel:Hs,fleetData:ra,hasDetailsActual:Ns,dailyEmptyPrefix:Ni,installSyncCmd:pi,dailyEmptySuffix:Si,detailsColumns:vs,ariaSortFor:Fs,toggleSort:Es,sortIconFor:Ws,pagedDetails:Ss,dailyBreakdownRows:Ms,dailyBreakdownColumns:_s,dailyBreakdownAriaSortFor:Is,dailyBreakdownSortIconFor:Ps,dailyBreakdownDateKey:cn,detailsDateKey:Ae,renderDetailDate:Os,renderDailyBreakdownDate:As,renderDetailCell:Ts,DETAILS_PAGED_PERIODS:en,detailsPageCount:Tn,detailsPage:On,setDetailsPage:un,costModalOpen:h,closeCostModal:hi}),s.jsx(Qm,{open:L,onClose:fi,data:di,twitterText:Fn})]})}export{ph as DashboardPage};
|