Added SafeArea to all page
This commit is contained in:
@@ -39,88 +39,90 @@ class _YourTendersDesktopPageState extends State<YourTendersDesktopPage>
|
||||
Widget build(BuildContext context) {
|
||||
return Scaffold(
|
||||
backgroundColor: AppColors.backgroundColor,
|
||||
body: Column(
|
||||
children: [
|
||||
const DesktopNavigationWidget(currentIndex: 1), // Tenders index
|
||||
Expanded(
|
||||
child: SizedBox(
|
||||
width: 740,
|
||||
child: Column(
|
||||
children: [
|
||||
SizedBox(height: 64.0.h()),
|
||||
const TabletDesktopAppbar(
|
||||
title: YourTendersStrings.yourTenders,
|
||||
),
|
||||
SizedBox(height: 20.0.h()),
|
||||
const FilterButton(platformType: PlatformType.tabletDesktop),
|
||||
|
||||
Expanded(
|
||||
child: Consumer<YourTendersViewModel>(
|
||||
builder: (context, viewModel, child) {
|
||||
if (viewModel.isLoading &&
|
||||
(viewModel.data == null &&
|
||||
viewModel.likedTendersData == null)) {
|
||||
return const Center(
|
||||
child: CircularProgressIndicator(
|
||||
color: AppColors.secondary50,
|
||||
),
|
||||
);
|
||||
}
|
||||
|
||||
if (viewModel.errorMessage != null) {
|
||||
return Center(child: Text(viewModel.errorMessage!));
|
||||
}
|
||||
|
||||
Widget content;
|
||||
|
||||
if (viewModel.selectedStatus ==
|
||||
YourTendersStrings.likeTenders &&
|
||||
viewModel.likedTendersData != null) {
|
||||
content = LikedDislikedTendersList(
|
||||
data: viewModel.likedTendersData!,
|
||||
status: TenderFeedback.liked.value,
|
||||
isDesktop: true,
|
||||
isMobile: false,
|
||||
);
|
||||
} else if (viewModel.selectedStatus ==
|
||||
YourTendersStrings.dislikeTenders &&
|
||||
viewModel.likedTendersData != null) {
|
||||
content = LikedDislikedTendersList(
|
||||
data: viewModel.likedTendersData!,
|
||||
status: TenderFeedback.disliked.value,
|
||||
isDesktop: true,
|
||||
isMobile: false,
|
||||
);
|
||||
} else if (viewModel.data != null) {
|
||||
content = TendersSubmitted(
|
||||
approvedTenders: viewModel.data!,
|
||||
isDesktop: true,
|
||||
isMobile: false,
|
||||
);
|
||||
} else {
|
||||
content = const Center(
|
||||
child: Text(YourTendersStrings.noTenders),
|
||||
);
|
||||
}
|
||||
|
||||
return Column(
|
||||
children: [
|
||||
Expanded(child: content),
|
||||
SizedBox(height: 10.0.h()),
|
||||
|
||||
_listPagesControll(context, viewModel),
|
||||
|
||||
SizedBox(height: 30.0.h()),
|
||||
],
|
||||
);
|
||||
},
|
||||
body: SafeArea(
|
||||
child: Column(
|
||||
children: [
|
||||
const DesktopNavigationWidget(currentIndex: 1), // Tenders index
|
||||
Expanded(
|
||||
child: SizedBox(
|
||||
width: 740,
|
||||
child: Column(
|
||||
children: [
|
||||
SizedBox(height: 64.0.h()),
|
||||
const TabletDesktopAppbar(
|
||||
title: YourTendersStrings.yourTenders,
|
||||
),
|
||||
),
|
||||
],
|
||||
SizedBox(height: 20.0.h()),
|
||||
const FilterButton(platformType: PlatformType.tabletDesktop),
|
||||
|
||||
Expanded(
|
||||
child: Consumer<YourTendersViewModel>(
|
||||
builder: (context, viewModel, child) {
|
||||
if (viewModel.isLoading &&
|
||||
(viewModel.data == null &&
|
||||
viewModel.likedTendersData == null)) {
|
||||
return const Center(
|
||||
child: CircularProgressIndicator(
|
||||
color: AppColors.secondary50,
|
||||
),
|
||||
);
|
||||
}
|
||||
|
||||
if (viewModel.errorMessage != null) {
|
||||
return Center(child: Text(viewModel.errorMessage!));
|
||||
}
|
||||
|
||||
Widget content;
|
||||
|
||||
if (viewModel.selectedStatus ==
|
||||
YourTendersStrings.likeTenders &&
|
||||
viewModel.likedTendersData != null) {
|
||||
content = LikedDislikedTendersList(
|
||||
data: viewModel.likedTendersData!,
|
||||
status: TenderFeedback.liked.value,
|
||||
isDesktop: true,
|
||||
isMobile: false,
|
||||
);
|
||||
} else if (viewModel.selectedStatus ==
|
||||
YourTendersStrings.dislikeTenders &&
|
||||
viewModel.likedTendersData != null) {
|
||||
content = LikedDislikedTendersList(
|
||||
data: viewModel.likedTendersData!,
|
||||
status: TenderFeedback.disliked.value,
|
||||
isDesktop: true,
|
||||
isMobile: false,
|
||||
);
|
||||
} else if (viewModel.data != null) {
|
||||
content = TendersSubmitted(
|
||||
approvedTenders: viewModel.data!,
|
||||
isDesktop: true,
|
||||
isMobile: false,
|
||||
);
|
||||
} else {
|
||||
content = const Center(
|
||||
child: Text(YourTendersStrings.noTenders),
|
||||
);
|
||||
}
|
||||
|
||||
return Column(
|
||||
children: [
|
||||
Expanded(child: content),
|
||||
SizedBox(height: 10.0.h()),
|
||||
|
||||
_listPagesControll(context, viewModel),
|
||||
|
||||
SizedBox(height: 30.0.h()),
|
||||
],
|
||||
);
|
||||
},
|
||||
),
|
||||
),
|
||||
],
|
||||
),
|
||||
),
|
||||
),
|
||||
),
|
||||
],
|
||||
],
|
||||
),
|
||||
),
|
||||
);
|
||||
}
|
||||
|
||||
@@ -38,71 +38,73 @@ class _YourTendersMobilePageState extends State<YourTendersMobilePage> {
|
||||
return Scaffold(
|
||||
backgroundColor: AppColors.backgroundColor,
|
||||
appBar: appBar(context: context, title: YourTendersStrings.yourTenders),
|
||||
body: Column(
|
||||
children: [
|
||||
const FilterButton(platformType: PlatformType.mobile),
|
||||
Expanded(
|
||||
child: Consumer<YourTendersViewModel>(
|
||||
builder: (context, viewModel, child) {
|
||||
if (viewModel.isLoading &&
|
||||
(viewModel.data?.data?.tenders ?? []).isEmpty &&
|
||||
(viewModel.likedTendersData?.data?.feedback ?? [])
|
||||
.isEmpty) {
|
||||
return const Center(
|
||||
child: CircularProgressIndicator(
|
||||
color: AppColors.secondary50,
|
||||
),
|
||||
);
|
||||
}
|
||||
|
||||
if (viewModel.errorMessage != null) {
|
||||
return Center(child: Text(viewModel.errorMessage!));
|
||||
}
|
||||
|
||||
return Column(
|
||||
children: [
|
||||
if (viewModel.selectedStatus ==
|
||||
YourTendersStrings.likeTenders &&
|
||||
viewModel.likedTendersData != null)
|
||||
Expanded(
|
||||
child: LikedDislikedTendersList(
|
||||
data: viewModel.likedTendersData!,
|
||||
status: TenderFeedback.liked.value,
|
||||
isDesktop: false,
|
||||
isMobile: true,
|
||||
),
|
||||
)
|
||||
else if (viewModel.selectedStatus ==
|
||||
YourTendersStrings.dislikeTenders &&
|
||||
viewModel.likedTendersData != null)
|
||||
Expanded(
|
||||
child: LikedDislikedTendersList(
|
||||
data: viewModel.likedTendersData!,
|
||||
status: TenderFeedback.disliked.value,
|
||||
isDesktop: false,
|
||||
isMobile: true,
|
||||
),
|
||||
)
|
||||
else if (viewModel.data != null)
|
||||
Expanded(
|
||||
child: TendersSubmitted(
|
||||
approvedTenders: viewModel.data!,
|
||||
isDesktop: false,
|
||||
isMobile: true,
|
||||
),
|
||||
)
|
||||
else
|
||||
const Expanded(
|
||||
child: Center(
|
||||
child: Text(YourTendersStrings.noTenders),
|
||||
),
|
||||
body: SafeArea(
|
||||
child: Column(
|
||||
children: [
|
||||
const FilterButton(platformType: PlatformType.mobile),
|
||||
Expanded(
|
||||
child: Consumer<YourTendersViewModel>(
|
||||
builder: (context, viewModel, child) {
|
||||
if (viewModel.isLoading &&
|
||||
(viewModel.data?.data?.tenders ?? []).isEmpty &&
|
||||
(viewModel.likedTendersData?.data?.feedback ?? [])
|
||||
.isEmpty) {
|
||||
return const Center(
|
||||
child: CircularProgressIndicator(
|
||||
color: AppColors.secondary50,
|
||||
),
|
||||
],
|
||||
);
|
||||
},
|
||||
);
|
||||
}
|
||||
|
||||
if (viewModel.errorMessage != null) {
|
||||
return Center(child: Text(viewModel.errorMessage!));
|
||||
}
|
||||
|
||||
return Column(
|
||||
children: [
|
||||
if (viewModel.selectedStatus ==
|
||||
YourTendersStrings.likeTenders &&
|
||||
viewModel.likedTendersData != null)
|
||||
Expanded(
|
||||
child: LikedDislikedTendersList(
|
||||
data: viewModel.likedTendersData!,
|
||||
status: TenderFeedback.liked.value,
|
||||
isDesktop: false,
|
||||
isMobile: true,
|
||||
),
|
||||
)
|
||||
else if (viewModel.selectedStatus ==
|
||||
YourTendersStrings.dislikeTenders &&
|
||||
viewModel.likedTendersData != null)
|
||||
Expanded(
|
||||
child: LikedDislikedTendersList(
|
||||
data: viewModel.likedTendersData!,
|
||||
status: TenderFeedback.disliked.value,
|
||||
isDesktop: false,
|
||||
isMobile: true,
|
||||
),
|
||||
)
|
||||
else if (viewModel.data != null)
|
||||
Expanded(
|
||||
child: TendersSubmitted(
|
||||
approvedTenders: viewModel.data!,
|
||||
isDesktop: false,
|
||||
isMobile: true,
|
||||
),
|
||||
)
|
||||
else
|
||||
const Expanded(
|
||||
child: Center(
|
||||
child: Text(YourTendersStrings.noTenders),
|
||||
),
|
||||
),
|
||||
],
|
||||
);
|
||||
},
|
||||
),
|
||||
),
|
||||
),
|
||||
],
|
||||
],
|
||||
),
|
||||
),
|
||||
);
|
||||
}
|
||||
|
||||
@@ -44,84 +44,86 @@ class _YourTendersTabletPageState extends State<YourTendersTabletPage>
|
||||
backgroundColor: AppColors.backgroundColor,
|
||||
appBar: tabletAppBar(title: YourTendersStrings.yourTenders, key: key),
|
||||
drawer: const TabletNavigationWidget(currentIndex: 1),
|
||||
body: Center(
|
||||
child: SizedBox(
|
||||
width: 720,
|
||||
child: Column(
|
||||
children: [
|
||||
const SizedBox(height: 64.0),
|
||||
Padding(
|
||||
padding: EdgeInsets.symmetric(horizontal: 8.0.w()),
|
||||
child: const TabletDesktopAppbar(
|
||||
title: YourTendersStrings.yourTenders,
|
||||
body: SafeArea(
|
||||
child: Center(
|
||||
child: SizedBox(
|
||||
width: 720,
|
||||
child: Column(
|
||||
children: [
|
||||
const SizedBox(height: 64.0),
|
||||
Padding(
|
||||
padding: EdgeInsets.symmetric(horizontal: 8.0.w()),
|
||||
child: const TabletDesktopAppbar(
|
||||
title: YourTendersStrings.yourTenders,
|
||||
),
|
||||
),
|
||||
),
|
||||
SizedBox(height: 24.0.h()),
|
||||
const FilterButton(platformType: PlatformType.tabletDesktop),
|
||||
|
||||
Expanded(
|
||||
child: Consumer<YourTendersViewModel>(
|
||||
builder: (context, viewModel, child) {
|
||||
if (viewModel.isLoading &&
|
||||
(viewModel.data == null &&
|
||||
viewModel.likedTendersData == null)) {
|
||||
return const Center(
|
||||
child: CircularProgressIndicator(
|
||||
color: AppColors.secondary50,
|
||||
),
|
||||
SizedBox(height: 24.0.h()),
|
||||
const FilterButton(platformType: PlatformType.tabletDesktop),
|
||||
|
||||
Expanded(
|
||||
child: Consumer<YourTendersViewModel>(
|
||||
builder: (context, viewModel, child) {
|
||||
if (viewModel.isLoading &&
|
||||
(viewModel.data == null &&
|
||||
viewModel.likedTendersData == null)) {
|
||||
return const Center(
|
||||
child: CircularProgressIndicator(
|
||||
color: AppColors.secondary50,
|
||||
),
|
||||
);
|
||||
}
|
||||
|
||||
if (viewModel.errorMessage != null) {
|
||||
return Center(child: Text(viewModel.errorMessage!));
|
||||
}
|
||||
|
||||
Widget content;
|
||||
|
||||
if (viewModel.selectedStatus ==
|
||||
YourTendersStrings.likeTenders &&
|
||||
viewModel.likedTendersData != null) {
|
||||
content = LikedDislikedTendersList(
|
||||
data: viewModel.likedTendersData!,
|
||||
status: TenderFeedback.liked.value,
|
||||
isDesktop: false,
|
||||
isMobile: false,
|
||||
);
|
||||
} else if (viewModel.selectedStatus ==
|
||||
YourTendersStrings.dislikeTenders &&
|
||||
viewModel.likedTendersData != null) {
|
||||
content = LikedDislikedTendersList(
|
||||
data: viewModel.likedTendersData!,
|
||||
status: TenderFeedback.disliked.value,
|
||||
isDesktop: false,
|
||||
isMobile: false,
|
||||
);
|
||||
} else if (viewModel.data != null) {
|
||||
content = TendersSubmitted(
|
||||
approvedTenders: viewModel.data!,
|
||||
isDesktop: false,
|
||||
isMobile: false,
|
||||
);
|
||||
} else {
|
||||
content = const Center(
|
||||
child: Text(YourTendersStrings.noTenders),
|
||||
);
|
||||
}
|
||||
|
||||
return Column(
|
||||
children: [
|
||||
Expanded(child: content),
|
||||
SizedBox(height: 10.0.h()),
|
||||
|
||||
_listPagesControll(context, viewModel),
|
||||
|
||||
const SizedBox(height: 30.0),
|
||||
],
|
||||
);
|
||||
}
|
||||
|
||||
if (viewModel.errorMessage != null) {
|
||||
return Center(child: Text(viewModel.errorMessage!));
|
||||
}
|
||||
|
||||
Widget content;
|
||||
|
||||
if (viewModel.selectedStatus ==
|
||||
YourTendersStrings.likeTenders &&
|
||||
viewModel.likedTendersData != null) {
|
||||
content = LikedDislikedTendersList(
|
||||
data: viewModel.likedTendersData!,
|
||||
status: TenderFeedback.liked.value,
|
||||
isDesktop: false,
|
||||
isMobile: false,
|
||||
);
|
||||
} else if (viewModel.selectedStatus ==
|
||||
YourTendersStrings.dislikeTenders &&
|
||||
viewModel.likedTendersData != null) {
|
||||
content = LikedDislikedTendersList(
|
||||
data: viewModel.likedTendersData!,
|
||||
status: TenderFeedback.disliked.value,
|
||||
isDesktop: false,
|
||||
isMobile: false,
|
||||
);
|
||||
} else if (viewModel.data != null) {
|
||||
content = TendersSubmitted(
|
||||
approvedTenders: viewModel.data!,
|
||||
isDesktop: false,
|
||||
isMobile: false,
|
||||
);
|
||||
} else {
|
||||
content = const Center(
|
||||
child: Text(YourTendersStrings.noTenders),
|
||||
);
|
||||
}
|
||||
|
||||
return Column(
|
||||
children: [
|
||||
Expanded(child: content),
|
||||
SizedBox(height: 10.0.h()),
|
||||
|
||||
_listPagesControll(context, viewModel),
|
||||
|
||||
const SizedBox(height: 30.0),
|
||||
],
|
||||
);
|
||||
},
|
||||
},
|
||||
),
|
||||
),
|
||||
),
|
||||
],
|
||||
],
|
||||
),
|
||||
),
|
||||
),
|
||||
),
|
||||
|
||||
Reference in New Issue
Block a user