api/app/Enums/ModerationCaseStatus.php

35 lines
941 B
PHP

<?php
namespace App\Enums;
use Filament\Support\Contracts\HasColor;
use Filament\Support\Contracts\HasLabel;
enum ModerationCaseStatus: string implements HasColor, HasLabel
{
case OPEN = 'open';
case REVIEWING = 'reviewing';
case RESOLVED = 'resolved';
case REJECTED = 'rejected';
public function getLabel(): string
{
return match ($this) {
self::OPEN => __('enums.moderation_case_status.open'),
self::REVIEWING => __('enums.moderation_case_status.reviewing'),
self::RESOLVED => __('enums.moderation_case_status.resolved'),
self::REJECTED => __('enums.moderation_case_status.rejected'),
};
}
public function getColor(): string
{
return match ($this) {
self::OPEN => 'danger',
self::REVIEWING => 'warning',
self::RESOLVED => 'success',
self::REJECTED => 'gray',
};
}
}