Feat: Rearranging Providers

This commit is contained in:
2026-09-16 13:44:14 +03:00
parent 3ad3a1b4d6
commit fdd1899c34
8 changed files with 32 additions and 20 deletions
@@ -1,6 +1,6 @@
<?php
namespace Modules\Core\Privacy\Providers;
namespace Modules\Core\Cart\Privacy;
use Lunar\Models\Cart;
use Lunar\Models\CartAddress;
@@ -1,6 +1,6 @@
<?php
namespace Modules\Core\Privacy\Providers;
namespace Modules\Core\Customer\Privacy;
use Lunar\Models\Address;
use Modules\Core\Privacy\Contracts\PersonalDataProvider;
@@ -17,8 +17,7 @@ use Modules\Core\Privacy\DTOs\UserSubject;
* OrderAddress, handled by OrderDataProvider), so they're freely deleted outright
* rather than pseudonymized in place.
*/
class
AddressDataProvider implements PersonalDataProvider
class AddressDataProvider implements PersonalDataProvider
{
public function name(): string
{
@@ -1,6 +1,6 @@
<?php
namespace Modules\Core\Privacy\Providers;
namespace Modules\Core\Customer\Privacy;
use Lunar\Models\Customer;
use Modules\Core\Privacy\Contracts\PersonalDataProvider;
@@ -1,6 +1,6 @@
<?php
namespace Modules\Core\Privacy\Providers;
namespace Modules\Core\Order\Privacy;
use Lunar\Models\Order;
use Lunar\Models\OrderAddress;
@@ -19,9 +19,11 @@ use ZipArchive;
* listener) without touching how the data is gathered.
*
* Column schema: every provider's data is either a list of associative arrays
* (rows directly) or a single associative array (one row) — see the providers in
* Modules\Core\Privacy\Providers, all of which return exactly one of those two
* shapes. Any nested array value within a row (e.g. an order's `addresses`) is
* (rows directly) or a single associative array (one row) — see the providers
* registered in config('core.privacy.providers'), each living in its own owning
* module's Privacy/ subdirectory (e.g. Modules\Core\Order\Privacy\
* OrderDataProvider), all of which return exactly one of those two shapes. Any
* nested array value within a row (e.g. an order's `addresses`) is
* JSON-encoded into that one cell rather than exploded into further columns —
* CsvWriter's generic stringify() behavior, not special-cased here.
*/
@@ -1,6 +1,6 @@
<?php
namespace Modules\Core\Privacy\Providers;
namespace Modules\Core\Review\Privacy;
use Illuminate\Database\Eloquent\Builder;
use Modules\Core\Privacy\Contracts\PersonalDataProvider;