From efdb2c2665125b6ff09da5bf35b4396ef6f028f9 Mon Sep 17 00:00:00 2001 From: Vitaly Takmazov Date: Thu, 4 Apr 2019 21:09:08 +0300 Subject: Recommendations in feeds --- vnext/src/components/Message.js | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) (limited to 'vnext/src/components/Message.js') diff --git a/vnext/src/components/Message.js b/vnext/src/components/Message.js index 02371ddb..f093221b 100644 --- a/vnext/src/components/Message.js +++ b/vnext/src/components/Message.js @@ -6,6 +6,7 @@ import moment from 'moment'; import { UserType, MessageType } from './Types'; import Icon from './Icon'; import Avatar from './Avatar'; +import { UserLink } from './UserInfo'; import { format } from '../utils/embed'; @@ -15,6 +16,7 @@ function Message({ data, visitor, children, ...rest }) { const isCode = (data.tags || []).indexOf('code') >= 0; return (
+
@@ -105,6 +107,24 @@ function Tags({ data, user, ...rest }) { const TagsList = React.memo(Tags); +function Recommends({ forMessage, ...rest }) { + const { likes, recommendations } = forMessage; + return recommendations && recommendations.length > 0 && ( +
{'❤️ by '} + { + recommendations.map(it => ( + + )).reduce((prev, curr) => [prev, ', ', curr]) + } + { + likes > recommendations.length && ( and {likes - recommendations.length} others) + } +
+ ) || null; +} + +const Recommendations = React.memo(Recommends); + Message.propTypes = { data: MessageType, visitor: UserType.isRequired, -- cgit v1.2.3