implement light and dark theme

This commit is contained in:
amirrezaghabeli
2025-08-06 14:14:07 +03:30
parent 337fcdbcbc
commit da7b10f0d0
24 changed files with 407 additions and 118 deletions
+5 -5
View File
@@ -2,7 +2,7 @@ import 'package:flutter/material.dart';
import 'package:tm_app/core/routes/app_routes.dart';
import '../../../core/constants/strings.dart';
import '../../core/constants/colors.dart';
import '../../core/theme/colors.dart';
import '../../core/utils/size_config.dart';
import 'widgets.dart';
@@ -14,7 +14,7 @@ class HomeScreen extends StatelessWidget {
SizeConfig.init(context);
return SafeArea(
child: Scaffold(
backgroundColor: Colors.white,
backgroundColor: AppColors.backgroundColor,
body: _body(context),
appBar: _appbar(),
),
@@ -68,7 +68,7 @@ class HomeScreen extends StatelessWidget {
style: TextStyle(
fontSize: 20,
fontWeight: FontWeight.bold,
color: Color(0xFF222222),
color: AppColors.grey70,
),
),
Image.asset(
@@ -111,7 +111,7 @@ class HomeScreen extends StatelessWidget {
mainAxisAlignment: MainAxisAlignment.spaceBetween,
children: [
StatisticsCard(
backgroundColor: Color(0xFFE5EFFF),
backgroundColor: AppColors.primary20,
iconPath: 'assets/icons/arrows.svg',
title: AppStrings.tenderSubmitting,
amount: '12',
@@ -168,7 +168,7 @@ class HomeScreen extends StatelessWidget {
style: TextStyle(
fontSize: 20.0.sp(),
fontWeight: FontWeight.w600,
color: Color(0xFF777777),
color: AppColors.grey60,
),
);
}
+9 -4
View File
@@ -1,13 +1,14 @@
import 'package:flutter/material.dart';
import 'package:tm_app/core/theme/colors.dart';
import '../../core/utils/size_config.dart';
class ProgressBarColumn extends StatefulWidget {
const ProgressBarColumn({
super.key,
required this.text,
required this.value,
required this.amount,
super.key,
});
final String text;
@@ -74,7 +75,7 @@ class _ProgressBarColumnState extends State<ProgressBarColumn>
backgroundColor: Color(0xFFE1E1E1),
strokeCap: StrokeCap.round,
strokeWidth: 8.0,
valueColor: AlwaysStoppedAnimation<Color>(Color(0xFF34BCCB)),
valueColor: AlwaysStoppedAnimation<Color>(AppColors.jellyBean),
value: _animation.value,
),
),
@@ -85,7 +86,11 @@ class _ProgressBarColumnState extends State<ProgressBarColumn>
return Center(
child: Text(
widget.amount,
style: TextStyle(fontSize: 24.0.sp(), fontWeight: FontWeight.bold),
style: TextStyle(
fontSize: 24.0.sp(),
fontWeight: FontWeight.bold,
color: AppColors.titleColor,
),
textAlign: TextAlign.center,
),
);
@@ -97,7 +102,7 @@ class _ProgressBarColumnState extends State<ProgressBarColumn>
style: TextStyle(
fontSize: 16.0.sp(),
fontWeight: FontWeight.bold,
color: Color(0xFF222222),
color: AppColors.titleColor,
),
);
}
+15 -10
View File
@@ -1,6 +1,7 @@
import 'package:flutter/material.dart';
import 'package:flutter_svg/svg.dart';
import '../../core/theme/colors.dart';
import '../../core/utils/size_config.dart';
class TendersListItem extends StatelessWidget {
@@ -8,7 +9,12 @@ class TendersListItem extends StatelessWidget {
@override
Widget build(BuildContext context) {
return SizedBox(
return Container(
decoration: BoxDecoration(
color: AppColors.cardBackground,
borderRadius: BorderRadius.circular(4),
),
margin: EdgeInsetsDirectional.only(end: 16.0.w()),
width: 327.0.w(),
height: 309.0.h(),
child: Padding(
@@ -23,14 +29,14 @@ class TendersListItem extends StatelessWidget {
style: TextStyle(
fontSize: 12.0.sp(),
fontWeight: FontWeight.w400,
color: Color(0xFF777777),
color: AppColors.grey60,
),
),
Container(
width: 91.0.w(),
height: 24.0.h(),
decoration: BoxDecoration(
color: Color(0xFFDAF8D6),
color: AppColors.green20,
borderRadius: BorderRadius.circular(8),
),
alignment: Alignment.center,
@@ -39,7 +45,7 @@ class TendersListItem extends StatelessWidget {
style: TextStyle(
fontSize: 12.0.sp(),
fontWeight: FontWeight.w500,
color: Color(0xFF289744),
color: AppColors.green30,
),
),
),
@@ -51,7 +57,7 @@ class TendersListItem extends StatelessWidget {
style: TextStyle(
fontSize: 16.0.sp(),
fontWeight: FontWeight.w600,
color: Color(0xFF222222),
color: AppColors.grey80,
),
),
SizedBox(height: 8.0.h()),
@@ -60,7 +66,7 @@ class TendersListItem extends StatelessWidget {
style: TextStyle(
fontSize: 14.0.sp(),
fontWeight: FontWeight.w400,
color: Color(0xFF222222),
color: AppColors.grey70,
),
),
SizedBox(height: 24.0.h()),
@@ -73,7 +79,7 @@ class TendersListItem extends StatelessWidget {
style: TextStyle(
fontSize: 12.0.sp(),
fontWeight: FontWeight.w400,
color: Color(0xFF777777),
color: AppColors.grey80,
),
),
SizedBox(width: 8.0.w()),
@@ -87,9 +93,8 @@ class TendersListItem extends StatelessWidget {
width: 96.0.w(),
height: 24.0.h(),
decoration: BoxDecoration(
color: Color(0xFFE4E4E4),
color: AppColors.grey30,
borderRadius: BorderRadius.circular(88),
border: Border.all(color: Color(0xFFDADADA)),
),
alignment: Alignment.center,
child: Text(
@@ -97,7 +102,7 @@ class TendersListItem extends StatelessWidget {
style: TextStyle(
fontSize: 12.0.sp(),
fontWeight: FontWeight.w500,
color: Color(0xFF777777),
color: AppColors.grey60,
),
),
),