File: /mnt/data/ghayatcom/ghayatcom-api/app/Http/Resources/CountryCollection.php
<?php
namespace App\Http\Resources;
use Illuminate\Http\Resources\Json\ResourceCollection;
class CountryCollection extends ResourceCollection
{
/**
* Transform the resource collection into an array.
*
* @param \Illuminate\Http\Request $request
* @return array
*/
private $code;
public function __construct($resource, $code = 200)
{
parent::__construct($resource);
$this->code = $code;
}
public function toArray($request)
{
return [
'code' => $this->code,
'message' => [__('digimed_validation.success_response.data_fetch_success')],
'data' => ['countries' => $this->collection->map(function ($item) {
/**
* @var object $item
*/
return [
'id' => $item->id,
'name' => $item->name,
'iso3' => $item->iso3,
'iso2' => $item->iso2,
'phone_code' => $item->phone_code,
'capital' => $item->capital,
'currency' => $item->currency,
];
})],
];
}
public function withResponse($request, $response)
{
/** @var array $jsonResponse */
$jsonResponse = json_decode($response->getContent(), true);
unset($jsonResponse['links']);
$response->setContent(json_encode($jsonResponse));
}
}