*/ private const ROLES = [ 'administrator', 'hr_manager', 'supervisor', 'department_manager', 'viewer', ]; public function run(): void { Utils::createRole(); $guardName = $this->guardName(); foreach (self::ROLES as $roleName) { Role::firstOrCreate([ 'name' => $roleName, 'guard_name' => $guardName, ]); } $admin = User::query()->where('email', 'admin@company.com')->first(); if ($admin !== null) { $admin->assignRole(Utils::getSuperAdminName()); } } private function guardName(): string { $guard = Utils::getFilamentAuthGuard(); return $guard !== '' ? $guard : (string) config('auth.defaults.guard', 'web'); } }