6177214e-ce7c-49e3-99de-ff9721b26f63 — Commit 34b0cd4d
Changed files
.../components/current_bookings_tab_view.dart | 8 +++-- .../overview/components/find_booking_button.dart | 36 ++++++++++++++++++++++ comwell_key_app/lib/overview/overview_page.dart | 3 +- 3 files changed, 44 insertions(+), 3 deletions(-)
Diff
diff --git a/comwell_key_app/lib/overview/components/current_bookings_tab_view.dart b/comwell_key_app/lib/overview/components/current_bookings_tab_view.dart
index 4ffb05b9..47bf2927 100644
--- a/comwell_key_app/lib/overview/components/current_bookings_tab_view.dart
+++ b/comwell_key_app/lib/overview/components/current_bookings_tab_view.dart
@@ -1,4 +1,5 @@
import 'package:comwell_key_app/overview/components/current_booking_list_item_view.dart';
+import 'package:comwell_key_app/overview/components/find_booking_button.dart';
import 'package:comwell_key_app/overview/components/room_selection_widget.dart';
import 'package:comwell_key_app/overview/cubit/overview_cubit.dart';
import 'package:comwell_key_app/overview/models/booking.dart';
@@ -97,16 +98,19 @@ class CurrentBookingsTabView extends StatelessWidget {
itemCount: bookings.length,
itemBuilder: (context, index) {
final booking = bookings.elementAt(index);
-
+ final isLastItem = index == bookings.length - 1;
return Column(
children: [
CurrentBookingListItem(booking: booking),
RoomSelectionWidget(booking: booking),
+ ...(isLastItem ? [
+ const FindBookingButton(),
+ ] : []),
],
);
},
);
- }
+ }
},
),
);
diff --git a/comwell_key_app/lib/overview/components/find_booking_button.dart b/comwell_key_app/lib/overview/components/find_booking_button.dart
new file mode 100644
index 00000000..963bc689
--- /dev/null
+++ b/comwell_key_app/lib/overview/components/find_booking_button.dart
@@ -0,0 +1,36 @@
+import 'package:comwell_key_app/routing/app_routes.dart';
+import 'package:comwell_key_app/themes/light_theme.dart';
+import 'package:easy_localization/easy_localization.dart';
+import 'package:flutter/material.dart';
+import 'package:flutter_svg/svg.dart';
+import 'package:go_router/go_router.dart';
+
+class FindBookingButton extends StatelessWidget {
+ const FindBookingButton({super.key});
+
+ @override
+ Widget build(BuildContext context) {
+ final theme = Theme.of(context);
+ return Padding(
+ padding: const EdgeInsets.only(
+ left: 18.0, right: 18.0, bottom: 0.0, top: 18.0),
+ child: OutlinedButton.icon(
+ onPressed: () async {
+ context.pushNamed(AppRoutes.findBooking.name);
+ },
+ icon: SvgPicture.asset('assets/icons/loop.svg'),
+ label: Text(
+ 'find_booking'.tr(),
+ style: theme.textTheme.bodyMedium,
+ ),
+ style: OutlinedButton.styleFrom(
+ side: const BorderSide(color: colorDivider),
+ shape: RoundedRectangleBorder(
+ borderRadius: BorderRadius.circular(25),
+ ),
+ minimumSize: const Size(100, 40),
+ ),
+ ),
+ );
+ }
+}
diff --git a/comwell_key_app/lib/overview/overview_page.dart b/comwell_key_app/lib/overview/overview_page.dart
index d51b96c5..ad20afda 100644
--- a/comwell_key_app/lib/overview/overview_page.dart
+++ b/comwell_key_app/lib/overview/overview_page.dart
@@ -110,9 +110,10 @@ class OverviewTabViewState extends State<OverviewPage>
bookings:
const Bookings(cancelled: [], current: [], past: [])),
],
+
Padding(
padding: const EdgeInsets.only(
- left: 18.0, right: 18.0, bottom: 32.0, top: 18.0),
+ left: 18.0, right: 18.0, bottom: 32.0, top: 0.0),
child: ElevatedButton(
onPressed: () async {
bool success = await launchUrl(