jikan-rest/app/Dto/QueryTopMangaItemsCommand.php
2023-07-21 22:02:58 +05:00

30 lines
892 B
PHP

<?php
namespace App\Dto;
use App\Casts\EnumCast;
use App\Contracts\DataRequest;
use App\Dto\Concerns\HasSfwParameter;
use App\Dto\Concerns\PreparesData;
use App\Enums\MangaTypeEnum;
use App\Enums\TopMangaFilterEnum;
use App\Http\Resources\V4\MangaCollection;
use App\Rules\Attributes\EnumValidation;
use Spatie\Enum\Laravel\Rules\EnumRule;
use Spatie\LaravelData\Attributes\WithCast;
use Spatie\LaravelData\Optional;
/**
* @implements DataRequest<MangaCollection>
*/
final class QueryTopMangaItemsCommand extends QueryTopItemsCommand implements DataRequest
{
use PreparesData, HasSfwParameter;
#[WithCast(EnumCast::class, MangaTypeEnum::class), EnumValidation(MangaTypeEnum::class)]
public MangaTypeEnum|Optional $type;
#[WithCast(EnumCast::class, TopMangaFilterEnum::class), EnumValidation(TopMangaFilterEnum::class)]
public TopMangaFilterEnum|Optional $filter;
}