11import React from 'react' ;
2+ import { motion , AnimatePresence } from 'framer-motion' ;
23
34const LoadingScreen = ( ) => {
45 return (
5- < div className = "fixed inset-0 bg-alien-space-dark z-50 flex items-center justify-center" >
6- < div className = "text-center" >
7- < img
8- src = "/lovable-uploads/ALogo.png"
9- alt = "AlienFlowSpace Logo"
10- className = "w-32 h-32 mx-auto mb-6 animate-pulse"
11- />
12- < div className = "flex items-center justify-center gap-2" >
13- < div className = "w-3 h-3 bg-alien-gold rounded-full animate-bounce" style = { { animationDelay : '0s' } } > </ div >
14- < div className = "w-3 h-3 bg-alien-gold rounded-full animate-bounce" style = { { animationDelay : '0.2s' } } > </ div >
15- < div className = "w-3 h-3 bg-alien-gold rounded-full animate-bounce" style = { { animationDelay : '0.4s' } } > </ div >
6+ < motion . div
7+ initial = { { opacity : 1 } }
8+ exit = { { opacity : 0 , filter : "brightness(3) blur(20px)" , scale : 1.5 } }
9+ transition = { { duration : 0.8 , ease : "circIn" } }
10+ className = "fixed inset-0 bg-[#050505] z-[99999] flex items-center justify-center overflow-hidden"
11+ >
12+ { /* 1. EFECTO HIPERESPACIO (Estrellas cinéticas) */ }
13+ < div className = "absolute inset-0 overflow-hidden pointer-events-none" >
14+ { [ ...Array ( 20 ) ] . map ( ( _ , i ) => (
15+ < motion . div
16+ key = { i }
17+ initial = { { opacity : 0 , scale : 0 , x : 0 , y : 0 } }
18+ animate = { {
19+ opacity : [ 0 , 1 , 0 ] ,
20+ scale : [ 0 , 1.5 ] ,
21+ x : ( Math . random ( ) - 0.5 ) * 1000 ,
22+ y : ( Math . random ( ) - 0.5 ) * 1000
23+ } }
24+ transition = { {
25+ duration : 2 ,
26+ repeat : Infinity ,
27+ delay : i * 0.1 ,
28+ ease : "easeIn"
29+ } }
30+ className = "absolute top-1/2 left-1/2 w-1 h-1 bg-alien-green rounded-full shadow-[0_0_10px_#39FF14]"
31+ />
32+ ) ) }
33+ </ div >
34+
35+ < div className = "relative z-10 text-center" >
36+ { /* 2. RADAR CUÁNTICO (Anillos de energía) */ }
37+ < div className = "relative flex items-center justify-center" >
38+ { [ ...Array ( 3 ) ] . map ( ( _ , i ) => (
39+ < motion . div
40+ key = { i }
41+ animate = { {
42+ scale : [ 1 , 2.5 ] ,
43+ opacity : [ 0.5 , 0 ] ,
44+ borderWidth : [ "2px" , "1px" ]
45+ } }
46+ transition = { { duration : 2 , repeat : Infinity , delay : i * 0.6 } }
47+ className = "absolute w-32 h-32 border-alien-gold/40 rounded-full"
48+ />
49+ ) ) }
50+
51+ { /* 3. LOGO: MOTOR DE CURVATURA (Efecto Latido) */ }
52+ < motion . div
53+ animate = { {
54+ scale : [ 1 , 1.05 , 1 ] ,
55+ filter : [
56+ "drop-shadow(0 0 10px #F0D882)" ,
57+ "drop-shadow(0 0 30px #39FF14)" ,
58+ "drop-shadow(0 0 10px #F0D882)"
59+ ]
60+ } }
61+ transition = { { duration : 1.5 , repeat : Infinity , ease : "easeInOut" } }
62+ className = "relative"
63+ >
64+ < img
65+ src = "/lovable-uploads/ALogo.png"
66+ alt = "AlienFlow Logo"
67+ className = "w-40 h-40 object-contain relative z-20"
68+ />
69+ </ motion . div >
70+ </ div >
71+
72+ { /* 4. DATOS DEL SISTEMA (Año 4700 / Estética Terminal) */ }
73+ < div className = "mt-12 space-y-2" >
74+ < motion . div
75+ animate = { { opacity : [ 0 , 1 , 0.5 , 1 ] } }
76+ transition = { { duration : 0.1 , repeat : Infinity , repeatType : "mirror" } }
77+ className = "text-alien-green font-nasalization text-[10px] tracking-[0.6em] uppercase"
78+ >
79+ Quantum Jump Initiated...
80+ </ motion . div >
81+
82+ < div className = "flex flex-col gap-1" >
83+ < span className = "text-alien-gold/60 font-exo text-[9px] tracking-widest uppercase" >
84+ Timeline: Era 4700 | Galactic-Standard
85+ </ span >
86+ < div className = "flex justify-center gap-1.5 mt-2" >
87+ < motion . div
88+ className = "h-[2px] bg-alien-green shadow-[0_0_8px_#39FF14]"
89+ animate = { { width : [ "0%" , "100%" , "0%" ] } }
90+ transition = { { duration : 3 , repeat : Infinity , ease : "easeInOut" } }
91+ style = { { width : "120px" } }
92+ />
93+ </ div >
94+ </ div >
1695 </ div >
1796 </ div >
18- </ div >
97+
98+ { /* 5. EFECTO SCANLINE (Capa final de textura) */ }
99+ < div className = "absolute inset-0 bg-scanlines opacity-[0.03] pointer-events-none" />
100+ </ motion . div >
19101 ) ;
20102} ;
21103
22- export default LoadingScreen ;
104+ export default LoadingScreen ;
0 commit comments