zframes 0.6.0 → 0.7.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (131) hide show
  1. package/dist/index.js +130 -3
  2. package/package.json +6 -6
  3. package/runtime/assets/{bitcoin-dominance-CweHlZx7.js → bitcoin-dominance-rskkp4h2.js} +1 -1
  4. package/runtime/assets/{breakeven-CG9rKwgE.js → breakeven-DyCA3ya5.js} +1 -1
  5. package/runtime/assets/{breathing-cDundHq6.js → breathing-C8Y-Izs8.js} +1 -1
  6. package/runtime/assets/{btc-blocks-Do_nySHd.js → btc-blocks-BxS4aEAB.js} +1 -1
  7. package/runtime/assets/{btc-difficulty-vNbz5uRo.js → btc-difficulty-CNFxEiPh.js} +1 -1
  8. package/runtime/assets/{btc-fees-BmADLsmK.js → btc-fees-Db-5JKh9.js} +1 -1
  9. package/runtime/assets/{btc-hashrate-Wx2RAG-5.js → btc-hashrate-Dy2c30Gb.js} +1 -1
  10. package/runtime/assets/{btc-mempool-CTwbkMUR.js → btc-mempool-DFgUVk8y.js} +1 -1
  11. package/runtime/assets/{calculator-mvv6XpQC.js → calculator-v01_FkZv.js} +1 -1
  12. package/runtime/assets/chain-activity-CuA1eiPY.js +1 -0
  13. package/runtime/assets/{chart-utils-BYIZMM9J.js → chart-utils-Ct7WziT9.js} +1 -1
  14. package/runtime/assets/{checklist-CuEw3GpE.js → checklist-Be_y1aTE.js} +1 -1
  15. package/runtime/assets/{clock-Cjnwi03W.js → clock-BWFux5om.js} +1 -1
  16. package/runtime/assets/{coin-movers-Bcx1XR0F.js → coin-movers-BcXfoFc6.js} +1 -1
  17. package/runtime/assets/{countdown-Cdi5gSSu.js → countdown-CXSOeUWD.js} +1 -1
  18. package/runtime/assets/{cycle-shared-BOGcJDzT.js → cycle-shared-pyXzkgt1.js} +1 -1
  19. package/runtime/assets/{cycle-signals-CS629ZDc.js → cycle-signals-BrKJX2c6.js} +1 -1
  20. package/runtime/assets/{d3-xK4fOkBU.js → d3-Dr3MHXm3.js} +1 -1
  21. package/runtime/assets/{daily-analysis-DX8bVq85.js → daily-analysis-CWluVygw.js} +1 -1
  22. package/runtime/assets/{day-meter-DDfTuhms.js → day-meter-Bi5OZCC4.js} +1 -1
  23. package/runtime/assets/{defi-revenue-CpeAGwhb.js → defi-revenue-CFNSNfG7.js} +1 -1
  24. package/runtime/assets/dex-hot-pools-C4TrRB17.js +1 -0
  25. package/runtime/assets/dex-pool-treemap-DqvlN1Jo.js +1 -0
  26. package/runtime/assets/{dex-volume-chart-sHIuJACJ.js → dex-volume-chart-BLR-L_B0.js} +1 -1
  27. package/runtime/assets/{dex-volume-treemap-rSTrzz7O.js → dex-volume-treemap-qyEBx4ll.js} +1 -1
  28. package/runtime/assets/{dice-BrFORdjN.js → dice-CuzcQipj.js} +1 -1
  29. package/runtime/assets/{dino-game-BOV8mV1d.js → dino-game-CiGWzsag.js} +1 -1
  30. package/runtime/assets/{divider-C33tH1RU.js → divider-DvK5oM9v.js} +1 -1
  31. package/runtime/assets/{drawdy-BIb36JN9.js → drawdy-Bxr7eJ-7.js} +1 -1
  32. package/runtime/assets/{dxy-CRifEdp_.js → dxy-CVbZmRsT.js} +1 -1
  33. package/runtime/assets/editor-CQM8mtD8.css +1 -0
  34. package/runtime/assets/{editor-Dnp1eXvY.js → editor-EOEtB4_n.js} +1 -1
  35. package/runtime/assets/{etf-flows-BV10E2R-.js → etf-flows-Cl1WliDl.js} +1 -1
  36. package/runtime/assets/{etf-flows-chart-DHu8mkXm.js → etf-flows-chart-B4Im9TVy.js} +1 -1
  37. package/runtime/assets/{eth-staking-BqWeJq6F.js → eth-staking-_q2b8DEx.js} +1 -1
  38. package/runtime/assets/{eth-supply-CF-MgHjn.js → eth-supply-55OpYYBL.js} +1 -1
  39. package/runtime/assets/{fear-greed-DuDR56h2.js → fear-greed-CywOCckQ.js} +1 -1
  40. package/runtime/assets/{filings-feed-BpfO2yF6.js → filings-feed-CosEi4NL.js} +1 -1
  41. package/runtime/assets/{financial-stress-BfYJdlry.js → financial-stress-DBCae4TA.js} +1 -1
  42. package/runtime/assets/{flappy-bird-Dbb2UQBv.js → flappy-bird-CBVgwfgX.js} +1 -1
  43. package/runtime/assets/{fundamentals-CUnqjF--.js → fundamentals-zRwGUcmb.js} +1 -1
  44. package/runtime/assets/{funding-comparison-CMKxW1n-.js → funding-comparison-wCNoCb1H.js} +1 -1
  45. package/runtime/assets/{funding-heatmap-CZWnYF8Y.js → funding-heatmap-a4zdnKi9.js} +1 -1
  46. package/runtime/assets/{funding-rate-chart-C-tpwid_.js → funding-rate-chart-Da9WMKyJ.js} +1 -1
  47. package/runtime/assets/{fx-board-YAy44m5d.js → fx-board-CxhwDBHO.js} +1 -1
  48. package/runtime/assets/{heading-uIVBEE7K.js → heading-b5H33lig.js} +1 -1
  49. package/runtime/assets/{holiday-calendar-DCj83hi2.js → holiday-calendar-C77t3m6c.js} +1 -1
  50. package/runtime/assets/{image-CITPAmp0.js → image-C8ZSUHEx.js} +1 -1
  51. package/runtime/assets/{index-XGtH5pVY.css → index-BXLwJuoo.css} +1 -1
  52. package/runtime/assets/{index-CrmTiZaB.css → index-C-VdMqKb.css} +1 -1
  53. package/runtime/assets/index-DKixdHYB.js +1 -0
  54. package/runtime/assets/index-kB-TyxKi.js +1073 -0
  55. package/runtime/assets/{inflation-pulse-Bqa3-cuC.js → inflation-pulse-CoXcuabd.js} +1 -1
  56. package/runtime/assets/{journal-log-Bgjia8cQ.js → journal-log-BDu39CBE.js} +1 -1
  57. package/runtime/assets/{journal-open-Bm5gwWXz.js → journal-open-FejLOzlA.js} +1 -1
  58. package/runtime/assets/{journal-results-cEWe2pbe.js → journal-results-CtKy6MZM.js} +1 -1
  59. package/runtime/assets/{journal-score-vmfF-9bK.js → journal-score-Bd7IDYl4.js} +1 -1
  60. package/runtime/assets/{journal-ui-ApBNIq5_.js → journal-ui-C_htu3aM.js} +1 -1
  61. package/runtime/assets/{labor-market-azDXD-dR.js → labor-market-DR0j05Gy.js} +1 -1
  62. package/runtime/assets/{lightning-stats-nkyh2dOX.js → lightning-stats-botYMCIX.js} +1 -1
  63. package/runtime/assets/{link-grid-BEo4b54T.js → link-grid-DFuD6XVK.js} +1 -1
  64. package/runtime/assets/{ma-multiplier-BllDQMF5.js → ma-multiplier-s6ix-kL8.js} +1 -1
  65. package/runtime/assets/{macro-calendar-Ck0dJk4p.js → macro-calendar-Dhnx2n5Q.js} +1 -1
  66. package/runtime/assets/{market-cap-treemap-AxE2EYPO.js → market-cap-treemap-BWtivvac.js} +1 -1
  67. package/runtime/assets/{market-hours-BSwXtU8c.js → market-hours-wSrW5Elv.js} +1 -1
  68. package/runtime/assets/{marquee-1Zr5qDJP.js → marquee-NHBiLJUk.js} +1 -1
  69. package/runtime/assets/{mayer-multiple-DpBJNd4d.js → mayer-multiple-CZC5q6ra.js} +1 -1
  70. package/runtime/assets/{mini-line-chart-CHM5UBjJ.js → mini-line-chart-QWeuTPfP.js} +1 -1
  71. package/runtime/assets/{mining-pools-B-jxdTot.js → mining-pools-BxipfJmv.js} +1 -1
  72. package/runtime/assets/{mover-row-Dg96EIqq.js → mover-row-CUd1i2yt.js} +1 -1
  73. package/runtime/assets/{mvrv-Dx_S0TwE.js → mvrv-BIwCiyRN.js} +1 -1
  74. package/runtime/assets/{national-debt-BKVBHaqm.js → national-debt-DwC5azy3.js} +1 -1
  75. package/runtime/assets/{news-feed-C9itZmyp.js → news-feed-BhAsJ6gt.js} +1 -1
  76. package/runtime/assets/nft-collections-sD-yDfKU.js +1 -0
  77. package/runtime/assets/nft-treemap-Bqhk41Of.js +1 -0
  78. package/runtime/assets/{note-BtCnmuMo.js → note-C1-RPOvR.js} +1 -1
  79. package/runtime/assets/{nupl-aIjkc57m.js → nupl-U-WHVDJ0.js} +1 -1
  80. package/runtime/assets/{open-interest-C0ulogv6.js → open-interest-C0_M6MkH.js} +1 -1
  81. package/runtime/assets/{options-iv-CdUder3x.js → options-iv-CIHzBULM.js} +1 -1
  82. package/runtime/assets/{options-oi-strike-CvCZnMCR.js → options-oi-strike-Db8lP27S.js} +1 -1
  83. package/runtime/assets/{options-put-call-FuaDHJ-S.js → options-put-call-5ex7Ablt.js} +1 -1
  84. package/runtime/assets/{pi-cycle-BuCnLnIJ.js → pi-cycle-eACZGQhd.js} +1 -1
  85. package/runtime/assets/{pomodoro-DDBVVcSR.js → pomodoro-CaS6y-eQ.js} +1 -1
  86. package/runtime/assets/portfolio-allocation-NR-4wbGL.js +1 -0
  87. package/runtime/assets/{portfolio-common-Bi16i0aA.js → portfolio-common-Cfpnudvk.js} +1 -1
  88. package/runtime/assets/{portfolio-holdings-MyAinCzt.js → portfolio-holdings-D-SG9B5X.js} +1 -1
  89. package/runtime/assets/{portfolio-value-BPURwKf8.js → portfolio-value-DPKyirHc.js} +1 -1
  90. package/runtime/assets/{prediction-markets-Bzy51qnV.js → prediction-markets-Cnf0KZba.js} +1 -1
  91. package/runtime/assets/{price-chart-BOCD8ka3.js → price-chart-BEnpZLyb.js} +1 -1
  92. package/runtime/assets/{price-compare-DZlF-qhZ.js → price-compare-8LvkF-xq.js} +1 -1
  93. package/runtime/assets/{price-liveline-Bl7qCd5-.js → price-liveline-DkTeXuC2.js} +1 -1
  94. package/runtime/assets/{price-ticker-D2W4T02y.js → price-ticker-DgDJ3k4b.js} +1 -1
  95. package/runtime/assets/{protocol-fees-treemap-DiIt4bfo.js → protocol-fees-treemap-fvVOfUFt.js} +1 -1
  96. package/runtime/assets/{protocol-tvl-chart-CmzANiR7.js → protocol-tvl-chart-BfrszRqq.js} +1 -1
  97. package/runtime/assets/{protocol-tvl-treemap-BjNPrrtL.js → protocol-tvl-treemap-v5kaQdP4.js} +1 -1
  98. package/runtime/assets/{puell-multiple-BGrJX43r.js → puell-multiple-BdOLF9Wh.js} +1 -1
  99. package/runtime/assets/{quote-CRM3bfI7.js → quote-slpulzHo.js} +1 -1
  100. package/runtime/assets/{rates-board-Cb9rV0_-.js → rates-board-B6hHyiDM.js} +1 -1
  101. package/runtime/assets/{realized-price-CYlrFa0m.js → realized-price-dn6bApj-.js} +1 -1
  102. package/runtime/assets/{reserve-risk-Be98XUsD.js → reserve-risk-_07r_h5w.js} +1 -1
  103. package/runtime/assets/{returns-projector-D67a_yvC.js → returns-projector-NBs7iGAV.js} +1 -1
  104. package/runtime/assets/{risk-reward-C7WMz2od.js → risk-reward-Baq_TRho.js} +1 -1
  105. package/runtime/assets/{rsi-momentum-IglnulkJ.js → rsi-momentum-B6oTu5W6.js} +1 -1
  106. package/runtime/assets/{rules-card-DJs3fDVN.js → rules-card-D98hKEwY.js} +1 -1
  107. package/runtime/assets/{sector-performance-DVMaleLY.js → sector-performance-DlnYIM-L.js} +1 -1
  108. package/runtime/assets/{sector-treemap-B681nSi6.js → sector-treemap-C3sX3Q9o.js} +1 -1
  109. package/runtime/assets/{session-progress-CZO3LqUi.js → session-progress-BYwNuuP-.js} +1 -1
  110. package/runtime/assets/{short-volume-l8_9Yoh3.js → short-volume-CxBDSjP6.js} +1 -1
  111. package/runtime/assets/{snake-CifbTGlZ.js → snake-CGV0Kg4z.js} +1 -1
  112. package/runtime/assets/{sopr-Dw_oz-mC.js → sopr-DAn99w9D.js} +1 -1
  113. package/runtime/assets/{spotify-embed-BA0m1IRb.js → spotify-embed-BBfim9vk.js} +1 -1
  114. package/runtime/assets/{stablecoin-chains-Dd2LqqqY.js → stablecoin-chains-D4EKi_YR.js} +1 -1
  115. package/runtime/assets/{stablecoin-supply-DM4ogL4V.js → stablecoin-supply-1m6FGR7-.js} +1 -1
  116. package/runtime/assets/{stopwatch-Co72v-7u.js → stopwatch-CCqsSaII.js} +1 -1
  117. package/runtime/assets/{top-movers-CLmC2TNu.js → top-movers-CAqBZOUL.js} +1 -1
  118. package/runtime/assets/{treasury-auctions-Dl9fiRgf.js → treasury-auctions-Bl19yaM_.js} +1 -1
  119. package/runtime/assets/{treemap-leaf-Dn31k9S9.js → treemap-leaf-A45Ge4-e.js} +1 -1
  120. package/runtime/assets/{trending-coins-Cpx9T6cG.js → trending-coins-Dm9R9zGQ.js} +1 -1
  121. package/runtime/assets/{tvl-treemap-e610jE8k.js → tvl-treemap-CSM9ioUr.js} +1 -1
  122. package/runtime/assets/{utils-DaT-yT0k.js → utils-DxneYyA_.js} +1 -1
  123. package/runtime/assets/{video-CeKjM-cE.js → video-CkvIGlHg.js} +1 -1
  124. package/runtime/assets/{volume-profile-CiMFsIBu.js → volume-profile-UJPTgNwV.js} +1 -1
  125. package/runtime/assets/{yield-curve-DkB0u2_Q.js → yield-curve-DlXQg4sl.js} +1 -1
  126. package/runtime/assets/{yield-scanner-BP90untT.js → yield-scanner-Qm88hZuv.js} +1 -1
  127. package/runtime/index.html +2 -2
  128. package/runtime/assets/editor-CZoWRTJC.css +0 -1
  129. package/runtime/assets/index-Bx7RmzY8.js +0 -1
  130. package/runtime/assets/index-DyvZokhk.js +0 -1097
  131. package/runtime/assets/portfolio-allocation-DAnQk_h_.js +0 -1
@@ -0,0 +1 @@
1
+ import{r as b,j as s,R as mt}from"./react-qoZPGuNy.js";import{l as lt,h as pt,c as ft,e as ht,i as dt,j as st,d as gt,f as xt,k as vt,s as X,n as R,q as yt,t as wt,r as rt,u as kt}from"./d3-Dr3MHXm3.js";import{c as F,p as Q}from"./utils-DxneYyA_.js";import{c as bt,f as jt}from"./chart-utils-Ct7WziT9.js";const O={top:20,right:110,bottom:40,left:50},et={sm:640},q={height:400,yAxisPadding:15,fontSize:12},at={rectHeight:22,paddingX:4},St={offsetX:80},Y={ticks:6,opacity:.05,color:"#FFFFFF"},$={xTicks:5,xSubTicks:36,yTicks:5,tickSize:10,subTickSize:6,tickColor:"#404146",domainColor:"#FFFFFF",domainOpacity:.05,textOpacity:.5},ot=1e12,it=1e9,J=1e6,U=t=>t==null?"-":t===0?"0":t<.001?Nt(t):t<1||t<10?parseFloat(t.toPrecision(4)).toString():t<J?t.toLocaleString("en-US",{minimumFractionDigits:0,maximumFractionDigits:2}):t>ot?`${(t/ot).toLocaleString("en-US",{minimumFractionDigits:2,maximumFractionDigits:2})}T`:t>it?`${(t/it).toLocaleString("en-US",{minimumFractionDigits:2,maximumFractionDigits:2})}B`:t>J?`${(t/J).toLocaleString("en-US",{minimumFractionDigits:2,maximumFractionDigits:2})}M`:t.toLocaleString("en-US",{minimumFractionDigits:0,maximumFractionDigits:0}),Mt=t=>{const n=["₀","₁","₂","₃","₄","₅","₆","₇","₈","₉"];return t.toString().split("").map(e=>n[parseInt(e)]).join("")},Nt=t=>{const n=t<0,i=Math.abs(t).toFixed(20).replace(/\.?0+$/,""),l=i.match(/^0\.0+/);if(l){const u=l[0].length-2,a=i.slice(l[0].length).slice(0,3).replace(/0+$/,""),o=`0.${Mt(u)}${a}`;return n?`-${o}`:o}return Number.isInteger(t)?String(t):String(Math.round(t*100)/100)};let P;const Ct=t=>(P===void 0&&(P=typeof document<"u"?document.createElement("canvas").getContext("2d"):null,P&&(P.font=`700 ${q.fontSize}px "DM Sans", sans-serif`)),P?P.measureText(t).width:t.length*q.fontSize*.62),Tt=({width:t,height:n=q.height,yDomain:e,formatValue:i,containerRef:l})=>{const[u,r]=b.useState(t);b.useLayoutEffect(()=>{const f=()=>{if(l.current){const N=l.current.getBoundingClientRect();r(M=>M!==void 0&&Math.abs(M-N.width)<.5?M:N.width)}};f();const w=typeof ResizeObserver<"u"?new ResizeObserver(f):null;return w&&l.current&&w.observe(l.current),window.addEventListener("resize",f),()=>{w==null||w.disconnect(),window.removeEventListener("resize",f)}},[l]);const a=f=>{const[w,N]=f.domain(),M=5;let y=0;for(let L=0;L<M;L++){const S=w+(N-w)/(M-1)*L,z=i?i(S):U(S);y=Math.max(y,Ct(z))}return Math.ceil(y)+q.yAxisPadding};let o=u??null;if(!o&&l.current){const f=l.current.getBoundingClientRect();f.width>0&&(o=f.width)}o=o||t||null;const c=n-O.top-O.bottom,g=lt().domain(e).range([c,0]),x=o&&o>0?a(g):null,p=o&&o>0&&x&&x>0?o-x-(o>640?O.right:20):null;return{width:o,height:n,innerWidth:p,innerHeight:c,dynamicLeftMargin:x}},Lt=t=>{const n=b.useMemo(()=>{const r=new Set;return t.forEach(a=>{a.seriesGroup&&r.add(a.seriesGroup)}),Array.from(r)},[t]),[e,i]=b.useState(()=>new Set(n));b.useEffect(()=>{i(r=>{const a=new Set(r);return n.forEach(o=>{a.has(o)||a.add(o)}),a})},[n]);const l=b.useMemo(()=>t.filter(r=>r.seriesGroup?e.has(r.seriesGroup):!0),[t,e]);return{seriesGroups:n,visibleGroups:e,filteredSeries:l,toggleGroup:r=>{i(a=>{const o=new Set(a);return o.has(r)?o.delete(r):o.add(r),o})}}},$t=t=>({seriesColors:b.useMemo(()=>t.reduce((e,i)=>(e[i.id]=i.color,e),{}),[t]),isColorLoading:!1}),Dt=({group:t,isVisible:n,onClick:e})=>s.jsxs("button",{onClick:e,className:F("flex cursor-pointer items-center justify-center gap-2 text-xs font-semibold",n?"text-white":"text-white/30"),children:[s.jsx("div",{className:F("h-3 w-3",n?"bg-white/80":"bg-white/30")}),t]}),Ft=Dt,Et=(t,n)=>jt(t,n),ct=(t,n)=>{const e=parseInt(t.slice(1,3),16),i=parseInt(t.slice(3,5),16),l=parseInt(t.slice(5,7),16);return`rgba(${e}, ${i}, ${l}, ${n})`},zt=t=>{const n=t.flatMap(e=>e.data);return bt(n)},At=t=>{const n=new Set;return t.forEach(e=>{e.data.forEach(i=>n.add(i.date))}),Array.from(n).sort()},It=(t,n)=>t.map(e=>{const i={};return n.forEach(l=>{const u=l.data.find(r=>r.date===e);i[l.id]=u?u.value:0}),{date:new Date(e),values:i}}),Gt=(t,n,e)=>{const i=n.invert(t),l=pt(o=>o.date).left,u=l(e,i,1),r=e[u-1],a=e[u];return!r||!a?null:i.getTime()-r.date.getTime()>a.date.getTime()-i.getTime()?a:r},tt=(t,n)=>{const e=n===t,i=n!==null&&n!==t;return e?1:i?.3:1},Ot=({legendItems:t,containerWidth:n,hoveredSeriesId:e,onSeriesHover:i,onLabelClick:l,unitPrefix:u,unitSuffix:r,legendRef:a})=>n&&n>et.sm?s.jsx("div",{className:F("pointer-events-none absolute left-0 top-0 w-full flex-wrap items-center gap-2 max-sm:overflow-hidden"),children:t.map(c=>s.jsx("div",{className:F("pointer-events-auto absolute flex h-[22px] w-fit cursor-pointer items-center justify-center gap-1 rounded-[11px] px-[5px] py-1 transition-opacity duration-200 ease-out"),style:{left:`${c.left}px`,top:`${c.top}px`,backgroundColor:ct(c.color,.3),opacity:tt(c.id,e)},onClick:()=>l==null?void 0:l(c.id),onPointerEnter:g=>{g.preventDefault(),g.stopPropagation(),i(c.id)},onPointerLeave:g=>{g.preventDefault(),g.stopPropagation(),i(null)},children:s.jsxs("div",{className:"relative flex select-none items-center justify-center gap-1",children:[c.seriesData.iconImageUrl&&s.jsx("div",{className:"size-4 rounded-full",children:s.jsx("img",{src:c.seriesData.iconImageUrl,width:16,height:16,alt:c.seriesData.name,className:"size-4 rounded-full",draggable:!1})}),s.jsxs("div",{className:"text-normal relative flex items-center justify-center whitespace-nowrap text-[11px] font-semibold leading-4",children:[s.jsx("span",{className:F("mr-1 max-w-12 truncate",c.seriesData.iconImageUrl?"max-w-10":"max-w-12"),children:c.displayText}),u&&s.jsx("span",{className:"mr-0.5 [&_svg]:!text-white/70",children:u}),s.jsx("span",{children:c.value}),r&&s.jsx("span",{children:r})]})]})},c.id))}):s.jsx("div",{className:F("pointer-events-none left-0 top-0 flex w-full flex-wrap items-center gap-1 max-sm:overflow-hidden"),ref:a,children:t.map(c=>s.jsx("div",{className:F("pointer-events-auto flex h-[22px] w-fit min-w-[112px] cursor-pointer items-center gap-1 rounded-[11px] px-[5px] py-1 transition-opacity duration-200 ease-out"),style:{backgroundColor:ct(c.color,.3),opacity:tt(c.id,e)},onClick:()=>l==null?void 0:l(c.id),onPointerEnter:g=>{g.preventDefault(),g.stopPropagation(),i(c.id)},onPointerLeave:g=>{g.preventDefault(),g.stopPropagation(),i(null)},children:s.jsxs("div",{className:"relative flex select-none items-center gap-1",children:[c.seriesData.iconImageUrl&&s.jsx("div",{className:"size-4 rounded-full",children:s.jsx("img",{src:c.seriesData.iconImageUrl,width:16,height:16,alt:c.seriesData.name,className:"size-4 rounded-full",draggable:!1})}),s.jsxs("div",{className:"text-normal relative flex items-center whitespace-nowrap text-[11px] font-semibold leading-none",children:[s.jsx("span",{className:F("mr-1 max-w-12 truncate",c.seriesData.iconImageUrl?"max-w-10":"max-w-12"),children:c.displayText}),s.jsx("span",{"data-legend-value":c.id,children:c.value}),r&&s.jsx("span",{children:r})]})]})},c.id))}),Wt=Ot,Ht=({containerWidth:t,tooltipRef:n,series:e,seriesColors:i,unitPrefix:l,unitSuffix:u})=>t&&t>et.sm?s.jsx("div",{ref:n,className:"pointer-events-none absolute left-0 top-0 z-50 rounded-md bg-slate-700 px-6 py-3 text-xs text-white opacity-0 transition-opacity duration-150 ease-out",children:s.jsxs("div",{className:"flex flex-col gap-3",children:[s.jsx("div",{className:"body-md font-semibold text-white/50","data-tooltip-date":!0}),s.jsx("div",{className:"grid grid-cols-[auto_1fr] gap-x-3 gap-y-1.5",children:e.map(a=>s.jsxs(mt.Fragment,{children:[s.jsxs("span",{className:"text-soft flex max-w-[126px] items-center gap-1",children:[s.jsx("div",{className:"h-full w-0.5 rounded-full",style:{backgroundColor:i[a.id]}}),a.iconImageUrl&&s.jsx("img",{src:a.iconImageUrl,width:20,height:20,alt:a.name,className:"rounded-full"}),s.jsx("span",{className:"text-normal body-sm font-bold capitalize",children:a.name})]}),s.jsxs("div",{className:"font-dmsans text-normal flex flex-row items-center font-bold",children:[s.jsx("div",{className:"mr-1",children:l}),s.jsx("span",{className:"text-normal text-right text-xs font-bold","data-tooltip-value":a.id}),u]})]},a.id))})]})}):s.jsx("div",{ref:n,className:"pointer-events-none absolute left-0 top-0 z-50 min-w-[130px] rounded-md bg-slate-700 px-2 py-1 text-xs text-white opacity-0 transition-opacity duration-150 ease-out",children:s.jsx("div",{className:"flex flex-col items-center justify-center gap-3",children:s.jsx("div",{className:"caption font-semibold text-white/50","data-tooltip-date":!0})})}),Bt=Ht,Pt=(t,n,e,i)=>{const l=ft().domain(ht(t,r=>r.date)).range([0,e]),u=lt().domain(n).range([i,0]);return{xScale:l,yScale:u}},Xt=(t,n,e)=>{const[i,l]=n.domain(),u=[];for(let r=0;r<Y.ticks;r++){const a=i+(l-i)/(Y.ticks-1)*r;u.push(a)}t.append("g").attr("class","grid").call(dt(n).tickValues(u).tickSize(-e).tickFormat(()=>"")).call(r=>r.select(".domain").remove()).selectAll("line").attr("stroke",Y.color).attr("stroke-opacity",Y.opacity)},Ut=(t,n,e,i,l,u,r)=>{const o=r!==void 0?Math.max(2,Math.min($.xTicks,Math.floor(r/72))):$.xTicks,c=n.ticks(o),g=Math.max(1,Math.ceil(c.length/o)),x=c.filter((S,z)=>z%g===0),p=t.append("g").attr("transform",`translate(0,${i})`).call(st(n).tickValues(x).tickSize($.tickSize).tickFormat(S=>S instanceof Date?Et(S.toISOString(),l):String(S))).style("font-size","12px").style("font-weight","700").style("font-family","var(--font-manrope)");p.select(".domain").attr("stroke",$.domainColor).attr("stroke-width",1).attr("stroke-opacity",$.domainOpacity),p.selectAll(".tick line").attr("stroke",$.tickColor).attr("transform","translate(0, 4)"),p.selectAll(".tick text").attr("dy","1.2em").style("fill",$.domainColor).style("opacity",$.textOpacity);const f=t.append("g").attr("transform",`translate(0,${i})`).call(st(n).ticks($.xSubTicks).tickSize($.subTickSize).tickFormat(()=>""));f.select(".domain").remove(),f.selectAll(".tick line").attr("stroke",$.tickColor).attr("transform","translate(0, 4)");const[w,N]=e.domain(),M=[],y=5;for(let S=0;S<y;S++){const z=w+(N-w)/(y-1)*S;M.push(z)}const L=t.append("g").call(dt(e).tickValues(M).tickSize($.yTicks).tickFormat(S=>u?u(S):U(S))).style("font-size","12px").style("color",$.domainColor).style("font-family","var(--font-dmsans)").style("opacity",$.textOpacity).style("font-weight","700");L.select(".domain").attr("stroke","none"),L.selectAll(".tick line").attr("stroke","none")},_t=(t,n,e,i,l,u=!0)=>{const r=gt().x(a=>i(a.date)).y(a=>l(a.value)).curve(xt);n.forEach(a=>{const o=a.data.map(p=>({date:new Date(p.date),value:p.value})),c=e[a.id],g=t.append("path").datum(o).attr("fill","none").attr("stroke",c).attr("stroke-width",1.2).attr("opacity",1).attr("data-series-id",a.id).attr("d",r);if(!u){g.attr("stroke-dasharray",null).attr("stroke-dashoffset",null);return}const x=g.node().getTotalLength();g.attr("stroke-dasharray",x+" "+x).attr("stroke-dashoffset",x),g.transition("draw").duration(1200).ease(vt).attr("stroke-dashoffset",0).on("end",function(){X(this).attr("stroke-dasharray",null)})})},Vt=({g:t,containerWidth:n,innerWidth:e,innerHeight:i,xScale:l,yScale:u,combinedData:r,filteredSeries:a,tooltipRef:o,containerRef:c,legendRef:g,highestValue:x,formatValue:p})=>{var A;const f=t.append("line").attr("class","hover-line").attr("stroke","white").attr("stroke-width",1).attr("stroke-dasharray","4,4").attr("stroke-opacity",.6).attr("x1",0).attr("y1",0).attr("x2",0).attr("y2",i).attr("opacity",0),w=t.append("g").attr("class","hover-dots");let N=!0,M=((A=c.current)==null?void 0:A.getBoundingClientRect().width)||e,y=0,L=0;const S=h=>{N?(f.attr("x1",h-.75),f.attr("x2",h-.75),f.transition().duration(150).ease(R).attr("opacity",1),N=!1):f.transition().duration(100).ease(rt).attr("x1",h-.75).attr("x2",h-.75).attr("opacity",1)},z=(h,d)=>{const j=w.selectAll("g.hover-circle-group").data(a.filter(v=>h.values[v.id]!==void 0));j.exit().remove();const C=j.enter().append("g").attr("class","hover-circle-group").style("opacity",0);C.append("circle").attr("class","hover-dot-glow").attr("r",9).attr("fill","white").attr("fill-opacity",.18),C.append("circle").attr("class","hover-dot-core").attr("r",4.5).attr("fill","white").attr("stroke","rgba(10, 12, 20, 0.55)").attr("stroke-width",1.5),C.attr("transform",v=>{const T=h.values[v.id];return`translate(${d}, ${u(T)}) scale(0.5)`}).style("opacity",1).transition().duration(Q()?0:200).ease(kt).attr("transform",v=>{const T=h.values[v.id];return`translate(${d}, ${u(T)}) scale(1)`}),j.transition().duration(100).ease(rt).attr("transform",v=>{const T=h.values[v.id];return`translate(${d}, ${u(T)})`})},E=(h,d)=>{o.current&&y===0&&L===0&&(y=o.current.getBoundingClientRect().height,L=o.current.getBoundingClientRect().width);let m=h+St.offsetX;return m+L>M&&(m=h-L),m<0&&(m=0),{x:m,y:d-y/2+20}},K=h=>{let m=h-65+O.left;const j=u(x);return h+130/2>M-O.left&&(m=M-130),m<0&&(m=0),{x:m,y:j}},G=(h,d)=>{if(!o.current)return;const m=o.current.querySelector("[data-tooltip-date]");m&&m.textContent!==h&&(m.textContent=h),a.forEach(j=>{var D;const C=d[j.id];if(C===void 0)return;const v=(D=o.current)==null?void 0:D.querySelector(`[data-tooltip-value="${j.id}"]`),T=p?p(C):U(C);v&&v.textContent!==T&&(v.textContent=T)})},W=h=>{if(!o.current)return;const d=o.current.querySelector("[data-tooltip-date]");d&&d.textContent!==h&&(d.textContent=h)},H=h=>{g.current&&a.forEach(d=>{var C;const m=h[d.id];if(m===void 0)return;const j=(C=g.current)==null?void 0:C.querySelector(`[data-legend-value="${d.id}"]`);if(j){const v=p?p(m):U(m);j.textContent=v}})},k=(h,d)=>{o.current&&(o.current.style.opacity="1",o.current.style.transform=`translate3d(${h}px, ${d}px, 0)`)},_=h=>{const m=window.TouchEvent&&h instanceof TouchEvent?h.touches[0]:h,[j,C]=yt(m,t.node()),v=Gt(j,l,r);if(!v)return;const T=l(v.date),D=wt("%b %d, %Y - %H:%M")(v.date);if(n>et.sm){const I=E(j,C);k(I.x,I.y),G(D,v.values)}else{const I=K(j);k(I.x,I.y),W(D),H(v.values)}S(T),z(v,T)},B=()=>{f.transition().duration(150).ease(R).attr("opacity",0),N=!0,o.current&&(o.current.style.opacity="0"),w.selectAll("g").transition().duration(Q()?0:120).ease(R).style("opacity",0).attr("transform",(h,d,m)=>{const C=X(m[d]).attr("transform"),v=C.match(/translate\(([^,]+),\s*([^)]+)\)/);if(v){const T=parseFloat(v[1]),D=parseFloat(v[2]);return`translate(${T}, ${D}) scale(0.3)`}return C}).remove()},V=new ResizeObserver(()=>{c.current&&(M=c.current.getBoundingClientRect().width)});return c.current&&V.observe(c.current),{onMouseMove:_,onMouseLeave:B,destroy:()=>V.disconnect()}},Yt=(t,n,{xScale:e,yScale:i},l,u,r)=>{const a=at.rectHeight,o=at.paddingX,c=[];return t.forEach(x=>{const p=x.data.map(f=>({date:new Date(f.date),value:f.value}));if(p.length>0){const f=p[p.length-1],w=e(f.date)+8,N=i(f.value),M=w-o;let y=N-a/2;const L=c.findLast(S=>y+a>=S.top&&y<=S.bottom);L&&(y=L.top+a),c.push({top:y,bottom:y+a,id:x.id,left:M})}}),c.reverse().reduce((x,p)=>{const f=x.find(w=>p.top+a>=w.top&&p.top<=w.bottom&&w.id!==p.id);return f&&(p.top=f.top-a),[p,...x]},[]),c.map(x=>{var N,M;const p=t.find(y=>y.id===x.id);if(!p)return null;const f=n[x.id],w=r?r(((N=p.data.at(-1))==null?void 0:N.value)??0):U(((M=p.data.at(-1))==null?void 0:M.value)??0);return{id:x.id,left:x.left+l,top:x.top+u,seriesData:p,color:f,value:w,displayText:p.name}}).filter(Boolean)},Rt=({className:t})=>s.jsx("div",{className:F("relative size-8",t),children:s.jsx("div",{className:"absolute left-1/2 top-1/2 flex size-12 -translate-x-1/2 -translate-y-1/2 items-center justify-center",children:s.jsxs("div",{className:"relative h-6 w-full",children:[Array.from({length:5}).map((n,e)=>s.jsx("div",{className:"loading-orb-dot absolute size-1.5 rounded-full will-change-transform",style:{left:`${e/6*100}%`,animation:`dnaStrand1Move 2s infinite ease-in-out ${-e*.2}s, dnaStrand1Scale 2s infinite ease-in-out ${-e*.2}s, dnaStrand1Color 2s infinite ease-in-out ${-e*.2}s`}},`strand1-${e}`)),Array.from({length:5}).map((n,e)=>s.jsx("div",{className:"loading-orb-dot absolute size-1.5 rounded-full",style:{left:`${e/6*100}%`,animation:`dnaStrand2Move 2s infinite ease-in-out ${-e*.2}s, dnaStrand2Scale 2s infinite ease-in-out ${-e*.2}s, dnaStrand2Color 2s infinite ease-in-out ${-e*.2}s`}},`strand2-${e}`))]})})}),qt=({series:t,width:n,height:e=400,timeframe:i,className:l,isLoading:u=!1,formatValue:r,unitPrefix:a,unitSuffix:o,onLabelClick:c})=>{const g=b.useRef(null),x=b.useRef(null),p=b.useRef(null),f=b.useRef(null),w=b.useRef(!1),[N,M]=b.useState(null),y=b.useMemo(()=>[...t].sort((d,m)=>{const j=d.data.length>0?d.data[d.data.length-1].value:0;return(m.data.length>0?m.data[m.data.length-1].value:0)-j}),[t]),L=b.useCallback(d=>{M(d)},[]),{seriesGroups:S,visibleGroups:z,filteredSeries:E,toggleGroup:K}=Lt(y),{seriesColors:G,isColorLoading:W}=$t(y),H=b.useMemo(()=>zt(y),[y]),k=Tt({width:n,height:e,yDomain:H,formatValue:r,containerRef:x}),_=b.useMemo(()=>At(y),[y]),B=b.useMemo(()=>It(_,y),[_,y]),V=b.useMemo(()=>Math.max(...E.map(d=>d.data.map(m=>m.value)).flat().filter(d=>d!==void 0)),[E]),A=b.useMemo(()=>!k.innerWidth||!k.innerHeight?null:Pt(B,H,k.innerWidth,k.innerHeight),[B,H,k.innerWidth,k.innerHeight]),h=b.useMemo(()=>!A||!k.dynamicLeftMargin?[]:Yt(E,G,A,k.dynamicLeftMargin,O.top,r),[A,k.dynamicLeftMargin,E,G,r]);return b.useEffect(()=>{if(!g.current||t.length===0||W||!A||k.width===null||k.innerWidth===null||k.dynamicLeftMargin===null)return;const d=X(g.current),{innerWidth:m,innerHeight:j,dynamicLeftMargin:C}=k;d.selectAll("*").remove();const{xScale:v,yScale:T}=A,D=d.append("g").attr("transform",`translate(${C},${O.top})`);Xt(D,T,m),Ut(D,v,T,j,i,r,m),_t(D,E,G,v,T,!w.current&&!Q()),w.current=!0;const{onMouseMove:I,onMouseLeave:nt,destroy:ut}=Vt({g:D,containerWidth:k.width,innerWidth:m,innerHeight:k.innerHeight,xScale:v,yScale:T,combinedData:B,filteredSeries:E,tooltipRef:p,containerRef:x,legendRef:f,highestValue:V,formatValue:r}),Z=D.append("rect").attr("class","overlay").attr("width",m).attr("height",j).attr("fill","transparent").style("cursor","crosshair").style("pointer-events","all");return Z.on("mousemove",I).on("mouseleave",nt).on("touchstart",I).on("touchmove",I).on("touchend",nt),Z.raise(),()=>{ut(),Z.on("mousemove",null).on("mouseleave",null).on("touchstart",null).on("touchmove",null).on("touchend",null),d.selectAll("*").interrupt(),d.selectAll("*").remove()}},[B,H,t.length,E,A,k.innerWidth,k.innerHeight,k.dynamicLeftMargin,e,i,W,G,r]),b.useEffect(()=>{if(!g.current||t.length===0||W)return;X(g.current).select("g").selectAll("path[data-series-id]").transition().duration(200).ease(R).attr("opacity",function(){const j=X(this).attr("data-series-id");return tt(j,N)})},[N,t,G,W]),!u&&t.length===0?s.jsx("div",{className:F("relative w-full",l),children:s.jsx("div",{className:F("mx-auto flex w-full items-center justify-center text-sm text-gray-400"),style:{height:e},children:"No data available"})}):s.jsx("div",{ref:x,className:F("relative w-full",l),style:{width:n,minHeight:e},children:u?s.jsx(Rt,{className:"absolute left-1/2 top-1/2 -translate-x-1/2 -translate-y-1/2"}):s.jsxs(s.Fragment,{children:[S.length>0&&s.jsx("div",{className:"mb-3 flex flex-wrap items-center justify-center gap-2",children:S.map(d=>s.jsx(Ft,{group:d,isVisible:z.has(d),onClick:()=>K(d)},d))}),k.width!==null&&s.jsxs(s.Fragment,{children:[s.jsx("div",{className:"relative z-20",children:s.jsx(Wt,{legendRef:f,legendItems:h,containerWidth:k.width,hoveredSeriesId:N,onSeriesHover:L,onLabelClick:c,unitPrefix:a,unitSuffix:o})}),s.jsxs("div",{className:"relative select-none",children:[s.jsx("svg",{ref:g,width:k.width,height:e,className:"relative z-0",style:{maxWidth:"100%",width:"100%",display:"block",overflow:"visible"}}),s.jsx("div",{className:"z-10",children:s.jsx(Bt,{containerWidth:k.width,tooltipRef:p,series:E,seriesColors:G,unitPrefix:a,unitSuffix:o})})]})]})]})})},te=b.memo(qt);export{te as M};