Refactor UI components across various screens to use SVG avatars, enhance biometric authentication check, and improve code readability with consistent formatting.

This commit is contained in:
2025-06-02 10:42:54 +05:30
parent a2d1ac5226
commit 0d2dfc817e
17 changed files with 346 additions and 231 deletions

View File

@@ -1,4 +1,5 @@
import 'package:flutter/material.dart';
import 'package:flutter_svg/svg.dart';
import 'package:kmobile/features/enquiry/screens/enquiry_screen.dart';
import 'package:material_symbols_icons/material_symbols_icons.dart';
@@ -9,95 +10,98 @@ class ChequeManagementScreen extends StatefulWidget {
State<ChequeManagementScreen> createState() => _ChequeManagementScreen();
}
class _ChequeManagementScreen extends State<ChequeManagementScreen>{
class _ChequeManagementScreen extends State<ChequeManagementScreen> {
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(
leading: IconButton(icon: const Icon(Symbols.arrow_back_ios_new),
leading: IconButton(
icon: const Icon(Symbols.arrow_back_ios_new),
onPressed: () {
Navigator.pop(context);
},),
title: const Text('Cheque Management', style: TextStyle(color: Colors.black,
fontWeight: FontWeight.w500),),
},
),
title: const Text(
'Cheque Management',
style: TextStyle(color: Colors.black, fontWeight: FontWeight.w500),
),
centerTitle: false,
actions: const [
actions: [
Padding(
padding: EdgeInsets.only(right: 10.0),
padding: const EdgeInsets.only(right: 10.0),
child: CircleAvatar(
backgroundImage: AssetImage('assets/images/avatar.jpg'), // Replace with your image
backgroundColor: Colors.grey[200],
radius: 20,
child: SvgPicture.asset(
'assets/images/avatar_male.svg',
width: 40,
height: 40,
fit: BoxFit.cover,
),
),
),
],
),
body: ListView(
children: [
const SizedBox(height: 15),
ChequeManagementTile(
icon: Symbols.add,
label: 'Request Checkbook',
onTap: () {
},
onTap: () {},
),
const Divider(
height: 1,
),
const Divider(height: 1,),
ChequeManagementTile(
icon: Symbols.data_alert,
label: 'Enquiry',
onTap: () {
Navigator.push(context, MaterialPageRoute(
builder: (context) => const EnquiryScreen()));
Navigator.push(
context,
MaterialPageRoute(
builder: (context) => const EnquiryScreen()));
},
),
const Divider(height: 1,),
const Divider(
height: 1,
),
ChequeManagementTile(
icon: Symbols.approval_delegation,
label: 'Cheque Deposit',
onTap: () {
},
onTap: () {},
),
const Divider(
height: 1,
),
const Divider(height: 1,),
ChequeManagementTile(
icon: Symbols.front_hand,
label: 'Stop Cheque',
onTap: () {
},
onTap: () {},
),
const Divider(
height: 1,
),
const Divider(height: 1,),
ChequeManagementTile(
icon: Symbols.cancel_presentation,
label: 'Revoke Stop',
onTap: () {
},
onTap: () {},
),
const Divider(
height: 1,
),
const Divider(height: 1,),
ChequeManagementTile(
icon: Symbols.payments,
label: 'Positive Pay',
onTap: () {
},
onTap: () {},
),
const Divider(
height: 1,
),
const Divider(height: 1,),
],
),
);
}
}
class ChequeManagementTile extends StatelessWidget {
@@ -121,4 +125,4 @@ class ChequeManagementTile extends StatelessWidget {
onTap: onTap,
);
}
}
}