11import React from 'react' ;
22import { Button } from '@/components/ui/button' ;
33import { useAppKit } from '@reown/appkit/react' ;
4- import { Copy , CheckCircle , Gamepad2 , Rocket } from 'lucide-react' ;
4+ import { Copy , CheckCircle } from 'lucide-react' ;
55import { useWalletConnection } from '@/hooks/useWalletConnection' ;
66import { toast } from 'sonner' ;
77
88const WALLET_ICON = "/lovable-uploads/AW.png" ;
9- const PORTAL_ICON_AVIF = "/lovable-uploads/AP1.avif" ;
10- const PORTAL_ICON_JPG = "/lovable-uploads/AP.jpg" ;
11- const ICON_SIZE = "h-7 w-7 sm:h-8 sm:w-8" ;
9+
10+ // App icons - replace these files in /public/lovable-uploads/apps/ to update logos
11+ const ACE_ICON = "/lovable-uploads/apps/ace.png" ;
12+ const ADEX_ICON = "/lovable-uploads/apps/adex.png" ;
13+ const ATRIP_ICON = "/lovable-uploads/apps/atrip.png" ;
14+
15+ const ICON_BTN = "bg-alien-green hover:bg-alien-green-light text-alien-gold rounded-full flex items-center justify-center p-0 h-11 w-11 sm:h-12 sm:w-12 overflow-hidden transition-all duration-300 hover:shadow-lg hover:scale-110 active:scale-95 focus-visible:ring-2 focus-visible:ring-alien-gold" ;
16+ const APP_IMG = "h-9 w-9 sm:h-10 sm:w-10 rounded-full object-cover" ;
1217
1318const shortAddress = ( addr : string ) =>
1419 addr ? addr . slice ( 0 , 6 ) + '...' + addr . slice ( - 4 ) : '' ;
@@ -29,49 +34,58 @@ const ConnectButton = () => {
2934
3035 return (
3136 < div className = "flex items-center gap-2 sm:gap-3" >
32- { /* App Buttons */ }
37+ { /* 1. ACE AGameFlow */ }
3338 < a
34- href = "https://agameflow.lovable.app "
39+ href = "https://ACE.AlienFlow.Space "
3540 target = "_blank"
3641 rel = "noopener noreferrer"
3742 className = "no-underline"
3843 title = "ACE AGameFlow"
3944 aria-label = "ACE AGameFlow"
4045 >
41- < Button
42- className = "bg-alien-green hover:bg-alien-green-light text-alien-gold rounded-full flex items-center justify-center p-2 sm:p-3 transition-all duration-300 hover:shadow-lg hover:scale-110 active:scale-95 focus-visible:ring-2 focus-visible:ring-alien-gold"
43- type = "button"
44- >
45- < Gamepad2 className = { `${ ICON_SIZE } ` } />
46+ < Button className = { ICON_BTN } type = "button" >
47+ < img src = { ACE_ICON } alt = "ACE AGameFlow" className = { APP_IMG } draggable = { false } />
48+ </ Button >
49+ </ a >
50+
51+ { /* 2. AlienDEX & Play (Connect Portal) */ }
52+ < a
53+ href = "https://ADEX.AlienFlow.Space"
54+ target = "_blank"
55+ rel = "noopener noreferrer"
56+ className = "no-underline"
57+ title = "AlienDEX & Play"
58+ aria-label = "AlienDEX & Play"
59+ >
60+ < Button className = { ICON_BTN } type = "button" >
61+ < img src = { ADEX_ICON } alt = "AlienDEX & Play" className = { APP_IMG } draggable = { false } />
4662 </ Button >
4763 </ a >
64+
65+ { /* 3. AlienTrip */ }
4866 < a
49- href = "https://alientrip.lovable.app "
67+ href = "https://ATrip.AlienFlow.Space "
5068 target = "_blank"
5169 rel = "noopener noreferrer"
5270 className = "no-underline"
5371 title = "AlienTrip"
5472 aria-label = "AlienTrip"
5573 >
56- < Button
57- className = "bg-alien-green hover:bg-alien-green-light text-alien-gold rounded-full flex items-center justify-center p-2 sm:p-3 transition-all duration-300 hover:shadow-lg hover:scale-110 active:scale-95 focus-visible:ring-2 focus-visible:ring-alien-gold"
58- type = "button"
59- >
60- < Rocket className = { `${ ICON_SIZE } ` } />
74+ < Button className = { ICON_BTN } type = "button" >
75+ < img src = { ATRIP_ICON } alt = "AlienTrip" className = { APP_IMG } draggable = { false } />
6176 </ Button >
6277 </ a >
6378
79+ { /* 4. Wallet (far right) */ }
6480 { isConnected && address ? (
6581 < >
66- { /* Connected state: address + optional AI key copy + manage */ }
6782 < div className = "flex items-center gap-2" >
6883 < span
6984 className = "text-alien-gold font-mono text-xs bg-alien-green/20 px-3 py-1.5 rounded-full border border-alien-gold/30 shadow-sm select-all"
7085 title = { address }
7186 >
7287 { shortAddress ( address ) }
7388 </ span >
74- { /* Inline AI key copy button */ }
7589 { aiKey && (
7690 < button
7791 onClick = { copyAIKey }
@@ -85,7 +99,7 @@ const ConnectButton = () => {
8599
86100 < Button
87101 onClick = { ( ) => open ( { view : "Account" } ) }
88- className = "bg-alien-green hover:bg-alien-green-light text-alien-gold rounded-full flex items-center justify-center p-2 sm:p-3 transition-all duration-300 hover:shadow-lg hover:scale-110 active:scale-95 focus-visible:ring-2 focus-visible:ring-alien-gold"
102+ className = { ICON_BTN }
89103 title = "Manage Wallet"
90104 aria-label = "Manage Wallet"
91105 type = "button"
@@ -98,34 +112,15 @@ const ConnectButton = () => {
98112 </ >
99113 ) : (
100114 < Button
101- className = "bg-alien-green hover:bg-alien-green-light text-alien-gold rounded-full flex items-center justify-center p-2 sm:p-3 transition-all duration-300 hover:shadow-lg hover:scale-110 active:scale-95 focus-visible:ring-2 focus-visible:ring-alien-gold"
115+ className = { ICON_BTN }
102116 onClick = { ( ) => open ( { view : "Connect" } ) }
103117 title = "Connect Wallet"
104118 aria-label = "Connect Wallet"
105119 type = "button"
106120 >
107- < img src = { WALLET_ICON } alt = "Wallet Logo " className = { ` ${ ICON_SIZE } rounded-full object-cover` } draggable = { false } />
121+ < img src = { WALLET_ICON } alt = "Wallet" className = { APP_IMG } draggable = { false } />
108122 </ Button >
109123 ) }
110- < a
111- href = "https://aliendex.lovable.app/"
112- target = "_blank"
113- rel = "noopener noreferrer"
114- className = "no-underline"
115- title = "Connect Portal"
116- aria-label = "Connect Portal"
117- tabIndex = { - 1 }
118- >
119- < Button
120- className = "bg-alien-green hover:bg-alien-green-light text-alien-gold rounded-full flex items-center justify-center p-2 sm:p-3 transition-all duration-300 hover:shadow-lg hover:scale-110 active:scale-95 focus-visible:ring-2 focus-visible:ring-alien-gold"
121- type = "button"
122- >
123- < picture >
124- < source srcSet = { PORTAL_ICON_AVIF } type = "image/avif" />
125- < img src = { PORTAL_ICON_JPG } alt = "Portal Icon" className = { `${ ICON_SIZE } rounded-full object-cover` } draggable = { false } />
126- </ picture >
127- </ Button >
128- </ a >
129124 </ div >
130125 ) ;
131126} ;
0 commit comments