как вернуть return коллекцию с пагинацией через resource Laravel?

если просто вернуть

    return $user->orders()->orderBy('created_at', 'desc')->paginate(10);

то коллекция с пагинацией будет, а когда пройдет через Resource, то получается объект без пагинации

    public function index(OrderInterface $orderService): JsonResponse
    {
        $user = Auth::user()
        return response()->json([
            'orders' => OrderResource::collection($user->orders()->orderBy('created_at', 'desc')->paginate(10))
        ]);
    }
    
    //в этом Resource есть вложенный Resource
    class OrderResource extends JsonResource
    {
        
        public function toArray($request)
        {
            return [
                'id' => $this->id,
                'customer' => $this->customer
                'products' => OrderProductResource::collection($this->products),
            ];
        }
    }
    
    class ProductResource extends JsonResource
    {
        
        public function toArray($request)
        {
            return [
                'id' => $this->id,
                'name' => $this->name,
                'purchase_price' => $this->purchase_price,
                'price' => $this->price,
                'quantity' => $this->quantity,
            ];
        }
    }

Ответы (2 шт):

Автор решения: lxShaDoWxl

что бы нормально вывести пагинацию надо делать

return OrderResource::collection($user->orders()->orderBy('created_at', 'desc')->paginate(10));

по другому всегда без пагинации поидеи будет

→ Ссылка
Автор решения: Prog Ramm
        public function index(): JsonResponse
            {
                
    $user = Auth::user()
            return response()->json([
                'orders' => OrderResource::collection($user->orders()->orderBy('created_at', 'desc')->paginate(10))
->response()->getData()
            ]);
            }
→ Ссылка