mirror of
https://github.com/avatao-content/frontend-tutorial-framework
synced 2025-06-29 06:15:12 +00:00
Rename LogsComponent to MessagesComponent
This commit is contained in:
5
src/app/messages/message.ts
Normal file
5
src/app/messages/message.ts
Normal file
@ -0,0 +1,5 @@
|
||||
export class Message {
|
||||
originator: string;
|
||||
timestamp: Date;
|
||||
message: string;
|
||||
}
|
11
src/app/messages/messages.component.html
Normal file
11
src/app/messages/messages.component.html
Normal file
@ -0,0 +1,11 @@
|
||||
<div>
|
||||
<ul>
|
||||
<li *ngFor="let message of messages">
|
||||
<p>
|
||||
<strong>{{message.originator}}</strong>
|
||||
<span class="timestamp">{{message.timestamp | date:'yyyy-MM-dd HH:mm:ss'}}</span><br>
|
||||
<span [innerHtml]="message.message"></span>
|
||||
</p>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
14
src/app/messages/messages.component.scss
Normal file
14
src/app/messages/messages.component.scss
Normal file
@ -0,0 +1,14 @@
|
||||
div {
|
||||
display: block;
|
||||
overflow: auto;
|
||||
max-height: 100%;
|
||||
}
|
||||
|
||||
ul {
|
||||
max-height: inherit;
|
||||
list-style-type: none;
|
||||
}
|
||||
|
||||
.timestamp {
|
||||
opacity: 0.37;
|
||||
}
|
32
src/app/messages/messages.component.ts
Normal file
32
src/app/messages/messages.component.ts
Normal file
@ -0,0 +1,32 @@
|
||||
import { Component, OnInit } from '@angular/core';
|
||||
import { MarkdownService } from '../markdown.service';
|
||||
import { WebSocketService } from '../websocket.service';
|
||||
|
||||
import { Message } from './message';
|
||||
|
||||
@Component({
|
||||
selector: 'app-messages',
|
||||
templateUrl: './messages.component.html',
|
||||
styleUrls: ['./messages.component.scss']
|
||||
})
|
||||
export class MessagesComponent implements OnInit {
|
||||
messages: Message[] = [];
|
||||
constructor(
|
||||
private markdownService: MarkdownService,
|
||||
private websocketService: WebSocketService
|
||||
) {}
|
||||
|
||||
convert(text: string) {
|
||||
return this.markdownService.convertToHtml(text);
|
||||
}
|
||||
|
||||
ngOnInit() {
|
||||
this.websocketService.observeAnchor<Message>('message').subscribe(
|
||||
(event) => {
|
||||
this.messages.push(event.data);
|
||||
event.data.message = this.convert(event.data.message);
|
||||
}
|
||||
);
|
||||
}
|
||||
|
||||
}
|
Reference in New Issue
Block a user