34 lines
656 B
PHP
34 lines
656 B
PHP
<?php
|
|
|
|
namespace App\Enums;
|
|
|
|
use App\Traits\Enums\WithCommentEnum;
|
|
use App\Traits\Enums\WithValueEnum;
|
|
|
|
enum ArticleStatus: int
|
|
{
|
|
use WithCommentEnum, WithValueEnum;
|
|
|
|
case PUBLISHED = 1;
|
|
case DRAFT = 2;
|
|
case ARCHIVED = 3;
|
|
|
|
public function label(): string
|
|
{
|
|
return match ($this) {
|
|
self::PUBLISHED => 'Publish',
|
|
self::DRAFT => 'Draft',
|
|
self::ARCHIVED => 'Arsip',
|
|
};
|
|
}
|
|
|
|
public function color(): string
|
|
{
|
|
return match ($this) {
|
|
self::PUBLISHED => 'emerald',
|
|
self::DRAFT => 'yellow',
|
|
self::ARCHIVED => 'rose',
|
|
};
|
|
}
|
|
}
|