ItemResource::toArray()   A
last analyzed

Complexity

Conditions 1
Paths 1

Size

Total Lines 15
Code Lines 10

Duplication

Lines 0
Ratio 0 %

Importance

Changes 1
Bugs 0 Features 0
Metric Value
cc 1
eloc 10
c 1
b 0
f 0
nc 1
nop 1
dl 0
loc 15
rs 9.9332
1
<?php
2
3
namespace App\Http\Resources;
4
5
use Illuminate\Http\Resources\Json\JsonResource;
6
7
class ItemResource extends JsonResource
8
{
9
    /**
10
     * Transform the resource into an array.
11
     *
12
     * @param  \Illuminate\Http\Request  $request
13
     * @return array
14
     */
15
    public function toArray($request)
16
    {
17
        return [
18
            'type' => 'item',
19
            'id' => $this->id,
0 ignored issues
show
Bug Best Practice introduced by
The property id does not exist on App\Http\Resources\ItemResource. Since you implemented __get, consider adding a @property annotation.
Loading history...
20
            'barcode' => $this->barcode,
0 ignored issues
show
Bug Best Practice introduced by
The property barcode does not exist on App\Http\Resources\ItemResource. Since you implemented __get, consider adding a @property annotation.
Loading history...
21
            'note' => $this->note,
0 ignored issues
show
Bug Best Practice introduced by
The property note does not exist on App\Http\Resources\ItemResource. Since you implemented __get, consider adding a @property annotation.
Loading history...
22
            'created_at' => $this->created_at->toDateTimeString(),
0 ignored issues
show
Bug Best Practice introduced by
The property created_at does not exist on App\Http\Resources\ItemResource. Since you implemented __get, consider adding a @property annotation.
Loading history...
23
            'updated_at' => $this->updated_at->toDateTimeString(),
0 ignored issues
show
Bug Best Practice introduced by
The property updated_at does not exist on App\Http\Resources\ItemResource. Since you implemented __get, consider adding a @property annotation.
Loading history...
24
25
            'thing' => ThingResource::make($this->whenLoaded('thing')),
26
            'library' => LibraryResource::make($this->whenLoaded('library')),
27
28
            // If 'loans' is eager-loaded, this will only require one query.
29
            'available' => count($this->loans) === 0,
0 ignored issues
show
Bug Best Practice introduced by
The property loans does not exist on App\Http\Resources\ItemResource. Since you implemented __get, consider adding a @property annotation.
Loading history...
30
        ];
31
    }
32
}
33