@ -20,6 +20,7 @@ export default class StatusContent extends React.PureComponent {
static propTypes = {
status : ImmutablePropTypes . map . isRequired ,
expanded : PropTypes . bool ,
showThread : PropTypes . bool ,
onExpandedToggle : PropTypes . func ,
onClick : PropTypes . func ,
collapsable : PropTypes . bool ,
@ -181,6 +182,7 @@ export default class StatusContent extends React.PureComponent {
const hidden = this . props . onExpandedToggle ? ! this . props . expanded : this . state . hidden ;
const renderReadMore = this . props . onClick && status . get ( 'collapsed' ) ;
const renderViewThread = this . props . showThread && status . get ( 'in_reply_to_id' ) && status . get ( 'in_reply_to_account_id' ) === status . getIn ( [ 'account' , 'id' ] ) ;
const content = { __html : status . get ( 'contentHtml' ) } ;
const spoilerContent = { __html : status . get ( 'spoilerHtml' ) } ;
@ -195,6 +197,12 @@ export default class StatusContent extends React.PureComponent {
directionStyle . direction = 'rtl' ;
}
const showThreadButton = (
< button className = 'status__content__read-more-button' onClick = { this . props . onClick } >
< FormattedMessage id = 'status.show_thread' defaultMessage = 'Show thread' / >
< / b u t t o n >
) ;
const readMoreButton = (
< button className = 'status__content__read-more-button' onClick = { this . props . onClick } key = 'read-more' >
< FormattedMessage id = 'status.read_more' defaultMessage = 'Read more' / > < Icon id = 'angle-right' fixedWidth / >
@ -229,6 +237,8 @@ export default class StatusContent extends React.PureComponent {
< div tabIndex = { ! hidden ? 0 : null } className = { ` status__content__text ${ ! hidden ? 'status__content__text--visible' : '' } ` } style = { directionStyle } dangerouslySetInnerHTML = { content } / >
{ ! hidden && ! ! status . get ( 'poll' ) && < PollContainer pollId = { status . get ( 'poll' ) } / > }
{ renderViewThread && showThreadButton }
< / d i v >
) ;
} else if ( this . props . onClick ) {
@ -237,6 +247,8 @@ export default class StatusContent extends React.PureComponent {
< div className = 'status__content__text status__content__text--visible' style = { directionStyle } dangerouslySetInnerHTML = { content } / >
{ ! ! status . get ( 'poll' ) && < PollContainer pollId = { status . get ( 'poll' ) } / > }
{ renderViewThread && showThreadButton }
< / d i v > ,
] ;
@ -251,6 +263,8 @@ export default class StatusContent extends React.PureComponent {
< div className = 'status__content__text status__content__text--visible' style = { directionStyle } dangerouslySetInnerHTML = { content } / >
{ ! ! status . get ( 'poll' ) && < PollContainer pollId = { status . get ( 'poll' ) } / > }
{ renderViewThread && showThreadButton }
< / d i v >
) ;
}