1+ import { Skeleton } from "@/components/ui/skeleton" ;
2+
13const GpuAvailability = ( {
24 totalGpus,
35 totalAvailableGpus,
@@ -12,35 +14,50 @@ const GpuAvailability = ({
1214 const availablePercentage = ( totalAvailableGpus / totalGpus ) * 100 ;
1315 return (
1416 < div className = "flex flex-col gap-3" >
15- < h1 className = " text-2xl !font-semibold" >
16- GPU Pricing and Availability
17- </ h1 >
17+ { isLoading ? (
18+ < Skeleton className = "h-9 w-64 dark:bg-darkGray" />
19+ ) : (
20+ < h1 className = "text-2xl !font-semibold" >
21+ GPU Pricing and Availability
22+ </ h1 >
23+ ) }
1824 < div className = "flex gap-1" >
19- < div className = "bg-lightGray border-darkGrayBorder flex items-center gap-1.5 rounded-full border px-4 py-1 dark:border-defaultBorder dark:bg-background2 " >
20- < p className = "text-darkGrayText text-xs font-medium dark:text-para" >
21- Total GPUs:
22- </ p >
23- < p className = "text-sm font-semibold text-foreground" > { totalGpus } </ p >
24- </ div >
25- < div className = "bg-lightGray border-darkGrayBorder flex items-center gap-1.5 rounded-full border px-4 py-1 dark:border-defaultBorder dark:bg-background2 " >
26- < div className = "flex items-center gap-1.5" >
27- < p className = "text-darkGrayText text-xs font-medium dark:text-para" >
28- Available GPUs:
29- </ p >
30- < p className = "text-sm font-semibold text-foreground" >
31- { availablePercentage . toFixed ( 2 ) } %
32- </ p >
33- </ div >
34- < div className = "bg-darkGrayBorder h-full w-[1.5px]" />
35- < div className = "flex items-center gap-1.5" >
36- < p className = "text-darkGrayText text-xs font-medium dark:text-para" >
37- Used:
38- </ p >
39- < p className = "text-sm font-semibold text-foreground" >
40- { usedPercentage . toFixed ( 2 ) } %
41- </ p >
42- </ div >
43- </ div >
25+ { isLoading ? (
26+ < >
27+ < Skeleton className = "h-8 w-32 rounded-full dark:bg-darkGray" />
28+ < Skeleton className = "h-8 w-64 rounded-full dark:bg-darkGray" />
29+ </ >
30+ ) : (
31+ < >
32+ < div className = "flex items-center gap-1.5 rounded-full border border-darkGrayBorder bg-lightGray px-4 py-1 dark:border-defaultBorder dark:bg-background2 " >
33+ < p className = "text-xs font-medium text-darkGrayText dark:text-para" >
34+ Total GPUs:
35+ </ p >
36+ < p className = "text-sm font-semibold text-foreground" >
37+ { totalGpus }
38+ </ p >
39+ </ div >
40+ < div className = "flex items-center gap-1.5 rounded-full border border-darkGrayBorder bg-lightGray px-4 py-1 dark:border-defaultBorder dark:bg-background2 " >
41+ < div className = "flex items-center gap-1.5" >
42+ < p className = "text-xs font-medium text-darkGrayText dark:text-para" >
43+ Available GPUs:
44+ </ p >
45+ < p className = "text-sm font-semibold text-foreground" >
46+ { availablePercentage . toFixed ( 2 ) } %
47+ </ p >
48+ </ div >
49+ < div className = "h-full w-[1.5px] bg-darkGrayBorder" />
50+ < div className = "flex items-center gap-1.5" >
51+ < p className = "text-xs font-medium text-darkGrayText dark:text-para" >
52+ Used:
53+ </ p >
54+ < p className = "text-sm font-semibold text-foreground" >
55+ { usedPercentage . toFixed ( 2 ) } %
56+ </ p >
57+ </ div >
58+ </ div >
59+ </ >
60+ ) }
4461 </ div >
4562 </ div >
4663 ) ;
0 commit comments