From 076beb246a6a2fa783a9ad6eb277fd37348b918a Mon Sep 17 00:00:00 2001 From: Quentin Gabriele <quentin.gabriele@gmail.com> Date: Thu, 11 Jan 2024 18:10:18 +0100 Subject: [PATCH] return models when reordering --- src/Models/Media.php | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/src/Models/Media.php b/src/Models/Media.php index 0a2090e..f2da25b 100644 --- a/src/Models/Media.php +++ b/src/Models/Media.php @@ -468,17 +468,18 @@ public function getSrcset(?string $conversion = null): Collection /** * @param null|(Closure(null|string $previous): string) $sequence + * @return EloquentCollection<int, static> */ - public static function reorder(array $keys, ?Closure $sequence = null, string $using = 'id'): void + public static function reorder(array $keys, ?Closure $sequence = null, string $using = 'id'): EloquentCollection { - /** @var EloquentCollection<int, Media> */ + /** @var EloquentCollection<int, static> */ $models = static::query() ->whereIn($using, $keys) ->get(); $models = $models->sortBy(function (Media $model) use ($keys, $using) { return array_search($model->{$using}, $keys); - }); + })->values(); $previous = $sequence ? null : -1; @@ -491,5 +492,7 @@ public static function reorder(array $keys, ?Closure $sequence = null, string $u $model->save(); } + return $models; + } }