Nelze vybrat více než 25 témat Téma musí začínat písmenem nebo číslem, může obsahovat pomlčky („-“) a může být dlouhé až 35 znaků.

LoadingScreen.tsx 1.3KB

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. "use client";
  2. import { motion } from 'framer-motion';
  3. import Image from 'next/image';
  4. const LoadingScreen = () => {
  5. return (
  6. <motion.div
  7. initial={{ opacity: 0 }}
  8. animate={{ opacity: 1 }}
  9. exit={{ opacity: 0 }}
  10. className="fixed inset-0 z-[999] bg-white flex flex-col items-center justify-center space-y-6"
  11. >
  12. <div className="relative w-32 h-32">
  13. {/* Spinning Logo */}
  14. <motion.div
  15. className="absolute top-1/2 left-1/2 w-16 h-16 -translate-x-1/2 -translate-y-1/2"
  16. animate={{ rotate: 360 }}
  17. transition={{
  18. repeat: Infinity,
  19. duration: 2,
  20. ease: "linear",
  21. }}
  22. >
  23. <Image
  24. src="/ruccan_logo2.png"
  25. alt="Ruccan Logo"
  26. fill
  27. className="object-contain"
  28. />
  29. </motion.div>
  30. </div>
  31. {/* Loading Text */}
  32. <p className="text-gray-600 text-sm tracking-wide animate-pulse">
  33. Loading, please wait...
  34. </p>
  35. </motion.div>
  36. );
  37. };
  38. export default LoadingScreen;