From 68233f43efa0aa82b9410d6ae94f2721aeabef77 Mon Sep 17 00:00:00 2001 From: Konstantinos Arvanitakis Date: Wed, 16 Sep 2026 01:21:22 +0300 Subject: [PATCH] Feat: Privacy Concern redesign to match project structure --- docs/privacy.md | 2 +- src/Command/ProcessErasureRequestsCommand.php | 2 +- src/Privacy/Contracts/PersonalDataProvider.php | 8 ++++---- src/Privacy/{ => DTOs}/CustomerSubject.php | 2 +- src/Privacy/{ => DTOs}/ErasureReport.php | 4 +++- src/Privacy/{ => DTOs}/ExportReport.php | 2 +- src/Privacy/{ => DTOs}/ProviderErasureResult.php | 4 +++- src/Privacy/{ => DTOs}/ProviderExportResult.php | 2 +- src/Privacy/{ => DTOs}/UserSubject.php | 2 +- src/Privacy/{ => Enums}/ErasureOutcome.php | 2 +- src/Privacy/{ => Enums}/ErasureRequestStatus.php | 2 +- src/Privacy/{ => Enums}/ExportRequestStatus.php | 2 +- src/Privacy/Events/PersonalDataGathered.php | 2 +- .../Extensions/CustomerErasureActionsExtension.php | 2 +- .../Resources/DataErasureRequestResource.php | 4 ++-- .../Resources/DataExportRequestResource.php | 2 +- src/Privacy/Jobs/EraseDataSubjectJob.php | 2 +- src/Privacy/Jobs/ExportDataSubjectJob.php | 12 ++++++------ .../Listeners/CancelErasureOnLoginListener.php | 4 ++-- .../Listeners/CascadeCustomerErasureListener.php | 2 +- src/Privacy/Listeners/WriteExportToCsvListener.php | 2 +- src/Privacy/Models/DataErasureRequest.php | 4 ++-- src/Privacy/Models/DataExportRequest.php | 2 +- src/Privacy/Providers/AddressDataProvider.php | 13 +++++++------ src/Privacy/Providers/CartDataProvider.php | 10 +++++----- src/Privacy/Providers/CustomerDataProvider.php | 10 +++++----- src/Privacy/Providers/OrderDataProvider.php | 10 +++++----- src/Privacy/Providers/ReviewDataProvider.php | 10 +++++----- .../ErasureRequestsRelationManager.php | 4 ++-- .../ExportRequestsRelationManager.php | 2 +- .../RelationManagers/UserRelationManager.php | 2 +- src/Privacy/{ => Services}/PrivacyManager.php | 2 +- src/Privacy/{ => Services}/PrivacyService.php | 8 +++++++- 33 files changed, 77 insertions(+), 66 deletions(-) rename src/Privacy/{ => DTOs}/CustomerSubject.php (96%) rename src/Privacy/{ => DTOs}/ErasureReport.php (90%) rename src/Privacy/{ => DTOs}/ExportReport.php (95%) rename src/Privacy/{ => DTOs}/ProviderErasureResult.php (85%) rename src/Privacy/{ => DTOs}/ProviderExportResult.php (92%) rename src/Privacy/{ => DTOs}/UserSubject.php (96%) rename src/Privacy/{ => Enums}/ErasureOutcome.php (91%) rename src/Privacy/{ => Enums}/ErasureRequestStatus.php (79%) rename src/Privacy/{ => Enums}/ExportRequestStatus.php (78%) rename src/Privacy/{ => Services}/PrivacyManager.php (97%) rename src/Privacy/{ => Services}/PrivacyService.php (97%) diff --git a/docs/privacy.md b/docs/privacy.md index 1cc4dba..c74db14 100644 --- a/docs/privacy.md +++ b/docs/privacy.md @@ -169,7 +169,7 @@ no one — a business-account erasure must never block anyone's access. `Modules\Core\Auth\Services\UserOtpService` — nothing else changes). ```php -use Modules\Core\Privacy\PrivacyService; +use Modules\Core\Privacy\Services\PrivacyService; $service = app(PrivacyService::class); diff --git a/src/Command/ProcessErasureRequestsCommand.php b/src/Command/ProcessErasureRequestsCommand.php index ff13523..59e6962 100644 --- a/src/Command/ProcessErasureRequestsCommand.php +++ b/src/Command/ProcessErasureRequestsCommand.php @@ -3,7 +3,7 @@ namespace Modules\Core\Command; use Illuminate\Console\Command; -use Modules\Core\Privacy\ErasureRequestStatus; +use Modules\Core\Privacy\Enums\ErasureRequestStatus; use Modules\Core\Privacy\Jobs\EraseDataSubjectJob; use Modules\Core\Privacy\Models\DataErasureRequest; diff --git a/src/Privacy/Contracts/PersonalDataProvider.php b/src/Privacy/Contracts/PersonalDataProvider.php index 02e24b7..abd0023 100644 --- a/src/Privacy/Contracts/PersonalDataProvider.php +++ b/src/Privacy/Contracts/PersonalDataProvider.php @@ -2,10 +2,10 @@ namespace Modules\Core\Privacy\Contracts; -use Modules\Core\Privacy\CustomerSubject; -use Modules\Core\Privacy\ProviderErasureResult; -use Modules\Core\Privacy\ProviderExportResult; -use Modules\Core\Privacy\UserSubject; +use Modules\Core\Privacy\DTOs\CustomerSubject; +use Modules\Core\Privacy\DTOs\ProviderErasureResult; +use Modules\Core\Privacy\DTOs\ProviderExportResult; +use Modules\Core\Privacy\DTOs\UserSubject; /** * Implemented by any module that holds personal data and wants it included in diff --git a/src/Privacy/CustomerSubject.php b/src/Privacy/DTOs/CustomerSubject.php similarity index 96% rename from src/Privacy/CustomerSubject.php rename to src/Privacy/DTOs/CustomerSubject.php index d8d00c9..0f2cd5a 100644 --- a/src/Privacy/CustomerSubject.php +++ b/src/Privacy/DTOs/CustomerSubject.php @@ -1,6 +1,6 @@ User relation manager to add: diff --git a/src/Privacy/PrivacyManager.php b/src/Privacy/Services/PrivacyManager.php similarity index 97% rename from src/Privacy/PrivacyManager.php rename to src/Privacy/Services/PrivacyManager.php index dbea65b..06432dd 100644 --- a/src/Privacy/PrivacyManager.php +++ b/src/Privacy/Services/PrivacyManager.php @@ -1,6 +1,6 @@