@@ -376,11 +376,8 @@ private function process(string $method, ?array $query, $data = false)
376376 if ($ pager ) {
377377 $ request = $ pager ->getFirstRequest ($ request , $ this , $ query );
378378 if ($ request instanceof CurlerPageRequestInterface) {
379- if (!$ request ->hasNextRequest ()) {
380- throw new LogicException ('No first request ' );
381- }
382- $ query = $ request ->getNextQuery () ?? $ query ;
383- $ request = $ request ->getNextRequest ();
379+ $ query = $ request ->getQuery () ?? $ query ;
380+ $ request = $ request ->getRequest ();
384381 }
385382 }
386383
@@ -455,15 +452,12 @@ private function paginate(string $method, ?array $query, $data = false): Generat
455452
456453 $ request = $ this ->createRequest ($ method , $ query , $ data );
457454 $ request = $ this ->Pager ->getFirstRequest ($ request , $ this , $ query );
458- if ($ request instanceof CurlerPageRequestInterface) {
459- if (!$ request ->hasNextRequest ()) {
460- throw new LogicException ('No first request ' );
461- }
462- $ query = $ request ->getNextQuery () ?? $ query ;
463- $ request = $ request ->getNextRequest ();
464- }
465455 $ prev = null ;
466456 do {
457+ if ($ request instanceof CurlerPageRequestInterface) {
458+ $ query = $ request ->getQuery () ?? $ query ;
459+ $ request = $ request ->getRequest ();
460+ }
467461 $ response = $ this ->doSendRequest ($ request );
468462 $ page = $ this ->Pager ->getPage (
469463 $ this ->getResponseBody ($ response ),
@@ -481,7 +475,6 @@ private function paginate(string $method, ?array $query, $data = false): Generat
481475 if (!$ page ->hasNextRequest ()) {
482476 break ;
483477 }
484- $ query = $ page ->getNextQuery () ?? $ query ;
485478 $ request = $ page ->getNextRequest ();
486479 $ prev = $ page ;
487480 } while (true );
@@ -655,6 +648,14 @@ public function getPager(): ?CurlerPagerInterface
655648 return $ this ->Pager ;
656649 }
657650
651+ /**
652+ * @inheritDoc
653+ */
654+ public function alwaysPaginates (): bool
655+ {
656+ return $ this ->AlwaysPaginate ;
657+ }
658+
658659 /**
659660 * @inheritDoc
660661 */
@@ -934,10 +935,8 @@ public function withoutMiddleware($middleware)
934935 /**
935936 * @inheritDoc
936937 */
937- public function withPager (
938- ?CurlerPagerInterface $ pager ,
939- bool $ alwaysPaginate = false
940- ) {
938+ public function withPager (?CurlerPagerInterface $ pager , bool $ alwaysPaginate = false )
939+ {
941940 return $ this
942941 ->with ('Pager ' , $ pager )
943942 ->with ('AlwaysPaginate ' , $ pager && $ alwaysPaginate );
0 commit comments