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.
This commit is contained in:
Achintha Isuru
2026-01-24 14:25:17 -05:00
parent 633af6fab0
commit 6c72c2d9fd
23 changed files with 1489 additions and 9 deletions

View File

@@ -453,15 +453,51 @@
"refer": { "title": "Refer a Friend", "page": "/worker-profile" }
}
}
}
},
"staff_main": {
"tabs": {
"shifts": "Shifts",
"payments": "Payments",
"home": "Home",
"clock_in": "Clock In",
"profile": "Profile"
},
"profile": {
"header": {
"title": "Profile",
"sign_out": "SIGN OUT"
},
"reliability_stats": {
"shifts": "Shifts",
"rating": "Rating",
"on_time": "On Time",
"no_shows": "No Shows",
"cancellations": "Cancel."
},
"reliability_score": {
"title": "Reliability Score",
"description": "Keep your score above 45% to continue picking up shifts."
},
"sections": {
"onboarding": "ONBOARDING",
"compliance": "COMPLIANCE",
"level_up": "LEVEL UP",
"finance": "FINANCE",
"support": "SUPPORT"
},
"menu_items": {
"personal_info": "Personal Info",
"emergency_contact": "Emergency Contact",
"experience": "Experience",
"attire": "Attire",
"documents": "Documents",
"certificates": "Certificates",
"tax_forms": "Tax Forms",
"krow_university": "Krow University",
"trainings": "Trainings",
"leaderboard": "Leaderboard",
"bank_account": "Bank Account",
"payments": "Payments",
"timecard": "Timecard",
"faqs": "FAQs",
"privacy_security": "Privacy & Security",
"messages": "Messages"
},
"logout": {
"button": "Sign Out"
}
}
}
}