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.
This commit is contained in:
@@ -49,6 +49,7 @@ export 'src/entities/financial/staff_payment.dart';
|
||||
|
||||
// Profile
|
||||
export 'src/entities/profile/staff_document.dart';
|
||||
export 'src/entities/profile/attire_item.dart';
|
||||
|
||||
// Ratings & Penalties
|
||||
export 'src/entities/ratings/staff_rating.dart';
|
||||
|
||||
@@ -0,0 +1,33 @@
|
||||
import 'package:equatable/equatable.dart';
|
||||
|
||||
/// Represents an attire item that a staff member might need or possess.
|
||||
///
|
||||
/// Attire items are specific clothing or equipment required for jobs.
|
||||
class AttireItem extends Equatable {
|
||||
/// Unique identifier of the attire item.
|
||||
final String id;
|
||||
|
||||
/// Display name of the item.
|
||||
final String label;
|
||||
|
||||
/// Name of the icon to display (mapped in UI).
|
||||
final String? iconName;
|
||||
|
||||
/// URL of the reference image.
|
||||
final String? imageUrl;
|
||||
|
||||
/// Whether this item is mandatory for onboarding.
|
||||
final bool isMandatory;
|
||||
|
||||
/// Creates an [AttireItem].
|
||||
const AttireItem({
|
||||
required this.id,
|
||||
required this.label,
|
||||
this.iconName,
|
||||
this.imageUrl,
|
||||
this.isMandatory = false,
|
||||
});
|
||||
|
||||
@override
|
||||
List<Object?> get props => <Object?>[id, label, iconName, imageUrl, isMandatory];
|
||||
}
|
||||
Reference in New Issue
Block a user