*/ public function toArray(Request $request): array { $locale = app()->getLocale(); return [ 'id' => $this->id, 'name' => $this->name, 'slug' => $this->slug, 'sector' => $this->getTranslation('sector', $locale, false) ?: null, 'url' => $this->url, // The logo's alt text is the organisation's name, so there is // nothing to type and nothing to get wrong. 'logo' => ImagePayload::make( $this->logo, $this->resource->relationLoaded('logoMedia') ? $this->resource->getRelation('logoMedia') : null, $this->name, ), 'projects_count' => $this->whenCounted('projects'), 'projects' => PublicProjectResource::collection($this->whenLoaded('projects')), ]; } }