madari-oss/lib/features/settings/screen/account_screen.dart
Madari Developers 16fe4a653f Project import generated by Copybara.
GitOrigin-RevId: 829626e92d5dba6a4586d1e7c4bd1615ec396e88
2025-01-02 18:46:26 +00:00

89 lines
2.9 KiB
Dart

import 'package:flutter/material.dart';
import 'package:madari_client/features/settings/screen/profile_button.dart';
import '../../../engine/engine.dart';
import '../navigation/account_navigation.dart';
class AccountScreen extends StatelessWidget {
const AccountScreen({super.key});
Widget _buildDivider() {
return const Divider(height: 1, thickness: 1);
}
Widget _buildSectionHeader(String title) {
return Padding(
padding: const EdgeInsets.fromLTRB(16, 16, 16, 8),
child: Text(
title,
style: const TextStyle(
fontSize: 14,
fontWeight: FontWeight.bold,
color: Colors.grey,
),
),
);
}
AppEngine get engine => AppEngine.engine;
@override
Widget build(BuildContext context) {
return Scaffold(
backgroundColor: Colors.black,
appBar: AppBar(
title: const Text('My Account'),
elevation: 0,
),
body: Center(
child: Container(
constraints: const BoxConstraints(
maxWidth: 600,
),
child: ListView(
children: [
ProfileButton(),
_buildDivider(),
_buildSectionHeader('ACCOUNT SETTINGS'),
ListTile(
leading: const Icon(Icons.email),
title: const Text('Email Settings'),
subtitle: const Text('Manage your email preferences'),
onTap: () => AccountNavigation.navigateToEmailSettings(context),
),
_buildDivider(),
ListTile(
leading: const Icon(Icons.security),
title: const Text('Security'),
subtitle: const Text('Password and security settings'),
onTap: () => AccountNavigation.navigateToSecurity(context),
),
_buildDivider(),
ListTile(
leading: const Icon(Icons.notifications),
title: const Text('Notifications'),
subtitle: const Text('Manage notification preferences'),
onTap: () => AccountNavigation.navigateToNotifications(context),
),
_buildSectionHeader('PAYMENT'),
ListTile(
leading: const Icon(Icons.payment),
title: const Text('Payment Methods'),
subtitle: const Text('Manage your payment options'),
onTap: () => AccountNavigation.navigateToPayments(context),
),
_buildSectionHeader('SUPPORT'),
ListTile(
leading: const Icon(Icons.help),
title: const Text('Help Center'),
subtitle: const Text('Get help and contact support'),
onTap: () => AccountNavigation.navigateToHelp(context),
),
const SizedBox(height: 32),
],
),
),
),
);
}
}