token-data.tsx 1019 B

123456789101112131415161718192021222324
  1. export function TokenData({ stats }: { stats: Record<string, any> | null }) {
  2. if (!stats) return <p>Loading...</p>;
  3. const data = [
  4. { label: "Market Cap", value: `${stats.marketCap.toFixed(2)} AIUS` },
  5. { label: "24h Change", value: `${stats.change24h >= 0 ? "+" : ""}${stats.change24h.toFixed(2)}%` },
  6. { label: "TVL", value: `${stats.tvl.toFixed(2)} AIUS` },
  7. { label: "Holders", value: stats.holders.toLocaleString() },
  8. { label: "24h Volume", value: `${stats.volume.toFixed(2)} AIUS` },
  9. ];
  10. return (
  11. <div className="flex justify-between bg-white p-6 rounded-lg border border-gray-200 shadow-sm">
  12. {data.map((item) => (
  13. <div key={item.label} className="text-center">
  14. <p className="text-sm font-roboto-mono text-gray-500 mb-1">{item.label}</p>
  15. <p className={`text-lg font-orbitron ${item.label === "24h Change" && stats.change24h < 0 ? "text-red-500" : "text-gray-800"}`}>
  16. {item.value}
  17. </p>
  18. </div>
  19. ))}
  20. </div>
  21. );
  22. }