mirror of
https://gitcode.com/GitHub_Trending/ji/jitsi-meet.git
synced 2026-05-14 11:27:47 +00:00
feat(chat): on web, group messages by sender
This commit is contained in:
committed by
virtuacoplenny
parent
f5ac18da18
commit
fb5a45f714
@@ -23,24 +23,12 @@ class ChatMessage extends AbstractChatMessage<Props> {
|
||||
*/
|
||||
render() {
|
||||
const { message } = this.props;
|
||||
let messageTypeClassname = '';
|
||||
let messageToDisplay = message.message;
|
||||
|
||||
switch (message.messageType) {
|
||||
case 'local':
|
||||
messageTypeClassname = 'localuser';
|
||||
|
||||
break;
|
||||
case 'error':
|
||||
messageTypeClassname = 'error';
|
||||
messageToDisplay = this.props.t('chat.error', {
|
||||
const messageToDisplay = message.messageType === 'error'
|
||||
? this.props.t('chat.error', {
|
||||
error: message.error,
|
||||
originalText: messageToDisplay
|
||||
});
|
||||
break;
|
||||
default:
|
||||
messageTypeClassname = 'remoteuser';
|
||||
}
|
||||
originalText: message.message
|
||||
})
|
||||
: message.message;
|
||||
|
||||
// replace links and smileys
|
||||
// Strophe already escapes special symbols on sending,
|
||||
@@ -68,47 +56,16 @@ class ChatMessage extends AbstractChatMessage<Props> {
|
||||
});
|
||||
|
||||
return (
|
||||
<div className = { `chatmessage ${messageTypeClassname}` }>
|
||||
<div className = 'display-name'>
|
||||
<div className = 'chatmessage'>
|
||||
{ this.props.showDisplayName && <div className = 'display-name'>
|
||||
{ message.displayName }
|
||||
</div>
|
||||
<div className = { 'timestamp' }>
|
||||
{ ChatMessage.formatTimestamp(message.timestamp) }
|
||||
</div>
|
||||
</div> }
|
||||
<div className = 'usermessage'>
|
||||
{ processedMessage }
|
||||
</div>
|
||||
</div>
|
||||
);
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns a timestamp formatted for display.
|
||||
*
|
||||
* @param {number} timestamp - The timestamp for the chat message.
|
||||
* @private
|
||||
* @returns {string}
|
||||
*/
|
||||
static formatTimestamp(timestamp) {
|
||||
const now = new Date(timestamp);
|
||||
let hour = now.getHours();
|
||||
let minute = now.getMinutes();
|
||||
let second = now.getSeconds();
|
||||
|
||||
if (hour.toString().length === 1) {
|
||||
hour = `0${hour}`;
|
||||
}
|
||||
|
||||
if (minute.toString().length === 1) {
|
||||
minute = `0${minute}`;
|
||||
}
|
||||
|
||||
if (second.toString().length === 1) {
|
||||
second = `0${second}`;
|
||||
}
|
||||
|
||||
return `${hour}:${minute}:${second}`;
|
||||
}
|
||||
}
|
||||
|
||||
export default translate(ChatMessage, { wait: false });
|
||||
|
||||
Reference in New Issue
Block a user