Commit Graph

61 Commits

Author SHA1 Message Date
5e7bf0d5c0 refactor: centralize data connect error handling and resolve build issues across applications
This commit addresses several critical issues across the mobile monorepo:

1. Centralized Error Handling: Integrated DataErrorHandler mixin into all repository implementations, ensuring consistent mapping of Data Connect exceptions to domain AppExceptions.
2. Build Stabilization: Fixed numerous type mismatches, parameter signature errors in widgets (e.g., google_places_flutter itemBuilder), and naming conflicts (StaffSession, FirebaseAuth).
3. Code Quality: Applied 'dart fix' across all modified packages and manually cleared debug print statements and UI clutter.
4. Mono-repo alignment: Standardized Data Connect usage and aliasing ('dc.') for better maintainability.

Signed-off-by: Suriya <suriya@tenext.in>
2026-02-06 13:28:57 +05:30
Achintha Isuru
9f8b60d571 feat: Update application status handling and improve build configuration
- Added handling for the COMPLETED application status in the CoverageRepositoryImpl to return 'confirmed'.
- Updated mobile client build and run commands in the makefile to include `--dart-define-from-file=../../config.dev.json` for better configuration management.
2026-02-01 13:20:24 -05:00
bwnyasse
f6f2be18a2 Merge branch 'dev' into fix/check-boris-applied 2026-01-31 20:04:10 -05:00
bwnyasse
caac050ac9 feat(core_localization): add error translation utility and new error messages
feat(client_auth): implement error handling with localized messages
feat(client_hubs): implement error handling with localized messages
feat(client_billing): navigate to home after billing
feat(client_coverage): navigate to home after coverage
feat(client_create_order): navigate to home after create order
feat(client_settings): navigate to home after settings
feat(client_view_orders): show hub name in order card
fix(client_auth): handle existing firebase accounts during sign-up

This commit introduces a new utility function, `translateErrorKey`,
to translate error message keys to localized strings. It also adds
new error messages to the localization files for both English and
Spanish.

The commit also implements error handling with localized messages in
the client authentication and hubs features. This makes it easier for
users to understand what went wrong and how to fix it.

Additionally, the commit updates the navigation flow for the billing,
coverage, create order, and settings features to navigate to the home
page after the user completes the action.

Finally, the commit fixes a bug where the hub name was not being
displayed in the order card.
2026-01-31 18:56:48 -05:00
Achintha Isuru
f8cd7925f0 Update macOS Flutter env and shifts import
Regenerate and update ephemeral macOS Flutter config and env script with local paths and build settings (FLUTTER_ROOT, FLUTTER_APPLICATION_PATH, FLUTTER_TARGET, FLUTTER_BUILD_NAME, DART_DEFINES, PACKAGE_CONFIG). Update generated localization timestamp. Add missing import for shifts_bloc in shift_details_page.dart to enable bloc usage in the page.
2026-01-31 13:00:04 -05:00
bwnyasse
9517606e7a feat: add CLAUDE.md and GEMINI.md to provide project context for AI
feat: add bug reports and screenshots to bugs directory
feat(mobile): add device id to mobile makefile commands
fix(mobile): update mobile readme with device id instructions
fix(core_localization): update strings.g.dart with latest generation
chore: add flutter ephemeral files to gitignore

The CLAUDE.md and GEMINI.md files were added to provide AI assistants with the necessary context to understand the project structure, key commands, architecture patterns, and code conventions. This will help them generate more accurate and relevant code and documentation.

The bugs directory was added to store bug reports and screenshots, providing a central location for tracking and analyzing issues.

The mobile makefile commands were updated to include the device ID, allowing developers to specify the target device for running mobile apps. The mobile readme was updated with instructions on how to find the device ID.

The strings.g.dart file was updated with the latest generation to ensure that the localization data is up-to-date.

The flutter ephemeral files were added to gitignore to prevent them from being committed to the repository. These files are generated by Flutter for desktop platforms and should not be tracked.
2026-01-31 09:52:36 -05:00
Achintha Isuru
d11977b79c Update strings.g.dart 2026-01-30 18:10:44 -05:00
Achintha Isuru
e85912b6cf feat: update shift repository implementation and add shift adapter 2026-01-30 17:53:28 -05:00
Achintha Isuru
1268da45b0 feat: integrate Clock In functionality with Firebase support and refactor attendance management 2026-01-30 17:22:51 -05:00
Achintha Isuru
772d59a7dd feat: integrate bank account addition with user input for bank name and success notification 2026-01-30 14:59:53 -05:00
Achintha Isuru
a17736e5b9 refactor: update generated file timestamp and clean up imports in various files 2026-01-30 14:28:52 -05:00
Achintha Isuru
a0bca19640 chore: update build timestamp in strings.g.dart and remove unused staff packages from pubspec.lock 2026-01-30 11:21:45 -05:00
Achintha Isuru
f2fdf850f5 Merge branch 'dev' into 312-feature-integrate-google-maps-places-autocomplete-for-hub-address-validation 2026-01-30 11:20:54 -05:00
Achintha Isuru
3f7aa90fee Merge branch 'dev' into Issues-on-payments-timecard-availability-screens-01-02-03-04 2026-01-30 11:19:07 -05:00
Suriya
ac7874c634 feat: implement staff availability, clock-in, payments and fix UI navigation 2026-01-30 21:46:44 +05:30
Achintha Isuru
bfe00a700a refactor: update CoveragePage to use StatefulWidget and implement scroll listener 2026-01-30 00:24:12 -05:00
Achintha Isuru
8c8951ff51 fix: update package versions and dependencies across multiple pubspec.yaml files 2026-01-29 10:51:16 -05:00
Achintha Isuru
c212e8be00 feat: integrate Google Maps Places Autocomplete for hub address validation 2026-01-29 03:01:14 -05:00
Achintha Isuru
960aa9f003 chore: update pubspec files to include workspace resolution and remove unnecessary pubspec.lock 2026-01-28 23:17:17 -05:00
Achintha Isuru
710421a832 Refactor code structure for improved readability and maintainability 2026-01-28 12:56:35 -05:00
Achintha Isuru
7951733856 fix: update getSavedLocale method to return non-nullable Locale type 2026-01-28 10:53:32 -05:00
Achintha Isuru
e0c01ed4bf refactor: enhance getDefaultLocale method to include supported locale check 2026-01-28 10:37:31 -05:00
Achintha Isuru
6c65c13f24 feat: implement use cases for retrieving default and supported locales 2026-01-28 10:31:55 -05:00
Achintha Isuru
e73698e64f fix: update LocaleBloc and LocaleRepositoryImpl to use named parameters for better clarity 2026-01-28 10:12:05 -05:00
Achintha Isuru
ed588e0ec7 refactor: improve locale management and initialization in LocaleBloc and LocalizationModule 2026-01-28 10:09:43 -05:00
Achintha Isuru
47ecad5a63 feat: add new skills to localization files and update experience repository methods 2026-01-27 15:07:43 -05:00
Achintha Isuru
450683c45c feat: implement emergency contact management with Firebase integration and relationship type handling 2026-01-27 12:27:22 -05:00
Achintha Isuru
6915b8b005 Update build date in localization strings and adjust dependencies in billing package 2026-01-26 19:16:12 -05:00
Achintha Isuru
43922ab014 Update version numbers for client and staff applications to 0.0.1+M301 and update build timestamp in localization strings 2026-01-26 17:00:04 -05:00
Achintha Isuru
14e0878f86 Update build scripts to include release mode for client and staff app builds 2026-01-26 16:44:27 -05:00
Achintha Isuru
a1cea7d9a2 Update build scripts to activate Melos and install dependencies for client and staff apps 2026-01-26 16:32:56 -05:00
Achintha Isuru
53a1e5b41a Add new app icons for iOS in various sizes to the asset catalog
- Added Icon-App-50x50@2x.png
- Added Icon-App-57x57@1x.png
- Added Icon-App-57x57@2x.png
- Added Icon-App-72x72@1x.png
- Added Icon-App-72x72@2x.png

These icons are essential for supporting different device resolutions and ensuring a consistent user experience across iOS devices.
2026-01-26 15:45:20 -05:00
Achintha Isuru
7bd276269b feat: Implement Staff Clock In feature with attendance tracking and commute management
- Added AppColors for consistent theming across the feature.
- Created AttendanceCard widget to display attendance information.
- Developed CommuteTracker widget to manage and display commute status.
- Implemented DateSelector for selecting shift dates.
- Added LunchBreakDialog for logging lunch breaks with multiple steps.
- Created SwipeToCheckIn widget for checking in and out via swipe or NFC.
- Established StaffClockInModule for dependency injection and routing.
- Updated pubspec.yaml with necessary dependencies for the feature.
2026-01-26 01:25:08 -05:00
Achintha Isuru
2a820b3e4f feat: Implement staff availability feature with BLoC architecture
- Created AvailabilityPage with UI for managing staff availability.
- Integrated BLoC for state management, including LoadAvailability and ToggleDayStatus events.
- Added quick set options for availability (All Week, Weekdays, Weekends, Clear All).
- Implemented week navigation and day selection with visual feedback.
- Developed time slot management for each day, allowing toggling of availability.
- Established StaffAvailabilityModule for dependency injection and routing.
- Updated pubspec.yaml with necessary dependencies for the feature.
2026-01-25 22:35:09 -05:00
Achintha Isuru
0622002014 feat: add staff time card feature with localization and repository implementation
- Implemented Spanish translations for time card related strings.
- Created TimeCardRepository to fetch time card data based on shifts.
- Added use cases for retrieving time cards and payment history.
- Developed BLoC for managing time card state and events.
- Designed UI components for displaying time card summary and shift history.
- Integrated time card navigation within the staff main module.
- Updated pubspec.yaml files to include new dependencies and modules.
2026-01-25 21:16:50 -05:00
Achintha Isuru
150905c1eb refactor: update payments feature to use StaffPayment model and clean up unused code 2026-01-25 17:10:09 -05:00
Achintha Isuru
19959a2b3f Add initial mobile app prototypes and staff payments feature
Introduces the first versions of client and staff mobile application prototypes, including platform-specific assets, screens, and configuration for Android, iOS, macOS, Linux, and Windows. Adds documentation, AI prompt guides, and a new staff payments feature module with repository, use cases, and presentation logic. Also includes generated localization files and supporting resources for both client and staff apps.
2026-01-25 17:01:18 -05:00
Achintha Isuru
8e429dda03 feat: add ShiftAssignmentCard widget and StaffShifts module
- Implemented ShiftAssignmentCard widget for displaying shift assignments with client details, pay calculation, and confirmation actions.
- Created StaffShiftsModule to manage dependencies, routes, and use cases related to staff shifts.
- Added necessary dependencies in pubspec.yaml and generated pubspec.lock.
2026-01-25 16:09:11 -05:00
Achintha Isuru
533a545da7 feat: add staff attire management feature
- Introduced localization for staff attire in English and Spanish.
- Created AttireItem entity to represent attire items.
- Implemented StaffAttireModule with repository, use cases, and BLoC for state management.
- Developed UI components including AttirePage, AttireGrid, AttireInfoCard, AttestationCheckbox, and AttireBottomBar.
- Added navigation for attire management and integrated with existing staff profile flow.
- Implemented functionality for selecting attire items, uploading photos, and saving selections with validation.
2026-01-25 12:23:28 -05:00
Achintha Isuru
9dae80e66e feat: add staff certificates feature with pubspec configuration
- Created pubspec.yaml for the staff_certificates feature with dependencies including flutter_bloc, equatable, get_it, and flutter_modular.
- Established paths for KROW dependencies: design_system, core_localization, krow_domain, krow_core, and krow_data_connect.
- Added firebase_auth and firebase_data_connect as dependencies.
- Generated pubspec.lock file to lock dependency versions.
2026-01-25 10:28:43 -05:00
Achintha Isuru
b3e156ebbe feat: implement staff documents feature with localization and navigation updates 2026-01-25 03:01:54 -05:00
Achintha Isuru
753a93c24a feat: add staff documents feature with document card and progress card
- Implemented DocumentCard widget to display individual staff documents with status and actions.
- Created DocumentsProgressCard widget to show overall verification progress of documents.
- Established StaffDocumentsModule for dependency injection and routing to documents page.
- Updated pubspec.yaml and pubspec.lock for new dependencies and configurations.
2026-01-25 02:19:30 -05:00
Achintha Isuru
e6e2783a5a feat: Implement bank account management feature with UI, BLoC integration, and repository setup 2026-01-24 22:36:29 -05:00
Achintha Isuru
98ed6e67a3 feat: Add experience and skills localization for user onboarding 2026-01-24 21:14:40 -05:00
Achintha Isuru
f81e1949d1 feat: Add experience management feature with UI, BLoC integration, and repository implementation 2026-01-24 21:04:59 -05:00
Achintha Isuru
0cfc19fa60 feat: Implement Staff Profile Info feature with onboarding capabilities
- Added StaffProfileInfoModule for managing personal information onboarding.
- Created PersonalInfoRepositoryImpl and PersonalInfoRepositoryMock for data handling.
- Developed use cases for fetching and updating staff profile information.
- Implemented PersonalInfoBloc for state management using BLoC pattern.
- Designed UI components including PersonalInfoPage, PersonalInfoContent, and form widgets.
- Integrated navigation for onboarding steps and added necessary routes.
- Updated pubspec.yaml files to include new dependencies and feature packages.
2026-01-24 19:28:14 -05:00
Achintha Isuru
96ab07b58d feat: Add localization for staff main tabs and enhance profile UI components 2026-01-24 14:38:06 -05:00
Achintha Isuru
6c72c2d9fd feat: Implement Staff Profile feature with BLoC architecture
- Added ProfileRepositoryInterface for staff profile operations.
- Created StaffProfileUI to represent extended profile information for the UI.
- Developed GetProfileUseCase to fetch staff profiles and map to UI entities.
- Implemented SignOutUseCase for user sign-out functionality.
- Introduced ProfileCubit to manage profile state and loading logic.
- Created ProfileState to represent various states of the profile feature.
- Developed ProfileNavigator for type-safe navigation within the profile feature.
- Built StaffProfilePage to display staff member's profile and statistics.
- Added various widgets for profile display, including reliability stats and menu items.
- Established StaffProfileModule for dependency injection and routing.
- Configured pubspec.yaml for feature package dependencies.
2026-01-24 14:25:17 -05:00
Achintha Isuru
7cea81e99e fix(routes): update worker home route to worker main
feat(localization): add benefits and auto-match sections in English and Spanish
fix(staff_main): handle route changes safely in StaffMainCubit
2026-01-24 12:30:53 -05:00
Achintha Isuru
cdc0344280 feat(staff): implement staff home screen shell (staff_main)
- Created staff_main package structure
- Implemented StaffMainPage, StaffMainBottomBar, StaffMainCubit
- Added localization for staff_main tabs
- Added typed navigation extension
- Registered package in workspace
2026-01-24 11:43:09 -05:00