// Copyright (c) 2015-present Mattermost, Inc. All Rights Reserved.
// See License.txt for license information.
import UserProfile from 'components/user_profile.jsx';
import PostInfo from 'components/post_view/post_info';
import {FormattedMessage} from 'react-intl';
import * as PostUtils from 'utils/post_utils.jsx';
import Constants from 'utils/constants.jsx';
import React from 'react';
import PropTypes from 'prop-types';
export default class PostHeader extends React.PureComponent {
static propTypes = {
/*
* The post to render the header for
*/
post: PropTypes.object.isRequired,
/*
* The user who created the post
*/
user: PropTypes.object,
/*
* Function called when the comment icon is clicked
*/
handleCommentClick: PropTypes.func.isRequired,
/*
* Function called when the post options dropdown is opened
*/
handleDropdownOpened: PropTypes.func.isRequired,
/*
* Set to render compactly
*/
compactDisplay: PropTypes.bool,
/*
* Set to render the post as if it was part of the previous post
*/
consecutivePostByUser: PropTypes.bool,
/*
* The method for displaying the post creator's name
*/
displayNameType: PropTypes.string,
/*
* The status of the user who created the post
*/
status: PropTypes.string,
/*
* Set if the post creator is currenlty in a WebRTC call
*/
isBusy: PropTypes.bool,
/*
* The number of replies in the same thread as this post
*/
replyCount: PropTypes.number,
/*
* Post identifiers for selenium tests
*/
lastPostCount: PropTypes.number,
/**
* Function to get the post list HTML element
*/
getPostList: PropTypes.func.isRequired
}
constructor(props) {
super(props);
this.state = {};
}
render() {
const post = this.props.post;
const isSystemMessage = PostUtils.isSystemMessage(post);
let userProfile = (