1
import { EventTypes, Links } from "../../contracts/enums";
2
import EventObserver from "../../observer/observer";
5
public main: HTMLElement;
6
public tag: HTMLDivElement | undefined;
7
private observer: EventObserver;
9
constructor(observer: EventObserver) {
10
this.observer = observer;
11
this.main = document.createElement("main");
12
this.main.classList.add("main");
14
document.body.appendChild(this.main);
17
private setButtonListener(a: HTMLAnchorElement, path: string): void {
18
a.addEventListener("click", (e) => {
20
this.observer.notify(EventTypes.CHANGE_PAGE, path);
24
public renderStartPage(): void {
25
this.tag = document.createElement("div");
26
this.tag.classList.add("main__wrapper");
28
const baseLink = document.createElement("a");
29
this.setButtonListener(baseLink, Links.banks);
31
const assistantLink = document.createElement("a");
32
this.setButtonListener(assistantLink, Links.assistant);
34
const baseButton = document.createElement("div");
35
baseButton.textContent = "База знаний";
36
baseButton.classList.add("button");
38
const assistantButton = document.createElement("div");
39
assistantButton.textContent = "Ассистент";
40
assistantButton.classList.add("button");
42
baseLink.appendChild(baseButton);
43
assistantLink.appendChild(assistantButton);
45
this.tag.append(baseLink, assistantLink);