33 lines
606 B
PHP
33 lines
606 B
PHP
<?php
|
|
|
|
namespace App\Enums;
|
|
|
|
enum StreamTypeEnum: string
|
|
{
|
|
case INCOME = 'income';
|
|
case EXPENSE = 'expense';
|
|
|
|
public function label(): string
|
|
{
|
|
return match ($this) {
|
|
self::INCOME => 'Income',
|
|
self::EXPENSE => 'Expense',
|
|
};
|
|
}
|
|
|
|
public static function values(): array
|
|
{
|
|
return array_column(self::cases(), 'value');
|
|
}
|
|
|
|
public static function labels(): array
|
|
{
|
|
$labels = [];
|
|
|
|
foreach (self::cases() as $case) {
|
|
$labels[$case->value] = $case->label();
|
|
}
|
|
|
|
return $labels;
|
|
}
|
|
}
|