shouldPassThrough($request)) { return $next($request); } if ($this->checkRoutePermission($request)) { return $next($request); } if (!$user->roles->pluck('permissions')->flatten()->merge($user->permissions)->unique('id')->first(function ($permission) use ($request) { return $permission->shouldPassThrough($request); })) { Checker::error(); } return $next($request); } }