Prettified Code!
This commit is contained in:
@@ -167,7 +167,11 @@ export default class ChatInput extends Component {
|
||||
if (possibilities.length > 0) {
|
||||
this.suggestion = possibilities[this.completionIndex];
|
||||
|
||||
const newHTML = inputHTML.substring(0, at + 1) + this.suggestion + ' ' + inputHTML.substring(position);
|
||||
const newHTML =
|
||||
inputHTML.substring(0, at + 1) +
|
||||
this.suggestion +
|
||||
' ' +
|
||||
inputHTML.substring(position);
|
||||
|
||||
this.setState({
|
||||
inputHTML: newHTML,
|
||||
|
||||
@@ -29,7 +29,7 @@ export default class ChatMessageView extends Component {
|
||||
async componentDidMount() {
|
||||
const { message, username } = this.props;
|
||||
const { body } = message;
|
||||
|
||||
|
||||
if (message && username) {
|
||||
const formattedMessage = await formatMessageText(body, username);
|
||||
this.setState({
|
||||
@@ -48,7 +48,9 @@ export default class ChatMessageView extends Component {
|
||||
return null;
|
||||
}
|
||||
const formattedTimestamp = `Sent at ${formatTimestamp(timestamp)}`;
|
||||
const userMetadata = `${displayName} first joined ${formatTimestamp(createdAt)}`;
|
||||
const userMetadata = `${displayName} first joined ${formatTimestamp(
|
||||
createdAt
|
||||
)}`;
|
||||
|
||||
const isSystemMessage = message.type === SOCKET_MESSAGE_TYPES.SYSTEM;
|
||||
|
||||
@@ -69,7 +71,11 @@ export default class ChatMessageView extends Component {
|
||||
title=${formattedTimestamp}
|
||||
>
|
||||
<div class="message-content break-words w-full">
|
||||
<div style=${authorTextColor} class="message-author font-bold" title=${userMetadata}>
|
||||
<div
|
||||
style=${authorTextColor}
|
||||
class="message-author font-bold"
|
||||
title=${userMetadata}
|
||||
>
|
||||
${displayName}
|
||||
</div>
|
||||
<div
|
||||
@@ -90,7 +96,7 @@ function getChatMessageClassString() {
|
||||
return 'message flex flex-row items-start p-3 m-3 rounded-lg shadow-s text-sm';
|
||||
}
|
||||
|
||||
export async function formatMessageText(message, username) {
|
||||
export async function formatMessageText(message, username) {
|
||||
let formattedText = getMessageWithEmbeds(message);
|
||||
formattedText = convertToMarkup(formattedText);
|
||||
return await highlightUsername(formattedText, username);
|
||||
|
||||
@@ -253,7 +253,7 @@ export default class Chat extends Component {
|
||||
const { username } = this.props;
|
||||
const message = {
|
||||
body: content,
|
||||
type: SOCKET_MESSAGE_TYPES.CHAT,
|
||||
type: SOCKET_MESSAGE_TYPES.CHAT,
|
||||
};
|
||||
this.websocket.send(message);
|
||||
}
|
||||
|
||||
@@ -9,54 +9,71 @@ import { SOCKET_MESSAGE_TYPES } from '../../utils/websocket.js';
|
||||
export default function Message(props) {
|
||||
const { message } = props;
|
||||
const { type } = message;
|
||||
if (type === SOCKET_MESSAGE_TYPES.CHAT || type === SOCKET_MESSAGE_TYPES.SYSTEM) {
|
||||
if (
|
||||
type === SOCKET_MESSAGE_TYPES.CHAT ||
|
||||
type === SOCKET_MESSAGE_TYPES.SYSTEM
|
||||
) {
|
||||
return html`<${ChatMessageView} ...${props} />`;
|
||||
} else if (type === SOCKET_MESSAGE_TYPES.NAME_CHANGE) {
|
||||
const { oldName, user } = message;
|
||||
const { displayName } = user;
|
||||
return (
|
||||
html`
|
||||
<div class="message message-name-change flex items-center justify-start p-3">
|
||||
<div class="message-content flex flex-row items-center justify-center text-sm w-full">
|
||||
<div class="text-white text-center opacity-50 overflow-hidden break-words">
|
||||
<span class="font-bold">${oldName}</span> is now known as <span class="font-bold">${displayName}</span>.
|
||||
</div>
|
||||
const { displayName } = user;
|
||||
return html`
|
||||
<div
|
||||
class="message message-name-change flex items-center justify-start p-3"
|
||||
>
|
||||
<div
|
||||
class="message-content flex flex-row items-center justify-center text-sm w-full"
|
||||
>
|
||||
<div
|
||||
class="text-white text-center opacity-50 overflow-hidden break-words"
|
||||
>
|
||||
<span class="font-bold">${oldName}</span> is now known as
|
||||
<span class="font-bold">${displayName}</span>.
|
||||
</div>
|
||||
</div>
|
||||
`
|
||||
);
|
||||
</div>
|
||||
`;
|
||||
} else if (type === SOCKET_MESSAGE_TYPES.USER_JOINED) {
|
||||
const { user } = message
|
||||
const { user } = message;
|
||||
const { displayName } = user;
|
||||
return (
|
||||
html`
|
||||
<div class="message message-user-joined flex items-center justify-start p-3">
|
||||
<div class="message-content flex flex-row items-center justify-center text-sm w-full">
|
||||
<div class="text-white text-center opacity-50 overflow-hidden break-words">
|
||||
<span class="font-bold">${displayName}</span> joined the chat.
|
||||
</div>
|
||||
</div>
|
||||
return html`
|
||||
<div
|
||||
class="message message-user-joined flex items-center justify-start p-3"
|
||||
>
|
||||
<div
|
||||
class="message-content flex flex-row items-center justify-center text-sm w-full"
|
||||
>
|
||||
<div
|
||||
class="text-white text-center opacity-50 overflow-hidden break-words"
|
||||
>
|
||||
<span class="font-bold">${displayName}</span> joined the chat.
|
||||
</div>
|
||||
`
|
||||
);
|
||||
</div>
|
||||
</div>
|
||||
`;
|
||||
} else if (type === SOCKET_MESSAGE_TYPES.CHAT_ACTION) {
|
||||
const { body } = message;
|
||||
const formattedMessage = `${body}`
|
||||
return (
|
||||
html`
|
||||
<div class="message message-user-joined flex items-center justify-start p-3">
|
||||
<div class="message-content flex flex-row items-center justify-center text-sm w-full">
|
||||
<div class="text-white text-center opacity-50 overflow-hidden break-words">
|
||||
<span dangerouslySetInnerHTML=${{ __html: formattedMessage }}></span>
|
||||
</div>
|
||||
</div>
|
||||
const formattedMessage = `${body}`;
|
||||
return html`
|
||||
<div
|
||||
class="message message-user-joined flex items-center justify-start p-3"
|
||||
>
|
||||
<div
|
||||
class="message-content flex flex-row items-center justify-center text-sm w-full"
|
||||
>
|
||||
<div
|
||||
class="text-white text-center opacity-50 overflow-hidden break-words"
|
||||
>
|
||||
<span
|
||||
dangerouslySetInnerHTML=${{ __html: formattedMessage }}
|
||||
></span>
|
||||
</div>
|
||||
`
|
||||
);
|
||||
</div>
|
||||
</div>
|
||||
`;
|
||||
} else if (type === SOCKET_MESSAGE_TYPES.CONNECTED_USER_INFO) {
|
||||
// noop for now
|
||||
} else {
|
||||
console.log("Unknown message type:", type);
|
||||
console.log('Unknown message type:', type);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user