diff --git a/app/Enums/ContainerStatus.php b/app/Enums/ContainerStatus.php index d99284763..436cdce68 100644 --- a/app/Enums/ContainerStatus.php +++ b/app/Enums/ContainerStatus.php @@ -11,4 +11,33 @@ enum ContainerStatus: string case Paused = 'paused'; case Dead = 'dead'; case Removing = 'removing'; + case Missing = 'missing'; + + public function icon(): string + { + return match ($this) { + self::Created => 'tabler-heart-plus', + self::Running => 'tabler-heartbeat', + self::Restarting => 'tabler-heart-bolt', + self::Exited => 'tabler-heart-exclamation', + self::Paused => 'tabler-heart-pause', + self::Dead => 'tabler-heart-x', + self::Removing => 'tabler-heart-down', + self::Missing => 'tabler-heart-question', + }; + } + + public function color(): string + { + return match ($this) { + self::Created => 'primary', + self::Running => 'success', + self::Restarting => 'info', + self::Exited => 'danger', + self::Paused => 'warning', + self::Dead => 'danger', + self::Removing => 'warning', + self::Missing => 'gray', + }; + } } diff --git a/app/Enums/ServerState.php b/app/Enums/ServerState.php new file mode 100644 index 000000000..050c230b6 --- /dev/null +++ b/app/Enums/ServerState.php @@ -0,0 +1,37 @@ + 'tabler-heart', + self::Installing => 'tabler-heart-bolt', + self::InstallFailed => 'tabler-heart-x', + self::ReinstallFailed => 'tabler-heart-x', + self::Suspended => 'tabler-heart-cancel', + self::RestoringBackup => 'tabler-heart-up', + }; + } + + public function color(): string + { + return match ($this) { + self::None => 'primary', + self::Installing => 'info', + self::InstallFailed => 'danger', + self::ReinstallFailed => 'danger', + self::Suspended => 'danger', + self::RestoringBackup => 'info', + }; + } +}