$allowed */ protected function sortedQuery(Builder $query, array $allowed, string $default, string $defaultDir = 'asc'): Builder { $sort = request()->input('sort', $default); $dir = request()->input('direction', $defaultDir); if (! in_array($sort, $allowed, true)) { $sort = $default; } if (! in_array($dir, ['asc', 'desc'], true)) { $dir = $defaultDir; } return $query->orderBy($sort, $dir); } }