@@ -55,7 +55,6 @@ export interface BuildPagedAsyncIteratorOptions {
5555 nextPageRequestOptions ?: Record < string , unknown > ;
5656 cursorFieldName ?: string ;
5757 hasMoreFieldName ?: string ;
58- basePath ?: string ;
5958}
6059
6160/**
@@ -80,15 +79,14 @@ export function buildPagedAsyncIterator<
8079 const nextPageRequestOptions = options . nextPageRequestOptions ;
8180 const cursorFieldName = options . cursorFieldName ;
8281 const hasMoreFieldName = options . hasMoreFieldName ;
83- const basePath = options . basePath ;
84- let initialSearchParams : URLSearchParams | undefined ;
82+ let initialRequestUrl : URL | undefined ;
8583 const pagedResult : PagedResult < TElement , TPage , TPageSettings > = {
8684 getPage : async ( pageLink ?: string ) => {
8785 let result ;
8886 if ( pageLink === undefined ) {
8987 result = await getInitialResponse ( ) ;
90- if ( cursorFieldName && hasMoreFieldName && basePath ) {
91- initialSearchParams = new URL ( result . request . url ) . searchParams ;
88+ if ( cursorFieldName && hasMoreFieldName ) {
89+ initialRequestUrl = new URL ( result . request . url ) ;
9290 }
9391 } else {
9492 const resolvedPageLink = apiVersion ? addApiVersionToUrl ( pageLink , apiVersion ) : pageLink ;
@@ -101,11 +99,11 @@ export function buildPagedAsyncIterator<
10199 const results = await processResponseBody ( result as TResponse ) ;
102100 const nextLink = getNextLink ( results , nextLinkName ) ;
103101 let resolvedNextLink = nextLink ;
104- if ( ! resolvedNextLink && cursorFieldName && hasMoreFieldName && initialSearchParams ) {
102+ if ( ! resolvedNextLink && cursorFieldName && hasMoreFieldName && initialRequestUrl ) {
105103 const body = results as Record < string , unknown > ;
106104 if ( body [ hasMoreFieldName ] === true && body [ cursorFieldName ] ) {
107- initialSearchParams . set ( "after" , body [ cursorFieldName ] as string ) ;
108- resolvedNextLink = ` ${ basePath } ? ${ initialSearchParams . toString ( ) } ` ;
105+ initialRequestUrl . searchParams . set ( "after" , body [ cursorFieldName ] as string ) ;
106+ resolvedNextLink = initialRequestUrl . toString ( ) ;
109107 }
110108 }
111109 const values = getElements < TElement > ( results , itemName ) as TPage ;
0 commit comments