Du kannst nicht mehr als 25 Themen auswählen Themen müssen mit entweder einem Buchstaben oder einer Ziffer beginnen. Sie können Bindestriche („-“) enthalten und bis zu 35 Zeichen lang sein.

InvoiceStatus.php 736B

123456789101112131415161718192021222324252627282930313233343536
  1. <?php
  2. namespace App\Enums\Accounting;
  3. use Filament\Support\Contracts\HasColor;
  4. use Filament\Support\Contracts\HasLabel;
  5. enum InvoiceStatus: string implements HasColor, HasLabel
  6. {
  7. case Draft = 'draft';
  8. case Sent = 'sent';
  9. case Partial = 'partial';
  10. case Paid = 'paid';
  11. case Overdue = 'overdue';
  12. case Void = 'void';
  13. public function getLabel(): ?string
  14. {
  15. return $this->name;
  16. }
  17. public function getColor(): string | array | null
  18. {
  19. return match ($this) {
  20. self::Draft, self::Void => 'gray',
  21. self::Sent => 'primary',
  22. self::Partial => 'warning',
  23. self::Paid => 'success',
  24. self::Overdue => 'danger',
  25. };
  26. }
  27. }