From 11a9a7800c3a0e1234631653334ddc9c5758d938 Mon Sep 17 00:00:00 2001 From: Achintha Isuru Date: Wed, 18 Feb 2026 20:58:49 -0500 Subject: [PATCH] feat: Implement Privacy & Security Settings Module for Staff - Add PrivacySettingsRepositoryImpl to handle backend communication for privacy settings. - Create PrivacySettingsEntity to represent user privacy preferences. - Define PrivacySettingsRepositoryInterface for repository operations. - Implement use cases for fetching and updating profile visibility, terms of service, and privacy policy. - Create PrivacyPolicyCubit and TermsCubit for managing legal document states. - Develop PrivacySecurityBloc to manage privacy and security settings state. - Create UI pages for Privacy Policy and Terms of Service with corresponding widgets. - Implement PrivacySectionWidget and LegalSectionWidget for displaying privacy settings and legal documents. - Add settings action tiles and section headers for better UI organization. - Update pubspec.yaml with necessary dependencies and asset paths. --- .../privacy_security/lib/src/assets/legal/privacy_policy.txt | 0 .../privacy_security/lib/src/assets/legal/terms_of_service.txt | 0 .../data/repositories_impl/privacy_settings_repository_impl.dart | 0 .../lib/src/domain/entities/privacy_settings_entity.dart | 0 .../repositories/privacy_settings_repository_interface.dart | 0 .../lib/src/domain/usecases/get_privacy_policy_usecase.dart | 0 .../lib/src/domain/usecases/get_profile_visibility_usecase.dart | 0 .../lib/src/domain/usecases/get_terms_usecase.dart | 0 .../src/domain/usecases/update_profile_visibility_usecase.dart | 0 .../lib/src/presentation/blocs/legal/privacy_policy_cubit.dart | 0 .../lib/src/presentation/blocs/legal/terms_cubit.dart | 0 .../lib/src/presentation/blocs/privacy_security_bloc.dart | 0 .../lib/src/presentation/blocs/privacy_security_event.dart | 0 .../lib/src/presentation/blocs/privacy_security_state.dart | 0 .../lib/src/presentation/pages/legal/privacy_policy_page.dart | 0 .../lib/src/presentation/pages/legal/terms_of_service_page.dart | 0 .../lib/src/presentation/pages/privacy_security_page.dart | 0 .../lib/src/presentation/widgets/legal/legal_section_widget.dart | 0 .../src/presentation/widgets/privacy/privacy_section_widget.dart | 0 .../lib/src/presentation/widgets/settings_action_tile_widget.dart | 0 .../lib/src/presentation/widgets/settings_divider_widget.dart | 0 .../src/presentation/widgets/settings_section_header_widget.dart | 0 .../lib/src/presentation/widgets/settings_switch_tile_widget.dart | 0 .../privacy_security/lib/src/staff_privacy_security_module.dart | 0 .../privacy_security/lib/staff_privacy_security.dart | 0 .../{settings => support}/privacy_security/pubspec.yaml | 0 26 files changed, 0 insertions(+), 0 deletions(-) rename apps/mobile/packages/features/staff/profile_sections/{settings => support}/privacy_security/lib/src/assets/legal/privacy_policy.txt (100%) rename apps/mobile/packages/features/staff/profile_sections/{settings => support}/privacy_security/lib/src/assets/legal/terms_of_service.txt (100%) rename apps/mobile/packages/features/staff/profile_sections/{settings => support}/privacy_security/lib/src/data/repositories_impl/privacy_settings_repository_impl.dart (100%) rename apps/mobile/packages/features/staff/profile_sections/{settings => support}/privacy_security/lib/src/domain/entities/privacy_settings_entity.dart (100%) rename apps/mobile/packages/features/staff/profile_sections/{settings => support}/privacy_security/lib/src/domain/repositories/privacy_settings_repository_interface.dart (100%) rename apps/mobile/packages/features/staff/profile_sections/{settings => support}/privacy_security/lib/src/domain/usecases/get_privacy_policy_usecase.dart (100%) rename apps/mobile/packages/features/staff/profile_sections/{settings => support}/privacy_security/lib/src/domain/usecases/get_profile_visibility_usecase.dart (100%) rename apps/mobile/packages/features/staff/profile_sections/{settings => support}/privacy_security/lib/src/domain/usecases/get_terms_usecase.dart (100%) rename apps/mobile/packages/features/staff/profile_sections/{settings => support}/privacy_security/lib/src/domain/usecases/update_profile_visibility_usecase.dart (100%) rename apps/mobile/packages/features/staff/profile_sections/{settings => support}/privacy_security/lib/src/presentation/blocs/legal/privacy_policy_cubit.dart (100%) rename apps/mobile/packages/features/staff/profile_sections/{settings => support}/privacy_security/lib/src/presentation/blocs/legal/terms_cubit.dart (100%) rename apps/mobile/packages/features/staff/profile_sections/{settings => support}/privacy_security/lib/src/presentation/blocs/privacy_security_bloc.dart (100%) rename apps/mobile/packages/features/staff/profile_sections/{settings => support}/privacy_security/lib/src/presentation/blocs/privacy_security_event.dart (100%) rename apps/mobile/packages/features/staff/profile_sections/{settings => support}/privacy_security/lib/src/presentation/blocs/privacy_security_state.dart (100%) rename apps/mobile/packages/features/staff/profile_sections/{settings => support}/privacy_security/lib/src/presentation/pages/legal/privacy_policy_page.dart (100%) rename apps/mobile/packages/features/staff/profile_sections/{settings => support}/privacy_security/lib/src/presentation/pages/legal/terms_of_service_page.dart (100%) rename apps/mobile/packages/features/staff/profile_sections/{settings => support}/privacy_security/lib/src/presentation/pages/privacy_security_page.dart (100%) rename apps/mobile/packages/features/staff/profile_sections/{settings => support}/privacy_security/lib/src/presentation/widgets/legal/legal_section_widget.dart (100%) rename apps/mobile/packages/features/staff/profile_sections/{settings => support}/privacy_security/lib/src/presentation/widgets/privacy/privacy_section_widget.dart (100%) rename apps/mobile/packages/features/staff/profile_sections/{settings => support}/privacy_security/lib/src/presentation/widgets/settings_action_tile_widget.dart (100%) rename apps/mobile/packages/features/staff/profile_sections/{settings => support}/privacy_security/lib/src/presentation/widgets/settings_divider_widget.dart (100%) rename apps/mobile/packages/features/staff/profile_sections/{settings => support}/privacy_security/lib/src/presentation/widgets/settings_section_header_widget.dart (100%) rename apps/mobile/packages/features/staff/profile_sections/{settings => support}/privacy_security/lib/src/presentation/widgets/settings_switch_tile_widget.dart (100%) rename apps/mobile/packages/features/staff/profile_sections/{settings => support}/privacy_security/lib/src/staff_privacy_security_module.dart (100%) rename apps/mobile/packages/features/staff/profile_sections/{settings => support}/privacy_security/lib/staff_privacy_security.dart (100%) rename apps/mobile/packages/features/staff/profile_sections/{settings => support}/privacy_security/pubspec.yaml (100%) diff --git a/apps/mobile/packages/features/staff/profile_sections/settings/privacy_security/lib/src/assets/legal/privacy_policy.txt b/apps/mobile/packages/features/staff/profile_sections/support/privacy_security/lib/src/assets/legal/privacy_policy.txt similarity index 100% rename from apps/mobile/packages/features/staff/profile_sections/settings/privacy_security/lib/src/assets/legal/privacy_policy.txt rename to apps/mobile/packages/features/staff/profile_sections/support/privacy_security/lib/src/assets/legal/privacy_policy.txt diff --git a/apps/mobile/packages/features/staff/profile_sections/settings/privacy_security/lib/src/assets/legal/terms_of_service.txt b/apps/mobile/packages/features/staff/profile_sections/support/privacy_security/lib/src/assets/legal/terms_of_service.txt similarity index 100% rename from apps/mobile/packages/features/staff/profile_sections/settings/privacy_security/lib/src/assets/legal/terms_of_service.txt rename to apps/mobile/packages/features/staff/profile_sections/support/privacy_security/lib/src/assets/legal/terms_of_service.txt diff --git a/apps/mobile/packages/features/staff/profile_sections/settings/privacy_security/lib/src/data/repositories_impl/privacy_settings_repository_impl.dart b/apps/mobile/packages/features/staff/profile_sections/support/privacy_security/lib/src/data/repositories_impl/privacy_settings_repository_impl.dart similarity index 100% rename from apps/mobile/packages/features/staff/profile_sections/settings/privacy_security/lib/src/data/repositories_impl/privacy_settings_repository_impl.dart rename to apps/mobile/packages/features/staff/profile_sections/support/privacy_security/lib/src/data/repositories_impl/privacy_settings_repository_impl.dart diff --git a/apps/mobile/packages/features/staff/profile_sections/settings/privacy_security/lib/src/domain/entities/privacy_settings_entity.dart b/apps/mobile/packages/features/staff/profile_sections/support/privacy_security/lib/src/domain/entities/privacy_settings_entity.dart similarity index 100% rename from apps/mobile/packages/features/staff/profile_sections/settings/privacy_security/lib/src/domain/entities/privacy_settings_entity.dart rename to apps/mobile/packages/features/staff/profile_sections/support/privacy_security/lib/src/domain/entities/privacy_settings_entity.dart diff --git a/apps/mobile/packages/features/staff/profile_sections/settings/privacy_security/lib/src/domain/repositories/privacy_settings_repository_interface.dart b/apps/mobile/packages/features/staff/profile_sections/support/privacy_security/lib/src/domain/repositories/privacy_settings_repository_interface.dart similarity index 100% rename from apps/mobile/packages/features/staff/profile_sections/settings/privacy_security/lib/src/domain/repositories/privacy_settings_repository_interface.dart rename to apps/mobile/packages/features/staff/profile_sections/support/privacy_security/lib/src/domain/repositories/privacy_settings_repository_interface.dart diff --git a/apps/mobile/packages/features/staff/profile_sections/settings/privacy_security/lib/src/domain/usecases/get_privacy_policy_usecase.dart b/apps/mobile/packages/features/staff/profile_sections/support/privacy_security/lib/src/domain/usecases/get_privacy_policy_usecase.dart similarity index 100% rename from apps/mobile/packages/features/staff/profile_sections/settings/privacy_security/lib/src/domain/usecases/get_privacy_policy_usecase.dart rename to apps/mobile/packages/features/staff/profile_sections/support/privacy_security/lib/src/domain/usecases/get_privacy_policy_usecase.dart diff --git a/apps/mobile/packages/features/staff/profile_sections/settings/privacy_security/lib/src/domain/usecases/get_profile_visibility_usecase.dart b/apps/mobile/packages/features/staff/profile_sections/support/privacy_security/lib/src/domain/usecases/get_profile_visibility_usecase.dart similarity index 100% rename from apps/mobile/packages/features/staff/profile_sections/settings/privacy_security/lib/src/domain/usecases/get_profile_visibility_usecase.dart rename to apps/mobile/packages/features/staff/profile_sections/support/privacy_security/lib/src/domain/usecases/get_profile_visibility_usecase.dart diff --git a/apps/mobile/packages/features/staff/profile_sections/settings/privacy_security/lib/src/domain/usecases/get_terms_usecase.dart b/apps/mobile/packages/features/staff/profile_sections/support/privacy_security/lib/src/domain/usecases/get_terms_usecase.dart similarity index 100% rename from apps/mobile/packages/features/staff/profile_sections/settings/privacy_security/lib/src/domain/usecases/get_terms_usecase.dart rename to apps/mobile/packages/features/staff/profile_sections/support/privacy_security/lib/src/domain/usecases/get_terms_usecase.dart diff --git a/apps/mobile/packages/features/staff/profile_sections/settings/privacy_security/lib/src/domain/usecases/update_profile_visibility_usecase.dart b/apps/mobile/packages/features/staff/profile_sections/support/privacy_security/lib/src/domain/usecases/update_profile_visibility_usecase.dart similarity index 100% rename from apps/mobile/packages/features/staff/profile_sections/settings/privacy_security/lib/src/domain/usecases/update_profile_visibility_usecase.dart rename to apps/mobile/packages/features/staff/profile_sections/support/privacy_security/lib/src/domain/usecases/update_profile_visibility_usecase.dart diff --git a/apps/mobile/packages/features/staff/profile_sections/settings/privacy_security/lib/src/presentation/blocs/legal/privacy_policy_cubit.dart b/apps/mobile/packages/features/staff/profile_sections/support/privacy_security/lib/src/presentation/blocs/legal/privacy_policy_cubit.dart similarity index 100% rename from apps/mobile/packages/features/staff/profile_sections/settings/privacy_security/lib/src/presentation/blocs/legal/privacy_policy_cubit.dart rename to apps/mobile/packages/features/staff/profile_sections/support/privacy_security/lib/src/presentation/blocs/legal/privacy_policy_cubit.dart diff --git a/apps/mobile/packages/features/staff/profile_sections/settings/privacy_security/lib/src/presentation/blocs/legal/terms_cubit.dart b/apps/mobile/packages/features/staff/profile_sections/support/privacy_security/lib/src/presentation/blocs/legal/terms_cubit.dart similarity index 100% rename from apps/mobile/packages/features/staff/profile_sections/settings/privacy_security/lib/src/presentation/blocs/legal/terms_cubit.dart rename to apps/mobile/packages/features/staff/profile_sections/support/privacy_security/lib/src/presentation/blocs/legal/terms_cubit.dart diff --git a/apps/mobile/packages/features/staff/profile_sections/settings/privacy_security/lib/src/presentation/blocs/privacy_security_bloc.dart b/apps/mobile/packages/features/staff/profile_sections/support/privacy_security/lib/src/presentation/blocs/privacy_security_bloc.dart similarity index 100% rename from apps/mobile/packages/features/staff/profile_sections/settings/privacy_security/lib/src/presentation/blocs/privacy_security_bloc.dart rename to apps/mobile/packages/features/staff/profile_sections/support/privacy_security/lib/src/presentation/blocs/privacy_security_bloc.dart diff --git a/apps/mobile/packages/features/staff/profile_sections/settings/privacy_security/lib/src/presentation/blocs/privacy_security_event.dart b/apps/mobile/packages/features/staff/profile_sections/support/privacy_security/lib/src/presentation/blocs/privacy_security_event.dart similarity index 100% rename from apps/mobile/packages/features/staff/profile_sections/settings/privacy_security/lib/src/presentation/blocs/privacy_security_event.dart rename to apps/mobile/packages/features/staff/profile_sections/support/privacy_security/lib/src/presentation/blocs/privacy_security_event.dart diff --git a/apps/mobile/packages/features/staff/profile_sections/settings/privacy_security/lib/src/presentation/blocs/privacy_security_state.dart b/apps/mobile/packages/features/staff/profile_sections/support/privacy_security/lib/src/presentation/blocs/privacy_security_state.dart similarity index 100% rename from apps/mobile/packages/features/staff/profile_sections/settings/privacy_security/lib/src/presentation/blocs/privacy_security_state.dart rename to apps/mobile/packages/features/staff/profile_sections/support/privacy_security/lib/src/presentation/blocs/privacy_security_state.dart diff --git a/apps/mobile/packages/features/staff/profile_sections/settings/privacy_security/lib/src/presentation/pages/legal/privacy_policy_page.dart b/apps/mobile/packages/features/staff/profile_sections/support/privacy_security/lib/src/presentation/pages/legal/privacy_policy_page.dart similarity index 100% rename from apps/mobile/packages/features/staff/profile_sections/settings/privacy_security/lib/src/presentation/pages/legal/privacy_policy_page.dart rename to apps/mobile/packages/features/staff/profile_sections/support/privacy_security/lib/src/presentation/pages/legal/privacy_policy_page.dart diff --git a/apps/mobile/packages/features/staff/profile_sections/settings/privacy_security/lib/src/presentation/pages/legal/terms_of_service_page.dart b/apps/mobile/packages/features/staff/profile_sections/support/privacy_security/lib/src/presentation/pages/legal/terms_of_service_page.dart similarity index 100% rename from apps/mobile/packages/features/staff/profile_sections/settings/privacy_security/lib/src/presentation/pages/legal/terms_of_service_page.dart rename to apps/mobile/packages/features/staff/profile_sections/support/privacy_security/lib/src/presentation/pages/legal/terms_of_service_page.dart diff --git a/apps/mobile/packages/features/staff/profile_sections/settings/privacy_security/lib/src/presentation/pages/privacy_security_page.dart b/apps/mobile/packages/features/staff/profile_sections/support/privacy_security/lib/src/presentation/pages/privacy_security_page.dart similarity index 100% rename from apps/mobile/packages/features/staff/profile_sections/settings/privacy_security/lib/src/presentation/pages/privacy_security_page.dart rename to apps/mobile/packages/features/staff/profile_sections/support/privacy_security/lib/src/presentation/pages/privacy_security_page.dart diff --git a/apps/mobile/packages/features/staff/profile_sections/settings/privacy_security/lib/src/presentation/widgets/legal/legal_section_widget.dart b/apps/mobile/packages/features/staff/profile_sections/support/privacy_security/lib/src/presentation/widgets/legal/legal_section_widget.dart similarity index 100% rename from apps/mobile/packages/features/staff/profile_sections/settings/privacy_security/lib/src/presentation/widgets/legal/legal_section_widget.dart rename to apps/mobile/packages/features/staff/profile_sections/support/privacy_security/lib/src/presentation/widgets/legal/legal_section_widget.dart diff --git a/apps/mobile/packages/features/staff/profile_sections/settings/privacy_security/lib/src/presentation/widgets/privacy/privacy_section_widget.dart b/apps/mobile/packages/features/staff/profile_sections/support/privacy_security/lib/src/presentation/widgets/privacy/privacy_section_widget.dart similarity index 100% rename from apps/mobile/packages/features/staff/profile_sections/settings/privacy_security/lib/src/presentation/widgets/privacy/privacy_section_widget.dart rename to apps/mobile/packages/features/staff/profile_sections/support/privacy_security/lib/src/presentation/widgets/privacy/privacy_section_widget.dart diff --git a/apps/mobile/packages/features/staff/profile_sections/settings/privacy_security/lib/src/presentation/widgets/settings_action_tile_widget.dart b/apps/mobile/packages/features/staff/profile_sections/support/privacy_security/lib/src/presentation/widgets/settings_action_tile_widget.dart similarity index 100% rename from apps/mobile/packages/features/staff/profile_sections/settings/privacy_security/lib/src/presentation/widgets/settings_action_tile_widget.dart rename to apps/mobile/packages/features/staff/profile_sections/support/privacy_security/lib/src/presentation/widgets/settings_action_tile_widget.dart diff --git a/apps/mobile/packages/features/staff/profile_sections/settings/privacy_security/lib/src/presentation/widgets/settings_divider_widget.dart b/apps/mobile/packages/features/staff/profile_sections/support/privacy_security/lib/src/presentation/widgets/settings_divider_widget.dart similarity index 100% rename from apps/mobile/packages/features/staff/profile_sections/settings/privacy_security/lib/src/presentation/widgets/settings_divider_widget.dart rename to apps/mobile/packages/features/staff/profile_sections/support/privacy_security/lib/src/presentation/widgets/settings_divider_widget.dart diff --git a/apps/mobile/packages/features/staff/profile_sections/settings/privacy_security/lib/src/presentation/widgets/settings_section_header_widget.dart b/apps/mobile/packages/features/staff/profile_sections/support/privacy_security/lib/src/presentation/widgets/settings_section_header_widget.dart similarity index 100% rename from apps/mobile/packages/features/staff/profile_sections/settings/privacy_security/lib/src/presentation/widgets/settings_section_header_widget.dart rename to apps/mobile/packages/features/staff/profile_sections/support/privacy_security/lib/src/presentation/widgets/settings_section_header_widget.dart diff --git a/apps/mobile/packages/features/staff/profile_sections/settings/privacy_security/lib/src/presentation/widgets/settings_switch_tile_widget.dart b/apps/mobile/packages/features/staff/profile_sections/support/privacy_security/lib/src/presentation/widgets/settings_switch_tile_widget.dart similarity index 100% rename from apps/mobile/packages/features/staff/profile_sections/settings/privacy_security/lib/src/presentation/widgets/settings_switch_tile_widget.dart rename to apps/mobile/packages/features/staff/profile_sections/support/privacy_security/lib/src/presentation/widgets/settings_switch_tile_widget.dart diff --git a/apps/mobile/packages/features/staff/profile_sections/settings/privacy_security/lib/src/staff_privacy_security_module.dart b/apps/mobile/packages/features/staff/profile_sections/support/privacy_security/lib/src/staff_privacy_security_module.dart similarity index 100% rename from apps/mobile/packages/features/staff/profile_sections/settings/privacy_security/lib/src/staff_privacy_security_module.dart rename to apps/mobile/packages/features/staff/profile_sections/support/privacy_security/lib/src/staff_privacy_security_module.dart diff --git a/apps/mobile/packages/features/staff/profile_sections/settings/privacy_security/lib/staff_privacy_security.dart b/apps/mobile/packages/features/staff/profile_sections/support/privacy_security/lib/staff_privacy_security.dart similarity index 100% rename from apps/mobile/packages/features/staff/profile_sections/settings/privacy_security/lib/staff_privacy_security.dart rename to apps/mobile/packages/features/staff/profile_sections/support/privacy_security/lib/staff_privacy_security.dart diff --git a/apps/mobile/packages/features/staff/profile_sections/settings/privacy_security/pubspec.yaml b/apps/mobile/packages/features/staff/profile_sections/support/privacy_security/pubspec.yaml similarity index 100% rename from apps/mobile/packages/features/staff/profile_sections/settings/privacy_security/pubspec.yaml rename to apps/mobile/packages/features/staff/profile_sections/support/privacy_security/pubspec.yaml