From ba5e3c71a6718364435cbb3bc3620e99552d049e Mon Sep 17 00:00:00 2001 From: cha0s Date: Sat, 25 Jul 2020 10:46:15 -0500 Subject: [PATCH] fix: hydrate friend channels --- src/server/entry.js | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/src/server/entry.js b/src/server/entry.js index 3887db7..4469356 100644 --- a/src/server/entry.js +++ b/src/server/entry.js @@ -53,10 +53,19 @@ export const channelState = async (req, channel) => { }; }; +const userFriendships = async (req) => (req.user ? req.user.friendship() : []); + export const channelsToHydrate = async (req) => { + const {User} = allModels(); const channels = await Promise.all( (req.channel ? [req.channel] : []) - .concat(req.user ? await req.user.favorites() : []), + .concat(req.user ? await req.user.favorites() : []) + .concat(await Promise.all((await userFriendships(req)).map( + async ({adderId, addeeId}) => ({ + type: 'u', + name: (await User.findByPk(adderId !== req.userId ? adderId : addeeId)).redditUsername, + }), + ))), ); const channelStrings = channels.map(joinChannel); const uniqueChannels = (new Set(channelStrings)).values(); @@ -65,8 +74,6 @@ export const channelsToHydrate = async (req) => { const userBlocks = async (req) => (req.user ? req.user.blocks() : []); -const userFriendships = async (req) => (req.user ? req.user.friendship() : []); - const userState = async (req) => { const {channel, user} = req; if (!user) {