Implement compliance exports and retention overrides
Some checks failed
linter / quality (push) Has been cancelled
tests / ci (push) Has been cancelled
tests / ui (push) Has been cancelled

This commit is contained in:
Codex Agent
2026-01-02 20:13:45 +01:00
parent 5fd546c428
commit eed7699549
45 changed files with 2319 additions and 40 deletions

View File

@@ -8,6 +8,7 @@ use App\Http\Controllers\Api\PackageController;
use App\Http\Controllers\Api\SparkboothUploadController;
use App\Http\Controllers\Api\Tenant\AdminPushSubscriptionController;
use App\Http\Controllers\Api\Tenant\DashboardController;
use App\Http\Controllers\Api\Tenant\DataExportController;
use App\Http\Controllers\Api\Tenant\EmotionController;
use App\Http\Controllers\Api\Tenant\EventAddonCatalogController;
use App\Http\Controllers\Api\Tenant\EventAddonController;
@@ -293,6 +294,15 @@ Route::prefix('v1')->name('api.v1.')->group(function () {
->name('tenant.settings.notifications.update');
});
Route::middleware('tenant.admin')->group(function () {
Route::get('exports', [DataExportController::class, 'index'])
->name('tenant.exports.index');
Route::post('exports', [DataExportController::class, 'store'])
->name('tenant.exports.store');
Route::get('exports/{export}/download', [DataExportController::class, 'download'])
->name('tenant.exports.download');
});
Route::get('notifications/logs', [NotificationLogController::class, 'index'])
->middleware('tenant.admin')
->name('tenant.notifications.logs.index');