diff --git a/apps/mobile/packages/design_system/lib/src/ui_icons.dart b/apps/mobile/packages/design_system/lib/src/ui_icons.dart index 55a7841b..2be98401 100644 --- a/apps/mobile/packages/design_system/lib/src/ui_icons.dart +++ b/apps/mobile/packages/design_system/lib/src/ui_icons.dart @@ -28,6 +28,9 @@ class UiIcons { /// Calendar icon for shifts or schedules static const IconData calendar = _IconLib.calendar; + /// Calender check icon for shifts or schedules + static const IconData calendarCheck = _IconLib.calendarCheck; + /// Briefcase icon for jobs static const IconData briefcase = _IconLib.briefcase; diff --git a/apps/mobile/packages/features/client/orders/view_orders/lib/src/presentation/widgets/view_order_card.dart b/apps/mobile/packages/features/client/orders/view_orders/lib/src/presentation/widgets/view_order_card.dart index 35da6c59..0a42dfd9 100644 --- a/apps/mobile/packages/features/client/orders/view_orders/lib/src/presentation/widgets/view_order_card.dart +++ b/apps/mobile/packages/features/client/orders/view_orders/lib/src/presentation/widgets/view_order_card.dart @@ -34,7 +34,8 @@ class _ViewOrderCardState extends State { backgroundColor: UiColors.transparent, builder: (BuildContext context) => OrderEditSheet( order: order, - onUpdated: () => this.context.read().updateWeekOffset(0), + onUpdated: () => + this.context.read().updateWeekOffset(0), ), ); } @@ -171,7 +172,9 @@ class _ViewOrderCardState extends State { shape: BoxShape.circle, ), ), - const SizedBox(width: UiConstants.space1 + 2), + const SizedBox( + width: UiConstants.space1 + 2, + ), Text( statusLabel.toUpperCase(), style: UiTypography.footnote2b.copyWith( @@ -202,20 +205,23 @@ class _ViewOrderCardState extends State { // Title Text( order.title, - style: UiTypography.headline4m.textPrimary, + style: UiTypography.headline3m.textPrimary, ), - const SizedBox(height: UiConstants.space1), - // Client & Date Row( + spacing: UiConstants.space1, children: [ - Text( - order.clientName, - style: UiTypography.body3r.textSecondary, + const Icon( + UiIcons.calendarCheck, + size: 14, + color: UiColors.iconSecondary, + ), + Text( + order.eventName, + style: UiTypography.headline5m.textSecondary, ), - const SizedBox(width: 0), ], ), - const SizedBox(height: UiConstants.space2), + const SizedBox(height: UiConstants.space4), // Location (Hub name + Address) Row( crossAxisAlignment: CrossAxisAlignment.start, @@ -236,14 +242,17 @@ class _ViewOrderCardState extends State { if (order.location.isNotEmpty) Text( order.location, - style: UiTypography.footnote1b.textPrimary, + style: + UiTypography.footnote1b.textPrimary, maxLines: 1, overflow: TextOverflow.ellipsis, ), if (order.locationAddress.isNotEmpty) Text( order.locationAddress, - style: UiTypography.footnote2r.textSecondary, + style: UiTypography + .footnote2r + .textSecondary, maxLines: 1, overflow: TextOverflow.ellipsis, ), @@ -273,8 +282,7 @@ class _ViewOrderCardState extends State { : UiIcons.chevronDown, color: UiColors.iconSecondary, bgColor: UiColors.bgSecondary, - onTap: () => - setState(() => _expanded = !_expanded), + onTap: () => setState(() => _expanded = !_expanded), ), ], ), @@ -340,22 +348,24 @@ class _ViewOrderCardState extends State { Row( children: [ if (coveragePercent != 100) - const Icon( - UiIcons.error, - size: 16, - color: UiColors.textError, - ), + const Icon( + UiIcons.error, + size: 16, + color: UiColors.textError, + ), if (coveragePercent == 100) - const Icon( - UiIcons.checkCircle, - size: 16, - color: UiColors.textSuccess, - ), + const Icon( + UiIcons.checkCircle, + size: 16, + color: UiColors.textSuccess, + ), const SizedBox(width: UiConstants.space2), Text( coveragePercent == 100 ? t.client_view_orders.card.all_confirmed - : t.client_view_orders.card.workers_needed(count: order.workersNeeded), + : t.client_view_orders.card.workers_needed( + count: order.workersNeeded, + ), style: UiTypography.body2m.textPrimary, ), ], @@ -391,7 +401,9 @@ class _ViewOrderCardState extends State { Padding( padding: const EdgeInsets.only(left: 12), child: Text( - t.client_view_orders.card.show_more_workers(count: order.confirmedApps.length - 3), + t.client_view_orders.card.show_more_workers( + count: order.confirmedApps.length - 3, + ), style: UiTypography.footnote2r.textSecondary, ), ), @@ -446,7 +458,9 @@ class _ViewOrderCardState extends State { child: TextButton( onPressed: () {}, child: Text( - t.client_view_orders.card.show_more_workers(count: order.confirmedApps.length - 5), + t.client_view_orders.card.show_more_workers( + count: order.confirmedApps.length - 5, + ), style: UiTypography.body2m.copyWith( color: UiColors.primary, ), @@ -588,7 +602,8 @@ class _ViewOrderCardState extends State { ), ), ), - ] else if ((app['status'] as String?)?.isNotEmpty ?? false) ...[ + ] else if ((app['status'] as String?)?.isNotEmpty ?? + false) ...[ const SizedBox(width: UiConstants.space2), Container( padding: const EdgeInsets.symmetric( @@ -629,7 +644,9 @@ class _ViewOrderCardState extends State { builder: (BuildContext context) { return AlertDialog( title: Text(t.client_view_orders.card.call_dialog.title), - content: Text(t.client_view_orders.card.call_dialog.message(phone: phone)), + content: Text( + t.client_view_orders.card.call_dialog.message(phone: phone), + ), actions: [ TextButton( onPressed: () => Navigator.of(context).pop(false), @@ -716,4 +733,3 @@ class _ViewOrderCardState extends State { ); } } -