@@ -394,8 +394,11 @@ const getBucketAdditionalInfo = async (s3: S3, name: BucketName) =>
394
394
} )
395
395
} )
396
396
397
- const listBucketsForRegion = async ( s3 : S3 , resolveRegion : ( ) => void ) =>
398
- new Promise < { buckets : Bucket [ ] ; ownerId : Owner } > ( resolve => {
397
+ const listBucketsForRegion = async (
398
+ s3 : S3 ,
399
+ resolveRegion : ( ) => void
400
+ ) : Promise < { buckets : Bucket [ ] ; ownerId : Owner } > =>
401
+ new Promise ( resolve => {
399
402
s3 . listBuckets ( ( err : AWSError , data : ListBucketsOutput ) => {
400
403
/**
401
404
* No Data for the region
@@ -424,16 +427,20 @@ const listBucketsForRegion = async (s3: S3, resolveRegion: () => void) =>
424
427
} )
425
428
} )
426
429
427
- const listBucketObjects = async ( s3 : S3 , name : BucketName ) =>
428
- new Promise < S3Object [ ] > ( resolve => {
430
+ const listBucketObjects = async (
431
+ s3 : S3 ,
432
+ name : BucketName ,
433
+ params ?: { [ field : string ] : any }
434
+ ) : Promise < S3Object [ ] > =>
435
+ new Promise ( resolve => {
429
436
const contents : S3Object [ ] = [ ]
430
437
/**
431
438
* S3 Buckets can get quite large, so we limit the total number
432
439
* Of objects returned per bucket to 1000
433
440
*/
434
441
const opts : any = {
435
442
Bucket : name ,
436
- MaxKeys : awsBucketItemsLimit ,
443
+ ... ( params ?? { MaxKeys : awsBucketItemsLimit } ) ,
437
444
}
438
445
const listAllObjects = ( token ?: string ) => {
439
446
if ( token ) {
@@ -495,9 +502,11 @@ export interface RawAwsS3 {
495
502
export default async ( {
496
503
regions,
497
504
config,
505
+ params,
498
506
} : {
499
507
regions : string
500
508
config : Config
509
+ params : any
501
510
} ) : Promise < {
502
511
[ region : string ] : RawAwsS3 [ ]
503
512
} > =>
@@ -552,7 +561,11 @@ export default async ({
552
561
s3ForcePathStyle : true ,
553
562
} )
554
563
logger . debug ( lt . gettingBucketBasicInfo ( Name ) )
555
- const bucketObjectList : S3Object [ ] = await listBucketObjects ( s3 , Name )
564
+ const bucketObjectList : S3Object [ ] = await listBucketObjects (
565
+ s3 ,
566
+ Name ,
567
+ params
568
+ )
556
569
557
570
bucketData [ idx ] . Contents = [ ]
558
571
if ( ! isEmpty ( bucketObjectList ) ) {
0 commit comments