| 123456789101112131415161718192021222324252627282930313233343536373839404142434445 | 
							- <?php
 - 
 - namespace App\Enums;
 - 
 - use Filament\Support\Contracts\HasColor;
 - use Filament\Support\Contracts\HasIcon;
 - use Filament\Support\Contracts\HasLabel;
 - 
 - enum AccountStatus: string implements HasColor, HasIcon, HasLabel
 - {
 -     case Open = 'open';
 -     case Active = 'active';
 -     case Inactive = 'inactive';
 -     case Restricted = 'restricted';
 -     case Closed = 'closed';
 - 
 -     public const DEFAULT = self::Open->value;
 - 
 -     public function getLabel(): ?string
 -     {
 -         return translate($this->name);
 -     }
 - 
 -     public function getColor(): string | array | null
 -     {
 -         return match ($this) {
 -             self::Open => 'primary',
 -             self::Active => 'success',
 -             self::Inactive => 'gray',
 -             self::Restricted => 'warning',
 -             self::Closed => 'danger',
 -         };
 -     }
 - 
 -     public function getIcon(): ?string
 -     {
 -         return match ($this) {
 -             self::Open => 'heroicon-o-currency-dollar',
 -             self::Active => 'heroicon-o-clock',
 -             self::Inactive => 'heroicon-o-status-offline',
 -             self::Restricted => 'heroicon-o-exclamation',
 -             self::Closed => 'heroicon-o-x-circle',
 -         };
 -     }
 - }
 
 
  |