<?php

declare(strict_types=1);

namespace App\Models\Hodnotenie;

/**
 * Enum HodnotenieEnum
 */
enum HodnotenieEnum: string
{
    case kladne = 'kladne';
    case zaporne = 'zaporne';
    case neutralne = 'neutralne';

    /**
     * @return string[]
     */
    public static function labels(): array
    {
        return [
            'kladne' => 'kladné',
            'zaporne' => 'záporné',
            'neutralne' => 'neutrálne',
        ];
    }

    public function getLabel(): string
    {
        return match ($this) {
            self::kladne => 'kladné',
            self::zaporne => 'záporné',
            self::neutralne => 'neutrálne',
        };
    }

    public function color(): string
    {
        return match ($this) {
            self::kladne => 'success',
            self::zaporne => 'danger',
            self::neutralne => 'warning',
        };
    }
}
