update icon

This commit is contained in:
Phuoc Nguyen
2025-11-17 09:34:17 +07:00
parent b5f90c364d
commit 49082026f5
12 changed files with 144 additions and 135 deletions

View File

@@ -9,6 +9,7 @@
library;
import 'package:flutter/material.dart';
import 'package:font_awesome_flutter/font_awesome_flutter.dart';
import 'package:flutter_riverpod/flutter_riverpod.dart';
import 'package:go_router/go_router.dart';
import 'package:worker/core/constants/ui_constants.dart';
@@ -174,7 +175,7 @@ class AccountPage extends ConsumerWidget {
child: Column(
children: [
AccountMenuItem(
icon: Icons.edit,
icon: FontAwesomeIcons.penToSquare,
title: 'Thông tin cá nhân',
subtitle: 'Cập nhật thông tin tài khoản',
onTap: () {
@@ -182,7 +183,7 @@ class AccountPage extends ConsumerWidget {
},
),
AccountMenuItem(
icon: Icons.history,
icon: FontAwesomeIcons.clockRotateLeft,
title: 'Lịch sử đơn hàng',
subtitle: 'Xem các đơn hàng đã đặt',
onTap: () {
@@ -190,7 +191,7 @@ class AccountPage extends ConsumerWidget {
},
),
AccountMenuItem(
icon: Icons.location_on,
icon: FontAwesomeIcons.locationDot,
title: 'Địa chỉ đã lưu',
subtitle: 'Quản lý địa chỉ giao hàng',
onTap: () {
@@ -198,7 +199,7 @@ class AccountPage extends ConsumerWidget {
},
),
AccountMenuItem(
icon: Icons.notifications,
icon: FontAwesomeIcons.bell,
title: 'Cài đặt thông báo',
subtitle: 'Quản lý thông báo đẩy',
onTap: () {
@@ -206,7 +207,7 @@ class AccountPage extends ConsumerWidget {
},
),
AccountMenuItem(
icon: Icons.lock,
icon: FontAwesomeIcons.lock,
title: 'Đổi mật khẩu',
subtitle: 'Cập nhật mật khẩu mới',
onTap: () {
@@ -214,7 +215,7 @@ class AccountPage extends ConsumerWidget {
},
),
AccountMenuItem(
icon: Icons.language,
icon: FontAwesomeIcons.language,
title: 'Ngôn ngữ',
subtitle: 'Tiếng Việt',
onTap: () {
@@ -264,12 +265,12 @@ class AccountPage extends ConsumerWidget {
// Support menu items
AccountMenuItem(
icon: Icons.headset_mic,
icon: FontAwesomeIcons.headset,
title: 'Liên hệ hỗ trợ',
subtitle: 'Hotline: 1900 1234',
trailing: const Icon(
Icons.phone,
size: 20,
trailing: const FaIcon(
FontAwesomeIcons.phone,
size: 18,
color: AppColors.grey500,
),
onTap: () {
@@ -282,14 +283,14 @@ class AccountPage extends ConsumerWidget {
},
),
AccountMenuItem(
icon: Icons.help_outline,
icon: FontAwesomeIcons.circleQuestion,
title: 'Câu hỏi thường gặp',
onTap: () {
_showComingSoon(context);
},
),
AccountMenuItem(
icon: Icons.info_outline,
icon: FontAwesomeIcons.circleInfo,
title: 'Về ứng dụng',
subtitle: 'Phiên bản 1.0.0',
onTap: () {
@@ -310,7 +311,7 @@ class AccountPage extends ConsumerWidget {
onPressed: () {
_showLogoutConfirmation(context, ref);
},
icon: const Icon(Icons.logout),
icon: const FaIcon(FontAwesomeIcons.arrowRightFromBracket, size: 18),
label: const Text('Đăng xuất'),
style: OutlinedButton.styleFrom(
foregroundColor: AppColors.danger,

View File

@@ -57,7 +57,7 @@ class AddressesPage extends HookConsumerWidget {
backgroundColor: Colors.white,
elevation: 0,
leading: IconButton(
icon: const Icon(Icons.arrow_back, color: Colors.black),
icon: const FaIcon(FontAwesomeIcons.arrowLeft, color: Colors.black, size: 20),
onPressed: () => context.pop(),
),
title: const Text(
@@ -71,7 +71,7 @@ class AddressesPage extends HookConsumerWidget {
centerTitle: false,
actions: [
IconButton(
icon: const Icon(Icons.add, color: Colors.black),
icon: const FaIcon(FontAwesomeIcons.plus, color: Colors.black, size: 20),
onPressed: () {
_showAddAddress(context);
},
@@ -120,7 +120,7 @@ class AddressesPage extends HookConsumerWidget {
onPressed: () {
_showAddAddress(context);
},
icon: const Icon(Icons.add, size: 20),
icon: const FaIcon(FontAwesomeIcons.plus, size: 18),
label: const Text(
'Thêm địa chỉ mới',
style: TextStyle(fontSize: 16, fontWeight: FontWeight.w600),
@@ -148,8 +148,8 @@ class AddressesPage extends HookConsumerWidget {
child: Column(
mainAxisAlignment: MainAxisAlignment.center,
children: [
Icon(
Icons.location_off,
FaIcon(
FontAwesomeIcons.locationDot,
size: 64,
color: AppColors.grey500.withValues(alpha: 0.5),
),
@@ -172,7 +172,7 @@ class AddressesPage extends HookConsumerWidget {
onPressed: () {
_showAddAddress(context);
},
icon: const Icon(Icons.add, size: 20),
icon: const FaIcon(FontAwesomeIcons.plus, size: 18),
label: const Text(
'Thêm địa chỉ mới',
style: TextStyle(fontSize: 14, fontWeight: FontWeight.w600),

View File

@@ -68,7 +68,7 @@ class ChangePasswordPage extends HookConsumerWidget {
backgroundColor: Colors.white,
elevation: 0,
leading: IconButton(
icon: const Icon(Icons.arrow_back, color: Colors.black),
icon: const FaIcon(FontAwesomeIcons.arrowLeft, color: Colors.black, size: 20),
onPressed: () => context.pop(),
),
title: const Text(
@@ -177,11 +177,11 @@ class ChangePasswordPage extends HookConsumerWidget {
const SizedBox(height: 8),
Row(
children: [
Icon(
FaIcon(
passwordsMatch.value == true
? Icons.check_circle
: Icons.error,
size: 16,
? FontAwesomeIcons.solidCircleCheck
: FontAwesomeIcons.circleXmark,
size: 14,
color: passwordsMatch.value == true
? AppColors.success
: AppColors.danger,
@@ -276,9 +276,9 @@ class ChangePasswordPage extends HookConsumerWidget {
vertical: 12,
),
suffixIcon: IconButton(
icon: Icon(
isVisible.value ? Icons.visibility_off : Icons.visibility,
size: 20,
icon: FaIcon(
isVisible.value ? FontAwesomeIcons.eyeSlash : FontAwesomeIcons.eye,
size: 18,
color: AppColors.grey500,
),
onPressed: () {
@@ -359,9 +359,9 @@ class ChangePasswordPage extends HookConsumerWidget {
child: Row(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
const Icon(
Icons.check_circle_outline,
size: 16,
const FaIcon(
FontAwesomeIcons.circleCheck,
size: 14,
color: AppColors.success,
),
const SizedBox(width: 8),
@@ -431,7 +431,7 @@ class ChangePasswordPage extends HookConsumerWidget {
);
}
},
icon: const Icon(Icons.key, size: 20),
icon: const FaIcon(FontAwesomeIcons.key, size: 18),
label: const Text(
'Đổi mật khẩu',
style: TextStyle(fontSize: 16, fontWeight: FontWeight.w600),

View File

@@ -72,7 +72,7 @@ class ProfileEditPage extends HookConsumerWidget {
backgroundColor: Colors.white,
elevation: 0,
leading: IconButton(
icon: const Icon(Icons.arrow_back, color: Colors.black),
icon: const FaIcon(FontAwesomeIcons.arrowLeft, color: Colors.black, size: 20),
onPressed: () async {
if (hasChanges.value) {
final shouldPop = await _showUnsavedChangesDialog(context);
@@ -338,9 +338,9 @@ class ProfileEditPage extends HookConsumerWidget {
),
],
),
child: const Icon(
Icons.camera_alt,
size: 16,
child: const FaIcon(
FontAwesomeIcons.camera,
size: 14,
color: Colors.white,
),
),
@@ -472,7 +472,7 @@ class ProfileEditPage extends HookConsumerWidget {
horizontal: 16,
vertical: 12,
),
suffixIcon: const Icon(Icons.calendar_today, size: 20),
suffixIcon: const FaIcon(FontAwesomeIcons.calendar, size: 18),
border: OutlineInputBorder(
borderRadius: BorderRadius.circular(AppRadius.input),
borderSide: const BorderSide(color: Color(0xFFE2E8F0)),
@@ -604,7 +604,7 @@ class ProfileEditPage extends HookConsumerWidget {
context.pop();
}
},
icon: const Icon(Icons.save, size: 20),
icon: const FaIcon(FontAwesomeIcons.floppyDisk, size: 18),
label: const Text(
'Lưu thay đổi',
style: TextStyle(fontSize: 16, fontWeight: FontWeight.w600),
@@ -641,12 +641,12 @@ class ProfileEditPage extends HookConsumerWidget {
mainAxisSize: MainAxisSize.min,
children: [
ListTile(
leading: const Icon(Icons.camera_alt),
leading: const FaIcon(FontAwesomeIcons.camera, size: 18),
title: const Text('Máy ảnh'),
onTap: () => Navigator.pop(context, ImageSource.camera),
),
ListTile(
leading: const Icon(Icons.photo_library),
leading: const FaIcon(FontAwesomeIcons.images, size: 18),
title: const Text('Thư viện ảnh'),
onTap: () => Navigator.pop(context, ImageSource.gallery),
),

View File

@@ -5,6 +5,7 @@
library;
import 'package:flutter/material.dart';
import 'package:font_awesome_flutter/font_awesome_flutter.dart';
import 'package:worker/core/constants/ui_constants.dart';
import 'package:worker/core/theme/colors.dart';
@@ -74,9 +75,9 @@ class AccountMenuItem extends StatelessWidget {
AppColors.lightBlue.withValues(alpha: 0.1),
shape: BoxShape.circle,
),
child: Icon(
child: FaIcon(
icon,
size: 20,
size: 18,
color: iconColor ?? AppColors.primaryBlue,
),
),
@@ -111,9 +112,9 @@ class AccountMenuItem extends StatelessWidget {
// Trailing widget (default: chevron)
trailing ??
const Icon(
Icons.chevron_right,
size: 20,
const FaIcon(
FontAwesomeIcons.chevronRight,
size: 18,
color: AppColors.grey500,
),
],

View File

@@ -4,6 +4,7 @@
library;
import 'package:flutter/material.dart';
import 'package:font_awesome_flutter/font_awesome_flutter.dart';
import 'package:worker/core/constants/ui_constants.dart';
import 'package:worker/core/theme/colors.dart';
@@ -156,9 +157,9 @@ class AddressCard extends StatelessWidget {
border: Border.all(color: const Color(0xFFE2E8F0)),
borderRadius: BorderRadius.circular(8),
),
child: const Icon(
Icons.edit,
size: 18,
child: const FaIcon(
FontAwesomeIcons.penToSquare,
size: 16,
color: AppColors.primaryBlue,
),
),
@@ -178,9 +179,9 @@ class AddressCard extends StatelessWidget {
border: Border.all(color: const Color(0xFFE2E8F0)),
borderRadius: BorderRadius.circular(8),
),
child: const Icon(
Icons.delete,
size: 18,
child: const FaIcon(
FontAwesomeIcons.trashCan,
size: 16,
color: AppColors.danger,
),
),