1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28
|
<?php
namespace Illuminate\Tests\Integration\Http\Fixtures;
use Illuminate\Http\Resources\Json\JsonResource;
class PostResourceWithAnonymousResourceCollectionWithPaginationInformation extends JsonResource
{
public function toArray($request)
{
return ['id' => $this->id, 'title' => $this->title, 'custom' => true];
}
/**
* Create a new anonymous resource collection.
*
* @param mixed $resource
* @return \Illuminate\Tests\Integration\Http\Fixtures\AnonymousResourceCollectionWithPaginationInformation
*/
public static function collection($resource)
{
return tap(new AnonymousResourceCollectionWithPaginationInformation($resource, static::class), function ($collection) {
if (property_exists(static::class, 'preserveKeys')) {
$collection->preserveKeys = (new static([]))->preserveKeys === true;
}
});
}
}
|