diff options
author | Christopher Speller <crspeller@gmail.com> | 2017-09-06 23:04:13 -0700 |
---|---|---|
committer | Christopher Speller <crspeller@gmail.com> | 2017-09-06 23:11:58 -0700 |
commit | d8bd57901e33a7057e26e782e295099ffcc0da89 (patch) | |
tree | e12dfc8cad42b1576756d19d7fbfd82646a009bf /webapp/components/post_view/reaction_list | |
parent | 7bc8e9a08dfde56387f946fdf5086252aa4d0491 (diff) | |
download | chat-d8bd57901e33a7057e26e782e295099ffcc0da89.tar.gz chat-d8bd57901e33a7057e26e782e295099ffcc0da89.tar.bz2 chat-d8bd57901e33a7057e26e782e295099ffcc0da89.zip |
Removing webapp
Diffstat (limited to 'webapp/components/post_view/reaction_list')
-rw-r--r-- | webapp/components/post_view/reaction_list/index.js | 33 | ||||
-rw-r--r-- | webapp/components/post_view/reaction_list/reaction_list.jsx | 88 |
2 files changed, 0 insertions, 121 deletions
diff --git a/webapp/components/post_view/reaction_list/index.js b/webapp/components/post_view/reaction_list/index.js deleted file mode 100644 index ee807ca88..000000000 --- a/webapp/components/post_view/reaction_list/index.js +++ /dev/null @@ -1,33 +0,0 @@ -// Copyright (c) 2017 Mattermost, Inc. All Rights Reserved. -// See License.txt for license information. - -import {connect} from 'react-redux'; -import {bindActionCreators} from 'redux'; -import {makeGetReactionsForPost} from 'mattermost-redux/selectors/entities/posts'; -import {getCustomEmojisByName} from 'mattermost-redux/selectors/entities/emojis'; - -import * as Actions from 'mattermost-redux/actions/posts'; - -import ReactionList from './reaction_list.jsx'; - -function makeMapStateToProps() { - const getReactionsForPost = makeGetReactionsForPost(); - - return function mapStateToProps(state, ownProps) { - return { - ...ownProps, - reactions: getReactionsForPost(state, ownProps.post.id), - emojis: getCustomEmojisByName(state) - }; - }; -} - -function mapDispatchToProps(dispatch) { - return { - actions: bindActionCreators({ - getReactionsForPost: Actions.getReactionsForPost - }, dispatch) - }; -} - -export default connect(makeMapStateToProps, mapDispatchToProps)(ReactionList); diff --git a/webapp/components/post_view/reaction_list/reaction_list.jsx b/webapp/components/post_view/reaction_list/reaction_list.jsx deleted file mode 100644 index 4d2f3a5fc..000000000 --- a/webapp/components/post_view/reaction_list/reaction_list.jsx +++ /dev/null @@ -1,88 +0,0 @@ -// Copyright (c) 2016-present Mattermost, Inc. All Rights Reserved. -// See License.txt for license information. - -import React from 'react'; -import PropTypes from 'prop-types'; - -import {postListScrollChange} from 'actions/global_actions.jsx'; - -import Reaction from 'components/post_view/reaction'; - -export default class ReactionListView extends React.PureComponent { - static propTypes = { - - /** - * The post to render reactions for - */ - post: PropTypes.object.isRequired, - - /** - * The reactions to render - */ - reactions: PropTypes.arrayOf(PropTypes.object), - - /** - * The emojis for the different reactions - */ - emojis: PropTypes.object.isRequired, - actions: PropTypes.shape({ - - /** - * Function to get reactions for a post - */ - getReactionsForPost: PropTypes.func.isRequired - }) - } - - componentDidMount() { - if (this.props.post.has_reactions) { - this.props.actions.getReactionsForPost(this.props.post.id); - } - } - - componentDidUpdate(prevProps) { - if (this.props.reactions !== prevProps.reactions) { - postListScrollChange(); - } - } - - render() { - if (!this.props.post.has_reactions || (this.props.reactions && this.props.reactions.length === 0)) { - return null; - } - - const reactionsByName = new Map(); - const emojiNames = []; - - if (this.props.reactions) { - for (const reaction of this.props.reactions) { - const emojiName = reaction.emoji_name; - - if (reactionsByName.has(emojiName)) { - reactionsByName.get(emojiName).push(reaction); - } else { - emojiNames.push(emojiName); - reactionsByName.set(emojiName, [reaction]); - } - } - } - - const children = emojiNames.map((emojiName) => { - return ( - <Reaction - key={emojiName} - post={this.props.post} - emojiName={emojiName} - reactions={reactionsByName.get(emojiName) || []} - emojis={this.props.emojis} - /> - ); - }); - - return ( - <div className='post-reaction-list'> - {children} - </div> - ); - } -} |