nesward_flutter_app/lib/widgets/hero_banner_widget.dart

93 lines
2.9 KiB
Dart

// lib/widgets/hero_banner_widget.dart
import 'package:flutter/material.dart';
class HeroBannerWidget extends StatelessWidget {
const HeroBannerWidget({Key? key}) : super(key: key);
@override
Widget build(BuildContext context) {
return Container(
margin: const EdgeInsets.symmetric(horizontal: 16),
padding: const EdgeInsets.all(20),
decoration: BoxDecoration(
color: const Color(0xFFC8F0D8),
borderRadius: BorderRadius.circular(16),
),
child: Column(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
const Text(
'Fresh Vegetables\nBig discount',
style: TextStyle(
fontSize: 28,
fontWeight: FontWeight.bold,
color: Color(0xFF2E3B4E),
),
),
const SizedBox(height: 8),
const Text(
'Save up to 50% off on your first order',
style: TextStyle(
fontSize: 16,
color: Color(0xFF7A8C9E),
),
),
const SizedBox(height: 20),
Row(
children: [
Expanded(
child: TextField(
decoration: InputDecoration(
hintText: 'Your email address',
prefixIcon: const Icon(Icons.email_outlined, size: 20),
filled: true,
fillColor: Colors.white,
border: OutlineInputBorder(
borderRadius: BorderRadius.circular(24),
borderSide: BorderSide.none,
),
),
),
),
const SizedBox(width: 12),
ElevatedButton(
onPressed: () {},
style: ElevatedButton.styleFrom(
backgroundColor: const Color(0xFF4CAF50),
shape: RoundedRectangleBorder(
borderRadius: BorderRadius.circular(24),
),
padding: const EdgeInsets.symmetric(horizontal: 24, vertical: 12),
),
child: const Text('Subscribe'),
),
],
),
const SizedBox(height: 16),
Row(
mainAxisAlignment: MainAxisAlignment.center,
children: [
Container(
width: 8,
height: 8,
decoration: BoxDecoration(
color: Colors.grey[300],
shape: BoxShape.circle,
),
),
const SizedBox(width: 8),
Container(
width: 8,
height: 8,
decoration: BoxDecoration(
color: const Color(0xFF4CAF50),
shape: BoxShape.circle,
),
),
],
),
],
),
);
}
}