Commit Graph

334 Commits

Author SHA1 Message Date
Achintha Isuru
b31a615092 feat: Migrate staff profile features from Data Connect to V2 REST API
- Removed data_connect package from mobile pubspec.yaml.
- Added documentation for V2 profile migration status and QA findings.
- Implemented new session management with ClientSessionStore and StaffSessionStore.
- Created V2SessionService for handling user sessions via the V2 API.
- Developed use cases for cancelling late worker assignments and submitting worker reviews.
- Added arguments and use cases for payment chart retrieval and profile completion checks.
- Implemented repository interfaces and their implementations for staff main and profile features.
- Ensured proper error handling and validation in use cases.
2026-03-16 22:45:06 -04:00
Achintha Isuru
4834266986 feat: add entities for staff personal info, reports, shifts, and user sessions
- Implemented StaffPersonalInfo entity for staff profile data.
- Created ReportSummary entity for summarizing report metrics.
- Added SpendReport and SpendDataPoint entities for spend reporting.
- Introduced AssignedShift, CancelledShift, CompletedShift, OpenShift, PendingAssignment, ShiftDetail, TodayShift entities for shift management.
- Developed ClientSession and StaffSession entities for user session management.
2026-03-16 15:59:22 -04:00
Achintha Isuru
8fcf1d9d98 feat: Enhance background geofence functionality with notifications and localization support 2026-03-13 21:44:39 -04:00
Achintha Isuru
7b576c0ed4 feat: Implement notification and storage services, geofence management, and BLoC for geofence verification
- Add NotificationService for handling local notifications.
- Introduce StorageService for key-value storage using SharedPreferences.
- Create DeviceLocation model to represent geographic locations.
- Define LocationPermissionStatus enum for managing location permissions.
- Implement BackgroundGeofenceService for periodic geofence checks while clocked in.
- Develop GeofenceServiceImpl for geofence proximity verification using LocationService.
- Create GeofenceResult model to encapsulate geofence check results.
- Define GeofenceServiceInterface for geofence service abstraction.
- Implement GeofenceBloc to manage geofence verification and background tracking.
- Create events and states for GeofenceBloc to handle various geofence scenarios.
- Add GeofenceStatusBanner widget to display geofence verification status in the UI.
2026-03-13 16:01:26 -04:00
Achintha Isuru
9c7ba321bc feat: implement shimmer loading skeletons for client home header and enhance loading states in banners 2026-03-10 14:32:05 -04:00
Achintha Isuru
4423775fa1 feat: add shimmer loading skeletons for various pages and components
- Implemented ReorderCardSkeleton and ReorderSectionSkeleton for the client home page.
- Added SpendingCardSkeleton and SpendingSectionSkeleton for spending-related UI.
- Created OrderCardSkeleton and associated skeletons for the view orders page.
- Developed MetricCardSkeleton and MetricsGridSkeleton for reports page metrics.
- Introduced HomePageSkeleton and its components for staff home page.
- Added PaymentItemSkeleton and PaymentsPageSkeleton for payments page.
- Created ShiftDetailsPageSkeleton and related components for shift details.
- Implemented ShiftsPageSkeleton and ShiftCardSkeleton for shifts page.
2026-03-10 14:25:56 -04:00
Achintha Isuru
2d6133aba8 feat: Add shimmer loading skeletons for various pages and components
- Implemented `ClientHomePageSkeleton` for the client home page to display a loading state with shimmer effects.
- Created `OrderFormSkeleton` to mimic the layout of the order creation form while data is being fetched.
- Added `ViewOrdersPageSkeleton` to represent the loading state of the view orders page with placeholders for order cards.
- Updated `ClientHomeBody` to show the skeleton during loading states.
- Enhanced shimmer effects in `UiShimmerListItem`, `UiShimmerStatsCard`, and other UI components for consistency.
- Introduced `isDataLoaded` state in order-related BLoCs to manage loading states effectively.
2026-03-10 14:19:49 -04:00
Achintha Isuru
e6ebae60e4 feat: update routing paths and improve UI components in order forms 2026-03-10 13:32:39 -04:00
Achintha Isuru
0f0714c55b feat: add shimmer loading skeletons for various pages and components
- Implemented UiShimmer as a core shimmer wrapper for animated gradient effects.
- Created shimmer presets for list items, stats cards, section headers, and more.
- Developed specific skeletons for billing, invoices, coverage, hubs, reports, payments, shifts, and home pages.
- Enhanced user experience by providing visual placeholders during data loading.
2026-03-10 13:21:30 -04:00
Achintha Isuru
80b83a16f3 Refactor coverage widgets and improve localization
- Replaced custom navigation buttons with a new CalendarNavButton widget in coverage_calendar_selector.dart.
- Removed the CoverageHeader widget as it is no longer needed.
- Updated CoverageQuickStats to use CoverageStatCard for displaying statistics.
- Refactored CoverageShiftList to utilize ShiftHeader and WorkerRow for better structure.
- Added LateWorkersAlert with improved localization for late worker notifications.
- Introduced CoverageBadge and CoverageStatCard for better encapsulation of UI components.
- Created CoverageStatsHeader for displaying coverage metrics in a consistent format.
- Implemented ShiftHeader to manage shift-related information display.
- Developed WorkerRow to represent individual worker statuses with proper localization.
2026-03-10 12:27:27 -04:00
Achintha Isuru
a22a092b56 fix: Adjust border width and improve layout of stat card in coverage quick stats 2026-03-10 12:08:51 -04:00
Achintha Isuru
825cffbc33 feat: Update typography styles and improve layout in coverage components 2026-03-10 12:07:36 -04:00
Achintha Isuru
1f79541404 feat: Implement UI for adding new shift manager during order creation 2026-03-10 11:46:11 -04:00
Achintha Isuru
3d6b49f500 feat: Add forms and UI components for one-time, permanent, and recurring orders
- Implemented OneTimeOrderForm widget for creating one-time orders with fields for event name, vendor selection, date, hub, hub manager, and positions.
- Created OrderBottomActionButton for a consistent bottom action button across order views.
- Developed PermanentOrderForm for permanent orders, including event name, vendor selection, start date, permanent days, hub, hub manager, and positions.
- Added RecurringOrderForm for recurring orders with fields for event name, vendor selection, start/end dates, recurring days, hub, hub manager, and positions.
- Introduced PermanentOrderDaysSelector and RecurringOrderDaysSelector for selecting days of the week in permanent and recurring orders respectively.
2026-03-10 11:08:03 -04:00
Achintha Isuru
0d241844dd feat: Enhance review order summary with hours display and localization for hours suffix 2026-03-10 10:44:01 -04:00
Achintha Isuru
48207367cb feat: Add estimated weekly total label and refactor cost calculations for one-time and recurring orders 2026-03-10 10:31:08 -04:00
Achintha Isuru
a3aab678fd feat: Refactor review order action bar for improved button layout and async handling in permanent order BLoC 2026-03-10 10:21:18 -04:00
Achintha Isuru
c5d6bcbe04 feat: Implement review order functionality with localization support for titles, subtitles, and labels across multiple components 2026-03-10 10:12:38 -04:00
Achintha Isuru
d6c9ed2cf3 feat: Enhance localization compliance by enforcing usage of localized keys for user-facing strings and updating related documentation 2026-03-10 10:00:03 -04:00
Achintha Isuru
316a148726 feat: Implement review order flow for one-time, recurring, and permanent orders
- Added ReviewOrderPage to handle order review before submission.
- Created ReviewOrderArguments model to pass data between pages.
- Implemented schedule sections for one-time, recurring, and permanent orders.
- Enhanced navigation flow to confirm order submission after review.
- Refactored order submission logic in OneTimeOrderPage, PermanentOrderPage, and RecurringOrderPage.
- Introduced utility functions for time parsing and scheduling.
- Created reusable widgets for displaying order information in the review section.
- Updated navigation methods to use popSafe for safer back navigation.
- Added MainActivity for Android platform integration.
2026-03-09 19:49:23 -04:00
Achintha Isuru
7a5c130289 refactor: change singleton registrations to lazySingleton for improved performance 2026-03-09 15:01:18 -04:00
Achintha Isuru
76ffeb9667 refactor: Clean up imports and comment out unused button in CoverageShiftList widget 2026-03-04 13:19:43 -05:00
Achintha Isuru
867ff8d61c refactor: Replace Navigator.pop with Modular.to.popSafe for consistent navigation handling 2026-03-04 13:08:39 -05:00
Achintha Isuru
b20039ae84 refactor: Enhance DailyOpsReportPage layout and improve UI consistency 2026-03-04 12:59:56 -05:00
Achintha Isuru
4a5c2be489 refactor: Clean up view order card layout and improve text overflow handling 2026-03-04 12:56:25 -05:00
Achintha Isuru
26663d4e02 fix: Specify type for BlocProvider in CoverageReportPage 2026-03-03 23:45:43 -05:00
Achintha Isuru
8e83e6dcbf fix: Remove unnecessary background color setting in report pages 2026-03-03 23:44:17 -05:00
Achintha Isuru
0726f1dfbb feat: Add subtitle support to SectionLayout in various widgets 2026-03-03 22:11:51 -05:00
Achintha Isuru
6f2a195724 feat: Refactor client home widgets to use SectionLayout and add titles
- Updated ActionsWidget, CoverageWidget, SpendingWidget, ReorderWidget, and LiveActivityWidget to utilize SectionLayout for consistent layout structure.
- Introduced SectionHeader for displaying titles and optional actions in sections.
- Added ClientHomeBody, ClientHomeEditModeBody, ClientHomeNormalModeBody, and ClientHomeErrorState for improved state management and UI separation.
- Enhanced dashboard widget builder to support edit mode and error handling.
2026-03-03 22:00:42 -05:00
Achintha Isuru
e8b768b978 feat: Refactor sign-out method to use unified service call across repositories 2026-03-02 16:04:20 -05:00
Achintha Isuru
8497709356 fix: Correct formatting and improve comments in various files for clarity 2026-03-02 12:38:57 -05:00
Achintha Isuru
2596249cd2 feat: Remove redundant session handling in getUserSessionData method 2026-03-01 19:34:14 -05:00
Achintha Isuru
1ab5ba2e6f feat: Implement Android keystore setup for secure signing in release builds and update documentation for local and CI/CD environments 2026-02-28 22:32:54 -05:00
Achintha Isuru
7c701ded5f feat: Enhance authentication by refining user role validation during session handling and ensuring immediate ID token refresh after sign-in to prevent unauthenticated Data Connect SDK requests. 2026-02-28 18:17:49 -05:00
Achintha Isuru
6902e84519 feat: Temporarily disable worker list display and refine amount widget styling on the completion review page. 2026-02-28 17:36:23 -05:00
Achintha Isuru
26c4327ec5 refactor: reload billing data and update awaiting approval navigation to be awaitable. 2026-02-28 17:31:57 -05:00
Achintha Isuru
53b612851c refactor: enhance navigation robustness by introducing popSafe and safePushNamedAndRemoveUntil methods and updating their usage. 2026-02-28 17:23:53 -05:00
Achintha Isuru
c26128f1f2 feat: Enhance navigation robustness by redirecting to the appropriate home page on navigation errors or when popping the root route. 2026-02-28 17:02:44 -05:00
Achintha Isuru
76424b1b1f refactor: extract invoice approval and dispute logic into a dedicated ShiftCompletionReviewBloc. 2026-02-28 16:02:10 -05:00
Achintha Isuru
5a79a4e517 fix: Reorder invoice title and adjust vertical spacing in the pending invoices section. 2026-02-28 15:28:46 -05:00
Achintha Isuru
8c0708d2d3 Refactor billing data parsing and filtering, update invoice queries, and remove the dedicated timesheets page. 2026-02-28 15:26:05 -05:00
Achintha Isuru
119b6cc000 feat: introduce completion review UI components for actions, amount, info, search, and worker listing. 2026-02-28 12:49:51 -05:00
Achintha Isuru
752f60405e feat: Enable the rapid order type, refactor the invoice ready page to use UiAppBar, and adjust rapid action widget colors. 2026-02-28 12:11:46 -05:00
Achintha Isuru
1ed6d27ca7 refactor: Centralize bottom bar visibility paths into a list and simplify the conditional check. 2026-02-27 21:45:43 -05:00
Achintha Isuru
a65181251d feat: Introduce showBottomBar state to conditionally hide the bottom navigation bar based on specific routes. 2026-02-27 21:43:50 -05:00
Achintha Isuru
bba4054143 feat: Implement hub and role matching for order creation and remove payment, savings, and export sections from the billing page. 2026-02-27 21:32:12 -05:00
Achintha Isuru
95175536a0 feat: Implement audio file upload for rapid order transcription and refine the rapid order verification page titles. 2026-02-27 21:02:34 -05:00
Achintha Isuru
a53dddf2e6 feat: Implement voice-to-text transcription for rapid order creation and refactor RapidOrderBloc state management. 2026-02-27 20:37:14 -05:00
Achintha Isuru
57ea14d6bc small change 2026-02-27 15:41:59 -05:00
Achintha Isuru
d609dd75fa Merge branch 'dev' into 493-implement-rapid-order-creation-voice-text-in-client-mobile-app 2026-02-27 15:32:11 -05:00