diff --git a/packages/backend-core/src/objectStore/objectStore.ts b/packages/backend-core/src/objectStore/objectStore.ts index 064cc630d8..33b42e0131 100644 --- a/packages/backend-core/src/objectStore/objectStore.ts +++ b/packages/backend-core/src/objectStore/objectStore.ts @@ -478,7 +478,7 @@ export async function deleteFolder( if (existingObjectsResponse.Contents?.length === 0) { return } - const deleteParams: any = { + const deleteParams: { Bucket: string; Delete: { Objects: any[] } } = { Bucket: bucketName, Delete: { Objects: [], @@ -489,10 +489,12 @@ export async function deleteFolder( deleteParams.Delete.Objects.push({ Key: content.Key }) }) - const deleteResponse = await client.deleteObjects(deleteParams) - // can only empty 1000 items at once - if (deleteResponse.Deleted?.length === 1000) { - return deleteFolder(bucketName, folder) + if (deleteParams.Delete.Objects.length) { + const deleteResponse = await client.deleteObjects(deleteParams) + // can only empty 1000 items at once + if (deleteResponse.Deleted?.length === 1000) { + return deleteFolder(bucketName, folder) + } } }