[PLT-6744] Add "Only visible to you" note for ephemeral messages (#6790)
Этот коммит содержится в:
коммит произвёл
Christopher Speller
родитель
b92d0b0024
Коммит
5840905c7f
@@ -162,6 +162,7 @@ export default class PostBody extends React.PureComponent {
|
||||
<PostMessageView
|
||||
lastPostCount={this.props.lastPostCount}
|
||||
post={this.props.post}
|
||||
compactDisplay={this.props.compactDisplay}
|
||||
/>
|
||||
</div>
|
||||
);
|
||||
|
||||
@@ -54,6 +54,11 @@ export default class PostInfo extends React.PureComponent {
|
||||
*/
|
||||
lastPostCount: PropTypes.number,
|
||||
|
||||
/**
|
||||
* Set to render in compact view
|
||||
*/
|
||||
compactDisplay: PropTypes.bool,
|
||||
|
||||
/**
|
||||
* Function to get the post list HTML element
|
||||
*/
|
||||
@@ -208,6 +213,18 @@ export default class PostInfo extends React.PureComponent {
|
||||
}
|
||||
}
|
||||
|
||||
let visibleMessage;
|
||||
if (isEphemeral && !this.props.compactDisplay) {
|
||||
visibleMessage = (
|
||||
<span className='post__visibility'>
|
||||
<FormattedMessage
|
||||
id='post_info.message.visible'
|
||||
defaultMessage='(Only visible to you)'
|
||||
/>
|
||||
</span>
|
||||
);
|
||||
}
|
||||
|
||||
let pinnedBadge;
|
||||
if (post.is_pinned) {
|
||||
pinnedBadge = (
|
||||
@@ -237,6 +254,7 @@ export default class PostInfo extends React.PureComponent {
|
||||
isFlagged={this.props.isFlagged}
|
||||
isEphemeral={isEphemeral}
|
||||
/>
|
||||
{visibleMessage}
|
||||
</div>
|
||||
{options}
|
||||
</div>
|
||||
|
||||
@@ -61,7 +61,12 @@ export default class PostMessageView extends React.PureComponent {
|
||||
/*
|
||||
* Post identifiers for selenium tests
|
||||
*/
|
||||
lastPostCount: PropTypes.number
|
||||
lastPostCount: PropTypes.number,
|
||||
|
||||
/**
|
||||
* Set to render post body compactly
|
||||
*/
|
||||
compactDisplay: PropTypes.bool
|
||||
};
|
||||
|
||||
static defaultProps = {
|
||||
@@ -167,7 +172,13 @@ export default class PostMessageView extends React.PureComponent {
|
||||
postId = Utils.createSafeId('lastPostMessageText' + this.props.lastPostCount);
|
||||
}
|
||||
|
||||
const htmlFormattedText = TextFormatting.formatText(this.props.post.message, options);
|
||||
let message = this.props.post.message;
|
||||
const isEphemeral = Utils.isPostEphemeral(this.props.post);
|
||||
if (this.props.compactDisplay && isEphemeral) {
|
||||
const visibleMessage = Utils.localizeMessage('post_info.message.visible.compact', ' (Only visible to you)');
|
||||
message = message.concat(visibleMessage);
|
||||
}
|
||||
const htmlFormattedText = TextFormatting.formatText(message, options);
|
||||
const postMessageComponent = this.postMessageHtmlToComponent(htmlFormattedText);
|
||||
|
||||
return (
|
||||
|
||||
Ссылка в новой задаче
Block a user