/ app / Enums / MeetClassEnum.php
MeetClassEnum.php
 1  <?php
 2  
 3  namespace App\Enums;
 4  
 5  use Illuminate\Support\Collection;
 6  use Spatie\Enum\Enum;
 7  
 8  /**
 9   * @method static self online()
10   * @method static self physical()
11   * @method static self email()
12   */
13  class MeetClassEnum extends Enum
14  {
15      protected static function values(): array
16      {
17          return [
18              'online' => 1,
19              'physical' => 2,
20              'email' => 3,
21          ];
22      }
23  
24      public static function toCollection(): Collection
25      {
26          $array = [];
27  
28          foreach (self::values() as $name => $id) {
29              $array[] = [
30                  'id' => $id,
31                  'name' => __('meets.classes.'.$name),
32              ];
33          }
34  
35          return collect($array);
36      }
37  }