31 lines
970 B
TypeScript
31 lines
970 B
TypeScript
import { messageListener } from "../../../shared/message-listener";
|
|
import { BaseElement } from "../_base";
|
|
import { NotificationBubble } from "./notification-bubble";
|
|
import './notification-bubbles.less';
|
|
|
|
export class NotificationBubbles extends BaseElement {
|
|
add(text: string, type: 'log' | 'info' | 'warn' | 'error' | 'syntax-error' | 'script' | 'time' | 'response') {
|
|
|
|
if (text && type) {
|
|
var bubble = <NotificationBubble>document.createElement("notification-bubble");
|
|
bubble.innerText = text;
|
|
bubble.classList.add(type);
|
|
this.appendChild(bubble);
|
|
|
|
if (this.children.length > 50) {
|
|
this.removeChild(this.children[0]);
|
|
}
|
|
}
|
|
}
|
|
|
|
reset() {
|
|
this.innerHTML = "";
|
|
}
|
|
|
|
onInit(): void {
|
|
messageListener((type, value) => {
|
|
if (type != 'script' && type != 'response')
|
|
this.add(value, type);
|
|
});
|
|
}
|
|
} |