<?php

declare(strict_types=1);

namespace App\Domain\Media;

enum ImageVariantType: string
{
    case THUMBNAIL = 'thumbnail';
    case GALLERY = 'gallery';
    case HERO = 'hero';

    public function getSizes(): array
    {
        return match ($this) {
            self::THUMBNAIL => [
                ImageSize::SMALL,
                ImageSize::MEDIUM,
            ],
            self::GALLERY => [
                ImageSize::SMALL,
                ImageSize::MEDIUM,
                ImageSize::LARGE,
            ],
            self::HERO => [
                ImageSize::SMALL,
                ImageSize::MEDIUM,
                ImageSize::LARGE,
                ImageSize::XLARGE,
            ],
        };
    }
}
