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.
This commit is contained in:
Achintha Isuru
2026-01-24 19:28:14 -05:00
parent 5039743c03
commit 0cfc19fa60
24 changed files with 1302 additions and 4 deletions

View File

@@ -8,22 +8,22 @@ import 'package:flutter_modular/flutter_modular.dart';
extension ProfileNavigator on IModularNavigator {
/// Navigates to the personal info page.
void pushPersonalInfo() {
pushNamed('/personal-info');
pushNamed('/profile/onboarding/personal-info');
}
/// Navigates to the emergency contact page.
void pushEmergencyContact() {
pushNamed('/emergency-contact');
pushNamed('/profile/onboarding/emergency-contact');
}
/// Navigates to the experience page.
void pushExperience() {
pushNamed('/experience');
pushNamed('/profile/onboarding/experience');
}
/// Navigates to the attire page.
void pushAttire() {
pushNamed('/attire');
pushNamed('/profile/onboarding/attire');
}
/// Navigates to the documents page.

View File

@@ -1,6 +1,7 @@
import 'package:flutter/material.dart';
import 'package:flutter_modular/flutter_modular.dart';
import 'package:krow_data_connect/krow_data_connect.dart';
import 'package:staff_profile_info/staff_profile_info.dart';
import 'data/repositories/profile_repository_impl.dart';
import 'domain/repositories/profile_repository.dart';
@@ -51,5 +52,6 @@ class StaffProfileModule extends Module {
@override
void routes(RouteManager r) {
r.child('/', child: (BuildContext context) => const StaffProfilePage());
r.module('/onboarding', module: StaffProfileInfoModule());
}
}

View File

@@ -28,6 +28,10 @@ dependencies:
path: ../../../domain
krow_data_connect:
path: ../../../data_connect
# Feature Packages
staff_profile_info:
path: ../profile_sections/onboarding/profile_info
dev_dependencies:
flutter_test: