@ipv9/tokentracker-cli 0.39.30 → 0.39.31

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (38) hide show
  1. package/dashboard/dist/assets/{ActivityHeatmap-Bgdl-S1x.js → ActivityHeatmap-BWVMG27Z.js} +1 -1
  2. package/dashboard/dist/assets/{Card-3odQqugE.js → Card-GDrNT9Wy.js} +1 -1
  3. package/dashboard/dist/assets/DashboardPage-DLx5pMLA.js +19 -0
  4. package/dashboard/dist/assets/{DevicePage-BD1Z3QPc.js → DevicePage-DXscJX-r.js} +1 -1
  5. package/dashboard/dist/assets/{DialogTitle-LTxZRq3v.js → DialogTitle-B3TWW06U.js} +1 -1
  6. package/dashboard/dist/assets/{FadeIn-Ce6-dnBn.js → FadeIn-BHestMhx.js} +1 -1
  7. package/dashboard/dist/assets/{InsforgeUserHeaderControls-BzlliCn6.js → InsforgeUserHeaderControls-CBugR9Rt.js} +1 -1
  8. package/dashboard/dist/assets/{IpCheckPage-DCMt7tue.js → IpCheckPage-CkGscLZF.js} +1 -1
  9. package/dashboard/dist/assets/{LandingPage-D_BUE8xR.js → LandingPage-DUEby84b.js} +1 -1
  10. package/dashboard/dist/assets/{LeaderboardAvatar-CoZ2wqMf.js → LeaderboardAvatar-B2J92TiD.js} +1 -1
  11. package/dashboard/dist/assets/{LeaderboardPage-_TSbQQYc.js → LeaderboardPage-Dq0H66B-.js} +3 -3
  12. package/dashboard/dist/assets/{LeaderboardProfileModal-D2ijNuef.js → LeaderboardProfileModal-2vFDEkV9.js} +1 -1
  13. package/dashboard/dist/assets/{LeaderboardProfilePage-s39VATE2.js → LeaderboardProfilePage-Cm6mkHIn.js} +1 -1
  14. package/dashboard/dist/assets/{LimitsPage-C6ctKtxp.js → LimitsPage-BrW7hFM8.js} +1 -1
  15. package/dashboard/dist/assets/{LocalOnlyNotice-2pfLsHpo.js → LocalOnlyNotice-D_MzdYC3.js} +1 -1
  16. package/dashboard/dist/assets/{LoginPage-DNP4onvq.js → LoginPage-BNumJFUD.js} +1 -1
  17. package/dashboard/dist/assets/{PopoverPopup-BT8udefo.js → PopoverPopup-D-UE-A40.js} +1 -1
  18. package/dashboard/dist/assets/{Select-BsqussJe.js → Select-57NRUuRv.js} +1 -1
  19. package/dashboard/dist/assets/{SelectItemText-BXpkHOkB.js → SelectItemText-BQRpnI7R.js} +1 -1
  20. package/dashboard/dist/assets/{SettingsPage-OrEKHUoP.js → SettingsPage-CZKvZmjQ.js} +1 -1
  21. package/dashboard/dist/assets/{SkillsPage-BoqNcRtD.js → SkillsPage-WH1cudWx.js} +1 -1
  22. package/dashboard/dist/assets/{WidgetsPage-D3_w52sZ.js → WidgetsPage-BMyuOvz4.js} +1 -1
  23. package/dashboard/dist/assets/{WrappedPage-BnRFKZM1.js → WrappedPage-Diz80qQ8.js} +1 -1
  24. package/dashboard/dist/assets/{arrow-up-right-drwM1Pvv.js → arrow-up-right-B4_hZ1sq.js} +1 -1
  25. package/dashboard/dist/assets/{download-CBf6KJ3E.js → download-D1N5sqF7.js} +1 -1
  26. package/dashboard/dist/assets/{info-DfnG7cEX.js → info-Dk2L3d_d.js} +1 -1
  27. package/dashboard/dist/assets/{main-D58VUTHR.js → main-Dc3OEOle.js} +2 -2
  28. package/dashboard/dist/assets/{use-limits-display-prefs-uMzK4OmW.js → use-limits-display-prefs-DT6fh22E.js} +1 -1
  29. package/dashboard/dist/assets/{use-native-settings-DoatX3EC.js → use-native-settings-DhAViJo1.js} +1 -1
  30. package/dashboard/dist/assets/{use-spring-DC7WYYXI.js → use-spring-C5cS6Hlt.js} +1 -1
  31. package/dashboard/dist/assets/{use-usage-limits-Cuyohp1Z.js → use-usage-limits-DQ-Ba-1u.js} +1 -1
  32. package/dashboard/dist/assets/{useCurrency-TX_u-sDk.js → useCurrency-Duce6VZq.js} +1 -1
  33. package/dashboard/dist/assets/{useOpenInteractionType-DPgAUuMo.js → useOpenInteractionType-DcMpbWx7.js} +1 -1
  34. package/dashboard/dist/index.html +1 -1
  35. package/dashboard/dist/share.html +1 -1
  36. package/package.json +1 -1
  37. package/src/lib/pricing/seed-snapshot.json +1 -1
  38. package/dashboard/dist/assets/DashboardPage-CBtRYMdU.js +0 -19
@@ -0,0 +1,19 @@
1
+ import{c as Ki,j as s,L as Gi,r as m,u as Xi,a as Qi,b as Ji,d as Zi,e as Vt,m as Ue,g as el,i as pt,f as Kt,h as Wt,k as tl,l as xa,n as Cn,o as Yn,p as gn,q as nl,s as rl,t as xo,v as mn,w as st,x as nr,y as al,z as je,A as g,R as A,X as ko,B as zn,C as Je,D as De,E as wo,P as Ar,F as $n,G as vo,H as ol,I as sl,J as _o,K as No,M as So,N as Fr,O as Re,Q as il,S as ll,_ as Mo,T as cl,U as kr,V as dl,W as ul,Y as fl,Z as ml,$ as hl,a0 as yl,a1 as gl,a2 as pl,a3 as bl,a4 as xl,a5 as ka,a6 as $e}from"./main-Dc3OEOle.js";import{u as kl}from"./use-usage-limits-DQ-Ba-1u.js";import{u as At}from"./useCurrency-Duce6VZq.js";import{T as wl,M as vl,A as _l}from"./ActivityHeatmap-BWVMG27Z.js";import{u as Nl,D as Sl,a as Ml,b as jl,c as Dl,d as Cl,e as Tl}from"./DialogTitle-B3TWW06U.js";import{C as Gt}from"./Card-GDrNT9Wy.js";import{S as Pl}from"./Select-57NRUuRv.js";import{u as Ol,a as Wl,b as Al}from"./use-spring-C5cS6Hlt.js";import{I as jo}from"./info-Dk2L3d_d.js";import{P as wr,a as vr,b as _r,c as Nr,d as Sr,L as Fl}from"./PopoverPopup-D-UE-A40.js";import{F as dt}from"./FadeIn-BHestMhx.js";import"./useOpenInteractionType-DcMpbWx7.js";import"./SelectItemText-BQRpnI7R.js";const El=[["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=Ki("square-arrow-out-up-right",El);function Il(){return s.jsxs(Gi,{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 Rl({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(Il,{}),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 Ll({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 Bl=m.forwardRef(function(t,n){const{render:r,className:a,disabled:o=!1,nativeButton:l=!0,...i}=t,{store:c}=Nl(),u=c.useState("open");function d(p){u&&c.setOpen(!1,Ji(Zi,p.nativeEvent))}const{getButtonProps:f,buttonRef:h}=Xi({disabled:o,native:l}),y=m.useMemo(()=>({disabled:o}),[o]);return Qi("button",t,{state:y,ref:[n,h],props:[{onClick:d},i,f]})});var Yl={};function zl(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 Hl({mv:e,digit:t,height:n}){const r=Al(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(Ue.span,{style:{position:"absolute",inset:0,display:"flex",alignItems:"center",justifyContent:"center",y:r},children:t})}function Ul(e){const t=Math.round(e),n=1e-9*Math.max(1,Math.abs(e));return Math.abs(e-t)<n?t:e}function ql(e,t){const n=e/t;return Math.floor(Ul(n))}function Vl(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 Kl({place:e,value:t,height:n,digitStyle:r,shouldReduceMotion:a,isLed:o}){if(typeof e!="number"){const u=zl(e,n);return s.jsx("span",{"data-counter-token":"static",className:`relative inline-flex items-center justify-center${o?" tt-lcd-sep":""}`,style:{height:n,...u,...r},children:e})}const l=ql(t,e),i=Ol(0),c=Wl(i,{stiffness:220,damping:26,mass:.8});return m.useEffect(()=>{i.set(l)},[i,l]),a?s.jsx("span",{"data-counter-token":"digit",className:`relative inline-flex items-center justify-center overflow-hidden${o?" tt-lcd-cell":""}`,style:{height:n,position:"relative",width:"0.9ch",fontVariantNumeric:"tabular-nums",...r},children:Math.abs(l)%10}):s.jsx("span",{"data-counter-token":"digit",className:`relative inline-flex overflow-hidden${o?" tt-lcd-cell":""}`,style:{height:n,position:"relative",width:"0.9ch",fontVariantNumeric:"tabular-nums",...r},children:Array.from({length:10},(u,d)=>s.jsx(Hl,{mv:c,digit:d,height:n},d))})}function Gl({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:u="inherit",containerStyle:d,counterStyle:f,digitStyle:h,gradientHeight:y=14,gradientFrom:p="rgba(255,255,255,0.95)",gradientTo:b="rgba(255,255,255,0)",topGradientStyle:k,bottomGradientStyle:v,variant:w="default"}){const x=w==="led",M=String(t??e??""),T=m.useMemo(()=>Array.isArray(a)&&a.length?a:Vl(M),[a,M]),D=typeof navigator<"u"&&/jsdom/i.test(navigator.userAgent||"")||typeof process<"u"&&Yl?.VITEST==="true",E=Vt()||D,N=Number.isFinite(Number(e))?Math.abs(Number(e)):0,O=n+r;return E?s.jsx("span",{"data-counter-root":"true",className:x?"tt-lcd":void 0,style:{display:"inline-flex",alignItems:"center",color:c,fontSize:n,fontWeight:u,lineHeight:1,...d,...f},children:x?s.jsx("span",{className:"tt-lcd-cell tt-lcd-cell--static",children:M}):M}):s.jsxs("span",{"data-counter-root":"true",style:{position:"relative",display:"inline-block",...d},children:[s.jsx("span",{className:x?"tt-lcd":void 0,style:{fontSize:n,...x?null:{display:"flex",gap:o,borderRadius:l,paddingLeft:i,paddingRight:i,color:c},overflow:"hidden",lineHeight:1,fontWeight:u,...f},children:T.map((j,W)=>s.jsx(Kl,{place:j,value:N,height:O,digitStyle:h,shouldReduceMotion:E,isLed:x},`${String(j)}-${W}`))}),s.jsxs("span",{style:{pointerEvents:"none",position:"absolute",inset:0,display:"flex",flexDirection:"column",justifyContent:"space-between"},children:[s.jsx("span",{style:k??{height:y,background:`linear-gradient(to bottom, ${p}, ${b})`}}),s.jsx("span",{style:v??{height:y,background:`linear-gradient(to top, ${p}, ${b})`}})]})]})}var Xl={};const Ql=new Set([",","."," "]),Jl=typeof navigator<"u"&&/jsdom/i.test(navigator.userAgent||"")||typeof process<"u"&&Xl?.VITEST==="true";function Zl({char:e,reduceMotion:t,index:n}){const[r,a]=m.useState(t?e:""),[o,l]=m.useState(!1),i=m.useRef(e),c=m.useRef(!1);return m.useEffect(()=>{if(!c.current){if(c.current=!0,i.current=e,t){a(e);return}const f=Math.min(n*45,520),h=setTimeout(()=>l(!0),f),y=setTimeout(()=>a(e),f+130),p=setTimeout(()=>l(!1),f+300);return()=>{clearTimeout(h),clearTimeout(y),clearTimeout(p)}}if(e===i.current)return;if(i.current=e,t){a(e);return}l(!0);const u=setTimeout(()=>a(e),130),d=setTimeout(()=>l(!1),300);return()=>{clearTimeout(u),clearTimeout(d)}},[e,t,n]),s.jsx("span",{className:`tt-flap${o?" tt-flap--flip":""}`,"aria-hidden":"true",children:s.jsx("span",{className:"tt-flap__glyph",children:r})})}function ec({value:e,fontSize:t=56,className:n=""}){const r=Vt()||Jl,a=String(e??""),o=Array.from(a);return s.jsx("span",{className:`tt-flaprow ${n}`,style:{fontSize:`clamp(30px, 9cqi, ${t}px)`},role:"text","aria-label":a,children:o.map((l,i)=>Ql.has(l)?s.jsx("span",{className:"tt-flap-sep","aria-hidden":"true",children:l},i):s.jsx(Zl,{char:l,reduceMotion:r,index:i},i))})}function tc({baseUrl:e,accessToken:t,guestAllowed:n=!1,weeks:r=52,weekStartsOn:a="sun",cacheKey:o,timeZone:l,tzOffsetMinutes:i,now:c}={}){const u=m.useMemo(()=>el({weeks:r,weekStartsOn:a,now:c}),[c,r,a]),[d,f]=m.useState([]),[h,y]=m.useState(null),[p,b]=m.useState("edge"),[k,v]=m.useState(!1),[w,x]=m.useState(null),M=pt(),T=Kt(t),D=!n,E=typeof window<"u"&&(window.location.hostname==="localhost"||window.location.hostname==="127.0.0.1"),N=m.useMemo(()=>{if(!o)return null;const F=gn({timeZone:l,offsetMinutes:i});return`tokentracker.heatmap.${o}.${r}.${a}.${F}`},[o,l,i,r,a]),O=m.useCallback(()=>{if(!N||typeof window>"u")return null;try{const F=window.localStorage.getItem(N);if(!F)return null;const C=JSON.parse(F);return!C||!C.heatmap?null:C}catch{return null}},[N]),j=m.useCallback(F=>{if(!(!N||typeof window>"u"))try{window.localStorage.setItem(N,JSON.stringify(F))}catch{}},[N]),W=m.useCallback(()=>{if(!(!N||typeof window>"u"))try{window.localStorage.removeItem(N)}catch{}},[N]),K=m.useCallback(async()=>{const F=await Wt(t);if(!(!F&&!M&&!E)){v(!0),x(null);try{try{const z=await tl({baseUrl:e,accessToken:F,weeks:r,to:u.to,weekStartsOn:a,timeZone:l,tzOffsetMinutes:i}),P=Array.isArray(z?.weeks)?z.weeks:[];if(!P.length&&D){const U=O();if(U?.heatmap){y(U.heatmap),f(U.daily||[]),b("cache");return}}if(!P.some(U=>(Array.isArray(U)?U:[]).some(ee=>ee&&Number.isFinite(Number(ee.level))))&&P.length){const U=[];for(const B of P)for(const H of Array.isArray(B)?B:[])H?.day&&U.push({day:H.day,total_tokens:H.total_tokens??H.value??0,billable_total_tokens:H.billable_total_tokens??H.value??H.total_tokens??0});const ee=xa({dailyRows:U,weeks:r,to:z?.to||u.to,weekStartsOn:a});f(U),y({...ee,week_starts_on:a,active_days:U.filter(B=>Number(B?.billable_total_tokens??B?.total_tokens)>0).length,streak_days:Cn({dailyRows:U,to:z?.to||u.to})}),b("client"),D?j({heatmap:{...ee,week_starts_on:a,active_days:U.filter(B=>Number(B?.billable_total_tokens??B?.total_tokens)>0).length,streak_days:Cn({dailyRows:U,to:z?.to||u.to})},daily:U,fetchedAt:new Date().toISOString()}):W();return}y(z||null),f([]),b("edge"),z&&D?j({heatmap:z,daily:[],fetchedAt:new Date().toISOString()}):D||W();return}catch(z){const P=z,L=P?.status??P?.statusCode;if(L===401||L===403)throw z}const C=await Yn({baseUrl:e,accessToken:F,from:u.from,to:u.to,timeZone:l,tzOffsetMinutes:i}),S=Array.isArray(C?.data)?C.data:[];f(S);const R=xa({dailyRows:S,weeks:r,to:u.to,weekStartsOn:a});y({...R,week_starts_on:a,active_days:S.filter(z=>Number(z?.billable_total_tokens??z?.total_tokens)>0).length,streak_days:Cn({dailyRows:S,to:u.to})}),b("client"),D?j({heatmap:{...R,week_starts_on:a,active_days:S.filter(z=>Number(z?.billable_total_tokens??z?.total_tokens)>0).length,streak_days:Cn({dailyRows:S,to:u.to})},daily:S,fetchedAt:new Date().toISOString()}):W()}catch(C){if(D){const S=O();if(S?.heatmap)y(S.heatmap),f(S.daily||[]),b("cache"),x(null);else{const R=C;x(R?.message||String(R)),f([]),y(null),b("edge")}}else{const S=C;x(S?.message||String(S)),f([]),y(null),b("edge")}}finally{v(!1)}}},[t,e,M,n,D,u.from,u.to,O,T,l,i,a,r,W,j,E]);return m.useEffect(()=>{if(!T&&!n&&!M&&!E){f([]),v(!1),x(null),y(null),b("edge");return}if(!D)W(),f([]),x(null),y(null),b("edge");else{const F=O();F?.heatmap&&(y(F.heatmap),f(F.daily||[]),b("cache"))}K()},[t,M,O,K,T,n,D,W,E]),{range:u,daily:d,heatmap:h,source:M?"mock":p==="client"?"edge":p,loading:k,error:w,refresh:K}}function nc({baseUrl:e,accessToken:t,limit:n=3,from:r,to:a,source:o,timeZone:l,tzOffsetMinutes:i}={}){const[c,u]=m.useState([]),[d,f]=m.useState(!1),[h,y]=m.useState(null),p=pt(),b=Kt(t),k=typeof window<"u"&&(window.location.hostname==="localhost"||window.location.hostname==="127.0.0.1"),v=m.useCallback(async()=>{const w=await Wt(t);if(!w&&!p&&!k){u([]),y(null),f(!1);return}f(!0),y(null);try{const x=await nl({baseUrl:e,accessToken:w,limit:n,from:r,to:a,source:o,timeZone:l,tzOffsetMinutes:i});u(Array.isArray(x?.entries)?x.entries:[])}catch(x){const M=x?.message||String(x);y(M),u([])}finally{f(!1)}},[t,e,r,n,p,o,l,a,i,k]);return m.useEffect(()=>{if(!b&&!p&&!k){u([]),y(null),f(!1);return}v()},[p,v,b,k]),{entries:c,loading:d,error:h,refresh:v}}const rc=24;function Do({baseUrl:e,accessToken:t,guestAllowed:n=!1,period:r,from:a,to:o,months:l=rc,cacheKey:i,timeZone:c,tzOffsetMinutes:u,now:d,sharedRows:f,sharedRange:h}={}){const[y,p]=m.useState([]),[b,k]=m.useState(()=>({from:a,to:o})),[v,w]=m.useState("edge"),[x,M]=m.useState(null),[T,D]=m.useState(!1),[E,N]=m.useState(null),O=pt(),j=Kt(t),W=!n&&!O,K=Array.isArray(f),$=h?.from||a,F=h?.to||o,C=m.useMemo(()=>r==="day"||r==="24h"?"hourly":r==="total"?"monthly":"daily",[r]),S=(()=>{if(!i)return null;const B=ac(e)||"default",H=gn({timeZone:c,offsetMinutes:u});if(C==="hourly"){const te=r==="24h"?`${a||""}.${o||""}`:o||a||"day";return`tokentracker.trend.${i}.${B}.hourly.${te}.${H}`}if(C==="monthly")return`tokentracker.trend.${i}.${B}.monthly.${l}.${o||"today"}.${H}`;const q=`${a||""}.${o||""}`;return`tokentracker.trend.${i}.${B}.daily.${q}.${H}`})(),R=m.useCallback(()=>{if(!S||typeof window>"u")return null;try{const B=window.localStorage.getItem(S);if(!B)return null;const H=JSON.parse(B);return!H||!Array.isArray(H.rows)?null:H}catch{return null}},[S]),z=m.useCallback(B=>{if(!(!S||typeof window>"u"))try{window.localStorage.setItem(S,JSON.stringify(B))}catch{}},[S]),P=m.useCallback(()=>{if(!(!S||typeof window>"u"))try{window.localStorage.removeItem(S)}catch{}},[S]),L=typeof window<"u"&&(window.location.hostname==="localhost"||window.location.hostname==="127.0.0.1"),U=m.useCallback(async()=>{if(K){p(Array.isArray(f)?f:[]),k({from:$,to:F}),w("shared"),M(null),D(!1),N(null);return}const B=await Wt(t);if(!(!B&&!O&&!L)){D(!0),N(null);try{let H;C==="hourly"?H=await oc({baseUrl:e,accessToken:B,from:a,to:o,period:r,timeZone:c,tzOffsetMinutes:u,now:d}):C==="monthly"?H=await rl({baseUrl:e,accessToken:B,months:l,to:o,timeZone:c,tzOffsetMinutes:u}):H=await Yn({baseUrl:e,accessToken:B,from:a,to:o,timeZone:c,tzOffsetMinutes:u});const q=H?.from||a||H?.day||null,te=H?.to||o||H?.day||null;let re=Array.isArray(H?.data)?H.data:[];C==="daily"?re=rr(re,q||a,te||o,{timeZone:c,offsetMinutes:u,now:d}):C==="hourly"?re=An(re,q||a||H?.day,te||o,{period:r,timeZone:c,offsetMinutes:u,now:d}):C==="monthly"&&(re=ar(re,{timeZone:c,offsetMinutes:u,now:d}));const he=new Date().toISOString();p(re),k({from:q,to:te}),w("edge"),M(he),W?z({rows:re,from:q,to:te,mode:C,fetchedAt:he}):P()}catch(H){if(W){const q=R();if(q?.rows){let te=C==="daily"?rr(q.rows||[],q.from||a,q.to||o,{timeZone:c,offsetMinutes:u,now:d}):C==="hourly"?An(q.rows||[],q.from||a||q.day||o,q.to||o,{period:r,timeZone:c,offsetMinutes:u,now:d}):Array.isArray(q.rows)?q.rows:[];C==="monthly"&&(te=ar(te,{timeZone:c,offsetMinutes:u,now:d})),p(te),k({from:q.from||a,to:q.to||o}),w("cache"),M(q.fetchedAt||null),N(null)}else{p([]),k({from:a,to:o}),w("edge"),M(null);const te=H;N(te?.message||String(te))}}else{p([]),k({from:a,to:o}),w("edge"),M(null);const q=H;N(q?.message||String(q))}}finally{D(!1)}}},[t,e,a,O,n,W,C,l,r,R,j,K,$,f,F,c,o,u,d,P,z,L]);m.useEffect(()=>{if(K){p(Array.isArray(f)?f:[]),k({from:$,to:F}),w("shared"),M(null),D(!1),N(null);return}if(!j&&!n&&!O&&!L){p([]),k({from:a,to:o}),N(null),D(!1),w("edge"),M(null);return}if(!W)P(),p([]),k({from:a,to:o}),N(null),w("edge"),M(null);else{const B=R();if(B?.rows){let H=C==="daily"?rr(B.rows||[],B.from||a,B.to||o,{timeZone:c,offsetMinutes:u,now:d}):C==="hourly"?An(B.rows||[],B.from||a||B.day||o,B.to||o,{period:r,timeZone:c,offsetMinutes:u,now:d}):Array.isArray(B.rows)?B.rows:[];C==="monthly"&&(H=ar(H,{timeZone:c,offsetMinutes:u,now:d})),p(H),k({from:B.from||a,to:B.to||o}),w("cache"),M(B.fetchedAt||null)}}U()},[t,O,R,U,K,$,f,F,j,n,W,P,L,C,a,o,c,u,d,r]);const ee=O?"mock":v;return{rows:y,from:b.from||a,to:b.to||o,source:ee,fetchedAt:x,loading:T,error:E,refresh:U}}function ac(e){try{return new URL(e).host}catch{return null}}async function oc({baseUrl:e,accessToken:t,from:n,to:r,period:a,timeZone:o,tzOffsetMinutes:l,now:i}){const c=a==="24h"?Co(n,r):[r||n].filter(Boolean),u=Array.from(new Set(c)),d=await Promise.all(u.map(p=>xo({accessToken:t,day:p,timeZone:o,tzOffsetMinutes:l}))),f=d.flatMap(p=>Array.isArray(p?.data)?p.data:[]),h=a==="24h"?u[0]||n||r:d[0]?.day||n||r,y=a==="24h"?u[u.length-1]||r||n:d[0]?.day||r||n;return{day:y,from:h,to:y,data:An(f,h,y,{period:a,timeZone:o,offsetMinutes:l,now:i})}}function qt(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())&&st(l)===t?l:null}function Er(e,t){return new Date(Date.UTC(e.getUTCFullYear(),e.getUTCMonth(),e.getUTCDate()+t))}function Co(e,t){const n=qt(e||t),r=qt(t||e);if(!n||!r)return[e||t].filter(Boolean).map(String);if(r<n)return[st(r),st(n)];const a=[];for(let o=n;o<=r;o=Er(o,1))a.push(st(o));return a}const To=["total_tokens","billable_total_tokens","input_tokens","cached_input_tokens","cache_creation_input_tokens","output_tokens","reasoning_output_tokens","conversation_count"];function rr(e,t,n,{timeZone:r,offsetMinutes:a,now:o}={}){const l=qt(t),i=qt(n);if(!l||!i||i<l)return Array.isArray(e)?e:[];const c=o instanceof Date&&Number.isFinite(o.getTime())?o:new Date,u=mn({timeZone:r,offsetMinutes:a,date:c}),d=qt(u),f=d?d.getTime():c.getTime(),h=new Map;for(const p of e||[])p?.day&&h.set(p.day,p);const y=[];for(let p=l;p<=i;p=Er(p,1)){const b=st(p),k=h.get(b),v=p.getTime()>f;if(k){y.push({...k,missing:!1,future:v});continue}y.push({day:b,total_tokens:null,billable_total_tokens:null,input_tokens:null,cached_input_tokens:null,output_tokens:null,reasoning_output_tokens:null,missing:!v,future:v})}return y}function sc(e,t){const n=t?null:0;return{hour:e,total_tokens:n,billable_total_tokens:n,input_tokens:n,cached_input_tokens:n,cache_creation_input_tokens:n,output_tokens:n,reasoning_output_tokens:n,conversation_count:n,missing:!1,future:t}}function ic(e){if(!e||typeof e!="object")return!1;const t=e.models;return t&&typeof t=="object"&&Object.keys(t).length>0?!1:To.every(n=>e[n]==null)}function lc(e,t,n){const r={...e,hour:t,missing:!1,future:n};if(!n&&ic(e))for(const a of To)r[a]=0;return r}function cc(e,t){const n=t===30?48:24,r=[];for(let a=0;a<n;a++){const o=Math.floor(a*t/60),l=a*t%60;r.push(`${e}T${String(o).padStart(2,"0")}:${String(l).padStart(2,"0")}:00`)}return r}function dc(e,t,{timeZone:n,offsetMinutes:r}={}){const a=cc(e,t);if(!n||typeof Intl>"u"||!Intl.DateTimeFormat)return a;const o=qt(e);if(!o)return a;const l=o.getUTCFullYear()*1e4+(o.getUTCMonth()+1)*100+o.getUTCDate(),i=o.getTime()-2160*60*1e3,c=Er(o,2).getTime()+2160*60*1e3,u=[],d=new Set;for(let f=i;f<=c;f+=1800*1e3){const h=pn({timeZone:n,offsetMinutes:r,now:new Date(f)});if(!h||h.dayNum!==l||t===60&&h.minute!==0||t===30&&h.minute!==0&&h.minute!==30)continue;const y=`${e}T${String(h.hour).padStart(2,"0")}:${String(h.minute).padStart(2,"0")}:00`;d.has(y)||(d.add(y),u.push(y))}return u.length>0?u:a}function uc(e,t,{timeZone:n,offsetMinutes:r,now:a}={}){if(!t)return Array.isArray(e)?e:[];const o=t.trim().slice(0,10),l=pn({timeZone:n,offsetMinutes:r,now:a}),i=l?l.dayNum:void 0;let c=!1;for(const y of e||[]){const p=y?.hour||y?.label||"",b=Fn(p,i);if(b&&b.slot%2!==0){c=!0;break}}const u=c?30:60,d=new Map;for(const y of e||[]){const p=y?.hour||y?.label||"",b=Fn(p,i);b&&d.set(b.slot,y)}const f=[],h=dc(o,u,{timeZone:n,offsetMinutes:r});for(let y=0;y<h.length;y++){const p=h[y],b=Fn(p,i),k=b?b.slot:c?y:y*2,v=d.get(k);let w=!1;if(l){const x=l.year*1e4+l.month*100+l.day,M=b?.dayNum??Number(o.replace(/-/g,""));if(M>x)w=!0;else if(M===x){const T=l.hour*2+(l.minute>=30?1:0);w=k>T}}v?f.push(lc(v,p,w)):f.push(sc(p,w))}return f}function An(e,t,n,{period:r,timeZone:a,offsetMinutes:o,now:l}={}){const i=r==="24h"?Co(t,n):[n||t].filter(Boolean).map(String),u=Array.from(new Set(i)).flatMap(f=>uc(fc(e||[],f),f,{timeZone:a,offsetMinutes:o,now:l})),d=mc(u,{timeZone:a,offsetMinutes:o,now:l});return r!=="24h"?d:hc(d,{timeZone:a,offsetMinutes:o,now:l})}function fc(e,t){return e.filter(n=>{const r=n?.hour||n?.label||"",a=String(r).trim();return a.includes("T")?a.slice(0,10)===t:!0})}function mc(e,{timeZone:t,offsetMinutes:n,now:r}={}){if(!Array.isArray(e))return[];const a=pn({timeZone:t,offsetMinutes:n,now:r});return a?e.map(o=>{const l=o?.hour||o?.label||"",i=Fn(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 hc(e,{timeZone:t,offsetMinutes:n,now:r}={}){if(!Array.isArray(e))return[];const a=pn({timeZone:t,offsetMinutes:n,now:r});if(!a)return e.filter(i=>!i?.future);const o=Po({year:a.year,month:a.month,day:a.day,hour:a.hour,minute:a.minute}),l=o-1440*60*1e3;return e.filter(i=>{if(i?.future)return!1;const c=yc(i?.hour||i?.label);return c!=null&&c>=l&&c<=o})}function ar(e,{timeZone:t,offsetMinutes:n,now:r}={}){if(!Array.isArray(e))return[];const a=pn({timeZone:t,offsetMinutes:n,now:r});return a?e.map(o=>{const l=o?.month||o?.label||"",i=gc(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 pn({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((w,x)=>(x.type&&x.value&&(w[x.type]=x.value),w),{}),y=Number(h.year),p=Number(h.month),b=Number(h.day),k=Number(h.hour),v=Number(h.minute);if(Number.isFinite(y)&&Number.isFinite(p)&&Number.isFinite(b)&&Number.isFinite(k)&&Number.isFinite(v)){const w=k*2+(v>=30?1:0);return{year:y,month:p,day:b,hour:k,minute:v,dayNum:y*1e4+p*100+b,slot:w}}}catch{}if(Number.isFinite(t)){const d=new Date(r.getTime()+t*60*1e3),f=d.getUTCFullYear(),h=d.getUTCMonth()+1,y=d.getUTCDate(),p=d.getUTCHours(),b=d.getUTCMinutes(),k=p*2+(b>=30?1:0);return{year:f,month:h,day:y,hour:p,minute:b,dayNum:f*1e4+h*100+y,slot:k}}const a=r.getFullYear(),o=r.getMonth()+1,l=r.getDate(),i=r.getHours(),c=r.getMinutes(),u=i*2+(c>=30?1:0);return{year:a,month:o,day:l,hour:i,minute:c,dayNum:a*1e4+o*100+l,slot:u}}function Fn(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 u=a.split(":"),d=Number(u[0]),f=Number(u[1]);if(!Number.isFinite(d)||d<0||d>23||!Number.isFinite(f)||f<0||f>59)return null;const h=d*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 Po({year:e,month:t,day:n,hour:r=0,minute:a=0}){return Date.UTC(Number(e),Number(t)-1,Number(n),Number(r),Number(a),0,0)}function yc(e){if(!e)return null;const t=String(e).trim();if(!t.includes("T"))return null;const[n,r]=t.split("T");if(!n||!r)return null;const a=n.split("-"),o=r.split(":");if(a.length!==3||o.length<2)return null;const[l,i,c]=a.map(Number),[u,d]=o.map(Number);return!Number.isFinite(l)||!Number.isFinite(i)||!Number.isFinite(c)||!Number.isFinite(u)||!Number.isFinite(d)?null:Po({year:l,month:i,day:c,hour:u,minute:d})}function gc(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 wa({baseUrl:e,accessToken:t,guestAllowed:n=!1,from:r,to:a,includeDaily:o=!0,cacheKey:l,timeZone:i,tzOffsetMinutes:c,now:u}={}){const[d,f]=m.useState([]),[h,y]=m.useState(null),[p,b]=m.useState(null),[k,v]=m.useState("edge"),[w,x]=m.useState(null),[M,T]=m.useState(!1),[D,E]=m.useState(null),N=pt(),O=Kt(t),j=!n&&!N,W=(()=>{if(!l)return null;const z=pc(e)||"default",P=o?"daily":"summary",L=gn({timeZone:i,offsetMinutes:c});return`tokentracker.usage.${l}.${z}.${r}.${a}.${P}.${L}`})(),K=m.useCallback(()=>{if(!W||typeof window>"u")return null;try{const z=window.localStorage.getItem(W);if(!z)return null;const P=JSON.parse(z);return!P||!P.summary?null:P}catch{return null}},[W]),$=m.useCallback(z=>{if(!(!W||typeof window>"u"))try{window.localStorage.setItem(W,JSON.stringify(z))}catch{}},[W]),F=m.useCallback(()=>{if(!(!W||typeof window>"u"))try{window.localStorage.removeItem(W)}catch{}},[W]),C=typeof window<"u"&&(window.location.hostname==="localhost"||window.location.hostname==="127.0.0.1"),S=m.useCallback(async()=>{const z=await Wt(t);if(!(!z&&!N&&!C)){T(!0),E(null);try{let P=null,L=null;if(o){const[q,te]=await Promise.allSettled([Yn({baseUrl:e,accessToken:z,from:r,to:a,timeZone:i,tzOffsetMinutes:c}),nr({baseUrl:e,accessToken:z,from:r,to:a,timeZone:i,tzOffsetMinutes:c,rolling:!0})]);if(q.status==="rejected")throw q.reason;P=q.value,L=te.status==="fulfilled"?te.value:null}else L=await nr({baseUrl:e,accessToken:z,from:r,to:a,timeZone:i,tzOffsetMinutes:c,rolling:!0});let U=o&&Array.isArray(P?.data)?P.data:[];o&&(U=sr(U,r,a,{timeZone:i,offsetMinutes:c,now:u}));let ee=L?.totals||P?.summary?.totals||null,B=L?.rolling||P?.summary?.rolling||null;if(o&&!ee&&!L)try{const q=await nr({baseUrl:e,accessToken:z,from:r,to:a,timeZone:i,tzOffsetMinutes:c,rolling:!0});ee=q?.totals||null,B=q?.rolling||B}catch{}const H=new Date().toISOString();f(U),y(ee),b(B),v("edge"),x(H),ee&&j?$({summary:ee,rolling:B,daily:U,from:r,to:a,includeDaily:o,fetchedAt:H}):j||F()}catch(P){if(j){const L=K();if(L?.summary){y(L.summary),b(L.rolling||null);const U=Array.isArray(L.daily)?L.daily:[],ee=o?sr(U,L.from||r,L.to||a,{timeZone:i,offsetMinutes:c,now:u}):U;f(ee),v("cache"),x(L.fetchedAt||null),E(null)}else{const U=P;E(U?.message||String(U)),f([]),y(null),b(null),v("edge"),x(null)}}else{const L=P;E(L?.message||String(L)),f([]),y(null),b(null),v("edge"),x(null)}}finally{T(!1)}}},[t,e,r,o,N,n,j,u,K,O,i,a,c,F,$,C]);return m.useEffect(()=>{const z=typeof window<"u"&&(window.location.hostname==="localhost"||window.location.hostname==="127.0.0.1");if(!O&&!n&&!N&&!z){f([]),y(null),b(null),E(null),T(!1),v("edge"),x(null);return}if(!j)F(),f([]),y(null),b(null),E(null),v("edge"),x(null);else{const P=K();if(P?.summary){y(P.summary),b(P.rolling||null);const L=Array.isArray(P.daily)?P.daily:[],U=o?sr(L,P.from||r,P.to||a,{timeZone:i,offsetMinutes:c,now:u}):L;f(U),v("cache"),x(P.fetchedAt||null)}}S()},[t,N,K,S,O,n,j,F,C]),{daily:d,summary:h,rolling:p,source:N?"mock":k,fetchedAt:w,loading:M,error:D,refresh:S}}function pc(e){try{return new URL(e).host}catch{return null}}function or(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())&&st(l)===t?l:null}function bc(e,t){return new Date(Date.UTC(e.getUTCFullYear(),e.getUTCMonth(),e.getUTCDate()+t))}function sr(e,t,n,{timeZone:r,offsetMinutes:a,now:o}={}){const l=or(t),i=or(n);if(!l||!i||i<l)return Array.isArray(e)?e:[];const c=o instanceof Date&&Number.isFinite(o.getTime())?o:new Date,u=mn({timeZone:r,offsetMinutes:a,date:c}),d=or(u),f=d?d.getTime():c.getTime(),h=new Map;for(const p of e||[])p?.day&&h.set(p.day,p);const y=[];for(let p=l;p<=i;p=bc(p,1)){const b=st(p),k=h.get(b),v=p.getTime()>f;if(k){y.push({...k,missing:!1,future:v});continue}y.push({day:b,total_tokens:null,billable_total_tokens:null,input_tokens:null,cached_input_tokens:null,output_tokens:null,reasoning_output_tokens:null,missing:!v,future:v})}return y}function xc({baseUrl:e,accessToken:t,guestAllowed:n=!1,from:r,to:a,cacheKey:o,timeZone:l,tzOffsetMinutes:i}={}){const[c,u]=m.useState(null),[d,f]=m.useState("edge"),[h,y]=m.useState(!1),[p,b]=m.useState(null),k=pt(),v=Kt(t),w=!n,x=m.useMemo(()=>{if(!o)return null;const j=kc(e)||"default",W=gn({timeZone:l,offsetMinutes:i});return`tokentracker.modelBreakdown.${o}.${j}.${r}.${a}.${W}`},[e,o,r,l,a,i]),M=m.useCallback(()=>{if(!x||typeof window>"u")return null;try{const j=window.localStorage.getItem(x);if(!j)return null;const W=JSON.parse(j);return!W||!W.breakdown?null:W}catch{return null}},[x]),T=m.useCallback(j=>{if(!(!x||typeof window>"u"))try{window.localStorage.setItem(x,JSON.stringify(j))}catch{}},[x]),D=m.useCallback(()=>{if(!(!x||typeof window>"u"))try{window.localStorage.removeItem(x)}catch{}},[x]),E=typeof window<"u"&&(window.location.hostname==="localhost"||window.location.hostname==="127.0.0.1"),N=m.useCallback(async()=>{const j=await Wt(t);if(!(!j&&!k&&!E)){y(!0),b(null);try{const W=await al({baseUrl:e,accessToken:j,from:r,to:a,timeZone:l,tzOffsetMinutes:i});u(W||null),f("edge"),W&&w?T({breakdown:W,fetchedAt:new Date().toISOString()}):w||D()}catch(W){if(w){const K=M();if(K?.breakdown)u(K.breakdown),f("cache"),b(null);else{u(null),f("edge");const $=W;b($?.message||String($))}}else{u(null),f("edge");const K=W;b(K?.message||String(K))}}finally{y(!1)}}},[t,e,r,k,n,w,M,l,a,v,i,D,T,E]);return m.useEffect(()=>{if(!v&&!n&&!k&&!E){u(null),f("edge"),b(null),y(!1);return}if(!w)D(),u(null),f("edge"),b(null);else{const j=M();j?.breakdown&&(u(j.breakdown),f("cache"))}N()},[t,k,M,N,v,n,w,D,E]),{breakdown:c,source:k?"mock":d,loading:h,error:p,refresh:N}}function kc(e){try{return new URL(e).host}catch{return null}}function Le(e){const t=typeof e=="number"?e:Number(e);return Number.isFinite(t)?t:0}function wc(e){const t=String(e?.hour??""),n=t.indexOf("T");if(n<0)return null;const r=Number(t.slice(n+1,n+3));return Number.isFinite(r)?r:null}function cn(e,t){let n=0,r=0;if(Array.isArray(e))for(const a of e){const o=wc(a);o==null||o>t||(n+=Le(a.total_tokens),r+=Le(a.total_cost_usd))}return{tokens:n,cost:r}}function In(...e){return e.reduce((t,n)=>({tokens:t.tokens+Le(n?.tokens),cost:t.cost+Le(n?.cost)}),{tokens:0,cost:0})}function vc(e){if(!Array.isArray(e)||e.length===0)return null;const t=In(...e);return{tokens:t.tokens/e.length,cost:t.cost/e.length}}function ir(e){if(!e)return null;const t=Le(e.tokens);return t<=0?null:Le(e.cost)/(t/1e6)}function va(e,t){return e==null||t==null||!Number.isFinite(e)||!Number.isFinite(t)||t===0?null:(e-t)/t}function _c({current:e,prev:t=null,trailingAvg:n=null,period:r}){if(r==="total"||!e)return null;const a=(o,l,i)=>({value:o,deltaVsPrev:va(o,l),deltaVsAvg:n?va(o,i):null});return{period:r,tokens:a(Le(e.tokens),t?Le(t.tokens):null,n?Le(n.tokens):null),cost:a(Le(e.cost),t?Le(t.cost):null,n?Le(n.cost):null),perMTok:a(ir(e),ir(t),ir(n))}}const Oo=864e5;function Mr(e){const t=String(e).split("-").map(Number);return t.length!==3||t.some(n=>!Number.isFinite(n))?null:Date.UTC(t[0],t[1]-1,t[2])}function Rn(e){const t=new Date(e),n=t.getUTCFullYear(),r=String(t.getUTCMonth()+1).padStart(2,"0"),a=String(t.getUTCDate()).padStart(2,"0");return`${n}-${r}-${a}`}function ht(e,t){const n=Mr(e);return n==null?null:Rn(n+t*Oo)}function Nc(e,{timeZone:t,offsetMinutes:n}){const r=e instanceof Date?e:new Date(e);if(t&&typeof Intl<"u"&&Intl.DateTimeFormat)try{const a=new Intl.DateTimeFormat("en-GB",{timeZone:t,hour:"2-digit",hour12:!1});let o=Number(a.format(r).slice(0,2));if(o===24&&(o=0),Number.isFinite(o))return Math.min(23,Math.max(0,o))}catch{}return typeof n=="number"&&Number.isFinite(n)?new Date(r.getTime()+n*6e4).getUTCHours():r.getHours()}function Sc(e,{timeZone:t,offsetMinutes:n}){const r=e instanceof Date?e:new Date(e);if(t&&typeof Intl<"u"&&Intl.DateTimeFormat)try{const o=new Intl.DateTimeFormat("en-CA",{timeZone:t,year:"numeric",month:"2-digit",day:"2-digit"}).format(r);if(/^\d{4}-\d{2}-\d{2}$/.test(o))return o}catch{}return typeof n=="number"&&Number.isFinite(n)?Rn(r.getTime()+n*6e4):Rn(r.getTime())}const Mc=e=>Number(e?.total_tokens??0)||0,jc=e=>Number(e?.total_cost_usd??0)||0;function _a(e,t,n){let r={tokens:0,cost:0};const a=t?Mr(t):null,o=n?Mr(n):null;if(a==null||o==null||a>o)return r;for(let l=a;l<=o;l+=Oo){const i=e.get(Rn(l));i&&(r=In(r,i))}return r}function Dc(e,t){if(!t||e==="total")return null;if(e==="day"||e==="24h"){const o=[];for(let l=1;l<=7;l++){const i=ht(t,-l);i&&o.push(i)}return{kind:"day",hourlyDays:[t,...o],dailyFrom:null,dailyTo:null,todayKey:t,prevKey:ht(t,-1),trailingKeys:o}}const n=e==="week"?6:e==="month"?29:null;if(n==null)return null;const r=n+1,a=ht(t,-r);return{kind:"window",hourlyDays:[t,a].filter(Boolean),dailyFrom:ht(t,-(r*2-1)),dailyTo:t,todayKey:t,curStartKey:ht(t,-n),prevBoundaryKey:a,prevStartKey:ht(t,-(r*2-1))}}function Cc(e,t){const n=new Map;return e.forEach((r,a)=>{n.set(r,Array.isArray(t[a]?.data)?t[a].data:[])}),n}function Tc(e){const t=new Map;for(const n of Array.isArray(e?.data)?e.data:[])n?.day&&t.set(String(n.day),{tokens:Mc(n),cost:jc(n)});return t}function Pc(e,t,n){return{current:cn(t.get(e.todayKey),n),prev:e.prevKey?cn(t.get(e.prevKey),n):null,trailingAvg:vc(e.trailingKeys.map(r=>cn(t.get(r),n)))}}function Oc(e,t,n,r){const a=In(_a(n,e.curStartKey,ht(e.todayKey,-1)),cn(t.get(e.todayKey),r)),o=In(_a(n,e.prevStartKey,e.prevBoundaryKey?ht(e.prevBoundaryKey,-1):null),e.prevBoundaryKey?cn(t.get(e.prevBoundaryKey),r):{tokens:0,cost:0});return{current:a,prev:o,trailingAvg:null}}function Wc(e){try{return new URL(e).host}catch{return null}}function Ac({baseUrl:e,accessToken:t,guestAllowed:n=!1,period:r,timeZone:a,tzOffsetMinutes:o,now:l,cacheKey:i}={}){const[c,u]=m.useState(null),[d,f]=m.useState(!1),[h,y]=m.useState(null),p=m.useRef(0),b=l instanceof Date?l:new Date(l||Date.now()),k=Sc(b,{timeZone:a,offsetMinutes:o}),v=Nc(b,{timeZone:a,offsetMinutes:o}),w=pt(),x=!n&&!w,M=typeof window<"u"&&(window.location.hostname==="localhost"||window.location.hostname==="127.0.0.1"),T=(()=>{if(!i)return null;const j=Wc(e)||"default",W=gn({timeZone:a,offsetMinutes:o});return`tokentracker.pulse.${i}.${j}.${r}.${k}.${W}`})(),D=m.useCallback(()=>{if(!T||typeof window>"u")return null;try{const j=window.localStorage.getItem(T);return j?JSON.parse(j):null}catch{return null}},[T]),E=m.useCallback(j=>{if(!(!T||typeof window>"u"))try{window.localStorage.setItem(T,JSON.stringify(j))}catch{}},[T]),N=m.useCallback(()=>{const j=D();return j&&j.cutoffHour===v?j:null},[D,v]),O=m.useCallback(async()=>{const j=Dc(r,k);if(!j){u(null),y(null);return}const W=await Wt(t);if(!W&&!w&&!M)return;const K=++p.current;f(!0),y(null);try{const $=await Promise.all(j.hourlyDays.map(R=>xo({baseUrl:e,accessToken:W,day:R,timeZone:a,tzOffsetMinutes:o}))),F=Cc(j.hourlyDays,$);let C;if(j.kind==="day")C=Pc(j,F,v);else{const R=await Yn({baseUrl:e,accessToken:W,from:j.dailyFrom,to:j.dailyTo,timeZone:a,tzOffsetMinutes:o});C=Oc(j,F,Tc(R),v)}const S=_c({...C,period:r});if(K!==p.current)return;u(S),x&&S&&E({pulse:S,todayKey:k,cutoffHour:v,fetchedAt:new Date().toISOString()})}catch($){if(K!==p.current)return;const F=N();F?.pulse&&u(F.pulse),y($?.message?String($.message):"Failed to load pulse")}finally{K===p.current&&f(!1)}},[e,t,n,r,a,o,k,v,x,w,M,N,E]);return m.useEffect(()=>{if(r==="total"||r==="custom"){u(null);return}const j=N();j?.pulse&&u(j.pulse)},[T,r,v]),m.useEffect(()=>{O()},[O]),{pulse:c,loading:d,error:h,refresh:O}}const Wo=new Set(["day","hour","month"]);function Fc(e){return Wo.has(e)}function Na(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 Ec(e,t){const n=Na(e),r=Na(t);if(n&&r)return n.length!==r.length?n.length<r.length?-1:1:n===r?0:n<r?-1:1;const a=je(e),o=je(t);return a==null&&o==null?0:a==null?1:o==null?-1:a===o?0:a<o?-1:1}function Ao(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 $c(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 Ic(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 Rc(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 u=new Date(Date.UTC(r,a-1,o,l,i,c));return Number.isFinite(u.getTime())?u.getTime():null}function Lc(e,t,n){const r=n==="hour"?Rc:n==="month"?Ic:$c,a=r(e),o=r(t);return a!=null&&o!=null?a===o?0:a<o?-1:1:Ao(e,t)}function Fo(e,{key:t,dir:n}){const r=n==="asc"?1:-1,a=Array.isArray(e)?e:[],o=Wo.has(t)?(i,c)=>Lc(i,c,t):t==="top_model"?Ao:Ec,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 u=l(i.row),d=l(c.row),f=u==null,h=d==null;if(f&&h)return i.index-c.index;if(f)return 1;if(h)return-1;const y=o(u,d);return y!==0?y*r:i.index-c.index}).map(i=>i.row)}function Bc(){return[{key:"day",label:g("daily.sort.date.label"),title:g("daily.sort.date.title")},{key:"total_tokens",label:g("daily.sort.total.label"),title:g("daily.sort.total.title")},{key:"input_tokens",label:g("daily.sort.input.label"),title:g("daily.sort.input.title")},{key:"output_tokens",label:g("daily.sort.output.label"),title:g("daily.sort.output.title")},{key:"cached_input_tokens",label:g("daily.sort.cached.label"),title:g("daily.sort.cached.title")},{key:"reasoning_output_tokens",label:g("daily.sort.reasoning.label"),title:g("daily.sort.reasoning.title")},{key:"conversation_count",label:g("daily.sort.conversations.label"),title:g("daily.sort.conversations.title")}]}function Sa(e){const t=Fc(e)?e:"day";return Bc().map((n,r)=>r===0?{...n,key:t}:n)}function Ma(e,{key:t,dir:n}){return Fo(e,{key:t,dir:n})}const Ln=12,Yc=["total_tokens","billable_total_tokens","input_tokens","cached_input_tokens","cache_creation_input_tokens","output_tokens","reasoning_output_tokens"];function zc(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 Hc(e){return Yc.some(t=>zc(e?.[t]))}function Uc(e){const t=Array.isArray(e)?e:[];if(!t.length)return[];const n=Fo(t,{key:"month",dir:"asc"}),r=n.findIndex(a=>a?.month&&Hc(a));return r===-1?t:n.slice(r)}function qc(e,t,n=Ln){const r=Array.isArray(e)?e:[],a=Number.isFinite(n)&&n>0?n:Ln,l=(Number.isFinite(t)&&t>=0?Math.floor(t):0)*a;return r.slice(l,l+a)}function Eo(e){if(typeof e!="string")return null;const t=e.trim();return t?t.toLowerCase():null}function Vc(e){const t=Eo(e?.model_id);return t||null}function $o(e,t){return e?.model?String(e.model):t}function Kc(e){const t=String(e||"").toLowerCase();return t.includes("free")||t.includes("hy3-preview")||/^glm-[\d.]+-flash(?![a-z])/.test(t)}function Ot(e,t=0){const n=je(e?.billable_total_tokens),r=je(e?.total_tokens);return n!=null&&n>0?n:r!=null&&r>0?r:n??r??t}function Io(e,{copyFn:t}={}){const n=typeof t=="function"?t:l=>l,a=(Array.isArray(e?.sources)?e.sources:[]).map(l=>{const i=Ot(l?.totals),c=je(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,u=Number.isFinite(c)?c.toFixed(1):"0.0",d=l.models.map(y=>{const p=Ot(y?.totals);if(!Number.isFinite(p)||p<=0)return null;const b=l.totalTokens>0?Math.round(p/l.totalTokens*1e3)/10:0,k=$o(y,n("shared.placeholder.short")),v=Vc(y),w=je(y?.totals?.total_cost_usd),x=w??(l.totalCost>0&&l.totalTokens>0?p/l.totalTokens*l.totalCost:null),M=p>0&&(x==null||x<=0)&&!Kc(k);return{id:v,name:k,share:b,usage:p,cost:x,pricingMissing:M}}).filter(Boolean),f=d.filter(y=>Number.isFinite(Number(y?.cost))&&Number(y.cost)>0).sort((y,p)=>Number(p.cost)-Number(y.cost))[0]||null,h=d.filter(y=>y?.pricingMissing);return{source:l.source,label:i,totalPercent:String(u),usd:l.totalCost,usage:l.totalTokens,topCostModel:f,missingPricingModels:h,models:d}})}function Gc(e,{copyFn:t}={}){const r=Io(e,{copyFn:typeof t=="function"?t:d=>d}),a=r.reduce((d,f)=>d+(Number(f?.usage)||0),0),o=r.reduce((d,f)=>d+(Number(f?.usd)||0),0),l=r.flatMap(d=>(d.models||[]).map(f=>({...f,source:d.label}))),i=l.filter(d=>Number.isFinite(Number(d?.cost))&&Number(d.cost)>0).sort((d,f)=>Number(f.cost)-Number(d.cost))[0]||null,c=l.filter(d=>Number.isFinite(Number(d?.usage))&&Number(d.usage)>0).sort((d,f)=>Number(f.usage)-Number(d.usage))[0]||null,u=l.filter(d=>d?.pricingMissing);return{totalTokens:a,totalCost:o,costPerMillionTokens:a>0?o/(a/1e6):null,topCostModel:i,topUsageModel:c,missingPricingModels:u}}function Xc(e,t="—"){const n=Object.entries(e?.models||{});if(!n.length)return t;let r=null,a=-1;for(const[o,l]of n){const i=Number(l);!Number.isFinite(i)||i<=a||(r=o,a=i)}return r||t}function Qc(e,{fallback:t="—"}={}){const n=(Array.isArray(e)?e:[]).map(o=>{const l=Ot(o),i=je(o?.total_cost_usd)??0,c=Number.isFinite(l)&&l>0?i/(l/1e6):null;return{...o,cost_per_million_tokens:c,top_model:Xc(o,t)}}),r=n.reduce((o,l)=>{const i=je(l?.cost_per_million_tokens);return i!=null&&i>0&&o.push(i),o},[]),a=r.length>0?r.reduce((o,l)=>o+l,0)/r.length:null;return n.map(o=>{const l=je(o?.cost_per_million_tokens),i=l!=null&&a!=null&&a>0&&l>a*1.15;return{...o,cost_per_million_baseline:a,cost_per_million_status:i?"high":"normal"}})}function Jc(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 y=Array.isArray(h?.models)?h.models:[];for(const p of y){const b=Ot(p?.totals);if(!Number.isFinite(b)||b<=0)continue;c+=b;const k=$o(p,r("shared.placeholder.short")),v=Eo(k);if(!v)continue;o.set(v,(o.get(v)||0)+b);const w=i.get(v)||0;b>=w&&(i.set(v,b),l.set(v,k))}}if(!o.size)return[];const u=Array.from(o.values()).reduce((h,y)=>h+y,0),d=c>0?c:u,f=Number.isFinite(t)?Math.max(0,Math.floor(t)):3;return Array.from(o.entries()).map(([h,y])=>{const p=d>0?(y/d*100).toFixed(1):"0.0";return{id:h,name:l.get(h)||r("shared.placeholder.short"),tokens:y,percent:String(p)}}).sort((h,y)=>y.tokens!==h.tokens?y.tokens-h.tokens:String(h.name).localeCompare(String(y.name))).slice(0,f)}function Zc(e,t,n){if(!Number.isFinite(e))return g("shared.placeholder.short");const r=Je(e,{decimals:2,currency:t,rate:n});return r==="-"?g("shared.placeholder.short"):r}function ja(e,t,n){if(!Number.isFinite(e)||e<=0)return null;const r=zn(t);return(t===wo?e:e*n)<.01?`<${r}0.01`:Je(e,{decimals:2,currency:t,rate:n})}function Da(e){const t=Number(e);return!Number.isFinite(t)||t<=0?null:De(t,{decimals:1})}const ed=A.memo(function({isOpen:t,onClose:n,fleetData:r=[]}){const{currency:a,rate:o}=At(),l=m.useMemo(()=>(Array.isArray(r)?r:[]).map(c=>{const u=je(c?.usd)??0,d=je(c?.usage)??0,f=Array.isArray(c?.models)?c.models:[];return{label:c?.label?String(c.label):"",usdValue:u,costLabel:ja(u,a,o),tokensLabel:Da(d),models:f.map(h=>{const y=je(h?.usage)??0,p=je(h?.cost)??0;return{id:h?.id?String(h.id):"",name:h?.name?String(h.name):"",tokensLabel:Da(y),costLabel:ja(p,a,o),sortCost:p}}).filter(h=>h.costLabel||h.tokensLabel).sort((h,y)=>y.sortCost-h.sortCost)}}).filter(c=>c.usdValue>0||c.models.length>0).sort((c,u)=>u.usdValue-c.usdValue),[r,a,o]),i=m.useMemo(()=>{const c=l.reduce((u,d)=>u+d.usdValue,0);return Zc(c,a,o)},[l,a,o]);return s.jsx(Sl,{open:t,onOpenChange:c=>{c||n?.()},children:s.jsxs(Ml,{children:[s.jsx(jl,{className:"cost-modal-backdrop","data-cost-analysis-backdrop":"true"}),s.jsx(Dl,{className:"fixed inset-0 z-[101] flex items-center justify-center p-4",children:s.jsxs(Cl,{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(Tl,{render:s.jsx("h2",{className:"sr-only"}),children:g("dashboard.cost_breakdown.title")}),s.jsx(Bl,{type:"button",className:"absolute top-3 right-3 flex h-9 w-9 items-center justify-center rounded-md text-oai-gray-500 dark:text-oai-gray-400 hover:text-oai-gray-800 dark:hover:text-oai-gray-100 hover:bg-oai-gray-100 dark:hover:bg-oai-gray-800 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-oai-brand/50 transition-colors z-10","aria-label":g("dashboard.cost_breakdown.close"),children:s.jsx(ko,{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:g("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":g("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,u)=>{const d=`fleet-${u}`;return s.jsxs("div",{role:"rowgroup","aria-labelledby":d,className:u>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:d,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}-${u}`)})]})]})})]})})]})})});function td(e){if(typeof e!="string")return{owner:"",repo:""};const[t,n]=e.split("/");return{owner:t||"",repo:n||""}}function nd({projectKey:e,projectRef:t}){const[n,r]=m.useState(!1),a=typeof t=="string"?t.replace("https://github.com/",""):"",{owner:o,repo:l}=td(e||a),i=o&&l?`${o}/${l}`:e,c=o&&!n?`https://github.com/${o}.png?size=80`:"";return c?s.jsx("img",{src:c,alt:"",className:"w-8 h-8 rounded-md oai-bg-elevated object-cover",onError:()=>r(!0)}):s.jsx("div",{className:"w-8 h-8 rounded-md oai-bg-elevated flex items-center justify-center text-oai-gray-500 dark:text-oai-gray-300",children:s.jsx(Ar,{provider:i,size:20})})}function rd({projectEntries:e=[],projectLimit:t=3,onProjectLimitChange:n,copy:r,hasDetailsActual:a,dailyEmptyPrefix:o,installSyncCmd:l,dailyEmptySuffix:i,detailsColumns:c,ariaSortFor:u,toggleSort:d,sortIconFor:f,pagedDetails:h,dailyBreakdownRows:y=[],dailyBreakdownColumns:p=[],dailyBreakdownAriaSortFor:b,dailyBreakdownSortIconFor:k,dailyBreakdownDateKey:v="day",detailsDateKey:w,renderDetailDate:x,renderDailyBreakdownDate:M,renderDetailCell:T,DETAILS_PAGED_PERIODS:D,period:E,detailsPageCount:N,detailsPage:O,setDetailsPage:j}){const[W,K]=m.useState("daily");function $(C,S,R){return R===0?"text-oai-gray-500 dark:text-oai-gray-300":S.key==="total_tokens"||S.key==="total_cost_usd"?"font-medium text-oai-black dark:text-oai-white tabular-nums":S.key==="cost_per_million_tokens"&&C?.cost_per_million_status==="high"?"font-semibold text-amber-700 dark:text-amber-300 tabular-nums":S.key==="top_model"?"text-oai-gray-600 dark:text-oai-gray-300":"text-oai-gray-600 dark:text-oai-gray-300 tabular-nums"}function F(C,S,R){return R===0?M?M(C):x(C):T(C,S.key)}return s.jsxs(Gt,{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":W==="daily",type:"button",onClick:()=>K("daily"),className:`text-xs font-medium px-3 py-1.5 rounded transition-colors ${W==="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":W==="projects",type:"button",onClick:()=>K("projects"),className:`text-xs font-medium px-3 py-1.5 rounded transition-colors ${W==="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")})]}),W==="projects"&&s.jsx(Pl,{ariaLabel:r("dashboard.projects.limit_aria"),value:t,onValueChange:C=>n?.(Number(C)),options:[{value:3,label:r("dashboard.projects.limit_top_3")},{value:6,label:r("dashboard.projects.limit_top_6")},{value:10,label:r("dashboard.projects.limit_top_10")}],align:"end",className:"px-2 py-1 text-xs text-oai-gray-600 dark:text-oai-gray-300"})]}),W==="projects"&&s.jsx("div",{className:"space-y-1",children:e.slice(0,t).map((C,S)=>{const R=typeof C?.project_ref=="string"?C.project_ref:"",z=C?.project_key||R||`entry-${S}`,P=C?.billable_total_tokens??C?.total_tokens,L=Number(P),U=Number.isFinite(L)?L.toLocaleString():"—",ee=C?.project_key||R.split("/").pop()||"—";return s.jsxs("div",{className:"flex items-center gap-3 p-2 rounded-lg",children:[s.jsx(nd,{projectKey:C?.project_key,projectRef:R}),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:ee})}),s.jsx("div",{className:"oai-text-body-sm font-medium text-oai-black dark:text-oai-white tabular-nums",children:U})]},z)})}),W==="daily"&&s.jsxs("div",{children:[y?.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:p.map((C,S)=>s.jsx("th",{...b?.(C.key)?{"aria-sort":b(C.key)}:{},className:"text-left p-0 bg-white dark:bg-oai-gray-900",children:s.jsx("button",{type:"button",onClick:()=>d(C.key),className:"flex w-full items-center justify-start px-2.5 sm:px-4 py-2 text-left oai-text-caption font-semibold text-oai-gray-600 dark:text-oai-gray-300 hover:text-oai-black dark:hover:text-oai-white transition-colors",children:s.jsxs("span",{className:"inline-flex items-center gap-1",children:[s.jsx("span",{children:C.label}),s.jsx("span",{className:"text-oai-gray-400 dark:text-oai-gray-400",children:k?.(C.key)||""})]})})},C.key))})}),s.jsx("tbody",{children:y.map(C=>s.jsx("tr",{className:`border-b border-oai-gray-100 dark:border-oai-gray-800 last:border-b-0 odd:bg-transparent even:bg-oai-gray-50/55 dark:odd:bg-transparent dark:even:bg-white/[0.035] hover:bg-oai-gray-100/60 dark:hover:bg-oai-gray-800/70 transition-colors ${C.missing?"text-oai-gray-400 dark:text-oai-gray-400":C.future?"text-oai-gray-300 dark:text-oai-gray-600":"text-oai-black dark:text-oai-white"}`,children:p.map((S,R)=>s.jsx("td",{className:`px-2.5 sm:px-4 py-2 oai-text-body-sm whitespace-nowrap ${$(C,S,R)}`,children:F(C,S,R)},S.key))},String(C?.[v]||C?.day||C?.hour||C?.month||"")))})]})}),W!=="daily"&&D.has(E)&&N>1?s.jsxs("div",{className:"mt-3 flex items-center justify-between oai-text-caption",children:[s.jsx("button",{type:"button",onClick:()=>j(C=>Math.max(0,C-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," / ",N]}),s.jsx("button",{type:"button",onClick:()=>j(C=>Math.min(N-1,C+1)),disabled:O+1>=N,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 En(e){return typeof e!="string"?"":e.trim()}function Ca(e){const t=En(e);return t?t.split(/[_\-\s]+/).filter(Boolean).map(n=>n.slice(0,1).toUpperCase()+n.slice(1).toLowerCase()).join(" "):""}function ad(e){if(!Array.isArray(e))return[];const t=new Map;for(const n of e){if(!n||typeof n!="object")continue;const r=En(n.tool),a=En(n.planType)||En(n.plan_type);if(!r||!a)continue;const o=Ca(r)||r,l=Ca(a)||a;t.set(`${r.toLowerCase()}::${a.toLowerCase()}`,{tool:o,plan:l})}return Array.from(t.values())}function Ta({rankLabel:e,streakDays:t,subscriptions:n=[],className:r=""}){const a=e??g("identity_card.rank_placeholder"),o=Number.isFinite(Number(t))?Number(t):0,l=o?g("identity_card.streak_value",{days:o}):g("identity_card.rank_placeholder"),i=ad(n);return s.jsxs(Gt,{className:`h-full ${r}`,children:[i.length>0&&s.jsx("div",{className:"flex flex-wrap gap-1.5",children:i.map((c,u)=>s.jsxs(Ll,{variant:"secondary",size:"sm",children:[c.tool," ",c.plan]},`${c.tool}:${c.plan}:${u}`))}),s.jsxs("div",{className:`${i.length>0?"mt-3 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:g("identity_card.rank_label")}),s.jsx("span",{className:"text-oai-gray-500 dark:text-oai-gray-300 tabular-nums",children:a})]}),s.jsxs("div",{className:"flex items-center gap-1",children:[s.jsx("span",{children:g("identity_card.streak_label")}),s.jsx("span",{className:"text-oai-gray-500 dark:text-oai-gray-300 tabular-nums",children:l})]})]})]})}const od={thousandSuffix:"K",millionSuffix:"M",billionSuffix:"B"},sd=.005,id=e=>e==null?"—":De(e,od),ld=e=>e==null?"—":Je(e,{decimals:e>=100?0:2}),cd=e=>e==null?"—":Je(e,{decimals:2}),dd=[{key:"tokens",label:"Tokens",kind:"usage",format:id},{key:"cost",label:"Cost",kind:"usage",format:ld},{key:"perMTok",label:"$/MTok",kind:"price",format:cd}];function ud(e,t){const n="text-oai-gray-400 dark:text-oai-gray-400";if(e==null||!Number.isFinite(e))return{text:"—",cls:n};if(Math.abs(e)<sd)return{text:"0%",cls:n};const r=e>0,a=Math.round(Math.abs(e)*100),o=r?"▲":"▼";let l;return t==="price"?l=r?"text-oai-error":"text-oai-success":l=r?"text-oai-brand-500 dark:text-oai-brand-light":n,{text:`${o}${a}%`,cls:l}}function fd({pulse:e,period:t,comparedAtLabel:n,className:r=""}){if(!e)return null;const a=t==="day"||t==="24h",o=t==="month"?"prev 30d":"prev 7d",l=a?[{label:"yest",field:"deltaVsPrev"},{label:"7d avg",field:"deltaVsAvg"}]:[{label:o,field:"deltaVsPrev"}],i=a?"vs yest · 7d avg":`vs ${o}`,c=a?`same time of day${n?` · ${n}`:""}`:`same elapsed vs ${o}`;return s.jsxs(Gt,{className:`h-full !border-oai-brand-200 dark:!border-oai-brand-900/60 !bg-oai-brand-50 dark:!bg-oai-brand-950/40 ${r}`,bodyClassName:"flex flex-col gap-2",children:[s.jsxs("div",{className:"flex items-baseline justify-between gap-2",children:[s.jsx("span",{className:"text-[10.5px] font-bold uppercase tracking-[0.16em] text-oai-brand-600 dark:text-oai-brand-light",children:"Today's pulse"}),s.jsx("span",{className:"text-[9px] text-oai-gray-400 dark:text-oai-gray-400 tracking-wide",children:i})]}),dd.map(u=>{const d=e[u.key]||{};return s.jsxs("div",{className:"flex items-start justify-between gap-3 py-1.5 border-b border-dashed border-oai-brand-200/70 dark:border-oai-brand-900/50 last:border-b-0",children:[s.jsxs("div",{className:"flex flex-col min-w-0",children:[s.jsx("span",{className:"text-[11px] uppercase tracking-wide text-oai-gray-500 dark:text-oai-gray-400",children:u.label}),s.jsx("span",{className:"text-xl font-bold text-oai-black dark:text-oai-white tabular-nums mt-0.5 truncate",children:u.format(d.value)})]}),s.jsx("div",{className:"flex gap-3 flex-shrink-0",children:l.map(f=>{const h=ud(d[f.field],u.kind);return s.jsxs("div",{className:"flex flex-col items-end min-w-[3.25rem]",children:[s.jsx("span",{className:"text-[8.5px] uppercase tracking-wide text-oai-gray-400 dark:text-oai-gray-400",children:f.label}),s.jsx("span",{className:`text-xs font-bold tabular-nums mt-0.5 ${h.cls}`,children:h.text})]},f.field)})})]},u.key)}),s.jsxs("div",{className:"flex items-center gap-1.5 text-[10.5px] text-oai-gray-400 dark:text-oai-gray-400 pt-0.5",children:[s.jsx("span",{"aria-hidden":"true",children:"⌚"}),s.jsx("span",{children:c})]})]})}function md(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 hd={},ln={};function Ct(e,t){try{const r=(hd[e]||=new Intl.DateTimeFormat("en-US",{timeZone:e,timeZoneName:"longOffset"}).format)(t).split("GMT")[1];return r in ln?ln[r]:Pa(r,r.split(":"))}catch{if(e in ln)return ln[e];const n=e?.match(yd);return n?Pa(e,n.slice(1)):NaN}}const yd=/([+-]\d\d):?(\d\d)?/;function Pa(e,t){const n=+(t[0]||0),r=+(t[1]||0),a=+(t[2]||0)/60;return ln[e]=n*60+r>0?n*60+r+a:n*60-r-a}class Xe extends Date{constructor(...t){super(),t.length>1&&typeof t[t.length-1]=="string"&&(this.timeZone=t.pop()),this.internal=new Date,isNaN(Ct(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)),Ro(this),jr(this)):this.setTime(Date.now())}static tz(t,...n){return n.length?new Xe(...n,t):new Xe(Date.now(),t)}withTimeZone(t){return new Xe(+this,t)}getTimezoneOffset(){const t=-Ct(this.timeZone,this);return t>0?Math.floor(t):Math.ceil(t)}setTime(t){return Date.prototype.setTime.apply(this,arguments),jr(this),+this}[Symbol.for("constructDateFrom")](t){return new Xe(+new Date(t),this.timeZone)}}const Oa=/^(get|set)(?!UTC)/;Object.getOwnPropertyNames(Date.prototype).forEach(e=>{if(!Oa.test(e))return;const t=e.replace(Oa,"$1UTC");Xe.prototype[t]&&(e.startsWith("get")?Xe.prototype[e]=function(){return this.internal[t]()}:(Xe.prototype[e]=function(){return Date.prototype[t].apply(this.internal,arguments),gd(this),+this},Xe.prototype[t]=function(){return Date.prototype[t].apply(this,arguments),jr(this),+this}))});function jr(e){e.internal.setTime(+e),e.internal.setUTCSeconds(e.internal.getUTCSeconds()-Math.round(-Ct(e.timeZone,e)*60))}function gd(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()),Ro(e)}function Ro(e){const t=Ct(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 u=new Date(+e);u.setUTCSeconds(0);const d=a>0?u.getSeconds():(u.getSeconds()-60)%60,f=Math.round(-(Ct(e.timeZone,e)*60))%60;(f||d)&&(e.internal.setUTCSeconds(e.internal.getUTCSeconds()+f),Date.prototype.setUTCSeconds.call(e,Date.prototype.getUTCSeconds.call(e)+f+d));const h=Ct(e.timeZone,e),y=h>0?Math.floor(h):Math.ceil(h),b=-new Date(+e).getTimezoneOffset()-y,k=y!==n,v=b-c;if(k&&v){Date.prototype.setUTCMinutes.call(e,Date.prototype.getUTCMinutes.call(e)+v);const w=Ct(e.timeZone,e),x=w>0?Math.floor(w):Math.ceil(w),M=y-x;M&&(e.internal.setUTCMinutes(e.internal.getUTCMinutes()+M),Date.prototype.setUTCMinutes.call(e,Date.prototype.getUTCMinutes.call(e)+M))}}class Me extends Xe{static tz(t,...n){return n.length?new Me(...n,t):new Me(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} (${md(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 Me(+this,t)}[Symbol.for("constructDateFrom")](t){return new Me(+new Date(t),this.timeZone)}}const Lo=6048e5,pd=864e5,Wa=Symbol.for("constructDateFrom");function pe(e,t){return typeof e=="function"?e(t):e&&typeof e=="object"&&Wa in e?e[Wa](t):e instanceof Date?new e.constructor(t):new Date(t)}function ce(e,t){return pe(t||e,e)}function Bo(e,t,n){const r=ce(e,n?.in);return isNaN(t)?pe(e,NaN):(t&&r.setDate(r.getDate()+t),r)}function Yo(e,t,n){const r=ce(e,n?.in);if(isNaN(t))return pe(e,NaN);if(!t)return r;const a=r.getDate(),o=pe(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 bd={};function bn(){return bd}function gt(e,t){const n=bn(),r=t?.weekStartsOn??t?.locale?.options?.weekStartsOn??n.weekStartsOn??n.locale?.options?.weekStartsOn??0,a=ce(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 hn(e,t){return gt(e,{...t,weekStartsOn:1})}function zo(e,t){const n=ce(e,t?.in),r=n.getFullYear(),a=pe(n,0);a.setFullYear(r+1,0,4),a.setHours(0,0,0,0);const o=hn(a),l=pe(n,0);l.setFullYear(r,0,4),l.setHours(0,0,0,0);const i=hn(l);return n.getTime()>=o.getTime()?r+1:n.getTime()>=i.getTime()?r:r-1}function Aa(e){const t=ce(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 Ft(e,...t){const n=pe.bind(null,e||t.find(r=>typeof r=="object"));return t.map(n)}function yn(e,t){const n=ce(e,t?.in);return n.setHours(0,0,0,0),n}function $r(e,t,n){const[r,a]=Ft(n?.in,e,t),o=yn(r),l=yn(a),i=+o-Aa(o),c=+l-Aa(l);return Math.round((i-c)/pd)}function xd(e,t){const n=zo(e,t),r=pe(e,0);return r.setFullYear(n,0,4),r.setHours(0,0,0,0),hn(r)}function kd(e,t,n){return Bo(e,t*7,n)}function wd(e,t,n){return Yo(e,t*12,n)}function vd(e,t){let n,r=t?.in;return e.forEach(a=>{!r&&typeof a=="object"&&(r=pe.bind(null,a));const o=ce(a,r);(!n||n<o||isNaN(+o))&&(n=o)}),pe(r,n||NaN)}function _d(e,t){let n,r=t?.in;return e.forEach(a=>{!r&&typeof a=="object"&&(r=pe.bind(null,a));const o=ce(a,r);(!n||n>o||isNaN(+o))&&(n=o)}),pe(r,n||NaN)}function Nd(e,t,n){const[r,a]=Ft(n?.in,e,t);return+yn(r)==+yn(a)}function Ho(e){return e instanceof Date||typeof e=="object"&&Object.prototype.toString.call(e)==="[object Date]"}function Sd(e){return!(!Ho(e)&&typeof e!="number"||isNaN(+ce(e)))}function Uo(e,t,n){const[r,a]=Ft(n?.in,e,t),o=r.getFullYear()-a.getFullYear(),l=r.getMonth()-a.getMonth();return o*12+l}function Md(e,t){const n=ce(e,t?.in),r=n.getMonth();return n.setFullYear(n.getFullYear(),r+1,0),n.setHours(23,59,59,999),n}function qo(e,t){const[n,r]=Ft(e,t.start,t.end);return{start:n,end:r}}function jd(e,t){const{start:n,end:r}=qo(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(pe(n,l)),l.setMonth(l.getMonth()+i);return a?c.reverse():c}function Dd(e,t){const n=ce(e,t?.in);return n.setDate(1),n.setHours(0,0,0,0),n}function Cd(e,t){const n=ce(e,t?.in),r=n.getFullYear();return n.setFullYear(r+1,0,0),n.setHours(23,59,59,999),n}function Vo(e,t){const n=ce(e,t?.in);return n.setFullYear(n.getFullYear(),0,1),n.setHours(0,0,0,0),n}function Td(e,t){const{start:n,end:r}=qo(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(pe(n,l)),l.setFullYear(l.getFullYear()+i);return a?c.reverse():c}function Ko(e,t){const n=bn(),r=t?.weekStartsOn??t?.locale?.options?.weekStartsOn??n.weekStartsOn??n.locale?.options?.weekStartsOn??0,a=ce(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 Pd(e,t){return Ko(e,{...t,weekStartsOn:1})}const Od={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"}},Wd=(e,t,n)=>{let r;const a=Od[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 Ce(e){return(t={})=>{const n=t.width?String(t.width):e.defaultWidth;return e.formats[n]||e.formats[e.defaultWidth]}}const Ad={full:"EEEE, MMMM do, y",long:"MMMM do, y",medium:"MMM d, y",short:"MM/dd/yyyy"},Fd={full:"h:mm:ss a zzzz",long:"h:mm:ss a z",medium:"h:mm:ss a",short:"h:mm a"},Ed={full:"{{date}} 'at' {{time}}",long:"{{date}} 'at' {{time}}",medium:"{{date}}, {{time}}",short:"{{date}}, {{time}}"},$d={date:Ce({formats:Ad,defaultWidth:"full"}),time:Ce({formats:Fd,defaultWidth:"full"}),dateTime:Ce({formats:Ed,defaultWidth:"full"})},Id={lastWeek:"'last' eeee 'at' p",yesterday:"'yesterday at' p",today:"'today at' p",tomorrow:"'tomorrow at' p",nextWeek:"eeee 'at' p",other:"P"},Rd=(e,t,n,r)=>Id[e];function ue(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 Ld={narrow:["B","A"],abbreviated:["BC","AD"],wide:["Before Christ","Anno Domini"]},Bd={narrow:["1","2","3","4"],abbreviated:["Q1","Q2","Q3","Q4"],wide:["1st quarter","2nd quarter","3rd quarter","4th quarter"]},Yd={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"]},zd={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"]},Hd={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"}},Ud={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"}},qd=(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"},Vd={ordinalNumber:qd,era:ue({values:Ld,defaultWidth:"wide"}),quarter:ue({values:Bd,defaultWidth:"wide",argumentCallback:e=>e-1}),month:ue({values:Yd,defaultWidth:"wide"}),day:ue({values:zd,defaultWidth:"wide"}),dayPeriod:ue({values:Hd,defaultWidth:"wide",formattingValues:Ud,defaultFormattingWidth:"wide"})};function fe(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)?Gd(i,f=>f.test(l)):Kd(i,f=>f.test(l));let u;u=e.valueCallback?e.valueCallback(c):c,u=n.valueCallback?n.valueCallback(u):u;const d=t.slice(l.length);return{value:u,rest:d}}}function Kd(e,t){for(const n in e)if(Object.prototype.hasOwnProperty.call(e,n)&&t(e[n]))return n}function Gd(e,t){for(let n=0;n<e.length;n++)if(t(e[n]))return n}function xn(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 Xd=/^(\d+)(th|st|nd|rd)?/i,Qd=/\d+/i,Jd={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},Zd={any:[/^b/i,/^(a|c)/i]},eu={narrow:/^[1234]/i,abbreviated:/^q[1234]/i,wide:/^[1234](th|st|nd|rd)? quarter/i},tu={any:[/1/i,/2/i,/3/i,/4/i]},nu={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},ru={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]},au={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},ou={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]},su={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},iu={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}},lu={ordinalNumber:xn({matchPattern:Xd,parsePattern:Qd,valueCallback:e=>parseInt(e,10)}),era:fe({matchPatterns:Jd,defaultMatchWidth:"wide",parsePatterns:Zd,defaultParseWidth:"any"}),quarter:fe({matchPatterns:eu,defaultMatchWidth:"wide",parsePatterns:tu,defaultParseWidth:"any",valueCallback:e=>e+1}),month:fe({matchPatterns:nu,defaultMatchWidth:"wide",parsePatterns:ru,defaultParseWidth:"any"}),day:fe({matchPatterns:au,defaultMatchWidth:"wide",parsePatterns:ou,defaultParseWidth:"any"}),dayPeriod:fe({matchPatterns:su,defaultMatchWidth:"any",parsePatterns:iu,defaultParseWidth:"any"})},yt={code:"en-US",formatDistance:Wd,formatLong:$d,formatRelative:Rd,localize:Vd,match:lu,options:{weekStartsOn:0,firstWeekContainsDate:1}};function cu(e,t){const n=ce(e,t?.in);return $r(n,Vo(n))+1}function Ir(e,t){const n=ce(e,t?.in),r=+hn(n)-+xd(n);return Math.round(r/Lo)+1}function Go(e,t){const n=ce(e,t?.in),r=n.getFullYear(),a=bn(),o=t?.firstWeekContainsDate??t?.locale?.options?.firstWeekContainsDate??a.firstWeekContainsDate??a.locale?.options?.firstWeekContainsDate??1,l=pe(t?.in||e,0);l.setFullYear(r+1,0,o),l.setHours(0,0,0,0);const i=gt(l,t),c=pe(t?.in||e,0);c.setFullYear(r,0,o),c.setHours(0,0,0,0);const u=gt(c,t);return+n>=+i?r+1:+n>=+u?r:r-1}function du(e,t){const n=bn(),r=t?.firstWeekContainsDate??t?.locale?.options?.firstWeekContainsDate??n.firstWeekContainsDate??n.locale?.options?.firstWeekContainsDate??1,a=Go(e,t),o=pe(t?.in||e,0);return o.setFullYear(a,0,r),o.setHours(0,0,0,0),gt(o,t)}function Rr(e,t){const n=ce(e,t?.in),r=+gt(n,t)-+du(n,t);return Math.round(r/Lo)+1}function ie(e,t){const n=e<0?"-":"",r=Math.abs(e).toString().padStart(t,"0");return n+r}const ut={y(e,t){const n=e.getFullYear(),r=n>0?n:1-n;return ie(t==="yy"?r%100:r,t.length)},M(e,t){const n=e.getMonth();return t==="M"?String(n+1):ie(n+1,2)},d(e,t){return ie(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 ie(e.getHours()%12||12,t.length)},H(e,t){return ie(e.getHours(),t.length)},m(e,t){return ie(e.getMinutes(),t.length)},s(e,t){return ie(e.getSeconds(),t.length)},S(e,t){const n=t.length,r=e.getMilliseconds(),a=Math.trunc(r*Math.pow(10,n-3));return ie(a,t.length)}},zt={midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},Fa={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 ut.y(e,t)},Y:function(e,t,n,r){const a=Go(e,r),o=a>0?a:1-a;if(t==="YY"){const l=o%100;return ie(l,2)}return t==="Yo"?n.ordinalNumber(o,{unit:"year"}):ie(o,t.length)},R:function(e,t){const n=zo(e);return ie(n,t.length)},u:function(e,t){const n=e.getFullYear();return ie(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 ie(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 ie(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 ut.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 ie(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=Rr(e,r);return t==="wo"?n.ordinalNumber(a,{unit:"week"}):ie(a,t.length)},I:function(e,t,n){const r=Ir(e);return t==="Io"?n.ordinalNumber(r,{unit:"week"}):ie(r,t.length)},d:function(e,t,n){return t==="do"?n.ordinalNumber(e.getDate(),{unit:"date"}):ut.d(e,t)},D:function(e,t,n){const r=cu(e);return t==="Do"?n.ordinalNumber(r,{unit:"dayOfYear"}):ie(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 ie(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 ie(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 ie(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=zt.noon:r===0?a=zt.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=zt.evening:r>=12?a=zt.afternoon:r>=4?a=zt.morning:a=zt.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 ut.h(e,t)},H:function(e,t,n){return t==="Ho"?n.ordinalNumber(e.getHours(),{unit:"hour"}):ut.H(e,t)},K:function(e,t,n){const r=e.getHours()%12;return t==="Ko"?n.ordinalNumber(r,{unit:"hour"}):ie(r,t.length)},k:function(e,t,n){let r=e.getHours();return r===0&&(r=24),t==="ko"?n.ordinalNumber(r,{unit:"hour"}):ie(r,t.length)},m:function(e,t,n){return t==="mo"?n.ordinalNumber(e.getMinutes(),{unit:"minute"}):ut.m(e,t)},s:function(e,t,n){return t==="so"?n.ordinalNumber(e.getSeconds(),{unit:"second"}):ut.s(e,t)},S:function(e,t){return ut.S(e,t)},X:function(e,t,n){const r=e.getTimezoneOffset();if(r===0)return"Z";switch(t){case"X":return $a(r);case"XXXX":case"XX":return jt(r);default:return jt(r,":")}},x:function(e,t,n){const r=e.getTimezoneOffset();switch(t){case"x":return $a(r);case"xxxx":case"xx":return jt(r);default:return jt(r,":")}},O:function(e,t,n){const r=e.getTimezoneOffset();switch(t){case"O":case"OO":case"OOO":return"GMT"+Ea(r,":");default:return"GMT"+jt(r,":")}},z:function(e,t,n){const r=e.getTimezoneOffset();switch(t){case"z":case"zz":case"zzz":return"GMT"+Ea(r,":");default:return"GMT"+jt(r,":")}},t:function(e,t,n){const r=Math.trunc(+e/1e3);return ie(r,t.length)},T:function(e,t,n){return ie(+e,t.length)}};function Ea(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+ie(o,2)}function $a(e,t){return e%60===0?(e>0?"-":"+")+ie(Math.abs(e)/60,2):jt(e,t)}function jt(e,t=""){const n=e>0?"-":"+",r=Math.abs(e),a=ie(Math.trunc(r/60),2),o=ie(r%60,2);return n+a+t+o}const Ia=(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"})}},Xo=(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"})}},uu=(e,t)=>{const n=e.match(/(P+)(p+)?/)||[],r=n[1],a=n[2];if(!a)return Ia(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}}",Ia(r,t)).replace("{{time}}",Xo(a,t))},fu={p:Xo,P:uu},mu=/^D+$/,hu=/^Y+$/,yu=["D","DD","YY","YYYY"];function gu(e){return mu.test(e)}function pu(e){return hu.test(e)}function bu(e,t,n){const r=xu(e,t,n);if(console.warn(r),yu.includes(e))throw new RangeError(r)}function xu(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 ku=/[yYQqMLwIdDecihHKkms]o|(\w)\1*|''|'(''|[^'])+('|$)|./g,wu=/P+p+|P+|p+|''|'(''|[^'])+('|$)|./g,vu=/^'([^]*?)'?$/,_u=/''/g,Nu=/[a-zA-Z]/;function Qe(e,t,n){const r=bn(),a=n?.locale??r.locale??yt,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=ce(e,n?.in);if(!Sd(i))throw new RangeError("Invalid time value");let c=t.match(wu).map(d=>{const f=d[0];if(f==="p"||f==="P"){const h=fu[f];return h(d,a.formatLong)}return d}).join("").match(ku).map(d=>{if(d==="''")return{isToken:!1,value:"'"};const f=d[0];if(f==="'")return{isToken:!1,value:Su(d)};if(Fa[f])return{isToken:!0,value:d};if(f.match(Nu))throw new RangeError("Format string contains an unescaped latin alphabet character `"+f+"`");return{isToken:!1,value:d}});a.localize.preprocessor&&(c=a.localize.preprocessor(i,c));const u={firstWeekContainsDate:o,weekStartsOn:l,locale:a};return c.map(d=>{if(!d.isToken)return d.value;const f=d.value;(!n?.useAdditionalWeekYearTokens&&pu(f)||!n?.useAdditionalDayOfYearTokens&&gu(f))&&bu(f,t,String(e));const h=Fa[f[0]];return h(i,f,a.localize,u)}).join("")}function Su(e){const t=e.match(vu);return t?t[1].replace(_u,"'"):e}function Mu(e,t){const n=ce(e,t?.in),r=n.getFullYear(),a=n.getMonth(),o=pe(n,0);return o.setFullYear(r,a+1,0),o.setHours(0,0,0,0),o.getDate()}function ju(e,t){return ce(e,t?.in).getMonth()}function Du(e,t){return ce(e,t?.in).getFullYear()}function Cu(e,t){return+ce(e)>+ce(t)}function Tu(e,t){return+ce(e)<+ce(t)}function Pu(e,t,n){const[r,a]=Ft(n?.in,e,t);return+gt(r,n)==+gt(a,n)}function Ou(e,t,n){const[r,a]=Ft(n?.in,e,t);return r.getFullYear()===a.getFullYear()&&r.getMonth()===a.getMonth()}function Wu(e,t,n){const[r,a]=Ft(n?.in,e,t);return r.getFullYear()===a.getFullYear()}function Au(e,t,n){const r=ce(e,n?.in),a=r.getFullYear(),o=r.getDate(),l=pe(e,0);l.setFullYear(a,t,15),l.setHours(0,0,0,0);const i=Mu(l);return r.setMonth(t,Math.min(o,i)),r}function Fu(e,t,n){const r=ce(e,n?.in);return isNaN(+r)?pe(e,NaN):(r.setFullYear(t),r)}const Ra=5,Eu=4;function $u(e,t){const n=t.startOfMonth(e),r=n.getDay()>0?n.getDay():7,a=t.addDays(e,-r+1),o=t.addDays(a,Ra*7-1);return t.getMonth(e)===t.getMonth(o)?Ra:Eu}function Qo(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 Iu(e,t){const n=Qo(e,t),r=$u(e,t);return t.addDays(n,r*7-1)}const Ru={lessThanXSeconds:{one:"1秒未満",other:"{{count}}秒未満",oneWithSuffix:"約1秒",otherWithSuffix:"約{{count}}秒"},xSeconds:{one:"1秒",other:"{{count}}秒"},halfAMinute:"30秒",lessThanXMinutes:{one:"1分未満",other:"{{count}}分未満",oneWithSuffix:"約1分",otherWithSuffix:"約{{count}}分"},xMinutes:{one:"1分",other:"{{count}}分"},aboutXHours:{one:"約1時間",other:"約{{count}}時間"},xHours:{one:"1時間",other:"{{count}}時間"},xDays:{one:"1日",other:"{{count}}日"},aboutXWeeks:{one:"約1週間",other:"約{{count}}週間"},xWeeks:{one:"1週間",other:"{{count}}週間"},aboutXMonths:{one:"約1か月",other:"約{{count}}か月"},xMonths:{one:"1か月",other:"{{count}}か月"},aboutXYears:{one:"約1年",other:"約{{count}}年"},xYears:{one:"1年",other:"{{count}}年"},overXYears:{one:"1年以上",other:"{{count}}年以上"},almostXYears:{one:"1年近く",other:"{{count}}年近く"}},Lu=(e,t,n)=>{n=n||{};let r;const a=Ru[e];return typeof a=="string"?r=a:t===1?n.addSuffix&&a.oneWithSuffix?r=a.oneWithSuffix:r=a.one:n.addSuffix&&a.otherWithSuffix?r=a.otherWithSuffix.replace("{{count}}",String(t)):r=a.other.replace("{{count}}",String(t)),n.addSuffix?n.comparison&&n.comparison>0?r+"後":r+"前":r},Bu={full:"y年M月d日EEEE",long:"y年M月d日",medium:"y/MM/dd",short:"y/MM/dd"},Yu={full:"H時mm分ss秒 zzzz",long:"H:mm:ss z",medium:"H:mm:ss",short:"H:mm"},zu={full:"{{date}} {{time}}",long:"{{date}} {{time}}",medium:"{{date}} {{time}}",short:"{{date}} {{time}}"},Hu={date:Ce({formats:Bu,defaultWidth:"full"}),time:Ce({formats:Yu,defaultWidth:"full"}),dateTime:Ce({formats:zu,defaultWidth:"full"})},Uu={lastWeek:"先週のeeeeのp",yesterday:"昨日のp",today:"今日のp",tomorrow:"明日のp",nextWeek:"翌週のeeeeのp",other:"P"},qu=(e,t,n,r)=>Uu[e],Vu={narrow:["BC","AC"],abbreviated:["紀元前","西暦"],wide:["紀元前","西暦"]},Ku={narrow:["1","2","3","4"],abbreviated:["Q1","Q2","Q3","Q4"],wide:["第1四半期","第2四半期","第3四半期","第4四半期"]},Gu={narrow:["1","2","3","4","5","6","7","8","9","10","11","12"],abbreviated:["1月","2月","3月","4月","5月","6月","7月","8月","9月","10月","11月","12月"],wide:["1月","2月","3月","4月","5月","6月","7月","8月","9月","10月","11月","12月"]},Xu={narrow:["日","月","火","水","木","金","土"],short:["日","月","火","水","木","金","土"],abbreviated:["日","月","火","水","木","金","土"],wide:["日曜日","月曜日","火曜日","水曜日","木曜日","金曜日","土曜日"]},Qu={narrow:{am:"午前",pm:"午後",midnight:"深夜",noon:"正午",morning:"朝",afternoon:"午後",evening:"夜",night:"深夜"},abbreviated:{am:"午前",pm:"午後",midnight:"深夜",noon:"正午",morning:"朝",afternoon:"午後",evening:"夜",night:"深夜"},wide:{am:"午前",pm:"午後",midnight:"深夜",noon:"正午",morning:"朝",afternoon:"午後",evening:"夜",night:"深夜"}},Ju={narrow:{am:"午前",pm:"午後",midnight:"深夜",noon:"正午",morning:"朝",afternoon:"午後",evening:"夜",night:"深夜"},abbreviated:{am:"午前",pm:"午後",midnight:"深夜",noon:"正午",morning:"朝",afternoon:"午後",evening:"夜",night:"深夜"},wide:{am:"午前",pm:"午後",midnight:"深夜",noon:"正午",morning:"朝",afternoon:"午後",evening:"夜",night:"深夜"}},Zu=(e,t)=>{const n=Number(e);switch(String(t?.unit)){case"year":return`${n}年`;case"quarter":return`第${n}四半期`;case"month":return`${n}月`;case"week":return`第${n}週`;case"date":return`${n}日`;case"hour":return`${n}時`;case"minute":return`${n}分`;case"second":return`${n}秒`;default:return`${n}`}},ef={ordinalNumber:Zu,era:ue({values:Vu,defaultWidth:"wide"}),quarter:ue({values:Ku,defaultWidth:"wide",argumentCallback:e=>Number(e)-1}),month:ue({values:Gu,defaultWidth:"wide"}),day:ue({values:Xu,defaultWidth:"wide"}),dayPeriod:ue({values:Qu,defaultWidth:"wide",formattingValues:Ju,defaultFormattingWidth:"wide"})},tf=/^第?\d+(年|四半期|月|週|日|時|分|秒)?/i,nf=/\d+/i,rf={narrow:/^(B\.?C\.?|A\.?D\.?)/i,abbreviated:/^(紀元[前後]|西暦)/i,wide:/^(紀元[前後]|西暦)/i},af={narrow:[/^B/i,/^A/i],any:[/^(紀元前)/i,/^(西暦|紀元後)/i]},of={narrow:/^[1234]/i,abbreviated:/^Q[1234]/i,wide:/^第[1234一二三四1234]四半期/i},sf={any:[/(1|一|1)/i,/(2|二|2)/i,/(3|三|3)/i,/(4|四|4)/i]},lf={narrow:/^([123456789]|1[012])/,abbreviated:/^([123456789]|1[012])月/i,wide:/^([123456789]|1[012])月/i},cf={any:[/^1\D/,/^2/,/^3/,/^4/,/^5/,/^6/,/^7/,/^8/,/^9/,/^10/,/^11/,/^12/]},df={narrow:/^[日月火水木金土]/,short:/^[日月火水木金土]/,abbreviated:/^[日月火水木金土]/,wide:/^[日月火水木金土]曜日/},uf={any:[/^日/,/^月/,/^火/,/^水/,/^木/,/^金/,/^土/]},ff={any:/^(AM|PM|午前|午後|正午|深夜|真夜中|夜|朝)/i},mf={any:{am:/^(A|午前)/i,pm:/^(P|午後)/i,midnight:/^深夜|真夜中/i,noon:/^正午/i,morning:/^朝/i,afternoon:/^午後/i,evening:/^夜/i,night:/^深夜/i}},hf={ordinalNumber:xn({matchPattern:tf,parsePattern:nf,valueCallback:function(e){return parseInt(e,10)}}),era:fe({matchPatterns:rf,defaultMatchWidth:"wide",parsePatterns:af,defaultParseWidth:"any"}),quarter:fe({matchPatterns:of,defaultMatchWidth:"wide",parsePatterns:sf,defaultParseWidth:"any",valueCallback:e=>e+1}),month:fe({matchPatterns:lf,defaultMatchWidth:"wide",parsePatterns:cf,defaultParseWidth:"any"}),day:fe({matchPatterns:df,defaultMatchWidth:"wide",parsePatterns:uf,defaultParseWidth:"any"}),dayPeriod:fe({matchPatterns:ff,defaultMatchWidth:"any",parsePatterns:mf,defaultParseWidth:"any"})},yf={code:"ja",formatDistance:Lu,formatLong:Hu,formatRelative:qu,localize:ef,match:hf,options:{weekStartsOn:0,firstWeekContainsDate:1}},gf={lessThanXSeconds:{one:"1초 미만",other:"{{count}}초 미만"},xSeconds:{one:"1초",other:"{{count}}초"},halfAMinute:"30초",lessThanXMinutes:{one:"1분 미만",other:"{{count}}분 미만"},xMinutes:{one:"1분",other:"{{count}}분"},aboutXHours:{one:"약 1시간",other:"약 {{count}}시간"},xHours:{one:"1시간",other:"{{count}}시간"},xDays:{one:"1일",other:"{{count}}일"},aboutXWeeks:{one:"약 1주",other:"약 {{count}}주"},xWeeks:{one:"1주",other:"{{count}}주"},aboutXMonths:{one:"약 1개월",other:"약 {{count}}개월"},xMonths:{one:"1개월",other:"{{count}}개월"},aboutXYears:{one:"약 1년",other:"약 {{count}}년"},xYears:{one:"1년",other:"{{count}}년"},overXYears:{one:"1년 이상",other:"{{count}}년 이상"},almostXYears:{one:"거의 1년",other:"거의 {{count}}년"}},pf=(e,t,n)=>{let r;const a=gf[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?r+" 후":r+" 전":r},bf={full:"y년 M월 d일 EEEE",long:"y년 M월 d일",medium:"y.MM.dd",short:"y.MM.dd"},xf={full:"a H시 mm분 ss초 zzzz",long:"a H:mm:ss z",medium:"HH:mm:ss",short:"HH:mm"},kf={full:"{{date}} {{time}}",long:"{{date}} {{time}}",medium:"{{date}} {{time}}",short:"{{date}} {{time}}"},wf={date:Ce({formats:bf,defaultWidth:"full"}),time:Ce({formats:xf,defaultWidth:"full"}),dateTime:Ce({formats:kf,defaultWidth:"full"})},vf={lastWeek:"'지난' eeee p",yesterday:"'어제' p",today:"'오늘' p",tomorrow:"'내일' p",nextWeek:"'다음' eeee p",other:"P"},_f=(e,t,n,r)=>vf[e],Nf={narrow:["BC","AD"],abbreviated:["BC","AD"],wide:["기원전","서기"]},Sf={narrow:["1","2","3","4"],abbreviated:["Q1","Q2","Q3","Q4"],wide:["1분기","2분기","3분기","4분기"]},Mf={narrow:["1","2","3","4","5","6","7","8","9","10","11","12"],abbreviated:["1월","2월","3월","4월","5월","6월","7월","8월","9월","10월","11월","12월"],wide:["1월","2월","3월","4월","5월","6월","7월","8월","9월","10월","11월","12월"]},jf={narrow:["일","월","화","수","목","금","토"],short:["일","월","화","수","목","금","토"],abbreviated:["일","월","화","수","목","금","토"],wide:["일요일","월요일","화요일","수요일","목요일","금요일","토요일"]},Df={narrow:{am:"오전",pm:"오후",midnight:"자정",noon:"정오",morning:"아침",afternoon:"오후",evening:"저녁",night:"밤"},abbreviated:{am:"오전",pm:"오후",midnight:"자정",noon:"정오",morning:"아침",afternoon:"오후",evening:"저녁",night:"밤"},wide:{am:"오전",pm:"오후",midnight:"자정",noon:"정오",morning:"아침",afternoon:"오후",evening:"저녁",night:"밤"}},Cf={narrow:{am:"오전",pm:"오후",midnight:"자정",noon:"정오",morning:"아침",afternoon:"오후",evening:"저녁",night:"밤"},abbreviated:{am:"오전",pm:"오후",midnight:"자정",noon:"정오",morning:"아침",afternoon:"오후",evening:"저녁",night:"밤"},wide:{am:"오전",pm:"오후",midnight:"자정",noon:"정오",morning:"아침",afternoon:"오후",evening:"저녁",night:"밤"}},Tf=(e,t)=>{const n=Number(e);switch(String(t?.unit)){case"minute":case"second":return String(n);case"date":return n+"일";default:return n+"번째"}},Pf={ordinalNumber:Tf,era:ue({values:Nf,defaultWidth:"wide"}),quarter:ue({values:Sf,defaultWidth:"wide",argumentCallback:e=>e-1}),month:ue({values:Mf,defaultWidth:"wide"}),day:ue({values:jf,defaultWidth:"wide"}),dayPeriod:ue({values:Df,defaultWidth:"wide",formattingValues:Cf,defaultFormattingWidth:"wide"})},Of=/^(\d+)(일|번째)?/i,Wf=/\d+/i,Af={narrow:/^(b\.?\s?c\.?|b\.?\s?c\.?\s?e\.?|a\.?\s?d\.?|c\.?\s?e\.?)/i,abbreviated:/^(b\.?\s?c\.?|b\.?\s?c\.?\s?e\.?|a\.?\s?d\.?|c\.?\s?e\.?)/i,wide:/^(기원전|서기)/i},Ff={any:[/^(bc|기원전)/i,/^(ad|서기)/i]},Ef={narrow:/^[1234]/i,abbreviated:/^q[1234]/i,wide:/^[1234]사?분기/i},$f={any:[/1/i,/2/i,/3/i,/4/i]},If={narrow:/^(1[012]|[123456789])/,abbreviated:/^(1[012]|[123456789])월/i,wide:/^(1[012]|[123456789])월/i},Rf={any:[/^1월?$/,/^2/,/^3/,/^4/,/^5/,/^6/,/^7/,/^8/,/^9/,/^10/,/^11/,/^12/]},Lf={narrow:/^[일월화수목금토]/,short:/^[일월화수목금토]/,abbreviated:/^[일월화수목금토]/,wide:/^[일월화수목금토]요일/},Bf={any:[/^일/,/^월/,/^화/,/^수/,/^목/,/^금/,/^토/]},Yf={any:/^(am|pm|오전|오후|자정|정오|아침|저녁|밤)/i},zf={any:{am:/^(am|오전)/i,pm:/^(pm|오후)/i,midnight:/^자정/i,noon:/^정오/i,morning:/^아침/i,afternoon:/^오후/i,evening:/^저녁/i,night:/^밤/i}},Hf={ordinalNumber:xn({matchPattern:Of,parsePattern:Wf,valueCallback:e=>parseInt(e,10)}),era:fe({matchPatterns:Af,defaultMatchWidth:"wide",parsePatterns:Ff,defaultParseWidth:"any"}),quarter:fe({matchPatterns:Ef,defaultMatchWidth:"wide",parsePatterns:$f,defaultParseWidth:"any",valueCallback:e=>e+1}),month:fe({matchPatterns:If,defaultMatchWidth:"wide",parsePatterns:Rf,defaultParseWidth:"any"}),day:fe({matchPatterns:Lf,defaultMatchWidth:"wide",parsePatterns:Bf,defaultParseWidth:"any"}),dayPeriod:fe({matchPatterns:Yf,defaultMatchWidth:"any",parsePatterns:zf,defaultParseWidth:"any"})},Uf={code:"ko",formatDistance:pf,formatLong:wf,formatRelative:_f,localize:Pf,match:Hf,options:{weekStartsOn:0,firstWeekContainsDate:1}},qf={lessThanXSeconds:{one:"不到 1 秒",other:"不到 {{count}} 秒"},xSeconds:{one:"1 秒",other:"{{count}} 秒"},halfAMinute:"半分钟",lessThanXMinutes:{one:"不到 1 分钟",other:"不到 {{count}} 分钟"},xMinutes:{one:"1 分钟",other:"{{count}} 分钟"},xHours:{one:"1 小时",other:"{{count}} 小时"},aboutXHours:{one:"大约 1 小时",other:"大约 {{count}} 小时"},xDays:{one:"1 天",other:"{{count}} 天"},aboutXWeeks:{one:"大约 1 个星期",other:"大约 {{count}} 个星期"},xWeeks:{one:"1 个星期",other:"{{count}} 个星期"},aboutXMonths:{one:"大约 1 个月",other:"大约 {{count}} 个月"},xMonths:{one:"1 个月",other:"{{count}} 个月"},aboutXYears:{one:"大约 1 年",other:"大约 {{count}} 年"},xYears:{one:"1 年",other:"{{count}} 年"},overXYears:{one:"超过 1 年",other:"超过 {{count}} 年"},almostXYears:{one:"将近 1 年",other:"将近 {{count}} 年"}},Vf=(e,t,n)=>{let r;const a=qf[e];return typeof a=="string"?r=a:t===1?r=a.one:r=a.other.replace("{{count}}",String(t)),n?.addSuffix?n.comparison&&n.comparison>0?r+"内":r+"前":r},Kf={full:"y'年'M'月'd'日' EEEE",long:"y'年'M'月'd'日'",medium:"yyyy-MM-dd",short:"yy-MM-dd"},Gf={full:"zzzz a h:mm:ss",long:"z a h:mm:ss",medium:"a h:mm:ss",short:"a h:mm"},Xf={full:"{{date}} {{time}}",long:"{{date}} {{time}}",medium:"{{date}} {{time}}",short:"{{date}} {{time}}"},Qf={date:Ce({formats:Kf,defaultWidth:"full"}),time:Ce({formats:Gf,defaultWidth:"full"}),dateTime:Ce({formats:Xf,defaultWidth:"full"})};function La(e,t,n){const r="eeee p";return Pu(e,t,n)?r:e.getTime()>t.getTime()?"'下个'"+r:"'上个'"+r}const Jf={lastWeek:La,yesterday:"'昨天' p",today:"'今天' p",tomorrow:"'明天' p",nextWeek:La,other:"PP p"},Zf=(e,t,n,r)=>{const a=Jf[e];return typeof a=="function"?a(t,n,r):a},em={narrow:["前","公元"],abbreviated:["前","公元"],wide:["公元前","公元"]},tm={narrow:["1","2","3","4"],abbreviated:["第一季","第二季","第三季","第四季"],wide:["第一季度","第二季度","第三季度","第四季度"]},nm={narrow:["一","二","三","四","五","六","七","八","九","十","十一","十二"],abbreviated:["1月","2月","3月","4月","5月","6月","7月","8月","9月","10月","11月","12月"],wide:["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月"]},rm={narrow:["日","一","二","三","四","五","六"],short:["日","一","二","三","四","五","六"],abbreviated:["周日","周一","周二","周三","周四","周五","周六"],wide:["星期日","星期一","星期二","星期三","星期四","星期五","星期六"]},am={narrow:{am:"上",pm:"下",midnight:"凌晨",noon:"午",morning:"早",afternoon:"下午",evening:"晚",night:"夜"},abbreviated:{am:"上午",pm:"下午",midnight:"凌晨",noon:"中午",morning:"早晨",afternoon:"中午",evening:"晚上",night:"夜间"},wide:{am:"上午",pm:"下午",midnight:"凌晨",noon:"中午",morning:"早晨",afternoon:"中午",evening:"晚上",night:"夜间"}},om={narrow:{am:"上",pm:"下",midnight:"凌晨",noon:"午",morning:"早",afternoon:"下午",evening:"晚",night:"夜"},abbreviated:{am:"上午",pm:"下午",midnight:"凌晨",noon:"中午",morning:"早晨",afternoon:"中午",evening:"晚上",night:"夜间"},wide:{am:"上午",pm:"下午",midnight:"凌晨",noon:"中午",morning:"早晨",afternoon:"中午",evening:"晚上",night:"夜间"}},sm=(e,t)=>{const n=Number(e);switch(t?.unit){case"date":return n.toString()+"日";case"hour":return n.toString()+"时";case"minute":return n.toString()+"分";case"second":return n.toString()+"秒";default:return"第 "+n.toString()}},im={ordinalNumber:sm,era:ue({values:em,defaultWidth:"wide"}),quarter:ue({values:tm,defaultWidth:"wide",argumentCallback:e=>e-1}),month:ue({values:nm,defaultWidth:"wide"}),day:ue({values:rm,defaultWidth:"wide"}),dayPeriod:ue({values:am,defaultWidth:"wide",formattingValues:om,defaultFormattingWidth:"wide"})},lm=/^(第\s*)?\d+(日|时|分|秒)?/i,cm=/\d+/i,dm={narrow:/^(前)/i,abbreviated:/^(前)/i,wide:/^(公元前|公元)/i},um={any:[/^(前)/i,/^(公元)/i]},fm={narrow:/^[1234]/i,abbreviated:/^第[一二三四]刻/i,wide:/^第[一二三四]刻钟/i},mm={any:[/(1|一)/i,/(2|二)/i,/(3|三)/i,/(4|四)/i]},hm={narrow:/^(一|二|三|四|五|六|七|八|九|十[二一])/i,abbreviated:/^(一|二|三|四|五|六|七|八|九|十[二一]|\d|1[12])月/i,wide:/^(一|二|三|四|五|六|七|八|九|十[二一])月/i},ym={narrow:[/^一/i,/^二/i,/^三/i,/^四/i,/^五/i,/^六/i,/^七/i,/^八/i,/^九/i,/^十(?!(一|二))/i,/^十一/i,/^十二/i],any:[/^一|1/i,/^二|2/i,/^三|3/i,/^四|4/i,/^五|5/i,/^六|6/i,/^七|7/i,/^八|8/i,/^九|9/i,/^十(?!(一|二))|10/i,/^十一|11/i,/^十二|12/i]},gm={narrow:/^[一二三四五六日]/i,short:/^[一二三四五六日]/i,abbreviated:/^周[一二三四五六日]/i,wide:/^星期[一二三四五六日]/i},pm={any:[/日/i,/一/i,/二/i,/三/i,/四/i,/五/i,/六/i]},bm={any:/^(上午?|下午?|午夜|[中正]午|早上?|下午|晚上?|凌晨|)/i},xm={any:{am:/^上午?/i,pm:/^下午?/i,midnight:/^午夜/i,noon:/^[中正]午/i,morning:/^早上/i,afternoon:/^下午/i,evening:/^晚上?/i,night:/^凌晨/i}},km={ordinalNumber:xn({matchPattern:lm,parsePattern:cm,valueCallback:e=>parseInt(e,10)}),era:fe({matchPatterns:dm,defaultMatchWidth:"wide",parsePatterns:um,defaultParseWidth:"any"}),quarter:fe({matchPatterns:fm,defaultMatchWidth:"wide",parsePatterns:mm,defaultParseWidth:"any",valueCallback:e=>e+1}),month:fe({matchPatterns:hm,defaultMatchWidth:"wide",parsePatterns:ym,defaultParseWidth:"any"}),day:fe({matchPatterns:gm,defaultMatchWidth:"wide",parsePatterns:pm,defaultParseWidth:"any"}),dayPeriod:fe({matchPatterns:bm,defaultMatchWidth:"any",parsePatterns:xm,defaultParseWidth:"any"})},wm={code:"zh-CN",formatDistance:Vf,formatLong:Qf,formatRelative:Zf,localize:im,match:km,options:{weekStartsOn:1,firstWeekContainsDate:4}},vm={lessThanXSeconds:{one:"少於 1 秒",other:"少於 {{count}} 秒"},xSeconds:{one:"1 秒",other:"{{count}} 秒"},halfAMinute:"半分鐘",lessThanXMinutes:{one:"少於 1 分鐘",other:"少於 {{count}} 分鐘"},xMinutes:{one:"1 分鐘",other:"{{count}} 分鐘"},xHours:{one:"1 小時",other:"{{count}} 小時"},aboutXHours:{one:"大約 1 小時",other:"大約 {{count}} 小時"},xDays:{one:"1 天",other:"{{count}} 天"},aboutXWeeks:{one:"大約 1 個星期",other:"大約 {{count}} 個星期"},xWeeks:{one:"1 個星期",other:"{{count}} 個星期"},aboutXMonths:{one:"大約 1 個月",other:"大約 {{count}} 個月"},xMonths:{one:"1 個月",other:"{{count}} 個月"},aboutXYears:{one:"大約 1 年",other:"大約 {{count}} 年"},xYears:{one:"1 年",other:"{{count}} 年"},overXYears:{one:"超過 1 年",other:"超過 {{count}} 年"},almostXYears:{one:"將近 1 年",other:"將近 {{count}} 年"}},_m=(e,t,n)=>{let r;const a=vm[e];return typeof a=="string"?r=a:t===1?r=a.one:r=a.other.replace("{{count}}",String(t)),n?.addSuffix?n.comparison&&n.comparison>0?r+"內":r+"前":r},Nm={full:"y'年'M'月'd'日' EEEE",long:"y'年'M'月'd'日'",medium:"yyyy-MM-dd",short:"yy-MM-dd"},Sm={full:"zzzz a h:mm:ss",long:"z a h:mm:ss",medium:"a h:mm:ss",short:"a h:mm"},Mm={full:"{{date}} {{time}}",long:"{{date}} {{time}}",medium:"{{date}} {{time}}",short:"{{date}} {{time}}"},jm={date:Ce({formats:Nm,defaultWidth:"full"}),time:Ce({formats:Sm,defaultWidth:"full"}),dateTime:Ce({formats:Mm,defaultWidth:"full"})},Dm={lastWeek:"'上個'eeee p",yesterday:"'昨天' p",today:"'今天' p",tomorrow:"'明天' p",nextWeek:"'下個'eeee p",other:"P"},Cm=(e,t,n,r)=>Dm[e],Tm={narrow:["前","公元"],abbreviated:["前","公元"],wide:["公元前","公元"]},Pm={narrow:["1","2","3","4"],abbreviated:["第一刻","第二刻","第三刻","第四刻"],wide:["第一刻鐘","第二刻鐘","第三刻鐘","第四刻鐘"]},Om={narrow:["一","二","三","四","五","六","七","八","九","十","十一","十二"],abbreviated:["1月","2月","3月","4月","5月","6月","7月","8月","9月","10月","11月","12月"],wide:["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月"]},Wm={narrow:["日","一","二","三","四","五","六"],short:["日","一","二","三","四","五","六"],abbreviated:["週日","週一","週二","週三","週四","週五","週六"],wide:["星期日","星期一","星期二","星期三","星期四","星期五","星期六"]},Am={narrow:{am:"上",pm:"下",midnight:"凌晨",noon:"午",morning:"早",afternoon:"下午",evening:"晚",night:"夜"},abbreviated:{am:"上午",pm:"下午",midnight:"凌晨",noon:"中午",morning:"早晨",afternoon:"中午",evening:"晚上",night:"夜間"},wide:{am:"上午",pm:"下午",midnight:"凌晨",noon:"中午",morning:"早晨",afternoon:"中午",evening:"晚上",night:"夜間"}},Fm={narrow:{am:"上",pm:"下",midnight:"凌晨",noon:"午",morning:"早",afternoon:"下午",evening:"晚",night:"夜"},abbreviated:{am:"上午",pm:"下午",midnight:"凌晨",noon:"中午",morning:"早晨",afternoon:"中午",evening:"晚上",night:"夜間"},wide:{am:"上午",pm:"下午",midnight:"凌晨",noon:"中午",morning:"早晨",afternoon:"中午",evening:"晚上",night:"夜間"}},Em=(e,t)=>{const n=Number(e);switch(t?.unit){case"date":return n+"日";case"hour":return n+"時";case"minute":return n+"分";case"second":return n+"秒";default:return"第 "+n}},$m={ordinalNumber:Em,era:ue({values:Tm,defaultWidth:"wide"}),quarter:ue({values:Pm,defaultWidth:"wide",argumentCallback:e=>e-1}),month:ue({values:Om,defaultWidth:"wide"}),day:ue({values:Wm,defaultWidth:"wide"}),dayPeriod:ue({values:Am,defaultWidth:"wide",formattingValues:Fm,defaultFormattingWidth:"wide"})},Im=/^(第\s*)?\d+(日|時|分|秒)?/i,Rm=/\d+/i,Lm={narrow:/^(前)/i,abbreviated:/^(前)/i,wide:/^(公元前|公元)/i},Bm={any:[/^(前)/i,/^(公元)/i]},Ym={narrow:/^[1234]/i,abbreviated:/^第[一二三四]刻/i,wide:/^第[一二三四]刻鐘/i},zm={any:[/(1|一)/i,/(2|二)/i,/(3|三)/i,/(4|四)/i]},Hm={narrow:/^(一|二|三|四|五|六|七|八|九|十[二一])/i,abbreviated:/^(一|二|三|四|五|六|七|八|九|十[二一]|\d|1[12])月/i,wide:/^(一|二|三|四|五|六|七|八|九|十[二一])月/i},Um={narrow:[/^一/i,/^二/i,/^三/i,/^四/i,/^五/i,/^六/i,/^七/i,/^八/i,/^九/i,/^十(?!(一|二))/i,/^十一/i,/^十二/i],any:[/^一|1/i,/^二|2/i,/^三|3/i,/^四|4/i,/^五|5/i,/^六|6/i,/^七|7/i,/^八|8/i,/^九|9/i,/^十(?!(一|二))|10/i,/^十一|11/i,/^十二|12/i]},qm={narrow:/^[一二三四五六日]/i,short:/^[一二三四五六日]/i,abbreviated:/^週[一二三四五六日]/i,wide:/^星期[一二三四五六日]/i},Vm={any:[/日/i,/一/i,/二/i,/三/i,/四/i,/五/i,/六/i]},Km={any:/^(上午?|下午?|午夜|[中正]午|早上?|下午|晚上?|凌晨)/i},Gm={any:{am:/^上午?/i,pm:/^下午?/i,midnight:/^午夜/i,noon:/^[中正]午/i,morning:/^早上/i,afternoon:/^下午/i,evening:/^晚上?/i,night:/^凌晨/i}},Xm={ordinalNumber:xn({matchPattern:Im,parsePattern:Rm,valueCallback:e=>parseInt(e,10)}),era:fe({matchPatterns:Lm,defaultMatchWidth:"wide",parsePatterns:Bm,defaultParseWidth:"any"}),quarter:fe({matchPatterns:Ym,defaultMatchWidth:"wide",parsePatterns:zm,defaultParseWidth:"any",valueCallback:e=>e+1}),month:fe({matchPatterns:Hm,defaultMatchWidth:"wide",parsePatterns:Um,defaultParseWidth:"any"}),day:fe({matchPatterns:qm,defaultMatchWidth:"wide",parsePatterns:Vm,defaultParseWidth:"any"}),dayPeriod:fe({matchPatterns:Km,defaultMatchWidth:"any",parsePatterns:Gm,defaultParseWidth:"any"})},Qm={code:"zh-TW",formatDistance:_m,formatLong:jm,formatRelative:Cm,localize:$m,match:Xm,options:{weekStartsOn:1,firstWeekContainsDate:4}},Jo={...yt,labels:{labelDayButton:(e,t,n,r)=>{let a;r&&typeof r.format=="function"?a=r.format.bind(r):a=(l,i)=>Qe(l,i,{locale:yt,...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)=>Qe(a,o,{locale:yt,...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)=>Qe(l,i,{locale:yt,...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)=>Qe(a,o,{locale:yt,...t}),r(e,"cccc")}}};class Ae{constructor(t,n){this.Date=Date,this.today=()=>this.overrides?.today?this.overrides.today():this.options.timeZone?Me.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 Me(r,a,o,this.options.timeZone):new Date(r,a,o),this.addDays=(r,a)=>this.overrides?.addDays?this.overrides.addDays(r,a):Bo(r,a),this.addMonths=(r,a)=>this.overrides?.addMonths?this.overrides.addMonths(r,a):Yo(r,a),this.addWeeks=(r,a)=>this.overrides?.addWeeks?this.overrides.addWeeks(r,a):kd(r,a),this.addYears=(r,a)=>this.overrides?.addYears?this.overrides.addYears(r,a):wd(r,a),this.differenceInCalendarDays=(r,a)=>this.overrides?.differenceInCalendarDays?this.overrides.differenceInCalendarDays(r,a):$r(r,a),this.differenceInCalendarMonths=(r,a)=>this.overrides?.differenceInCalendarMonths?this.overrides.differenceInCalendarMonths(r,a):Uo(r,a),this.eachMonthOfInterval=r=>this.overrides?.eachMonthOfInterval?this.overrides.eachMonthOfInterval(r):jd(r),this.eachYearOfInterval=r=>{const a=this.overrides?.eachYearOfInterval?this.overrides.eachYearOfInterval(r):Td(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):Iu(r,this),this.endOfISOWeek=r=>this.overrides?.endOfISOWeek?this.overrides.endOfISOWeek(r):Pd(r),this.endOfMonth=r=>this.overrides?.endOfMonth?this.overrides.endOfMonth(r):Md(r),this.endOfWeek=(r,a)=>this.overrides?.endOfWeek?this.overrides.endOfWeek(r,a):Ko(r,this.options),this.endOfYear=r=>this.overrides?.endOfYear?this.overrides.endOfYear(r):Cd(r),this.format=(r,a,o)=>{const l=this.overrides?.format?this.overrides.format(r,a,this.options):Qe(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):Ir(r),this.getMonth=(r,a)=>this.overrides?.getMonth?this.overrides.getMonth(r,this.options):ju(r,this.options),this.getYear=(r,a)=>this.overrides?.getYear?this.overrides.getYear(r,this.options):Du(r,this.options),this.getWeek=(r,a)=>this.overrides?.getWeek?this.overrides.getWeek(r,this.options):Rr(r,this.options),this.isAfter=(r,a)=>this.overrides?.isAfter?this.overrides.isAfter(r,a):Cu(r,a),this.isBefore=(r,a)=>this.overrides?.isBefore?this.overrides.isBefore(r,a):Tu(r,a),this.isDate=r=>this.overrides?.isDate?this.overrides.isDate(r):Ho(r),this.isSameDay=(r,a)=>this.overrides?.isSameDay?this.overrides.isSameDay(r,a):Nd(r,a),this.isSameMonth=(r,a)=>this.overrides?.isSameMonth?this.overrides.isSameMonth(r,a):Ou(r,a),this.isSameYear=(r,a)=>this.overrides?.isSameYear?this.overrides.isSameYear(r,a):Wu(r,a),this.max=r=>this.overrides?.max?this.overrides.max(r):vd(r),this.min=r=>this.overrides?.min?this.overrides.min(r):_d(r),this.setMonth=(r,a)=>this.overrides?.setMonth?this.overrides.setMonth(r,a):Au(r,a),this.setYear=(r,a)=>this.overrides?.setYear?this.overrides.setYear(r,a):Fu(r,a),this.startOfBroadcastWeek=(r,a)=>this.overrides?.startOfBroadcastWeek?this.overrides.startOfBroadcastWeek(r,this):Qo(r,this),this.startOfDay=r=>this.overrides?.startOfDay?this.overrides.startOfDay(r):yn(r),this.startOfISOWeek=r=>this.overrides?.startOfISOWeek?this.overrides.startOfISOWeek(r):hn(r),this.startOfMonth=r=>this.overrides?.startOfMonth?this.overrides.startOfMonth(r):Dd(r),this.startOfWeek=(r,a)=>this.overrides?.startOfWeek?this.overrides.startOfWeek(r,this.options):gt(r,this.options),this.startOfYear=r=>this.overrides?.startOfYear?this.overrides.startOfYear(r):Vo(r),this.options={locale:Jo,...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&&Ae.yearFirstLocales.has(t)?"year-first":"month-first"}formatMonthYear(t){const{locale:n,timeZone:r,numerals:a}=this.options,o=n?.code;if(o&&Ae.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)}}Ae.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 Ae;class Zo{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 Jm{constructor(t,n){this.date=t,this.weeks=n}}class Zm{constructor(t,n){this.days=n,this.weekNumber=t}}function eh(e){return A.createElement("button",{...e})}function th(e){return A.createElement("span",{...e})}function nh(e){const{size:t=24,orientation:n="left",className:r}=e;return A.createElement("svg",{className:r,width:t,height:t,viewBox:"0 0 24 24"},n==="up"&&A.createElement("polygon",{points:"6.77 17 12.5 11.43 18.24 17 20 15.28 12.5 8 5 15.28"}),n==="down"&&A.createElement("polygon",{points:"6.77 8 12.5 13.57 18.24 8 20 9.72 12.5 17 5 9.72"}),n==="left"&&A.createElement("polygon",{points:"16 18.112 9.81111111 12 16 5.87733333 14.0888889 4 6 12 14.0888889 20"}),n==="right"&&A.createElement("polygon",{points:"8 18.112 14.18888889 12 8 5.87733333 9.91111111 4 18 12 9.91111111 20"}))}function rh(e){const{day:t,modifiers:n,...r}=e;return A.createElement("td",{...r})}function ah(e){const{day:t,modifiers:n,...r}=e,a=A.useRef(null);return A.useEffect(()=>{n.focused&&a.current?.focus()},[n.focused]),A.createElement("button",{ref:a,...r})}var V;(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"})(V||(V={}));var me;(function(e){e.disabled="disabled",e.hidden="hidden",e.outside="outside",e.focused="focused",e.today="today"})(me||(me={}));var He;(function(e){e.range_end="range_end",e.range_middle="range_middle",e.range_start="range_start",e.selected="selected"})(He||(He={}));var We;(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"})(We||(We={}));function oh(e){const{options:t,className:n,components:r,classNames:a,...o}=e,l=[a[V.Dropdown],n].join(" "),i=t?.find(({value:c})=>c===o.value);return A.createElement("span",{"data-disabled":o.disabled,className:a[V.DropdownRoot]},A.createElement(r.Select,{className:l,...o},t?.map(({value:c,label:u,disabled:d})=>A.createElement(r.Option,{key:c,value:c,disabled:d},u))),A.createElement("span",{className:a[V.CaptionLabel],"aria-hidden":!0},i?.label,A.createElement(r.Chevron,{orientation:"down",size:18,className:a[V.Chevron]})))}function sh(e){return A.createElement("div",{...e})}function ih(e){return A.createElement("div",{...e})}function lh(e){const{calendarMonth:t,displayIndex:n,...r}=e;return A.createElement("div",{...r},e.children)}function ch(e){const{calendarMonth:t,displayIndex:n,...r}=e;return A.createElement("div",{...r})}function dh(e){return A.createElement("table",{...e})}function uh(e){return A.createElement("div",{...e})}const es=m.createContext(void 0);function kn(){const e=m.useContext(es);if(e===void 0)throw new Error("useDayPicker() must be used within a custom component.");return e}function fh(e){const{components:t}=kn();return A.createElement(t.Dropdown,{...e})}function mh(e){const{onPreviousClick:t,onNextClick:n,previousMonth:r,nextMonth:a,...o}=e,{components:l,classNames:i,labels:{labelPrevious:c,labelNext:u}}=kn(),d=m.useCallback(h=>{a&&n?.(h)},[a,n]),f=m.useCallback(h=>{r&&t?.(h)},[r,t]);return A.createElement("nav",{...o},A.createElement(l.PreviousMonthButton,{type:"button",className:i[V.PreviousMonthButton],tabIndex:r?void 0:-1,"aria-disabled":r?void 0:!0,"aria-label":c(r),onClick:f},A.createElement(l.Chevron,{disabled:r?void 0:!0,className:i[V.Chevron],orientation:"left"})),A.createElement(l.NextMonthButton,{type:"button",className:i[V.NextMonthButton],tabIndex:a?void 0:-1,"aria-disabled":a?void 0:!0,"aria-label":u(a),onClick:d},A.createElement(l.Chevron,{disabled:a?void 0:!0,orientation:"right",className:i[V.Chevron]})))}function hh(e){const{components:t}=kn();return A.createElement(t.Button,{...e})}function yh(e){return A.createElement("option",{...e})}function gh(e){const{components:t}=kn();return A.createElement(t.Button,{...e})}function ph(e){const{rootRef:t,...n}=e;return A.createElement("div",{...n,ref:t})}function bh(e){return A.createElement("select",{...e})}function xh(e){const{week:t,...n}=e;return A.createElement("tr",{...n})}function kh(e){return A.createElement("th",{...e})}function wh(e){return A.createElement("thead",{"aria-hidden":!0},A.createElement("tr",{...e}))}function vh(e){const{week:t,...n}=e;return A.createElement("th",{...n})}function _h(e){return A.createElement("th",{...e})}function Nh(e){return A.createElement("tbody",{...e})}function Sh(e){const{components:t}=kn();return A.createElement(t.Dropdown,{...e})}const Mh=Object.freeze(Object.defineProperty({__proto__:null,Button:eh,CaptionLabel:th,Chevron:nh,Day:rh,DayButton:ah,Dropdown:oh,DropdownNav:sh,Footer:ih,Month:lh,MonthCaption:ch,MonthGrid:dh,Months:uh,MonthsDropdown:fh,Nav:mh,NextMonthButton:hh,Option:yh,PreviousMonthButton:gh,Root:ph,Select:bh,Week:xh,WeekNumber:vh,WeekNumberHeader:_h,Weekday:kh,Weekdays:wh,Weeks:Nh,YearsDropdown:Sh},Symbol.toStringTag,{value:"Module"}));function at(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 Lr(e){return!!(e&&typeof e=="object"&&"before"in e&&"after"in e)}function Hn(e){return!!(e&&typeof e=="object"&&"from"in e)}function Br(e){return!!(e&&typeof e=="object"&&"after"in e)}function Yr(e){return!!(e&&typeof e=="object"&&"before"in e)}function ts(e){return!!(e&&typeof e=="object"&&"dayOfWeek"in e)}function ns(e,t){return Array.isArray(e)&&e.every(t.isDate)}function ot(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(ns(i,n))return i.some(c=>a(e,c));if(Hn(i))return at(i,e,!1,n);if(ts(i))return Array.isArray(i.dayOfWeek)?i.dayOfWeek.includes(e.getDay()):i.dayOfWeek===e.getDay();if(Lr(i)){const c=o(i.before,e),u=o(i.after,e),d=c>0,f=u<0;return l(i.before,i.after)?f&&d:d||f}return Br(i)?o(e,i.after)>0:Yr(i)?o(i.before,e)>0:typeof i=="function"?i(e):!1})}function jh(e,t,n,r,a){const{disabled:o,hidden:l,modifiers:i,showOutsideDays:c,broadcastCalendar:u,today:d=a.today()}=t,{isSameDay:f,isSameMonth:h,startOfMonth:y,isBefore:p,endOfMonth:b,isAfter:k}=a,v=n&&y(n),w=r&&b(r),x={[me.focused]:[],[me.outside]:[],[me.disabled]:[],[me.hidden]:[],[me.today]:[]},M={};for(const T of e){const{date:D,displayMonth:E}=T,N=!!(E&&!h(D,E)),O=!!(v&&p(D,v)),j=!!(w&&k(D,w)),W=!!(o&&ot(D,o,a)),K=!!(l&&ot(D,l,a))||O||j||!u&&!c&&N||u&&c===!1&&N,$=f(D,d);N&&x.outside.push(T),W&&x.disabled.push(T),K&&x.hidden.push(T),$&&x.today.push(T),i&&Object.keys(i).forEach(F=>{const C=i?.[F];C&&ot(D,C,a)&&(M[F]?M[F].push(T):M[F]=[T])})}return T=>{const D={[me.focused]:!1,[me.disabled]:!1,[me.hidden]:!1,[me.outside]:!1,[me.today]:!1},E={};for(const N in x){const O=x[N];D[N]=O.some(j=>j===T)}for(const N in M)E[N]=M[N].some(O=>O===T);return{...D,...E}}}function Dh(e,t,n={}){return Object.entries(e).filter(([,a])=>a===!0).reduce((a,[o])=>(n[o]?a.push(n[o]):t[me[o]]?a.push(t[me[o]]):t[He[o]]&&a.push(t[He[o]]),a),[t[V.Day]])}function Ch(e){return{...Mh,...e}}function Th(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 Ph(){const e={};for(const t in V)e[V[t]]=`rdp-${V[t]}`;for(const t in me)e[me[t]]=`rdp-${me[t]}`;for(const t in He)e[He[t]]=`rdp-${He[t]}`;for(const t in We)e[We[t]]=`rdp-${We[t]}`;return e}function rs(e,t,n){return(n??new Ae(t)).formatMonthYear(e)}const Oh=rs;function Wh(e,t,n){return(n??new Ae(t)).format(e,"d")}function Ah(e,t=Ze){return t.format(e,"LLLL")}function Fh(e,t,n){return(n??new Ae(t)).format(e,"cccccc")}function Eh(e,t=Ze){return e<10?t.formatNumber(`0${e.toLocaleString()}`):t.formatNumber(`${e.toLocaleString()}`)}function $h(){return""}function as(e,t=Ze){return t.format(e,"yyyy")}const Ih=as,Rh=Object.freeze(Object.defineProperty({__proto__:null,formatCaption:rs,formatDay:Wh,formatMonthCaption:Oh,formatMonthDropdown:Ah,formatWeekNumber:Eh,formatWeekNumberHeader:$h,formatWeekdayName:Fh,formatYearCaption:Ih,formatYearDropdown:as},Symbol.toStringTag,{value:"Module"}));function Lh(e){return e?.formatMonthCaption&&!e.formatCaption&&(e.formatCaption=e.formatMonthCaption),e?.formatYearCaption&&!e.formatYearDropdown&&(e.formatYearDropdown=e.formatYearCaption),{...Rh,...e}}function zr(e,t,n,r){let a=(r??new Ae(n)).format(e,"PPPP");return t.today&&(a=`Today, ${a}`),t.selected&&(a=`${a}, selected`),a}const Bh=zr;function Hr(e,t,n){return(n??new Ae(t)).formatMonthYear(e)}const Yh=Hr;function os(e,t,n,r){let a=(r??new Ae(n)).format(e,"PPPP");return t?.today&&(a=`Today, ${a}`),a}function ss(e){return"Choose the Month"}function is(){return""}const zh="Go to the Next Month";function ls(e,t){return zh}function cs(e){return"Go to the Previous Month"}function ds(e,t,n){return(n??new Ae(t)).format(e,"cccc")}function us(e,t){return`Week ${e}`}function fs(e){return"Week Number"}function ms(e){return"Choose the Year"}const Hh=Object.freeze(Object.defineProperty({__proto__:null,labelCaption:Yh,labelDay:Bh,labelDayButton:zr,labelGrid:Hr,labelGridcell:os,labelMonthDropdown:ss,labelNav:is,labelNext:ls,labelPrevious:cs,labelWeekNumber:us,labelWeekNumberHeader:fs,labelWeekday:ds,labelYearDropdown:ms},Symbol.toStringTag,{value:"Module"})),ze=(e,t,n)=>t||(n?typeof n=="function"?n:(...r)=>n:e);function Uh(e,t){const n=t.locale?.labels??{};return{...Hh,...e??{},labelDayButton:ze(zr,e?.labelDayButton,n.labelDayButton),labelMonthDropdown:ze(ss,e?.labelMonthDropdown,n.labelMonthDropdown),labelNext:ze(ls,e?.labelNext,n.labelNext),labelPrevious:ze(cs,e?.labelPrevious,n.labelPrevious),labelWeekNumber:ze(us,e?.labelWeekNumber,n.labelWeekNumber),labelYearDropdown:ze(ms,e?.labelYearDropdown,n.labelYearDropdown),labelGrid:ze(Hr,e?.labelGrid,n.labelGrid),labelGridcell:ze(os,e?.labelGridcell,n.labelGridcell),labelNav:ze(is,e?.labelNav,n.labelNav),labelWeekNumberHeader:ze(fs,e?.labelWeekNumberHeader,n.labelWeekNumberHeader),labelWeekday:ze(ds,e?.labelWeekday,n.labelWeekday)}}function qh(e,t,n,r,a){const{startOfMonth:o,startOfYear:l,endOfYear:i,eachMonthOfInterval:c,getMonth:u}=a;return c({start:l(e),end:i(e)}).map(h=>{const y=r.formatMonthDropdown(h,a),p=u(h),b=t&&h<o(t)||n&&h>o(n)||!1;return{value:p,label:y,disabled:b}})}function Vh(e,t={},n={}){let r={...t?.[V.Day]};return Object.entries(e).filter(([,a])=>a===!0).forEach(([a])=>{r={...r,...n?.[a]}}),r}function Kh(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 Gh(e,t,n,r,a=!1){if(!e||!t)return;const{startOfYear:o,endOfYear:l,eachYearOfInterval:i,getYear:c}=r,u=o(e),d=l(t),f=i({start:u,end:d});return a&&f.reverse(),f.map(h=>{const y=n.formatYearDropdown(h,r);return{value:c(h),label:y,disabled:!1}})}function Xh(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 Me(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(Me.tz(e)),newDate:(i,c,u)=>new Me(i,c,u,12,0,0,e),startOfDay:i=>o(i),startOfWeek:(i,c)=>{const u=o(i),d=c?.weekStartsOn??a,f=(u.getDay()-d+7)%7;return u.setDate(u.getDate()-f),u},startOfISOWeek:i=>{const c=o(i),u=(c.getDay()-1+7)%7;return c.setDate(c.getDate()-u),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 u=o(i),h=(((c?.weekStartsOn??a)+6)%7-u.getDay()+7)%7;return u.setDate(u.getDate()+h),u},endOfISOWeek:i=>{const c=o(i),u=(7-c.getDay())%7;return c.setDate(c.getDate()+u),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),u=o(i.end),d=[],f=new Me(c.getFullYear(),c.getMonth(),1,12,0,0,e),h=u.getFullYear()*12+u.getMonth();for(;f.getFullYear()*12+f.getMonth()<=h;)d.push(new Me(f,e)),f.setMonth(f.getMonth()+1,1);return d},addDays:(i,c)=>{const u=o(i);return u.setDate(u.getDate()+c),u},addWeeks:(i,c)=>{const u=o(i);return u.setDate(u.getDate()+c*7),u},addMonths:(i,c)=>{const u=o(i);return u.setMonth(u.getMonth()+c),u},addYears:(i,c)=>{const u=o(i);return u.setFullYear(u.getFullYear()+c),u},eachYearOfInterval:i=>{const c=o(i.start),u=o(i.end),d=[],f=new Me(c.getFullYear(),0,1,12,0,0,e);for(;f.getFullYear()<=u.getFullYear();)d.push(new Me(f,e)),f.setFullYear(f.getFullYear()+1,0,1);return d},getWeek:(i,c)=>{const u=l(i);return Rr(u,{weekStartsOn:c?.weekStartsOn??a,firstWeekContainsDate:c?.firstWeekContainsDate??r?.options?.firstWeekContainsDate??1})},getISOWeek:i=>{const c=l(i);return Ir(c)},differenceInCalendarDays:(i,c)=>{const u=l(i),d=l(c);return $r(u,d)},differenceInCalendarMonths:(i,c)=>{const u=l(i),d=l(c);return Uo(u,d)}}}const wn=e=>e instanceof HTMLElement?e:null,lr=e=>[...e.querySelectorAll("[data-animated-month]")??[]],Qh=e=>wn(e.querySelector("[data-animated-month]")),cr=e=>wn(e.querySelector("[data-animated-caption]")),dr=e=>wn(e.querySelector("[data-animated-weeks]")),Jh=e=>wn(e.querySelector("[data-animated-nav]")),Zh=e=>wn(e.querySelector("[data-animated-weekdays]"));function ey(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 u=i.current;if(i.current=r,!t||!e.current||!(e.current instanceof HTMLElement)||r.length===0||u.length===0||r.length!==u.length)return;const d=o.isSameMonth(r[0].date,u[0].date),f=o.isAfter(r[0].date,u[0].date),h=f?n[We.caption_after_enter]:n[We.caption_before_enter],y=f?n[We.weeks_after_enter]:n[We.weeks_before_enter],p=l.current,b=e.current.cloneNode(!0);if(b instanceof HTMLElement?(lr(b).forEach(x=>{if(!(x instanceof HTMLElement))return;const M=Qh(x);M&&x.contains(M)&&x.removeChild(M);const T=cr(x);T&&T.classList.remove(h);const D=dr(x);D&&D.classList.remove(y)}),l.current=b):l.current=null,c.current||d||a)return;const k=p instanceof HTMLElement?lr(p):[],v=lr(e.current);if(v?.every(w=>w instanceof HTMLElement)&&k&&k.every(w=>w instanceof HTMLElement)){c.current=!0,e.current.style.isolation="isolate";const w=Jh(e.current);w&&(w.style.zIndex="1"),v.forEach((x,M)=>{const T=k[M];if(!T)return;x.style.position="relative",x.style.overflow="hidden";const D=cr(x);D&&D.classList.add(h);const E=dr(x);E&&E.classList.add(y);const N=()=>{c.current=!1,e.current&&(e.current.style.isolation=""),w&&(w.style.zIndex=""),D&&D.classList.remove(h),E&&E.classList.remove(y),x.style.position="",x.style.overflow="",x.contains(T)&&x.removeChild(T)};T.style.pointerEvents="none",T.style.position="absolute",T.style.overflow="hidden",T.setAttribute("aria-hidden","true");const O=Zh(T);O&&(O.style.opacity="0");const j=cr(T);j&&(j.classList.add(f?n[We.caption_before_exit]:n[We.caption_after_exit]),j.addEventListener("animationend",N));const W=dr(T);W&&W.classList.add(f?n[We.weeks_before_exit]:n[We.weeks_after_exit]),x.insertBefore(T,x.firstChild)})}})}function ty(e,t,n,r){const a=e[0],o=e[e.length-1],{ISOWeek:l,fixedWeeks:i,broadcastCalendar:c}=n??{},{addDays:u,differenceInCalendarDays:d,differenceInCalendarMonths:f,endOfBroadcastWeek:h,endOfISOWeek:y,endOfMonth:p,endOfWeek:b,isAfter:k,startOfBroadcastWeek:v,startOfISOWeek:w,startOfWeek:x}=r,M=c?v(a,r):l?w(a):x(a),T=c?h(o):l?y(p(o)):b(p(o)),D=t&&(c?h(t):l?y(t):b(t)),E=D&&k(T,D)?D:T,N=d(E,M),O=f(o,a)+1,j=[];for(let $=0;$<=N;$++){const F=u(M,$);j.push(F)}const K=(c?35:42)*O;if(i&&j.length<K){const $=K-j.length;for(let F=0;F<$;F++){const C=u(j[j.length-1],1);j.push(C)}}return j}function ny(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 ry(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 Ba(e,t,n,r){const{month:a,defaultMonth:o,today:l=r.today(),numberOfMonths:i=1}=e;let c=a||o||l;const{differenceInCalendarMonths:u,addMonths:d,startOfMonth:f}=r;if(n&&u(n,c)<i-1){const h=-1*(i-1);c=d(n,h)}return t&&u(c,t)<0&&(c=t),f(c)}function ay(e,t,n,r){const{addDays:a,endOfBroadcastWeek:o,endOfISOWeek:l,endOfMonth:i,endOfWeek:c,getISOWeek:u,getWeek:d,startOfBroadcastWeek:f,startOfISOWeek:h,startOfWeek:y}=r,p=e.reduce((b,k)=>{const v=n.broadcastCalendar?f(k,r):n.ISOWeek?h(k):y(k),w=n.broadcastCalendar?o(k):n.ISOWeek?l(i(k)):c(i(k)),x=t.filter(E=>E>=v&&E<=w),M=n.broadcastCalendar?35:42;if(n.fixedWeeks&&x.length<M){const E=t.filter(N=>{const O=M-x.length;return N>w&&N<=a(w,O)});x.push(...E)}const T=x.reduce((E,N)=>{const O=n.ISOWeek?u(N):d(N),j=E.find(K=>K.weekNumber===O),W=new Zo(N,k,r);return j?j.days.push(W):E.push(new Zm(O,[W])),E},[]),D=new Jm(k,T);return b.push(D),b},[]);return n.reverseMonths?p.reverse():p}function oy(e,t){let{startMonth:n,endMonth:r}=e;const{startOfYear:a,startOfDay:o,startOfMonth:l,endOfMonth:i,addYears:c,endOfYear:u,newDate:d,today:f}=t,{fromYear:h,toYear:y,fromMonth:p,toMonth:b}=e;!n&&p&&(n=p),!n&&h&&(n=t.newDate(h,0,1)),!r&&b&&(r=b),!r&&y&&(r=d(y,11,31));const k=e.captionLayout==="dropdown"||e.captionLayout==="dropdown-years";return n?n=l(n):h?n=d(h,0,1):!n&&k&&(n=a(c(e.today??f(),-100))),r?r=i(r):y?r=d(y,11,31):!r&&k&&(r=u(e.today??f())),[n&&o(n),r&&o(r)]}function sy(e,t,n,r){if(n.disableNavigation)return;const{pagedNavigation:a,numberOfMonths:o=1}=n,{startOfMonth:l,addMonths:i,differenceInCalendarMonths:c}=r,u=a?o:1,d=l(e);if(!t)return i(d,u);if(!(c(t,e)<o))return i(d,u)}function iy(e,t,n,r){if(n.disableNavigation)return;const{pagedNavigation:a,numberOfMonths:o}=n,{startOfMonth:l,addMonths:i,differenceInCalendarMonths:c}=r,u=a?o??1:1,d=l(e);if(!t)return i(d,-u);if(!(c(d,t)<=0))return i(d,-u)}function ly(e){const t=[];return e.reduce((n,r)=>n.concat(r.weeks.slice()),t.slice())}function Un(e,t){const[n,r]=m.useState(e);return[t===void 0?n:t,r]}function cy(e,t){const[n,r]=oy(e,t),{startOfMonth:a,endOfMonth:o}=t,l=Ba(e,n,r,t),[i,c]=Un(l,e.month?l:void 0);m.useEffect(()=>{const M=Ba(e,n,r,t);c(M)},[e.timeZone]);const{months:u,weeks:d,days:f,previousMonth:h,nextMonth:y}=m.useMemo(()=>{const M=ry(i,r,{numberOfMonths:e.numberOfMonths},t),T=ty(M,e.endMonth?o(e.endMonth):void 0,{ISOWeek:e.ISOWeek,fixedWeeks:e.fixedWeeks,broadcastCalendar:e.broadcastCalendar},t),D=ay(M,T,{broadcastCalendar:e.broadcastCalendar,fixedWeeks:e.fixedWeeks,ISOWeek:e.ISOWeek,reverseMonths:e.reverseMonths},t),E=ly(D),N=ny(D),O=iy(i,n,e,t),j=sy(i,r,e,t);return{months:D,weeks:E,days:N,previousMonth:O,nextMonth:j}},[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:p,onMonthChange:b}=e,k=M=>d.some(T=>T.days.some(D=>D.isEqualTo(M))),v=M=>{if(p)return;let T=a(M);n&&T<a(n)&&(T=a(n)),r&&T>a(r)&&(T=a(r)),c(T),b?.(T)};return{months:u,weeks:d,days:f,navStart:n,navEnd:r,previousMonth:h,nextMonth:y,goToMonth:v,goToDay:M=>{k(M)||v(M.date)}}}var Ke;(function(e){e[e.Today=0]="Today",e[e.Selected=1]="Selected",e[e.LastFocused=2]="LastFocused",e[e.FocusedModifier=3]="FocusedModifier"})(Ke||(Ke={}));function Ya(e){return!e[me.disabled]&&!e[me.hidden]&&!e[me.outside]}function dy(e,t,n,r){let a,o=-1;for(const l of e){const i=t(l);Ya(i)&&(i[me.focused]&&o<Ke.FocusedModifier?(a=l,o=Ke.FocusedModifier):r?.isEqualTo(l)&&o<Ke.LastFocused?(a=l,o=Ke.LastFocused):n(l.date)&&o<Ke.Selected?(a=l,o=Ke.Selected):i[me.today]&&o<Ke.Today&&(a=l,o=Ke.Today))}return a||(a=e.find(l=>Ya(t(l)))),a}function uy(e,t,n,r,a,o,l){const{ISOWeek:i,broadcastCalendar:c}=o,{addDays:u,addMonths:d,addWeeks:f,addYears:h,endOfBroadcastWeek:y,endOfISOWeek:p,endOfWeek:b,max:k,min:v,startOfBroadcastWeek:w,startOfISOWeek:x,startOfWeek:M}=l;let D={day:u,week:f,month:d,year:h,startOfWeek:E=>c?w(E,l):i?x(E):M(E),endOfWeek:E=>c?y(E):i?p(E):b(E)}[e](n,t==="after"?1:-1);return t==="before"&&r?D=k([r,D]):t==="after"&&a&&(D=v([a,D])),D}function hs(e,t,n,r,a,o,l,i=0){if(i>365)return;const c=uy(e,t,n.date,r,a,o,l),u=!!(o.disabled&&ot(c,o.disabled,l)),d=!!(o.hidden&&ot(c,o.hidden,l)),f=c,h=new Zo(c,f,l);return!u&&!d?h:hs(e,t,h,r,a,o,l,i+1)}function fy(e,t,n,r,a){const{autoFocus:o}=e,[l,i]=m.useState(),c=dy(t.days,n,r||(()=>!1),l),[u,d]=m.useState(o?c:void 0);return{isFocusTarget:b=>!!c?.isEqualTo(b),setFocused:d,focused:u,blur:()=>{i(u),d(void 0)},moveFocus:(b,k)=>{if(!u)return;const v=hs(b,k,u,t.navStart,t.navEnd,e,a);v&&(e.disableNavigation&&!t.days.some(x=>x.isEqualTo(v))||(t.goToDay(v),d(v)))}}}function my(e,t){const{selected:n,required:r,onSelect:a}=e,[o,l]=Un(n,a?n:void 0),i=a?n:o,{isSameDay:c}=t,u=y=>i?.some(p=>c(p,y))??!1,{min:d,max:f}=e;return{selected:i,select:(y,p,b)=>{let k=[...i??[]];if(u(y)){if(i?.length===d||r&&i?.length===1)return;k=i?.filter(v=>!c(v,y))}else i?.length===f?k=[y]:k=[...k,y];return a||l(k),a?.(k,y,p,b),k},isSelected:u}}function hy(e,t,n=0,r=0,a=!1,o=Ze){const{from:l,to:i}=t||{},{isSameDay:c,isAfter:u,isBefore:d}=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:d(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(d(e,l))f={from:e,to:i};else if(u(e,l))f={from:l,to:e};else if(u(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 yy(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 za(e,t,n=Ze){return at(e,t.from,!1,n)||at(e,t.to,!1,n)||at(t,e.from,!1,n)||at(t,e.to,!1,n)}function gy(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)?at(e,i,!1,n):ns(i,n)?i.some(c=>at(e,c,!1,n)):Hn(i)?i.from&&i.to?za(e,{from:i.from,to:i.to},n):!1:ts(i)?yy(e,i.dayOfWeek,n):Lr(i)?n.isAfter(i.before,i.after)?za(e,{from:n.addDays(i.after,1),to:n.addDays(i.before,-1)},n):ot(e.from,i,n)||ot(e.to,i,n):Br(i)||Yr(i)?ot(e.from,i,n)||ot(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 u=0;u<=c;u++){if(l.some(d=>d(i)))return!0;i=n.addDays(i,1)}}return!1}function py(e,t){const{disabled:n,excludeDisabled:r,resetOnSelect:a,selected:o,required:l,onSelect:i}=e,[c,u]=Un(o,i?o:void 0),d=i?o:c;return{selected:d,select:(y,p,b)=>{const{min:k,max:v}=e;let w;if(y){const x=d?.from,M=d?.to,T=!!x&&!!M,D=!!x&&!!M&&t.isSameDay(x,M)&&t.isSameDay(y,x);a&&(T||!d?.from)?!l&&D?w=void 0:w={from:y,to:void 0}:w=hy(y,d,k,v,l,t)}return r&&n&&w?.from&&w.to&&gy({from:w.from,to:w.to},n,t)&&(w.from=y,w.to=void 0),i||u(w),i?.(w,y,p,b),w},isSelected:y=>d&&at(d,y,!1,t)}}function by(e,t){const{selected:n,required:r,onSelect:a}=e,[o,l]=Un(n,a?n:void 0),i=a?n:o,{isSameDay:c}=t;return{selected:i,select:(f,h,y)=>{let p=f;return!r&&i&&i&&c(f,i)&&(p=void 0),a||l(p),a?.(p,f,h,y),p},isSelected:f=>i?c(i,f):!1}}function xy(e,t){const n=by(e,t),r=my(e,t),a=py(e,t);switch(e.mode){case"single":return n;case"multiple":return r;case"range":return a;default:return}}function Ie(e,t){return e instanceof Me&&e.timeZone===t?e:new Me(e,t)}function Ht(e,t,n){return Ie(e,t)}function Ha(e,t,n){return typeof e=="boolean"||typeof e=="function"?e:e instanceof Date?Ht(e,t):Array.isArray(e)?e.map(r=>r instanceof Date?Ht(r,t):r):Hn(e)?{...e,from:e.from?Ie(e.from,t):e.from,to:e.to?Ie(e.to,t):e.to}:Lr(e)?{before:Ht(e.before,t),after:Ht(e.after,t)}:Br(e)?{after:Ht(e.after,t)}:Yr(e)?{before:Ht(e.before,t)}:e}function ur(e,t,n){return e&&(Array.isArray(e)?e.map(r=>Ha(r,t)):Ha(e,t))}function ky(e){let t=e;const n=t.timeZone;if(n&&(t={...e,timeZone:n},t.today&&(t.today=Ie(t.today,n)),t.month&&(t.month=Ie(t.month,n)),t.defaultMonth&&(t.defaultMonth=Ie(t.defaultMonth,n)),t.startMonth&&(t.startMonth=Ie(t.startMonth,n)),t.endMonth&&(t.endMonth=Ie(t.endMonth,n)),t.mode==="single"&&t.selected?t.selected=Ie(t.selected,n):t.mode==="multiple"&&t.selected?t.selected=t.selected?.map(X=>Ie(X,n)):t.mode==="range"&&t.selected&&(t.selected={from:t.selected.from?Ie(t.selected.from,n):t.selected.from,to:t.selected.to?Ie(t.selected.to,n):t.selected.to}),t.disabled!==void 0&&(t.disabled=ur(t.disabled,n)),t.hidden!==void 0&&(t.hidden=ur(t.hidden,n)),t.modifiers)){const X={};Object.keys(t.modifiers).forEach(ae=>{X[ae]=ur(t.modifiers?.[ae],n)}),t.modifiers=X}const{components:r,formatters:a,labels:o,dateLib:l,locale:i,classNames:c}=m.useMemo(()=>{const X={...Jo,...t.locale},ae=t.broadcastCalendar?1:t.weekStartsOn,G=t.noonSafe&&t.timeZone?Xh(t.timeZone,{weekStartsOn:ae,locale:X}):void 0,ne=t.dateLib&&G?{...G,...t.dateLib}:t.dateLib??G,xe=new Ae({locale:X,weekStartsOn:ae,firstWeekContainsDate:t.firstWeekContainsDate,useAdditionalWeekYearTokens:t.useAdditionalWeekYearTokens,useAdditionalDayOfYearTokens:t.useAdditionalDayOfYearTokens,timeZone:t.timeZone,numerals:t.numerals},ne);return{dateLib:xe,components:Ch(t.components),formatters:Lh(t.formatters),labels:Uh(t.labels,xe.options),locale:X,classNames:{...Ph(),...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:u,mode:d,navLayout:f,numberOfMonths:h=1,onDayBlur:y,onDayClick:p,onDayFocus:b,onDayKeyDown:k,onDayMouseEnter:v,onDayMouseLeave:w,onNextClick:x,onPrevClick:M,showWeekNumber:T,styles:D}=t,{formatCaption:E,formatDay:N,formatMonthDropdown:O,formatWeekNumber:j,formatWeekNumberHeader:W,formatWeekdayName:K,formatYearDropdown:$}=a,F=cy(t,l),{days:C,months:S,navStart:R,navEnd:z,previousMonth:P,nextMonth:L,goToMonth:U}=F,ee=jh(C,t,R,z,l),{isSelected:B,select:H,selected:q}=xy(t,l)??{},{blur:te,focused:re,isFocusTarget:he,moveFocus:oe,setFocused:de}=fy(t,F,ee,B??(()=>!1),l),{labelDayButton:qe,labelGridcell:be,labelGrid:Te,labelMonthDropdown:le,labelNav:we,labelPrevious:ve,labelNext:Fe,labelWeekday:Pe,labelWeekNumber:Xt,labelWeekNumberHeader:Qt,labelYearDropdown:it}=o,Z=m.useMemo(()=>Kh(l,t.ISOWeek,t.broadcastCalendar,t.today),[l,t.ISOWeek,t.broadcastCalendar,t.today]),bt=d!==void 0||p!==void 0,_e=m.useCallback(()=>{P&&(U(P),M?.(P))},[P,U,M]),Ne=m.useCallback(()=>{L&&(U(L),x?.(L))},[U,L,x]),Et=m.useCallback((X,ae)=>G=>{G.preventDefault(),G.stopPropagation(),de(X),!ae.disabled&&(H?.(X.date,ae,G),p?.(X.date,ae,G))},[H,p,de]),xt=m.useCallback((X,ae)=>G=>{de(X),b?.(X.date,ae,G)},[b,de]),Jt=m.useCallback((X,ae)=>G=>{te(),y?.(X.date,ae,G)},[te,y]),kt=m.useCallback((X,ae)=>G=>{const ne={ArrowLeft:[G.shiftKey?"month":"day",t.dir==="rtl"?"after":"before"],ArrowRight:[G.shiftKey?"month":"day",t.dir==="rtl"?"before":"after"],ArrowDown:[G.shiftKey?"year":"week","after"],ArrowUp:[G.shiftKey?"year":"week","before"],PageUp:[G.shiftKey?"year":"month","before"],PageDown:[G.shiftKey?"year":"month","after"],Home:["startOfWeek","before"],End:["endOfWeek","after"]};if(ne[G.key]){G.preventDefault(),G.stopPropagation();const[xe,J]=ne[G.key];oe(xe,J)}k?.(X.date,ae,G)},[oe,k,t.dir]),wt=m.useCallback((X,ae)=>G=>{v?.(X.date,ae,G)},[v]),Zt=m.useCallback((X,ae)=>G=>{w?.(X.date,ae,G)},[w]),et=m.useCallback(X=>ae=>{const G=Number(ae.target.value),ne=l.setMonth(l.startOfMonth(X),G);U(ne)},[l,U]),$t=m.useCallback(X=>ae=>{const G=Number(ae.target.value),ne=l.setYear(l.startOfMonth(X),G);U(ne)},[l,U]),{className:Ee,style:Se}=m.useMemo(()=>({className:[c[V.Root],t.className].filter(Boolean).join(" "),style:{...D?.[V.Root],...t.style}}),[c,t.className,t.style,D]),tt=Th(t),vt=m.useRef(null);ey(vt,!!t.animate,{classNames:c,months:S,focused:re,dateLib:l});const _t={dayPickerProps:t,selected:q,select:H,isSelected:B,months:S,nextMonth:L,previousMonth:P,goToMonth:U,getModifiers:ee,components:r,classNames:c,styles:D,labels:o,formatters:a};return A.createElement(es.Provider,{value:_t},A.createElement(r.Root,{rootRef:t.animate?vt:void 0,className:Ee,style:Se,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"],...tt},A.createElement(r.Months,{className:c[V.Months],style:D?.[V.Months]},!t.hideNavigation&&!f&&A.createElement(r.Nav,{"data-animated-nav":t.animate?"true":void 0,className:c[V.Nav],style:D?.[V.Nav],"aria-label":we(),onPreviousClick:_e,onNextClick:Ne,previousMonth:P,nextMonth:L}),S.map((X,ae)=>A.createElement(r.Month,{"data-animated-month":t.animate?"true":void 0,className:c[V.Month],style:D?.[V.Month],key:ae,displayIndex:ae,calendarMonth:X},f==="around"&&!t.hideNavigation&&ae===0&&A.createElement(r.PreviousMonthButton,{type:"button",className:c[V.PreviousMonthButton],tabIndex:P?void 0:-1,"aria-disabled":P?void 0:!0,"aria-label":ve(P),onClick:_e,"data-animated-button":t.animate?"true":void 0},A.createElement(r.Chevron,{disabled:P?void 0:!0,className:c[V.Chevron],orientation:t.dir==="rtl"?"right":"left"})),A.createElement(r.MonthCaption,{"data-animated-caption":t.animate?"true":void 0,className:c[V.MonthCaption],style:D?.[V.MonthCaption],calendarMonth:X,displayIndex:ae},u?.startsWith("dropdown")?A.createElement(r.DropdownNav,{className:c[V.Dropdowns],style:D?.[V.Dropdowns]},(()=>{const G=u==="dropdown"||u==="dropdown-months"?A.createElement(r.MonthsDropdown,{key:"month",className:c[V.MonthsDropdown],"aria-label":le(),classNames:c,components:r,disabled:!!t.disableNavigation,onChange:et(X.date),options:qh(X.date,R,z,a,l),style:D?.[V.Dropdown],value:l.getMonth(X.date)}):A.createElement("span",{key:"month"},O(X.date,l)),ne=u==="dropdown"||u==="dropdown-years"?A.createElement(r.YearsDropdown,{key:"year",className:c[V.YearsDropdown],"aria-label":it(l.options),classNames:c,components:r,disabled:!!t.disableNavigation,onChange:$t(X.date),options:Gh(R,z,a,l,!!t.reverseYears),style:D?.[V.Dropdown],value:l.getYear(X.date)}):A.createElement("span",{key:"year"},$(X.date,l));return l.getMonthYearOrder()==="year-first"?[ne,G]:[G,ne]})(),A.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"}},E(X.date,l.options,l))):A.createElement(r.CaptionLabel,{className:c[V.CaptionLabel],role:"status","aria-live":"polite"},E(X.date,l.options,l))),f==="around"&&!t.hideNavigation&&ae===h-1&&A.createElement(r.NextMonthButton,{type:"button",className:c[V.NextMonthButton],tabIndex:L?void 0:-1,"aria-disabled":L?void 0:!0,"aria-label":Fe(L),onClick:Ne,"data-animated-button":t.animate?"true":void 0},A.createElement(r.Chevron,{disabled:L?void 0:!0,className:c[V.Chevron],orientation:t.dir==="rtl"?"left":"right"})),ae===h-1&&f==="after"&&!t.hideNavigation&&A.createElement(r.Nav,{"data-animated-nav":t.animate?"true":void 0,className:c[V.Nav],style:D?.[V.Nav],"aria-label":we(),onPreviousClick:_e,onNextClick:Ne,previousMonth:P,nextMonth:L}),A.createElement(r.MonthGrid,{role:"grid","aria-multiselectable":d==="multiple"||d==="range","aria-label":Te(X.date,l.options,l)||void 0,className:c[V.MonthGrid],style:D?.[V.MonthGrid]},!t.hideWeekdays&&A.createElement(r.Weekdays,{"data-animated-weekdays":t.animate?"true":void 0,className:c[V.Weekdays],style:D?.[V.Weekdays]},T&&A.createElement(r.WeekNumberHeader,{"aria-label":Qt(l.options),className:c[V.WeekNumberHeader],style:D?.[V.WeekNumberHeader],scope:"col"},W()),Z.map(G=>A.createElement(r.Weekday,{"aria-label":Pe(G,l.options,l),className:c[V.Weekday],key:String(G),style:D?.[V.Weekday],scope:"col"},K(G,l.options,l)))),A.createElement(r.Weeks,{"data-animated-weeks":t.animate?"true":void 0,className:c[V.Weeks],style:D?.[V.Weeks]},X.weeks.map(G=>A.createElement(r.Week,{className:c[V.Week],key:G.weekNumber,style:D?.[V.Week],week:G},T&&A.createElement(r.WeekNumber,{week:G,style:D?.[V.WeekNumber],"aria-label":Xt(G.weekNumber,{locale:i}),className:c[V.WeekNumber],scope:"row",role:"rowheader"},j(G.weekNumber,l)),G.days.map(ne=>{const{date:xe}=ne,J=ee(ne);if(J[me.focused]=!J.hidden&&!!re?.isEqualTo(ne),J[He.selected]=B?.(xe)||J.selected,Hn(q)){const{from:It,to:en}=q;J[He.range_start]=!!(It&&en&&l.isSameDay(xe,It)),J[He.range_end]=!!(It&&en&&l.isSameDay(xe,en)),J[He.range_middle]=at(q,xe,!0,l)}const qn=Vh(J,D,t.modifiersStyles),vn=Dh(J,c,t.modifiersClassNames),Vn=!bt&&!J.hidden?be(xe,J,l.options,l):void 0;return A.createElement(r.Day,{key:`${ne.isoDate}_${ne.displayMonthId}`,day:ne,modifiers:J,className:vn.join(" "),style:qn,role:"gridcell","aria-selected":J.selected||void 0,"aria-label":Vn,"data-day":ne.isoDate,"data-month":ne.outside?ne.dateMonthId:void 0,"data-selected":J.selected||void 0,"data-disabled":J.disabled||void 0,"data-hidden":J.hidden||void 0,"data-outside":ne.outside||void 0,"data-focused":J.focused||void 0,"data-today":J.today||void 0},!J.hidden&&bt?A.createElement(r.DayButton,{className:c[V.DayButton],style:D?.[V.DayButton],type:"button",day:ne,modifiers:J,disabled:!J.focused&&J.disabled||void 0,"aria-disabled":J.focused&&J.disabled||void 0,tabIndex:he(ne)?0:-1,"aria-label":qe(xe,J,l.options,l),onClick:Et(ne,J),onBlur:Jt(ne,J),onFocus:xt(ne,J),onKeyDown:kt(ne,J),onMouseEnter:wt(ne,J),onMouseLeave:Zt(ne,J)},N(xe,l.options,l)):!J.hidden&&N(ne.date,l.options,l))})))))))),t.footer&&A.createElement(r.Footer,{className:c[V.Footer],style:D?.[V.Footer],role:"status","aria-live":"polite"},t.footer)))}const wy={en:yt,"zh-CN":wm,"zh-TW":Qm,ja:yf,ko:Uf};function ys(e){return wy[e]||yt}function Ua(e,t){if(!e)return"";const n=e.split("-");if(n.length!==3)return e;const r=new Date(Number(n[0]),Number(n[1])-1,Number(n[2]));return Number.isFinite(r.getTime())?Qe(r,"MMM d",t?{locale:t}:void 0):e}function Dr({from:e,to:t,onApply:n,onCancel:r}){const a=m.useMemo(()=>{const d={from:void 0,to:void 0};if(e){const f=e.split("-");d.from=new Date(Number(f[0]),Number(f[1])-1,Number(f[2]))}if(t){const f=t.split("-");d.to=new Date(Number(f[0]),Number(f[1])-1,Number(f[2]))}return d},[e,t]),[o,l]=m.useState(a),i=ys(vo()),c=()=>{if(!o?.from)return;const d=Qe(o.from,"yyyy-MM-dd"),f=o.to?Qe(o.to,"yyyy-MM-dd"):d;n?.(d,f)},u=!!o?.from;return s.jsxs("div",{className:"p-4",children:[s.jsx(ky,{mode:"range",locale:i,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:[u&&o.from&&s.jsxs("span",{className:"text-xs text-oai-gray-500 dark:text-oai-gray-400 mr-auto",children:[Qe(o.from,"MMM d, yyyy",{locale:i}),o.to&&o.to.getTime()!==o.from.getTime()?` — ${Qe(o.to,"MMM d, yyyy",{locale:i})}`:""]}),s.jsx($n,{variant:"secondary",size:"sm",onClick:r,children:g("shared.action.cancel")}),s.jsx($n,{variant:"primary",size:"sm",onClick:c,disabled:!u,children:g("shared.action.apply")})]})]})}function Ur(e){if(!Number.isFinite(Number(e)))return null;const t=Number(e);return t<=0?null:De(t,{decimals:1})}function qr(e,t,n){const r=Number(e);if(!Number.isFinite(r)||r<=0)return null;const a=zn(t);return(t===wo?r:r*n)<.01?`<${a}0.01`:Je(r,{decimals:2,currency:t,rate:n})}function vy(e,t,n){const r=qr(e,t,n);return r?`${r}/MTok`:null}function dn(e){return e?String(e).replace(/^claude-/,""):""}function _y(e){return Array.isArray(e)?e.map(t=>typeof t=="string"?{key:t,label:qa(t)}:{key:t.key,label:t.label||qa(t.key)}):[]}function Ny(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 Sy={CODEX:"#3b82f6",CLAUDE:"#d97757",OPENCODE:"#f59e0b",GEMINI:"#2196f3",KIMI:"#a78bfa","KILO-CLI":"#facc15","KILO-CODE":"#facc15",DROID:"#ef4444"};function fr(e,t){const n=e?.toUpperCase?.()||"";return Sy[n]||`hsl(${150+t*40}, 60%, 45%)`}function un(e){const t=String(e?.source||"").trim().toLowerCase(),n=String(e?.label||"").trim().toLowerCase();return t==="claude"||n==="claude"?"claude":t==="codex"||n==="codex"?"codex":null}function Vr(e){return!!e?.models?.length}function My(e){const t=Number(e);return!Number.isFinite(t)||t<=0?"0%":`${Math.min(100,Math.max(2,t))}%`}function jy(e,t){const n=String(e?.id||e?.name||"").trim().toLowerCase(),r=String(t?.id||t?.name||"").trim().toLowerCase();return!!(n&&r&&n===r)}function Dy(e,t=3){return[...e?.models||[]].sort((n,r)=>(Number(r.share)||0)-(Number(n.share)||0)).slice(0,t)}function Cy(e,t){return Math.max(0,(e?.models?.length||0)-t.length)}const Ty={day:"usage.period.day","24h":"usage.period.last24h",week:"usage.period.week",month:"usage.period.month",total:"usage.period.total",custom:"usage.period.custom"};function qa(e){const t=Ty[e];return t?g(t):String(e).toUpperCase()}function Py({loading:e,onClick:t}){const n=Vt();return s.jsx($n,{variant:"secondary",size:"sm",disabled:e,onClick:t,"aria-label":g("usage.button.refresh"),className:"w-8 p-0",children:s.jsx(Ue.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 Va({period:e,periods:t,onPeriodChange:n,autoRefreshOptions:r=[],autoRefreshIntervalMs:a,onAutoRefreshIntervalChange:o,summaryValue:l,summaryLabel:i,summaryUpdatedAtLabel:c,summaryCostValue:u,usageInsights:d,onCostInfo:f,onRefresh:h,loading:y,customFrom:p,customTo:b,onCustomRangeApply:k,customRangeOpen:v,onCustomRangeOpenChange:w,onOpenShare:x,emphasized:M=!1}){const T=Vt(),D=_y(t),E=Array.isArray(r)&&r.length>0&&typeof o=="function",N=ys(vo()),O=Ny(String(l??"")),j=()=>typeof window<"u"&&typeof window.matchMedia=="function"&&window.matchMedia("(max-width: 639px)").matches,[W,K]=m.useState(j);m.useEffect(()=>{if(typeof window>"u"||typeof window.matchMedia!="function")return;const le=window.matchMedia("(max-width: 639px)"),we=ve=>K(ve.matches);return le.addEventListener("change",we),()=>le.removeEventListener("change",we)},[]);const $=O!=null&&!W&&!y&&!T,F=M&&l!=null&&String(l)!=="",C=m.useRef(null);m.useEffect(()=>{const le=C.current?.querySelector('[aria-selected="true"]');le&&typeof le.scrollIntoView=="function"&&le.scrollIntoView({block:"nearest",inline:"center"})},[e]);const{resolvedTheme:S}=ol(),{currency:R,rate:z}=At(),P=S==="dark",L=P?"rgba(10,10,10,0.98)":"rgba(255,255,255,0.96)",U=P?"rgba(10,10,10,0)":"rgba(255,255,255,0)",ee=vy(d?.costPerMillionTokens,R,z),B=d?.topCostModel?.name?dn(d.topCostModel.name):"",H=d?.topUsageModel?.name?dn(d.topUsageModel.name):"",q=Array.isArray(d?.missingPricingModels)?d.missingPricingModels.length:0,te=!!q,re=!!(ee||B||H||te),he=M?"h-full flex flex-col !bg-oai-brand-50 dark:!bg-oai-brand-950/40 !border-oai-brand-200 dark:!border-oai-brand-800":"",oe=M?"flex-1 flex flex-col":"",de=M?"flex flex-1 flex-col justify-center":"",qe=M?"flex flex-col gap-3":"flex flex-col gap-4 sm:flex-row sm:items-end sm:justify-between",be=M?"flex flex-col gap-2":"flex flex-col gap-2 sm:items-end",Te=M?"flex flex-wrap items-center gap-1.5 text-[11px] font-medium":"flex flex-wrap items-center gap-1.5 text-[11px] font-medium sm:justify-end";return s.jsxs(Gt,{className:he,bodyClassName:oe,children:[s.jsxs("div",{className:"flex items-center gap-2 mb-6",children:[s.jsx("div",{ref:C,role:"tablist","aria-label":g("usage.overview.tablist_aria"),className:"flex flex-1 min-w-0 gap-1 overflow-x-auto [scrollbar-width:none] [&::-webkit-scrollbar]:hidden",children:D.map(le=>{const we=e===le.key,ve=`shrink-0 whitespace-nowrap text-xs font-medium px-3 py-1.5 rounded-md transition-colors ${we?"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(le.key==="custom"){const Fe=we&&p&&b?`${Ua(p,N)} — ${Ua(b,N)}`:le.label;return s.jsxs(wr,{open:v,onOpenChange:Pe=>{Pe?n?.("custom"):w?.(Pe)},children:[s.jsx(vr,{render:s.jsx("button",{role:"tab","aria-selected":we,type:"button",className:ve}),children:Fe}),s.jsx(_r,{children:s.jsx(Nr,{sideOffset:8,side:"bottom",align:"start",className:"!z-[9999]",children:s.jsx(Sr,{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(Dr,{from:p,to:b,onApply:k,onCancel:()=>w?.(!1)})})})})]},"custom")}return s.jsx("button",{role:"tab","aria-selected":we,type:"button",className:ve,onClick:()=>n?.(le.key),children:le.label},le.key)})}),s.jsxs("div",{className:"flex items-center gap-1.5 shrink-0",children:[E?s.jsx("select",{"aria-label":g("usage.auto_refresh.aria"),value:String(a),onChange:le=>o(le.target.value),className:"h-8 rounded-md border border-oai-gray-300 dark:border-oai-gray-700 bg-oai-white dark:bg-oai-gray-900 px-2 text-xs font-medium text-oai-gray-700 dark:text-oai-gray-200 transition-colors hover:border-oai-gray-400 dark:hover:border-oai-gray-600 focus:outline-none focus:ring-2 focus:ring-oai-brand/25",children:r.map(le=>s.jsx("option",{value:String(le.value),children:g(le.labelKey)},le.value))}):null,x?s.jsxs("button",{type:"button",onClick:x,"aria-label":g("share.button.aria"),className:"inline-flex items-center justify-center gap-1.5 h-8 px-3 text-xs font-medium rounded-md border border-oai-gray-300 dark:border-oai-gray-700 bg-oai-white dark:bg-oai-gray-900 text-oai-black dark:text-oai-white hover:border-oai-brand hover:text-oai-brand transition-colors duration-200",children:[s.jsx($l,{className:"h-3.5 w-3.5",strokeWidth:2}),g("share.button.label")]}):null,h&&s.jsx(Py,{loading:y,onClick:h})]})]}),s.jsx("div",{className:de,children:s.jsxs("div",{className:qe,children:[s.jsxs("div",{className:"min-w-0",children:[s.jsx("div",{className:"text-xs text-oai-gray-500 dark:text-oai-gray-300 uppercase tracking-wider mb-2",children:i}),s.jsx("div",{className:"text-5xl sm:text-6xl md:text-7xl font-bold text-oai-black dark:text-oai-white tracking-tight tabular-nums leading-none [container-type:inline-size]",children:F?s.jsx(ec,{value:l,fontSize:58}):$?s.jsx(Gl,{value:O,displayValue:l,fontSize:72,padding:6,gap:1,textColor:"var(--oai-black, #111827)",fontWeight:700,gradientHeight:P?0:8,gradientFrom:L,gradientTo:U,counterStyle:{paddingLeft:0,paddingRight:0,gap:0},digitStyle:{width:"0.88ch"}}):l}),c?s.jsx("div",{className:"mt-2 text-[11px] font-medium text-oai-gray-400 dark:text-oai-gray-500 tabular-nums",children:c}):null]}),(u||re)&&s.jsxs("div",{className:be,children:[u&&s.jsx("div",{className:"flex items-center gap-2",children:f?s.jsxs("button",{type:"button",onClick:f,className:"inline-flex items-center gap-1.5 text-xl font-bold text-oai-brand hover:text-oai-brand-dark dark:hover:text-oai-brand-light transition-colors cursor-pointer","aria-label":g("usage.overview.cost_breakdown_aria"),children:[u,s.jsx(jo,{size:16,strokeWidth:2,className:"opacity-80"})]}):s.jsx("span",{className:"text-xl font-bold text-oai-brand",children:u})}),re&&s.jsxs("div",{className:Te,children:[ee?s.jsx("span",{className:"rounded-md border border-oai-gray-200 dark:border-oai-gray-700 px-2 py-1 text-oai-gray-600 dark:text-oai-gray-300 tabular-nums",children:g("usage.overview.cost_per_mtok",{value:ee})}):null,B?s.jsx("span",{className:"rounded-md border border-oai-gray-200 dark:border-oai-gray-700 px-2 py-1 text-oai-gray-600 dark:text-oai-gray-300",children:g("usage.overview.top_cost_model",{model:B})}):null,H&&H!==B?s.jsx("span",{className:"rounded-md border border-oai-gray-200 dark:border-oai-gray-700 px-2 py-1 text-oai-gray-600 dark:text-oai-gray-300",children:g("usage.overview.top_usage_model",{model:H})}):null,te?s.jsx("span",{className:"rounded-md border border-amber-200 bg-amber-50 px-2 py-1 text-amber-700 dark:border-amber-500/30 dark:bg-amber-500/10 dark:text-amber-200",children:g("usage.overview.missing_pricing_count",{count:q})}):null]})]})]})})]})}const Ka={claude:35,codex:250},Ga={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 Oy(e,t){const n=Ka[t]??Ka.claude,r=Ga[e]||Ga.system_prompt;return`oklch(${r.l} ${r.c} ${n})`}const Wy=[{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"]}],Ay=[["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"]],Fy={duration:.18,ease:[.4,0,.2,1]},Ey={height:0,opacity:0},$y={height:"auto",opacity:1},Iy={height:0,opacity:0};function Ry(e){const t=Number(e||0);return Number.isFinite(t)&&t>0?t:0}function Ly(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 gs(e,t=null){const n=e.reduce((l,i)=>l+Number(i.totals.total_tokens||0),0),r=Ry(t),a=r||n,o=r&&n>0?r/n:1;return e.map(l=>{const i=o===1?l.totals:Ly(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 By(e,t=null){const n=new Map;for(const a of e||[])n.set(a.key,a);const r=Wy.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 gs(r,t)}function Yy(e,t=null){const n=e?.totals||{},r=Number(n.reasoning_output_tokens||0),a=(e?.tool_calls_breakdown?.categories||[]).reduce((u,d)=>d?.name==="Text Response"?u:u+Number(d?.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 gs(c,t)}const Xa="MCP: ";function zy(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(Xa)?(t.push({...a,name:o.slice(Xa.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 Qa(e){return g(`dashboard.context_breakdown.category.${e}`)}function Ge(e){return!Number.isFinite(Number(e))||Number(e)<=0?"0":De(Number(e),{decimals:1})}function Hy(e){return typeof e!="string"?"":e.startsWith("mcp__")?e.split("__").slice(2).join("__")||e:e.includes("/")&&e.split("/").pop()||e}function Uy(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:Hy(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 qy(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:Uy(r),toolCount:r.length}}).filter(t=>t.name).sort((t,n)=>(n.totals.total_tokens||0)-(t.totals.total_tokens||0))}function Vy(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 Ky(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 Gy(e){if(e?.key){const t=g(`dashboard.context_breakdown.message_details.${e.key}`);if(t&&!t.includes("dashboard.context_breakdown"))return t}return e?.name||""}function Xy(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 Ja(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 Qy(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 Za(e){return e==="exec_command"||e==="Bash"}function ps(e){return e==="codex"?"dashboard.context_breakdown.empty_codex":"dashboard.context_breakdown.empty"}function Jy(e){return e==="codex"?"dashboard.context_breakdown.error_codex":"dashboard.context_breakdown.error"}function Zy(e){return e==="codex"?"dashboard.context_breakdown.footnote_codex":"dashboard.context_breakdown.footnote"}const eg=10;function rt({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:u=null,children:d,share:f=null,fillColor:h=null}){const y=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",p=s.jsx("span",{className:"shrink-0 flex items-center justify-start",style:{width:eg},"aria-hidden":!t,children:t}),b=s.jsxs(s.Fragment,{children:[p,s.jsx("span",{className:y,children:n}),r,o&&s.jsx(Ue.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(So,{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:b}):s.jsx("div",{className:"relative flex items-center gap-1.5 min-w-0",children:b}),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:u||""})]}),o&&d?s.jsx(Fr,{initial:!1,children:l&&s.jsx(Ue.div,{initial:Ey,animate:$y,exit:Iy,transition:Fy,style:{overflow:"hidden"},children:d},"content")}):null]})}function eo({execDetails:e,source:t="claude"}){const[n,r]=m.useState("by_type"),a=Xy(Qy(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:Ay.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:g(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":g("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:g("dashboard.context_breakdown.exec_details.kind_column")}),s.jsx("span",{role:"columnheader",className:"text-right",children:g("dashboard.context_breakdown.exec_details.calls_column")}),o&&s.jsxs(s.Fragment,{children:[s.jsx("span",{role:"columnheader",className:"text-right",children:g("dashboard.context_breakdown.exec_details.failures_column")}),s.jsx("span",{role:"columnheader",className:"text-right",children:g("dashboard.context_breakdown.exec_details.duration_column")}),s.jsx("span",{role:"columnheader",className:"text-right",children:g("dashboard.context_breakdown.exec_details.max_duration_column")})]}),s.jsx("span",{role:"columnheader",className:"text-right",children:g("dashboard.context_breakdown.tool_details.total_column")}),o&&s.jsx("span",{role:"columnheader",className:"text-right",children:g("dashboard.context_breakdown.exec_details.output_column")})]}),a.map((i,c)=>s.jsxs(Ue.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:De(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:De(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:Ja(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:Ja(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:Ge(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:De(i.output_lines||0)})]},i.name))]})})]})}function on({toolSet:e,execDetails:t,source:n,codexQueueFallback:r}){const[a,o]=m.useState({}),[l,i]=m.useState(!1),c=qy(e?.categories||[]);function u(d){o(f=>({...f,[d]:!f[d]}))}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?g("dashboard.context_breakdown.tool_details.unavailable_codex"):g(ps(n))}):s.jsx("ul",{className:"mt-0.5 mb-0.5 space-y-0.5",children:c.map(d=>{const f=d.toolCount>0,h=d.name==="Execution"&&t,y=h&&d.tools.some(b=>Za(b.name)),p=!!a[d.name];return s.jsxs(rt,{level:1,label:d.name,labelTone:"strong",hasChevron:f||h&&!y,open:p||h&&!y&&l,onToggle:()=>{f?u(d.name):h&&!y&&i(b=>!b)},tokens:Ge(d.totals.total_tokens||0),percent:null,children:[f&&s.jsx("ul",{className:"space-y-0.5",children:d.tools.map(b=>{const k=h&&Za(b.name);return s.jsx(rt,{level:2,label:b.name,labelTone:k?"accent":"default",hasChevron:k,open:l,onToggle:()=>i(v=>!v),tokens:Ge(b.total_tokens||0),percent:null,children:k&&s.jsx(eo,{execDetails:t,source:n})},b.name)})}),h&&!y&&s.jsx(eo,{execDetails:t,source:n})]},d.name)})})}function bs({from:e,to:t,source:n="claude",referenceTotalTokens:r=null,onLoadingChange:a=null}){const[o,l]=m.useState(null),[i,c]=m.useState(!1),[u,d]=m.useState(null),[f,h]=m.useState({});function y(S){h(R=>({...R,[S]:!R[S]}))}if(m.useEffect(()=>{let S=!1;return c(!0),a?.(!0),d(null),sl({from:e,to:t,source:n,timeZone:No(),tzOffsetMinutes:_o()}).then(R=>{S||l(R)}).catch(R=>{S||d(R?.message||String(R))}).finally(()=>{S||(c(!1),a?.(!1))}),()=>{S=!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(S=>s.jsx("div",{className:"h-3 rounded bg-oai-gray-100 dark:bg-oai-gray-800 animate-pulse",style:{animationDelay:`${S*80}ms`}},S))}),s.jsx("p",{className:"mt-3 text-[11px] text-oai-gray-500 dark:text-oai-gray-400",children:g("dashboard.context_breakdown.loading_hint")})]});if(u)return s.jsx("p",{className:"text-xs text-oai-gray-500 dark:text-oai-gray-400",children:g(Jy(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:g(ps(n))});const p=n==="claude"?By(o.categories||[],r):Yy(o,r),b=o.tool_calls_breakdown||null,k=o.skills_breakdown||null,v=o.message_breakdown||null,w=o.configured_resources||null,x=o.exec_command_breakdown||null,M=Ky(k?.skills||[]),T=Vy(v?.categories||[]),D=n==="codex"&&(o?.breakdown_status==="queue_fallback"||o?.fallback==="queue_totals"),E=n==="claude"?b?.tool_calls||null:b||null,{mcpSet:N,residualSet:O,mcpTotalTokens:j}=zy(E),W=n==="claude"&&b?.subagents||null,K=W?.categories?.length>0||(w?.custom_agents_count||0)>0,$=n==="claude"?(O?.categories||[]).reduce((S,R)=>S+Number(R?.totals?.total_tokens||0),0):0,F=n==="claude"?(W?.categories||[]).reduce((S,R)=>S+Number(R?.totals?.total_tokens||0),0):0,C=[...p].sort((S,R)=>(R.totals?.total_tokens||0)-(S.totals?.total_tokens||0));return s.jsxs("div",{role:"region","aria-label":g("dashboard.context_breakdown.bar_aria",{summary:p.filter(S=>S.percent>0).filter(S=>!(n==="claude"&&(S.key==="tool_calls"||S.key==="custom_agents"))).map(S=>`${Qa(S.key)} ${S.percent}%`).join(",")}),children:[s.jsxs("ul",{className:"space-y-0.5",children:[C.map(S=>{const R=S.key==="system_prompt",z=S.key==="messages",P=S.key==="tool_calls",L=S.key==="custom_agents";if(S.key,n==="claude"&&(P||L))return null;const U=z&&T.length>0||P&&(O?.categories?.length>0||D)||L&&K&&W,ee=!!f[S.key],B=Oy(S.key,n),H=s.jsx("span",{className:"h-2 w-2 rounded-sm shrink-0",style:{backgroundColor:B},"aria-hidden":"true"}),q=R?s.jsxs("span",{className:"relative inline-flex shrink-0 group",children:[s.jsx(jo,{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:g("dashboard.context_breakdown.system_prefix_tooltip")})]}):null,te=S.percent>0?`${S.percent.toFixed(S.percent<.1&&S.percent>0?2:1)}%`:"0.0%";return s.jsxs(rt,{level:0,colorSquare:H,label:Qa(S.key),labelSuffix:q,tokens:Ge(S.totals?.total_tokens||0),percent:te,hasChevron:U,open:ee,onToggle:()=>y(S.key),share:S.percent,fillColor:B,children:[z&&s.jsx("ul",{className:"space-y-0.5",children:T.map(re=>s.jsx(rt,{level:1,label:Gy(re),tokens:Ge(re.totals.total_tokens||0),percent:null},re.key||re.name))}),P&&O&&s.jsx(on,{toolSet:O,execDetails:x,source:n,codexQueueFallback:D}),P&&D&&!O&&s.jsx("p",{className:"text-[11px] text-oai-gray-400 dark:text-oai-gray-500 py-0.5",children:g("dashboard.context_breakdown.tool_details.unavailable_codex")}),L&&W&&s.jsx(on,{toolSet:W,execDetails:null,source:n,codexQueueFallback:!1})]},S.key)}),n==="claude"&&O?.categories?.length>0&&s.jsx(rt,{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:g("dashboard.context_breakdown.category.tool_calls"),tokens:Ge($),percent:null,hasChevron:!0,open:!!f.tool_calls_aux,onToggle:()=>y("tool_calls_aux"),children:s.jsx(on,{toolSet:O,execDetails:x,source:n,codexQueueFallback:!1})}),n==="claude"&&W?.categories?.length>0&&s.jsx(rt,{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:g("dashboard.context_breakdown.category.custom_agents"),tokens:Ge(F),percent:null,hasChevron:!0,open:!!f.custom_agents_aux,onToggle:()=>y("custom_agents_aux"),children:s.jsx(on,{toolSet:W,execDetails:null,source:n,codexQueueFallback:!1})}),N?.categories?.length>0&&s.jsx(rt,{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:g("dashboard.context_breakdown.category.mcp_servers"),tokens:Ge(j),percent:null,hasChevron:!0,open:!!f.mcp_servers,onToggle:()=>y("mcp_servers"),children:s.jsx(on,{toolSet:N,execDetails:null,source:n,codexQueueFallback:!1})}),M.length>0&&s.jsx(rt,{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:g("dashboard.context_breakdown.category.skills"),tokens:Ge(M.reduce((S,R)=>S+(R.total_tokens||0),0)),percent:null,hasChevron:!0,open:!!f.skills,onToggle:()=>y("skills"),children:s.jsx("ul",{className:"space-y-0.5",children:M.slice(0,12).map(S=>s.jsx(rt,{level:1,label:S.name,tokens:Ge(S.total_tokens),percent:null},S.name))})})]}),s.jsx("p",{className:"mt-2 text-[10px] text-oai-gray-400 dark:text-oai-gray-500",children:g(Zy(n))}),D?s.jsx("p",{className:"mt-2 text-[11px] text-oai-gray-500 dark:text-oai-gray-400",children:g("dashboard.context_breakdown.tool_details.unavailable_codex")}):null,w?s.jsxs("p",{className:"mt-2 text-[10px] text-oai-gray-400 dark:text-oai-gray-500",children:[De(w.skills_count||0)," skills ·"," ",De(w.mcp_servers_count||0)," MCP servers ·"," ",De(w.custom_agents_count||0)," agents ·"," ",De(w.memory_files_count||0)," memory files"]}):null]})}function to({fleetData:e=[],from:t,to:n,showInlineContext:r=!0}){const a=Vt(),[o,l]=m.useState(null),{currency:i,rate:c}=At(),u=e.filter(Vr);return u.length===0?null:s.jsx(Gt,{children:s.jsxs("div",{className:"space-y-6",children:[s.jsx("div",{role:"img","aria-label":g("usage.overview.distribution_aria",{items:u.map(d=>g("usage.overview.distribution_item",{label:d.label,percent:d.totalPercent})).join(",")}),className:"h-1.5 w-full bg-oai-gray-100 dark:bg-oai-gray-800 rounded-full overflow-hidden flex",children:u.map((d,f)=>{const h=fr(d.label,f);return s.jsx(Ue.div,{initial:{width:0},animate:{width:`${d.totalPercent}%`},transition:{duration:.5,delay:.45+f*.04,ease:[.16,1,.3,1]},className:"h-full",style:{backgroundColor:h},title:`${d.label}: ${d.totalPercent}%`},d.label)})}),s.jsx("div",{className:"grid grid-cols-2 sm:grid-cols-3 lg:grid-cols-[repeat(auto-fit,minmax(220px,1fr))] gap-3",children:u.map((d,f)=>{const h=fr(d.label,f),y=o===d.label,p=d.missingPricingModels?.length||0,b=!!p,k=Dy(d),v=Cy(d,k);return s.jsxs("button",{"aria-expanded":y,"aria-controls":`provider-details-${d.label}`,"aria-label":g("usage.overview.provider_card_aria",{provider:d.label,percent:d.totalPercent,tokens:Ur(d.usage)||"0",cost:qr(d.usd,i,c)||`${zn(i)}0`,action:g(y?"usage.overview.collapse":"usage.overview.expand")}),onClick:()=>l(y?null:d.label),className:`min-w-0 text-left p-3 rounded-lg border transition-colors duration-200 ${y?"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(Ar,{provider:d.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:d.label})]}),s.jsxs("div",{className:"text-lg font-semibold text-oai-black dark:text-oai-white tabular-nums",children:[d.totalPercent,"%"]}),s.jsx("div",{className:"mt-0.5 text-[11px] text-oai-gray-400 dark:text-oai-gray-400 tabular-nums",children:g("usage.overview.model_count",{count:d.models.length})}),s.jsxs("div",{className:"mt-2 space-y-1.5",children:[k.map(w=>{const x=jy(w,d.topCostModel);return s.jsxs("div",{className:"min-w-0",children:[s.jsxs("div",{className:"flex min-w-0 items-center justify-between gap-2 text-[10px] font-medium",children:[s.jsx("span",{className:`truncate ${x?"text-oai-black dark:text-oai-white":"text-oai-gray-600 dark:text-oai-gray-300"}`,title:w.name,children:dn(w.name)}),s.jsx("span",{className:"shrink-0 text-oai-gray-500 dark:text-oai-gray-400 tabular-nums",children:g("usage.overview.model_percent",{percent:w.share})})]}),s.jsx("div",{role:"progressbar","aria-label":g("usage.overview.model_chip",{model:dn(w.name),percent:w.share}),"aria-valuemin":0,"aria-valuemax":100,"aria-valuenow":Number(w.share)||0,className:"mt-1 h-1.5 overflow-hidden rounded-full bg-oai-gray-100 dark:bg-oai-gray-800",children:s.jsx(Ue.div,{initial:{width:0},animate:{width:My(w.share)},transition:{duration:a?0:.45,delay:a?0:.05,ease:[.16,1,.3,1]},className:"h-full rounded-full",style:{backgroundColor:x?h:`${h}99`}})})]},w.id||w.name)}),!!v&&s.jsx("div",{className:"text-[10px] font-medium text-oai-gray-400 dark:text-oai-gray-500",children:g("usage.overview.model_more",{count:v})})]}),d.topCostModel?.name?s.jsx("div",{className:"mt-1.5 truncate text-[10px] font-medium text-oai-gray-500 dark:text-oai-gray-400",children:g("usage.overview.provider_top_cost",{model:dn(d.topCostModel.name)})}):null,b?s.jsx("div",{className:"mt-1.5 truncate text-[10px] font-semibold text-amber-700 dark:text-amber-300",children:g("usage.overview.provider_missing_pricing",{count:p})}):null]},d.label)})}),o&&s.jsx("div",{id:`provider-details-${o}`,role:"region","aria-label":g("usage.overview.model_details_aria",{provider:o}),className:"mt-2",children:u.filter(d=>d.label===o).map(d=>{const f=fr(d.label,0),h=un(d),y=[...d.models].sort((k,v)=>(v.share||0)-(k.share||0)),p=!!h&&r,b=p?`${h==="claude"?"Claude":"Codex"} Context Breakdown`:d.label;return s.jsx(tg,{provider:d,color:f,providerHeading:b,contextSource:p?h:null,from:t,to:n,sortedModels:y},d.label)})})]})})}function tg({provider:e,color:t,providerHeading:n,contextSource:r,from:a,to:o,sortedModels:l}){const{currency:i,rate:c}=At(),[u,d]=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(Ar,{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&&u&&s.jsx(Fl,{size:12,className:"text-oai-gray-400 dark:text-oai-gray-500 animate-spin shrink-0","aria-label":g("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:[g("usage.overview.antigravity_notice_title"),"."]})," ",g("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(bs,{from:a,to:o,source:r,referenceTotalTokens:e.usage,onLoadingChange:d})}):null,s.jsx("div",{className:"space-y-3",children:l.map(h=>{const y=Ur(h.usage),p=qr(h.cost,i,c),b=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:y}),s.jsx("span",{className:"shrink-0 w-16 text-right text-sm text-oai-gray-500 dark:text-oai-gray-400 tabular-nums",children:p}),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":b,"aria-valuemin":0,"aria-valuemax":100,children:s.jsx("div",{className:"h-full transition-[width] duration-500 ease-out",style:{width:`${b}%`,backgroundColor:t,opacity:.45}})})]},h.id||h.name)})})]})}const ng={claude:"Claude",codex:"Codex"};function rg({fleetData:e=[],from:t,to:n}){const r=e.filter(Vr).filter(i=>un(i)!==null);if(r.length===0)return null;const a=new Map;for(const i of r){const c=un(i),u=a.get(c);(!u||(Number(i.usage)||0)>(Number(u.usage)||0))&&a.set(c,i)}const o=Array.from(a.values()).sort((i,c)=>(Number(c.usage)||0)-(Number(i.usage)||0)),l=o.length>1;return s.jsx(Gt,{title:g("dashboard.context_breakdown.card_title"),children:s.jsx("div",{className:l?"grid grid-cols-1 lg:grid-cols-2 gap-x-8 gap-y-6":"",children:o.map(i=>{const c=un(i);return s.jsxs("div",{className:"min-w-0",children:[l?s.jsxs("div",{className:"mb-3 flex items-center justify-between gap-2 border-b border-oai-gray-200 pb-2 dark:border-oai-gray-800",children:[s.jsx("span",{className:"text-sm font-semibold text-oai-black dark:text-oai-white",children:ng[c]??c}),s.jsx("span",{className:"text-xs font-medium tabular-nums text-oai-gray-500 dark:text-oai-gray-300",children:Ur(i.usage)})]}):null,s.jsx(bs,{from:t,to:n,source:c,referenceTotalTokens:i.usage})]},c)})})})}function ag(e){return e==="day"?"hourly":e==="total"?"monthly":"daily"}function og(e){return!!e&&!e.missing&&!e.future}function sg(e){const t=e?.billable_total_tokens??e?.total_tokens??e?.value,n=Number(t);return Number.isFinite(n)&&n>=0?n:0}function ig(e){const t=e?.total_tokens??e?.billable_total_tokens??e?.value,n=Number(t);return Number.isFinite(n)&&n>=0?n:0}function lg(e){const t=Array.isArray(e)?e.filter(og):[];let n=0,r=0,a=0,o=0,l=!1,i=0,c=-1,u=null;for(const d of t){const f=ig(d),h=sg(d);n+=f,r+=h;const y=Number(d?.conversation_count);Number.isFinite(y)&&y>0&&(a+=y);const p=Number(d?.total_cost_usd);Number.isFinite(p)&&(l=!0,o+=p),h>0&&(i+=1),h>c&&(c=h,u=d)}return{totalTokens:n,billableTokens:r,conversationCount:a,totalCostUsd:l?o:null,bucketCount:t.length,activeBuckets:i,peak:u&&c>0?{value:c,label:u.hour||u.day||u.month||""}:null}}function no(e){return String(e).padStart(2,"0")}function cg(e,t){if(!e)return"";if(t==="hourly"){const n=String(e.hour||e.label||""),r=/^(\d{4}-\d{2}-\d{2})T(\d{2}):(\d{2})/.exec(n);if(!r)return n;const[,a,o,l]=r,c=Number(o)*60+Number(l)+30,u=Math.floor(c/60)%24,d=c%60;return`${a} ${o}:${l}–${no(u)}:${no(d)}`}return String(t==="monthly"?e.month||e.label||"":e.day||e.label||"")}function dg(e){if(!e||e.activeBuckets===0)return"trend.zoom.insight.empty";const t=e.totalTokens||0;return t<1e7?"trend.zoom.insight.calm":t<5e8?"trend.zoom.insight.steady":t<5e9?"trend.zoom.insight.heavy":"trend.zoom.insight.massive"}function ug(e,t){if(!e)return"";if(t==="hourly"){const a=/T(\d{2}:\d{2})/.exec(String(e.hour||e.label||""));return a?a[1]:""}if(t==="monthly")return String(e.month||e.label||"");const n=String(e.day||e.label||""),r=/^\d{4}-(\d{2}-\d{2})$/.exec(n);return r?r[1]:n}const fg=[{period:"day",labelKey:"trend.zoom.gran.30min"},{period:"month",labelKey:"trend.zoom.gran.day"},{period:"total",labelKey:"trend.zoom.gran.month"}],mg=24,Ut="#10b981";function ro(e){return e==="day"?"day":e==="total"?"total":"month"}function Cr(e,t){const n=/^(\d{4})-(\d{2})-(\d{2})$/.exec(String(e||""));if(!n)return e;const r=new Date(Date.UTC(Number(n[1]),Number(n[2])-1,Number(n[3])));r.setUTCDate(r.getUTCDate()+t);const a=r.getUTCFullYear(),o=String(r.getUTCMonth()+1).padStart(2,"0"),l=String(r.getUTCDate()).padStart(2,"0");return`${a}-${o}-${l}`}function hg(e,t){const n=/^(\d{4})-(\d{2})-(\d{2})$/.exec(String(e||""));if(!n)return e;const r=new Date(Date.UTC(Number(n[1]),Number(n[2])-1+t,Number(n[3]))),a=r.getUTCFullYear(),o=String(r.getUTCMonth()+1).padStart(2,"0"),l=String(r.getUTCDate()).padStart(2,"0");return`${a}-${o}-${l}`}function yg(e,t){const n=/^(\d{4})-(\d{2})/.exec(String(e||"")),r=/^(\d{4})-(\d{2})/.exec(String(t||""));if(!n||!r)return mg;const a=Number(r[1])*12+Number(r[2])-(Number(n[1])*12+Number(n[2]))+1;return Math.max(1,a)}function ao(e,t){return t?e==="total"?{from:hg(t,-23),to:t}:{from:Cr(t,-29),to:t}:{from:null,to:null}}function gg(e){const t=/^\d{4}-(\d{2}-\d{2})T(\d{2}:\d{2})/.exec(String(e||""));return t?`${t[1]} ${t[2]}`:e||""}function Tn({label:e,value:t,sub:n}){return s.jsxs("div",{className:"flex flex-col gap-1.5 group",children:[s.jsx("span",{className:"text-[9px] font-bold uppercase tracking-widest font-mono text-zinc-400 dark:text-zinc-500",children:e}),s.jsx("span",{className:"text-xl font-black font-mono text-zinc-900 dark:text-zinc-50 tracking-tight leading-none tabular-nums transition-transform duration-200 group-hover:-translate-y-[1px]",children:t}),n?s.jsx("span",{className:"text-[10px] font-bold text-zinc-400 dark:text-zinc-500 font-mono tabular-nums",children:n}):null]})}function pg({zoomConfig:e,period:t,from:n,to:r,timeZoneLabel:a,onClose:o,renderChart:l}){const{currency:i,rate:c}=At(),u=A.useMemo(()=>mn({timeZone:e?.timeZone,offsetMinutes:e?.tzOffsetMinutes,date:e?.now||new Date})||r||n||null,[e?.timeZone,e?.tzOffsetMinutes,e?.now,r,n]),[d,f]=A.useState(()=>ro(t)),[h,y]=A.useState(u),[p,b]=A.useState(()=>ao(ro(t),u)),[k,v]=A.useState(!1),[w,x]=A.useState(!1),[M,T]=A.useState(!1),D=u,E=P=>{f(P),P!=="day"&&b(ao(P,u))},N=A.useMemo(()=>d==="day"?{from:h,to:h,months:void 0}:d==="total"?{from:void 0,to:p.to,months:yg(p.from,p.to)}:{from:p.from,to:p.to,months:void 0},[d,h,p]),{rows:O,from:j,to:W,loading:K}=Do({...e,period:d,from:N.from,to:N.to,months:N.months}),$=A.useMemo(()=>lg(O),[O]),F=A.useCallback(()=>T(!0),[]),C=P=>{P.target===P.currentTarget&&M&&o()};if(A.useEffect(()=>{const P=L=>{L.key==="Escape"&&F()};return window.addEventListener("keydown",P),()=>window.removeEventListener("keydown",P)},[F]),typeof document>"u")return null;const S=d==="day"&&!!h,R=d==="day"&&!!h&&(!D||h<D),z=$.totalCostUsd!=null?Je($.totalCostUsd,{currency:i,rate:c}):null;return s.jsxs("div",{onAnimationEnd:C,onClick:P=>{P.target===P.currentTarget&&F()},className:Re("fixed inset-0 z-50 flex items-center justify-center p-3 md:p-6 backdrop-blur-md bg-black/15 dark:bg-black/40",M?"animate-tt-fade-out":"animate-tt-fade-in"),children:[s.jsx("style",{children:`
2
+ @keyframes tt-fade-in { from { opacity: 0; } to { opacity: 1; } }
3
+ @keyframes tt-fade-out { from { opacity: 1; } to { opacity: 0; } }
4
+ @keyframes tt-modal-entrance {
5
+ from { opacity: 0; transform: scale(0.96) translateY(10px); }
6
+ to { opacity: 1; transform: scale(1) translateY(0); }
7
+ }
8
+ @keyframes tt-modal-exit {
9
+ from { opacity: 1; transform: scale(1) translateY(0); }
10
+ to { opacity: 0; transform: scale(0.96) translateY(10px); }
11
+ }
12
+ .animate-tt-fade-in { animation: tt-fade-in 0.2s cubic-bezier(0.16, 1, 0.3, 1) forwards; }
13
+ .animate-tt-fade-out { animation: tt-fade-out 0.2s cubic-bezier(0.16, 1, 0.3, 1) forwards; }
14
+ .animate-tt-modal { animation: tt-modal-entrance 0.3s cubic-bezier(0.34, 1.3, 0.64, 1) forwards; }
15
+ .animate-tt-modal-exit { animation: tt-modal-exit 0.2s cubic-bezier(0.16, 1, 0.3, 1) forwards; }
16
+ @media (prefers-reduced-motion: reduce) {
17
+ .animate-tt-fade-in, .animate-tt-fade-out, .animate-tt-modal, .animate-tt-modal-exit { animation: none; }
18
+ }
19
+ `}),s.jsxs("div",{className:Re("relative w-full max-w-6xl h-[88vh] backdrop-blur-2xl bg-white/90 dark:bg-oai-gray-900/90 border border-oai-gray-200/50 dark:border-white/10 shadow-2xl rounded-2xl flex flex-col md:flex-row overflow-hidden",M?"animate-tt-modal-exit":"animate-tt-modal"),children:[s.jsx("button",{type:"button",onClick:F,"aria-label":g("trend.zoom.close_aria"),className:"absolute top-4 right-4 z-50 p-2 rounded-full border border-oai-gray-200/60 dark:border-oai-gray-800/60 bg-white/50 dark:bg-oai-gray-900/50 text-oai-gray-500 dark:text-oai-gray-400 hover:text-oai-gray-900 dark:hover:text-white hover:rotate-90 hover:scale-105 active:scale-95 transition-all duration-300",children:s.jsx(ko,{size:16})}),s.jsxs("div",{className:"w-full md:w-[320px] shrink-0 border-b md:border-b-0 md:border-r border-zinc-200/50 dark:border-zinc-800/40 p-5 md:p-6 flex flex-col gap-6 overflow-y-auto backdrop-blur-md bg-zinc-50/50 dark:bg-zinc-950/50",children:[s.jsxs("div",{children:[s.jsxs("div",{className:"flex items-center gap-1.5 select-none",children:[s.jsxs("span",{className:"relative flex h-1.5 w-1.5",children:[s.jsx("span",{className:"animate-ping absolute inline-flex h-full w-full rounded-full opacity-75",style:{backgroundColor:Ut}}),s.jsx("span",{className:"relative inline-flex rounded-full h-1.5 w-1.5",style:{backgroundColor:Ut}})]}),s.jsx("span",{className:"text-[9px] font-extrabold uppercase tracking-widest font-mono text-zinc-400 dark:text-zinc-500",children:g("trend.zoom.badge")})]}),s.jsx("h4",{className:"text-xl font-black text-zinc-900 dark:text-zinc-50 tracking-tight leading-none mt-2 select-none",children:g("trend.monitor.label")}),a?s.jsx("p",{className:"text-[10px] text-zinc-400 dark:text-zinc-500 mt-1.5 font-mono select-none",children:a}):null,s.jsx("p",{className:"text-[11px] leading-relaxed text-zinc-400 dark:text-zinc-500 mt-2 font-normal select-none",children:g("trend.zoom.desc")})]}),s.jsxs("div",{className:"grid grid-cols-2 gap-x-5 gap-y-5 border-y border-zinc-200/50 dark:border-zinc-800/50 py-5 select-none",children:[s.jsx(Tn,{label:g("trend.zoom.stats.tokens"),value:De($.totalTokens)}),z?s.jsx(Tn,{label:g("trend.zoom.stats.cost"),value:z}):null,s.jsx(Tn,{label:g("trend.zoom.stats.conversations"),value:$.conversationCount.toLocaleString()}),$.peak?s.jsx(Tn,{label:g("trend.zoom.stats.peak"),value:De($.peak.value),sub:gg($.peak.label)}):null]}),s.jsxs("div",{className:"flex flex-col gap-2 select-none",children:[s.jsxs("div",{className:"flex items-center gap-1.5",children:[s.jsx(wl,{size:11,style:{color:Ut}}),s.jsx("span",{className:"text-[9px] font-extrabold uppercase tracking-widest font-mono",style:{color:Ut},children:g("trend.zoom.insight_badge")})]}),s.jsxs("div",{className:"pl-3.5 border-l-2 relative",style:{borderColor:Ut},children:[s.jsx("div",{className:"absolute inset-y-0 left-0 w-[3px] blur-[2px] opacity-15 pointer-events-none rounded-full",style:{backgroundColor:Ut}}),s.jsx("p",{className:"text-[11px] leading-relaxed text-zinc-600 dark:text-zinc-400 font-normal",children:g(dg($),{active:$.activeBuckets,peak:De($.peak?.value||0)})})]})]})]}),s.jsxs("div",{className:"flex-1 min-w-0 flex flex-col p-5 md:p-6 overflow-y-auto",children:[s.jsxs("div",{className:"flex items-center justify-between gap-3 mb-6 pr-10",children:[s.jsx("div",{role:"tablist","aria-label":g("trend.zoom.gran.aria"),className:"flex rounded-md border border-oai-gray-200 dark:border-oai-gray-800 p-0.5 text-[11px]",children:fg.map(P=>s.jsx("button",{type:"button",role:"tab","aria-selected":d===P.period,onClick:()=>E(P.period),className:Re("px-2.5 py-1 rounded transition-colors",d===P.period?"bg-oai-gray-100 text-oai-black dark:bg-oai-gray-800 dark:text-oai-white font-medium":"text-oai-gray-500 dark:text-oai-gray-400 hover:text-oai-gray-700 dark:hover:text-oai-gray-200"),children:g(P.labelKey)},P.period))}),d==="day"?s.jsxs("div",{className:"flex items-center gap-1.5",children:[s.jsx("button",{type:"button",onClick:()=>S&&y(P=>Cr(P,-1)),disabled:!S,"aria-label":g("trend.zoom.prev_day"),className:"p-1 rounded-md text-oai-gray-400 hover:text-oai-gray-700 dark:hover:text-oai-gray-200 hover:bg-oai-gray-100 dark:hover:bg-oai-gray-800 disabled:opacity-30 disabled:pointer-events-none transition-colors",children:s.jsx(il,{size:16})}),s.jsxs(wr,{open:k,onOpenChange:v,children:[s.jsx(vr,{"aria-label":g("trend.zoom.pick_day"),className:"text-[12px] font-medium text-oai-gray-700 dark:text-oai-gray-200 tabular-nums min-w-[100px] text-center px-2 py-0.5 rounded-md border border-oai-gray-200 dark:border-oai-gray-800 hover:bg-oai-gray-100 dark:hover:bg-oai-gray-800 transition-colors",children:h||"—"}),s.jsx(_r,{children:s.jsx(Nr,{sideOffset:8,side:"bottom",align:"center",className:"!z-[9999]",children:s.jsx(Sr,{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(Dr,{from:h,to:h,onApply:P=>{P&&y(P),v(!1)},onCancel:()=>v(!1)})})})})]}),s.jsx("button",{type:"button",onClick:()=>R&&y(P=>Cr(P,1)),disabled:!R,"aria-label":g("trend.zoom.next_day"),className:"p-1 rounded-md text-oai-gray-400 hover:text-oai-gray-700 dark:hover:text-oai-gray-200 hover:bg-oai-gray-100 dark:hover:bg-oai-gray-800 disabled:opacity-30 disabled:pointer-events-none transition-colors",children:s.jsx(So,{size:16})})]}):s.jsxs(wr,{open:w,onOpenChange:x,children:[s.jsx(vr,{"aria-label":g("trend.zoom.pick_range"),className:"text-xs font-medium text-oai-gray-600 dark:text-oai-gray-300 tabular-nums px-2.5 py-1 rounded-md border border-oai-gray-200 dark:border-oai-gray-800 hover:bg-oai-gray-100 dark:hover:bg-oai-gray-800 transition-colors select-none",children:p.from&&p.to?p.from===p.to?p.from:`${p.from} → ${p.to}`:"—"}),s.jsx(_r,{children:s.jsx(Nr,{sideOffset:8,side:"bottom",align:"end",className:"!z-[9999]",children:s.jsx(Sr,{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(Dr,{from:p.from,to:p.to,onApply:(P,L)=>{P&&b({from:P,to:L||P}),x(!1)},onCancel:()=>x(!1)})})})})]})]}),s.jsx("div",{className:"flex-1 min-h-0 flex flex-col",children:K&&(!O||O.length===0)?s.jsx("div",{className:"flex-1 flex items-center justify-center",children:s.jsx("p",{className:"text-sm text-oai-gray-400 dark:text-oai-gray-400",children:g("trend.zoom.loading")})}):l({rows:O,from:j,to:W,period:d,timeZoneLabel:a})})]})]})]})}function oo(e,t){if(!Array.isArray(e)||e.length===0)return 0;if(e.length===1)return e[0];const n=(e.length-1)*t,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 bg(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=oo(t,.25),o=oo(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 so=["#f472b6","#38bdf8","#34d399","#fbbf24","#a78bfa","#fb7185","#2dd4bf","#f97316","#6366f1","#ec4899","#14b8a6","#f59e0b"],xs={Input:"#38bdf8","Cached Input":"#14b8a6",Output:"#a78bfa","Reasoning Output":"#fb7185"},xg={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 ks(e){const t=e.toLowerCase();for(const[a,o]of Object.entries(xg))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)%so.length;return so[r]}function kg(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 wg(e,t){return e?.future?"predicted":e?.missing?"unsynced":t>0?"real":"real_zero"}const vg=.35,io=2,lo=4;function _g({value:e,displayValue:t,scale:n,index:r,row:a,totalBars:o,onMouseEnter:l,onMouseLeave:i}){const c=Vt(),u=wg(a,e),d=u==="predicted"||u==="unsynced",f=n.effectiveMax>0?t/n.effectiveMax*100:0;let h,y;u==="real"?(h=`${Math.max(f,2)}%`,y=`${lo}px`):d&&f>0?(h=`${f}%`,y=`${lo}px`):(h=`${io}px`,y=`${io}px`);const p=u==="real"?kg(a):[],b=p.reduce((v,w)=>v+w.value,0),k=u!=="real"||b<=0;return s.jsxs(Ue.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,p,u,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 rounded-t-[3px] cursor-pointer transition-all duration-200",style:{height:h,minHeight:y},children:k?s.jsx("div",{"data-trend-bar":"true",className:Re("h-full w-full group-hover:brightness-110 transition-all",u==="real"?"":"bg-oai-gray-100 dark:bg-oai-gray-800"),style:{opacity:d?vg:1,background:u==="real"?"#10b981":void 0}}):p.map((v,w)=>{const x=v.type==="token_type"?xs[v.name]:ks(v.name),M=`${v.value/b*100}%`;return s.jsx("div",{"data-trend-bar":w===0?"true":void 0,className:"w-full group-hover:brightness-110 transition-all",style:{height:M,background:x}},w)})})]})}function Ng(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 co=.98;function Sg(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 d=0;d<=a;d++)e[d]!==null&&(i+=e[d],c+=1);const u=c>0?i/c:r;t[n]=u*Math.pow(co,n-a)}else if(o!==null){let i=0,c=0;for(let d=l;d<e.length;d++)e[d]!==null&&(i+=e[d],c+=1);const u=c>0?i/c:o;t[n]=u*Math.pow(co,l-n)}else t[n]=0}return t}function ws({rows:e,from:t,to:n,period:r,timeZoneLabel:a,showTimeZoneLabel:o=!0,className:l="",embedded:i=!1,chartHeightClass:c="h-40",isZoom:u=!1,zoomConfig:d=null}){const f=A.useMemo(()=>Array.isArray(e)&&e.length?e:[],[e]),{rawValues:h,seriesValues:y,scale:p,interpolatedValues:b}=A.useMemo(()=>{const $=f.map(Ng),F=$.map(C=>C??0);return{rawValues:$,seriesValues:F,scale:bg(F),interpolatedValues:Sg($)}},[f]),{currency:k,rate:v}=At(),w=ag(r),[x,M]=A.useState(null),[T,D]=A.useState({x:0,y:0,shiftX:0,flipDown:!1}),[E,N]=A.useState(!1),O=A.useRef(null),j=A.useRef(null),W=($,F,C,S,R,z)=>{j.current&&(clearTimeout(j.current),j.current=null);const P=u?cg(F,w):F?.day||F?.hour||F?.month||"";M({row:F,value:C,segments:S,timeLabel:P,kind:R,displayValue:z});const L=$.currentTarget.querySelector('[data-trend-bar="true"]'),U=L&&L.parentElement?L.parentElement.getBoundingClientRect():$.currentTarget.getBoundingClientRect(),ee=O.current;if(!ee)return;const B=ee.getBoundingClientRect(),H=U.left-B.left+U.width/2,q=U.top-B.top,te=140;let re=0;H<te?re=te-H:H>B.width-te&&(re=B.width-te-H);const he=96+(u?22:0)+(S.length?Math.min(S.length*30+24,174):0),oe=q<he+12;D({x:H,y:q,shiftX:re,flipDown:oe})},K=()=>{j.current&&clearTimeout(j.current),j.current=setTimeout(()=>{M(null)},150)};return s.jsxs("div",{ref:O,className:Re("relative",!i&&"rounded-xl border border-oai-gray-200 dark:border-oai-gray-800 bg-white dark:bg-oai-gray-900 p-5",u&&"flex h-full flex-col",l),children:[!i&&s.jsxs("div",{className:"mb-3 flex items-start justify-between gap-2",children:[s.jsxs("div",{children:[s.jsx("h3",{className:"text-sm font-medium text-oai-gray-500 dark:text-oai-gray-300 uppercase tracking-wide",children:g("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})]}),d&&s.jsx("button",{type:"button",onClick:()=>N(!0),"aria-label":g("trend.zoom.open_aria"),title:g("trend.zoom.open_aria"),className:"shrink-0 p-1.5 rounded-md text-oai-gray-400 hover:text-oai-gray-700 dark:hover:text-oai-gray-200 hover:bg-oai-gray-100 dark:hover:bg-oai-gray-800 transition-colors",children:s.jsx(vl,{size:14})})]}),s.jsxs("div",{className:Re("space-y-3",u&&"flex flex-1 flex-col min-h-0 !space-y-0 gap-3"),children:[s.jsxs("div",{className:Re("flex gap-2",u&&"flex-1 min-h-0"),children:[s.jsx("div",{className:"flex shrink-0 flex-col justify-between text-right text-[10px] leading-none text-oai-gray-400 dark:text-oai-gray-500 tabular-nums",children:[1,.75,.5,.25,0].map($=>s.jsx("span",{children:$===0?"0":De(p.effectiveMax*$,{decimals:0})},$))}),s.jsxs("div",{className:Re("relative min-w-0 flex-1",u&&"min-h-0"),children:[s.jsx("div",{className:"absolute inset-0 flex flex-col justify-between pointer-events-none",children:[0,25,50,75,100].map($=>s.jsx("div",{className:"w-full border-t border-oai-gray-100 dark:border-oai-gray-800",style:{top:`${100-$}%`}},$))}),s.jsx("div",{className:Re("flex items-end gap-0.5 relative z-0",c),children:y.length>0?y.map(($,F)=>{const C=f[F],R=C?.missing||C?.future?Math.min(b[F]??0,p.effectiveMax):p.clippedValues[F]??0;return s.jsx(_g,{value:$,displayValue:R,scale:p,index:F,row:C,totalBars:y.length,onMouseEnter:W,onMouseLeave:K},F)}):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"})})})]})]}),u&&y.length>0&&s.jsx("div",{className:"flex gap-0.5 select-none",children:f.map(($,F)=>{const C=y.length-1,S=Math.max(1,Math.ceil(y.length/8)),R=F%S===0||F===C,z=F===0?"justify-start":F===C?"justify-end":"justify-center";return s.jsx("div",{className:Re("flex-1 min-w-0 flex",z),children:R&&s.jsx("span",{className:"text-[9px] text-oai-gray-400 dark:text-oai-gray-500 whitespace-nowrap font-mono",children:ug($,w)})},F)})}),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})]})]}),x&&s.jsxs("div",{className:"absolute z-[9999] w-0 h-0 transition-all duration-100 ease-out pointer-events-none",style:{left:`${T.x}px`,top:`${T.y}px`},children:[s.jsxs("div",{className:Re("absolute left-0 backdrop-blur-md bg-white/95 dark:bg-oai-gray-900/95 border border-oai-gray-200/50 dark:border-oai-gray-800/50 shadow-xl rounded-xl p-3.5 max-w-[280px] min-w-[220px] flex flex-col gap-2 animate-in fade-in zoom-in-95 duration-100",T.flipDown?"top-[10px]":"bottom-[10px]"),style:{transform:`translateX(calc(-50% + ${T.shiftX}px))`},children:[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:x.timeLabel}),x.kind==="predicted"&&s.jsx("span",{className:"text-[9px] font-semibold uppercase tracking-wider text-oai-gray-400 dark:text-oai-gray-500",children:"Predicted"}),x.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:x.kind==="predicted"||x.kind==="unsynced"?`~${Math.round(x.displayValue??0).toLocaleString()}`:x.value.toLocaleString()}),s.jsx("span",{className:"text-[10px] text-oai-gray-400 uppercase tracking-wider font-semibold",children:"Tokens"})]}),u&&(x.row?.total_cost_usd!=null||Number(x.row?.conversation_count)>0)&&s.jsxs("div",{className:"flex items-center gap-3 text-[11px] text-oai-gray-500 dark:text-oai-gray-400",children:[x.row?.total_cost_usd!=null&&s.jsxs("span",{children:[s.jsx("span",{className:"font-semibold text-oai-gray-700 dark:text-oai-gray-200",children:Je(x.row.total_cost_usd,{currency:k,rate:v})})," ",g("trend.zoom.tooltip.cost")]}),Number(x.row?.conversation_count)>0&&s.jsxs("span",{children:[s.jsx("span",{className:"font-semibold text-oai-gray-700 dark:text-oai-gray-200",children:Number(x.row.conversation_count).toLocaleString()})," ",g("trend.zoom.tooltip.conversations")]})]}),x.segments&&x.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:x.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:x.segments.map(({name:$,value:F,type:C})=>{const S=x.value||1,R=Math.round(F/S*100),z=C==="token_type"?xs[$]:ks($);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:$,children:$}),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:F.toLocaleString()}),s.jsxs("span",{className:"text-[9px] text-oai-gray-450 dark:text-oai-gray-500 min-w-[28px] text-right font-medium",children:[R,"%"]})]})]}),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:`${R}%`,backgroundColor:z,boxShadow:`0 0 4px ${z}55`}})})]},$)})})]}):null]})]}),s.jsx("div",{className:Re("absolute left-0 -translate-x-1/2 w-2.5 h-2.5 rotate-45 bg-white dark:bg-oai-gray-900 border-oai-gray-200/50 dark:border-oai-gray-800/50 shadow-sm",T.flipDown?"top-[6px] border-l border-t":"bottom-[6px] border-r border-b"),style:T.flipDown?{marginTop:"1px"}:{marginBottom:"1px"}})]}),E&&d&&s.jsx(pg,{zoomConfig:d,period:r,from:t,to:n,timeZoneLabel:a,onClose:()=>N(!1),renderChart:$=>s.jsx(ws,{embedded:!0,isZoom:!0,chartHeightClass:"h-full",...$})})]})}const uo="widgetOnboardingDismissed",fo="tokentracker_native_app",Mg=(()=>{try{return new URLSearchParams(window.location.search).get("app")==="1"?(localStorage.setItem(fo,"1"),!0):localStorage.getItem(fo)==="1"}catch{return!1}})();function jg({enterDelay:e=0}){const[t,n]=m.useState(()=>{try{return localStorage.getItem(uo)==="1"}catch{return!1}}),r=m.useCallback(()=>{n(!0);try{localStorage.setItem(uo,"1")}catch{}},[]);return!Mg||ll()?null:s.jsx(Fr,{initial:!1,children:!t&&s.jsxs(Ue.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":g("dashboard.widgets.dismiss_aria"),className:"absolute top-2.5 right-2.5 z-10 inline-flex items-center justify-center w-7 h-7 rounded-md text-oai-gray-400 hover:text-oai-gray-700 dark:hover:text-oai-gray-200 hover:bg-oai-gray-100 dark:hover:bg-oai-gray-800 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-oai-gray-300 dark:focus-visible:ring-oai-gray-600 transition-colors",children: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:g("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:g("dashboard.widgets.title")}),s.jsx("div",{className:"text-xs text-oai-gray-500 dark:text-oai-gray-400 mt-1 leading-snug",children:g("dashboard.widgets.hint")})]})]},"widget-onboarding-card")})}function Dg(e){const{copy:t,onOpenShare:n,screenshotMode:r,screenshotTitleLine1:a,screenshotTitleLine2:o,identityDisplayName:l,identityStartDate:i,activeDays:c,identitySubscriptions:u,identityScrambleDurationMs:d,projectUsageEntries:f,projectUsageLimit:h,setProjectUsageLimit:y,pulse:p,pulseComparedAtLabel:b,isLocalMode:k,trendRowsForDisplay:v,trendFromForDisplay:w,trendToForDisplay:x,trendZoomConfig:M,usageFrom:T,usageTo:D,period:E,trendTimeZoneLabel:N,activityHeatmapBlock:O,isCapturing:j,handleShareToX:W,screenshotTwitterButton:K,screenshotTwitterHint:$,periodsForDisplay:F,setSelectedPeriod:C,autoRefreshOptions:S,autoRefreshIntervalMs:R,onAutoRefreshIntervalChange:z,customFrom:P,customTo:L,onCustomRangeApply:U,customRangeOpen:ee,onCustomRangeOpenChange:B,summaryLabel:H,summaryValue:q,summaryUpdatedAtLabel:te,summaryCostValue:re,usageInsights:he,costInfoEnabled:oe,openCostModal:de,costModalOpen:qe,closeCostModal:be,allowBreakdownToggle:Te,refreshAll:le,usageLoadingState:we,dataHealthMessage:ve,fleetData:Fe,hasDetailsActual:Pe,dailyEmptyPrefix:Xt,installSyncCmd:Qt,dailyEmptySuffix:it,detailsColumns:Z,ariaSortFor:bt,toggleSort:_e,sortIconFor:Ne,pagedDetails:Et,dailyBreakdownRows:xt,dailyBreakdownColumns:Jt,dailyBreakdownAriaSortFor:kt,dailyBreakdownSortIconFor:wt,dailyBreakdownDateKey:Zt,detailsDateKey:et,renderDetailDate:$t,renderDailyBreakdownDate:Ee,renderDetailCell:Se,DETAILS_PAGED_PERIODS:tt,detailsPageCount:vt,detailsPage:_t,setDetailsPage:X}=e,ae=null,G=null,ne=Array.isArray(Fe)&&Fe.some(xe=>Vr(xe)&&un(xe)!==null);return s.jsxs(s.Fragment,{children:[s.jsx(Rl,{bare:!r,hideHeader:r,header:ae,footer:r?null:G,className:r?"screenshot-mode":"",children:r?s.jsxs("div",{className:"flex flex-col gap-4",children:[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:a}),s.jsx("span",{className:"text-2xl md:text-3xl font-semibold text-oai-black dark:text-oai-white tracking-tight leading-none",children:o})]})}),s.jsx(Va,{period:E,periods:F,onPeriodChange:C,autoRefreshOptions:S,autoRefreshIntervalMs:R,onAutoRefreshIntervalChange:z,summaryLabel:H,summaryValue:q,summaryUpdatedAtLabel:te,summaryCostValue:re,usageInsights:he,onCostInfo:oe?de:null,onRefresh:r?null:le,loading:we,onOpenShare:r?null:n,customFrom:P,customTo:L,onCustomRangeApply:U,customRangeOpen:ee,onCustomRangeOpenChange:B}),s.jsxs("div",{className:"grid grid-cols-1 lg:grid-cols-6 gap-4",children:[s.jsx("div",{className:"lg:col-span-2 min-w-0",children:s.jsx(Ta,{rankLabel:i??t("identity_card.rank_placeholder"),streakDays:c,subscriptions:u})}),O?s.jsx("div",{className:"lg:col-span-4 min-w-0",children:O}):null,s.jsx("div",{className:"lg:col-span-6 min-w-0",children:s.jsx(to,{fleetData:Fe,from:T,to:D})})]}),s.jsxs("div",{className:"flex flex-col items-center gap-2","data-screenshot-exclude":"true",style:j?{display:"none"}:void 0,children:[s.jsx($n,{type:"button",onClick:W,variant:"primary",size:"lg",disabled:j,children:K}),s.jsx("span",{className:"text-sm text-oai-gray-500 dark:text-oai-gray-300",children:$})]})]}):s.jsxs("div",{className:"flex flex-col gap-4",children:[ve?s.jsx(dt,{delay:.08,children:s.jsx("div",{className:"rounded-lg border border-oai-gray-200 bg-oai-gray-50 px-4 py-3 text-sm text-oai-gray-700 dark:border-oai-gray-800 dark:bg-oai-gray-900/70 dark:text-oai-gray-300",children:ve})}):null,s.jsxs("div",{className:"grid grid-cols-1 lg:grid-cols-6 gap-4",children:[s.jsx("div",{className:"lg:col-span-3 min-w-0",children:s.jsx(dt,{delay:.05,className:"h-full",children:s.jsx(Va,{period:E,periods:F,onPeriodChange:C,autoRefreshOptions:S,autoRefreshIntervalMs:R,onAutoRefreshIntervalChange:z,summaryLabel:H,summaryValue:q,summaryUpdatedAtLabel:te,summaryCostValue:re,usageInsights:he,onCostInfo:oe?de:null,onRefresh:r?null:le,loading:we,onOpenShare:r?null:n,customFrom:P,customTo:L,onCustomRangeApply:U,customRangeOpen:ee,onCustomRangeOpenChange:B,emphasized:!0})})}),s.jsx("div",{className:"lg:col-span-3 min-w-0",children:s.jsx(dt,{delay:.09,children:s.jsx(ws,{rows:v,from:w,to:x,period:E,timeZoneLabel:N,showTimeZoneLabel:!1,zoomConfig:M})})}),s.jsx("div",{className:"lg:col-span-2 min-w-0",children:s.jsx(dt,{delay:.13,children:s.jsxs("div",{className:"flex flex-col gap-4",children:[s.jsx(fd,{pulse:p,period:E,comparedAtLabel:b}),s.jsx(Ta,{rankLabel:i??t("identity_card.rank_placeholder"),streakDays:c,subscriptions:u})]})})}),s.jsx("div",{className:"lg:col-span-4 min-w-0",children:s.jsx(dt,{delay:.19,children:s.jsx(to,{fleetData:Fe,from:T,to:D,showInlineContext:!1})})}),O?s.jsx("div",{className:ne?"lg:col-span-2 min-w-0":"lg:col-span-6 min-w-0",children:s.jsx(dt,{delay:.25,children:O})}):null,ne?s.jsx("div",{className:O?"lg:col-span-4 min-w-0":"lg:col-span-6 min-w-0",children:s.jsx(dt,{delay:.31,children:s.jsx(rg,{fleetData:Fe,from:T,to:D})})}):null,k?s.jsx("div",{className:"lg:col-span-6",children:s.jsx(jg,{enterDelay:.37})}):null]}),s.jsx(dt,{delay:.43,children:s.jsx(rd,{projectEntries:f,projectLimit:h,onProjectLimitChange:y,copy:t,hasDetailsActual:Pe,dailyEmptyPrefix:Xt,installSyncCmd:Qt,dailyEmptySuffix:it,detailsColumns:Z,ariaSortFor:bt,toggleSort:_e,sortIconFor:Ne,pagedDetails:Et,dailyBreakdownRows:xt,dailyBreakdownColumns:Jt,dailyBreakdownAriaSortFor:kt,dailyBreakdownSortIconFor:wt,dailyBreakdownDateKey:Zt,detailsDateKey:et,renderDetailDate:$t,renderDailyBreakdownDate:Ee,renderDetailCell:Se,DETAILS_PAGED_PERIODS:tt,period:E,detailsPageCount:vt,detailsPage:_t,setDetailsPage:X})})]})}),s.jsx(ed,{isOpen:qe,onClose:be,fleetData:Fe})]})}function vs(){return typeof window>"u"?!1:!!window?.webkit?.messageHandlers?.nativeBridge}const Tt=new Map,Pt=new Map;function _s(){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||!Tt.has(n))return;const r=Tt.get(n);Tt.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||!Pt.has(n))return;const r=Pt.get(n);Pt.delete(n),r({ok:!!t.ok,error:typeof t.error=="string"?t.error:void 0})}))}async function Cg(e){if(!vs()||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"};_s();const n=`copy_${Date.now()}_${Math.random().toString(36).slice(2,8)}`;return new Promise(r=>{const a=window.setTimeout(()=>{Pt.has(n)&&(Pt.delete(n),r({ok:!1,error:"timeout"}))},8e3);Pt.set(n,o=>{window.clearTimeout(a),r(o)});try{t.postMessage({type:"action",name:"copyImageToClipboard",requestId:n,dataUrl:e})}catch(o){Pt.delete(n),window.clearTimeout(a),r({ok:!1,error:o?.message||String(o)})}})}async function mo(e,t){if(!vs()||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"};_s();const r=`save_${Date.now()}_${Math.random().toString(36).slice(2,8)}`;return new Promise(a=>{const o=window.setTimeout(()=>{Tt.has(r)&&(Tt.delete(r),a({ok:!1,error:"timeout"}))},8e3);Tt.set(r,l=>{window.clearTimeout(o),a(l)});try{n.postMessage({type:"action",name:"saveImageToDownloads",requestId:r,filename:t,dataUrl:e})}catch(l){Tt.delete(r),window.clearTimeout(o),a({ok:!1,error:l?.message||String(l)})}})}const Ns=1200,Ss=1630,Ms={broadsheet:{width:1200,height:1630},"annual-report":{width:1080,height:1865}},Tg="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 mr=!1;function Pg(){if(typeof document>"u"||mr)return;if(document.querySelector('link[data-share-card-fonts="true"]')){mr=!0;return}const t=document.createElement("link");t.rel="stylesheet",t.href=Tg,t.dataset.shareCardFonts="true",t.crossOrigin="anonymous",document.head.appendChild(t),mr=!0}async function Og(){if(typeof document>"u")return;const e=document.fonts;if(!(!e||typeof e.ready?.then!="function"))try{await e.ready}catch{}}async function Wg(e,t={}){if(typeof window>"u"||!e)return null;Pg(),await Og(),await new Promise(c=>requestAnimationFrame(()=>c(null)));const{toBlob:n,toPng:r}=await Mo(async()=>{const{toBlob:c,toPng:u}=await import("./index-BeoRn2gJ.js");return{toBlob:c,toPng:u}},[]),a=t.pixelRatio??2,o=e.offsetWidth||Ns,l=e.offsetHeight||Ss,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 hr(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 ho(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 Tr(e){const t=je(e);return Number.isFinite(t)?t:0}function Ag(e){return e?Tr(e.billable_total_tokens??e.total_tokens):0}function Fg(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,u=Number.isFinite(i?.level)?Math.max(0,Math.min(4,Math.round(i.level))):0;i?.day&&!c&&(n+=1,u>0&&(r+=1));const d=i?.billable_total_tokens??i?.total_tokens??i?.value??0,f=Number.isFinite(d)?Math.max(0,d):0;return{day:typeof i?.day=="string"?i.day:"",level:u,value:f,future:c}})),totalDays:n,activeDays:r}}function Eg(e){const{handle:t,startDate:n,activeDays:r,summary:a,topModels:o,rank:l,period:i,periodFrom:c,periodTo:u,heatmap:d,capturedAt:f,currency:h,exchangeRate:y}=e,p=Ag(a),b=Tr(a?.total_cost_usd),k=Array.isArray(o)?o.slice(0,3).map(w=>({id:w?.id??null,name:typeof w?.name=="string"&&w.name?w.name:"—",tokens:Tr(w?.tokens),percent:typeof w?.percent=="string"&&w.percent?w.percent:"0.0"})):[],v=Fg(d);return{handle:t||"—",startDate:n||null,activeDays:Number.isFinite(r)&&r>0?Math.floor(r):0,totalTokens:p,totalCost:b,period:i,periodFrom:c,periodTo:u,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(y)&&y>0?y:1}}const $g=["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 Ig(e){const t=$g[e];return t?g(t):"—"}function js(e,t){return g("share.date.month_year",{month:Ig(e),year:t})}function Rg(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:js(a,n)}function Lg(e){if(e.period==="total")return g("share.issue.all_time");if(e.period==="day"&&e.periodTo)return e.periodTo.replace(/-/g,".");if(e.period==="custom"&&e.periodFrom&&e.periodTo)return`${e.periodFrom.replace(/-/g,".")} — ${e.periodTo.replace(/-/g,".")}`;if(e.periodTo){const t=new Date(`${e.periodTo}T00:00:00Z`);if(!Number.isNaN(t.getTime()))return js(t.getUTCMonth(),t.getUTCFullYear())}return g(`usage.period.${e.period}`)}function Pr(e){return Number.isFinite(e)?Math.round(e).toLocaleString("en-US"):"—"}function Ds(e,t={}){const{currency:n="USD",rate:r=1}=t,a=zn(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 Bg(e){const t=e.topModels[0];if(t){const n=parseFloat(t.percent);return Number.isFinite(n)&&n>=60?g("share.hook.top_loyal",{percent:Math.round(n),name:t.name}):e.activeDays>=60?g("share.hook.days_record",{days:e.activeDays}):Number.isFinite(n)&&n>=30?g("share.hook.top_led",{name:t.name,percent:Math.round(n)}):e.topModels.length>1?g("share.hook.multi_models",{count:e.topModels.length,days:e.activeDays}):g("share.hook.days_with_model",{days:e.activeDays,name:t.name})}return e.activeDays>0?g("share.hook.days_record",{days:e.activeDays}):g("share.hook.new_chapter")}function Yg(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 zg(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 Hg({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,u=(c-1)*r,d=Math.max(4,(n-u)/c),f=7*d+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,y)=>(Array.isArray(h)?h:[]).map((b,k)=>{if(k>=7)return null;const v=zg(b),w=y*(d+r),x=k*(d+r),M=v===null?i:l[v];return s.jsx("rect",{x:w,y:x,width:d,height:d,rx:a,ry:a,fill:M},`${y}-${k}`)}))})}const Ug="oklch(0.97 0.01 85)",Oe="oklch(0.18 0.02 85)",ft="oklch(0.38 0.015 85)",yo="oklch(0.55 0.012 85)",St="oklch(0.55 0.22 25)",Mt='"Instrument Serif", "Times New Roman", Georgia, serif',qg='"Inter Tight", "Helvetica Neue", Arial, sans-serif',Vg=["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 Cs({data:e}){const t=Lg(e),n=Pr(e.totalTokens),r=Ds(e.totalCost,{currency:e.currency,rate:e.exchangeRate}),a=Rg(e.startDate),o=Yg(n,{baseSize:188,baseChars:9,shrinkPerChar:14,minSize:104}),l=Bg(e),i=Array.isArray(e.heatmapWeeks)&&e.heatmapWeeks.length>0;return s.jsxs("div",{style:{width:"100%",height:"100%",background:Ug,color:Oe,fontFamily:qg,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 ${yo}`},children:[s.jsxs("div",{style:{display:"flex",alignItems:"center",gap:14,fontSize:14,fontWeight:500,letterSpacing:"0.22em",textTransform:"uppercase",color:Oe},children:[s.jsx("div",{style:{width:10,height:10,borderRadius:"50%",background:St}}),"The Token Tracker"]}),s.jsxs("div",{style:{fontSize:12,letterSpacing:"0.22em",textTransform:"uppercase",color:ft,textAlign:"right"},children:[g("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:ft,marginBottom:6},children:g("share.card.broadsheet.by")}),s.jsx("div",{style:{fontFamily:Mt,fontSize:52,fontStyle:"italic",lineHeight:1,color:Oe,letterSpacing:"-0.01em"},children:e.handle})]}),s.jsxs("div",{style:{fontSize:12,letterSpacing:"0.18em",textTransform:"uppercase",color:ft,textAlign:"right",lineHeight:1.6},children:[g("share.card.broadsheet.tracked_since"),s.jsx("br",{}),s.jsx("span",{style:{color:Oe},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:St,marginBottom:10},children:g("share.card.broadsheet.total_tokens")}),s.jsx("div",{style:{fontFamily:Mt,fontSize:o,fontWeight:400,lineHeight:.86,letterSpacing:"-0.032em",color:Oe,fontFeatureSettings:'"lnum" 1, "tnum" 1',whiteSpace:"nowrap",overflow:"hidden"},children:n}),s.jsxs("div",{style:{marginTop:14,fontFamily:Mt,fontStyle:"italic",fontSize:34,lineHeight:1.15,color:Oe,letterSpacing:"-0.005em",whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis"},children:["“",l,"”"]}),s.jsx("div",{style:{marginTop:14,height:1,background:St,width:"100%"}}),s.jsxs("div",{style:{marginTop:10,display:"flex",justifyContent:"space-between",fontSize:13,letterSpacing:"0.16em",textTransform:"uppercase",color:ft},children:[s.jsxs("span",{children:[g("share.card.broadsheet.estimated_spend")," · ",r]}),s.jsx("span",{children:g("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:Oe,fontWeight:600},children:g("share.card.broadsheet.heatmap_title")}),s.jsx("div",{style:{fontSize:11,letterSpacing:"0.18em",textTransform:"uppercase",color:ft},children:g("share.card.broadsheet.heatmap_days_on_record",{active:e.heatmapActiveDays,total:e.heatmapTotalDays})})]}),s.jsx(Hg,{weeks:e.heatmapWeeks,palette:Vg,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 ${Oe}`,paddingBottom:10,marginBottom:6},children:[s.jsx("div",{style:{fontSize:12,letterSpacing:"0.3em",textTransform:"uppercase",color:Oe,fontWeight:600},children:g("share.card.broadsheet.roster_title")}),s.jsx("div",{style:{fontSize:11,letterSpacing:"0.18em",textTransform:"uppercase",color:ft},children:g("share.card.broadsheet.roster_subtitle")})]}),e.topModels.length===0?s.jsx("div",{style:{fontFamily:Mt,fontStyle:"italic",fontSize:26,color:ft,paddingTop:14},children:g("share.card.broadsheet.empty")}):e.topModels.map((c,u)=>s.jsxs("div",{style:{display:"grid",gridTemplateColumns:"52px 1fr auto 68px",alignItems:"baseline",gap:16,padding:"13px 0",borderBottom:`1px solid ${yo}`},children:[s.jsx("div",{style:{fontFamily:Mt,fontSize:34,fontStyle:"italic",color:St,lineHeight:1},children:String(u+1).padStart(2,"0")}),s.jsx("div",{style:{fontFamily:Mt,fontSize:32,color:Oe,lineHeight:1.1,letterSpacing:"-0.01em",whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis"},children:c.name}),s.jsx("div",{style:{fontFamily:Mt,fontSize:28,color:Oe,fontFeatureSettings:'"lnum" 1, "tnum" 1',whiteSpace:"nowrap"},children:Pr(c.tokens)}),s.jsxs("div",{style:{fontSize:13,letterSpacing:"0.1em",color:ft,textAlign:"right",fontFeatureSettings:'"tnum" 1'},children:[c.percent,"%"]})]},c.id||c.name))]}),s.jsxs("footer",{style:{marginTop:18,paddingTop:12,borderTop:`1px solid ${Oe}`,display:"flex",justifyContent:"space-between",alignItems:"center",fontSize:12,letterSpacing:"0.22em",textTransform:"uppercase",color:Oe},children:[s.jsxs("div",{style:{display:"flex",gap:28},children:[s.jsxs("span",{children:[g("share.card.broadsheet.global_rank")," ",s.jsxs("span",{style:{color:St},children:["№ ",e.rank!=null?e.rank:"—"]})]}),s.jsxs("span",{children:[g("share.card.broadsheet.active_days")," ",s.jsx("span",{style:{color:St},children:g("share.card.broadsheet.days_count",{days:e.activeDays})})]})]}),s.jsxs("div",{children:[g("share.card.broadsheet.track_yours")," ",s.jsx("span",{style:{color:St},children:"→ tokentracker.cc"})]})]})]})}const Kg=Ms["annual-report"].width,Gg="#0a0820",mt="#ffffffee",Dt="rgba(255,255,255,0.45)",yr="#a78bfa",Xg={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(", ")},Pn={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"},Or='"Space Grotesk", "Inter Tight", sans-serif',gr='"Inter Tight", sans-serif',Qg="rgba(255,255,255,0.06)",Ts=[Qg,"#4a3d8f","#6b5cbe","#9060e0","#d946ef"],Ps=48,Os=28,Bn=4,Ws=20,Jg=Kg-Ps*2-Os*2,Zg=(Jg-Ws*2)/3,Wr=Math.min(Math.floor((Zg-Bn*6)/7),40),e0=Wr*7+Bn*6;function t0(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,u=(c-1)*i,d=Math.floor(u);return Math.round((t[d]??0)+((t[Math.min(c-1,d+1)]??0)-(t[d]??0))*(u-d))},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 n0(e){if(!Array.isArray(e))return[];const t={},n=t0(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 r0(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 a0=["","Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];function o0(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 go(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 s0({data:e}){const t=r0(e.cells);return s.jsxs("div",{children:[s.jsx("div",{style:{fontSize:16,fontWeight:600,color:Dt,fontFamily:Or,marginBottom:4},children:a0[e.month]}),s.jsx("div",{style:{display:"flex",flexDirection:"column",gap:Bn},children:t.map((n,r)=>s.jsx("div",{style:{display:"flex",gap:Bn},children:n.map((a,o)=>{const l=a?Math.min(4,Math.max(0,a.level||0)):-1;return s.jsx("div",{style:{width:Wr,height:Wr,borderRadius:4,background:l<0?"transparent":Ts[l]}},o)})},r))})]})}function i0({data:e}){const t=n0(e.heatmapWeeks),n=o0(e.heatmapWeeks),r=e.topModels[0],a=e.avatarUrl||null,o=go(a),l=go("/neon_bg.png"),i=(e.handle||"?")[0].toUpperCase(),c=16;return s.jsxs("div",{style:{width:"100%",height:"100%",background:Gg,fontFamily:Or,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:Ps,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:Dt,lineHeight:1.2},children:"Token Tracker"}),s.jsx("div",{style:{fontSize:36,fontWeight:700,lineHeight:1.15,color:mt},children:g("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:mt},children:i})}),s.jsx("div",{style:{fontSize:32,fontWeight:700,color:mt},children:e.handle})]})]}),s.jsxs("div",{style:{...Xg,borderRadius:22,padding:Os,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:Dt},children:[s.jsx("span",{children:g("share.card.annual.less")}),Ts.map((u,d)=>s.jsx("div",{style:{width:16,height:16,borderRadius:3,background:u}},d)),s.jsx("span",{children:g("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:g("share.card.annual.heatmap_title")})]}),s.jsx("div",{style:{display:"grid",gridTemplateColumns:`repeat(3,${e0}px)`,gap:`8px ${Ws}px`,justifyContent:"center"},children:t.map(u=>s.jsx(s0,{data:u},u.month))})]}),s.jsxs("div",{style:{display:"grid",gridTemplateColumns:"1fr 1fr",gap:c,marginBottom:c},children:[s.jsxs("div",{style:{...Pn,borderRadius:22,padding:"28px 16px",textAlign:"center"},children:[s.jsx("div",{style:{fontFamily:gr,fontSize:52,fontWeight:700,color:mt,letterSpacing:"-0.02em",lineHeight:1},children:Pr(e.totalTokens)}),s.jsx("div",{style:{fontSize:22,color:Dt,marginTop:12},children:g("share.card.annual.total_tokens")})]}),s.jsxs("div",{style:{...Pn,borderRadius:22,padding:"28px 16px",textAlign:"center"},children:[s.jsx("div",{style:{fontFamily:gr,fontSize:52,fontWeight:700,color:mt,letterSpacing:"-0.02em",lineHeight:1},children:Ds(e.totalCost,{currency:e.currency,rate:e.exchangeRate})}),s.jsx("div",{style:{fontSize:22,color:Dt,marginTop:12},children:g("share.card.annual.estimated_cost")})]})]}),s.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:c},children:[s.jsxs("div",{style:{...Pn,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:yr,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:Dt},children:g("share.card.annual.longest_streak")})]}),s.jsx("span",{style:{fontFamily:gr,fontSize:28,fontWeight:700,color:mt},children:g("share.card.annual.days_count",{days:n})})]}),s.jsxs("div",{style:{...Pn,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:yr,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:Dt},children:g("share.card.annual.top_model")})]}),s.jsx("span",{style:{fontFamily:Or,fontSize:28,fontWeight:700,color:mt},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:mt},children:"Token Tracker"})]}),s.jsx("span",{style:{fontSize:22,fontWeight:600,color:yr},children:"tokentracker.cc"})]})]})]})}const As=[{id:"annual-report",labelKey:"share.variant.neon"},{id:"broadsheet",labelKey:"share.variant.broadsheet"}],l0={broadsheet:Cs,"annual-report":i0};function Fs(e){return Ms[e]||{width:Ns,height:Ss}}function c0(e){const t=As.find(n=>n.id===e);return t?.labelKey?g(t.labelKey):e}const po=m.forwardRef(function({data:t,variant:n},r){const a=l0[n]||Cs,{width:o,height:l}=Fs(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 On(){return typeof window>"u"?!1:!!window?.webkit?.messageHandlers?.nativeBridge}const d0=440;function u0(){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 pr({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 f0({open:e,onClose:t,data:n,twitterText:r}){const[a,o]=m.useState(null),[l,i]=m.useState(""),[c,u]=m.useState("annual-report"),d=m.useRef(null),{toast:f,push:h}=u0(),y=cl(),p=m.useMemo(()=>{const N=y?.user;if(!N||typeof N!="object")return null;const O=N.user_metadata||{},j=N.profile||{},W=O.avatar_url||O.picture||j.avatar_url||N.avatar_url;return typeof W=="string"&&W.trim()?W.trim():null},[y?.user]);m.useEffect(()=>{e&&(o(null),i(n?.handle||""))},[e,n?.handle]);const b=n&&{...n,handle:l||n.handle,avatarUrl:p},{width:k,height:v}=Fs(c),w=d0/k;m.useEffect(()=>{if(!e)return;const N=O=>{O.key==="Escape"&&t?.()};return window.addEventListener("keydown",N),()=>window.removeEventListener("keydown",N)},[e,t]);const x=m.useCallback(async()=>{const N=d.current;if(!N)return null;try{return await Wg(N)}catch(O){return console.warn("[share] capture failed",O),null}},[]),M=m.useCallback(async()=>{if(a)return;o("copy");const N=await x();if(!N){h(g("share.toast.failed"),"error"),o(null);return}let O=!1;if(On()){const j=await hr(N);j&&(O=(await Cg(j)).ok)}else O=await kr(N);h(O?g("share.toast.copied"):g("share.toast.failed"),O?"success":"error"),o(null)},[a,x,h]),T=m.useCallback(()=>`tokentracker-share-${Date.now()}.png`,[]),D=m.useCallback(async()=>{if(a)return;o("download");const N=await x();if(!N){h(g("share.toast.failed"),"error"),o(null);return}if(On()){const j=await hr(N);if(j&&(await mo(j,T())).ok){h(g("share.toast.downloaded"),"success"),o(null);return}}const O=ho(N,T());h(O?g("share.toast.downloaded"):g("share.toast.failed"),O?"success":"error"),o(null)},[a,x,T,h]),E=m.useCallback(async()=>{if(a)return;o("x");const N=await x();if(!N){h(g("share.toast.failed"),"error"),o(null);return}if(On()){const K=await hr(N);K&&(await mo(K,T()),h(g("share.toast.downloaded"),"success"))}else await kr(N)?h(g("share.toast.copied"),"success"):ho(N,T());const O=new URL("https://twitter.com/intent/tweet");r&&O.searchParams.set("text",r);const j=y?.user?.id,W=typeof j=="string"&&j?`/u/${j}`:"/";if(O.searchParams.set("url",`https://www.tokentracker.cc${W}?ref=share`),On())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,x,h,r,T,y]);return e?s.jsxs("div",{role:"dialog","aria-modal":"true","aria-label":g("share.modal.title"),"data-screenshot-exclude":"true",className:"fixed inset-0 z-[9999] flex items-center justify-center p-4 sm:p-6",style:{background:"rgba(10,10,10,0.72)"},onClick:N=>{N.target===N.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(po,{ref:d,data:b,variant:c})}),s.jsxs(Ue.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*w,height:v*w,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(${w})`,transformOrigin:"top left"},children:s.jsx(po,{data:b,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:g("share.modal.title")}),s.jsx("p",{className:"mt-1 text-xs text-oai-gray-500 dark:text-oai-gray-400",children:g("share.modal.subtitle")})]}),s.jsx("button",{type:"button",onClick:t,"aria-label":g("share.modal.close"),className:"p-1.5 -mt-1 -mr-1 rounded-md text-oai-gray-500 hover:text-oai-black dark:hover:text-oai-white hover:bg-oai-gray-100 dark:hover:bg-oai-gray-800 transition-colors",children: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:g("share.modal.name_label")}),s.jsx("input",{id:"share-handle",type:"text",value:l,onChange:N=>i(N.target.value),placeholder:g("share.modal.name_placeholder"),className:"w-full px-3 py-2 text-sm rounded-lg border border-oai-gray-200 dark:border-oai-gray-800 bg-white dark:bg-oai-gray-900 text-oai-black dark:text-oai-white placeholder:text-oai-gray-400 dark:placeholder:text-oai-gray-600 focus:outline-none focus:ring-1 focus:ring-inset focus:ring-oai-brand transition-colors"})]}),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:g("share.modal.style_label")}),s.jsx("div",{className:"flex gap-2",children:As.map(N=>s.jsx("button",{type:"button",onClick:()=>u(N.id),className:["flex-1 px-3 py-2 text-sm rounded-lg border transition-colors",c===N.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:c0(N.id)},N.id))})]}),s.jsxs("div",{className:"grid grid-cols-1 gap-2",children:[s.jsxs(pr,{onClick:E,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:g("share.modal.action.x")})]}),s.jsx("span",{className:"text-[11px] opacity-70",children:a==="x"?g("share.toast.working"):g("share.modal.hint.x")})]}),s.jsxs(pr,{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("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:g("share.modal.action.download")})]}),s.jsx("span",{className:"text-[11px] text-oai-gray-500 dark:text-oai-gray-400",children:"PNG"})]}),s.jsxs(pr,{onClick:M,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:g("share.modal.action.copy")})]}),s.jsx("span",{className:"text-[11px] text-oai-gray-500 dark:text-oai-gray-400",children:g("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:g("share.modal.footer")})})]})]}),s.jsx(Fr,{children:f?s.jsx(Ue.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 m0(e){const{enabled:t,handle:n,startDate:r,activeDays:a,summary:o,topModels:l,period:i,periodFrom:c,periodTo:u,heatmap:d,accessToken:f,userId:h,currency:y,exchangeRate:p}=e,[b,k]=m.useState(null),v=p;return m.useEffect(()=>{if(!t||!h&&!pt())return;let w=!1;return(async()=>{try{const M=await dl({accessToken:f,userId:h,period:i==="day"||i==="custom"?"week":i,metric:"all",limit:100,offset:0});if(w)return;const D=(Array.isArray(M?.entries)?M.entries:Array.isArray(M)?M:[]).find(N=>N?.is_me===!0),E=typeof D?.rank=="number"?D.rank:null;k(E)}catch{w||k(null)}})(),()=>{w=!0}},[t,f,h,i]),m.useMemo(()=>Eg({handle:n,startDate:r,activeDays:a,summary:o,topModels:l,rank:b,period:i,periodFrom:c,periodTo:u,heatmap:d,currency:y,exchangeRate:typeof v=="number"?v:void 0}),[n,r,a,o,l,b,i,c,u,d,y,v])}const h0=["day","24h","week","month","total","custom"],Es="tt:dashboard-auto-refresh-ms",fn=3e4,$s=[{value:0,labelKey:"usage.auto_refresh.off"},{value:3e4,labelKey:"usage.auto_refresh.30s"},{value:6e4,labelKey:"usage.auto_refresh.60s"},{value:12e4,labelKey:"usage.auto_refresh.120s"}],y0=3e4,g0=6e4,br=new Set(["day","hour","month"]),sn=new Set(["day","24h","total","custom"]),p0=new Set($s.map(e=>e.value));function Is(e){if(e==null||e==="")return fn;const t=Number(e);return Number.isFinite(t)&&p0.has(t)?t:fn}function b0(){if(typeof window>"u")return fn;try{return Is(window.localStorage?.getItem(Es))}catch{return fn}}function x0(e){const n=(typeof e?.stdout=="string"?e.stdout:"").match(/New 30-min buckets queued:\s*(\d+)/i);return n?Number(n[1])>0:!0}function xr(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 Wn(e){return e?Ot(e,null):null}function bo(e){return e?e?.billable_total_tokens??e?.value??e?.total_tokens:null}function k0(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 w0(e,t){return new Date(Date.UTC(e.getUTCFullYear(),e.getUTCMonth(),e.getUTCDate()+t))}function E0({baseUrl:e,auth:t,signedIn:n,sessionSoftExpired:r,publicMode:a=!1,publicToken:o=null,onMainContentVisible:l}){const{resolvedLocale:i}=ul(),{currency:c,rate:u}=At(),[d,f]=m.useState(!1),[h,y]=m.useState(null),[p,b]=m.useState(()=>typeof window>"u"||!window.matchMedia?!1:window.matchMedia("(max-width: 640px)").matches),k=m.useMemo(()=>typeof window>"u"?!1:fl(window.location.search),[]),[v,w]=m.useState(!1),[x,M]=m.useState(!1),T=2200,[D,E]=m.useState(!0),[N,O]=m.useState(!1),[j,W]=m.useState(b0),[K,$]=m.useState(()=>Date.now()),[F,C]=m.useState(()=>Date.now()),S=m.useRef(!1),R=m.useRef(!1),z=m.useRef(0),P=m.useRef(null),L=m.useRef(!1),U=pt(),ee=n&&!r,B=m.useMemo(()=>ee&&(typeof t=="function"||typeof t=="string"||t&&typeof t=="object")?t:null,[t,ee]),H=ee?B:null,q=a?ml(o):H,te=ee&&Kt(H),re=n&&r&&!a,he=typeof window<"u"&&(window.location.hostname==="localhost"||window.location.hostname==="127.0.0.1");m.useEffect(()=>{if(!he&&(!n||U||a)){y(null);return}if(!he&&!te){y(null);return}let _=!0;return(async()=>{let I=null;try{I=await Wt(H)}catch{I=null}if(_){if(!I&&!he){y(null);return}try{const Y=await hl({baseUrl:e,accessToken:I});if(!_)return;y(Y&&typeof Y=="object"?Y:null)}catch{if(!_)return;y(null)}}})(),()=>{_=!1}},[te,e,H,U,a,n]),m.useEffect(()=>{if(typeof window>"u"||!window.matchMedia)return;const _=window.matchMedia("(max-width: 640px)"),I=()=>b(_.matches);return I(),_.addEventListener?(_.addEventListener("change",I),()=>_.removeEventListener("change",I)):(_.addListener(I),()=>_.removeListener(I))},[]);const oe=m.useMemo(()=>No(),[]),de=m.useMemo(()=>_o(),[]),qe=m.useMemo(()=>yl(),[]),be=m.useMemo(()=>qe||new Date(K),[K,qe]),Te=a?null:t?.userId||t?.email||"default",[le,we]=m.useState("day"),[ve,Fe]=m.useState(null),[Pe,Xt]=m.useState(null),[Qt,it]=m.useState(!1),Z=k?"total":le,bt=m.useMemo(()=>Z==="custom"&&ve&&Pe?{from:ve,to:Pe}:gl(Z,{timeZone:oe,offsetMinutes:de,now:be}),[be,Z,oe,de,ve,Pe]),_e=bt.from,Ne=bt.to,Et=m.useMemo(()=>pl({timeZone:oe,offsetMinutes:de}),[oe,de]),xt=m.useMemo(()=>bl({timeZone:oe,offsetMinutes:de}),[oe,de]),Jt=m.useMemo(()=>`Local time (${xt})`,[xt]),kt=oe,wt=de,Zt=Et,et=m.useMemo(()=>mn({timeZone:oe,offsetMinutes:de,date:be}),[be,oe,de]),$t=m.useMemo(()=>{const _=k0(et)||new Date,I=w0(_,-29);return{from:st(I),to:st(_)}},[et]),{daily:Ee,summary:Se,rolling:tt,source:vt,loading:_t,error:X,refresh:ae}=wa({baseUrl:e,accessToken:q,guestAllowed:re,from:_e,to:Ne,includeDaily:Z!=="total",cacheKey:Te,timeZone:oe,tzOffsetMinutes:de,now:be}),{daily:G,loading:ne,refresh:xe}=wa({baseUrl:e,accessToken:q,guestAllowed:re,from:$t.from,to:$t.to,includeDaily:!0,cacheKey:Te?`${Te}.daily-breakdown`:"daily-breakdown",timeZone:oe,tzOffsetMinutes:de,now:be}),{breakdown:J,loading:qn,refresh:vn}=xc({baseUrl:e,accessToken:q,guestAllowed:re,from:_e,to:Ne,cacheKey:Te,timeZone:oe,tzOffsetMinutes:de}),{pulse:Vn,refresh:It}=Ac({baseUrl:e,accessToken:q,guestAllowed:re,period:Z,timeZone:oe,tzOffsetMinutes:de,now:be,cacheKey:Te}),en=m.useMemo(()=>{try{return new Intl.DateTimeFormat(void 0,{hour:"numeric",minute:"2-digit",timeZone:oe||void 0}).format(be)}catch{return null}},[be,oe]),[Kr,Rs]=m.useState(10),{entries:Ls,loading:Bs,refresh:Gr}=nc({baseUrl:e,accessToken:q,limit:Kr,from:_e,to:Ne,timeZone:oe,tzOffsetMinutes:de}),Xr=Z==="week"||Z==="month",_n=Z==="week"||Z==="month",Qr=m.useMemo(()=>Ee.filter(_=>_?.future?!1:!_?.day||!et?!0:String(_.day)<=String(et)),[Ee,et]),{rows:nt,from:Ys,to:zs,loading:Hs,refresh:Jr}=Do({baseUrl:e,accessToken:q,guestAllowed:re,period:Z,from:_e,to:Ne,months:24,cacheKey:Te,timeZone:kt,tzOffsetMinutes:wt,now:be,sharedRows:Xr?Ee:null,sharedRange:Xr?{from:_e,to:Ne}:null}),Us=m.useMemo(()=>({baseUrl:e,accessToken:q,guestAllowed:re,cacheKey:Te,timeZone:kt,tzOffsetMinutes:wt,now:be}),[e,q,re,Te,kt,wt,be]),{daily:Rt,heatmap:Ve,loading:qs,refresh:Zr}=tc({baseUrl:e,accessToken:q,guestAllowed:re,weeks:52,cacheKey:Te,timeZone:oe,tzOffsetMinutes:de,now:be}),{data:Nn,refresh:ea}=kl();m.useEffect(()=>{Nn&&typeof Nn=="object"&&xl(Nn)},[Nn]);const Be=m.useMemo(()=>Z==="day"||Z==="24h"?"hour":Z==="total"?"month":"day",[Z]),Vs=m.useMemo(()=>Sa(Be),[Be]),Sn="day",Ks=m.useMemo(()=>[...Sa(Sn),{key:"total_cost_usd",label:g("daily.sort.cost.label"),title:g("daily.sort.cost.title")},{key:"cost_per_million_tokens",label:g("daily.sort.cost_per_mtok.label"),title:g("daily.sort.cost_per_mtok.title")},{key:"top_model",label:g("daily.sort.top_model.label"),title:g("daily.sort.top_model.title")}],[]),[Ye,ta]=m.useState(()=>({key:"day",dir:"desc"}));m.useEffect(()=>{ta(_=>!br.has(_.key)||_.key===Be?_:{key:Be,dir:_.dir})},[Be]);const Lt=m.useMemo(()=>br.has(Ye.key)&&Ye.key!==Be?{...Ye,key:Be}:Ye,[Be,Ye]),Mn=m.useMemo(()=>{if(Z==="day"||Z==="24h")return Array.isArray(nt)?nt.filter(Y=>Y?.hour&&!Y?.future):[];if(Z==="total"){const Y=Array.isArray(nt)?nt.filter(Q=>Q?.month&&!Q?.future):[];return Uc(Y)}const _=Qr;return!_.some(Y=>!Y?.missing&&!Y?.future)&&Ee.length>0?Ee.filter(Y=>!Y?.future).slice(-30).filter(Y=>Y?.day):_},[Z,nt,Qr,Ee]),tn=m.useMemo(()=>Ma(Mn,Lt),[Mn,Lt]),Gs=m.useMemo(()=>Mn.some(_=>!_?.missing&&!_?.future),[Mn]),Kn=m.useMemo(()=>{if(!sn.has(Z))return 1;const _=Math.ceil(tn.length/Ln);return _>0?_:1},[Z,tn.length]),[Gn,jn]=m.useState(0);m.useEffect(()=>{if(!sn.has(Z)){jn(0);return}jn(_=>Math.min(_,Kn-1))},[Kn,Z]),m.useEffect(()=>{sn.has(Z)&&jn(0)},[Z,Ye.dir,Ye.key]);const Xs=m.useMemo(()=>sn.has(Z)?qc(tn,Gn,Ln):tn,[Gn,Z,tn]),na=m.useMemo(()=>Qc(G.filter(_=>!_?.future&&_?.day).slice(-30),{fallback:g("shared.placeholder.short")}),[G]),Bt=m.useMemo(()=>br.has(Ye.key)?{...Ye,key:Sn}:Ye,[Ye]),Qs=m.useMemo(()=>Ma(na,Bt),[na,Bt]),Js=m.useMemo(()=>_n?Ee:Z==="day"||Z==="24h"?Array.isArray(nt)?nt.filter(_=>_?.hour):[]:nt,[Ee,Z,nt,_n]),Zs=_n?_e:Ys,ei=_n?Ne:zs;function ti(_,I){if(_?.future)return"—";if(_?.missing)return g("shared.status.unsynced");if(I==="total_tokens")return $e(Wn(_));if(I==="total_cost_usd")return Je(_?.total_cost_usd,{currency:c,rate:u});if(I==="cost_per_million_tokens"){const Y=je(_?.cost_per_million_tokens);return Y==null?g("shared.placeholder.short"):Je(Y,{currency:c,rate:u})}return I==="top_model"?_?.top_model||g("shared.placeholder.short"):$e(_?.[I])}function ni(_){const I=_?.[Be];if(I==null)return"";const Y=String(I);if(Be==="hour"){const[Q,ye]=Y.split("T");if(Q&&ye)return`${Q} ${ye.slice(0,5)}`}return Y}function ri(_){const I=_?.[Sn];return I==null?"":String(I)}function ai(_){ta(I=>I.key===_?{key:_,dir:I.dir==="asc"?"desc":"asc"}:{key:_,dir:"desc"})}function oi(_){return Lt.key!==_?null:Lt.dir==="asc"?"ascending":"descending"}function si(_){return Lt.key!==_?"":Lt.dir==="asc"?"▲":"▼"}function ii(_){return Bt.key!==_?null:Bt.dir==="asc"?"ascending":"descending"}function li(_){return Bt.key!==_?"":Bt.dir==="asc"?"▲":"▼"}const ra=m.useMemo(()=>{if(!n&&!U&&!a&&!he)return 0;const _=Number(Ve?.active_days);if(Number.isFinite(_))return _;let I=0;const Y=new Set,Q=(se,ge,ke)=>{typeof se!="string"||!se||Y.has(se)||xr(ge,ke)&&(Y.add(se),I+=1)};if(Array.isArray(Rt))for(const se of Rt)Q(se?.day,Wn(se));const ye=Array.isArray(Ve?.weeks)?Ve.weeks:[];for(const se of ye)for(const ge of Array.isArray(se)?se:[]){const ke=bo(ge);Q(ge?.day,ke,ge?.level)}return I},[n,U,Ve?.active_days,Ve?.weeks,Rt]),[aa,oa]=m.useState("month"),ci=m.useCallback(_=>{_==="custom"?(oa(I=>I==="custom"?"month":I),we(I=>ve&&Pe?"custom":I),it(!0)):(we(_),oa(_),it(!1))},[ve,Pe]),di=m.useCallback((_,I)=>{Fe(_),Xt(I),we("custom"),it(!1)},[]),ui=m.useCallback(_=>{it(_),!_&&le==="custom"&&!ve&&we(aa)},[le,ve,aa]),nn=m.useCallback(async()=>{const _=Date.now();$(_),await Promise.all([ae(),Zr(),Jr(),vn(),Gr(),xe(),ea(),It()]),C(_)},[xe,Zr,vn,Gr,Jr,ae,ea,It]);m.useEffect(()=>{if(k||qe||typeof window>"u")return;const _=()=>{const Y=new Date,Q=mn({timeZone:oe,offsetMinutes:de,date:Y});if(Q){if(P.current==null){P.current=Q;return}P.current!==Q&&(P.current=Q,$(Y.getTime()))}};_();const I=window.setInterval(_,g0);return typeof document<"u"&&document.addEventListener("visibilitychange",_),window.addEventListener("focus",_),()=>{window.clearInterval(I),typeof document<"u"&&document.removeEventListener("visibilitychange",_),window.removeEventListener("focus",_)}},[qe,k,oe,de]);const fi=m.useCallback(async()=>{O(!0);try{he&&await ka(),await nn()}catch(_){console.error("[DashboardPage] Refresh failed:",_)}finally{O(!1)}},[he,nn]),sa=m.useCallback(()=>!he||R.current?null:(R.current=!0,ka().then(x0).catch(_=>(console.error("[DashboardPage] Auto sync failed:",_),!1)).finally(()=>{R.current=!1})),[he]),ia=m.useCallback(async()=>{const _=sa();try{await nn(),_&&_.then(I=>{if(I)return nn()})}catch(I){console.error("[DashboardPage] Auto refresh failed:",I)}},[nn,sa]),mi=m.useCallback(_=>{const I=Is(_);W(I);try{window.localStorage?.setItem(Es,String(I))}catch{}},[]);m.useEffect(()=>{if(k||typeof window>"u"||j<=0)return;const _=()=>typeof document>"u"||document.visibilityState==="visible",I=async({throttle:ye=!1}={})=>{if(!_())return;const se=Date.now();if(!(ye&&se-z.current<y0)&&!S.current){S.current=!0,z.current=se;try{await ia()}finally{S.current=!1}}},Y=window.setInterval(()=>{I()},j),Q=()=>{I({throttle:!0})};return typeof document<"u"&&document.addEventListener("visibilitychange",Q),window.addEventListener("focus",Q),()=>{window.clearInterval(Y),typeof document<"u"&&document.removeEventListener("visibilitychange",Q),window.removeEventListener("focus",Q)}},[j,ia,k]);const Xn=N||_t||ne||qs||Hs||qn||Bs,hi=m.useMemo(()=>g("shared.data_source",{source:String(vt||"edge").toUpperCase()}),[vt,i]),Dn=m.useMemo(()=>typeof t?.name!="string"?"":t.name.trim(),[t?.name]),yi="",la=m.useMemo(()=>!Dn||Dn.includes("@")?g("dashboard.identity.fallback"):Dn,[Dn]),ca=m.useMemo(()=>la.replace(/[^a-zA-Z0-9._-]/g,"_"),[la]),da=m.useMemo(()=>a?g("dashboard.identity.fallback"):ca,[ca,yi,a]),ua=m.useMemo(()=>{let _=null;const I=Q=>{typeof Q!="string"||!Q||(!_||Q<_)&&(_=Q)};if(Array.isArray(Rt))for(const Q of Rt)Q?.day&&xr(Wn(Q))&&I(Q.day);const Y=Array.isArray(Ve?.weeks)?Ve.weeks:[];for(const Q of Y)for(const ye of Array.isArray(Q)?Q:[]){if(!ye?.day)continue;const se=bo(ye),ge=ye?.level;xr(se,ge)&&I(ye.day)}return _},[Ve?.weeks,Rt]),gi=m.useMemo(()=>a?[]:(Array.isArray(h?.subscriptions?.items)?h.subscriptions.items:[]).map(Y=>{const Q=typeof Y?.tool=="string"?Y.tool.trim():"",se=(typeof Y?.plan_type=="string"?Y.plan_type:typeof Y?.planType=="string"?Y.planType:"").trim();return!Q||!se?null:{tool:Q,planType:se,provider:typeof Y?.provider=="string"?Y.provider.trim():"",product:typeof Y?.product=="string"?Y.product.trim():"",rateLimitTier:typeof Y?.rate_limit_tier=="string"?Y.rate_limit_tier.trim():typeof Y?.rateLimitTier=="string"?Y.rateLimitTier.trim():""}}).filter(Boolean).slice(0,6),[a,h]),pi=s.jsx(_l,{heatmap:Ve,timeZoneLabel:Et,timeZoneShortLabel:xt,hideLegend:k,defaultToLatestMonth:k}),bi=m.useMemo(()=>`${_e}..${Ne}`,[_e,Z,Ne]),xi=g("usage.summary.total"),lt=Wn(Se),fa=g("shared.unit.thousand_abbrev"),ma=g("shared.unit.million_abbrev"),ha=g("shared.unit.billion_abbrev"),rn=je(lt),ya=rn!=null&&(p&&Math.abs(rn)>=1e9||Math.abs(rn)>=1e12),ki=m.useMemo(()=>ya?De(rn,{thousandSuffix:fa,millionSuffix:ma,billionSuffix:ha,decimals:1}):$e(lt),[ha,ma,lt,rn,fa,ya]),wi=m.useMemo(()=>{const _=new Intl.DateTimeFormat(i||void 0,{timeZone:oe,year:"numeric",month:"short",day:"numeric",hour:"2-digit",minute:"2-digit",second:"2-digit",timeZoneName:"short"}).format(new Date(F));return g("usage.summary.updated_at",{timestamp:_})},[F,i,oe]),vi=g("dashboard.core_index.collapse_label"),_i=g("dashboard.core_index.expand_label"),Ni=g("dashboard.core_index.collapse_aria"),Si=g("dashboard.core_index.expand_aria"),Mi=!k,ji=g("dashboard.screenshot.title_line1"),Di=g("dashboard.screenshot.title_line2"),Ci=g("dashboard.screenshot.twitter_label"),Ti=g("dashboard.screenshot.twitter_button"),Pi=g("dashboard.screenshot.twitter_hint"),Yt=g("shared.placeholder.short"),Qn=m.useMemo(()=>{const _=Array.isArray(J?.sources)?J.sources:[];let I=null,Y=0;for(const ge of _){const ke=Ot(ge?.totals);!Number.isFinite(ke)||ke<=0||ke>Y&&(Y=ke,I=ge)}let Q=Yt,ye=Yt,se="0.0";if(I&&Y>0){Q=I?.source?String(I.source).toUpperCase():Yt;const ge=Array.isArray(I?.models)?I.models:[];let ke=0;for(const ct of ge){const an=Ot(ct?.totals);!Number.isFinite(an)||an<=0||an>ke&&(ke=an,ye=ct?.model?String(ct.model):Yt)}ke>0&&(se=(ke/Y*100).toFixed(1))}return{agentName:Q,modelName:ye,modelPercent:se}},[J,Yt]),ga=$e(lt),Jn=g("dashboard.screenshot.twitter_text",{total_tokens:ga==="-"?Yt:ga,agent_name:Qn.agentName,model_name:Qn.modelName,model_percent:Qn.modelPercent}),Zn=m.useMemo(()=>{if(typeof window>"u")return"";const _=new URL("https://twitter.com/intent/tweet");_.searchParams.set("text",Jn);const I=t?.userId?`/u/${t.userId}`:"/";return _.searchParams.set("url",`https://www.tokentracker.cc${I}?ref=share`),_.toString()},[Jn,t?.userId]),pa=m.useCallback(async()=>{if(typeof window>"u")return null;const _=async()=>{const ge=performance.now();for(;performance.now()-ge<2e3;){const ke=document.querySelector("[data-heatmap-scroll='true']");if(!ke||ke.dataset.latestMonthReady==="true")return;await new Promise(ct=>requestAnimationFrame(ct))}},I=document.querySelector("#root")||document.body,Y=document.documentElement,{scrollWidth:Q,scrollHeight:ye}=document.documentElement;Y?.classList.add("screenshot-capture"),document.body?.classList.add("screenshot-capture"),await new Promise(se=>requestAnimationFrame(se)),await _();try{const{toBlob:se,toPng:ge}=await Mo(async()=>{const{toBlob:Nt,toPng:Vi}=await import("./index-BeoRn2gJ.js");return{toBlob:Nt,toPng:Vi}},[]),ke=await se(I,{backgroundColor:"#050505",pixelRatio:2,cacheBust:!0,width:Q,height:ye,style:{width:`${Q}px`,height:`${ye}px`},filter:Nt=>!(Nt instanceof HTMLElement)||Nt.dataset?.screenshotExclude!=="true"});if(ke)return ke;const ct=await ge(I,{backgroundColor:"#050505",pixelRatio:2,cacheBust:!0,width:Q,height:ye,style:{width:`${Q}px`,height:`${ye}px`},filter:Nt=>!(Nt instanceof HTMLElement)||Nt.dataset?.screenshotExclude!=="true"});return ct?await(await fetch(ct)).blob():null}finally{Y?.classList.remove("screenshot-capture"),document.body?.classList.remove("screenshot-capture")}},[]),Oi=m.useCallback(async()=>{if(typeof window>"u"||v)return;w(!0);const _=navigator?.userAgent||"",I=/iP(hone|od|ad)/i.test(_),Y=/Safari/i.test(_)&&!/Chrome|Chromium|Edg|OPR|CriOS|FxiOS/i.test(_),Q=typeof navigator<"u"&&!!navigator.clipboard?.write&&typeof window<"u"&&!!window.ClipboardItem;let se=!Q||I||Y;try{const ge=await pa();ge&&Q&&(typeof document<"u"&&!document.hasFocus()&&window.focus?.(),se=await kr(ge))}catch(ge){console.error("Failed to capture screenshot",ge)}finally{if(w(!1),!se){console.warn("Failed to write screenshot to clipboard.");return}Zn&&(window.location.href=Zn)}},[pa,v,Zn]),Wi=m.useMemo(()=>k?[]:h0,[k]),Ai=m.useMemo(()=>[{label:g("usage.metric.total"),value:$e(lt),valueClassName:"text-white"},{label:g("usage.metric.input"),value:$e(Se?.input_tokens)},{label:g("usage.metric.output"),value:$e(Se?.output_tokens)},{label:g("usage.metric.cached_input"),value:$e(Se?.cached_input_tokens)},{label:g("usage.metric.reasoning_output"),value:$e(Se?.reasoning_output_tokens)}],[Se?.cached_input_tokens,Se?.input_tokens,Se?.output_tokens,Se?.reasoning_output_tokens,lt]),er=m.useMemo(()=>Je(Se?.total_cost_usd,{currency:c,rate:u}),[Se?.total_cost_usd,c,u]),Fi=m.useMemo(()=>{if(Number(lt||0)>0||_t||X)return null;const I=Number(tt?.current_month?.totals?.billable_total_tokens||0),Y=Number(tt?.last_30d?.totals?.billable_total_tokens||0),Q=Number(tt?.last_7d?.totals?.billable_total_tokens||0);return Z==="day"&&Q>0?g("dashboard.data_health.day_empty_has_recent",{tokens:$e(Q)}):(Z==="week"||Z==="custom")&&Y>0?g("dashboard.data_health.period_empty_has_30d",{tokens:$e(Y)}):Z==="month"&&I===0&&Y>0?g("dashboard.data_health.month_empty_has_30d",{tokens:$e(Y)}):Y===0&&tt?g("dashboard.data_health.no_recent_data"):null},[Z,tt,lt,X,_t]),ba=m.useMemo(()=>Io(J,{copyFn:g}),[J]),Ei=m.useMemo(()=>Gc(J,{copyFn:g}),[J]),$i=m.useMemo(()=>Jc(J,{limit:3,copyFn:g}),[J]),Ii=m0({enabled:x,handle:da,startDate:ua,activeDays:ra,summary:Se,topModels:$i,period:Z,periodFrom:_e,periodTo:Ne,heatmap:Ve,accessToken:typeof q=="string"?q:null,userId:t?.userId||null,currency:c,exchangeRate:u}),Ri=m.useCallback(()=>M(!0),[]),Li=m.useCallback(()=>M(!1),[]),Bi=m.useCallback(()=>f(!0),[]),Yi=m.useCallback(()=>f(!1),[]),zi=er&&er!=="-"&&ba.length>0,Hi=g("dashboard.install.cmd.sync"),tr=m.useMemo(()=>g("dashboard.daily.empty",{cmd:"{{cmd}}"}),[i]),[Ui,qi]=m.useMemo(()=>{const _=tr.split("{{cmd}}");return _.length===1?[tr,""]:[_[0],_.slice(1).join("{{cmd}}")]},[tr]);return m.useEffect(()=>{L.current||Xn||(L.current=!0,l?.())},[l,Xn]),s.jsxs(s.Fragment,{children:[s.jsx(Dg,{copy:g,onOpenShare:Ri,screenshotMode:k,screenshotTitleLine1:ji,screenshotTitleLine2:Di,identityDisplayName:da,identityStartDate:ua,activeDays:ra,identitySubscriptions:gi,identityScrambleDurationMs:T,projectUsageEntries:Ls,projectUsageLimit:Kr,setProjectUsageLimit:Rs,pulse:Vn,pulseComparedAtLabel:en,isLocalMode:he,trendRowsForDisplay:Js,trendFromForDisplay:Zs,trendToForDisplay:ei,trendZoomConfig:Us,usageFrom:_e,usageTo:Ne,period:Z,trendTimeZoneLabel:Zt,activityHeatmapBlock:pi,isCapturing:v,handleShareToX:Oi,screenshotTwitterLabel:Ci,screenshotTwitterButton:Ti,screenshotTwitterHint:Pi,periodsForDisplay:Wi,setSelectedPeriod:ci,autoRefreshOptions:$s,autoRefreshIntervalMs:j,onAutoRefreshIntervalChange:mi,customFrom:ve,customTo:Pe,onCustomRangeApply:di,customRangeOpen:Qt,onCustomRangeOpenChange:ui,metricsRows:Ai,summaryLabel:xi,summaryValue:ki,summaryUpdatedAtLabel:wi,summaryCostValue:er,usageInsights:Ei,costInfoEnabled:zi,openCostModal:Bi,allowBreakdownToggle:Mi,coreIndexCollapsed:D,setCoreIndexCollapsed:E,coreIndexCollapseLabel:vi,coreIndexExpandLabel:_i,coreIndexCollapseAria:Ni,coreIndexExpandAria:Si,refreshAll:fi,usageLoadingState:Xn,usageError:X,dataHealthMessage:Fi,rangeLabel:bi,timeZoneRangeLabel:Jt,usageSourceLabel:hi,fleetData:ba,hasDetailsActual:Gs,dailyEmptyPrefix:Ui,installSyncCmd:Hi,dailyEmptySuffix:qi,detailsColumns:Vs,ariaSortFor:oi,toggleSort:ai,sortIconFor:si,pagedDetails:Xs,dailyBreakdownRows:Qs,dailyBreakdownColumns:Ks,dailyBreakdownAriaSortFor:ii,dailyBreakdownSortIconFor:li,dailyBreakdownDateKey:Sn,detailsDateKey:Be,renderDetailDate:ni,renderDailyBreakdownDate:ri,renderDetailCell:ti,DETAILS_PAGED_PERIODS:sn,detailsPageCount:Kn,detailsPage:Gn,setDetailsPage:jn,costModalOpen:d,closeCostModal:Yi}),s.jsx(f0,{open:x,onClose:Li,data:Ii,twitterText:Jn})]})}export{E0 as DashboardPage};