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.
- 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.
- 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.
- 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.
- 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.
- Updated FormW4Page to utilize FormW4Cubit for state management.
- Removed local state management and replaced with BLoC state.
- Implemented form validation logic based on BLoC state.
- Added methods for handling form field updates and navigation between steps.
- Integrated success and error handling for form submission.
- Refactored UI components to reflect changes in state management.
feat: Update TaxFormsPage to use TaxFormsCubit for loading tax forms
- Changed the way TaxFormsPage retrieves the TaxFormsCubit instance.
- Ensured that tax forms are loaded on initial build.
feat: Replace mock repository with implementation for tax forms
- Switched from TaxFormsRepositoryMock to TaxFormsRepositoryImpl.
- Added use cases for getting and submitting tax forms.
- Implemented the TaxFormsRepositoryImpl to handle data fetching and submission logic.
feat: Implement use cases for tax forms
- Created GetTaxFormsUseCase for retrieving tax forms.
- Created SubmitTaxFormUseCase for submitting tax form data.
- Ensured use cases interact with the repository for data operations.
- Created staff_tax_forms_module.dart to manage tax forms feature.
- Implemented routes for TaxFormsPage, FormI9Page, and FormW4Page.
- Added mock repository for tax forms.
- Established necessary dependencies in pubspec.yaml.
- Exported module in staff_tax_forms.dart.
- 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.
- 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.
- Extracted widgets to smaller components in presentation/widgets/home_page
- Converted WorkerHomePage to StatelessWidget
- Moved local state (autoMatchEnabled) to HomeCubit
- Improved code organization and readability
- Updated AuthNavigator to push /worker-main/home/ explicitly
- Updated StaffMainNavigator to navigate to home by default
- Fixes blank screen issue by ensuring RouterOutlet has a child route
- Registered HomeRepository in StaffHomeModule to fix UnregisteredInstance error
- Updated WorkerHomePage to use Modular DI for HomeCubit
- Added trailing slash to home navigation to resolve Modular warning
- Created staff_main package with module, bloc, and pages
- Integrated staff_home into staff_main
- Updated route constants to use /worker-main
- Fixed intl version conflict
- Updated staff_main modulePath to /worker-home
- Updated main.dart to mount staff_main at /worker-home
- Fixes RouteNotFoundException when navigating from auth
- Added StaffMainRoutes constants to avoid magic strings
- Enhanced StaffMainNavigator with typed tab navigation
- Updated StaffMainCubit to use typed navigation
- Updated StaffMainModule to use route constants