@@ -110,6 +110,7 @@ const create = (defaults: InstanceDefaults): Got => {
110
110
return result ;
111
111
} ) ) ;
112
112
113
+ // Got interface
113
114
const got : Got = ( ( url : string | URL , options ?: Options ) : GotReturn => {
114
115
let iteration = 0 ;
115
116
const iterateHandlers = ( newOptions : NormalizedOptions ) : GotReturn => {
@@ -190,7 +191,8 @@ const create = (defaults: InstanceDefaults): Got => {
190
191
} ) ;
191
192
} ;
192
193
193
- got . paginate = ( async function * < T , R > ( url : string | URL , options ?: OptionsWithPagination < T , R > ) {
194
+ // Pagination
195
+ const paginateEach = ( async function * < T , R > ( url : string | URL , options ?: OptionsWithPagination < T , R > ) {
194
196
let normalizedOptions = normalizeArguments ( url , options , defaults . options ) ;
195
197
normalizedOptions . resolveBodyOnly = false ;
196
198
@@ -247,6 +249,10 @@ const create = (defaults: InstanceDefaults): Got => {
247
249
248
250
numberOfRequests ++ ;
249
251
}
252
+ } ) ;
253
+
254
+ got . paginate = ( < T , R > ( url : string | URL , options ?: OptionsWithPagination < T , R > ) => {
255
+ return paginateEach ( url , options ) ;
250
256
} ) as GotPaginate ;
251
257
252
258
got . paginate . all = ( async < T , R > ( url : string | URL , options ?: OptionsWithPagination < T , R > ) => {
@@ -259,8 +265,13 @@ const create = (defaults: InstanceDefaults): Got => {
259
265
return results ;
260
266
} ) as GotPaginate [ 'all' ] ;
261
267
268
+ // For those who like very descriptive names
269
+ got . paginate . each = paginateEach as GotPaginate [ 'each' ] ;
270
+
271
+ // Stream API
262
272
got . stream = ( ( url : string | URL , options ?: StreamOptions ) => got ( url , { ...options , isStream : true } ) ) as GotStream ;
263
273
274
+ // Shortcuts
264
275
for ( const method of aliases ) {
265
276
got [ method ] = ( ( url : string | URL , options ?: Options ) : GotReturn => got ( url , { ...options , method} ) ) as GotRequestFunction ;
266
277
1 commit comments
szmarczak commentedon May 14, 2020
Whoops, I forgot to add docs...