22 getCoinDetails ,
33 getCoinOHLC ,
44 fetchPools ,
5- } from '@/lib/ coingecko.actions' ;
5+ } from '@/lib/coingecko.actions' ;
66import { formatPrice , timeAgo } from '@/lib/utils' ;
77import { ArrowUpRight } from 'lucide-react' ;
88import Link from 'next/link' ;
@@ -47,7 +47,7 @@ const CoinDetails = async ({ params }: { params: Promise<{ id: string }> }) => {
4747 } ;
4848
4949 return (
50- < main className = 'py-12 container size-full grid grid-cols-1 lg:grid-cols-2 xl:grid-cols-3 items-center gap-6 xl:gap-10 justify-center ' >
50+ < main className = 'coin-details-main ' >
5151 < section className = 'size-full xl:col-span-2' >
5252 < LiveDataWrapper
5353 coinOHLCData = { coinOHLCData }
@@ -58,16 +58,16 @@ const CoinDetails = async ({ params }: { params: Promise<{ id: string }> }) => {
5858 { /* Exchange Listings */ }
5959 < div className = 'w-full mt-8 space-y-4' >
6060 < h4 className = 'text-2xl' > Exchange Listings</ h4 >
61- < div className = 'custom-scrollbar bg-dark-500 rounded-xl overflow-hidden ' >
61+ < div className = 'custom-scrollbar exchange-container ' >
6262 < Table >
6363 < TableHeader className = 'text-purple-100' >
6464 < TableRow className = 'hover:bg-transparent' >
65- < TableHead className = 'pl-5 py-5 text-purple-100 ' >
65+ < TableHead className = 'exchange-header-left ' >
6666 Exchange
6767 </ TableHead >
6868 < TableHead className = 'text-purple-100' > Pair</ TableHead >
6969 < TableHead className = 'text-purple-100' > Price</ TableHead >
70- < TableHead className = 'pr-5 text-purple-100 text-end ' >
70+ < TableHead className = 'exchange-header-right ' >
7171 Last Traded
7272 </ TableHead >
7373 </ TableRow >
@@ -84,18 +84,18 @@ const CoinDetails = async ({ params }: { params: Promise<{ id: string }> }) => {
8484 < Link
8585 href = { ticker . trade_url }
8686 target = '_blank'
87- className = 'py-4 pl-3 block max-w-[110px] truncate '
87+ className = 'exchange-link '
8888 >
8989 { ticker . market . name }
9090 </ Link >
9191 </ TableCell >
92- < TableCell className = 'font-medium truncate max-w-[100%] py-4 pr-5 ' >
92+ < TableCell className = 'exchange-pair ' >
9393 { ticker . base } / { ticker . target }
9494 </ TableCell >
9595 < TableCell className = 'font-medium' >
9696 { formatPrice ( ticker . converted_last . usd ) }
9797 </ TableCell >
98- < TableCell className = 'pr-5 text-end ' >
98+ < TableCell className = 'exchange-timestamp ' >
9999 { timeAgo ( ticker . timestamp ) }
100100 </ TableCell >
101101 </ TableRow >
@@ -110,7 +110,7 @@ const CoinDetails = async ({ params }: { params: Promise<{ id: string }> }) => {
110110 < section className = 'size-full max-lg:mt-8 lg:col-span-1' >
111111 { /* Converter */ }
112112 < div className = 'w-full space-y-5' >
113- < h4 className = 'text-2xl font-semibold ' >
113+ < h4 className = 'converter-title ' >
114114 { coin . symbol . toUpperCase ( ) } Converter
115115 </ h4 >
116116 < Converter
@@ -123,27 +123,27 @@ const CoinDetails = async ({ params }: { params: Promise<{ id: string }> }) => {
123123 { /* Coin Details */ }
124124 < div className = 'w-full mt-8 space-y-4' >
125125 < h4 className = 'text-2xl' > Coin Details</ h4 >
126- < div className = 'rounded-lg grid sm:grid-cols-2 md: grid-cols-3 lg:grid-cols-2 gap-3 sm:gap-5 ' >
127- < div className = 'text-base bg-dark-500 px-5 py-6 rounded-lg flex flex-col gap-3 ' >
126+ < div className = 'coin-details- grid' >
127+ < div className = 'detail-card ' >
128128 < p className = 'text-purple-100' > Market Cap</ p >
129129 < p className = 'text-base font-medium' >
130130 { formatPrice ( coin . marketCap ) }
131131 </ p >
132132 </ div >
133- < div className = 'text-base bg-dark-500 px-5 py-6 rounded-lg flex flex-col gap-3 ' >
133+ < div className = 'detail-card ' >
134134 < p className = 'text-purple-100 ' > Market Cap Rank</ p >
135135 < p className = 'text-base font-bold' > # { coin . marketCapRank } </ p >
136136 </ div >
137- < div className = 'text-base bg-dark-500 px-5 py-6 rounded-lg flex flex-col gap-3 ' >
137+ < div className = 'detail-card ' >
138138 < p className = 'text-purple-100 ' > Total Volume</ p >
139139 < p className = 'text-base font-medium' >
140140 { formatPrice ( coin . totalVolume ) }
141141 </ p >
142142 </ div >
143- < div className = 'text-base bg-dark-500 px-5 py-6 rounded-lg flex flex-col gap-3 ' >
143+ < div className = 'detail-card ' >
144144 < p className = 'text-purple-100 ' > Website</ p >
145145 { coin . website ? (
146- < div className = 'flex items-center text-green-500 gap-1 ' >
146+ < div className = 'detail-link ' >
147147 < Link href = { coin . website } target = '_blank' >
148148 Website
149149 </ Link >
@@ -153,10 +153,10 @@ const CoinDetails = async ({ params }: { params: Promise<{ id: string }> }) => {
153153 '-'
154154 ) }
155155 </ div >
156- < div className = 'text-base bg-dark-500 px-5 py-6 rounded-lg flex flex-col gap-3 ' >
156+ < div className = 'detail-card ' >
157157 < p className = 'text-purple-100 ' > Explorer</ p >
158158 { coin . explorer ? (
159- < div className = 'flex items-center text-green-500 gap-1 ' >
159+ < div className = 'detail-link ' >
160160 < Link href = { coin . explorer } target = '_blank' >
161161 Explorer
162162 </ Link >
@@ -166,10 +166,10 @@ const CoinDetails = async ({ params }: { params: Promise<{ id: string }> }) => {
166166 '-'
167167 ) }
168168 </ div >
169- < div className = 'text-base bg-dark-500 px-5 py-6 rounded-lg flex flex-col gap-3 ' >
169+ < div className = 'detail-card ' >
170170 < p className = 'text-purple-100 ' > Community Link</ p >
171171 { coin . communityLink ? (
172- < div className = 'flex items-center text-green-500 gap-1 ' >
172+ < div className = 'detail-link ' >
173173 < Link href = { coin . communityLink } target = '_blank' >
174174 Community
175175 </ Link >
@@ -182,9 +182,7 @@ const CoinDetails = async ({ params }: { params: Promise<{ id: string }> }) => {
182182 </ div >
183183 </ div >
184184
185- < p className = 'mt-8 text-sm font-sans text-purple-50 leading-[30px]' >
186- { coin . description }
187- </ p >
185+ < p className = 'coin-description' > { coin . description } </ p >
188186 </ section >
189187 </ main >
190188 ) ;
0 commit comments