nodejs delete s3 folder

const AWS = require('aws-sdk');

AWS.config.update({
  accessKeyId: 'YOUR_ACCESS_KEY',
  secretAccessKey: 'YOUR_SECRET_ACCESS_KEY',
  region: 'YOUR_REGION'
});

const s3 = new AWS.S3();

const deleteS3Folder = async (bucket, folderPath) => {
  const listObjectsResponse = await s3.listObjectsV2({
    Bucket: bucket,
    Prefix: folderPath
  }).promise();

  const objectsToDelete = listObjectsResponse.Contents.map(obj => ({ Key: obj.Key }));

  if (objectsToDelete.length > 0) {
    await s3.deleteObjects({
      Bucket: bucket,
      Delete: { Objects: objectsToDelete }
    }).promise();
  }

  if (listObjectsResponse.IsTruncated) {
    await deleteS3Folder(bucket, folderPath);
  }
};

// Example usage
const bucketName = 'YOUR_BUCKET_NAME';
const folderPathToDelete = 'path/to/your/folder/';

deleteS3Folder(bucketName, folderPathToDelete);