protected static function sort(JsonApiSerializer $serializer, Builder $builder, Model $model)
{
$mapping = $serializer->getTransformer()->getMappingByClassName(get_class($model));
$sorts = RequestFactory::create()->getSort()->sorting();
if (!empty($sorts)) {
$aliased = $mapping->getAliasedProperties();
$sortsFields = str_replace(array_values($aliased), array_keys($aliased), array_keys($sorts));
$sorts = array_combine($sortsFields, array_values($sorts));
foreach ($sorts as $field => $direction) {
$builder->orderBy($field, $direction === 'ascending' ? 'ASC' : 'DESC');
}
}
return $builder;
}