Commit Graph

856 Commits

Author SHA1 Message Date
Achintha Isuru
1bbd306ca0 feat: Update geofence handling to allow checkout when checked in and show verified banner for overridden geofence 2026-03-13 20:43:51 -04:00
Achintha Isuru
ea078eaa02 refactor: Rearrange MultiBlocProvider and Scaffold structure in ClockInPage for improved readability 2026-03-13 17:15:44 -04:00
Achintha Isuru
a85cd36975 feat: Implement geofence override approval with justification notes and update related state management 2026-03-13 17:11:14 -04:00
Achintha Isuru
ab1cd8c355 feat: Add geofence override functionality with justification modal and update banners 2026-03-13 17:04:40 -04:00
Achintha Isuru
a2b102a96d feat: Update action button styling and color in permission denied banner 2026-03-13 16:44:39 -04:00
Achintha Isuru
accff00155 feat: Enhance geofence functionality with new status banners and utility functions 2026-03-13 16:34:09 -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
2fc6b3139e refactor: reorder import statements for better organization in clock_in_bloc.dart 2026-03-13 13:08:03 -04:00
Achintha Isuru
2c1c71ad01 refactor: simplify widget structure and improve date selection logic in clock-in features 2026-03-13 12:14:06 -04:00
Achintha Isuru
ec880007d0 feat(clock-in): add adaptive launcher icons and implement clock-in features
- Added adaptive launcher icons for both dev and stage environments in mobile apps.
- Introduced CheckInModeTab widget for selecting check-in methods.
- Created CheckedInBanner to display current check-in status with time.
- Implemented ClockInActionSection to manage check-in/out actions based on shift status.
- Developed ClockInBody to compose the main content of the clock-in page.
- Added utility functions in ClockInHelpers for time formatting and check-in availability.
- Created EarlyCheckInBanner to notify users arriving too early to check in.
- Implemented NFC scan dialog for NFC-based check-ins.
- Added NoShiftsBanner to inform users when no shifts are scheduled.
- Developed ShiftCard and ShiftCardList for displaying shifts in a selectable format.
- Created ShiftCompletedBanner to show success message after completing a shift.
2026-03-13 11:55:59 -04:00
Achintha Isuru
038b590468 Add flavor-specific app icons setup for Android and iOS
- Create documentation for configuring flavor-specific app icons in mobile applications.
- Implement scripts to generate and set up flavor-specific icons for Android and iOS.
- Configure iOS schemes to use the appropriate AppIcon asset sets for dev and stage flavors.
- Ensure generated icons meet required sizes and formats for both platforms.
- Provide troubleshooting steps and CI/CD integration guidelines for automated builds.
2026-03-12 14:42:11 -04:00
Achintha Isuru
1a6132a485 chore: added logo images for each different flavours of the mobile apps. 2026-03-12 14:17:22 -04:00
Achintha Isuru
2071585158 feat: remove unused import and clean up emergency contact info banner widget 2026-03-10 23:54:38 -04:00
Achintha Isuru
e60413f45c feat: add shimmer loading skeletons for emergency contact section 2026-03-10 17:02:16 -04:00
Achintha Isuru
5a46edba9d feat: update shimmer loading components to remove const constructors for better flexibility 2026-03-10 16:56:55 -04:00
Achintha Isuru
bd98a112a0 feat: add shimmer skeletons for various sections in the staff profile and onboarding features
- Implemented ProfilePageSkeleton for loading state in staff profile.
- Added ReliabilityScoreSkeleton and ReliabilityStatsSkeleton for reliability metrics.
- Created CertificatesSkeleton and related components for loading certificates.
- Developed DocumentsSkeleton and associated document card skeletons.
- Introduced TaxFormsSkeleton for loading tax forms.
- Added BankAccountSkeleton and its components for bank account loading state.
- Created TimeCardSkeleton for displaying time card loading state.
- Implemented AttireSkeleton for loading attire items.
- Added PersonalInfoSkeleton for loading personal information.
- Developed FaqsSkeleton for loading FAQ sections.
- Created PrivacySecuritySkeleton for loading privacy settings.
2026-03-10 15:20:24 -04:00
Achintha Isuru
ccf1a75a4d feat: update dependency injection to use lazy singletons for availability repository and use cases 2026-03-10 14:53:34 -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
972951fd96 feat: implement conditional google-services processing and update Firebase configurations for staging and production environments 2026-03-09 18:09:25 -04:00
Achintha Isuru
fe98462431 feat: update launch configurations and build scripts for staging and production environments 2026-03-09 17:27:56 -04:00
Achintha Isuru
c4dbdb5dcb feat: implement flavor-specific key properties for staging and production environments 2026-03-09 16:34:42 -04:00
Achintha Isuru
2484c6cff2 Refactor code structure for improved readability and maintainability 2026-03-09 16:26:53 -04:00
Achintha Isuru
7a5c130289 refactor: change singleton registrations to lazySingleton for improved performance 2026-03-09 15:01:18 -04:00
Achintha Isuru
2d1e3915c5 Add KROW mobile release and paper design conventions documentation
- Introduced SKILL.md for KROW mobile release process detailing versioning, CHANGELOG management, GitHub Actions workflows, APK signing, and hotfix procedures.
- Added SKILL.md for KROW paper design conventions covering design tokens, component patterns, screen structure, and naming rules to ensure visual consistency across design files.
2026-03-08 17:26:46 -04:00
Achintha Isuru
c936d5f2ab feat: add attire section components for improved UI organization 2026-03-07 02:51:07 -05:00
Achintha Isuru
c9a46a1a71 feat: implement attire section toggles for required and non-essential items in AttirePage 2026-03-07 02:47:55 -05:00
Achintha Isuru
720bf247b3 fix: update localization strings for booking shifts in English and Spanish 2026-03-07 02:36:42 -05:00
Achintha Isuru
0f5ceb8003 feat: enhance documentation and update dependencies in mobile feature builder and development rules 2026-03-07 02:19:14 -05:00
Achintha Isuru
1c3cd211ab Merge branch 'dev' into 493-implement-rapid-order-creation-voice-text-in-client-mobile-app 2026-03-05 17:06:46 -05:00
Achintha Isuru
4b09f050b0 fix: Update milestone version format in changelogs for consistency 2026-03-05 15:33:35 -05:00
Achintha Isuru
89dd9fe723 docs(mobile): remove placeholder entries for RAPID and recurring orders in CHANGELOGs 2026-03-05 11:38:36 -05:00
Achintha Isuru
f771bca72a docs(mobile): enhance CHANGELOGs with comprehensive M4 features from git history
- Add Documents & Certificates management features
- Include Camera/gallery support for uploads
- Add Benefits overview section
- Expand Attire management with verification states
- Include RAPID order audio recording and transcription
- Add Hub manager assignment and Cost center features
- Include session management improvements
- Add navigation enhancements and bug fixes
- Document Core API services integration
- Include all user-facing features from milestone issues
2026-03-05 11:34:00 -05:00
Achintha Isuru
c06e14e668 docs(mobile): update M4 version to 0.0.1-M4 (keeping same base version) 2026-03-05 11:21:43 -05:00
Achintha Isuru
6b26a72144 feat(mobile): add localization support for Spanish language in staff app 2026-03-05 11:16:52 -05:00
Achintha Isuru
889d48144c docs(mobile): move CHANGELOGs to correct app directories (staff and client) 2026-03-05 11:15:05 -05:00