Нужно как-то все это безобразие скрывать если был клик вне области самого элемента, например окна с выбором дат.
Сложность заключается в том, что нужно обойтись без заднего фона на который можно было бы повешать (click)="close()". Так же нужно подружить с компонентами, чтобы работало глобально и при этом не обрабатывался каждый клик если окна не открыты.
Сами окна на данный момент открываются так:
В глобальном файле global.module.ts есть export class Globals который содержит такие значения:
public openPupUp: boolean = false;
Глобальный потому, что использоваться может многократно на разных страницах.
В общем когда вызывается окно, false меняется на true и добавляется класс у вызываемого окна.
Как можно обработать клик по области вне окна?
Бывают ситуации когда нужно переключиться с окна выбора даты, например, на input поиска и дата должна скрыться.
Overlay решает эту проблему, но приходится 2 раза кликать на input, что не очень хорошо.