blob: 4a4b48af24c2c0bdb24351dffc407c1dbbbacab2 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
|
// import Irc from "@/index";
export default class Messages {
readonly url = "http://localhost:5000/";
sendMessage(msg: Message): void {
fetch(this.url + "send", {
method: "POST",
headers: {
Accept: "application/json",
"Content-Type": "application/json",
},
body: JSON.stringify(msg),
});
}
async addMessage(msg: Message): Promise<void> {
const board = $(".overview")[0],
time = new Date(msg.time),
div = document.createElement("div"),
spans = [
document.createElement("span"),
document.createElement("span"),
document.createElement("span"),
];
let min = new Date().getMinutes().toString();
min = min.length === 1 ? "0" + min : min;
spans[0].innerText = `[${time.getHours()}:${min}] `;
spans[1].innerText = `<@${msg.username}> `;
spans[1].style.color = msg.color;
spans[2].innerText = msg.text;
// @ts-expect-error
$(spans[2]).emoticonize();
spans.forEach(span => div.appendChild(span));
board.appendChild(div);
}
}
export interface Message {
text: string;
color: string;
username: string;
time: number;
}
|