page.tsx 2.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657
  1. 'use client'
  2. import RegistrationForm from '@/components/forms/registrationForm'
  3. import Image from 'next/image'
  4. import byom from '@/app/assets/byom.png'
  5. import { useTheme } from '@/contexts/themecontext'
  6. import { Moon, Sun } from 'lucide-react'
  7. export default function OwnerRegistrationPage() {
  8. const { theme, toggleTheme } = useTheme();
  9. return (
  10. <div className={`min-h-screen ${theme === 'dark' ? 'bg-gray-900' : 'bg-gray-50'} flex flex-col items-center justify-center relative p-4 transition-colors duration-300`}>
  11. {/* Theme Toggle */}
  12. <button
  13. onClick={toggleTheme}
  14. className={`absolute top-4 right-4 p-3 rounded-xl ${
  15. theme === 'dark'
  16. ? 'bg-gray-800 hover:bg-gray-700'
  17. : 'bg-white hover:bg-gray-100'
  18. } transition-all duration-300 shadow-lg hover:shadow-xl transform hover:scale-105`}
  19. aria-label="Toggle theme"
  20. >
  21. {theme === 'dark' ? (
  22. <Sun className="w-5 h-5 text-yellow-500" />
  23. ) : (
  24. <Moon className="w-5 h-5 text-gray-600" />
  25. )}
  26. </button>
  27. <div className={`w-full max-w-md ${theme === 'dark' ? 'bg-gray-800/50 backdrop-blur-xl' : 'bg-white/80 backdrop-blur-xl'} rounded-2xl shadow-2xl p-8 transition-all duration-300`}>
  28. {/* Logo */}
  29. <div className="flex justify-center mb-8 transform hover:scale-105 transition-transform duration-300">
  30. <Image
  31. src={byom}
  32. alt="BYOM"
  33. width={200}
  34. className={`${theme === 'dark' ? '' : 'invert'} transition-all duration-300 drop-shadow-lg`}
  35. />
  36. </div>
  37. {/* Welcome Text */}
  38. <div className="text-center mb-8">
  39. <h1 className={`text-3xl font-bold ${theme === 'dark' ? 'text-white' : 'text-gray-900'} mb-3 tracking-tight`}>
  40. Créez votre compte
  41. </h1>
  42. <p className={`${theme === 'dark' ? 'text-gray-400' : 'text-gray-600'} text-lg`}>
  43. Configurez votre espace de travail et commencez
  44. </p>
  45. </div>
  46. {/* Registration Form */}
  47. <RegistrationForm type="owner" />
  48. </div>
  49. </div>
  50. );
  51. }