dark mode implementation

design_3.0_demo_module
WaseemAbbasi22 8 months ago
parent 2f1efaccee
commit 6d39b20e0b

@ -3,14 +3,14 @@ class URLs {
static const String appReleaseBuildNumber = "21"; static const String appReleaseBuildNumber = "21";
static const host1 = "https://atomsm.hmg.com"; // production url // static const host1 = "https://atomsm.hmg.com"; // production url
// static const host1 = "https://atomsmdev.hmg.com"; // local DEV url // static const host1 = "https://atomsmdev.hmg.com"; // local DEV url
// static const host1 = "https://atomsmuat.hmg.com"; // local UAT url static const host1 = "https://atomsmuat.hmg.com"; // local UAT url
// static String _baseUrl = "$_host/mobile"; // static String _baseUrl = "$_host/mobile";
// static final String _baseUrl = "$_host/v2/mobile"; // new V2 apis // static final String _baseUrl = "$_host/v2/mobile"; // new V2 apis
// static final String _baseUrl = "$_host/mobile"; // host local UAT static final String _baseUrl = "$_host/mobile"; // host local UAT
static final String _baseUrl = "$_host/v3/mobile"; // v3 for new CM,PM,TM // static final String _baseUrl = "$_host/v3/mobile"; // v3 for new CM,PM,TM
static String _host = host1; static String _host = host1;

@ -147,7 +147,7 @@ class _DashboardViewState extends State<DashboardView> {
height: 100.toScreenHeight, height: 100.toScreenHeight,
decoration: BoxDecoration( decoration: BoxDecoration(
shape: BoxShape.circle, shape: BoxShape.circle,
color: AppColor.white10, color: AppColor.background(context),
border: Border.all(color: AppColor.primary10.withOpacity(0.5), width: 2), border: Border.all(color: AppColor.primary10.withOpacity(0.5), width: 2),
), ),
child: Consumer<UserProvider>(builder: (context, userProvider, child) { child: Consumer<UserProvider>(builder: (context, userProvider, child) {
@ -159,7 +159,7 @@ class _DashboardViewState extends State<DashboardView> {
8.height, 8.height,
Text( Text(
("${context.translation.checkIn}\n${userProvider.swipeTransactionModel.swipeTime != null ? SwipeGeneralUtils.instance.formatTimeOnly(userProvider.swipeTransactionModel.swipeTime!) : '--:--'}"), ("${context.translation.checkIn}\n${userProvider.swipeTransactionModel.swipeTime != null ? SwipeGeneralUtils.instance.formatTimeOnly(userProvider.swipeTransactionModel.swipeTime!) : '--:--'}"),
style: AppTextStyles.bodyText2.copyWith(color: AppColor.white936, fontWeight: FontWeight.w500, fontFamily: "Poppins"), style: AppTextStyles.bodyText2.copyWith(color: AppColor.textColor(context), fontWeight: FontWeight.w500, fontFamily: "Poppins"),
), ),
], ],
); );

@ -248,7 +248,7 @@ class ProgressFragment extends StatelessWidget {
showChartValuesOutside: false, showChartValuesOutside: false,
decimalPlaces: 1, decimalPlaces: 1,
), ),
).toShimmer(isShow: snapshot.isAllCountLoading, radius: 250).paddingAll(0).toShadowContainer(context), ).toShimmer(isShow: snapshot.isAllCountLoading, radius: 250,context: context).paddingAll(0).toShadowContainer(context),
], ],
), ),
), ),

@ -60,7 +60,7 @@ class RequestsFragment extends StatelessWidget {
CustomBadge( CustomBadge(
value: isLoading ? 0 : value, value: isLoading ? 0 : value,
child: Container( child: Container(
child: (icon ?? "").toSvgAsset(height: 26, width: 26, color: iconColor).toShimmer(isShow: isLoading), child: (icon ?? "").toSvgAsset(height: 26, width: 26, color: iconColor).toShimmer(isShow: isLoading,context: context),
).toShadowCircleContainer(context, padding: 17), ).toShadowCircleContainer(context, padding: 17),
), ),
10.height, 10.height,
@ -70,7 +70,7 @@ class RequestsFragment extends StatelessWidget {
style: AppTextStyles.tinyFont.copyWith( style: AppTextStyles.tinyFont.copyWith(
color: context.isDark ? AppColor.neutral30 : AppColor.black20, color: context.isDark ? AppColor.neutral30 : AppColor.black20,
), ),
).toShimmer(isShow: isLoading), ).toShimmer(isShow: isLoading,context: context),
], ],
), ),
); );

@ -75,14 +75,15 @@ extension WidgetExtensions on Widget {
child: this): this; child: this): this;
} }
Widget toShimmer({bool isShow = true, double radius = 20}) => isShow Widget toShimmer({bool isShow = true, double radius = 20,required BuildContext context}) => isShow
? Shimmer.fromColors( ? Shimmer.fromColors(
baseColor: const Color(0xffe8eff0), // baseColor: const Color(0xffe8eff0),
highlightColor: Colors.white, baseColor: Theme.of(context).scaffoldBackgroundColor,
highlightColor: AppColor.background(context),
child: ClipRRect( child: ClipRRect(
borderRadius: BorderRadius.circular(radius), borderRadius: BorderRadius.circular(radius),
child: Container( child: Container(
color: Colors.white, color: AppColor.background(context),
child: this, child: this,
), ),
), ),
@ -93,20 +94,21 @@ extension WidgetExtensions on Widget {
? Column( ? Column(
crossAxisAlignment: CrossAxisAlignment.start, crossAxisAlignment: CrossAxisAlignment.start,
children: [ children: [
const SizedBox(width: 250, height: 24).toShimmer(isShow: isShow), const SizedBox(width: 250, height: 24).toShimmer(isShow: isShow,context: context),
8.height, 8.height,
const SizedBox(width: 160, height: 16).toShimmer(isShow: isShow), const SizedBox(width: 160, height: 16).toShimmer(isShow: isShow,context: context),
8.height, 8.height,
const SizedBox(width: 120, height: 18).toShimmer(isShow: isShow).toShimmer(isShow: isShow), const SizedBox(width: 120, height: 18).toShimmer(isShow: isShow,context: context).toShimmer(isShow: isShow,context: context),
], ],
).toShadowContainer(context) ).toShadowContainer(context)
: this; : this;
Widget toShadowContainer(BuildContext context, Widget toShadowContainer(BuildContext context,
{bool showShadow = true, double borderRadius = 14, bool withShadow = true, Color? backgroundColor, Color borderColor = Colors.transparent, double padding = 16, EdgeInsets? paddingObject}) => {bool showShadow = true, double borderRadius = 14, bool withShadow = true, Color? backgroundColor, Color borderColor = Colors.transparent, double padding = 16, EdgeInsets? paddingObject, EdgeInsets? margin,}) =>
withShadow withShadow
? Container( ? Container(
padding: paddingObject ?? EdgeInsets.all(padding), padding: paddingObject ?? EdgeInsets.all(padding),
margin: margin,
width: double.infinity, width: double.infinity,
decoration: ShapeDecoration( decoration: ShapeDecoration(
color: backgroundColor ?? AppColor.background(context), color: backgroundColor ?? AppColor.background(context),
@ -121,7 +123,8 @@ extension WidgetExtensions on Widget {
clipBehavior: Clip.antiAlias, clipBehavior: Clip.antiAlias,
margin: EdgeInsets.only(bottom: MediaQuery.of(context).viewInsets.bottom), margin: EdgeInsets.only(bottom: MediaQuery.of(context).viewInsets.bottom),
decoration: BoxDecoration( decoration: BoxDecoration(
color: AppColor.background(context), // color: AppColor.background(context),
color: Theme.of(context).scaffoldBackgroundColor,
borderRadius: const BorderRadius.only(topRight: Radius.circular(20), topLeft: Radius.circular(20)), borderRadius: const BorderRadius.only(topRight: Radius.circular(20), topLeft: Radius.circular(20)),
), ),
padding: padding ?? EdgeInsets.symmetric(horizontal: 16.toScreenWidth, vertical: 8.toScreenHeight), padding: padding ?? EdgeInsets.symmetric(horizontal: 16.toScreenWidth, vertical: 8.toScreenHeight),

@ -23,12 +23,12 @@ import 'package:test_sa/new_views/swipe_module/dialoge/acknowledge_work_dialog.d
import 'package:test_sa/providers/service_request_providers/reject_reason_provider.dart'; import 'package:test_sa/providers/service_request_providers/reject_reason_provider.dart';
class FooterActionButton { class FooterActionButton {
static Widget footerContainer({required Widget child}) { static Widget footerContainer({required Widget child,required BuildContext context}) {
return Align( return Align(
alignment: Alignment.bottomCenter, alignment: Alignment.bottomCenter,
child: Container( child: Container(
padding: EdgeInsets.symmetric(horizontal: 16.toScreenWidth, vertical: 16.toScreenHeight), padding: EdgeInsets.symmetric(horizontal: 16.toScreenWidth, vertical: 16.toScreenHeight),
color: AppColor.white10, color: AppColor.background(context),
child: child, child: child,
), ),
); );
@ -51,6 +51,7 @@ class FooterActionButton {
switch (workOrderNextStepStatus) { switch (workOrderNextStepStatus) {
case WorkOrderNextStepEnum.assignToMe: case WorkOrderNextStepEnum.assignToMe:
return footerContainer( return footerContainer(
context: context,
child: AppFilledButton( child: AppFilledButton(
label: 'Assign To Me', label: 'Assign To Me',
// maxWidth: true, // maxWidth: true,
@ -66,9 +67,11 @@ class FooterActionButton {
case WorkOrderNextStepEnum.endWorkFlow: case WorkOrderNextStepEnum.endWorkFlow:
if (requestDetailProvider.isReadOnlyRequest) { if (requestDetailProvider.isReadOnlyRequest) {
return footerContainer( return footerContainer(
context: context,
child: AppFilledButton( child: AppFilledButton(
label: context.translation.activities, label: context.translation.activities,
buttonColor: AppColor.neutral50, buttonColor: AppColor.neutral50,
textColor: context.isDark ? AppColor.neutral30 : Colors.white,
onPressed: () async { onPressed: () async {
Navigator.push(context, MaterialPageRoute(builder: (context) => const ActivitiesListView())); Navigator.push(context, MaterialPageRoute(builder: (context) => const ActivitiesListView()));
}, },
@ -76,6 +79,7 @@ class FooterActionButton {
); );
} }
return footerContainer( return footerContainer(
context: context,
child: AppFilledButton( child: AppFilledButton(
label: context.translation.close, label: context.translation.close,
// maxWidth: true, // maxWidth: true,
@ -87,9 +91,11 @@ class FooterActionButton {
case WorkOrderNextStepEnum.nTakeAction: case WorkOrderNextStepEnum.nTakeAction:
if (requestDetailProvider.isReadOnlyRequest) { if (requestDetailProvider.isReadOnlyRequest) {
return footerContainer( return footerContainer(
context: context,
child: AppFilledButton( child: AppFilledButton(
label: context.translation.activities, label: context.translation.activities,
buttonColor: AppColor.neutral50, buttonColor: AppColor.neutral50,
textColor: context.isDark ? AppColor.neutral30 : Colors.white,
onPressed: () async { onPressed: () async {
Navigator.push(context, MaterialPageRoute(builder: (context) => const ActivitiesListView())); Navigator.push(context, MaterialPageRoute(builder: (context) => const ActivitiesListView()));
}, },
@ -97,6 +103,7 @@ class FooterActionButton {
); );
} }
return footerContainer( return footerContainer(
context: context,
child: AppFilledButton( child: AppFilledButton(
label: context.translation.close, label: context.translation.close,
// maxWidth: true, // maxWidth: true,
@ -107,6 +114,7 @@ class FooterActionButton {
)); ));
case WorkOrderNextStepEnum.eRejectAccept: case WorkOrderNextStepEnum.eRejectAccept:
return footerContainer( return footerContainer(
context: context,
child: Row( child: Row(
mainAxisAlignment: MainAxisAlignment.spaceBetween, mainAxisAlignment: MainAxisAlignment.spaceBetween,
mainAxisSize: MainAxisSize.min, mainAxisSize: MainAxisSize.min,
@ -114,7 +122,8 @@ class FooterActionButton {
AppFilledButton( AppFilledButton(
label: context.translation.reject, label: context.translation.reject,
maxWidth: true, maxWidth: true,
buttonColor: Colors.white54, buttonColor:AppColor.background(context),
// textColor: context.isDark ? AppColor.neutral30 : Colors.white,
textColor: AppColor.red30, textColor: AppColor.red30,
showBorder: true, showBorder: true,
onPressed: () async { onPressed: () async {
@ -142,6 +151,7 @@ class FooterActionButton {
)); ));
case WorkOrderNextStepEnum.eFixRemotelyNeedVisit: case WorkOrderNextStepEnum.eFixRemotelyNeedVisit:
return footerContainer( return footerContainer(
context: context,
child: Row( child: Row(
mainAxisAlignment: MainAxisAlignment.spaceBetween, mainAxisAlignment: MainAxisAlignment.spaceBetween,
mainAxisSize: MainAxisSize.min, mainAxisSize: MainAxisSize.min,
@ -171,6 +181,7 @@ class FooterActionButton {
)); ));
case WorkOrderNextStepEnum.eArrived: case WorkOrderNextStepEnum.eArrived:
return footerContainer( return footerContainer(
context: context,
child: AppFilledButton( child: AppFilledButton(
label: context.translation.iHaveArrived, label: context.translation.iHaveArrived,
showIcon: true, showIcon: true,
@ -182,6 +193,7 @@ class FooterActionButton {
)); ));
case WorkOrderNextStepEnum.verifyAssetDetail: case WorkOrderNextStepEnum.verifyAssetDetail:
return footerContainer( return footerContainer(
context: context,
child: AppFilledButton( child: AppFilledButton(
label: context.translation.updateAssetDetails, label: context.translation.updateAssetDetails,
// maxWidth: true, // maxWidth: true,
@ -192,11 +204,13 @@ class FooterActionButton {
)); ));
case WorkOrderNextStepEnum.activity: case WorkOrderNextStepEnum.activity:
return footerContainer( return footerContainer(
context: context,
child: Column( child: Column(
children: [ children: [
AppFilledButton( AppFilledButton(
label: context.translation.activities, label: context.translation.activities,
// maxWidth: true, // maxWidth: true,
textColor: context.isDark ? AppColor.neutral30 : Colors.white,
buttonColor: AppColor.neutral50, buttonColor: AppColor.neutral50,
onPressed: () async { onPressed: () async {
// ServiceRequestBottomSheet.activityTypeBottomSheet(context: context); // ServiceRequestBottomSheet.activityTypeBottomSheet(context: context);
@ -239,22 +253,26 @@ class FooterActionButton {
case WorkOrderNextStepEnum.assetRetirementManagementApproval: case WorkOrderNextStepEnum.assetRetirementManagementApproval:
return footerContainer( return footerContainer(
context: context,
child: AppFilledButton( child: AppFilledButton(
label: context.translation.assetRetiredPendingOpManagementApproval, label: context.translation.assetRetiredPendingOpManagementApproval,
buttonColor: AppColor.neutral140, buttonColor: AppColor.background(context),
textColor: AppColor.neutral150, textColor: context.isDark ? Colors.white: AppColor.neutral150,
fontSize: 12.toScreenWidth, fontSize: 12.toScreenWidth,
)); ));
case WorkOrderNextStepEnum.waitingForRequesterToConfirm: case WorkOrderNextStepEnum.waitingForRequesterToConfirm:
return footerContainer( return footerContainer(
context: context,
child: Column( child: Column(
mainAxisSize: MainAxisSize.min, mainAxisSize: MainAxisSize.min,
crossAxisAlignment: CrossAxisAlignment.start, crossAxisAlignment: CrossAxisAlignment.start,
children: [ children: [
AppFilledButton( AppFilledButton(
label: 'Waiting for requester to verify', label: 'Waiting for requester to verify',
buttonColor: AppColor.neutral140, buttonColor: AppColor.background(context),
textColor: AppColor.neutral150, textColor: context.isDark ? Colors.white: AppColor.neutral150,
// buttonColor: AppColor.neutral140,
// textColor: AppColor.neutral150,
fontSize: 12.toScreenWidth, fontSize: 12.toScreenWidth,
), ),
12.height, 12.height,
@ -290,6 +308,7 @@ class FooterActionButton {
)); ));
case WorkOrderNextStepEnum.eFixRemotely: case WorkOrderNextStepEnum.eFixRemotely:
return footerContainer( return footerContainer(
context: context,
child: AppFilledButton( child: AppFilledButton(
label: context.translation.fixedRemotely, label: context.translation.fixedRemotely,
maxWidth: true, maxWidth: true,
@ -302,9 +321,11 @@ class FooterActionButton {
); );
case WorkOrderNextStepEnum.eNeedVisit: case WorkOrderNextStepEnum.eNeedVisit:
return footerContainer( return footerContainer(
context: context,
child: AppFilledButton( child: AppFilledButton(
label: context.translation.needAVisit, label: context.translation.needAVisit,
maxWidth: true, maxWidth: true,
textColor: context.isDark ? AppColor.neutral30 : Colors.white,
buttonColor: AppColor.neutral50, buttonColor: AppColor.neutral50,
onPressed: () async { onPressed: () async {
requestDetailProvider.needVisitHelperModel = NeedVisitHelperModel(); requestDetailProvider.needVisitHelperModel = NeedVisitHelperModel();
@ -315,6 +336,7 @@ class FooterActionButton {
} else { } else {
if (workOrderNextStepStatus == WorkOrderNextStepEnum.nTakeAction) { if (workOrderNextStepStatus == WorkOrderNextStepEnum.nTakeAction) {
return footerContainer( return footerContainer(
context: context,
child: AppFilledButton( child: AppFilledButton(
label: context.translation.takeAction, label: context.translation.takeAction,
// maxWidth: true, // maxWidth: true,
@ -326,6 +348,7 @@ class FooterActionButton {
} }
if (workOrderNextStepStatus == WorkOrderNextStepEnum.waitingForRequesterToConfirm) { if (workOrderNextStepStatus == WorkOrderNextStepEnum.waitingForRequesterToConfirm) {
return footerContainer( return footerContainer(
context: context,
child: AppFilledButton( child: AppFilledButton(
label: context.translation.takeAction, label: context.translation.takeAction,
// maxWidth: true, // maxWidth: true,

@ -94,6 +94,7 @@ class _ActivitiesListViewState extends State<ActivitiesListView> {
if (userProvider.user!.type == UsersTypes.engineer && if (userProvider.user!.type == UsersTypes.engineer &&
(requestDetailProvider.currentWorkOrder?.data?.status?.value != 5 && requestDetailProvider.currentWorkOrder?.data?.status?.value != 3)) (requestDetailProvider.currentWorkOrder?.data?.status?.value != 5 && requestDetailProvider.currentWorkOrder?.data?.status?.value != 3))
FooterActionButton.footerContainer( FooterActionButton.footerContainer(
context: context,
child: AppFilledButton( child: AppFilledButton(
label: context.translation.createNewActivity, label: context.translation.createNewActivity,
maxWidth: true, maxWidth: true,

@ -17,14 +17,7 @@ class AssetDetailCard extends StatelessWidget {
@override @override
Widget build(BuildContext context) { Widget build(BuildContext context) {
return Consumer<ServiceRequestDetailProvider>(builder: (context, ServiceRequestDetailProvider requestDetailProvider, snapshot) { return Consumer<ServiceRequestDetailProvider>(builder: (context, ServiceRequestDetailProvider requestDetailProvider, snapshot) {
return Container( return Column(
decoration: BoxDecoration(
borderRadius: BorderRadius.circular(14),
color: AppColor.white10,
),
padding: EdgeInsets.symmetric(horizontal: 12.toScreenWidth, vertical: 14.toScreenHeight),
margin: EdgeInsets.only(top: 10.toScreenHeight),
child: Column(
crossAxisAlignment: CrossAxisAlignment.start, crossAxisAlignment: CrossAxisAlignment.start,
children: [ children: [
Row(mainAxisAlignment: MainAxisAlignment.spaceBetween, children: [ Row(mainAxisAlignment: MainAxisAlignment.spaceBetween, children: [
@ -105,8 +98,7 @@ class AssetDetailCard extends StatelessWidget {
), ),
] ]
], ],
), ).toShadowContainer(context,);
);
}); });
} }
} }

@ -385,7 +385,7 @@ class ServiceRequestBottomSheet {
], ],
); );
}, },
).toShimmer(isShow: snapshot.loading); ).toShimmer(isShow: snapshot.loading,context: context);
}); });
} }
@ -649,7 +649,8 @@ class ServiceRequestBottomSheet {
shape: RoundedRectangleBorder( shape: RoundedRectangleBorder(
borderRadius: BorderRadius.circular(14), // Circular border radius borderRadius: BorderRadius.circular(14), // Circular border radius
), ),
color: AppColor.neutral80, // color: AppColor.neutral80,
color: AppColor.background(context),
child: Row( child: Row(
crossAxisAlignment: CrossAxisAlignment.start, // Align items at the top crossAxisAlignment: CrossAxisAlignment.start, // Align items at the top
children: [ children: [
@ -668,7 +669,7 @@ class ServiceRequestBottomSheet {
children: [ children: [
Text( Text(
heading, heading,
style: AppTextStyles.heading6.copyWith(color: AppColor.neutral50), style: AppTextStyles.heading6.copyWith(color: AppColor.textColor(context)),
), ),
7.height, 7.height,
Text( Text(

@ -136,8 +136,8 @@ class HistoryLogView extends StatelessWidget {
); );
}), }),
], ],
title.bodyText(context).custom(color: AppColor.black10), title.bodyText(context).custom(color: AppColor.textColor(context)),
object.timeDifference.isNotEmpty ? object.timeDifference.tinyFont(context).custom(color: context.isDark ? AppColor.neutral30 : AppColor.neutral120) : const SizedBox(), object.timeDifference.isNotEmpty ? object.timeDifference.tinyFont(context).custom(color: context.isDark ? AppColor.neutral10 : AppColor.neutral120) : const SizedBox(),
], ],
), ),

@ -27,14 +27,7 @@ class _InitialVisitCardState extends State<InitialVisitCard> {
@override @override
Widget build(BuildContext context) { Widget build(BuildContext context) {
return Consumer<ServiceRequestDetailProvider>(builder: (context, ServiceRequestDetailProvider requestDetailProvider, snapshot) { return Consumer<ServiceRequestDetailProvider>(builder: (context, ServiceRequestDetailProvider requestDetailProvider, snapshot) {
return Container( return Column(
decoration: BoxDecoration(
borderRadius: BorderRadius.circular(14),
color: AppColor.white10,
),
padding: EdgeInsets.symmetric(horizontal: 12.toScreenWidth, vertical: 14.toScreenHeight),
margin: EdgeInsets.only(top: 10.toScreenHeight),
child: Column(
crossAxisAlignment: CrossAxisAlignment.start, crossAxisAlignment: CrossAxisAlignment.start,
children: [ children: [
Row(mainAxisAlignment: MainAxisAlignment.spaceBetween, children: [ Row(mainAxisAlignment: MainAxisAlignment.spaceBetween, children: [
@ -63,8 +56,7 @@ class _InitialVisitCardState extends State<InitialVisitCard> {
requestDetailProvider.needVisitHelperModel!.comment!.bodyText2(context).custom(color: AppColor.neutral120), requestDetailProvider.needVisitHelperModel!.comment!.bodyText2(context).custom(color: AppColor.neutral120),
] ]
], ],
), ).toShadowContainer(context,margin:const EdgeInsets.only(top: 12));
);
}); });
} }
} }

@ -73,6 +73,7 @@ class _ServiceRequestDetailViewState extends State<ServiceRequestDetailView> {
children: [ children: [
workOrderDetailCard(context, requestProvider.currentWorkOrder!.data!, _userProvider, requestProvider), workOrderDetailCard(context, requestProvider.currentWorkOrder!.data!, _userProvider, requestProvider),
initialVisitCard(requestDetailProvider: requestProvider, userProvider: _userProvider), initialVisitCard(requestDetailProvider: requestProvider, userProvider: _userProvider),
12.height,
assetDetailCard(requestDetailProvider: requestProvider, userProvider: _userProvider), assetDetailCard(requestDetailProvider: requestProvider, userProvider: _userProvider),
12.height, 12.height,
if (context.userProvider.user!.type == UsersTypes.engineer && if (context.userProvider.user!.type == UsersTypes.engineer &&
@ -495,7 +496,8 @@ class _ServiceRequestDetailViewState extends State<ServiceRequestDetailView> {
style: AppTextStyles.heading4.copyWith(color: context.isDark ? AppColor.neutral30 : AppColor.neutral50), style: AppTextStyles.heading4.copyWith(color: context.isDark ? AppColor.neutral30 : AppColor.neutral50),
).expanded, ).expanded,
if (!provider.isReadOnlyRequest) if (!provider.isReadOnlyRequest)
"edit_icon".toSvgAsset(height: 21, width: 21).onPress(() async { "edit_icon".toSvgAsset(height: 21, width: 21,
).onPress(() async {
provider.refreshTimer = false; provider.refreshTimer = false;
await Navigator.push(context, MaterialPageRoute(builder: (context) => CostDetailFormScreen(isEdit: true))); await Navigator.push(context, MaterialPageRoute(builder: (context) => CostDetailFormScreen(isEdit: true)));
provider.refreshTimer = true; provider.refreshTimer = true;

@ -113,6 +113,7 @@ class _AssetRetiredState extends State<AssetRetired> with TickerProviderStateMix
).paddingAll(16), ).paddingAll(16),
).expanded, ).expanded,
FooterActionButton.footerContainer( FooterActionButton.footerContainer(
context: context,
child: AppFilledButton( child: AppFilledButton(
label: context.translation.submit, label: context.translation.submit,
buttonColor: AppColor.primary10, buttonColor: AppColor.primary10,

@ -408,7 +408,7 @@ class _VerifyAssetDetailsState extends State<VerifyAssetDetails> with TickerProv
], ],
) )
], ],
).toShimmer(isShow: snapshot.loading), ).toShimmer(isShow: snapshot.loading,context: context),
], ],
); );
}); });

@ -234,7 +234,7 @@ class _CostDetailFormScreenState extends State<CostDetailFormScreen> with Ticker
], ],
) )
], ],
).toShimmer(isShow: snapshot.loading), ).toShimmer(isShow: snapshot.loading,context: context),
], ],
); );
}); });

@ -14,13 +14,13 @@ import 'package:test_sa/new_views/common_widgets/app_text_form_field.dart';
import 'package:test_sa/views/widgets/date_and_time/date_picker.dart'; import 'package:test_sa/views/widgets/date_and_time/date_picker.dart';
import 'package:test_sa/views/widgets/status/report/service_report_assistant_employee_menu.dart'; import 'package:test_sa/views/widgets/status/report/service_report_assistant_employee_menu.dart';
class AssistantEmployeeList extends StatefulWidget { class ServiceRequestAssistantEmployeeList extends StatefulWidget {
final List<AssistantEmployeesModel>? assistantEmployeeList; final List<AssistantEmployeesModel>? assistantEmployeeList;
final ValueChanged<List<AssistantEmployeesModel>>? onListChanged; final ValueChanged<List<AssistantEmployeesModel>>? onListChanged;
final double? cardPadding; final double? cardPadding;
final dynamic assetId; final dynamic assetId;
const AssistantEmployeeList({ const ServiceRequestAssistantEmployeeList({
super.key, super.key,
this.assistantEmployeeList, this.assistantEmployeeList,
this.onListChanged, this.onListChanged,
@ -29,10 +29,10 @@ class AssistantEmployeeList extends StatefulWidget {
}); });
@override @override
State<AssistantEmployeeList> createState() => _AssistantEmployeeListState(); State<ServiceRequestAssistantEmployeeList> createState() => _ServiceRequestAssistantEmployeeListState();
} }
class _AssistantEmployeeListState extends State<AssistantEmployeeList> { class _ServiceRequestAssistantEmployeeListState extends State<ServiceRequestAssistantEmployeeList> {
late List<AssistantEmployeesModel> _list; late List<AssistantEmployeesModel> _list;
late List<TextEditingController> _controllers; late List<TextEditingController> _controllers;
@ -80,7 +80,7 @@ class _AssistantEmployeeListState extends State<AssistantEmployeeList> {
child: AppFilledButton( child: AppFilledButton(
label: "Add Assistant Employee".addTranslation, label: "Add Assistant Employee".addTranslation,
maxWidth: true, maxWidth: true,
textColor: AppColor.black10, textColor: AppColor.textColor(context),
buttonColor: context.isDark ? AppColor.neutral60 : AppColor.white10, buttonColor: context.isDark ? AppColor.neutral60 : AppColor.white10,
icon: Icon(Icons.add_circle, color: AppColor.blueStatus(context)), icon: Icon(Icons.add_circle, color: AppColor.blueStatus(context)),
showIcon: true, showIcon: true,
@ -132,7 +132,7 @@ class EmployeeCard extends StatelessWidget {
Row( Row(
mainAxisAlignment: MainAxisAlignment.spaceBetween, mainAxisAlignment: MainAxisAlignment.spaceBetween,
children: [ children: [
context.translation.assistantEmployee.bodyText(context).custom(color: AppColor.black20), context.translation.assistantEmployee.bodyText(context).custom(color: AppColor.textColor(context)),
if (!isReadOnly) if (!isReadOnly)
Container( Container(
height: 32, height: 32,
@ -148,7 +148,7 @@ class EmployeeCard extends StatelessWidget {
children: [ children: [
ServiceReportAssistantEmployeeMenu( ServiceReportAssistantEmployeeMenu(
title: context.translation.select, title: context.translation.select,
backgroundColor: AppColor.neutral100, backgroundColor: AppColor.fieldBgColor(context),
assetId: assetId, assetId: assetId,
initialValue: model.employee, initialValue: model.employee,
onSelect: (employee) { onSelect: (employee) {
@ -170,7 +170,7 @@ class EmployeeCard extends StatelessWidget {
ADatePicker( ADatePicker(
label: context.translation.startTime, label: context.translation.startTime,
hideShadow: true, hideShadow: true,
backgroundColor: AppColor.neutral100, backgroundColor: AppColor.fieldBgColor(context),
date: model.startDate, date: model.startDate,
formatDateWithTime: true, formatDateWithTime: true,
from: requestedDate, from: requestedDate,
@ -215,7 +215,7 @@ class EmployeeCard extends StatelessWidget {
ADatePicker( ADatePicker(
label: context.translation.endTime, label: context.translation.endTime,
hideShadow: true, hideShadow: true,
backgroundColor: AppColor.neutral100, backgroundColor: AppColor.fieldBgColor(context),
date: model.endDate, date: model.endDate,
formatDateWithTime: true, formatDateWithTime: true,
from: requestedDate, from: requestedDate,
@ -261,20 +261,21 @@ class EmployeeCard extends StatelessWidget {
8.height, 8.height,
AppTextFormField( AppTextFormField(
labelText: context.translation.workingHours, labelText: context.translation.workingHours,
backgroundColor: AppColor.neutral80, backgroundColor: AppColor.fieldBgColor(context),
// backgroundColor: AppColor.neutral80,
controller: workingHoursController, controller: workingHoursController,
suffixIcon: "clock".toSvgAsset(width: 20, color: context.isDark ? AppColor.neutral10 : null).paddingOnly(end: 16), suffixIcon: "clock".toSvgAsset(width: 20, color: context.isDark ? AppColor.neutral10 : null).paddingOnly(end: 16),
textAlign: TextAlign.center, textAlign: TextAlign.center,
enable: false, enable: false,
showShadow: false, showShadow: false,
labelStyle: AppTextStyles.textFieldLabelStyle, labelStyle: AppTextStyles.textFieldLabelStyle.copyWith(color: AppColor.textColor(context)),
style: Theme.of(context).textTheme.titleMedium, style: Theme.of(context).textTheme.titleMedium,
), ),
8.height, 8.height,
AppTextFormField( AppTextFormField(
initialValue: model.technicalComment, initialValue: model.technicalComment,
labelText: context.translation.technicalComment, labelText: context.translation.technicalComment,
backgroundColor: AppColor.neutral100, backgroundColor: AppColor.fieldBgColor(context),
showShadow: false, showShadow: false,
labelStyle: AppTextStyles.textFieldLabelStyle, labelStyle: AppTextStyles.textFieldLabelStyle,
alignLabelWithHint: true, alignLabelWithHint: true,

@ -60,7 +60,7 @@ class _ExternalMaintenanceRequestState extends State<ExternalMaintenanceRequest>
SingleItemDropDownMenu<SupplierDetails, VendorProvider>( SingleItemDropDownMenu<SupplierDetails, VendorProvider>(
context: context, context: context,
title: context.translation.supplier, title: context.translation.supplier,
backgroundColor: AppColor.neutral100, backgroundColor: AppColor.fieldBgColor(context),
initialValue: requestDetailProvider.activityMaintenanceHelperModel?.supplier, initialValue: requestDetailProvider.activityMaintenanceHelperModel?.supplier,
showAsBottomSheet: true, showAsBottomSheet: true,
showShadow: false, showShadow: false,
@ -76,7 +76,7 @@ class _ExternalMaintenanceRequestState extends State<ExternalMaintenanceRequest>
children: [ children: [
SingleItemDropDownMenu<SuppPersons, NullableLoadingProvider>( SingleItemDropDownMenu<SuppPersons, NullableLoadingProvider>(
context: context, context: context,
backgroundColor: requestDetailProvider.activityMaintenanceHelperModel?.supplier?.suppliername == null ? AppColor.neutral40 : AppColor.neutral100, backgroundColor: requestDetailProvider.activityMaintenanceHelperModel?.supplier?.suppliername == null ? context.isDark ? AppColor.neutral20 : AppColor.neutral40 : AppColor.fieldBgColor(context),
title: context.translation.supplierEngineer, title: context.translation.supplierEngineer,
showShadow: false, showShadow: false,
enabled: requestDetailProvider.activityMaintenanceHelperModel?.supplier?.suppPersons?.isNotEmpty ?? false, enabled: requestDetailProvider.activityMaintenanceHelperModel?.supplier?.suppPersons?.isNotEmpty ?? false,
@ -106,7 +106,8 @@ class _ExternalMaintenanceRequestState extends State<ExternalMaintenanceRequest>
height: 56.toScreenHeight, height: 56.toScreenHeight,
width: 60.toScreenWidth, width: 60.toScreenWidth,
decoration: BoxDecoration( decoration: BoxDecoration(
color: requestDetailProvider.activityMaintenanceHelperModel?.supplier?.suppliername == null ? AppColor.neutral40 : AppColor.neutral100, // color: requestDetailProvider.activityMaintenanceHelperModel?.supplier?.suppliername == null ? AppColor.neutral40 : AppColor.neutral100,
color: requestDetailProvider.activityMaintenanceHelperModel?.supplier?.suppliername == null ? context.isDark ? AppColor.neutral20 : AppColor.neutral40 : AppColor.fieldBgColor(context),
borderRadius: BorderRadius.circular(10), borderRadius: BorderRadius.circular(10),
//boxShadow: [BoxShadow(color: Colors.black.withOpacity(0.05), blurRadius: 10)], //boxShadow: [BoxShadow(color: Colors.black.withOpacity(0.05), blurRadius: 10)],
), ),
@ -135,7 +136,7 @@ class _ExternalMaintenanceRequestState extends State<ExternalMaintenanceRequest>
ADatePicker( ADatePicker(
label: context.translation.startTime, label: context.translation.startTime,
hideShadow: true, hideShadow: true,
backgroundColor: AppColor.neutral100, backgroundColor: AppColor.fieldBgColor(context),
date: requestDetailProvider.activityMaintenanceHelperModel?.supplierStartTime, date: requestDetailProvider.activityMaintenanceHelperModel?.supplierStartTime,
from: requestDetailProvider.currentWorkOrder?.data?.requestedDate, from: requestDetailProvider.currentWorkOrder?.data?.requestedDate,
formatDateWithTime: true, formatDateWithTime: true,
@ -177,7 +178,7 @@ class _ExternalMaintenanceRequestState extends State<ExternalMaintenanceRequest>
ADatePicker( ADatePicker(
label: context.translation.endTime, label: context.translation.endTime,
hideShadow: true, hideShadow: true,
backgroundColor: AppColor.neutral100, backgroundColor: AppColor.fieldBgColor(context),
from: requestDetailProvider.currentWorkOrder?.data?.requestedDate, from: requestDetailProvider.currentWorkOrder?.data?.requestedDate,
to: DateTime.now(), to: DateTime.now(),
enable: requestDetailProvider.activityMaintenanceHelperModel?.supplierStartTime != null, enable: requestDetailProvider.activityMaintenanceHelperModel?.supplierStartTime != null,
@ -240,13 +241,13 @@ class _ExternalMaintenanceRequestState extends State<ExternalMaintenanceRequest>
8.height, 8.height,
AppTextFormField( AppTextFormField(
labelText: context.translation.workingHours, labelText: context.translation.workingHours,
backgroundColor: AppColor.neutral80, backgroundColor: AppColor.fieldBgColor(context),
controller: _workingHoursController, controller: _workingHoursController,
suffixIcon: "clock".toSvgAsset(width: 20, color: context.isDark ? AppColor.neutral10 : null).paddingOnly(end: 16), suffixIcon: "clock".toSvgAsset(width: 20, color: context.isDark ? AppColor.neutral10 : null).paddingOnly(end: 16),
initialValue: initialValue:
requestDetailProvider.activityMaintenanceHelperModel?.supplierWorkingHour != null ? requestDetailProvider.activityMaintenanceHelperModel?.supplierWorkingHour.toString() : '', requestDetailProvider.activityMaintenanceHelperModel?.supplierWorkingHour != null ? requestDetailProvider.activityMaintenanceHelperModel?.supplierWorkingHour.toString() : '',
textAlign: TextAlign.center, textAlign: TextAlign.center,
labelStyle: AppTextStyles.textFieldLabelStyle, labelStyle: AppTextStyles.textFieldLabelStyle.copyWith(color: AppColor.textColor(context)),
enable: false, enable: false,
showShadow: false, showShadow: false,
style: Theme.of(context).textTheme.titleMedium, style: Theme.of(context).textTheme.titleMedium,

@ -88,7 +88,8 @@ class _InternalMaintenanceRequestState extends State<InternalMaintenanceRequest>
height: 56.toScreenHeight, height: 56.toScreenHeight,
title: context.translation.activityStatus, title: context.translation.activityStatus,
showShadow: false, showShadow: false,
backgroundColor: AppColor.neutral100, // backgroundColor: AppColor.neutral100,
backgroundColor: AppColor.fieldBgColor(context),
showAsBottomSheet: true, showAsBottomSheet: true,
initialValue: requestDetailProvider.activityMaintenanceHelperModel?.activityStatus, initialValue: requestDetailProvider.activityMaintenanceHelperModel?.activityStatus,
onSelect: (status) { onSelect: (status) {
@ -210,7 +211,7 @@ class _InternalMaintenanceRequestState extends State<InternalMaintenanceRequest>
padding: EdgeInsets.symmetric(horizontal: 16.toScreenWidth), padding: EdgeInsets.symmetric(horizontal: 16.toScreenWidth),
alignment: Alignment.centerLeft, alignment: Alignment.centerLeft,
decoration: BoxDecoration( decoration: BoxDecoration(
color: context.isDark ? AppColor.neutral40 : AppColor.background(context), color: AppColor.fieldBgColor(context),
borderRadius: BorderRadius.circular(10), borderRadius: BorderRadius.circular(10),
boxShadow: [BoxShadow(color: Colors.black.withOpacity(0.05), blurRadius: 10)], boxShadow: [BoxShadow(color: Colors.black.withOpacity(0.05), blurRadius: 10)],
), ),
@ -249,7 +250,7 @@ class _InternalMaintenanceRequestState extends State<InternalMaintenanceRequest>
AppTextFormField( AppTextFormField(
labelText: context.translation.travelingHours, labelText: context.translation.travelingHours,
controller: _travellingHoursController, controller: _travellingHoursController,
backgroundColor: AppColor.neutral100, backgroundColor:AppColor.fieldBgColor(context),
showShadow: false, showShadow: false,
labelStyle: AppTextStyles.textFieldLabelStyle, labelStyle: AppTextStyles.textFieldLabelStyle,
suffixIcon: "clock".toSvgAsset(width: 20, color: context.isDark ? AppColor.neutral10 : null).paddingOnly(end: 16), suffixIcon: "clock".toSvgAsset(width: 20, color: context.isDark ? AppColor.neutral10 : null).paddingOnly(end: 16),
@ -268,7 +269,7 @@ class _InternalMaintenanceRequestState extends State<InternalMaintenanceRequest>
16.height, 16.height,
AppTextFormField( AppTextFormField(
labelText: context.translation.assignedEmployee, labelText: context.translation.assignedEmployee,
backgroundColor: AppColor.neutral80, backgroundColor: AppColor.fieldBgColor(context),
initialValue: requestDetailProvider.activityMaintenanceHelperModel?.assignedEmployee?.userName, initialValue: requestDetailProvider.activityMaintenanceHelperModel?.assignedEmployee?.userName,
textAlign: TextAlign.center, textAlign: TextAlign.center,
labelStyle: AppTextStyles.textFieldLabelStyle, labelStyle: AppTextStyles.textFieldLabelStyle,
@ -280,7 +281,7 @@ class _InternalMaintenanceRequestState extends State<InternalMaintenanceRequest>
AppTextFormField( AppTextFormField(
initialValue: requestDetailProvider.activityMaintenanceHelperModel?.technicalComment, initialValue: requestDetailProvider.activityMaintenanceHelperModel?.technicalComment,
labelText: context.translation.technicalComment, labelText: context.translation.technicalComment,
backgroundColor: AppColor.neutral100, backgroundColor:AppColor.fieldBgColor(context),
showShadow: false, showShadow: false,
labelStyle: AppTextStyles.textFieldLabelStyle, labelStyle: AppTextStyles.textFieldLabelStyle,
alignLabelWithHint: true, alignLabelWithHint: true,
@ -295,7 +296,7 @@ class _InternalMaintenanceRequestState extends State<InternalMaintenanceRequest>
], ],
), ),
).toShadowContainer(context).paddingOnly(start: 13, end: 14, top: 12), ).toShadowContainer(context).paddingOnly(start: 13, end: 14, top: 12),
AssistantEmployeeList( ServiceRequestAssistantEmployeeList(
assetId: requestDetailProvider.currentWorkOrder?.data?.asset?.id, assetId: requestDetailProvider.currentWorkOrder?.data?.asset?.id,
assistantEmployeeList: requestDetailProvider.activityMaintenanceHelperModel?.assistantEmployList, assistantEmployeeList: requestDetailProvider.activityMaintenanceHelperModel?.assistantEmployList,
onListChanged: (updatedList) { onListChanged: (updatedList) {
@ -325,7 +326,7 @@ class _InternalMaintenanceRequestState extends State<InternalMaintenanceRequest>
crossAxisAlignment: CrossAxisAlignment.start, crossAxisAlignment: CrossAxisAlignment.start,
mainAxisSize: MainAxisSize.min, mainAxisSize: MainAxisSize.min,
children: [ children: [
context.translation.repairLocation.bodyText(context).custom(color: AppColor.black20), context.translation.repairLocation.bodyText(context).custom(color: AppColor.textColor(context)),
8.height, 8.height,
Wrap( Wrap(
runSpacing: 8, runSpacing: 8,
@ -357,7 +358,7 @@ class _InternalMaintenanceRequestState extends State<InternalMaintenanceRequest>
], ],
) )
], ],
).toShimmer(isShow: snapshot.isLoading), ).toShimmer(isShow: snapshot.isLoading,context: context),
], ],
); );
}); });

@ -51,7 +51,7 @@ class _MaintenanceRequestFormState extends State<MaintenanceRequestForm> with Si
return Consumer<ServiceRequestDetailProvider>(builder: (context, ServiceRequestDetailProvider requestDetailProvider, child) { return Consumer<ServiceRequestDetailProvider>(builder: (context, ServiceRequestDetailProvider requestDetailProvider, child) {
bool isUpdate = requestDetailProvider.activityMaintenanceHelperModel?.id != 0; bool isUpdate = requestDetailProvider.activityMaintenanceHelperModel?.id != 0;
return Scaffold( return Scaffold(
backgroundColor: AppColor.neutral110, backgroundColor: Theme.of(context).scaffoldBackgroundColor,
appBar: DefaultAppBar( appBar: DefaultAppBar(
title: "CM Activity", title: "CM Activity",
onWillPopScope: requestDetailProvider.isReadOnlyRequest onWillPopScope: requestDetailProvider.isReadOnlyRequest
@ -104,6 +104,7 @@ class _MaintenanceRequestFormState extends State<MaintenanceRequestForm> with Si
), ),
if (!requestDetailProvider.isReadOnlyRequest) if (!requestDetailProvider.isReadOnlyRequest)
FooterActionButton.footerContainer( FooterActionButton.footerContainer(
context: context,
child: AppFilledButton( child: AppFilledButton(
label: requestDetailProvider.activityMaintenanceHelperModel?.id != 0 ? context.translation.update : context.translation.addActivity, // Use the dynamic label label: requestDetailProvider.activityMaintenanceHelperModel?.id != 0 ? context.translation.update : context.translation.addActivity, // Use the dynamic label
buttonColor: AppColor.primary10, buttonColor: AppColor.primary10,

@ -307,6 +307,7 @@ class _SparePartRequestState extends State<SparePartRequest> with TickerProvider
).paddingAll(12).expanded, ).paddingAll(12).expanded,
if (!requestDetailProvider.isReadOnlyRequest) if (!requestDetailProvider.isReadOnlyRequest)
FooterActionButton.footerContainer( FooterActionButton.footerContainer(
context: context,
child: AppFilledButton( child: AppFilledButton(
label: _requestDetailProvider?.sparePartHelperModel?.id == 0 ? context.translation.addSparePartActivity : context.translation.updateSparePartActivity, label: _requestDetailProvider?.sparePartHelperModel?.id == 0 ? context.translation.addSparePartActivity : context.translation.updateSparePartActivity,
buttonColor: AppColor.green70, buttonColor: AppColor.green70,

@ -169,6 +169,7 @@ class _CreateNewRequestState extends State<CreateNewRequest> with TickerProvider
), ),
).expanded, ).expanded,
FooterActionButton.footerContainer( FooterActionButton.footerContainer(
context: context,
child: AppFilledButton( child: AppFilledButton(
// label: context.translation.submitRequest, // label: context.translation.submitRequest,
buttonColor: AppColor.primary10, buttonColor: AppColor.primary10,
@ -235,7 +236,7 @@ class _CreateNewRequestState extends State<CreateNewRequest> with TickerProvider
], ],
) )
], ],
).toShimmer(isShow: snapshot.loading), ).toShimmer(isShow: snapshot.loading,context: context),
], ],
); );
}); });
@ -277,7 +278,7 @@ class _CreateNewRequestState extends State<CreateNewRequest> with TickerProvider
_serviceRequest.priority = snapshot.items.firstWhere((element) => element.value == 0, orElse: null); _serviceRequest.priority = snapshot.items.firstWhere((element) => element.value == 0, orElse: null);
} }
setState(() {}); setState(() {});
}).toShimmer(isShow: snapshot.loading); }).toShimmer(isShow: snapshot.loading,context: context);
}), }),
], ],
); );

@ -73,7 +73,7 @@ class _ServiceRequestDetailMainState extends State<ServiceRequestDetailMain> {
return true; return true;
}, },
child: Scaffold( child: Scaffold(
backgroundColor: AppColor.neutral100, backgroundColor: Theme.of(context).scaffoldBackgroundColor,
appBar: DefaultAppBar( appBar: DefaultAppBar(
title: context.translation.cmDetails, title: context.translation.cmDetails,
onBackPress: () { onBackPress: () {

@ -43,7 +43,7 @@ class _PpmCalibrationToolsFormState extends State<PpmCalibrationToolsForm> {
child: AppFilledButton( child: AppFilledButton(
label: "Add More Calibration Tools".addTranslation, label: "Add More Calibration Tools".addTranslation,
maxWidth: true, maxWidth: true,
textColor: AppColor.black10, textColor: AppColor.headingTextColor(context),
buttonColor: context.isDark ? AppColor.neutral60 : AppColor.white10, buttonColor: context.isDark ? AppColor.neutral60 : AppColor.white10,
icon: Icon(Icons.add_circle, color: AppColor.blueStatus(context)), icon: Icon(Icons.add_circle, color: AppColor.blueStatus(context)),
showIcon: true, showIcon: true,
@ -107,7 +107,7 @@ class _PpmCalibrationToolsFormState extends State<PpmCalibrationToolsForm> {
label: context.translation.calibrationDate, label: context.translation.calibrationDate,
date: DateTime.tryParse(model.calibrationDateOfTesters ?? ""), date: DateTime.tryParse(model.calibrationDateOfTesters ?? ""),
from: DateTime.now().subtract(const Duration(days: 90)), from: DateTime.now().subtract(const Duration(days: 90)),
backgroundColor: context.isDark ? AppColor.neutral50 : AppColor.neutral100, backgroundColor: AppColor.fieldBgColor(context),
withBorder: false, withBorder: false,
hideShadow: true, hideShadow: true,
onDatePicker: (date) { onDatePicker: (date) {

@ -66,7 +66,7 @@ class _PpmExternalDetailsFormState extends State<PpmExternalDetailsForm> {
child: AppFilledButton( child: AppFilledButton(
label: "Add More External Details".addTranslation, label: "Add More External Details".addTranslation,
maxWidth: true, maxWidth: true,
textColor: AppColor.black10, textColor: AppColor.headingTextColor(context),
buttonColor: context.isDark ? AppColor.neutral60 : AppColor.white10, buttonColor: context.isDark ? AppColor.neutral60 : AppColor.white10,
icon: Icon(Icons.add_circle, color: AppColor.blueStatus(context)), icon: Icon(Icons.add_circle, color: AppColor.blueStatus(context)),
showIcon: true, showIcon: true,
@ -150,7 +150,7 @@ class _ExternalDetailItemState extends State<ExternalDetailItem> {
context: context, context: context,
title: context.translation.supplier, title: context.translation.supplier,
initialValue: widget.model.supplier, initialValue: widget.model.supplier,
backgroundColor: AppColor.neutral100, backgroundColor: AppColor.fieldBgColor(context),
showAsBottomSheet: true, showAsBottomSheet: true,
showShadow: false, showShadow: false,
showCancel: true, showCancel: true,
@ -168,7 +168,7 @@ class _ExternalDetailItemState extends State<ExternalDetailItem> {
context: context, context: context,
title: context.translation.supplierEngineer, title: context.translation.supplierEngineer,
enabled: widget.model.supplier != null, enabled: widget.model.supplier != null,
backgroundColor: AppColor.neutral100, backgroundColor: AppColor.fieldBgColor(context),
initialValue: widget.model.suppPerson, initialValue: widget.model.suppPerson,
staticData: widget.model.supplier?.suppPersons, staticData: widget.model.supplier?.suppPersons,
showAsBottomSheet: true, showAsBottomSheet: true,
@ -184,7 +184,7 @@ class _ExternalDetailItemState extends State<ExternalDetailItem> {
height: 56.toScreenHeight, height: 56.toScreenHeight,
width: 60.toScreenWidth, width: 60.toScreenWidth,
decoration: BoxDecoration( decoration: BoxDecoration(
color: AppColor.neutral100, color: AppColor.fieldBgColor(context),
borderRadius: BorderRadius.circular(10), borderRadius: BorderRadius.circular(10),
//boxShadow: [BoxShadow(color: Colors.black.withOpacity(0.05), blurRadius: 10)], //boxShadow: [BoxShadow(color: Colors.black.withOpacity(0.05), blurRadius: 10)],
), ),
@ -217,7 +217,7 @@ class _ExternalDetailItemState extends State<ExternalDetailItem> {
ADatePicker( ADatePicker(
label: context.translation.startTime, label: context.translation.startTime,
hideShadow: true, hideShadow: true,
backgroundColor: AppColor.neutral100, backgroundColor: AppColor.fieldBgColor(context),
date: widget.model.startDateTime, date: widget.model.startDateTime,
formatDateWithTime: true, formatDateWithTime: true,
from: DateTime.tryParse(_ppmProvider?.planPreventiveVisit?.createdDate ?? ''), from: DateTime.tryParse(_ppmProvider?.planPreventiveVisit?.createdDate ?? ''),
@ -260,7 +260,7 @@ class _ExternalDetailItemState extends State<ExternalDetailItem> {
ADatePicker( ADatePicker(
label: context.translation.endTime, label: context.translation.endTime,
hideShadow: true, hideShadow: true,
backgroundColor: AppColor.neutral100, backgroundColor: AppColor.fieldBgColor(context),
date: widget.model.endDateTime, date: widget.model.endDateTime,
enable: widget.model.startDateTime != null, enable: widget.model.startDateTime != null,
formatDateWithTime: true, formatDateWithTime: true,
@ -303,7 +303,7 @@ class _ExternalDetailItemState extends State<ExternalDetailItem> {
8.height, 8.height,
AppTextFormField( AppTextFormField(
labelText: context.translation.workingHours, labelText: context.translation.workingHours,
backgroundColor: AppColor.neutral80, backgroundColor: AppColor.fieldBgColor(context),
controller: controller, controller: controller,
textAlign: TextAlign.center, textAlign: TextAlign.center,
enable: false, enable: false,

@ -55,6 +55,7 @@ class _PpmPmChecklistFormState extends State<PpmPmChecklistForm> {
], ],
AppTextFormField( AppTextFormField(
labelText: "Task".addTranslation, labelText: "Task".addTranslation,
labelStyle: AppTextStyles.tinyFont.copyWith(color: context.isDark ? AppColor.neutral30 : AppColor.neutral120, fontWeight: FontWeight.w500), labelStyle: AppTextStyles.tinyFont.copyWith(color: context.isDark ? AppColor.neutral30 : AppColor.neutral120, fontWeight: FontWeight.w500),
initialValue: list[index].instructionText?.text ?? "", initialValue: list[index].instructionText?.text ?? "",
enable: false, enable: false,

@ -40,7 +40,7 @@ class _PpmPMKitsFormState extends State<PpmPMKitsForm> {
child: AppFilledButton( child: AppFilledButton(
label: "Add More PM Kits".addTranslation, label: "Add More PM Kits".addTranslation,
maxWidth: true, maxWidth: true,
textColor: AppColor.black10, textColor: AppColor.headingTextColor(context),
buttonColor: context.isDark ? AppColor.neutral60 : AppColor.white10, buttonColor: context.isDark ? AppColor.neutral60 : AppColor.white10,
icon: Icon(Icons.add_circle, color: AppColor.blueStatus(context)), icon: Icon(Icons.add_circle, color: AppColor.blueStatus(context)),
showIcon: true, showIcon: true,

@ -122,7 +122,7 @@ class _UpdatePpmState extends State<UpdatePpm> with TickerProviderStateMixin {
@override @override
Widget build(BuildContext context) { Widget build(BuildContext context) {
return Scaffold( return Scaffold(
backgroundColor: AppColor.neutral110, backgroundColor: Theme.of(context).scaffoldBackgroundColor,
appBar: DefaultAppBar( appBar: DefaultAppBar(
title: context.translation.preventiveMaintenance, title: context.translation.preventiveMaintenance,
onWillPopScope: ppmProvider.isReadOnly onWillPopScope: ppmProvider.isReadOnly
@ -204,6 +204,7 @@ class _UpdatePpmState extends State<UpdatePpm> with TickerProviderStateMixin {
if (tabIndex == 1) ...[ if (tabIndex == 1) ...[
AppFilledButton( AppFilledButton(
buttonColor: _tabController!.index == 0 ? null : AppColor.background(context), buttonColor: _tabController!.index == 0 ? null : AppColor.background(context),
// buttonColor: _tabController!.index == 0 ? null : AppColor.background(context),
textColor: _tabController!.index == 0 ? null : AppColor.blueStatus(context), textColor: _tabController!.index == 0 ? null : AppColor.blueStatus(context),
showBorder: true, showBorder: true,
disableButton: _tabController!.index == 0, disableButton: _tabController!.index == 0,
@ -221,8 +222,10 @@ class _UpdatePpmState extends State<UpdatePpm> with TickerProviderStateMixin {
], ],
if (!ppmProvider.isReadOnly) ...[ if (!ppmProvider.isReadOnly) ...[
AppFilledButton( AppFilledButton(
buttonColor: AppColor.white60, // buttonColor: AppColor.white60,
textColor: AppColor.neutral50, // textColor: AppColor.neutral50,
buttonColor: context.isDark?AppColor.neutral50:AppColor.white60,
textColor: context.isDark ? Colors.white: AppColor.neutral150,
onPressed: () { onPressed: () {
_onSubmit(status: 0); _onSubmit(status: 0);
}, },

@ -82,7 +82,7 @@ class _WoInfoFormState extends State<WoInfoForm> {
backgroundColor: AppColor.getRequestStatusColorByName(context, widget.planPreventiveVisit.visitStatus?.name), backgroundColor: AppColor.getRequestStatusColorByName(context, widget.planPreventiveVisit.visitStatus?.name),
), ),
8.height, 8.height,
widget.planPreventiveVisit.planName!.bodyText(context).custom(color: AppColor.black10), widget.planPreventiveVisit.planName!.bodyText(context).custom(color: AppColor.headingTextColor(context)),
2.height, 2.height,
'${context.translation.pmPlanNo}: ${widget.planPreventiveVisit.planNo}'.bodyText2(context).custom(color: AppColor.neutral120), '${context.translation.pmPlanNo}: ${widget.planPreventiveVisit.planNo}'.bodyText2(context).custom(color: AppColor.neutral120),
//need to add in translation it's suggestion from ahmed.. //need to add in translation it's suggestion from ahmed..
@ -107,7 +107,7 @@ class _WoInfoFormState extends State<WoInfoForm> {
Row( Row(
mainAxisAlignment: MainAxisAlignment.spaceBetween, mainAxisAlignment: MainAxisAlignment.spaceBetween,
children: [ children: [
widget.planPreventiveVisit.assetName!.bodyText(context).custom(color: AppColor.black10).expanded, widget.planPreventiveVisit.assetName!.bodyText(context).custom(color: AppColor.headingTextColor(context)).expanded,
"info_icon".toSvgAsset(height: 17, width: 17).onPress( "info_icon".toSvgAsset(height: 17, width: 17).onPress(
() { () {
// There is only limited information for asset is returned from backend to show all info need to return the whole model from backend... // There is only limited information for asset is returned from backend to show all info need to return the whole model from backend...
@ -127,8 +127,8 @@ class _WoInfoFormState extends State<WoInfoForm> {
], ],
), ),
2.height, 2.height,
'${context.translation.assetNo}: ${widget.planPreventiveVisit.asset?.assetNumber}'.bodyText2(context).custom(color: AppColor.neutral120), '${context.translation.assetNo}: ${widget.planPreventiveVisit.asset?.assetNumber}'.bodyText2(context).custom(color: AppColor.lightTextColor(context)),
'${context.translation.model}: ${widget.planPreventiveVisit.model}'.bodyText2(context).custom(color: AppColor.neutral120), '${context.translation.model}: ${widget.planPreventiveVisit.model}'.bodyText2(context).custom(color: AppColor.lightTextColor(context)),
], ],
).toShadowContainer(context), ).toShadowContainer(context),
@ -172,7 +172,7 @@ class _WoInfoFormState extends State<WoInfoForm> {
initialValue: initialValue:
widget.planPreventiveVisit.taskStatus == null ? null : Lookup(name: widget.planPreventiveVisit.taskStatus?.name ?? "", id: widget.planPreventiveVisit.taskStatus?.id), widget.planPreventiveVisit.taskStatus == null ? null : Lookup(name: widget.planPreventiveVisit.taskStatus?.name ?? "", id: widget.planPreventiveVisit.taskStatus?.id),
title: context.translation.pmTestResult, title: context.translation.pmTestResult,
backgroundColor: AppColor.neutral100, backgroundColor: AppColor.fieldBgColor(context),
onSelect: (value) { onSelect: (value) {
if (value != null) { if (value != null) {
widget.planPreventiveVisit.taskStatus = value; widget.planPreventiveVisit.taskStatus = value;
@ -183,7 +183,7 @@ class _WoInfoFormState extends State<WoInfoForm> {
ADatePicker( ADatePicker(
label: context.translation.actualVisit, label: context.translation.actualVisit,
hideShadow: true, hideShadow: true,
backgroundColor: AppColor.neutral100, backgroundColor: AppColor.fieldBgColor(context),
date: widget.planPreventiveVisit.acutalDateOfVisit, date: widget.planPreventiveVisit.acutalDateOfVisit,
from: DateTime.tryParse(widget.planPreventiveVisit.creationDate ?? ''), from: DateTime.tryParse(widget.planPreventiveVisit.creationDate ?? ''),
formatDateWithTime: true, formatDateWithTime: true,
@ -230,7 +230,7 @@ class _WoInfoFormState extends State<WoInfoForm> {
8.height, 8.height,
SingleItemDropDownMenu<Lookup, PpmElectricalSafetyProvider>( SingleItemDropDownMenu<Lookup, PpmElectricalSafetyProvider>(
context: context, context: context,
backgroundColor: AppColor.neutral100, backgroundColor: AppColor.fieldBgColor(context),
showShadow: false, showShadow: false,
initialValue: widget.planPreventiveVisit.safety?.id == null ? null : Lookup(name: widget.planPreventiveVisit.safety?.name ?? "", id: widget.planPreventiveVisit.safety?.id), initialValue: widget.planPreventiveVisit.safety?.id == null ? null : Lookup(name: widget.planPreventiveVisit.safety?.name ?? "", id: widget.planPreventiveVisit.safety?.id),
title: "Electrical Safety", title: "Electrical Safety",
@ -243,7 +243,7 @@ class _WoInfoFormState extends State<WoInfoForm> {
8.height, 8.height,
SingleItemDropDownMenu<Lookup, PpmAssetAvailabilityProvider>( SingleItemDropDownMenu<Lookup, PpmAssetAvailabilityProvider>(
context: context, context: context,
backgroundColor: AppColor.neutral100, backgroundColor: AppColor.fieldBgColor(context),
showShadow: false, showShadow: false,
initialValue: widget.planPreventiveVisit.assetAvailability == null initialValue: widget.planPreventiveVisit.assetAvailability == null
? null ? null
@ -258,7 +258,7 @@ class _WoInfoFormState extends State<WoInfoForm> {
8.height, 8.height,
SingleItemDropDownMenu<Lookup, PpmServiceProvider>( SingleItemDropDownMenu<Lookup, PpmServiceProvider>(
context: context, context: context,
backgroundColor: AppColor.neutral100, backgroundColor: AppColor.fieldBgColor(context),
showShadow: false, showShadow: false,
initialValue: widget.planPreventiveVisit.typeOfService == null initialValue: widget.planPreventiveVisit.typeOfService == null
? null ? null
@ -281,7 +281,7 @@ class _WoInfoFormState extends State<WoInfoForm> {
8.height, 8.height,
AppTextFormField( AppTextFormField(
labelText: context.translation.comment, labelText: context.translation.comment,
backgroundColor: AppColor.neutral100, backgroundColor: AppColor.fieldBgColor(context),
showShadow: false, showShadow: false,
initialValue: (widget.planPreventiveVisit.comments ?? "").toString(), initialValue: (widget.planPreventiveVisit.comments ?? "").toString(),
textAlign: TextAlign.center, textAlign: TextAlign.center,
@ -359,7 +359,7 @@ class _WoInfoFormState extends State<WoInfoForm> {
children: [ children: [
AppTimer( AppTimer(
label: context.translation.workingHours, label: context.translation.workingHours,
decoration: BoxDecoration(color: AppColor.neutral100, borderRadius: BorderRadius.circular(10)), decoration: BoxDecoration(color: AppColor.fieldBgColor(context), borderRadius: BorderRadius.circular(10)),
width: double.infinity, width: double.infinity,
timer: widget.planPreventiveVisit.tbsTimer, timer: widget.planPreventiveVisit.tbsTimer,
pickerTimer: widget.planPreventiveVisit.ppMTimePicker, pickerTimer: widget.planPreventiveVisit.ppMTimePicker,

@ -79,6 +79,8 @@ class _RecurrentWorkOrderViewState extends State<RecurrentWorkOrderView> {
).paddingOnly(bottom: 85), ).paddingOnly(bottom: 85),
if (requestProvider.recurrentWoData?.status?.value != 1) ...[ if (requestProvider.recurrentWoData?.status?.value != 1) ...[
FooterActionButton.footerContainer( FooterActionButton.footerContainer(
context: context,
child: Row( child: Row(
mainAxisAlignment: MainAxisAlignment.spaceAround, mainAxisAlignment: MainAxisAlignment.spaceAround,
children: [ children: [

@ -122,6 +122,7 @@ class _CreateTaskViewState extends State<CreateTaskView> with TickerProviderStat
).toShadowContainer(context).paddingAll(16), ).toShadowContainer(context).paddingAll(16),
).expanded, ).expanded,
FooterActionButton.footerContainer( FooterActionButton.footerContainer(
context: context,
child: AppFilledButton( child: AppFilledButton(
buttonColor: AppColor.primary10, buttonColor: AppColor.primary10,
label: context.translation.submitRequest, label: context.translation.submitRequest,

@ -125,7 +125,8 @@ class _UpdateTaskRequestState extends State<UpdateTaskRequest> {
initialValue: "", initialValue: "",
labelText: context.translation.technicalComment, labelText: context.translation.technicalComment,
textInputType: TextInputType.multiline, textInputType: TextInputType.multiline,
backgroundColor: AppColor.neutral90, backgroundColor: AppColor.fieldBgColor(context),
labelStyle: TextStyle(color: AppColor.textColor(context)),
showShadow: false, showShadow: false,
alignLabelWithHint: true, alignLabelWithHint: true,
onChange: (value) { onChange: (value) {
@ -150,6 +151,7 @@ class _UpdateTaskRequestState extends State<UpdateTaskRequest> {
), ),
).paddingOnly(bottom: 85), ).paddingOnly(bottom: 85),
FooterActionButton.footerContainer( FooterActionButton.footerContainer(
context: context,
child: Row( child: Row(
mainAxisAlignment: MainAxisAlignment.spaceAround, mainAxisAlignment: MainAxisAlignment.spaceAround,
children: [ children: [
@ -263,7 +265,7 @@ class _UpdateTaskRequestState extends State<UpdateTaskRequest> {
ADatePicker( ADatePicker(
label: context.translation.installationDate, label: context.translation.installationDate,
hideShadow: true, hideShadow: true,
backgroundColor: AppColor.neutral90, backgroundColor: AppColor.fieldBgColor(context),
date: DateTime.tryParse(taskModel.installationDate ?? ""), date: DateTime.tryParse(taskModel.installationDate ?? ""),
formatDateWithTime: false, formatDateWithTime: false,
onDatePicker: (selectedDate) { onDatePicker: (selectedDate) {
@ -289,7 +291,7 @@ class _UpdateTaskRequestState extends State<UpdateTaskRequest> {
8.height, 8.height,
AppTextFormField( AppTextFormField(
labelText: context.translation.serialNo, labelText: context.translation.serialNo,
backgroundColor: AppColor.neutral90, backgroundColor: AppColor.fieldBgColor(context),
showShadow: false, showShadow: false,
labelStyle: AppTextStyles.textFieldLabelStyle, labelStyle: AppTextStyles.textFieldLabelStyle,
initialValue: taskModel.serialNo ?? '', initialValue: taskModel.serialNo ?? '',
@ -305,7 +307,7 @@ class _UpdateTaskRequestState extends State<UpdateTaskRequest> {
initialValue: taskModel.site, initialValue: taskModel.site,
loading: _taskProvider?.isSiteLoading, loading: _taskProvider?.isSiteLoading,
showAsBottomSheet: true, showAsBottomSheet: true,
backgroundColor: AppColor.neutral100, backgroundColor: AppColor.fieldBgColor(context),
showShadow: false, showShadow: false,
enabled: false, enabled: false,
onSelect: (value) { onSelect: (value) {
@ -323,7 +325,7 @@ class _UpdateTaskRequestState extends State<UpdateTaskRequest> {
SingleItemDropDownMenu<Building, NullableLoadingProvider>( SingleItemDropDownMenu<Building, NullableLoadingProvider>(
context: context, context: context,
title: 'Installation Building', title: 'Installation Building',
backgroundColor: AppColor.neutral100, backgroundColor: AppColor.fieldBgColor(context),
showAsBottomSheet: true, showAsBottomSheet: true,
loading: _taskProvider?.isSiteLoading, loading: _taskProvider?.isSiteLoading,
showShadow: false, showShadow: false,
@ -344,7 +346,7 @@ class _UpdateTaskRequestState extends State<UpdateTaskRequest> {
SingleItemDropDownMenu<Floor, NullableLoadingProvider>( SingleItemDropDownMenu<Floor, NullableLoadingProvider>(
context: context, context: context,
showAsBottomSheet: true, showAsBottomSheet: true,
backgroundColor: AppColor.neutral100, backgroundColor: AppColor.fieldBgColor(context),
loading: _taskProvider?.isSiteLoading, loading: _taskProvider?.isSiteLoading,
showShadow: false, showShadow: false,
title: 'Installation Floor', title: 'Installation Floor',
@ -364,7 +366,7 @@ class _UpdateTaskRequestState extends State<UpdateTaskRequest> {
SingleItemDropDownMenu<Department, NullableLoadingProvider>( SingleItemDropDownMenu<Department, NullableLoadingProvider>(
context: context, context: context,
title: 'Installation Department', title: 'Installation Department',
backgroundColor: AppColor.neutral100, backgroundColor: AppColor.fieldBgColor(context),
loading: _taskProvider?.isSiteLoading, loading: _taskProvider?.isSiteLoading,
showAsBottomSheet: true, showAsBottomSheet: true,
showShadow: false, showShadow: false,
@ -424,7 +426,7 @@ class _UpdateTaskRequestState extends State<UpdateTaskRequest> {
height: 56.toScreenHeight, height: 56.toScreenHeight,
title: context.translation.completedActions, title: context.translation.completedActions,
showShadow: false, showShadow: false,
backgroundColor: AppColor.neutral90, backgroundColor: AppColor.fieldBgColor(context),
enabled: false, enabled: false,
showAsBottomSheet: true, showAsBottomSheet: true,
initialValue: taskModel.actionNeeded, initialValue: taskModel.actionNeeded,
@ -439,7 +441,7 @@ class _UpdateTaskRequestState extends State<UpdateTaskRequest> {
height: 56.toScreenHeight, height: 56.toScreenHeight,
title: context.translation.impactStatus, title: context.translation.impactStatus,
showShadow: false, showShadow: false,
backgroundColor: AppColor.neutral90, backgroundColor: AppColor.fieldBgColor(context),
showAsBottomSheet: true, showAsBottomSheet: true,
initialValue: taskModel.impactStatus, initialValue: taskModel.impactStatus,
onSelect: (status) { onSelect: (status) {
@ -463,7 +465,7 @@ class _UpdateTaskRequestState extends State<UpdateTaskRequest> {
height: 56.toScreenHeight, height: 56.toScreenHeight,
title: context.translation.completedActions, title: context.translation.completedActions,
showShadow: false, showShadow: false,
backgroundColor: AppColor.neutral90, backgroundColor: AppColor.fieldBgColor(context),
enabled: false, enabled: false,
showAsBottomSheet: true, showAsBottomSheet: true,
initialValue: taskModel.actionNeeded, initialValue: taskModel.actionNeeded,
@ -478,7 +480,7 @@ class _UpdateTaskRequestState extends State<UpdateTaskRequest> {
height: 56.toScreenHeight, height: 56.toScreenHeight,
title: context.translation.impactStatus, title: context.translation.impactStatus,
showShadow: false, showShadow: false,
backgroundColor: AppColor.neutral90, backgroundColor: AppColor.fieldBgColor(context),
showAsBottomSheet: true, showAsBottomSheet: true,
initialValue: taskModel.impactStatus, initialValue: taskModel.impactStatus,
onSelect: (status) { onSelect: (status) {
@ -510,7 +512,7 @@ class _UpdateTaskRequestState extends State<UpdateTaskRequest> {
width: double.infinity, width: double.infinity,
enabled: isTimerEnable, enabled: isTimerEnable,
decoration: BoxDecoration( decoration: BoxDecoration(
color: AppColor.neutral90, color: AppColor.fieldBgColor(context),
borderRadius: BorderRadius.circular(10), borderRadius: BorderRadius.circular(10),
), ),
pickerTimer: taskProvider.taskRequestModel?.taskTimePicker, pickerTimer: taskProvider.taskRequestModel?.taskTimePicker,
@ -529,11 +531,11 @@ class _UpdateTaskRequestState extends State<UpdateTaskRequest> {
crossAxisAlignment: CrossAxisAlignment.center, crossAxisAlignment: CrossAxisAlignment.center,
mainAxisAlignment: MainAxisAlignment.start, mainAxisAlignment: MainAxisAlignment.start,
children: [ children: [
'Total Working Time:'.bodyText2(context).custom(color: AppColor.neutral50), 'Total Working Time:'.bodyText2(context).custom(color: AppColor.textColor(context)),
8.width, 8.width,
Text( Text(
ServiceRequestUtils.formatTimerDuration(totalWorkingHours.round()), ServiceRequestUtils.formatTimerDuration(totalWorkingHours.round()),
style: AppTextStyles.bodyText.copyWith(color: AppColor.neutral50, fontWeight: FontWeight.w600), style: AppTextStyles.bodyText.copyWith(color: AppColor.textColor(context), fontWeight: FontWeight.w600),
), ),
], ],
), ),
@ -630,7 +632,7 @@ class _AssistantEmployeeCardState extends State<AssistantEmployeeCard> {
child: Row( child: Row(
mainAxisAlignment: MainAxisAlignment.spaceBetween, mainAxisAlignment: MainAxisAlignment.spaceBetween,
children: [ children: [
context.translation.assistantEmployee.heading6(context).custom(color: AppColor.black10), context.translation.assistantEmployee.heading6(context).custom(color: AppColor.textColor(context)),
Icon(isExpanded ? Icons.keyboard_arrow_up_rounded : Icons.keyboard_arrow_down_rounded), Icon(isExpanded ? Icons.keyboard_arrow_up_rounded : Icons.keyboard_arrow_down_rounded),
], ],
), ),
@ -645,7 +647,7 @@ class _AssistantEmployeeCardState extends State<AssistantEmployeeCard> {
children: [ children: [
ServiceReportAssistantEmployeeMenu( ServiceReportAssistantEmployeeMenu(
title: context.translation.select, title: context.translation.select,
backgroundColor: AppColor.neutral100, backgroundColor: AppColor.fieldBgColor(context),
initialValue: (taskModel?.assistantEmployees?.isNotEmpty ?? false) ? taskModel?.assistantEmployees?.first : null, initialValue: (taskModel?.assistantEmployees?.isNotEmpty ?? false) ? taskModel?.assistantEmployees?.first : null,
onSelect: (employee) { onSelect: (employee) {
if (employee == null) { if (employee == null) {
@ -663,7 +665,7 @@ class _AssistantEmployeeCardState extends State<AssistantEmployeeCard> {
ADatePicker( ADatePicker(
label: context.translation.startTime, label: context.translation.startTime,
hideShadow: true, hideShadow: true,
backgroundColor: AppColor.neutral100, backgroundColor: AppColor.fieldBgColor(context),
date: taskModel?.modelAssistantEmployees?.startDate, date: taskModel?.modelAssistantEmployees?.startDate,
// from: taskModel?.d, // from: taskModel?.d,
formatDateWithTime: true, formatDateWithTime: true,
@ -703,7 +705,7 @@ class _AssistantEmployeeCardState extends State<AssistantEmployeeCard> {
ADatePicker( ADatePicker(
label: context.translation.endTime, label: context.translation.endTime,
hideShadow: true, hideShadow: true,
backgroundColor: AppColor.neutral100, backgroundColor: AppColor.fieldBgColor(context),
date: taskModel?.modelAssistantEmployees?.endDate, date: taskModel?.modelAssistantEmployees?.endDate,
enable: taskModel?.modelAssistantEmployees?.startDate != null, enable: taskModel?.modelAssistantEmployees?.startDate != null,
formatDateWithTime: true, formatDateWithTime: true,
@ -757,12 +759,12 @@ class _AssistantEmployeeCardState extends State<AssistantEmployeeCard> {
8.height, 8.height,
AppTextFormField( AppTextFormField(
labelText: context.translation.workingHours, labelText: context.translation.workingHours,
backgroundColor: AppColor.neutral80, backgroundColor: AppColor.fieldBgColor(context),
controller: _workingHoursController, controller: _workingHoursController,
suffixIcon: "clock".toSvgAsset(width: 20, color: context.isDark ? AppColor.neutral10 : null).paddingOnly(end: 16), suffixIcon: "clock".toSvgAsset(width: 20, color: context.isDark ? AppColor.neutral10 : null).paddingOnly(end: 16),
initialValue: taskModel?.modelAssistantEmployees?.workingHours != null ? taskModel!.modelAssistantEmployees!.workingHours?.toStringAsFixed(2) : '', initialValue: taskModel?.modelAssistantEmployees?.workingHours != null ? taskModel!.modelAssistantEmployees!.workingHours?.toStringAsFixed(2) : '',
textAlign: TextAlign.center, textAlign: TextAlign.center,
labelStyle: AppTextStyles.textFieldLabelStyle, labelStyle: AppTextStyles.textFieldLabelStyle.copyWith(color: AppColor.textColor(context)),
enable: false, enable: false,
showShadow: false, showShadow: false,
style: Theme.of(context).textTheme.titleMedium, style: Theme.of(context).textTheme.titleMedium,
@ -771,9 +773,9 @@ class _AssistantEmployeeCardState extends State<AssistantEmployeeCard> {
AppTextFormField( AppTextFormField(
initialValue: taskModel?.modelAssistantEmployees?.comment, initialValue: taskModel?.modelAssistantEmployees?.comment,
labelText: context.translation.comment, labelText: context.translation.comment,
backgroundColor: AppColor.neutral100, backgroundColor: AppColor.fieldBgColor(context),
showShadow: false, showShadow: false,
labelStyle: AppTextStyles.textFieldLabelStyle, labelStyle: AppTextStyles.textFieldLabelStyle.copyWith(color: AppColor.textColor(context)),
alignLabelWithHint: true, alignLabelWithHint: true,
textInputType: TextInputType.multiline, textInputType: TextInputType.multiline,
onChange: (value) { onChange: (value) {

@ -96,6 +96,11 @@ class AppColor {
static Color yellowIcon(BuildContext context) => context.isDark ? const Color(0xffFFC945) : orange70; static Color yellowIcon(BuildContext context) => context.isDark ? const Color(0xffFFC945) : orange70;
static Color background(BuildContext context) => context.isDark ? neutral60 : Colors.white; static Color background(BuildContext context) => context.isDark ? neutral60 : Colors.white;
static Color textColor(BuildContext context) =>context.isDark ? AppColor.neutral30 : AppColor.neutral50;
static Color headingTextColor(BuildContext context) =>context.isDark ? AppColor.neutral30 : AppColor.black10;
static Color lightTextColor(BuildContext context) =>AppColor.neutral120;
static Color iconColor(BuildContext context) =>context.isDark ? AppColor.neutral30 : AppColor.neutral50;
static Color fieldBgColor(BuildContext context) => context.isDark ? AppColor.neutral20 : AppColor.neutral100;
static Color selectedButtonColor(BuildContext context) => context.isDark ? neutral60 : neutral30; static Color selectedButtonColor(BuildContext context) => context.isDark ? neutral60 : neutral30;

@ -33,7 +33,8 @@ class AppBottomNavigationBar extends StatelessWidget {
boxShadow: [boxShadowR14], boxShadow: [boxShadowR14],
), ),
child: BottomNavigationBar( child: BottomNavigationBar(
backgroundColor: Colors.white, // backgroundColor: Colors.white,
backgroundColor: AppColor.background(context),
items: <BottomNavigationBarItem>[ items: <BottomNavigationBarItem>[
for (int i = 0; i < navItems.length; i++) navBarItem(context, index: navItems[i].index, iconName: navItems[i].iconName, label: navItems[i].label, showLabel: navItems[i].showLabel), for (int i = 0; i < navItems.length; i++) navBarItem(context, index: navItems[i].index, iconName: navItems[i].iconName, label: navItems[i].label, showLabel: navItems[i].showLabel),
], ],

@ -1,7 +1,9 @@
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:test_sa/extensions/context_extension.dart';
import 'package:test_sa/extensions/int_extensions.dart'; import 'package:test_sa/extensions/int_extensions.dart';
import 'package:test_sa/extensions/text_extensions.dart'; import 'package:test_sa/extensions/text_extensions.dart';
import 'package:test_sa/extensions/widget_extensions.dart'; import 'package:test_sa/extensions/widget_extensions.dart';
import 'package:test_sa/models/new_models/gas_refill_model.dart';
import 'package:test_sa/new_views/app_style/app_color.dart'; import 'package:test_sa/new_views/app_style/app_color.dart';
class AppFilledButton extends StatelessWidget { class AppFilledButton extends StatelessWidget {
@ -43,7 +45,7 @@ class AppFilledButton extends StatelessWidget {
alignment: Alignment.center, alignment: Alignment.center,
decoration: BoxDecoration( decoration: BoxDecoration(
borderRadius: BorderRadius.circular(10), borderRadius: BorderRadius.circular(10),
color: disableButton ? AppColor.neutral140 : (buttonColor ?? AppColor.blueStatus(context)), color: disableButton ?context.isDark ?AppColor.neutral20 :AppColor.neutral140 : (buttonColor ?? AppColor.blueStatus(context)),
border: showBorder ? Border.all(color: textColor ?? AppColor.background(context)) : null, border: showBorder ? Border.all(color: textColor ?? AppColor.background(context)) : null,
), ),
child: loading child: loading

@ -188,7 +188,7 @@ class _AppTextFormFieldState extends State<AppTextFormField> {
controller: widget.controller, controller: widget.controller,
textInputAction: widget.textInputType == TextInputType.multiline ? null : widget.textInputAction ?? TextInputAction.next, textInputAction: widget.textInputType == TextInputType.multiline ? null : widget.textInputAction ?? TextInputAction.next,
onEditingComplete: widget.onAction ?? () => FocusScope.of(context).nextFocus(), onEditingComplete: widget.onAction ?? () => FocusScope.of(context).nextFocus(),
style: widget.style ?? AppTextStyle.body1.copyWith(fontWeight: FontWeight.w500,color: AppColor.black10), style: widget.style ?? AppTextStyle.body1.copyWith(fontWeight: FontWeight.w500,color:context.isDark?AppColor.white10: AppColor.black10),
onTap: widget.onTap, onTap: widget.onTap,
decoration: InputDecoration( decoration: InputDecoration(
alignLabelWithHint: widget.alignLabelWithHint, alignLabelWithHint: widget.alignLabelWithHint,
@ -208,7 +208,7 @@ class _AppTextFormFieldState extends State<AppTextFormField> {
? (widget.enableColor ?? AppColor.neutral40) ? (widget.enableColor ?? AppColor.neutral40)
: AppColor.background(context)), : AppColor.background(context)),
errorStyle: AppTextStyle.tiny.copyWith(color: context.isDark ? AppColor.red50 : AppColor.red60), errorStyle: AppTextStyle.tiny.copyWith(color: context.isDark ? AppColor.red50 : AppColor.red60),
floatingLabelStyle: AppTextStyle.body1.copyWith(fontWeight: FontWeight.w500, color: context.isDark ? null : AppColor.neutral20), floatingLabelStyle: AppTextStyle.body1.copyWith(fontWeight: FontWeight.w500, color: context.isDark ? AppColor.white10 : AppColor.neutral20),
hintText: widget.hintText ?? "", hintText: widget.hintText ?? "",
labelText: (widget.showSpeechToText && _speechToText.isListening) ? "Listening..." : widget.labelText ?? "", labelText: (widget.showSpeechToText && _speechToText.isListening) ? "Listening..." : widget.labelText ?? "",
labelStyle: widget.labelStyle, labelStyle: widget.labelStyle,

@ -112,7 +112,7 @@ class _SingleItemDropDownMenuState<T extends Base, X extends LoadingListNotifier
padding: EdgeInsets.symmetric(horizontal: 16.toScreenWidth), padding: EdgeInsets.symmetric(horizontal: 16.toScreenWidth),
decoration: BoxDecoration( decoration: BoxDecoration(
color: context.isDark && (widget.enabled == false || isEmpty) color: context.isDark && (widget.enabled == false || isEmpty)
? AppColor.neutral50 ? AppColor.neutral20
: (widget.enabled == false || isEmpty) : (widget.enabled == false || isEmpty)
? AppColor.neutral40 ? AppColor.neutral40
: widget.backgroundColor ?? AppColor.background(context), : widget.backgroundColor ?? AppColor.background(context),
@ -160,7 +160,7 @@ class _SingleItemDropDownMenuState<T extends Base, X extends LoadingListNotifier
value: value, value: value,
child: Text( child: Text(
value.name ?? "", // Null-aware operator for value.name value.name ?? "", // Null-aware operator for value.name
style: Theme.of(context).textTheme.bodyMedium?.copyWith(fontWeight: FontWeight.w500, color: AppColor.black10), style: Theme.of(context).textTheme.bodyMedium?.copyWith(fontWeight: FontWeight.w500, color: context.isDark?AppColor.white10: AppColor.black10),
), ),
); );
}).toList(), }).toList(),

@ -27,18 +27,19 @@ class TabButton extends StatelessWidget {
padding: const EdgeInsets.symmetric(horizontal: 15, vertical: 8), padding: const EdgeInsets.symmetric(horizontal: 15, vertical: 8),
decoration: BoxDecoration( decoration: BoxDecoration(
borderRadius: BorderRadius.circular(7), borderRadius: BorderRadius.circular(7),
color: isSelected ? AppColor.primary10 : AppColor.white30, color: isSelected ? AppColor.primary10 : AppColor.background(context),
border: !isSelected ? Border.all(color: AppColor.white936.withOpacity(.03), width: 1) : null, border: !isSelected ? Border.all(color: AppColor.white936.withOpacity(.03), width: 1) : null,
), ),
alignment: Alignment.center, alignment: Alignment.center,
child: Text( child: Text(
label, label,
style: AppTextStyles.bodyText2.copyWith( style: AppTextStyles.bodyText2.copyWith(
color: isSelected ? Colors.white : AppColor.black35, //AppColor.background(context)
color: isSelected ? Colors.white :AppColor.textColor(context) ,
), ),
), ),
), ),
), ),
).toShimmer(isShow: loading && isSelected, radius: 7); ).toShimmer(isShow: loading && isSelected, radius: 7,context: context);
} }
} }

@ -80,7 +80,7 @@ class _GasRefillRequestFormState extends State<GasRefillRequestForm> {
context: context, context: context,
title: context.translation.gasType, title: context.translation.gasType,
initialValue: _currentDetails.gasType, initialValue: _currentDetails.gasType,
backgroundColor: AppColor.neutral100, backgroundColor: AppColor.fieldBgColor(context),
showShadow: false, showShadow: false,
showAsBottomSheet: true, showAsBottomSheet: true,
onSelect: (value) { onSelect: (value) {
@ -92,7 +92,7 @@ class _GasRefillRequestFormState extends State<GasRefillRequestForm> {
context: context, context: context,
title: context.translation.cylinderType, title: context.translation.cylinderType,
initialValue: _currentDetails.cylinderType, initialValue: _currentDetails.cylinderType,
backgroundColor: AppColor.neutral100, backgroundColor: AppColor.fieldBgColor(context),
showShadow: false, showShadow: false,
onSelect: (value) { onSelect: (value) {
_currentDetails.cylinderType = value; _currentDetails.cylinderType = value;
@ -104,7 +104,7 @@ class _GasRefillRequestFormState extends State<GasRefillRequestForm> {
title: context.translation.cylinderSize, title: context.translation.cylinderSize,
initialValue: _currentDetails.cylinderSize, initialValue: _currentDetails.cylinderSize,
showAsBottomSheet: true, showAsBottomSheet: true,
backgroundColor: AppColor.neutral100, backgroundColor: AppColor.fieldBgColor(context),
showShadow: false, showShadow: false,
onSelect: (value) { onSelect: (value) {
_currentDetails.cylinderSize = value; _currentDetails.cylinderSize = value;
@ -117,7 +117,7 @@ class _GasRefillRequestFormState extends State<GasRefillRequestForm> {
showAsBottomSheet: true, showAsBottomSheet: true,
initialValue: _requestedQuantity, initialValue: _requestedQuantity,
staticData: gasQuantity, staticData: gasQuantity,
backgroundColor: AppColor.neutral100, backgroundColor: AppColor.fieldBgColor(context),
showShadow: false, showShadow: false,
onSelect: (value) { onSelect: (value) {
_requestedQuantity = value; _requestedQuantity = value;
@ -132,7 +132,7 @@ class _GasRefillRequestFormState extends State<GasRefillRequestForm> {
title: context.translation.site, title: context.translation.site,
initialValue: _gasModel.mapSite, initialValue: _gasModel.mapSite,
showAsBottomSheet: true, showAsBottomSheet: true,
backgroundColor: AppColor.neutral100, backgroundColor: AppColor.fieldBgColor(context),
showShadow: false, showShadow: false,
onSelect: (value) { onSelect: (value) {
setState(() { setState(() {
@ -151,7 +151,7 @@ class _GasRefillRequestFormState extends State<GasRefillRequestForm> {
enabled: _gasModel.mapSite?.buildings?.isNotEmpty ?? false, enabled: _gasModel.mapSite?.buildings?.isNotEmpty ?? false,
staticData: _gasModel.mapSite?.buildings ?? [], staticData: _gasModel.mapSite?.buildings ?? [],
showAsBottomSheet: true, showAsBottomSheet: true,
backgroundColor: AppColor.neutral100, backgroundColor: AppColor.fieldBgColor(context),
showShadow: false, showShadow: false,
onSelect: (value) { onSelect: (value) {
setState(() { setState(() {
@ -173,7 +173,7 @@ class _GasRefillRequestFormState extends State<GasRefillRequestForm> {
enabled: _gasModel.mappedBuilding?.floors?.isNotEmpty ?? false, enabled: _gasModel.mappedBuilding?.floors?.isNotEmpty ?? false,
staticData: _gasModel.mappedBuilding?.floors ?? [], staticData: _gasModel.mappedBuilding?.floors ?? [],
showAsBottomSheet: true, showAsBottomSheet: true,
backgroundColor: AppColor.neutral100, backgroundColor: AppColor.fieldBgColor(context),
showShadow: false, showShadow: false,
onSelect: (value) { onSelect: (value) {
setState(() { setState(() {
@ -190,7 +190,7 @@ class _GasRefillRequestFormState extends State<GasRefillRequestForm> {
enabled: _gasModel.mappedFloor?.departments?.isNotEmpty ?? false, enabled: _gasModel.mappedFloor?.departments?.isNotEmpty ?? false,
staticData: _gasModel.mappedFloor?.departments ?? [], staticData: _gasModel.mappedFloor?.departments ?? [],
showAsBottomSheet: true, showAsBottomSheet: true,
backgroundColor: AppColor.neutral100, backgroundColor: AppColor.fieldBgColor(context),
showShadow: false, showShadow: false,
onSelect: (value) { onSelect: (value) {
_gasModel.mappedDepartment = value; _gasModel.mappedDepartment = value;
@ -201,10 +201,10 @@ class _GasRefillRequestFormState extends State<GasRefillRequestForm> {
8.height, 8.height,
AppTextFormField( AppTextFormField(
labelText: context.translation.callComments, labelText: context.translation.callComments,
labelStyle: AppTextStyles.tinyFont.copyWith(color: AppColor.neutral120), labelStyle: AppTextStyles.tinyFont.copyWith(color: AppColor.textColor(context)),
textInputType: TextInputType.multiline, textInputType: TextInputType.multiline,
alignLabelWithHint: true, alignLabelWithHint: true,
backgroundColor: AppColor.neutral100, backgroundColor: AppColor.fieldBgColor(context),
showShadow: false, showShadow: false,
controller: _commentController, controller: _commentController,
onChange: (value) { onChange: (value) {
@ -224,7 +224,7 @@ class _GasRefillRequestFormState extends State<GasRefillRequestForm> {
).toShadowContainer(context, padding: 10).paddingOnly(start: 16, end: 16, top: 16), ).toShadowContainer(context, padding: 10).paddingOnly(start: 16, end: 16, top: 16),
).expanded, ).expanded,
16.height, 16.height,
FooterActionButton.footerContainer(child: AppFilledButton(label: context.translation.submitRequest, maxWidth: true, onPressed: _submit)), FooterActionButton.footerContainer(context: context, child: AppFilledButton(label: context.translation.submitRequest, maxWidth: true, onPressed: _submit)),
], ],
), ),
); );

@ -79,7 +79,7 @@ class _MonthlyFragmentState extends State<MonthlyFragment> {
orElse: null, orElse: null,
) != ) !=
null, null,
).toShimmer(isShow: snapshot.isCalendarLoading); ).toShimmer(isShow: snapshot.isCalendarLoading, context: context);
}, },
), ),
daysOfWeekHeight: 35.toScreenHeight, daysOfWeekHeight: 35.toScreenHeight,

@ -23,6 +23,7 @@ class CreateRequestTypeBottomSheet extends StatelessWidget {
return Container( return Container(
padding: const EdgeInsets.all(16.0), padding: const EdgeInsets.all(16.0),
width: double.infinity, width: double.infinity,
color: AppColor.background(context),
child: Column( child: Column(
mainAxisSize: MainAxisSize.min, mainAxisSize: MainAxisSize.min,
crossAxisAlignment: CrossAxisAlignment.start, crossAxisAlignment: CrossAxisAlignment.start,
@ -63,13 +64,13 @@ class CreateRequestTypeBottomSheet extends StatelessWidget {
crossAxisAlignment: CrossAxisAlignment.start, crossAxisAlignment: CrossAxisAlignment.start,
mainAxisAlignment: MainAxisAlignment.spaceBetween, mainAxisAlignment: MainAxisAlignment.spaceBetween,
children: [ children: [
const Icon( Icon(
Icons.add_circle, Icons.add_circle,
color: AppColor.neutral120, color: AppColor.iconColor(context),
size: 32, size: 32,
), ),
//24.height, //24.height,
label.bodyText2(context).custom(color: AppColor.black20), label.bodyText2(context).custom(color:context.isDark?Colors.white: AppColor.black20),
], ],
), ),
), ),

@ -107,11 +107,11 @@ class _LoginPageState extends State<LoginPage> {
AppTextFormField( AppTextFormField(
initialValue: _user.userName ?? "", initialValue: _user.userName ?? "",
controller: userNameController, controller: userNameController,
backgroundColor: AppColor.white20, backgroundColor: AppColor.fieldBgColor(context),
validator: (value) => Validator.hasValue(value!) ? null : context.translation.requiredField, validator: (value) => Validator.hasValue(value!) ? null : context.translation.requiredField,
labelText: context.translation.username, labelText: context.translation.username,
style: TextStyle(fontWeight: FontWeight.w500, fontSize: 12, color: Color(0xff3B3D4A)), style: const TextStyle(fontWeight: FontWeight.w500, fontSize: 12, color: Color(0xff3B3D4A)),
labelStyle: TextStyle(fontWeight: FontWeight.w500, fontSize: 11, color: Color(0xff767676)), labelStyle: const TextStyle(fontWeight: FontWeight.w500, fontSize: 11, color: Color(0xff767676)),
textInputType: TextInputType.text, textInputType: TextInputType.text,
showWithoutDecoration: true, showWithoutDecoration: true,
contentPadding: EdgeInsets.symmetric(horizontal: 16.toScreenWidth, vertical: 12.toScreenHeight), contentPadding: EdgeInsets.symmetric(horizontal: 16.toScreenWidth, vertical: 12.toScreenHeight),
@ -124,7 +124,7 @@ class _LoginPageState extends State<LoginPage> {
initialValue: _user.password ?? "", initialValue: _user.password ?? "",
showWithoutDecoration: true, showWithoutDecoration: true,
labelText: context.translation.password, labelText: context.translation.password,
backgroundColor: AppColor.white20, backgroundColor: AppColor.fieldBgColor(context),
style: TextStyle(fontWeight: FontWeight.w500, fontSize: 12, color: Color(0xff3B3D4A)), style: TextStyle(fontWeight: FontWeight.w500, fontSize: 12, color: Color(0xff3B3D4A)),
labelStyle: TextStyle(fontWeight: FontWeight.w500, fontSize: 11, color: Color(0xff767676)), labelStyle: TextStyle(fontWeight: FontWeight.w500, fontSize: 11, color: Color(0xff767676)),
contentPadding: EdgeInsets.symmetric(horizontal: 16.toScreenWidth, vertical: 12.toScreenHeight), contentPadding: EdgeInsets.symmetric(horizontal: 16.toScreenWidth, vertical: 12.toScreenHeight),

@ -21,7 +21,7 @@ class AcknowledgeWorkDialog extends StatelessWidget {
@override @override
Widget build(BuildContext context) { Widget build(BuildContext context) {
return Dialog( return Dialog(
backgroundColor: Colors.white, backgroundColor: AppColor.background(context),
shape: const RoundedRectangleBorder(), shape: const RoundedRectangleBorder(),
insetPadding: const EdgeInsets.only(left: 21, right: 21), insetPadding: const EdgeInsets.only(left: 21, right: 21),
child: Padding( child: Padding(
@ -30,11 +30,11 @@ class AcknowledgeWorkDialog extends StatelessWidget {
crossAxisAlignment: CrossAxisAlignment.start, crossAxisAlignment: CrossAxisAlignment.start,
mainAxisSize: MainAxisSize.min, mainAxisSize: MainAxisSize.min,
children: [ children: [
const Text( Text(
"Confirm", "Confirm",
style: TextStyle(fontSize: 24, fontWeight: FontWeight.w600, color: Colors.black87, height: 35 / 24, letterSpacing: -0.96), style: TextStyle(fontSize: 24, fontWeight: FontWeight.w600, color: AppColor.headingTextColor(context), height: 35 / 24, letterSpacing: -0.96),
).paddingOnly(top: 16, bottom: 8), ).paddingOnly(top: 16, bottom: 8),
message != null ? message!.heading5(context).custom(color: AppColor.neutral50) : const SizedBox(), message != null ? message!.heading5(context).custom(color: AppColor.textColor(context)) : const SizedBox(),
28.height, 28.height,
Row( Row(
children: [ children: [

@ -144,7 +144,7 @@ class _CreateDeviceTransferRequestState extends State<CreateDeviceTransferReques
21.height, 21.height,
requestTypeWidget(context), requestTypeWidget(context),
12.height, 12.height,
"Destination".bodyText(context).custom(color: AppColor.white936), "Destination".bodyText(context).custom(color:context.isDark?Colors.white: AppColor.white936),
12.height, 12.height,
Row( Row(
mainAxisAlignment: MainAxisAlignment.spaceBetween, mainAxisAlignment: MainAxisAlignment.spaceBetween,
@ -156,7 +156,7 @@ class _CreateDeviceTransferRequestState extends State<CreateDeviceTransferReques
showShadow: false, showShadow: false,
loading: _deviceTransferProvider.isSiteLoading, loading: _deviceTransferProvider.isSiteLoading,
enabled: !isInternal, enabled: !isInternal,
backgroundColor: AppColor.neutral100, backgroundColor: AppColor.fieldBgColor(context),
showAsBottomSheet: true, showAsBottomSheet: true,
onSelect: (value) { onSelect: (value) {
_assetDestination.site = value; _assetDestination.site = value;
@ -173,7 +173,7 @@ class _CreateDeviceTransferRequestState extends State<CreateDeviceTransferReques
initialValue: _assetDestination.building, initialValue: _assetDestination.building,
showShadow: false, showShadow: false,
showAsBottomSheet: true, showAsBottomSheet: true,
backgroundColor: AppColor.neutral100, backgroundColor: AppColor.fieldBgColor(context),
enabled: _assetDestination.site?.buildings?.isNotEmpty ?? false, enabled: _assetDestination.site?.buildings?.isNotEmpty ?? false,
staticData: _assetDestination.site?.buildings ?? [], staticData: _assetDestination.site?.buildings ?? [],
onSelect: (value) { onSelect: (value) {
@ -195,7 +195,7 @@ class _CreateDeviceTransferRequestState extends State<CreateDeviceTransferReques
showShadow: false, showShadow: false,
showAsBottomSheet: true, showAsBottomSheet: true,
initialValue: _assetDestination.floor, initialValue: _assetDestination.floor,
backgroundColor: AppColor.neutral100, backgroundColor: AppColor.fieldBgColor(context),
enabled: _assetDestination.building?.floors?.isNotEmpty ?? false, enabled: _assetDestination.building?.floors?.isNotEmpty ?? false,
staticData: _assetDestination.building?.floors ?? [], staticData: _assetDestination.building?.floors ?? [],
onSelect: (value) { onSelect: (value) {
@ -211,7 +211,7 @@ class _CreateDeviceTransferRequestState extends State<CreateDeviceTransferReques
showShadow: false, showShadow: false,
showAsBottomSheet: true, showAsBottomSheet: true,
initialValue: _assetDestination.department, initialValue: _assetDestination.department,
backgroundColor: AppColor.neutral100, backgroundColor: AppColor.fieldBgColor(context),
enabled: _assetDestination.floor?.departments?.isNotEmpty ?? false, enabled: _assetDestination.floor?.departments?.isNotEmpty ?? false,
staticData: _assetDestination.floor?.departments ?? [], staticData: _assetDestination.floor?.departments ?? [],
onSelect: (value) { onSelect: (value) {
@ -224,9 +224,9 @@ class _CreateDeviceTransferRequestState extends State<CreateDeviceTransferReques
), ),
8.height, 8.height,
AppTextFormField( AppTextFormField(
backgroundColor: AppColor.neutral100, backgroundColor: AppColor.fieldBgColor(context),
labelText: context.translation.callComments, labelText: context.translation.callComments,
labelStyle: AppTextStyles.textFieldLabelStyle, labelStyle: AppTextStyles.textFieldLabelStyle.copyWith(color: AppColor.textColor(context)),
alignLabelWithHint: true, alignLabelWithHint: true,
textInputType: TextInputType.multiline, textInputType: TextInputType.multiline,
showShadow: false, showShadow: false,
@ -248,6 +248,7 @@ class _CreateDeviceTransferRequestState extends State<CreateDeviceTransferReques
).toShadowContainer(context).paddingOnly(top: 20, start: 16, end: 16), ).toShadowContainer(context).paddingOnly(top: 20, start: 16, end: 16),
).expanded, ).expanded,
FooterActionButton.footerContainer( FooterActionButton.footerContainer(
context: context,
child: AppFilledButton(buttonColor: AppColor.primary10, label: context.translation.submitRequest, maxWidth: true, onPressed: _onSubmit), child: AppFilledButton(buttonColor: AppColor.primary10, label: context.translation.submitRequest, maxWidth: true, onPressed: _onSubmit),
), ),
], ],
@ -269,7 +270,7 @@ class _CreateDeviceTransferRequestState extends State<CreateDeviceTransferReques
crossAxisAlignment: CrossAxisAlignment.start, crossAxisAlignment: CrossAxisAlignment.start,
mainAxisSize: MainAxisSize.min, mainAxisSize: MainAxisSize.min,
children: [ children: [
context.translation.requestType.bodyText(context).custom(color: AppColor.white936), context.translation.requestType.bodyText(context).custom(color:context.isDark?Colors.white: AppColor.white936),
8.height, 8.height,
Wrap( Wrap(
runSpacing: 8, runSpacing: 8,
@ -306,7 +307,7 @@ class _CreateDeviceTransferRequestState extends State<CreateDeviceTransferReques
], ],
) )
], ],
).toShimmer(isShow: snapshot.loading), ).toShimmer(isShow: snapshot.loading,context: context),
], ],
); );
}); });

@ -254,7 +254,7 @@ class _UpdateDeviceTransferState extends State<UpdateDeviceTransfer> {
labelText: context.translation.technicalComment, labelText: context.translation.technicalComment,
labelStyle: AppTextStyles.tinyFont.copyWith(color: AppColor.neutral20), labelStyle: AppTextStyles.tinyFont.copyWith(color: AppColor.neutral20),
textInputType: TextInputType.multiline, textInputType: TextInputType.multiline,
backgroundColor: AppColor.neutral100, backgroundColor: AppColor.fieldBgColor(context),
showShadow: false, showShadow: false,
alignLabelWithHint: true, alignLabelWithHint: true,
onSaved: (value) { onSaved: (value) {
@ -288,13 +288,14 @@ class _UpdateDeviceTransferState extends State<UpdateDeviceTransfer> {
), ),
).expanded, ).expanded,
FooterActionButton.footerContainer( FooterActionButton.footerContainer(
context: context,
child: Row( child: Row(
mainAxisAlignment: MainAxisAlignment.spaceAround, mainAxisAlignment: MainAxisAlignment.spaceAround,
children: [ children: [
AppFilledButton( AppFilledButton(
label: context.translation.save, label: context.translation.save,
buttonColor: AppColor.white60, buttonColor: context.isDark?AppColor.neutral70:AppColor.white60,
textColor: AppColor.black10, textColor: context.isDark?AppColor.white10:AppColor.black10,
onPressed: () => _update(status: 0), onPressed: () => _update(status: 0),
).expanded, ).expanded,
12.width, 12.width,
@ -344,7 +345,7 @@ class _UpdateDeviceTransferState extends State<UpdateDeviceTransfer> {
width: double.infinity, width: double.infinity,
enabled: isTimerEnable, enabled: isTimerEnable,
decoration: BoxDecoration( decoration: BoxDecoration(
color: AppColor.neutral100, color: AppColor.fieldBgColor(context),
borderRadius: BorderRadius.circular(10), borderRadius: BorderRadius.circular(10),
), ),
pickerTimer: _formModel.deviceTimePicker, pickerTimer: _formModel.deviceTimePicker,
@ -371,7 +372,7 @@ class _UpdateDeviceTransferState extends State<UpdateDeviceTransfer> {
8.width, 8.width,
Text( Text(
ServiceRequestUtils.formatTimerDuration(totalWorkingHours.round()), ServiceRequestUtils.formatTimerDuration(totalWorkingHours.round()),
style: AppTextStyles.bodyText.copyWith(color: AppColor.neutral50, fontWeight: FontWeight.w600), style: AppTextStyles.bodyText.copyWith(color: context.isDark?AppColor.white10: AppColor.neutral50, fontWeight: FontWeight.w600),
), ),
], ],
), ),
@ -450,7 +451,7 @@ class _DeviceTransferAssistantEmployeeListState extends State<DeviceTransferAssi
return AppFilledButton( return AppFilledButton(
label: "Add Assistant Employee".addTranslation, label: "Add Assistant Employee".addTranslation,
maxWidth: true, maxWidth: true,
textColor: AppColor.black10, textColor: AppColor.textColor(context),
buttonColor: context.isDark ? AppColor.neutral60 : AppColor.white10, buttonColor: context.isDark ? AppColor.neutral60 : AppColor.white10,
icon: Icon(Icons.add_circle, color: AppColor.blueStatus(context)), icon: Icon(Icons.add_circle, color: AppColor.blueStatus(context)),
showIcon: true, showIcon: true,
@ -510,7 +511,7 @@ class EmployeeCard extends StatelessWidget {
Row( Row(
mainAxisAlignment: MainAxisAlignment.spaceBetween, mainAxisAlignment: MainAxisAlignment.spaceBetween,
children: [ children: [
context.translation.assistantEmployee.bodyText(context).custom(color: AppColor.black20), context.translation.assistantEmployee.bodyText(context).custom(color: AppColor.textColor(context)),
Container( Container(
height: 32, height: 32,
width: 32, width: 32,
@ -525,7 +526,7 @@ class EmployeeCard extends StatelessWidget {
children: [ children: [
ServiceReportAssistantEmployeeMenu( ServiceReportAssistantEmployeeMenu(
title: context.translation.select, title: context.translation.select,
backgroundColor: AppColor.neutral100, backgroundColor: AppColor.fieldBgColor(context),
assetId:assetId, assetId:assetId,
initialValue: selectedEmployee, initialValue: selectedEmployee,
onSelect: (employee) { onSelect: (employee) {
@ -549,7 +550,7 @@ class EmployeeCard extends StatelessWidget {
ADatePicker( ADatePicker(
label: context.translation.startTime, label: context.translation.startTime,
hideShadow: true, hideShadow: true,
backgroundColor: AppColor.neutral100, backgroundColor: AppColor.fieldBgColor(context),
date: model.startDate, date: model.startDate,
formatDateWithTime: true, formatDateWithTime: true,
from: DateTime.tryParse(createdDate ?? ''), from: DateTime.tryParse(createdDate ?? ''),
@ -594,7 +595,7 @@ class EmployeeCard extends StatelessWidget {
ADatePicker( ADatePicker(
label: context.translation.endTime, label: context.translation.endTime,
hideShadow: true, hideShadow: true,
backgroundColor: AppColor.neutral100, backgroundColor: AppColor.fieldBgColor(context),
date: model.endDate, date: model.endDate,
formatDateWithTime: true, formatDateWithTime: true,
from: DateTime.tryParse(createdDate ?? ''), from: DateTime.tryParse(createdDate ?? ''),
@ -640,7 +641,7 @@ class EmployeeCard extends StatelessWidget {
8.height, 8.height,
AppTextFormField( AppTextFormField(
labelText: context.translation.workingHours, labelText: context.translation.workingHours,
backgroundColor: AppColor.neutral80, backgroundColor: AppColor.fieldBgColor(context),
controller: workingHoursController, controller: workingHoursController,
suffixIcon: "clock".toSvgAsset(width: 20, color: context.isDark ? AppColor.neutral10 : null).paddingOnly(end: 16), suffixIcon: "clock".toSvgAsset(width: 20, color: context.isDark ? AppColor.neutral10 : null).paddingOnly(end: 16),
textAlign: TextAlign.center, textAlign: TextAlign.center,
@ -653,9 +654,9 @@ class EmployeeCard extends StatelessWidget {
AppTextFormField( AppTextFormField(
initialValue: model.techComment, initialValue: model.techComment,
labelText: context.translation.technicalComment, labelText: context.translation.technicalComment,
backgroundColor: AppColor.neutral100, backgroundColor:AppColor.fieldBgColor(context),
showShadow: false, showShadow: false,
labelStyle: AppTextStyles.textFieldLabelStyle, labelStyle: AppTextStyles.textFieldLabelStyle.copyWith(color: context.isDark?AppColor.white10:AppColor.black10),
alignLabelWithHint: true, alignLabelWithHint: true,
textInputType: TextInputType.multiline, textInputType: TextInputType.multiline,
onChange: (value) => onUpdate((model) => model.techComment = value), onChange: (value) => onUpdate((model) => model.techComment = value),

@ -232,7 +232,7 @@ class _UpdateGasRefillRequestState extends State<UpdateGasRefillRequest> {
SingleItemDropDownMenu<Lookup, NullableLoadingProvider>( SingleItemDropDownMenu<Lookup, NullableLoadingProvider>(
context: context, context: context,
title: context.translation.quantity, title: context.translation.quantity,
backgroundColor: AppColor.neutral100, backgroundColor: AppColor.fieldBgColor(context),
showShadow: false, showShadow: false,
showAsBottomSheet: true, showAsBottomSheet: true,
initialValue: _deliveredQuantity, initialValue: _deliveredQuantity,
@ -248,8 +248,10 @@ class _UpdateGasRefillRequestState extends State<UpdateGasRefillRequest> {
AppTextFormField( AppTextFormField(
labelText: context.translation.technicalComment, labelText: context.translation.technicalComment,
textInputType: TextInputType.multiline, textInputType: TextInputType.multiline,
hintStyle: TextStyle(color: context.isDark?AppColor.white10:AppColor.black10),
labelStyle: TextStyle(color: context.isDark?AppColor.white10:AppColor.black10),
alignLabelWithHint: true, alignLabelWithHint: true,
backgroundColor: AppColor.neutral100, backgroundColor: AppColor.fieldBgColor(context),
showShadow: false, showShadow: false,
controller: _commentController, controller: _commentController,
onChange: (value) { onChange: (value) {
@ -270,13 +272,14 @@ class _UpdateGasRefillRequestState extends State<UpdateGasRefillRequest> {
).toShadowContainer(context), ).toShadowContainer(context),
).expanded, ).expanded,
FooterActionButton.footerContainer( FooterActionButton.footerContainer(
context: context,
child: Row( child: Row(
mainAxisAlignment: MainAxisAlignment.spaceAround, mainAxisAlignment: MainAxisAlignment.spaceAround,
children: [ children: [
AppFilledButton( AppFilledButton(
label: context.translation.save, label: context.translation.save,
buttonColor: AppColor.white60, buttonColor: context.isDark?AppColor.neutral70:AppColor.white60,
textColor: AppColor.black10, textColor: context.isDark?AppColor.white10:AppColor.black10,
onPressed: () => _onSubmit(context, 0), onPressed: () => _onSubmit(context, 0),
).expanded, ).expanded,
12.width, 12.width,
@ -313,7 +316,8 @@ class _UpdateGasRefillRequestState extends State<UpdateGasRefillRequest> {
}, },
width: double.infinity, width: double.infinity,
decoration: BoxDecoration( decoration: BoxDecoration(
color: AppColor.neutral100, color: AppColor.fieldBgColor(context),
// color: AppColor.neutral100,
borderRadius: BorderRadius.circular(10), borderRadius: BorderRadius.circular(10),
), ),
timerProgress: (isRunning) {}, timerProgress: (isRunning) {},
@ -332,7 +336,7 @@ class _UpdateGasRefillRequestState extends State<UpdateGasRefillRequest> {
8.width, 8.width,
Text( Text(
ServiceRequestUtils.formatTimerDuration(totalWorkingHours.round()), ServiceRequestUtils.formatTimerDuration(totalWorkingHours.round()),
style: AppTextStyles.bodyText.copyWith(color: AppColor.neutral50, fontWeight: FontWeight.w600), style: AppTextStyles.bodyText.copyWith(color:context.isDark?AppColor.white10: AppColor.neutral50, fontWeight: FontWeight.w600),
), ),
], ],
), ),

@ -190,7 +190,7 @@ class CreateServiceRequestPageState extends State<CreateServiceRequestPage> {
_serviceRequest.priority = snapshot.items.firstWhere((element) => element.value == 0, orElse: null); _serviceRequest.priority = snapshot.items.firstWhere((element) => element.value == 0, orElse: null);
} }
setState(() {}); setState(() {});
}).toShimmer(isShow: snapshot.loading), }).toShimmer(isShow: snapshot.loading,context: context),
); );
}), }),
], ],
@ -239,7 +239,7 @@ class CreateServiceRequestPageState extends State<CreateServiceRequestPage> {
], ],
) )
], ],
).toShimmer(isShow: snapshot.loading), ).toShimmer(isShow: snapshot.loading,context: context),
], ],
); );
}), }),

@ -94,6 +94,8 @@ class _SelectionBottomSheetState<T> extends State<SelectionBottomSheet<T>> {
decoration: InputDecoration( decoration: InputDecoration(
hintText: 'Search by name', hintText: 'Search by name',
labelText: 'Search', labelText: 'Search',
filled: true,
focusColor: AppColor.fieldBgColor(context),
hintStyle: const TextStyle(fontSize: 14), hintStyle: const TextStyle(fontSize: 14),
focusedBorder: OutlineInputBorder( focusedBorder: OutlineInputBorder(
borderSide: BorderSide(color: AppColor.blueStatus(context), width: 2.0), borderSide: BorderSide(color: AppColor.blueStatus(context), width: 2.0),
@ -119,6 +121,7 @@ class _SelectionBottomSheetState<T> extends State<SelectionBottomSheet<T>> {
contentPadding: EdgeInsets.zero, contentPadding: EdgeInsets.zero,
groupValue: _selectedValue, groupValue: _selectedValue,
activeColor: Colors.black87, activeColor: Colors.black87,
onChanged: (value) { onChanged: (value) {
_selectedValue = value; _selectedValue = value;
searchFocusNode.unfocus(); searchFocusNode.unfocus();

@ -164,7 +164,7 @@ class AssetPicker extends StatelessWidget {
color: Colors.black87, color: Colors.black87,
decoration: TextDecoration.none, decoration: TextDecoration.none,
), ),
).toShimmer(isShow: showLoading).expanded, ).toShimmer(isShow: showLoading,context: context).expanded,
const Icon( const Icon(
Icons.info, Icons.info,
color: Color(0xff7D859A), color: Color(0xff7D859A),
@ -195,10 +195,10 @@ class AssetPicker extends StatelessWidget {
], ],
), ),
8.height, 8.height,
"${context.translation.assetNo}: ${device!.assetNumber}".bodyText2(context).toShimmer(isShow: showLoading), "${context.translation.assetNo}: ${device!.assetNumber}".bodyText2(context).toShimmer(isShow: showLoading,context: context),
2.height, 2.height,
// "${context.translation.manufacture}: ${device.modelDefinition?.manufacturerName}".bodyText(context), // "${context.translation.manufacture}: ${device.modelDefinition?.manufacturerName}".bodyText(context),
"${context.translation.model}: ${device!.modelDefinition?.modelName}".bodyText2(context).toShimmer(isShow: showLoading), "${context.translation.model}: ${device!.modelDefinition?.modelName}".bodyText2(context).toShimmer(isShow: showLoading,context: context),
// "${context.translation.serialNumber}: ${device.assetNumber}".bodyText(context), // "${context.translation.serialNumber}: ${device.assetNumber}".bodyText(context),
// const Divider().defaultStyle(context), // const Divider().defaultStyle(context),
// "${context.translation.department}: ${device.department?.departmentName}".bodyText(context), // "${context.translation.department}: ${device.department?.departmentName}".bodyText(context),

@ -28,14 +28,14 @@ class NotificationItem extends StatelessWidget {
label: notification.priorityName, label: notification.priorityName,
textColor: AppColor.getRequestStatusTextColorByName(context, notification.priorityName!), textColor: AppColor.getRequestStatusTextColorByName(context, notification.priorityName!),
backgroundColor: AppColor.getRequestStatusColorByName(context, notification.priorityName!), backgroundColor: AppColor.getRequestStatusColorByName(context, notification.priorityName!),
).toShimmer(isShow: isLoading), ).toShimmer(isShow: isLoading,context: context),
8.width, 8.width,
if ((notification.statusName ?? "").isNotEmpty && notification.sourceName != "Asset Transfer") if ((notification.statusName ?? "").isNotEmpty && notification.sourceName != "Asset Transfer")
StatusLabel( StatusLabel(
label: notification.statusName ?? "", label: notification.statusName ?? "",
textColor: AppColor.getRequestStatusTextColorByName(context, notification.statusName ?? ""), textColor: AppColor.getRequestStatusTextColorByName(context, notification.statusName ?? ""),
backgroundColor: AppColor.getRequestStatusColorByName(context, notification.statusName ?? ""), backgroundColor: AppColor.getRequestStatusColorByName(context, notification.statusName ?? ""),
).toShimmer(isShow: isLoading), ).toShimmer(isShow: isLoading,context: context),
], ],
), ),
8.height, 8.height,
@ -47,7 +47,7 @@ class NotificationItem extends StatelessWidget {
style: AppTextStyles.heading6.copyWith( style: AppTextStyles.heading6.copyWith(
color: context.isDark ? AppColor.neutral30 : AppColor.neutral50, color: context.isDark ? AppColor.neutral30 : AppColor.neutral50,
), ),
).toShimmer(isShow: isLoading).expanded, ).toShimmer(isShow: isLoading,context: context).expanded,
8.width, 8.width,
Text( Text(
notification.createdOn?.toServiceRequestCardFormat ?? "", notification.createdOn?.toServiceRequestCardFormat ?? "",
@ -55,7 +55,7 @@ class NotificationItem extends StatelessWidget {
style: AppTextStyles.tinyFont.copyWith( style: AppTextStyles.tinyFont.copyWith(
color: context.isDark ? AppColor.neutral20 : AppColor.neutral50, color: context.isDark ? AppColor.neutral20 : AppColor.neutral50,
), ),
).toShimmer(isShow: isLoading), ).toShimmer(isShow: isLoading,context: context),
], ],
), ),
Text( Text(
@ -63,7 +63,7 @@ class NotificationItem extends StatelessWidget {
style: AppTextStyles.bodyText2.copyWith( style: AppTextStyles.bodyText2.copyWith(
color: context.isDark ? AppColor.neutral10 : const Color(0xFF757575), color: context.isDark ? AppColor.neutral10 : const Color(0xFF757575),
), ),
).toShimmer(isShow: isLoading), ).toShimmer(isShow: isLoading,context: context),
], ],
).onPress(() { ).onPress(() {
onPressed(notification); onPressed(notification);

@ -88,11 +88,11 @@ class _AutoCompletePartsFieldState extends State<AutoCompletePartsField> {
constraints: const BoxConstraints(), constraints: const BoxConstraints(),
suffixIconConstraints: const BoxConstraints(minWidth: 0), suffixIconConstraints: const BoxConstraints(minWidth: 0),
filled: true, filled: true,
fillColor: (context.isDark ? AppColor.neutral50 : AppColor.neutral100), fillColor: AppColor.fieldBgColor(context),
errorStyle: AppTextStyle.tiny.copyWith(color: context.isDark ? AppColor.red50 : AppColor.red60), errorStyle: AppTextStyle.tiny.copyWith(color: context.isDark ? AppColor.red50 : AppColor.red60),
floatingLabelStyle: AppTextStyle.body1.copyWith(fontWeight: FontWeight.w500, color: context.isDark ? null : AppColor.neutral20), floatingLabelStyle: AppTextStyle.body1.copyWith(fontWeight: FontWeight.w500, color: context.isDark ? null : AppColor.neutral20),
labelText: widget.byName ? context.translation.partName : context.translation.partNumber, labelText: widget.byName ? context.translation.partName : context.translation.partNumber,
labelStyle: AppTextStyles.tinyFont.copyWith(color: AppColor.neutral120), labelStyle: AppTextStyles.tinyFont.copyWith(color: AppColor.textColor(context)),
), ),
textInputAction: TextInputAction.search, textInputAction: TextInputAction.search,
onChanged: (text) { onChanged: (text) {

@ -64,7 +64,7 @@ class _CalibrationToolAssetPickerState extends State<CalibrationToolAssetPicker>
PickAsset( PickAsset(
showAssetInfo: false, showAssetInfo: false,
forPPM: true, forPPM: true,
cardColor: AppColor.neutral100, cardColor: AppColor.fieldBgColor(context),
device: widget.initialValue == null device: widget.initialValue == null
? null ? null
: Asset( : Asset(

@ -162,7 +162,7 @@ class _AppTimerState extends State<AppTimer> {
ADatePicker( ADatePicker(
label: context.translation.startTime, label: context.translation.startTime,
hideShadow: true, hideShadow: true,
backgroundColor: AppColor.neutral100, backgroundColor: context.isDark ? AppColor.neutral20 : AppColor.neutral90,
date: _pickerStartAt, date: _pickerStartAt,
from: widget.pickerFromDate, from: widget.pickerFromDate,
enable: widget.enabled ? _tempPickerTimer == null : false, enable: widget.enabled ? _tempPickerTimer == null : false,
@ -195,7 +195,7 @@ class _AppTimerState extends State<AppTimer> {
ADatePicker( ADatePicker(
label: context.translation.endTime, label: context.translation.endTime,
hideShadow: true, hideShadow: true,
backgroundColor: AppColor.neutral100, backgroundColor: context.isDark ? AppColor.neutral20 : AppColor.neutral90,
enable: widget.enabled ? _pickerStartAt != null : false, enable: widget.enabled ? _pickerStartAt != null : false,
from: _pickerStartAt, from: _pickerStartAt,
date: _pickerEndAt, date: _pickerEndAt,
@ -256,8 +256,9 @@ class _AppTimerState extends State<AppTimer> {
color: context.isDark && !widget.enabled color: context.isDark && !widget.enabled
? AppColor.neutral60 ? AppColor.neutral60
: !widget.enabled : !widget.enabled
// backgroundColor: context.isDark ? AppColor.neutral20 : AppColor.neutral90,
? AppColor.neutral40 ? AppColor.neutral40
: AppColor.background(context), : AppColor.fieldBgColor(context),
borderRadius: BorderRadius.circular(10), borderRadius: BorderRadius.circular(10),
boxShadow: [BoxShadow(color: Colors.black.withOpacity(0.05), blurRadius: 10)], boxShadow: [BoxShadow(color: Colors.black.withOpacity(0.05), blurRadius: 10)],
), ),
@ -355,7 +356,7 @@ class _AppTimerState extends State<AppTimer> {
// ADatePicker( // ADatePicker(
// label: context.translation.startTime, // label: context.translation.startTime,
// hideShadow: true, // hideShadow: true,
// backgroundColor: AppColor.neutral100, // backgroundColor: context.isDark ? AppColor.neutral20 : AppColor.neutral90,
// date: _pickerStartAt, // date: _pickerStartAt,
// enable: _tempPickerTimer == null, // enable: _tempPickerTimer == null,
// formatDateWithTime: true, // formatDateWithTime: true,
@ -375,7 +376,7 @@ class _AppTimerState extends State<AppTimer> {
// ADatePicker( // ADatePicker(
// label: context.translation.endTime, // label: context.translation.endTime,
// hideShadow: true, // hideShadow: true,
// backgroundColor: AppColor.neutral100, // backgroundColor: context.isDark ? AppColor.neutral20 : AppColor.neutral90,
// enable: _pickerStartAt != null, // enable: _pickerStartAt != null,
// date: _pickerEndAt, // date: _pickerEndAt,
// formatDateWithTime: true, // formatDateWithTime: true,

Loading…
Cancel
Save