Непонятно, как избавиться от замечаний к коду: на строке 101 Promise.all заворачиваете в промис - это не нужно делать, Promise.all уже возвращает промис; на строке 151 тоже лишняя обертка из промиса, и еще там же .then древовидно выстроены, а надо плоско.
Кто может помочь? Код в песочнице - https://repl.it/repls/BothCraftyUsernames
101 строка: Промисы уже получены от getCurrencyRate(), по этому сразу после PromiseAll можно строить цепочку .then:
let convertCurrency = (amount, fromCode, toCode) =>
Promise.all([getCurrencyRate(fromCode), getCurrencyRate(toCode)])
.then(result => Math.round(result[1] * amount / result[0]))
.catch(err => console.error(`\n[Error: ${err}]`));
151 строка: Тоже самое getTeg() возвращает промис, с этого места можно строить цепочку .then():
let getTagItemsCount = (title) => getTag(title)
.then(tag => getTagItems(tag.id))
.then(products => products.length)
.catch(err => console.error(err));
Хорошее чтиво по теме:https://habr.com/company/nixsolutions/blog/323066/
Апостиль в Лос-Анджелесе без лишних нервов и бумажной волокиты
Основные этапы разработки сайта для стоматологической клиники
Продвижение своими сайтами как стратегия роста и независимости