Skip to content

Commit 1219e93

Browse files
committed
fix media resource
1 parent f67eb79 commit 1219e93

File tree

1 file changed

+19
-1
lines changed

1 file changed

+19
-1
lines changed

packages/api/src/Domain/Media/JsonApi/V1/MediaResource.php

Lines changed: 19 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,13 +30,31 @@ public function attributes($request): iterable
3030
*/
3131
protected function allAttributes($request): iterable
3232
{
33-
if (! $request->has('media_conversions')) {
33+
if (! $request->has('media_conversions') && ! $request->has('media_conversion')) {
3434
return parent::allAttributes($request);
3535
}
3636

3737
/** @var Media $model */
3838
$model = $this->resource;
3939

40+
// Only one conversion
41+
if ($request->has('media_conversion')) {
42+
$conversion = $request->get('media_conversion', '');
43+
44+
// If the conversion is not available, return the default attributes
45+
if (! $model->hasGeneratedConversion($conversion)) {
46+
return parent::allAttributes($request);
47+
}
48+
49+
return [
50+
...parent::allAttributes($request),
51+
'path' => $model->getPath($conversion),
52+
'url' => $model->getFullUrl($conversion),
53+
'srcset' => $model->getSrcset($conversion),
54+
];
55+
}
56+
57+
// Multiple conversions
4058
$conversions = array_filter(
4159
explode(',', $request->get('media_conversions', '')),
4260
fn ($conversion) => $model->hasGeneratedConversion($conversion),

0 commit comments

Comments
 (0)