forge/app/Http/Resources/Api/V0/UserResource.php

47 lines
1.2 KiB
PHP
Raw Permalink Normal View History

<?php
namespace App\Http\Resources\Api\V0;
use App\Http\Controllers\Api\V0\ApiController;
use App\Models\User;
use Illuminate\Http\Request;
use Illuminate\Http\Resources\Json\JsonResource;
/** @mixin User */
class UserResource extends JsonResource
{
2024-09-12 13:19:52 -04:00
/**
* Transform the resource into an array.
*/
public function toArray(Request $request): array
{
2024-10-12 13:19:54 -06:00
$this->load('role');
return [
'type' => 'user',
'id' => $this->id,
'attributes' => [
'name' => $this->name,
'user_role_id' => $this->user_role_id,
'created_at' => $this->created_at,
'updated_at' => $this->updated_at,
],
'relationships' => [
'user_role' => [
'data' => [
'type' => 'user_role',
'id' => $this->user_role_id,
],
],
],
'includes' => $this->when(
ApiController::shouldInclude('user_role'),
new UserRoleResource($this->role),
),
'links' => [
'self' => $this->profileUrl(),
],
];
}
}