Как сделать правильно return? JS imap

Сейчас у меня выводиться в консоль console.log(partData); Как мне перенести partData в return функции emailCreate() ?

async function emailCreate() {
  var imaps = require('imap-simple');

  var config = {
    imap: {
      user: '',
      password: '',
      host: 'imap.gmail.com',
      port: 993,
      tls: true,
      tlsOptions: {rejectUnauthorized: false},
      authTimeout: 3000
    }
  };

  imaps.connect(config).then(function (connection) {
    connection.openBox('INBOX').then(function () {

      var searchCriteria = ['ALL'];
      var fetchOptions = {bodies: ['TEXT'], struct: true};
      return connection.search(searchCriteria, fetchOptions);

      //Loop over each message
    }).then(function (messages) {
      let taskList = messages.map(function (message) {
        return new Promise((res, rej) => {
          var parts = imaps.getParts(message.attributes.struct);
          parts.map(function (part) {
            return connection.getPartData(message, part)
              .then(function (partData) {

                //Display e-mail body
                if (part.disposition == null && part.encoding != "base64") {
                  console.log(partData);

                }

                // Mark message for deletion
                connection.addFlags(message.attributes.uid, "\Deleted", (err) => {
                  if (err){
                    console.log('Problem marking message for deletion');
                    rej(err);
                  }

                  res(); //Final resolve
                })
              });
          });
        });
      });


      connection.end();

    });
  });
  return ("Как мне сдесь получить partData ?")


Ответы (0 шт):