diff --git a/src/app/modules/panel/panel.component.ts b/src/app/modules/panel/panel.component.ts index 09f5f0d..cbeaab5 100644 --- a/src/app/modules/panel/panel.component.ts +++ b/src/app/modules/panel/panel.component.ts @@ -53,6 +53,18 @@ export class PanelComponent { this.langModal.nativeElement.style.left = `calc(${x}px - 3.5rem)`; } + @HostListener("window:click", ["$event"]) + private closeLangModal(event: MouseEvent) { + if ( + this.langModal && + this.langBtn && + !this.langModal.nativeElement.contains(event.target as Node) && + !this.langBtn.nativeElement.contains(event.target as Node) + ) { + this.langModal.nativeElement.classList.remove("active"); + } + } + toggleModal() { if (this.langModal) { this.langModal.nativeElement.classList.toggle("active"); @@ -63,6 +75,7 @@ export class PanelComponent { } useLang(lang: string) { + this.langModal && this.langModal.nativeElement.classList.remove("active"); this.translateService.use(lang); }