vid-queue/app/Data/DataPipes/ReadExportFiles.php

38 lines
978 B
PHP
Raw Normal View History

<?php
namespace App\Data\DataPipes;
use App\Data\FileData;
2022-10-29 12:33:22 -05:00
use App\Data\WatchExport;
use Illuminate\Support\Collection;
2022-10-29 12:33:22 -05:00
use Spatie\LaravelData\DataCollection;
use Spatie\LaravelData\DataPipes\DataPipe;
use Spatie\LaravelData\Lazy;
use Spatie\LaravelData\Optional;
use Spatie\LaravelData\Support\DataClass;
use Spatie\LaravelData\Support\DataConfig;
use Spatie\LaravelData\Support\DataProperty;
class ReadExportFiles implements DataPipe
{
public function handle(mixed $payload, DataClass $class, Collection $properties): Collection
{
2022-10-29 12:33:22 -05:00
if (!$properties->has('files')) {
$properties['files'] = new DataCollection(WatchExport::class, []);
}
if (!$properties->get('files')->count()) {
return $properties;
}
$data = [];
foreach ($properties->get('files') as $file)
{
$data[] = $file->rawData;
}
$properties['rawData'] = $data;
return $properties;
}
}