const appendTagList = (articleTags, article) => { const tagList = articleTags.map((tag) => tag.name); if (!article) return tagList; delete article.dataValues.tagLists; article.dataValues.tagList = tagList; }; const appendFavorites = async (loggedUser, article) => { const favorited = await article.hasUser(loggedUser ? loggedUser : null); article.dataValues.favorited = loggedUser ? favorited : false; const favoritesCount = await article.countUsers(); article.dataValues.favoritesCount = favoritesCount; }; const appendFollowers = async (loggedUser, toAppend) => { // if (toAppend?.author) { const author = await toAppend.getAuthor(); const following = await author.hasFollower(loggedUser ? loggedUser : null); toAppend.author.dataValues.following = loggedUser ? following : false; const followersCount = await author.countFollowers(); toAppend.author.dataValues.followersCount = followersCount; // } else { const following = await toAppend.hasFollower( loggedUser ? loggedUser : null ); toAppend.dataValues.following = loggedUser ? following : false; const followersCount = await toAppend.countFollowers(); toAppend.dataValues.followersCount = followersCount; } }; module.exports = { appendTagList, appendFavorites, appendFollowers };