init
This commit is contained in:
49
app/Enums/ResponseStatus.php
Normal file
49
app/Enums/ResponseStatus.php
Normal file
@@ -0,0 +1,49 @@
|
||||
<?php
|
||||
|
||||
namespace App\Enums;
|
||||
|
||||
use Filament\Support\Contracts\HasColor;
|
||||
use Filament\Support\Contracts\HasIcon;
|
||||
use Filament\Support\Contracts\HasLabel;
|
||||
|
||||
enum ResponseStatus: string implements HasColor, HasIcon, HasLabel
|
||||
{
|
||||
case CacheHit = 'cache_hit';
|
||||
case ApiFetched = 'api_fetched';
|
||||
case NotFound = 'not_found';
|
||||
case Error = 'error';
|
||||
case ContactSubmitted = 'contact_submitted';
|
||||
|
||||
public function getLabel(): string
|
||||
{
|
||||
return match ($this) {
|
||||
self::CacheHit => 'Cache Hit',
|
||||
self::ApiFetched => 'API Fetched',
|
||||
self::NotFound => 'Not Found',
|
||||
self::Error => 'Error',
|
||||
self::ContactSubmitted => 'Contact Submitted',
|
||||
};
|
||||
}
|
||||
|
||||
public function getColor(): string
|
||||
{
|
||||
return match ($this) {
|
||||
self::CacheHit => 'success',
|
||||
self::ApiFetched => 'info',
|
||||
self::NotFound => 'warning',
|
||||
self::Error => 'danger',
|
||||
self::ContactSubmitted => 'primary',
|
||||
};
|
||||
}
|
||||
|
||||
public function getIcon(): string
|
||||
{
|
||||
return match ($this) {
|
||||
self::CacheHit => 'heroicon-m-check-circle',
|
||||
self::ApiFetched => 'heroicon-m-cloud-arrow-down',
|
||||
self::NotFound => 'heroicon-m-magnifying-glass',
|
||||
self::Error => 'heroicon-m-x-circle',
|
||||
self::ContactSubmitted => 'heroicon-m-envelope',
|
||||
};
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user