fix responsive UI

This commit is contained in:
dohsimpson
2025-01-08 17:06:52 -05:00
parent e9dff5b4e1
commit 25798e3e8e
7 changed files with 49 additions and 20 deletions

View File

@@ -4,6 +4,7 @@ import { useState } from 'react'
import { useAtom } from 'jotai'
import { settingsAtom } from '@/lib/atoms'
import { useCoins } from '@/hooks/useCoins'
import { FormattedNumber } from '@/components/FormattedNumber'
import { Bell, Menu, Settings, User, Info, Coins } from 'lucide-react'
import { Button } from '@/components/ui/button'
import { Logo } from '@/components/Logo'
@@ -30,19 +31,25 @@ export default function Header({ className }: HeaderProps) {
<header className={`border-b bg-white dark:bg-gray-800 shadow-sm ${className || ''}`}>
<div className="mx-auto py-4 px-4 sm:px-6 lg:px-8">
<div className="flex items-center justify-between">
<Link href="/">
<Link href="/" className="mr-3 sm:mr-4">
<Logo />
</Link>
<div className="flex items-center gap-2">
<Link href="/coins" className="flex items-center gap-2 px-3 py-1.5 bg-white hover:bg-gray-50 dark:bg-gray-700 dark:hover:bg-gray-600 rounded-full transition-colors border border-gray-200 dark:border-gray-600">
<div className="flex items-center gap-1 sm:gap-2">
<Link href="/coins" className="flex items-center gap-1 sm:gap-2 px-3 py-1.5 bg-white hover:bg-gray-50 dark:bg-gray-700 dark:hover:bg-gray-600 rounded-full transition-colors border border-gray-200 dark:border-gray-600">
<Coins className="h-5 w-5 text-yellow-500 dark:text-yellow-400" />
<div className="flex items-baseline gap-2">
<span className="text-gray-800 dark:text-gray-100 font-medium text-lg">
{balance}
</span>
<div className="flex items-baseline gap-1 sm:gap-2">
<FormattedNumber
amount={balance}
settings={settings}
className="text-gray-800 dark:text-gray-100 font-medium text-lg"
/>
{coinsEarnedToday > 0 && (
<span className="text-sm bg-green-50 dark:bg-green-900/30 text-green-700 dark:text-green-400 px-2 py-1 rounded-full border border-green-100 dark:border-green-800">
+{coinsEarnedToday}
<FormattedNumber
amount={coinsEarnedToday}
settings={settings}
className="inline"
/>
</span>
)}
</div>