(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[7728],{4763:function(e,t,a){(window.__NEXT_P=window.__NEXT_P||[]).push(["/rsi-heatmap",function(){return a(2735)}])},2735:function(e,t,a){"use strict";a.r(t),a.d(t,{default:function(){return RSIHeatmap}});var r=a(5893),n=a(9008),i=a.n(n),s=a(7294),o=a(7626),c=a(5912),l=a(1526),m=a(6720),d=a(7066),p=a(529);let AverageGain=class AverageGain extends p.z${constructor(e){super(e);let t=e.values,a=e.period,r=this.format;this.generator=function*(e){var t,a,n=yield,i=1,s=0,o=n;for(n=yield;;)(a=(a=n-o)>0?a:0)>0&&(s+=a),i<e?i++:t=void 0===t?s/e:(t*(e-1)+a)/e,o=n,t=void 0!==t?r(t):void 0,n=yield t}(a),this.generator.next(),this.result=[],t.forEach(e=>{var t=this.generator.next(e);void 0!==t.value&&this.result.push(t.value)})}nextValue(e){return this.generator.next(e).value}};AverageGain.calculate=function(e){p.z$.reverseInputs(e);var t=new AverageGain(e).result;return e.reversedInput&&t.reverse(),p.z$.reverseInputs(e),t};let AverageLoss=class AverageLoss extends p.z${constructor(e){super(e);let t=e.values,a=e.period,r=this.format;this.generator=function*(e){var t,a,n=yield,i=1,s=0,o=n;for(n=yield;;)(a=(a=o-n)>0?a:0)>0&&(s+=a),i<e?i++:t=void 0===t?s/e:(t*(e-1)+a)/e,o=n,t=void 0!==t?r(t):void 0,n=yield t}(a),this.generator.next(),this.result=[],t.forEach(e=>{var t=this.generator.next(e);void 0!==t.value&&this.result.push(t.value)})}nextValue(e){return this.generator.next(e).value}};AverageLoss.calculate=function(e){p.z$.reverseInputs(e);var t=new AverageLoss(e).result;return e.reversedInput&&t.reverse(),p.z$.reverseInputs(e),t};let RSI=class RSI extends p.z${constructor(e){super(e);var t=e.period,a=e.values,r=new AverageGain({period:t,values:[]}),n=new AverageLoss({period:t,values:[]});let i=1;this.generator=function*(e){for(var t,a,s,o,c=yield;;)t=r.nextValue(c),a=n.nextValue(c),void 0!==t&&void 0!==a&&(o=0===a?100:0===t?0:parseFloat((100-100/(1+(s=isNaN(s=t/a)?0:s))).toFixed(2))),i++,c=yield o}(0),this.generator.next(),this.result=[],a.forEach(e=>{var t=this.generator.next(e);void 0!==t.value&&this.result.push(t.value)})}nextValue(e){return this.generator.next(e).value}};RSI.calculate=function(e){p.z$.reverseInputs(e);var t=new RSI(e).result;return e.reversedInput&&t.reverse(),p.z$.reverseInputs(e),t};var h=a(6488);a(4321),a(813);var u=a(9151),g=a(6083),x=a(8688);function RSIHeatmap(){let[e,t]=(0,s.useState)(!0),[a,n]=(0,s.useState)(!0),[c,p]=(0,s.useState)("isInfoVisible"),[f,v]=(0,s.useState)([]),[I,y]=(0,s.useState)("4h"),[w,S]=(0,s.useState)("Top 50"),[R,N]=(0,s.useState)(null),[T,A]=(0,s.useState)("500px"),[E,b]=(0,s.useState)(!1),[O,C]=(0,s.useState)("primeXBTLogo"),L=(0,x.eI)("https://swmkwzrguapkaodkgcmt.supabase.co","eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJzdXBhYmFzZSIsInJlZiI6InN3bWt3enJndWFwa2FvZGtnY210Iiwicm9sZSI6ImFub24iLCJpYXQiOjE3MTIxODI1NDMsImV4cCI6MjAyNzc1ODU0M30.At51g7QDyI7Pk-nx_-S5ShAcme7bjhSUqX8YsVvGB9A"),updateLogo=()=>{let e=window.innerWidth;C(e>1100?"primeXBTLogoLight":"primeXBTLogo")};(0,s.useEffect)(()=>(updateLogo(),window.addEventListener("resize",updateLogo),()=>{window.removeEventListener("resize",updateLogo)}),[]),(0,s.useEffect)(()=>{let e=window.location.pathname,t="isInfoVisible_".concat(e);p(t);let a=localStorage.getItem(t);null!==a&&n("false"!==a)},[]);let toggleInfo=()=>{let e=!a;localStorage.setItem(c,e.toString()),n(e)},changeInterval=e=>{y(e)},changeCategory=e=>{S(e)};(0,s.useEffect)(()=>{(0,h.ZP)(":not(.sidebar-tooltip)[data-tippy-content]",{placement:"bottom",theme:"customTheme"})},[]);let j=["BNB","SOL","ADA","TRX","TON","DOT","BCH","AVAX","ATOM","HBAR","CRO","NEAR","INJ","KAS","ALGO","EGLD","XTZ","FTM","KAVA","FLOW","XEC","CHZ","XRD","TON","SUI","APT","HBAR","SEI","OM","AR"],D=["ICP","RNDR","SAND","AXS","MANA","FLOKI","ILV","ENJ","MC","MAGIC","PYR","HOOK","RACA","ALICE","WILD","MBOX","YGG","POLIS","XYO","STARL","GHST","ATLAS","ERN","VR"],M=["STETH","LINK","DAI","UNI","LDO","MKR","AAVE","INJ","GRT","SNX","RUNE","FRAX","RPL","FXS","CETH","CRV","DYDX","GMX","NXM","COMP","1INCH","CAKE","JST","GNO"],P=["UNI","SNX","RUNE","CRV","DYDX","1INCH","CAKE","GNO","LRC","OSMO","BAL","SUSHI","JOE","VVS","CET","BNT","VEGA","NRV","DODO","LINA","LON","ORCA","RAY","FLM","PERP","JUP","RAY"],k=["RENDER","FET","AGIX","AKT","OCEAN","SURE","TRAC","0X0","NMR","IQ","RLC","DNX","HEART","ORAI","RSS3","SDAO","KEY","PHB","IMGNAI","FORT","ARC","VAI","PAAL","OPTI","TAO","ZIG"],F=["SAND","AXS","GALA","APE","FLOKI","ILV","ENJ","GMT","MC","WAXP","MAGIC","RON","BLZ","SLP","PYR","HOOK","FARA","TOWER","MIST","BLOK","EPIC","WEMIX","VEMP","YGG","KOK","NAKA"],z=["DOGE","SHIB","PEPE","FLOKI","KISHU","BONK","TSUKA","GROK","WIF","WEN","BODEN","MEW","CAT","NPC","MOG","POPCAT","MAGA","SLERF","BOME","MICHI","GUMMY","SUNDOG","BRETT","MOODENG","ACT","PNUT","NEIRO","TURBO","DOGS","BABYDOGE"],G=["LINK","MKR","ONDO","PENDLE","OM","SNX","RBN","XDC","POLYX","CFG","CHR","CTC","PRO","GFI","ORAI","DUSK","TRU","TOKEN","HIFI","PROPC","CPOOL","PROPS","ATR","PLANET","RIO","SOIL","RSR","MPL","BOSON"],H=[],getCategoryTokens=e=>{switch(e){case"L1":return j;case"Metaverse":return D;case"DeFi":return M;case"DEx":return P;case"AI":return k;case"GameFi":return F;case"Meme":return z;case"Top 100":default:return[];case"Custom":return H;case"RWA":return G}},fetchRSIDataBatch=async(e,t)=>{try{let a="https://6gpolmx40g.execute-api.eu-west-2.amazonaws.com/?api=".concat(encodeURIComponent("api.binance.com")),r=await d.Z.post(a,{symbols:e,interval:t,tool:"RSI"});return r.data}catch(e){return console.error("Error fetching RSI data batch:",e),[]}};(0,s.useEffect)(()=>{let fetchData=async()=>{t(!0);try{let e;let{data:t,error:a}=await L.from("market_cap").select("*").order("market_cap",{ascending:!1});if(a){console.error("Error fetching data from Supabase:",a);return}let r=["USDT","USDC","DAI","WBTC","LEO","TUSD","BUSD","BTCB","FTT","FDUSD","USDe"];if("Top 50"===w)e=t.filter(e=>!r.includes(e.symbol)).slice(0,50);else if("Top 100"===w)e=t.filter(e=>!r.includes(e.symbol)).slice(0,100);else{let a=getCategoryTokens(w);e=t.filter(e=>a.includes(e.symbol))}let n=e.map(e=>e.symbol+"USDT"),i=await fetchRSIDataBatch(n,I),s=i.map(t=>{let{symbol:a,closes:r}=t;return new Promise(t=>{let n=RSI.calculate({values:r,period:14}),i=n.length>0?n[n.length-1]:NaN,s=e.find(e=>e.symbol+"USDT"===a);t({symbol:s.symbol,rsi:i,priceUsd:parseFloat(s.price),changePercent24Hr:parseFloat(s.percent_change_24h),marketCapUsd:parseFloat(s.market_cap)})})}),o=await Promise.all(s);v(o)}catch(e){console.error("Error fetching data:",e)}finally{t(!1)}};fetchData();let e=window.setInterval(()=>{fetchData()},9e5);return()=>clearInterval(e)},[I,w]),(0,s.useEffect)(()=>{let handleResize=()=>{window.innerWidth>=1920?A("900px"):window.innerWidth>=1280?A("600px"):A("500px")};return handleResize(),window.addEventListener("resize",handleResize),()=>{window.removeEventListener("resize",handleResize)}},[]);let U=(0,s.useRef)(null),drawHeatmap=()=>{if(f&&f.length>0&&U.current){let e=U.current,t=e.getContext("2d"),a=window.innerWidth>=2560?1e3:window.innerWidth>=1920?800:window.innerWidth>=1280?600:500,r={top:20,bottom:50,left:60},n=e.parentElement.clientWidth-40;e.width=(n+40)*2,e.height=(a+r.top+r.bottom)*2,e.style.width="".concat(n+40,"px"),e.style.height="".concat(a+r.top+r.bottom,"px"),t.scale(2,2),t.translate(40,0),t.clearRect(0,0,e.width,e.height);let xScale=e=>40+e/(f.length-1)*(n-40-40),yScale=e=>{let t=a-0;return(e-10)/90*(0-t)+t};[{color:"#15803d",rsiRange:[10,30],opacity:.3},{color:"#22c55e",rsiRange:[30,40],opacity:.5},{color:"#52525b",rsiRange:[40,60],opacity:.5},{color:"#ef4444",rsiRange:[60,70],opacity:.5},{color:"#b91c1c",rsiRange:[70,100],opacity:.5}].forEach(e=>{t.fillStyle=e.color,t.globalAlpha=e.opacity;let a=yScale(e.rsiRange[1]),r=yScale(e.rsiRange[0]);t.fillRect(0,a,n,r-a)}),t.globalAlpha=1,f.forEach((e,a)=>{let r=xScale(a),n=yScale(e.rsi);t.beginPath(),t.arc(r,n,5,0,2*Math.PI),t.fillStyle=e.rsi>=60?"#f87171":e.rsi>=40?"#a1a1aa":"#10b981",t.fill()}),f.forEach((e,a)=>{let r=xScale(a),n=yScale(e.rsi)-10;t.font="12px Oxanium, Helvetica, Verdana, Tahoma, sans-serif",t.fillStyle="#d4d4d8",t.textAlign="center",t.fillText(e.symbol,r,n)}),t.font="11px Oxanium, Helvetica, Verdana, Tahoma, sans-serif",t.fillStyle="#cbd5e1",t.textAlign="right",[10,20,30,40,50,60,70,80,90,100].forEach(e=>{let a=yScale(e),n=10===e?0:100===e?8:4;t.fillText(e,r.left-70,a+n)}),[{text:"OVERSOLD",rsiRange:[10,40]},{text:"NEUTRAL",rsiRange:[40,60]},{text:"OVERBOUGHT",rsiRange:[60,100]}].forEach(e=>{let a=yScale((e.rsiRange[0]+e.rsiRange[1])/2)-45;t.save(),t.translate(n-30,a),t.rotate(Math.PI/2),t.font="20px Oxanium, Helvetica, Verdana, Tahoma, sans-serif",t.fillStyle="#a1a1aa",t.textAlign="center";let r=e.text.split(""),i=0;r.forEach(e=>{t.fillText(e,i,0),i+=t.measureText(e).width+2}),t.restore()});let i=f.filter(e=>!isNaN(e.rsi)),s=i.reduce((e,t)=>e+t.rsi,0)/i.length,o=yScale(s);t.strokeStyle="#f59e0b",t.lineWidth=1,t.setLineDash([5,5]),t.beginPath(),t.moveTo(0,o),t.lineTo(n,o),t.stroke();let c="Average RSI: ".concat(s.toFixed(2));t.font="18px Oxanium, Helvetica, Verdana, Tahoma, sans-serif",t.fillStyle="#a1a1aa";let l=t.measureText(c).width;t.fillText(c,(n-l)/2+150,r.top+10);let m=new Image;m.src="/assets/images/mainLogoLetters.png",m.onload=()=>{let e=a+r.top-37.75-30;t.drawImage(m,10,e,507/4,37.75)},e.addEventListener("mousemove",function(t){let a=e.getBoundingClientRect(),r=t.clientX-a.left-40,n=t.clientY-a.top,i=document.getElementById("tooltip");i.style.display="none",f.forEach((e,a)=>{let s=xScale(a),o=yScale(e.rsi);if(5>Math.sqrt((r-s)**2+(n-o)**2)){var c;i.style.display="block",i.style.left="".concat(t.clientX+10,"px"),i.style.top="".concat(t.clientY+10,"px"),i.innerHTML="\n <div><strong>Ticker:</strong> ".concat(e.symbol,"</div>\n <div><strong>RSI:</strong> ").concat(e.rsi.toFixed(2),"</div>\n <div><strong>Price:</strong> ").concat((c=e.priceUsd,new Intl.NumberFormat("en-US",{style:"currency",currency:"USD"}).format(c)),"</div>\n <div><strong>Change (24h):</strong> ").concat(parseFloat(e.changePercent24Hr).toFixed(2),"%</div>\n ")}})})}};(0,s.useEffect)(()=>{let e=document.createElement("link");e.href="https://fonts.googleapis.com/css2?family=Oxanium:wght@300;400;500;600;700&display=swap",e.rel="stylesheet",e.onload=()=>{document.fonts.ready.then(()=>{b(e=>!e)})},document.head.appendChild(e);let handleResize=()=>{drawHeatmap()};return window.addEventListener("resize",handleResize),()=>window.removeEventListener("resize",handleResize)},[f]),(0,s.useEffect)(()=>{drawHeatmap()},[E,f]);let convertCanvasToImage=async(e,t)=>{let a=document.createElement("canvas"),r=window.innerWidth>640?100:60;a.width=e.width/2+40,a.height=e.height/2+r+20;let n=a.getContext("2d");return n.fillStyle="black",n.fillRect(0,0,a.width,a.height),n.drawImage(e,20,r,e.width/2,e.height/2),t&&t(a),a},captureCanvas=async()=>{let e=U.current;if(!e)return null;try{let t=await convertCanvasToImage(e,e=>{drawExtraContent(e,w)});return new Promise(e=>{t.toBlob(t=>e(t),"image/png")})}catch(e){return console.error("Error capturing canvas:",e),null}},downloadImage=async()=>{let e=await captureCanvas();if(!e)return;let t=URL.createObjectURL(e),a=document.createElement("a"),r=new Date,n="".concat(r.getFullYear(),"-").concat((r.getMonth()+1).toString().padStart(2,"0"),"-").concat(r.getDate().toString().padStart(2,"0"));a.href=t,a.download="rsi-heatmap-".concat(w," coins at ").concat(I,"-").concat(n,".png"),document.body.appendChild(a),a.click(),document.body.removeChild(a),URL.revokeObjectURL(t)},copyToClipboard=async()=>{let e=await captureCanvas();e&&navigator.clipboard.write([new ClipboardItem({"image/png":e})]).then(()=>{let e=document.querySelector(".fa-copy");e&&(e.classList.add("fa-flip"),setTimeout(()=>{e.classList.remove("fa-flip")},1e3))}).catch(e=>{console.error("Error copying image to clipboard:",e)})},drawExtraContent=(e,t)=>{let a,r,n,i;let s=e.getContext("2d"),o=window.innerWidth;o>640?(a=28,r=14,n=75,i=35):(a=18,r=12,n=47,i=20),s.font="".concat(r,"px Oxanium"),s.fillStyle="#e4e4e7";let c="Created at TradingDigits.io",l=s.measureText(c).width,m=(e.width-l)/2;s.fillText(c,m,i),s.font="".concat(a,"px Oxanium");let d="".concat(t," Coins RSI Heatmap, ").concat(I,", ").concat(new Date().toLocaleDateString()),p=s.measureText(d).width,h=(e.width-p)/2;s.fillText(d,h,n)};return(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(()=>(0,r.jsx)(r.Fragment,{children:(0,r.jsxs)(i(),{children:[(0,r.jsx)("title",{children:"Crypto RSI Heatmap: Scan RSI Across the Entire Market"}),(0,r.jsx)("meta",{name:"description",content:"Use this multi-category crypto market RSI heatmap to track strength of the most important coins—TOP 50, L1, AI, GameFi, DeFi & more—in real time"}),(0,r.jsx)("meta",{name:"keywords",content:"rsi, heatmap, crypto, market, scanner, tracker, screener, relative, strength, index"}),(0,r.jsx)("meta",{property:"og:title",content:"Crypto Trading RSI Heatmap: Scan RSI Across the Entire Market"}),(0,r.jsx)("meta",{property:"og:description",content:"Use this multi-category crypto market RSI heatmap to track strength of the most important coins—TOP 50, L1, AI, GameFi, DeFi & more—in real time"}),(0,r.jsx)("meta",{property:"og:image",content:"https://www.tradingdigits.io/assets/images/ogImage.jpg"}),(0,r.jsx)("meta",{property:"og:url",content:"https://www.tradingdigits.io/rsi-heatmap"}),(0,r.jsx)("meta",{name:"twitter:title",content:"Crypto Trading RSI Heatmap: Scan RSI Across the Entire Market"}),(0,r.jsx)("meta",{name:"twitter:description",content:"Use this multi-category crypto market RSI heatmap to track strength of the most important coins—TOP 50, L1, AI, GameFi, DeFi & more—in real time"}),(0,r.jsx)("meta",{name:"twitter:image",content:"https://www.tradingdigits.io/assets/images/ogImage.jpg"}),(0,r.jsx)("meta",{name:"twitter:card",content:"summary_large_image"}),(0,r.jsx)("meta",{name:"twitter:image:alt",content:"Promotional image with crypto-related illustration on black background, company name, and catchphrase about Trading Digits"}),(0,r.jsx)("meta",{name:"twitter:site",content:"@trading_digits"}),(0,r.jsx)("link",{rel:"canonical",href:"https://www.tradingdigits.io/rsi-heatmap"}),(0,r.jsx)("link",{rel:"preconnect",href:"https://fonts.googleapis.com"}),(0,r.jsx)("link",{href:"https://fonts.googleapis.com/css2?family=Oxanium:wght@300;400;500;600;700&display=swap",rel:"stylesheet"})]})}),{}),(0,r.jsx)("div",{className:"mt-10 md:mt-[95px] sm:mt-[90px] mt-[80px]",children:(0,r.jsxs)("div",{className:"pb-3 pt-1 sm:pt-1 lg:pt-0 ".concat(e?"h-screen":"h-full"," 2.5xl:h-full 3xl:h-screen min-[1540px]:pb-[100px]"),children:[(0,r.jsxs)("div",{className:"flex items-center justify-between text-center ",children:[(0,r.jsxs)("div",{className:"flex items-center",children:[(0,r.jsx)("h1",{className:"pl-2 sm:text-2xl text-xl font-[Oxanium-Regular]",children:"CRYPTO MARKET RSI HEATMAP"}),(0,r.jsx)(l.M,{children:!a&&(0,r.jsx)(m.E.div,{initial:{opacity:0},animate:{opacity:1},exit:{opacity:0},transition:{duration:.5},className:"ml-3",children:(0,r.jsx)("i",{onClick:toggleInfo,className:"fa-solid fa-circle-info fa-lg text-zinc-200 cursor-pointer hover:text-amber-400 transition duration-300"})})})]}),(0,r.jsxs)("div",{className:"flex",children:[(0,r.jsx)("button",{onClick:copyToClipboard,className:"flex justify-center items-center hover:bg-zinc-600 transition-all duration-300","data-tippy-content":"Copy Image",children:(0,r.jsx)("i",{className:"fa-solid fa-copy fa-lg py-6 px-3.5"})}),(0,r.jsx)("button",{onClick:downloadImage,className:"flex justify-center items-center hover:bg-zinc-600 transition-all duration-300","data-tippy-content":"Save Image",children:(0,r.jsx)("i",{className:"fa-solid fa-camera fa-lg py-6 px-3.5"})})]})]}),(0,r.jsx)(l.M,{children:a&&(0,r.jsxs)(m.E.div,{initial:{opacity:0},animate:{opacity:1},exit:{opacity:0},transition:{duration:.5},className:"relative px-2 py-2 flex items-center mr-0 mb-4 bg-[#363738] justify-center w-full",children:[(0,r.jsx)("i",{className:"fa-solid fa-circle-info fa-2xl mr-3 text-zinc-200"}),(0,r.jsx)("div",{className:"font-[Oxanium-Regular] sm:text-sm text-xs pr-4",children:(0,r.jsx)("p",{children:"In trading RSI (Relative Strength Index) indicator is used to measure strength of this or that asset in real-time. And this RSI heatmap takes the most important coins on the crypto market across multiple categories—Top 50, L1, DEx, DeFi, Metaverse, AI, GameFi, and Meme—and plots them onto a chart so that you can easily track the performance of your favorite crypto tokens and find out if they are oversold or overbought. Not financial advice."})}),(0,r.jsx)("div",{onClick:toggleInfo,className:"absolute top-0 right-0 flex items-start hover:bg-zinc-500 cursor-pointer py-0.5 px-1 transition duration-300",children:(0,r.jsx)("i",{className:"fa-solid fa-xmark"})})]})}),e?(0,r.jsx)("div",{className:"flex w-full items-center justify-center mt-32",children:(0,r.jsx)("img",{src:o.Y.logoLoading,className:"quick-pulse w-48 ",alt:"Loading..."})}):(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)("a",{href:"https://go.primexbt.direct/visit/?bta=36661&brand=primexbt&utm_campaign=rsiHeatmap",target:"_blank",rel:"noopener noreferrer",children:(0,r.jsxs)("div",{className:"ml-6 mb-2 mr-2 flex bg-gradient-to-r from-[#0a0a0a] via-[#121212] to-[#222a5a] rounded items-center justify-between cursor-pointer",children:[(0,r.jsx)("div",{className:"flex items-center sm:ml-2 ml-0 px-2",children:(0,r.jsx)("img",{src:o.Y[O],className:" ".concat("primeXBTLogo"===O?"h-[60px] min-w-14":"h-[20px]"),alt:"PrimeXBT Logo"})}),(0,r.jsxs)("div",{className:"flex items-center py-3",children:[(0,r.jsxs)("span",{className:"font-semibold sm:text-base text-sm",children:["Trade crypto ",(0,r.jsx)("span",{className:"bg-[#f8b72b] text-zinc-900 p-0.5 rounded-sm",children:"with the lowest fees"})," and get 100 USDT on your first deposit"]}),(0,r.jsx)("div",{className:"bg-[#4661ff] py-1.5 px-3 rounded font-bold xl:mx-12 sm:mx-6 mx-2 sm:text-base text-sm",children:"Get Started"})]})]})}),(0,r.jsx)("div",{id:"tooltip",className:"hidden absolute text-xs bg-zinc-700 p-2 border border-gray-400 rounded shadow-lg text-zinc-300"}),(0,r.jsxs)("div",{className:"flex justify-start ml-6 flex-col",children:[(0,r.jsxs)("div",{className:"flex mb-2",children:[(0,r.jsx)("div",{className:"text-presm text-zinc-300 py-1 pr-1.5",children:"Timeframe"}),["15m","1h","4h","1d","1w","1M"].map(e=>(0,r.jsx)("button",{className:"px-2.5 py-1 text-presm mr-0.25 ".concat(I===e?"bg-zinc-300 text-zinc-800":"bg-[#212125] text-zinc-300 hover:bg-zinc-300 hover:text-zinc-800 hover:transition duration-300"),onClick:()=>changeInterval(e),children:"15m"===e?e:e.toUpperCase()},e))]}),(0,r.jsxs)("div",{className:"flex flex-wrap",children:[(0,r.jsx)("div",{className:"text-presm text-zinc-300 py-1 mr-2.5",children:"Category"}),[{name:"Top 50",icon:"fa-star",hoverIcon:"fa-star"},{name:"Top 100",icon:u.FI7,hoverIcon:u.FI7,className:"text-lg"},{name:"L1",icon:o.Y.l1Icon,hoverIcon:o.Y.l1IconHover,className:"w-3.5"},{name:"DeFi",icon:o.Y.defiIcon,hoverIcon:o.Y.defiIconHover,className:"w-4"},{name:"DEx",icon:o.Y.dexIcon,hoverIcon:o.Y.dexIconHover,className:"w-4"},{name:"AI",icon:"fa-robot",hoverIcon:"fa-robot"},{name:"Metaverse",icon:o.Y.metaverseIcon,hoverIcon:o.Y.metaverseIconHover,className:"w-4"},{name:"GameFi",icon:"fa-gamepad",hoverIcon:"fa-gamepad"},{name:"Meme",icon:o.Y.memeIcon,hoverIcon:o.Y.memeIconHover,className:"w-4"},{name:"RWA",icon:g.OTg,hoverIcon:g.OTg,className:"text-lg"}].map(e=>{let{name:t,icon:a,hoverIcon:n,className:i}=e;return(0,r.jsxs)("button",{onMouseEnter:()=>N(t),onMouseLeave:()=>N(null),className:"flex items-center px-2.5 py-1 text-presm mr-0.25 ".concat(w===t?"bg-zinc-300 text-zinc-800":"bg-[#212125] text-zinc-300 hover:bg-zinc-300 hover:text-zinc-800 hover:transition duration-300"),onClick:()=>changeCategory(t),children:[(0,r.jsx)("span",{className:"icon-container mr-2",children:(()=>{if("string"==typeof a&&a.includes(".png")){let e=R===t||w===t?n:a;if("string"==typeof e)return(0,r.jsx)("img",{src:e,alt:t,className:i})}else if("function"==typeof a)return s.createElement(a,{className:i});else if("string"==typeof a)return(0,r.jsx)("i",{className:"fa-solid ".concat(R===t?n:a)})})()}),t]},t)})]})]}),(0,r.jsxs)("div",{className:"mt-6",children:[(0,r.jsx)("canvas",{id:"d3-container",className:"",ref:U}),(0,r.jsx)("div",{id:"tooltip",style:{position:"absolute",backgroundColor:"rgba(0, 0, 0, 0.7)",color:"white",padding:"5px",borderRadius:"5px",pointerEvents:"none",display:"none"}})]})]})]})})]})}RSIHeatmap.layout=c.Z},529:function(e,t,a){"use strict";a.d(t,{z$:function(){return Indicator}});let r={};function format(e){let t=r.precision;return t?parseFloat(e.toPrecision(t)):e}let Indicator=class Indicator{constructor(e){this.format=e.format||format}static reverseInputs(e){e.reversedInput&&(e.values&&e.values.reverse(),e.open&&e.open.reverse(),e.high&&e.high.reverse(),e.low&&e.low.reverse(),e.close&&e.close.reverse(),e.volume&&e.volume.reverse(),e.timestamp&&e.timestamp.reverse())}getResult(){return this.result}}}},function(e){e.O(0,[8391,4738,4817,2510,4838,5372,8688,7066,5912,9774,2888,179],function(){return e(e.s=4763)}),_N_E=e.O()}]);