@mintplayer/ng-bootstrap 13.3.0 → 13.3.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -15,14 +15,14 @@ export class BsNavbarComponent {
15
15
  }
16
16
  }
17
17
  BsNavbarComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: BsNavbarComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
18
- BsNavbarComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.0", type: BsNavbarComponent, selector: "bs-navbar", inputs: { autoclose: "autoclose" }, viewQueries: [{ propertyName: "nav", first: true, predicate: ["nav"], descendants: true }], ngImport: i0, template: "<nav #nav class=\"navbar navbar-expand-md position-fixed navbar-dark bg-dark\">\n <div class=\"container-fluid\">\n <div class=\"d-flex w-100 w-md-auto\">\n <ng-content select=\"bs-navbar-brand\"></ng-content>\n <div class=\"flex-end d-md-none d-flex tw\">\n <button (click)=\"toggleExpanded()\" title=\"Expand/collapse menu\" class=\"align-self-center\" [class.navbar-toggler]=\"!expandButtonTemplate\" [class.bg-transparent]=\"expandButtonTemplate\" [class.shadow-none]=\"expandButtonTemplate\" [class.border-0]=\"expandButtonTemplate\" type=\"button\">\n <ng-container *ngTemplateOutlet=\"expandButtonTemplate ?? defaultExpandButton; context: { state: (isExpanded$ | async) ? 'open' : 'closed' }\"></ng-container>\n </button>\n </div>\n </div>\n <ng-content></ng-content>\n </div>\n</nav>\n\n<ng-template #defaultExpandButton>\n <span class=\"navbar-toggler-icon\"></span>\n</ng-template>", styles: [":host ::ng-deep+*{padding-top:56px}nav{left:0;top:0;right:0;z-index:10}@media (min-width: 768px){.mx-md-unset{margin-left:0!important;margin-right:0!important}.w-md-auto{width:auto!important}}.tw{margin:-.5rem -.6666666667rem}\n"], directives: [{ type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }], pipes: { "async": i1.AsyncPipe } });
18
+ BsNavbarComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.0", type: BsNavbarComponent, selector: "bs-navbar", inputs: { autoclose: "autoclose" }, viewQueries: [{ propertyName: "nav", first: true, predicate: ["nav"], descendants: true }], ngImport: i0, template: "<nav #nav class=\"navbar navbar-expand-md position-fixed navbar-dark bg-dark\">\n <div class=\"container-fluid\">\n <div class=\"d-flex w-100 w-md-auto\">\n <ng-content select=\"bs-navbar-brand\"></ng-content>\n <div class=\"flex-end d-md-none d-flex tw\">\n <button (click)=\"toggleExpanded()\" title=\"Expand/collapse menu\" class=\"align-self-center\" [class.navbar-toggler]=\"!expandButtonTemplate\" [class.bg-transparent]=\"expandButtonTemplate\" [class.shadow-none]=\"expandButtonTemplate\" [class.border-0]=\"expandButtonTemplate\" type=\"button\">\n <ng-container *ngTemplateOutlet=\"expandButtonTemplate ?? defaultExpandButton; context: { $implicit: (isExpanded$ | async) ? 'open' : 'closed' }\"></ng-container>\n </button>\n </div>\n </div>\n <ng-content></ng-content>\n </div>\n</nav>\n\n<ng-template #defaultExpandButton>\n <span class=\"navbar-toggler-icon\"></span>\n</ng-template>", styles: [":host ::ng-deep+*{padding-top:56px}nav{left:0;top:0;right:0;z-index:10}@media (min-width: 768px){.mx-md-unset{margin-left:0!important;margin-right:0!important}.w-md-auto{width:auto!important}}.tw{margin:-.5rem -.6666666667rem}\n"], directives: [{ type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }], pipes: { "async": i1.AsyncPipe } });
19
19
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: BsNavbarComponent, decorators: [{
20
20
  type: Component,
21
- args: [{ selector: 'bs-navbar', template: "<nav #nav class=\"navbar navbar-expand-md position-fixed navbar-dark bg-dark\">\n <div class=\"container-fluid\">\n <div class=\"d-flex w-100 w-md-auto\">\n <ng-content select=\"bs-navbar-brand\"></ng-content>\n <div class=\"flex-end d-md-none d-flex tw\">\n <button (click)=\"toggleExpanded()\" title=\"Expand/collapse menu\" class=\"align-self-center\" [class.navbar-toggler]=\"!expandButtonTemplate\" [class.bg-transparent]=\"expandButtonTemplate\" [class.shadow-none]=\"expandButtonTemplate\" [class.border-0]=\"expandButtonTemplate\" type=\"button\">\n <ng-container *ngTemplateOutlet=\"expandButtonTemplate ?? defaultExpandButton; context: { state: (isExpanded$ | async) ? 'open' : 'closed' }\"></ng-container>\n </button>\n </div>\n </div>\n <ng-content></ng-content>\n </div>\n</nav>\n\n<ng-template #defaultExpandButton>\n <span class=\"navbar-toggler-icon\"></span>\n</ng-template>", styles: [":host ::ng-deep+*{padding-top:56px}nav{left:0;top:0;right:0;z-index:10}@media (min-width: 768px){.mx-md-unset{margin-left:0!important;margin-right:0!important}.w-md-auto{width:auto!important}}.tw{margin:-.5rem -.6666666667rem}\n"] }]
21
+ args: [{ selector: 'bs-navbar', template: "<nav #nav class=\"navbar navbar-expand-md position-fixed navbar-dark bg-dark\">\n <div class=\"container-fluid\">\n <div class=\"d-flex w-100 w-md-auto\">\n <ng-content select=\"bs-navbar-brand\"></ng-content>\n <div class=\"flex-end d-md-none d-flex tw\">\n <button (click)=\"toggleExpanded()\" title=\"Expand/collapse menu\" class=\"align-self-center\" [class.navbar-toggler]=\"!expandButtonTemplate\" [class.bg-transparent]=\"expandButtonTemplate\" [class.shadow-none]=\"expandButtonTemplate\" [class.border-0]=\"expandButtonTemplate\" type=\"button\">\n <ng-container *ngTemplateOutlet=\"expandButtonTemplate ?? defaultExpandButton; context: { $implicit: (isExpanded$ | async) ? 'open' : 'closed' }\"></ng-container>\n </button>\n </div>\n </div>\n <ng-content></ng-content>\n </div>\n</nav>\n\n<ng-template #defaultExpandButton>\n <span class=\"navbar-toggler-icon\"></span>\n</ng-template>", styles: [":host ::ng-deep+*{padding-top:56px}nav{left:0;top:0;right:0;z-index:10}@media (min-width: 768px){.mx-md-unset{margin-left:0!important;margin-right:0!important}.w-md-auto{width:auto!important}}.tw{margin:-.5rem -.6666666667rem}\n"] }]
22
22
  }], propDecorators: { nav: [{
23
23
  type: ViewChild,
24
24
  args: ['nav']
25
25
  }], autoclose: [{
26
26
  type: Input
27
27
  }] } });
28
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmF2YmFyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbWludHBsYXllci1uZy1ib290c3RyYXAvc3JjL2xpYi9jb21wb25lbnRzL25hdmJhci9uYXZiYXIvbmF2YmFyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbWludHBsYXllci1uZy1ib290c3RyYXAvc3JjL2xpYi9jb21wb25lbnRzL25hdmJhci9uYXZiYXIvbmF2YmFyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLEtBQUssRUFBZSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDckYsT0FBTyxFQUFFLGVBQWUsRUFBRSxJQUFJLEVBQUUsTUFBTSxNQUFNLENBQUM7OztBQU83QyxNQUFNLE9BQU8saUJBQWlCO0lBTDlCO1FBUVcsY0FBUyxHQUFHLElBQUksQ0FBQztRQUUxQix5QkFBb0IsR0FBNEIsSUFBSSxDQUFDO1FBRXJELGdCQUFXLEdBQUcsSUFBSSxlQUFlLENBQVUsS0FBSyxDQUFDLENBQUM7S0FRbkQ7SUFQQyxjQUFjO1FBQ1osSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsVUFBVSxFQUFFLEVBQUU7WUFDdEQsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUNyQyxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7OzhHQVpVLGlCQUFpQjtrR0FBakIsaUJBQWlCLGlMQ1I5Qiw2K0JBZ0JjOzJGRFJELGlCQUFpQjtrQkFMN0IsU0FBUzsrQkFDRSxXQUFXOzhCQU1ILEdBQUc7c0JBQXBCLFNBQVM7dUJBQUMsS0FBSztnQkFDUCxTQUFTO3NCQUFqQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFbGVtZW50UmVmLCBJbnB1dCwgVGVtcGxhdGVSZWYsIFZpZXdDaGlsZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCB0YWtlIH0gZnJvbSAncnhqcyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2JzLW5hdmJhcicsXG4gIHRlbXBsYXRlVXJsOiAnLi9uYXZiYXIuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9uYXZiYXIuY29tcG9uZW50LnNjc3MnXSxcbn0pXG5leHBvcnQgY2xhc3MgQnNOYXZiYXJDb21wb25lbnQge1xuXG4gIEBWaWV3Q2hpbGQoJ25hdicpIG5hdiE6IEVsZW1lbnRSZWY7XG4gIEBJbnB1dCgpIGF1dG9jbG9zZSA9IHRydWU7XG5cbiAgZXhwYW5kQnV0dG9uVGVtcGxhdGU6IFRlbXBsYXRlUmVmPGFueT4gfCBudWxsID0gbnVsbDtcbiAgXG4gIGlzRXhwYW5kZWQkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxib29sZWFuPihmYWxzZSk7XG4gIHRvZ2dsZUV4cGFuZGVkKCkge1xuICAgIHRoaXMuaXNFeHBhbmRlZCQucGlwZSh0YWtlKDEpKS5zdWJzY3JpYmUoKGlzRXhwYW5kZWQpID0+IHtcbiAgICAgIHRoaXMuaXNFeHBhbmRlZCQubmV4dCghaXNFeHBhbmRlZCk7XG4gICAgfSk7XG4gIH1cblxuICBcbn1cbiIsIjxuYXYgI25hdiBjbGFzcz1cIm5hdmJhciBuYXZiYXItZXhwYW5kLW1kIHBvc2l0aW9uLWZpeGVkIG5hdmJhci1kYXJrIGJnLWRhcmtcIj5cbiAgICA8ZGl2IGNsYXNzPVwiY29udGFpbmVyLWZsdWlkXCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXggdy0xMDAgdy1tZC1hdXRvXCI+XG4gICAgICAgICAgICA8bmctY29udGVudCBzZWxlY3Q9XCJicy1uYXZiYXItYnJhbmRcIj48L25nLWNvbnRlbnQ+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmxleC1lbmQgZC1tZC1ub25lIGQtZmxleCB0d1wiPlxuICAgICAgICAgICAgICAgIDxidXR0b24gKGNsaWNrKT1cInRvZ2dsZUV4cGFuZGVkKClcIiB0aXRsZT1cIkV4cGFuZC9jb2xsYXBzZSBtZW51XCIgY2xhc3M9XCJhbGlnbi1zZWxmLWNlbnRlclwiIFtjbGFzcy5uYXZiYXItdG9nZ2xlcl09XCIhZXhwYW5kQnV0dG9uVGVtcGxhdGVcIiBbY2xhc3MuYmctdHJhbnNwYXJlbnRdPVwiZXhwYW5kQnV0dG9uVGVtcGxhdGVcIiBbY2xhc3Muc2hhZG93LW5vbmVdPVwiZXhwYW5kQnV0dG9uVGVtcGxhdGVcIiBbY2xhc3MuYm9yZGVyLTBdPVwiZXhwYW5kQnV0dG9uVGVtcGxhdGVcIiB0eXBlPVwiYnV0dG9uXCI+XG4gICAgICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJleHBhbmRCdXR0b25UZW1wbGF0ZSA/PyBkZWZhdWx0RXhwYW5kQnV0dG9uOyBjb250ZXh0OiB7IHN0YXRlOiAoaXNFeHBhbmRlZCQgfCBhc3luYykgPyAnb3BlbicgOiAnY2xvc2VkJyB9XCI+PC9uZy1jb250YWluZXI+XG4gICAgICAgICAgICAgICAgPC9idXR0b24+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cbiAgICA8L2Rpdj5cbjwvbmF2PlxuXG48bmctdGVtcGxhdGUgI2RlZmF1bHRFeHBhbmRCdXR0b24+XG4gICAgPHNwYW4gY2xhc3M9XCJuYXZiYXItdG9nZ2xlci1pY29uXCI+PC9zcGFuPlxuPC9uZy10ZW1wbGF0ZT4iXX0=
28
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmF2YmFyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbWludHBsYXllci1uZy1ib290c3RyYXAvc3JjL2xpYi9jb21wb25lbnRzL25hdmJhci9uYXZiYXIvbmF2YmFyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbWludHBsYXllci1uZy1ib290c3RyYXAvc3JjL2xpYi9jb21wb25lbnRzL25hdmJhci9uYXZiYXIvbmF2YmFyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLEtBQUssRUFBZSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDckYsT0FBTyxFQUFFLGVBQWUsRUFBRSxJQUFJLEVBQUUsTUFBTSxNQUFNLENBQUM7OztBQU83QyxNQUFNLE9BQU8saUJBQWlCO0lBTDlCO1FBUVcsY0FBUyxHQUFHLElBQUksQ0FBQztRQUUxQix5QkFBb0IsR0FBNEIsSUFBSSxDQUFDO1FBRXJELGdCQUFXLEdBQUcsSUFBSSxlQUFlLENBQVUsS0FBSyxDQUFDLENBQUM7S0FRbkQ7SUFQQyxjQUFjO1FBQ1osSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsVUFBVSxFQUFFLEVBQUU7WUFDdEQsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUNyQyxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7OzhHQVpVLGlCQUFpQjtrR0FBakIsaUJBQWlCLGlMQ1I5QixpL0JBZ0JjOzJGRFJELGlCQUFpQjtrQkFMN0IsU0FBUzsrQkFDRSxXQUFXOzhCQU1ILEdBQUc7c0JBQXBCLFNBQVM7dUJBQUMsS0FBSztnQkFDUCxTQUFTO3NCQUFqQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFbGVtZW50UmVmLCBJbnB1dCwgVGVtcGxhdGVSZWYsIFZpZXdDaGlsZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCB0YWtlIH0gZnJvbSAncnhqcyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2JzLW5hdmJhcicsXG4gIHRlbXBsYXRlVXJsOiAnLi9uYXZiYXIuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9uYXZiYXIuY29tcG9uZW50LnNjc3MnXSxcbn0pXG5leHBvcnQgY2xhc3MgQnNOYXZiYXJDb21wb25lbnQge1xuXG4gIEBWaWV3Q2hpbGQoJ25hdicpIG5hdiE6IEVsZW1lbnRSZWY7XG4gIEBJbnB1dCgpIGF1dG9jbG9zZSA9IHRydWU7XG5cbiAgZXhwYW5kQnV0dG9uVGVtcGxhdGU6IFRlbXBsYXRlUmVmPGFueT4gfCBudWxsID0gbnVsbDtcbiAgXG4gIGlzRXhwYW5kZWQkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxib29sZWFuPihmYWxzZSk7XG4gIHRvZ2dsZUV4cGFuZGVkKCkge1xuICAgIHRoaXMuaXNFeHBhbmRlZCQucGlwZSh0YWtlKDEpKS5zdWJzY3JpYmUoKGlzRXhwYW5kZWQpID0+IHtcbiAgICAgIHRoaXMuaXNFeHBhbmRlZCQubmV4dCghaXNFeHBhbmRlZCk7XG4gICAgfSk7XG4gIH1cblxuICBcbn1cbiIsIjxuYXYgI25hdiBjbGFzcz1cIm5hdmJhciBuYXZiYXItZXhwYW5kLW1kIHBvc2l0aW9uLWZpeGVkIG5hdmJhci1kYXJrIGJnLWRhcmtcIj5cbiAgICA8ZGl2IGNsYXNzPVwiY29udGFpbmVyLWZsdWlkXCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXggdy0xMDAgdy1tZC1hdXRvXCI+XG4gICAgICAgICAgICA8bmctY29udGVudCBzZWxlY3Q9XCJicy1uYXZiYXItYnJhbmRcIj48L25nLWNvbnRlbnQ+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmxleC1lbmQgZC1tZC1ub25lIGQtZmxleCB0d1wiPlxuICAgICAgICAgICAgICAgIDxidXR0b24gKGNsaWNrKT1cInRvZ2dsZUV4cGFuZGVkKClcIiB0aXRsZT1cIkV4cGFuZC9jb2xsYXBzZSBtZW51XCIgY2xhc3M9XCJhbGlnbi1zZWxmLWNlbnRlclwiIFtjbGFzcy5uYXZiYXItdG9nZ2xlcl09XCIhZXhwYW5kQnV0dG9uVGVtcGxhdGVcIiBbY2xhc3MuYmctdHJhbnNwYXJlbnRdPVwiZXhwYW5kQnV0dG9uVGVtcGxhdGVcIiBbY2xhc3Muc2hhZG93LW5vbmVdPVwiZXhwYW5kQnV0dG9uVGVtcGxhdGVcIiBbY2xhc3MuYm9yZGVyLTBdPVwiZXhwYW5kQnV0dG9uVGVtcGxhdGVcIiB0eXBlPVwiYnV0dG9uXCI+XG4gICAgICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJleHBhbmRCdXR0b25UZW1wbGF0ZSA/PyBkZWZhdWx0RXhwYW5kQnV0dG9uOyBjb250ZXh0OiB7ICRpbXBsaWNpdDogKGlzRXhwYW5kZWQkIHwgYXN5bmMpID8gJ29wZW4nIDogJ2Nsb3NlZCcgfVwiPjwvbmctY29udGFpbmVyPlxuICAgICAgICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XG4gICAgPC9kaXY+XG48L25hdj5cblxuPG5nLXRlbXBsYXRlICNkZWZhdWx0RXhwYW5kQnV0dG9uPlxuICAgIDxzcGFuIGNsYXNzPVwibmF2YmFyLXRvZ2dsZXItaWNvblwiPjwvc3Bhbj5cbjwvbmctdGVtcGxhdGU+Il19
@@ -1,33 +1,66 @@
1
- import { Directive, ElementRef, Input } from '@angular/core';
1
+ import { isPlatformServer } from '@angular/common';
2
+ import { Directive, ElementRef, Inject, Input, PLATFORM_ID } from '@angular/core';
3
+ import { BehaviorSubject, combineLatest, filter, Subject, take, takeUntil } from 'rxjs';
2
4
  import { BsNavbarComponent } from '../navbar/navbar.component';
3
5
  import * as i0 from "@angular/core";
4
6
  export class NavbarContentDirective {
5
- constructor(element) {
7
+ constructor(element, platformId) {
6
8
  this.element = element;
9
+ this.platformId = platformId;
10
+ this.destroyed$ = new Subject();
11
+ this.viewInit$ = new BehaviorSubject(false);
12
+ this.navbar$ = new BehaviorSubject(null);
13
+ this.resizeObserver = null;
7
14
  this.initialPadding = 0;
8
- this.resizeObserver = new ResizeObserver((entries) => {
9
- let height = entries[0].contentRect.height;
10
- this.element.nativeElement.style.paddingTop = (this.initialPadding + height) + 'px';
15
+ combineLatest([this.viewInit$, this.navbar$])
16
+ .pipe(filter(([viewInit, navbar]) => {
17
+ return viewInit && !!navbar;
18
+ }))
19
+ .pipe(take(1))
20
+ .pipe(takeUntil(this.destroyed$))
21
+ .subscribe(([viewInit, navbar]) => {
22
+ if (!isPlatformServer(platformId)) {
23
+ // Initialize the ResizeObserver
24
+ this.resizeObserver = new ResizeObserver((entries) => {
25
+ const height = entries[0].contentRect.height;
26
+ this.element.nativeElement.style.paddingTop = (this.initialPadding + height) + 'px';
27
+ });
28
+ // Monitor the size
29
+ const pt = parseInt(this.element.nativeElement.style.paddingTop.replace(/px$/, ''));
30
+ this.initialPadding = isNaN(pt) ? 0 : pt;
31
+ if (this.resizeObserver && navbar) {
32
+ this.resizeObserver.observe(navbar.nav.nativeElement);
33
+ }
34
+ }
11
35
  });
36
+ this.destroyed$
37
+ .pipe(filter(d => !!d))
38
+ .subscribe(() => {
39
+ this.resizeObserver?.unobserve(this.navbar$.value?.nav.nativeElement);
40
+ });
41
+ }
42
+ set navbar(value) {
43
+ this.navbar$.next(value);
12
44
  }
13
45
  ngAfterViewInit() {
14
- let p = parseInt(this.element.nativeElement.style.paddingTop.replace(/px$/, ''));
15
- this.initialPadding = isNaN(p) ? 0 : p;
16
- this.resizeObserver.observe(this.navbar.nav.nativeElement);
46
+ this.viewInit$.next(true);
17
47
  }
18
48
  ngOnDestroy() {
19
- this.resizeObserver.unobserve(this.navbar.nav.nativeElement);
49
+ this.destroyed$.next(true);
20
50
  }
21
51
  }
22
- NavbarContentDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: NavbarContentDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
52
+ NavbarContentDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: NavbarContentDirective, deps: [{ token: i0.ElementRef }, { token: PLATFORM_ID }], target: i0.ɵɵFactoryTarget.Directive });
23
53
  NavbarContentDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.2.0", type: NavbarContentDirective, selector: "[navbarContent]", inputs: { navbar: ["navbarContent", "navbar"] }, ngImport: i0 });
24
54
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: NavbarContentDirective, decorators: [{
25
55
  type: Directive,
26
56
  args: [{
27
57
  selector: '[navbarContent]'
28
58
  }]
29
- }], ctorParameters: function () { return [{ type: i0.ElementRef }]; }, propDecorators: { navbar: [{
59
+ }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: undefined, decorators: [{
60
+ type: Inject,
61
+ args: [PLATFORM_ID]
62
+ }] }]; }, propDecorators: { navbar: [{
30
63
  type: Input,
31
64
  args: ['navbarContent']
32
65
  }] } });
33
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmF2YmFyLWNvbnRlbnQuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9taW50cGxheWVyLW5nLWJvb3RzdHJhcC9zcmMvbGliL2NvbXBvbmVudHMvbmF2YmFyL25hdmJhci1jb250ZW50L25hdmJhci1jb250ZW50LmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQWlCLFNBQVMsRUFBRSxVQUFVLEVBQUUsS0FBSyxFQUFhLE1BQU0sZUFBZSxDQUFDO0FBQ3ZGLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLDRCQUE0QixDQUFDOztBQUsvRCxNQUFNLE9BQU8sc0JBQXNCO0lBRWpDLFlBQW9CLE9BQW1CO1FBQW5CLFlBQU8sR0FBUCxPQUFPLENBQVk7UUFvQnZDLG1CQUFjLEdBQVcsQ0FBQyxDQUFDO1FBbkJ6QixJQUFJLENBQUMsY0FBYyxHQUFHLElBQUksY0FBYyxDQUFDLENBQUMsT0FBTyxFQUFFLEVBQUU7WUFDbkQsSUFBSSxNQUFNLEdBQUcsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDLFdBQVcsQ0FBQyxNQUFNLENBQUM7WUFDM0MsSUFBSSxDQUFDLE9BQU8sQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLFVBQVUsR0FBRyxDQUFDLElBQUksQ0FBQyxjQUFjLEdBQUcsTUFBTSxDQUFDLEdBQUcsSUFBSSxDQUFDO1FBQ3RGLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUlELGVBQWU7UUFDYixJQUFJLENBQUMsR0FBRyxRQUFRLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLFVBQVUsQ0FBQyxPQUFPLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUM7UUFDakYsSUFBSSxDQUFDLGNBQWMsR0FBRyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ3ZDLElBQUksQ0FBQyxjQUFjLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLGFBQWEsQ0FBQyxDQUFDO0lBQzdELENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBSSxDQUFDLGNBQWMsQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsYUFBYSxDQUFDLENBQUM7SUFDL0QsQ0FBQzs7bUhBbkJVLHNCQUFzQjt1R0FBdEIsc0JBQXNCOzJGQUF0QixzQkFBc0I7a0JBSGxDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLGlCQUFpQjtpQkFDNUI7aUdBVXlCLE1BQU07c0JBQTdCLEtBQUs7dUJBQUMsZUFBZSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFmdGVyVmlld0luaXQsIERpcmVjdGl2ZSwgRWxlbWVudFJlZiwgSW5wdXQsIE9uRGVzdHJveSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQnNOYXZiYXJDb21wb25lbnQgfSBmcm9tICcuLi9uYXZiYXIvbmF2YmFyLmNvbXBvbmVudCc7XG5cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ1tuYXZiYXJDb250ZW50XSdcbn0pXG5leHBvcnQgY2xhc3MgTmF2YmFyQ29udGVudERpcmVjdGl2ZSBpbXBsZW1lbnRzIEFmdGVyVmlld0luaXQsIE9uRGVzdHJveSB7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBlbGVtZW50OiBFbGVtZW50UmVmKSB7XG4gICAgdGhpcy5yZXNpemVPYnNlcnZlciA9IG5ldyBSZXNpemVPYnNlcnZlcigoZW50cmllcykgPT4ge1xuICAgICAgbGV0IGhlaWdodCA9IGVudHJpZXNbMF0uY29udGVudFJlY3QuaGVpZ2h0O1xuICAgICAgdGhpcy5lbGVtZW50Lm5hdGl2ZUVsZW1lbnQuc3R5bGUucGFkZGluZ1RvcCA9ICh0aGlzLmluaXRpYWxQYWRkaW5nICsgaGVpZ2h0KSArICdweCc7XG4gICAgfSk7XG4gIH1cblxuICBASW5wdXQoJ25hdmJhckNvbnRlbnQnKSBuYXZiYXIhOiBCc05hdmJhckNvbXBvbmVudDtcblxuICBuZ0FmdGVyVmlld0luaXQoKSB7XG4gICAgbGV0IHAgPSBwYXJzZUludCh0aGlzLmVsZW1lbnQubmF0aXZlRWxlbWVudC5zdHlsZS5wYWRkaW5nVG9wLnJlcGxhY2UoL3B4JC8sICcnKSk7XG4gICAgdGhpcy5pbml0aWFsUGFkZGluZyA9IGlzTmFOKHApID8gMCA6IHA7XG4gICAgdGhpcy5yZXNpemVPYnNlcnZlci5vYnNlcnZlKHRoaXMubmF2YmFyLm5hdi5uYXRpdmVFbGVtZW50KTtcbiAgfVxuXG4gIG5nT25EZXN0cm95KCkge1xuICAgIHRoaXMucmVzaXplT2JzZXJ2ZXIudW5vYnNlcnZlKHRoaXMubmF2YmFyLm5hdi5uYXRpdmVFbGVtZW50KTtcbiAgfVxuXG4gIHJlc2l6ZU9ic2VydmVyOiBSZXNpemVPYnNlcnZlcjtcbiAgaW5pdGlhbFBhZGRpbmc6IG51bWJlciA9IDA7XG59XG4iXX0=
66
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmF2YmFyLWNvbnRlbnQuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9taW50cGxheWVyLW5nLWJvb3RzdHJhcC9zcmMvbGliL2NvbXBvbmVudHMvbmF2YmFyL25hdmJhci1jb250ZW50L25hdmJhci1jb250ZW50LmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUNuRCxPQUFPLEVBQWlCLFNBQVMsRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBYSxXQUFXLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDNUcsT0FBTyxFQUFFLGVBQWUsRUFBRSxhQUFhLEVBQUUsTUFBTSxFQUFFLE9BQU8sRUFBRSxJQUFJLEVBQUUsU0FBUyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ3hGLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLDRCQUE0QixDQUFDOztBQUsvRCxNQUFNLE9BQU8sc0JBQXNCO0lBRWpDLFlBQW9CLE9BQW1CLEVBQStCLFVBQWU7UUFBakUsWUFBTyxHQUFQLE9BQU8sQ0FBWTtRQUErQixlQUFVLEdBQVYsVUFBVSxDQUFLO1FBK0I3RSxlQUFVLEdBQUcsSUFBSSxPQUFPLEVBQUUsQ0FBQztRQUMzQixjQUFTLEdBQUcsSUFBSSxlQUFlLENBQVUsS0FBSyxDQUFDLENBQUM7UUFDaEQsWUFBTyxHQUFHLElBQUksZUFBZSxDQUEyQixJQUFJLENBQUMsQ0FBQztRQUN0RSxtQkFBYyxHQUEwQixJQUFJLENBQUM7UUFDN0MsbUJBQWMsR0FBRyxDQUFDLENBQUM7UUFsQ2pCLGFBQWEsQ0FBQyxDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO2FBQzFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLFFBQVEsRUFBRSxNQUFNLENBQUMsRUFBRSxFQUFFO1lBQ2xDLE9BQU8sUUFBUSxJQUFJLENBQUMsQ0FBQyxNQUFNLENBQUM7UUFDOUIsQ0FBQyxDQUFDLENBQUM7YUFDRixJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDO2FBQ2IsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUM7YUFDaEMsU0FBUyxDQUFDLENBQUMsQ0FBQyxRQUFRLEVBQUUsTUFBTSxDQUFDLEVBQUUsRUFBRTtZQUNoQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsVUFBVSxDQUFDLEVBQUU7Z0JBQ2pDLGdDQUFnQztnQkFDaEMsSUFBSSxDQUFDLGNBQWMsR0FBRyxJQUFJLGNBQWMsQ0FBQyxDQUFDLE9BQU8sRUFBRSxFQUFFO29CQUNuRCxNQUFNLE1BQU0sR0FBRyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUMsV0FBVyxDQUFDLE1BQU0sQ0FBQztvQkFDN0MsSUFBSSxDQUFDLE9BQU8sQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLFVBQVUsR0FBRyxDQUFDLElBQUksQ0FBQyxjQUFjLEdBQUcsTUFBTSxDQUFDLEdBQUcsSUFBSSxDQUFDO2dCQUN0RixDQUFDLENBQUMsQ0FBQztnQkFFSCxtQkFBbUI7Z0JBQ25CLE1BQU0sRUFBRSxHQUFHLFFBQVEsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsVUFBVSxDQUFDLE9BQU8sQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQztnQkFDcEYsSUFBSSxDQUFDLGNBQWMsR0FBRyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO2dCQUN6QyxJQUFJLElBQUksQ0FBQyxjQUFjLElBQUksTUFBTSxFQUFFO29CQUNqQyxJQUFJLENBQUMsY0FBYyxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLGFBQWEsQ0FBQyxDQUFDO2lCQUN2RDthQUNGO1FBQ0gsQ0FBQyxDQUFDLENBQUM7UUFFTCxJQUFJLENBQUMsVUFBVTthQUNaLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7YUFDdEIsU0FBUyxDQUFDLEdBQUcsRUFBRTtZQUNkLElBQUksQ0FBQyxjQUFjLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsS0FBSyxFQUFFLEdBQUcsQ0FBQyxhQUFhLENBQUMsQ0FBQztRQUN4RSxDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7SUFRRCxJQUE0QixNQUFNLENBQUMsS0FBd0I7UUFDekQsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDM0IsQ0FBQztJQUVELGVBQWU7UUFDYixJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUM1QixDQUFDO0lBRUQsV0FBVztRQUNULElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQzdCLENBQUM7O21IQWpEVSxzQkFBc0IsNENBRWdCLFdBQVc7dUdBRmpELHNCQUFzQjsyRkFBdEIsc0JBQXNCO2tCQUhsQyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxpQkFBaUI7aUJBQzVCOzswQkFHMkMsTUFBTTsyQkFBQyxXQUFXOzRDQXFDaEMsTUFBTTtzQkFBakMsS0FBSzt1QkFBQyxlQUFlIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgaXNQbGF0Zm9ybVNlcnZlciB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBBZnRlclZpZXdJbml0LCBEaXJlY3RpdmUsIEVsZW1lbnRSZWYsIEluamVjdCwgSW5wdXQsIE9uRGVzdHJveSwgUExBVEZPUk1fSUQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCwgY29tYmluZUxhdGVzdCwgZmlsdGVyLCBTdWJqZWN0LCB0YWtlLCB0YWtlVW50aWwgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IEJzTmF2YmFyQ29tcG9uZW50IH0gZnJvbSAnLi4vbmF2YmFyL25hdmJhci5jb21wb25lbnQnO1xuXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6ICdbbmF2YmFyQ29udGVudF0nXG59KVxuZXhwb3J0IGNsYXNzIE5hdmJhckNvbnRlbnREaXJlY3RpdmUgaW1wbGVtZW50cyBBZnRlclZpZXdJbml0LCBPbkRlc3Ryb3kge1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgZWxlbWVudDogRWxlbWVudFJlZiwgQEluamVjdChQTEFURk9STV9JRCkgcHJpdmF0ZSBwbGF0Zm9ybUlkOiBhbnkpIHtcbiAgICBjb21iaW5lTGF0ZXN0KFt0aGlzLnZpZXdJbml0JCwgdGhpcy5uYXZiYXIkXSlcbiAgICAgIC5waXBlKGZpbHRlcigoW3ZpZXdJbml0LCBuYXZiYXJdKSA9PiB7XG4gICAgICAgIHJldHVybiB2aWV3SW5pdCAmJiAhIW5hdmJhcjtcbiAgICAgIH0pKVxuICAgICAgLnBpcGUodGFrZSgxKSlcbiAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3llZCQpKVxuICAgICAgLnN1YnNjcmliZSgoW3ZpZXdJbml0LCBuYXZiYXJdKSA9PiB7XG4gICAgICAgIGlmICghaXNQbGF0Zm9ybVNlcnZlcihwbGF0Zm9ybUlkKSkge1xuICAgICAgICAgIC8vIEluaXRpYWxpemUgdGhlIFJlc2l6ZU9ic2VydmVyXG4gICAgICAgICAgdGhpcy5yZXNpemVPYnNlcnZlciA9IG5ldyBSZXNpemVPYnNlcnZlcigoZW50cmllcykgPT4ge1xuICAgICAgICAgICAgY29uc3QgaGVpZ2h0ID0gZW50cmllc1swXS5jb250ZW50UmVjdC5oZWlnaHQ7XG4gICAgICAgICAgICB0aGlzLmVsZW1lbnQubmF0aXZlRWxlbWVudC5zdHlsZS5wYWRkaW5nVG9wID0gKHRoaXMuaW5pdGlhbFBhZGRpbmcgKyBoZWlnaHQpICsgJ3B4JztcbiAgICAgICAgICB9KTtcblxuICAgICAgICAgIC8vIE1vbml0b3IgdGhlIHNpemVcbiAgICAgICAgICBjb25zdCBwdCA9IHBhcnNlSW50KHRoaXMuZWxlbWVudC5uYXRpdmVFbGVtZW50LnN0eWxlLnBhZGRpbmdUb3AucmVwbGFjZSgvcHgkLywgJycpKTtcbiAgICAgICAgICB0aGlzLmluaXRpYWxQYWRkaW5nID0gaXNOYU4ocHQpID8gMCA6IHB0O1xuICAgICAgICAgIGlmICh0aGlzLnJlc2l6ZU9ic2VydmVyICYmIG5hdmJhcikge1xuICAgICAgICAgICAgdGhpcy5yZXNpemVPYnNlcnZlci5vYnNlcnZlKG5hdmJhci5uYXYubmF0aXZlRWxlbWVudCk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9KTtcblxuICAgIHRoaXMuZGVzdHJveWVkJFxuICAgICAgLnBpcGUoZmlsdGVyKGQgPT4gISFkKSlcbiAgICAgIC5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICB0aGlzLnJlc2l6ZU9ic2VydmVyPy51bm9ic2VydmUodGhpcy5uYXZiYXIkLnZhbHVlPy5uYXYubmF0aXZlRWxlbWVudCk7XG4gICAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgZGVzdHJveWVkJCA9IG5ldyBTdWJqZWN0KCk7XG4gIHByaXZhdGUgdmlld0luaXQkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxib29sZWFuPihmYWxzZSk7XG4gIHByaXZhdGUgbmF2YmFyJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8QnNOYXZiYXJDb21wb25lbnQgfCBudWxsPihudWxsKTtcbiAgcmVzaXplT2JzZXJ2ZXI6IFJlc2l6ZU9ic2VydmVyIHwgbnVsbCA9IG51bGw7XG4gIGluaXRpYWxQYWRkaW5nID0gMDtcblxuICBASW5wdXQoJ25hdmJhckNvbnRlbnQnKSBzZXQgbmF2YmFyKHZhbHVlOiBCc05hdmJhckNvbXBvbmVudCkge1xuICAgIHRoaXMubmF2YmFyJC5uZXh0KHZhbHVlKTtcbiAgfVxuICBcbiAgbmdBZnRlclZpZXdJbml0KCkge1xuICAgIHRoaXMudmlld0luaXQkLm5leHQodHJ1ZSk7XG4gIH1cblxuICBuZ09uRGVzdHJveSgpIHtcbiAgICB0aGlzLmRlc3Ryb3llZCQubmV4dCh0cnVlKTtcbiAgfVxufVxuIl19
@@ -16,8 +16,9 @@ export class BsNavbarItemComponent {
16
16
  this.anchorTag = this.element.nativeElement.querySelector('li a');
17
17
  if (this.hasDropdown) {
18
18
  (this.anchorTag) && this.anchorTag.classList.add('dropdown-toggle');
19
- if (this.anchorTag && !this.anchorTag.onclick) {
20
- this.anchorTag.onclick = (ev) => {
19
+ if (this.anchorTag && !this.anchorTag.getAttribute('close-init-b')) {
20
+ this.anchorTag.setAttribute('close-init-b', '1');
21
+ this.anchorTag.addEventListener('click', (ev) => {
21
22
  ev.preventDefault();
22
23
  // Normally there should be only one dropdown in this list
23
24
  this.dropdowns.forEach((dropdown) => {
@@ -28,24 +29,23 @@ export class BsNavbarItemComponent {
28
29
  }
29
30
  });
30
31
  return false;
31
- };
32
+ });
32
33
  }
33
34
  }
34
35
  else {
35
36
  // Close if this is a link
36
- if (this.dropdowns.length === 0) {
37
- if (this.anchorTag && !this.anchorTag.onclick) {
38
- this.anchorTag.onclick = (ev) => {
39
- let d = this.parentDropdown;
40
- while (d && d.autoclose) {
41
- d.isVisible = false;
42
- d = d.parentDropdown;
43
- }
44
- if (this.navbar.autoclose) {
45
- this.navbar.isExpanded$.next(false);
46
- }
47
- };
48
- }
37
+ if ((this.dropdowns.length === 0) && this.anchorTag && !this.anchorTag.getAttribute('close-init-a')) {
38
+ this.anchorTag.setAttribute('close-init-a', '1');
39
+ this.anchorTag.addEventListener('click', (ev) => {
40
+ let d = this.parentDropdown;
41
+ while (d && d.autoclose) {
42
+ d.isVisible = false;
43
+ d = d.parentDropdown;
44
+ }
45
+ if (this.navbar.autoclose) {
46
+ this.navbar.isExpanded$.next(false);
47
+ }
48
+ });
49
49
  }
50
50
  }
51
51
  }
@@ -61,4 +61,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.0", ngImpor
61
61
  type: ContentChildren,
62
62
  args: [forwardRef(() => BsNavbarDropdownComponent)]
63
63
  }] } });
64
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmF2YmFyLWl0ZW0uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9taW50cGxheWVyLW5nLWJvb3RzdHJhcC9zcmMvbGliL2NvbXBvbmVudHMvbmF2YmFyL25hdmJhci1pdGVtL25hdmJhci1pdGVtLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbWludHBsYXllci1uZy1ib290c3RyYXAvc3JjL2xpYi9jb21wb25lbnRzL25hdmJhci9uYXZiYXItaXRlbS9uYXZiYXItaXRlbS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQXVCLFNBQVMsRUFBRSxlQUFlLEVBQUUsVUFBVSxFQUFFLFVBQVUsRUFBRSxRQUFRLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzdILE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBQ3pFLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLDhDQUE4QyxDQUFDOzs7O0FBT3pGLE1BQU0sT0FBTyxxQkFBcUI7SUFFaEMsWUFBb0IsTUFBeUIsRUFBYyxjQUF5QyxFQUFVLE9BQW1CO1FBQTdHLFdBQU0sR0FBTixNQUFNLENBQW1CO1FBQWlFLFlBQU8sR0FBUCxPQUFPLENBQVk7UUFLakksZ0JBQVcsR0FBRyxLQUFLLENBQUM7UUFDcEIsY0FBUyxHQUE2QixJQUFJLENBQUM7UUFMekMsSUFBSSxDQUFDLGNBQWMsR0FBRyxjQUFjLENBQUM7SUFDdkMsQ0FBQztJQU9ELHFCQUFxQjtRQUNuQixJQUFJLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsYUFBYSxDQUFDLGFBQWEsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUVsRSxJQUFJLElBQUksQ0FBQyxXQUFXLEVBQUU7WUFDcEIsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksSUFBSSxDQUFDLFNBQVMsQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLGlCQUFpQixDQUFDLENBQUM7WUFFcEUsSUFBSSxJQUFJLENBQUMsU0FBUyxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxPQUFPLEVBQUU7Z0JBQzdDLElBQUksQ0FBQyxTQUFTLENBQUMsT0FBTyxHQUFHLENBQUMsRUFBUyxFQUFFLEVBQUU7b0JBQ3JDLEVBQUUsQ0FBQyxjQUFjLEVBQUUsQ0FBQztvQkFDcEIsMERBQTBEO29CQUMxRCxJQUFJLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxDQUFDLFFBQVEsRUFBRSxFQUFFO3dCQUNsQyxJQUFJLENBQUMsQ0FBQyxRQUFRLENBQUMsU0FBUyxHQUFHLENBQUMsUUFBUSxDQUFDLFNBQVMsQ0FBQyxFQUFFOzRCQUMvQyxRQUFRLENBQUMsY0FBYyxDQUFDLE9BQU8sQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFO2dDQUN4QyxLQUFLLENBQUMsU0FBUyxHQUFHLEtBQUssQ0FBQzs0QkFDMUIsQ0FBQyxDQUFDLENBQUM7eUJBQ0o7b0JBQ0gsQ0FBQyxDQUFDLENBQUM7b0JBQ0gsT0FBTyxLQUFLLENBQUM7Z0JBQ2YsQ0FBQyxDQUFBO2FBQ0Y7U0FDRjthQUFNO1lBRUwsMEJBQTBCO1lBQzFCLElBQUksSUFBSSxDQUFDLFNBQVMsQ0FBQyxNQUFNLEtBQUssQ0FBQyxFQUFFO2dCQUMvQixJQUFJLElBQUksQ0FBQyxTQUFTLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLE9BQU8sRUFBRTtvQkFDN0MsSUFBSSxDQUFDLFNBQVMsQ0FBQyxPQUFPLEdBQUcsQ0FBQyxFQUFTLEVBQUUsRUFBRTt3QkFDckMsSUFBSSxDQUFDLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQzt3QkFDNUIsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDLFNBQVMsRUFBRTs0QkFDdkIsQ0FBQyxDQUFDLFNBQVMsR0FBRyxLQUFLLENBQUM7NEJBQ3BCLENBQUMsR0FBRyxDQUFDLENBQUMsY0FBYyxDQUFDO3lCQUN0Qjt3QkFDRCxJQUFJLElBQUksQ0FBQyxNQUFNLENBQUMsU0FBUyxFQUFFOzRCQUN6QixJQUFJLENBQUMsTUFBTSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7eUJBQ3JDO29CQUNILENBQUMsQ0FBQztpQkFDSDthQUNGO1NBRUY7SUFDSCxDQUFDOztrSEFsRFUscUJBQXFCO3NHQUFyQixxQkFBcUIsbUhBU0UseUJBQXlCLGlDQ2xCN0QsME9BRUs7MkZET1EscUJBQXFCO2tCQUxqQyxTQUFTOytCQUNFLGdCQUFnQjs7MEJBTXNCLFFBQVE7cUVBT00sU0FBUztzQkFBdEUsZUFBZTt1QkFBQyxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMseUJBQXlCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBZnRlckNvbnRlbnRDaGVja2VkLCBDb21wb25lbnQsIENvbnRlbnRDaGlsZHJlbiwgRWxlbWVudFJlZiwgZm9yd2FyZFJlZiwgT3B0aW9uYWwsIFF1ZXJ5TGlzdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQnNOYXZiYXJDb21wb25lbnQgfSBmcm9tICcuLi8uLi9uYXZiYXIvbmF2YmFyL25hdmJhci5jb21wb25lbnQnO1xuaW1wb3J0IHsgQnNOYXZiYXJEcm9wZG93bkNvbXBvbmVudCB9IGZyb20gJy4uL25hdmJhci1kcm9wZG93bi9uYXZiYXItZHJvcGRvd24uY29tcG9uZW50JztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYnMtbmF2YmFyLWl0ZW0nLFxuICB0ZW1wbGF0ZVVybDogJy4vbmF2YmFyLWl0ZW0uY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9uYXZiYXItaXRlbS5jb21wb25lbnQuc2NzcyddXG59KVxuZXhwb3J0IGNsYXNzIEJzTmF2YmFySXRlbUNvbXBvbmVudCBpbXBsZW1lbnRzIEFmdGVyQ29udGVudENoZWNrZWQge1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgbmF2YmFyOiBCc05hdmJhckNvbXBvbmVudCwgQE9wdGlvbmFsKCkgcGFyZW50RHJvcGRvd246IEJzTmF2YmFyRHJvcGRvd25Db21wb25lbnQsIHByaXZhdGUgZWxlbWVudDogRWxlbWVudFJlZikge1xuICAgIHRoaXMucGFyZW50RHJvcGRvd24gPSBwYXJlbnREcm9wZG93bjtcbiAgfVxuXG4gIHBhcmVudERyb3Bkb3duOiBCc05hdmJhckRyb3Bkb3duQ29tcG9uZW50O1xuICBoYXNEcm9wZG93biA9IGZhbHNlO1xuICBhbmNob3JUYWc6IEhUTUxBbmNob3JFbGVtZW50IHwgbnVsbCA9IG51bGw7XG4gIEBDb250ZW50Q2hpbGRyZW4oZm9yd2FyZFJlZigoKSA9PiBCc05hdmJhckRyb3Bkb3duQ29tcG9uZW50KSkgZHJvcGRvd25zITogUXVlcnlMaXN0PEJzTmF2YmFyRHJvcGRvd25Db21wb25lbnQ+O1xuXG4gIG5nQWZ0ZXJDb250ZW50Q2hlY2tlZCgpIHtcbiAgICB0aGlzLmFuY2hvclRhZyA9IHRoaXMuZWxlbWVudC5uYXRpdmVFbGVtZW50LnF1ZXJ5U2VsZWN0b3IoJ2xpIGEnKTtcblxuICAgIGlmICh0aGlzLmhhc0Ryb3Bkb3duKSB7XG4gICAgICAodGhpcy5hbmNob3JUYWcpICYmIHRoaXMuYW5jaG9yVGFnLmNsYXNzTGlzdC5hZGQoJ2Ryb3Bkb3duLXRvZ2dsZScpO1xuXG4gICAgICBpZiAodGhpcy5hbmNob3JUYWcgJiYgIXRoaXMuYW5jaG9yVGFnLm9uY2xpY2spIHtcbiAgICAgICAgdGhpcy5hbmNob3JUYWcub25jbGljayA9IChldjogRXZlbnQpID0+IHtcbiAgICAgICAgICBldi5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICAgIC8vIE5vcm1hbGx5IHRoZXJlIHNob3VsZCBiZSBvbmx5IG9uZSBkcm9wZG93biBpbiB0aGlzIGxpc3RcbiAgICAgICAgICB0aGlzLmRyb3Bkb3ducy5mb3JFYWNoKChkcm9wZG93bikgPT4ge1xuICAgICAgICAgICAgaWYgKCEoZHJvcGRvd24uaXNWaXNpYmxlID0gIWRyb3Bkb3duLmlzVmlzaWJsZSkpIHtcbiAgICAgICAgICAgICAgZHJvcGRvd24uY2hpbGREcm9wZG93bnMuZm9yRWFjaCgoY2hpbGQpID0+IHtcbiAgICAgICAgICAgICAgICBjaGlsZC5pc1Zpc2libGUgPSBmYWxzZTtcbiAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfSk7XG4gICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfSBlbHNlIHtcblxuICAgICAgLy8gQ2xvc2UgaWYgdGhpcyBpcyBhIGxpbmtcbiAgICAgIGlmICh0aGlzLmRyb3Bkb3ducy5sZW5ndGggPT09IDApIHtcbiAgICAgICAgaWYgKHRoaXMuYW5jaG9yVGFnICYmICF0aGlzLmFuY2hvclRhZy5vbmNsaWNrKSB7XG4gICAgICAgICAgdGhpcy5hbmNob3JUYWcub25jbGljayA9IChldjogRXZlbnQpID0+IHtcbiAgICAgICAgICAgIGxldCBkID0gdGhpcy5wYXJlbnREcm9wZG93bjtcbiAgICAgICAgICAgIHdoaWxlIChkICYmIGQuYXV0b2Nsb3NlKSB7XG4gICAgICAgICAgICAgIGQuaXNWaXNpYmxlID0gZmFsc2U7XG4gICAgICAgICAgICAgIGQgPSBkLnBhcmVudERyb3Bkb3duO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaWYgKHRoaXMubmF2YmFyLmF1dG9jbG9zZSkge1xuICAgICAgICAgICAgICB0aGlzLm5hdmJhci5pc0V4cGFuZGVkJC5uZXh0KGZhbHNlKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9O1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICB9XG4gIH1cbn1cbiIsIjxsaSBbY2xhc3MubmF2LWl0ZW1dPVwicGFyZW50RHJvcGRvd24gPT09IG51bGxcIiBbY2xhc3MuZHJvcGRvd25dPVwiKGRyb3Bkb3ducy5sZW5ndGggPiAwKSAmJiAocGFyZW50RHJvcGRvd24gPT09IG51bGwpXCIgW2NsYXNzLmRyb3BlbmRdPVwiKGRyb3Bkb3ducy5sZW5ndGggPiAwKSAmJiAocGFyZW50RHJvcGRvd24gIT09IG51bGwpXCI+XG4gICAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuPC9saT4iXX0=
64
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmF2YmFyLWl0ZW0uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9taW50cGxheWVyLW5nLWJvb3RzdHJhcC9zcmMvbGliL2NvbXBvbmVudHMvbmF2YmFyL25hdmJhci1pdGVtL25hdmJhci1pdGVtLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbWludHBsYXllci1uZy1ib290c3RyYXAvc3JjL2xpYi9jb21wb25lbnRzL25hdmJhci9uYXZiYXItaXRlbS9uYXZiYXItaXRlbS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQXVCLFNBQVMsRUFBRSxlQUFlLEVBQUUsVUFBVSxFQUFFLFVBQVUsRUFBRSxRQUFRLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzdILE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBQ3pFLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLDhDQUE4QyxDQUFDOzs7O0FBT3pGLE1BQU0sT0FBTyxxQkFBcUI7SUFFaEMsWUFBb0IsTUFBeUIsRUFBYyxjQUF5QyxFQUFVLE9BQW1CO1FBQTdHLFdBQU0sR0FBTixNQUFNLENBQW1CO1FBQWlFLFlBQU8sR0FBUCxPQUFPLENBQVk7UUFLakksZ0JBQVcsR0FBRyxLQUFLLENBQUM7UUFDcEIsY0FBUyxHQUE2QixJQUFJLENBQUM7UUFMekMsSUFBSSxDQUFDLGNBQWMsR0FBRyxjQUFjLENBQUM7SUFDdkMsQ0FBQztJQU9ELHFCQUFxQjtRQUNuQixJQUFJLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsYUFBYSxDQUFDLGFBQWEsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUVsRSxJQUFJLElBQUksQ0FBQyxXQUFXLEVBQUU7WUFDcEIsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksSUFBSSxDQUFDLFNBQVMsQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLGlCQUFpQixDQUFDLENBQUM7WUFFcEUsSUFBSSxJQUFJLENBQUMsU0FBUyxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxZQUFZLENBQUMsY0FBYyxDQUFDLEVBQUU7Z0JBQ2xFLElBQUksQ0FBQyxTQUFTLENBQUMsWUFBWSxDQUFDLGNBQWMsRUFBRSxHQUFHLENBQUMsQ0FBQztnQkFDakQsSUFBSSxDQUFDLFNBQVMsQ0FBQyxnQkFBZ0IsQ0FBQyxPQUFPLEVBQUUsQ0FBQyxFQUFjLEVBQUUsRUFBRTtvQkFDMUQsRUFBRSxDQUFDLGNBQWMsRUFBRSxDQUFDO29CQUNwQiwwREFBMEQ7b0JBQzFELElBQUksQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLENBQUMsUUFBUSxFQUFFLEVBQUU7d0JBQ2xDLElBQUksQ0FBQyxDQUFDLFFBQVEsQ0FBQyxTQUFTLEdBQUcsQ0FBQyxRQUFRLENBQUMsU0FBUyxDQUFDLEVBQUU7NEJBQy9DLFFBQVEsQ0FBQyxjQUFjLENBQUMsT0FBTyxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUU7Z0NBQ3hDLEtBQUssQ0FBQyxTQUFTLEdBQUcsS0FBSyxDQUFDOzRCQUMxQixDQUFDLENBQUMsQ0FBQzt5QkFDSjtvQkFDSCxDQUFDLENBQUMsQ0FBQztvQkFDSCxPQUFPLEtBQUssQ0FBQztnQkFDZixDQUFDLENBQUMsQ0FBQzthQUNKO1NBQ0Y7YUFBTTtZQUVMLDBCQUEwQjtZQUMxQixJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxNQUFNLEtBQUssQ0FBQyxDQUFDLElBQUksSUFBSSxDQUFDLFNBQVMsSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsWUFBWSxDQUFDLGNBQWMsQ0FBQyxFQUFFO2dCQUNuRyxJQUFJLENBQUMsU0FBUyxDQUFDLFlBQVksQ0FBQyxjQUFjLEVBQUUsR0FBRyxDQUFDLENBQUM7Z0JBQ2pELElBQUksQ0FBQyxTQUFTLENBQUMsZ0JBQWdCLENBQUMsT0FBTyxFQUFFLENBQUMsRUFBYyxFQUFFLEVBQUU7b0JBQzFELElBQUksQ0FBQyxHQUFHLElBQUksQ0FBQyxjQUFjLENBQUM7b0JBQzVCLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxTQUFTLEVBQUU7d0JBQ3ZCLENBQUMsQ0FBQyxTQUFTLEdBQUcsS0FBSyxDQUFDO3dCQUNwQixDQUFDLEdBQUcsQ0FBQyxDQUFDLGNBQWMsQ0FBQztxQkFDdEI7b0JBQ0QsSUFBSSxJQUFJLENBQUMsTUFBTSxDQUFDLFNBQVMsRUFBRTt3QkFDekIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO3FCQUNyQztnQkFDSCxDQUFDLENBQUMsQ0FBQzthQUNKO1NBRUY7SUFDSCxDQUFDOztrSEFsRFUscUJBQXFCO3NHQUFyQixxQkFBcUIsbUhBU0UseUJBQXlCLGlDQ2xCN0QsME9BRUs7MkZET1EscUJBQXFCO2tCQUxqQyxTQUFTOytCQUNFLGdCQUFnQjs7MEJBTXNCLFFBQVE7cUVBT00sU0FBUztzQkFBdEUsZUFBZTt1QkFBQyxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMseUJBQXlCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBZnRlckNvbnRlbnRDaGVja2VkLCBDb21wb25lbnQsIENvbnRlbnRDaGlsZHJlbiwgRWxlbWVudFJlZiwgZm9yd2FyZFJlZiwgT3B0aW9uYWwsIFF1ZXJ5TGlzdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQnNOYXZiYXJDb21wb25lbnQgfSBmcm9tICcuLi8uLi9uYXZiYXIvbmF2YmFyL25hdmJhci5jb21wb25lbnQnO1xuaW1wb3J0IHsgQnNOYXZiYXJEcm9wZG93bkNvbXBvbmVudCB9IGZyb20gJy4uL25hdmJhci1kcm9wZG93bi9uYXZiYXItZHJvcGRvd24uY29tcG9uZW50JztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYnMtbmF2YmFyLWl0ZW0nLFxuICB0ZW1wbGF0ZVVybDogJy4vbmF2YmFyLWl0ZW0uY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9uYXZiYXItaXRlbS5jb21wb25lbnQuc2NzcyddXG59KVxuZXhwb3J0IGNsYXNzIEJzTmF2YmFySXRlbUNvbXBvbmVudCBpbXBsZW1lbnRzIEFmdGVyQ29udGVudENoZWNrZWQge1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgbmF2YmFyOiBCc05hdmJhckNvbXBvbmVudCwgQE9wdGlvbmFsKCkgcGFyZW50RHJvcGRvd246IEJzTmF2YmFyRHJvcGRvd25Db21wb25lbnQsIHByaXZhdGUgZWxlbWVudDogRWxlbWVudFJlZikge1xuICAgIHRoaXMucGFyZW50RHJvcGRvd24gPSBwYXJlbnREcm9wZG93bjtcbiAgfVxuXG4gIHBhcmVudERyb3Bkb3duOiBCc05hdmJhckRyb3Bkb3duQ29tcG9uZW50O1xuICBoYXNEcm9wZG93biA9IGZhbHNlO1xuICBhbmNob3JUYWc6IEhUTUxBbmNob3JFbGVtZW50IHwgbnVsbCA9IG51bGw7XG4gIEBDb250ZW50Q2hpbGRyZW4oZm9yd2FyZFJlZigoKSA9PiBCc05hdmJhckRyb3Bkb3duQ29tcG9uZW50KSkgZHJvcGRvd25zITogUXVlcnlMaXN0PEJzTmF2YmFyRHJvcGRvd25Db21wb25lbnQ+O1xuXG4gIG5nQWZ0ZXJDb250ZW50Q2hlY2tlZCgpIHtcbiAgICB0aGlzLmFuY2hvclRhZyA9IHRoaXMuZWxlbWVudC5uYXRpdmVFbGVtZW50LnF1ZXJ5U2VsZWN0b3IoJ2xpIGEnKTtcblxuICAgIGlmICh0aGlzLmhhc0Ryb3Bkb3duKSB7XG4gICAgICAodGhpcy5hbmNob3JUYWcpICYmIHRoaXMuYW5jaG9yVGFnLmNsYXNzTGlzdC5hZGQoJ2Ryb3Bkb3duLXRvZ2dsZScpO1xuXG4gICAgICBpZiAodGhpcy5hbmNob3JUYWcgJiYgIXRoaXMuYW5jaG9yVGFnLmdldEF0dHJpYnV0ZSgnY2xvc2UtaW5pdC1iJykpIHtcbiAgICAgICAgdGhpcy5hbmNob3JUYWcuc2V0QXR0cmlidXRlKCdjbG9zZS1pbml0LWInLCAnMScpO1xuICAgICAgICB0aGlzLmFuY2hvclRhZy5hZGRFdmVudExpc3RlbmVyKCdjbGljaycsIChldjogTW91c2VFdmVudCkgPT4ge1xuICAgICAgICAgIGV2LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgICAgLy8gTm9ybWFsbHkgdGhlcmUgc2hvdWxkIGJlIG9ubHkgb25lIGRyb3Bkb3duIGluIHRoaXMgbGlzdFxuICAgICAgICAgIHRoaXMuZHJvcGRvd25zLmZvckVhY2goKGRyb3Bkb3duKSA9PiB7XG4gICAgICAgICAgICBpZiAoIShkcm9wZG93bi5pc1Zpc2libGUgPSAhZHJvcGRvd24uaXNWaXNpYmxlKSkge1xuICAgICAgICAgICAgICBkcm9wZG93bi5jaGlsZERyb3Bkb3ducy5mb3JFYWNoKChjaGlsZCkgPT4ge1xuICAgICAgICAgICAgICAgIGNoaWxkLmlzVmlzaWJsZSA9IGZhbHNlO1xuICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9KTtcbiAgICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICAgIH0pO1xuICAgICAgfVxuICAgIH0gZWxzZSB7XG5cbiAgICAgIC8vIENsb3NlIGlmIHRoaXMgaXMgYSBsaW5rXG4gICAgICBpZiAoKHRoaXMuZHJvcGRvd25zLmxlbmd0aCA9PT0gMCkgJiYgdGhpcy5hbmNob3JUYWcgJiYgIXRoaXMuYW5jaG9yVGFnLmdldEF0dHJpYnV0ZSgnY2xvc2UtaW5pdC1hJykpIHtcbiAgICAgICAgdGhpcy5hbmNob3JUYWcuc2V0QXR0cmlidXRlKCdjbG9zZS1pbml0LWEnLCAnMScpO1xuICAgICAgICB0aGlzLmFuY2hvclRhZy5hZGRFdmVudExpc3RlbmVyKCdjbGljaycsIChldjogTW91c2VFdmVudCkgPT4ge1xuICAgICAgICAgIGxldCBkID0gdGhpcy5wYXJlbnREcm9wZG93bjtcbiAgICAgICAgICB3aGlsZSAoZCAmJiBkLmF1dG9jbG9zZSkge1xuICAgICAgICAgICAgZC5pc1Zpc2libGUgPSBmYWxzZTtcbiAgICAgICAgICAgIGQgPSBkLnBhcmVudERyb3Bkb3duO1xuICAgICAgICAgIH1cbiAgICAgICAgICBpZiAodGhpcy5uYXZiYXIuYXV0b2Nsb3NlKSB7XG4gICAgICAgICAgICB0aGlzLm5hdmJhci5pc0V4cGFuZGVkJC5uZXh0KGZhbHNlKTtcbiAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgICAgfVxuXG4gICAgfVxuICB9XG59XG4iLCI8bGkgW2NsYXNzLm5hdi1pdGVtXT1cInBhcmVudERyb3Bkb3duID09PSBudWxsXCIgW2NsYXNzLmRyb3Bkb3duXT1cIihkcm9wZG93bnMubGVuZ3RoID4gMCkgJiYgKHBhcmVudERyb3Bkb3duID09PSBudWxsKVwiIFtjbGFzcy5kcm9wZW5kXT1cIihkcm9wZG93bnMubGVuZ3RoID4gMCkgJiYgKHBhcmVudERyb3Bkb3duICE9PSBudWxsKVwiPlxuICAgIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cbjwvbGk+Il19
@@ -1,4 +1,4 @@
1
- import { Component, EventEmitter, HostListener, Input, Output } from '@angular/core';
1
+ import { Component, EventEmitter, HostListener, Input, Output, } from '@angular/core';
2
2
  import * as i0 from "@angular/core";
3
3
  import * as i1 from "@angular/common";
4
4
  export class BsNavbarTogglerComponent {
@@ -6,6 +6,8 @@ export class BsNavbarTogglerComponent {
6
6
  //#region State
7
7
  this._state = 'closed';
8
8
  this.stateChange = new EventEmitter();
9
+ //#endregion
10
+ this.toggleOnClick = true;
9
11
  }
10
12
  get state() {
11
13
  return this._state;
@@ -14,20 +16,21 @@ export class BsNavbarTogglerComponent {
14
16
  this._state = value;
15
17
  this.stateChange.emit(this._state);
16
18
  }
17
- //#endregion
18
19
  toggleState(ev) {
19
- switch (this._state) {
20
- case 'open':
21
- this.state = 'closed';
22
- break;
23
- default:
24
- this.state = 'open';
25
- break;
20
+ if (this.toggleOnClick) {
21
+ switch (this._state) {
22
+ case 'open':
23
+ this.state = 'closed';
24
+ break;
25
+ default:
26
+ this.state = 'open';
27
+ break;
28
+ }
26
29
  }
27
30
  }
28
31
  }
29
32
  BsNavbarTogglerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: BsNavbarTogglerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
30
- BsNavbarTogglerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.0", type: BsNavbarTogglerComponent, selector: "bs-navbar-toggler", inputs: { state: "state" }, outputs: { stateChange: "stateChange" }, host: { listeners: { "click": "toggleState($event)" } }, ngImport: i0, template: "<div class=\"navbar-toggler float-left\" [ngClass]=\"state\">\n <div></div>\n <div></div>\n <div></div>\n</div>", styles: [":host{align-self:start;top:0;right:0}.navbar-toggler{padding:.75rem 1rem;border:none}.navbar-toggler>div{width:25px;height:2px;background:#BBB;margin:6px 0;transition:.4s}.navbar-toggler.open>div:nth-of-type(1){transform:rotate(-45deg) translate(-7px,5px)}.navbar-toggler.open>div:nth-of-type(2){opacity:0}.navbar-toggler.open>div:nth-of-type(3){transform:rotate(45deg) translate(-6px,-4px)}@media (min-width: 768px){.navbar-toggler.auto>div:nth-of-type(1){transform:rotate(-45deg) translate(-7px,5px)}.navbar-toggler.auto>div:nth-of-type(2){opacity:0}.navbar-toggler.auto>div:nth-of-type(3){transform:rotate(45deg) translate(-6px,-4px)}}\n"], directives: [{ type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }] });
33
+ BsNavbarTogglerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.0", type: BsNavbarTogglerComponent, selector: "bs-navbar-toggler", inputs: { state: "state", toggleOnClick: "toggleOnClick" }, outputs: { stateChange: "stateChange" }, host: { listeners: { "click": "toggleState($event)" } }, ngImport: i0, template: "<div class=\"navbar-toggler float-left\" [ngClass]=\"state\">\n <div></div>\n <div></div>\n <div></div>\n</div>", styles: [":host{align-self:start;top:0;right:0}.navbar-toggler{padding:.75rem 1rem;border:none}.navbar-toggler>div{width:25px;height:2px;background:#BBB;margin:6px 0;transition:.4s}.navbar-toggler.open>div:nth-of-type(1){transform:rotate(-45deg) translate(-7px,5px)}.navbar-toggler.open>div:nth-of-type(2){opacity:0}.navbar-toggler.open>div:nth-of-type(3){transform:rotate(45deg) translate(-6px,-4px)}@media (min-width: 768px){.navbar-toggler.auto>div:nth-of-type(1){transform:rotate(-45deg) translate(-7px,5px)}.navbar-toggler.auto>div:nth-of-type(2){opacity:0}.navbar-toggler.auto>div:nth-of-type(3){transform:rotate(45deg) translate(-6px,-4px)}}\n"], directives: [{ type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }] });
31
34
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: BsNavbarTogglerComponent, decorators: [{
32
35
  type: Component,
33
36
  args: [{ selector: 'bs-navbar-toggler', template: "<div class=\"navbar-toggler float-left\" [ngClass]=\"state\">\n <div></div>\n <div></div>\n <div></div>\n</div>", styles: [":host{align-self:start;top:0;right:0}.navbar-toggler{padding:.75rem 1rem;border:none}.navbar-toggler>div{width:25px;height:2px;background:#BBB;margin:6px 0;transition:.4s}.navbar-toggler.open>div:nth-of-type(1){transform:rotate(-45deg) translate(-7px,5px)}.navbar-toggler.open>div:nth-of-type(2){opacity:0}.navbar-toggler.open>div:nth-of-type(3){transform:rotate(45deg) translate(-6px,-4px)}@media (min-width: 768px){.navbar-toggler.auto>div:nth-of-type(1){transform:rotate(-45deg) translate(-7px,5px)}.navbar-toggler.auto>div:nth-of-type(2){opacity:0}.navbar-toggler.auto>div:nth-of-type(3){transform:rotate(45deg) translate(-6px,-4px)}}\n"] }]
@@ -35,8 +38,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.0", ngImpor
35
38
  type: Output
36
39
  }], state: [{
37
40
  type: Input
41
+ }], toggleOnClick: [{
42
+ type: Input
38
43
  }], toggleState: [{
39
44
  type: HostListener,
40
45
  args: ['click', ['$event']]
41
46
  }] } });
42
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmF2YmFyLXRvZ2dsZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9taW50cGxheWVyLW5nLWJvb3RzdHJhcC9zcmMvbGliL2NvbXBvbmVudHMvbmF2YmFyL25hdmJhci10b2dnbGVyL25hdmJhci10b2dnbGVyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbWludHBsYXllci1uZy1ib290c3RyYXAvc3JjL2xpYi9jb21wb25lbnRzL25hdmJhci9uYXZiYXItdG9nZ2xlci9uYXZiYXItdG9nZ2xlci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQzs7O0FBT3JGLE1BQU0sT0FBTyx3QkFBd0I7SUFMckM7UUFPRSxlQUFlO1FBQ2YsV0FBTSxHQUFzQixRQUFRLENBQUM7UUFDcEIsZ0JBQVcsR0FBRyxJQUFJLFlBQVksRUFBcUIsQ0FBQztLQXFCdEU7SUFwQkMsSUFBVyxLQUFLO1FBQ2QsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDO0lBQ3JCLENBQUM7SUFDRCxJQUFvQixLQUFLLENBQUMsS0FBd0I7UUFDaEQsSUFBSSxDQUFDLE1BQU0sR0FBRyxLQUFLLENBQUM7UUFDcEIsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQ3JDLENBQUM7SUFDRCxZQUFZO0lBR1osV0FBVyxDQUFDLEVBQWM7UUFDeEIsUUFBUSxJQUFJLENBQUMsTUFBTSxFQUFFO1lBQ25CLEtBQUssTUFBTTtnQkFDVCxJQUFJLENBQUMsS0FBSyxHQUFHLFFBQVEsQ0FBQztnQkFDdEIsTUFBTTtZQUNSO2dCQUNFLElBQUksQ0FBQyxLQUFLLEdBQUcsTUFBTSxDQUFDO2dCQUNwQixNQUFNO1NBQ1Q7SUFDSCxDQUFDOztxSEF4QlUsd0JBQXdCO3lHQUF4Qix3QkFBd0IsdUxDUHJDLDBIQUlNOzJGREdPLHdCQUF3QjtrQkFMcEMsU0FBUzsrQkFDRSxtQkFBbUI7OEJBUVosV0FBVztzQkFBM0IsTUFBTTtnQkFJYSxLQUFLO3NCQUF4QixLQUFLO2dCQU9OLFdBQVc7c0JBRFYsWUFBWTt1QkFBQyxPQUFPLEVBQUUsQ0FBQyxRQUFRLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSG9zdExpc3RlbmVyLCBJbnB1dCwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2JzLW5hdmJhci10b2dnbGVyJyxcbiAgdGVtcGxhdGVVcmw6ICcuL25hdmJhci10b2dnbGVyLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vbmF2YmFyLXRvZ2dsZXIuY29tcG9uZW50LnNjc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBCc05hdmJhclRvZ2dsZXJDb21wb25lbnQge1xuXG4gIC8vI3JlZ2lvbiBTdGF0ZVxuICBfc3RhdGU6ICdvcGVuJyB8ICdjbG9zZWQnID0gJ2Nsb3NlZCc7XG4gIEBPdXRwdXQoKSBwdWJsaWMgc3RhdGVDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPCdvcGVuJyB8ICdjbG9zZWQnPigpO1xuICBwdWJsaWMgZ2V0IHN0YXRlKCkge1xuICAgIHJldHVybiB0aGlzLl9zdGF0ZTtcbiAgfVxuICBASW5wdXQoKSBwdWJsaWMgc2V0IHN0YXRlKHZhbHVlOiAnb3BlbicgfCAnY2xvc2VkJykge1xuICAgIHRoaXMuX3N0YXRlID0gdmFsdWU7XG4gICAgdGhpcy5zdGF0ZUNoYW5nZS5lbWl0KHRoaXMuX3N0YXRlKTtcbiAgfVxuICAvLyNlbmRyZWdpb25cbiAgXG4gIEBIb3N0TGlzdGVuZXIoJ2NsaWNrJywgWyckZXZlbnQnXSlcbiAgdG9nZ2xlU3RhdGUoZXY6IE1vdXNlRXZlbnQpIHtcbiAgICBzd2l0Y2ggKHRoaXMuX3N0YXRlKSB7XG4gICAgICBjYXNlICdvcGVuJzpcbiAgICAgICAgdGhpcy5zdGF0ZSA9ICdjbG9zZWQnO1xuICAgICAgICBicmVhaztcbiAgICAgIGRlZmF1bHQ6XG4gICAgICAgIHRoaXMuc3RhdGUgPSAnb3Blbic7XG4gICAgICAgIGJyZWFrO1xuICAgIH1cbiAgfVxufVxuIiwiPGRpdiBjbGFzcz1cIm5hdmJhci10b2dnbGVyIGZsb2F0LWxlZnRcIiBbbmdDbGFzc109XCJzdGF0ZVwiPlxuICAgIDxkaXY+PC9kaXY+XG4gICAgPGRpdj48L2Rpdj5cbiAgICA8ZGl2PjwvZGl2PlxuPC9kaXY+Il19
47
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmF2YmFyLXRvZ2dsZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9taW50cGxheWVyLW5nLWJvb3RzdHJhcC9zcmMvbGliL2NvbXBvbmVudHMvbmF2YmFyL25hdmJhci10b2dnbGVyL25hdmJhci10b2dnbGVyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbWludHBsYXllci1uZy1ib290c3RyYXAvc3JjL2xpYi9jb21wb25lbnRzL25hdmJhci9uYXZiYXItdG9nZ2xlci9uYXZiYXItdG9nZ2xlci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsU0FBUyxFQUNULFlBQVksRUFDWixZQUFZLEVBQ1osS0FBSyxFQUNMLE1BQU0sR0FDUCxNQUFNLGVBQWUsQ0FBQzs7O0FBT3ZCLE1BQU0sT0FBTyx3QkFBd0I7SUFMckM7UUFNRSxlQUFlO1FBQ2YsV0FBTSxHQUFzQixRQUFRLENBQUM7UUFDcEIsZ0JBQVcsR0FBRyxJQUFJLFlBQVksRUFBcUIsQ0FBQztRQVFyRSxZQUFZO1FBRUksa0JBQWEsR0FBRyxJQUFJLENBQUM7S0FldEM7SUF4QkMsSUFBVyxLQUFLO1FBQ2QsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDO0lBQ3JCLENBQUM7SUFDRCxJQUFvQixLQUFLLENBQUMsS0FBd0I7UUFDaEQsSUFBSSxDQUFDLE1BQU0sR0FBRyxLQUFLLENBQUM7UUFDcEIsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQ3JDLENBQUM7SUFNRCxXQUFXLENBQUMsRUFBYztRQUN4QixJQUFJLElBQUksQ0FBQyxhQUFhLEVBQUU7WUFDdEIsUUFBUSxJQUFJLENBQUMsTUFBTSxFQUFFO2dCQUNuQixLQUFLLE1BQU07b0JBQ1QsSUFBSSxDQUFDLEtBQUssR0FBRyxRQUFRLENBQUM7b0JBQ3RCLE1BQU07Z0JBQ1I7b0JBQ0UsSUFBSSxDQUFDLEtBQUssR0FBRyxNQUFNLENBQUM7b0JBQ3BCLE1BQU07YUFDVDtTQUNGO0lBQ0gsQ0FBQzs7cUhBM0JVLHdCQUF3Qjt5R0FBeEIsd0JBQXdCLHVOQ2JyQywwSEFJTTsyRkRTTyx3QkFBd0I7a0JBTHBDLFNBQVM7K0JBQ0UsbUJBQW1COzhCQU9aLFdBQVc7c0JBQTNCLE1BQU07Z0JBSWEsS0FBSztzQkFBeEIsS0FBSztnQkFNVSxhQUFhO3NCQUE1QixLQUFLO2dCQUdOLFdBQVc7c0JBRFYsWUFBWTt1QkFBQyxPQUFPLEVBQUUsQ0FBQyxRQUFRLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDb21wb25lbnQsXG4gIEV2ZW50RW1pdHRlcixcbiAgSG9zdExpc3RlbmVyLFxuICBJbnB1dCxcbiAgT3V0cHV0LFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYnMtbmF2YmFyLXRvZ2dsZXInLFxuICB0ZW1wbGF0ZVVybDogJy4vbmF2YmFyLXRvZ2dsZXIuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9uYXZiYXItdG9nZ2xlci5jb21wb25lbnQuc2NzcyddLFxufSlcbmV4cG9ydCBjbGFzcyBCc05hdmJhclRvZ2dsZXJDb21wb25lbnQge1xuICAvLyNyZWdpb24gU3RhdGVcbiAgX3N0YXRlOiAnb3BlbicgfCAnY2xvc2VkJyA9ICdjbG9zZWQnO1xuICBAT3V0cHV0KCkgcHVibGljIHN0YXRlQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjwnb3BlbicgfCAnY2xvc2VkJz4oKTtcbiAgcHVibGljIGdldCBzdGF0ZSgpIHtcbiAgICByZXR1cm4gdGhpcy5fc3RhdGU7XG4gIH1cbiAgQElucHV0KCkgcHVibGljIHNldCBzdGF0ZSh2YWx1ZTogJ29wZW4nIHwgJ2Nsb3NlZCcpIHtcbiAgICB0aGlzLl9zdGF0ZSA9IHZhbHVlO1xuICAgIHRoaXMuc3RhdGVDaGFuZ2UuZW1pdCh0aGlzLl9zdGF0ZSk7XG4gIH1cbiAgLy8jZW5kcmVnaW9uXG5cbiAgQElucHV0KCkgcHVibGljIHRvZ2dsZU9uQ2xpY2sgPSB0cnVlO1xuXG4gIEBIb3N0TGlzdGVuZXIoJ2NsaWNrJywgWyckZXZlbnQnXSlcbiAgdG9nZ2xlU3RhdGUoZXY6IE1vdXNlRXZlbnQpIHtcbiAgICBpZiAodGhpcy50b2dnbGVPbkNsaWNrKSB7XG4gICAgICBzd2l0Y2ggKHRoaXMuX3N0YXRlKSB7XG4gICAgICAgIGNhc2UgJ29wZW4nOlxuICAgICAgICAgIHRoaXMuc3RhdGUgPSAnY2xvc2VkJztcbiAgICAgICAgICBicmVhaztcbiAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICB0aGlzLnN0YXRlID0gJ29wZW4nO1xuICAgICAgICAgIGJyZWFrO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiPGRpdiBjbGFzcz1cIm5hdmJhci10b2dnbGVyIGZsb2F0LWxlZnRcIiBbbmdDbGFzc109XCJzdGF0ZVwiPlxuICAgIDxkaXY+PC9kaXY+XG4gICAgPGRpdj48L2Rpdj5cbiAgICA8ZGl2PjwvZGl2PlxuPC9kaXY+Il19
@@ -1,7 +1,7 @@
1
1
  import * as i0 from '@angular/core';
2
2
  import { Component, ContentChildren, NgModule, Input, Injectable, Pipe, EventEmitter, Output, Directive, HostBinding, InjectionToken, Inject, HostListener, Injector, ViewChild, Host, SkipSelf, forwardRef, PLATFORM_ID, ContentChild, ViewChildren, Optional, TemplateRef } from '@angular/core';
3
3
  import * as i1 from '@angular/common';
4
- import { CommonModule, DOCUMENT } from '@angular/common';
4
+ import { CommonModule, DOCUMENT, isPlatformServer } from '@angular/common';
5
5
  import { SlideUpDownAnimation, FadeInOutAnimation, CarouselSlideAnimation, ColorTransitionAnimation } from '@mintplayer/ng-animations';
6
6
  import { Subject, BehaviorSubject, map, takeUntil, filter, take, Observable, combineLatest, debounceTime } from 'rxjs';
7
7
  import { map as map$1, takeUntil as takeUntil$1, take as take$1 } from 'rxjs/operators';
@@ -2921,10 +2921,10 @@ class BsNavbarComponent {
2921
2921
  }
2922
2922
  }
2923
2923
  BsNavbarComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: BsNavbarComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
2924
- BsNavbarComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.0", type: BsNavbarComponent, selector: "bs-navbar", inputs: { autoclose: "autoclose" }, viewQueries: [{ propertyName: "nav", first: true, predicate: ["nav"], descendants: true }], ngImport: i0, template: "<nav #nav class=\"navbar navbar-expand-md position-fixed navbar-dark bg-dark\">\n <div class=\"container-fluid\">\n <div class=\"d-flex w-100 w-md-auto\">\n <ng-content select=\"bs-navbar-brand\"></ng-content>\n <div class=\"flex-end d-md-none d-flex tw\">\n <button (click)=\"toggleExpanded()\" title=\"Expand/collapse menu\" class=\"align-self-center\" [class.navbar-toggler]=\"!expandButtonTemplate\" [class.bg-transparent]=\"expandButtonTemplate\" [class.shadow-none]=\"expandButtonTemplate\" [class.border-0]=\"expandButtonTemplate\" type=\"button\">\n <ng-container *ngTemplateOutlet=\"expandButtonTemplate ?? defaultExpandButton; context: { state: (isExpanded$ | async) ? 'open' : 'closed' }\"></ng-container>\n </button>\n </div>\n </div>\n <ng-content></ng-content>\n </div>\n</nav>\n\n<ng-template #defaultExpandButton>\n <span class=\"navbar-toggler-icon\"></span>\n</ng-template>", styles: [":host ::ng-deep+*{padding-top:56px}nav{left:0;top:0;right:0;z-index:10}@media (min-width: 768px){.mx-md-unset{margin-left:0!important;margin-right:0!important}.w-md-auto{width:auto!important}}.tw{margin:-.5rem -.6666666667rem}\n"], directives: [{ type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }], pipes: { "async": i1.AsyncPipe } });
2924
+ BsNavbarComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.0", type: BsNavbarComponent, selector: "bs-navbar", inputs: { autoclose: "autoclose" }, viewQueries: [{ propertyName: "nav", first: true, predicate: ["nav"], descendants: true }], ngImport: i0, template: "<nav #nav class=\"navbar navbar-expand-md position-fixed navbar-dark bg-dark\">\n <div class=\"container-fluid\">\n <div class=\"d-flex w-100 w-md-auto\">\n <ng-content select=\"bs-navbar-brand\"></ng-content>\n <div class=\"flex-end d-md-none d-flex tw\">\n <button (click)=\"toggleExpanded()\" title=\"Expand/collapse menu\" class=\"align-self-center\" [class.navbar-toggler]=\"!expandButtonTemplate\" [class.bg-transparent]=\"expandButtonTemplate\" [class.shadow-none]=\"expandButtonTemplate\" [class.border-0]=\"expandButtonTemplate\" type=\"button\">\n <ng-container *ngTemplateOutlet=\"expandButtonTemplate ?? defaultExpandButton; context: { $implicit: (isExpanded$ | async) ? 'open' : 'closed' }\"></ng-container>\n </button>\n </div>\n </div>\n <ng-content></ng-content>\n </div>\n</nav>\n\n<ng-template #defaultExpandButton>\n <span class=\"navbar-toggler-icon\"></span>\n</ng-template>", styles: [":host ::ng-deep+*{padding-top:56px}nav{left:0;top:0;right:0;z-index:10}@media (min-width: 768px){.mx-md-unset{margin-left:0!important;margin-right:0!important}.w-md-auto{width:auto!important}}.tw{margin:-.5rem -.6666666667rem}\n"], directives: [{ type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }], pipes: { "async": i1.AsyncPipe } });
2925
2925
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: BsNavbarComponent, decorators: [{
2926
2926
  type: Component,
2927
- args: [{ selector: 'bs-navbar', template: "<nav #nav class=\"navbar navbar-expand-md position-fixed navbar-dark bg-dark\">\n <div class=\"container-fluid\">\n <div class=\"d-flex w-100 w-md-auto\">\n <ng-content select=\"bs-navbar-brand\"></ng-content>\n <div class=\"flex-end d-md-none d-flex tw\">\n <button (click)=\"toggleExpanded()\" title=\"Expand/collapse menu\" class=\"align-self-center\" [class.navbar-toggler]=\"!expandButtonTemplate\" [class.bg-transparent]=\"expandButtonTemplate\" [class.shadow-none]=\"expandButtonTemplate\" [class.border-0]=\"expandButtonTemplate\" type=\"button\">\n <ng-container *ngTemplateOutlet=\"expandButtonTemplate ?? defaultExpandButton; context: { state: (isExpanded$ | async) ? 'open' : 'closed' }\"></ng-container>\n </button>\n </div>\n </div>\n <ng-content></ng-content>\n </div>\n</nav>\n\n<ng-template #defaultExpandButton>\n <span class=\"navbar-toggler-icon\"></span>\n</ng-template>", styles: [":host ::ng-deep+*{padding-top:56px}nav{left:0;top:0;right:0;z-index:10}@media (min-width: 768px){.mx-md-unset{margin-left:0!important;margin-right:0!important}.w-md-auto{width:auto!important}}.tw{margin:-.5rem -.6666666667rem}\n"] }]
2927
+ args: [{ selector: 'bs-navbar', template: "<nav #nav class=\"navbar navbar-expand-md position-fixed navbar-dark bg-dark\">\n <div class=\"container-fluid\">\n <div class=\"d-flex w-100 w-md-auto\">\n <ng-content select=\"bs-navbar-brand\"></ng-content>\n <div class=\"flex-end d-md-none d-flex tw\">\n <button (click)=\"toggleExpanded()\" title=\"Expand/collapse menu\" class=\"align-self-center\" [class.navbar-toggler]=\"!expandButtonTemplate\" [class.bg-transparent]=\"expandButtonTemplate\" [class.shadow-none]=\"expandButtonTemplate\" [class.border-0]=\"expandButtonTemplate\" type=\"button\">\n <ng-container *ngTemplateOutlet=\"expandButtonTemplate ?? defaultExpandButton; context: { $implicit: (isExpanded$ | async) ? 'open' : 'closed' }\"></ng-container>\n </button>\n </div>\n </div>\n <ng-content></ng-content>\n </div>\n</nav>\n\n<ng-template #defaultExpandButton>\n <span class=\"navbar-toggler-icon\"></span>\n</ng-template>", styles: [":host ::ng-deep+*{padding-top:56px}nav{left:0;top:0;right:0;z-index:10}@media (min-width: 768px){.mx-md-unset{margin-left:0!important;margin-right:0!important}.w-md-auto{width:auto!important}}.tw{margin:-.5rem -.6666666667rem}\n"] }]
2928
2928
  }], propDecorators: { nav: [{
2929
2929
  type: ViewChild,
2930
2930
  args: ['nav']
@@ -3006,8 +3006,9 @@ class BsNavbarItemComponent {
3006
3006
  this.anchorTag = this.element.nativeElement.querySelector('li a');
3007
3007
  if (this.hasDropdown) {
3008
3008
  (this.anchorTag) && this.anchorTag.classList.add('dropdown-toggle');
3009
- if (this.anchorTag && !this.anchorTag.onclick) {
3010
- this.anchorTag.onclick = (ev) => {
3009
+ if (this.anchorTag && !this.anchorTag.getAttribute('close-init-b')) {
3010
+ this.anchorTag.setAttribute('close-init-b', '1');
3011
+ this.anchorTag.addEventListener('click', (ev) => {
3011
3012
  ev.preventDefault();
3012
3013
  // Normally there should be only one dropdown in this list
3013
3014
  this.dropdowns.forEach((dropdown) => {
@@ -3018,24 +3019,23 @@ class BsNavbarItemComponent {
3018
3019
  }
3019
3020
  });
3020
3021
  return false;
3021
- };
3022
+ });
3022
3023
  }
3023
3024
  }
3024
3025
  else {
3025
3026
  // Close if this is a link
3026
- if (this.dropdowns.length === 0) {
3027
- if (this.anchorTag && !this.anchorTag.onclick) {
3028
- this.anchorTag.onclick = (ev) => {
3029
- let d = this.parentDropdown;
3030
- while (d && d.autoclose) {
3031
- d.isVisible = false;
3032
- d = d.parentDropdown;
3033
- }
3034
- if (this.navbar.autoclose) {
3035
- this.navbar.isExpanded$.next(false);
3036
- }
3037
- };
3038
- }
3027
+ if ((this.dropdowns.length === 0) && this.anchorTag && !this.anchorTag.getAttribute('close-init-a')) {
3028
+ this.anchorTag.setAttribute('close-init-a', '1');
3029
+ this.anchorTag.addEventListener('click', (ev) => {
3030
+ let d = this.parentDropdown;
3031
+ while (d && d.autoclose) {
3032
+ d.isVisible = false;
3033
+ d = d.parentDropdown;
3034
+ }
3035
+ if (this.navbar.autoclose) {
3036
+ this.navbar.isExpanded$.next(false);
3037
+ }
3038
+ });
3039
3039
  }
3040
3040
  }
3041
3041
  }
@@ -3152,31 +3152,65 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.0", ngImpor
3152
3152
  } });
3153
3153
 
3154
3154
  class NavbarContentDirective {
3155
- constructor(element) {
3155
+ constructor(element, platformId) {
3156
3156
  this.element = element;
3157
+ this.platformId = platformId;
3158
+ this.destroyed$ = new Subject();
3159
+ this.viewInit$ = new BehaviorSubject(false);
3160
+ this.navbar$ = new BehaviorSubject(null);
3161
+ this.resizeObserver = null;
3157
3162
  this.initialPadding = 0;
3158
- this.resizeObserver = new ResizeObserver((entries) => {
3159
- let height = entries[0].contentRect.height;
3160
- this.element.nativeElement.style.paddingTop = (this.initialPadding + height) + 'px';
3163
+ combineLatest([this.viewInit$, this.navbar$])
3164
+ .pipe(filter(([viewInit, navbar]) => {
3165
+ return viewInit && !!navbar;
3166
+ }))
3167
+ .pipe(take(1))
3168
+ .pipe(takeUntil(this.destroyed$))
3169
+ .subscribe(([viewInit, navbar]) => {
3170
+ if (!isPlatformServer(platformId)) {
3171
+ // Initialize the ResizeObserver
3172
+ this.resizeObserver = new ResizeObserver((entries) => {
3173
+ const height = entries[0].contentRect.height;
3174
+ this.element.nativeElement.style.paddingTop = (this.initialPadding + height) + 'px';
3175
+ });
3176
+ // Monitor the size
3177
+ const pt = parseInt(this.element.nativeElement.style.paddingTop.replace(/px$/, ''));
3178
+ this.initialPadding = isNaN(pt) ? 0 : pt;
3179
+ if (this.resizeObserver && navbar) {
3180
+ this.resizeObserver.observe(navbar.nav.nativeElement);
3181
+ }
3182
+ }
3161
3183
  });
3184
+ this.destroyed$
3185
+ .pipe(filter(d => !!d))
3186
+ .subscribe(() => {
3187
+ var _a, _b;
3188
+ (_a = this.resizeObserver) === null || _a === void 0 ? void 0 : _a.unobserve((_b = this.navbar$.value) === null || _b === void 0 ? void 0 : _b.nav.nativeElement);
3189
+ });
3190
+ }
3191
+ set navbar(value) {
3192
+ this.navbar$.next(value);
3162
3193
  }
3163
3194
  ngAfterViewInit() {
3164
- let p = parseInt(this.element.nativeElement.style.paddingTop.replace(/px$/, ''));
3165
- this.initialPadding = isNaN(p) ? 0 : p;
3166
- this.resizeObserver.observe(this.navbar.nav.nativeElement);
3195
+ this.viewInit$.next(true);
3167
3196
  }
3168
3197
  ngOnDestroy() {
3169
- this.resizeObserver.unobserve(this.navbar.nav.nativeElement);
3198
+ this.destroyed$.next(true);
3170
3199
  }
3171
3200
  }
3172
- NavbarContentDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: NavbarContentDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
3201
+ NavbarContentDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: NavbarContentDirective, deps: [{ token: i0.ElementRef }, { token: PLATFORM_ID }], target: i0.ɵɵFactoryTarget.Directive });
3173
3202
  NavbarContentDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.2.0", type: NavbarContentDirective, selector: "[navbarContent]", inputs: { navbar: ["navbarContent", "navbar"] }, ngImport: i0 });
3174
3203
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: NavbarContentDirective, decorators: [{
3175
3204
  type: Directive,
3176
3205
  args: [{
3177
3206
  selector: '[navbarContent]'
3178
3207
  }]
3179
- }], ctorParameters: function () { return [{ type: i0.ElementRef }]; }, propDecorators: { navbar: [{
3208
+ }], ctorParameters: function () {
3209
+ return [{ type: i0.ElementRef }, { type: undefined, decorators: [{
3210
+ type: Inject,
3211
+ args: [PLATFORM_ID]
3212
+ }] }];
3213
+ }, propDecorators: { navbar: [{
3180
3214
  type: Input,
3181
3215
  args: ['navbarContent']
3182
3216
  }] } });
@@ -3218,6 +3252,8 @@ class BsNavbarTogglerComponent {
3218
3252
  //#region State
3219
3253
  this._state = 'closed';
3220
3254
  this.stateChange = new EventEmitter();
3255
+ //#endregion
3256
+ this.toggleOnClick = true;
3221
3257
  }
3222
3258
  get state() {
3223
3259
  return this._state;
@@ -3226,20 +3262,21 @@ class BsNavbarTogglerComponent {
3226
3262
  this._state = value;
3227
3263
  this.stateChange.emit(this._state);
3228
3264
  }
3229
- //#endregion
3230
3265
  toggleState(ev) {
3231
- switch (this._state) {
3232
- case 'open':
3233
- this.state = 'closed';
3234
- break;
3235
- default:
3236
- this.state = 'open';
3237
- break;
3266
+ if (this.toggleOnClick) {
3267
+ switch (this._state) {
3268
+ case 'open':
3269
+ this.state = 'closed';
3270
+ break;
3271
+ default:
3272
+ this.state = 'open';
3273
+ break;
3274
+ }
3238
3275
  }
3239
3276
  }
3240
3277
  }
3241
3278
  BsNavbarTogglerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: BsNavbarTogglerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
3242
- BsNavbarTogglerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.0", type: BsNavbarTogglerComponent, selector: "bs-navbar-toggler", inputs: { state: "state" }, outputs: { stateChange: "stateChange" }, host: { listeners: { "click": "toggleState($event)" } }, ngImport: i0, template: "<div class=\"navbar-toggler float-left\" [ngClass]=\"state\">\n <div></div>\n <div></div>\n <div></div>\n</div>", styles: [":host{align-self:start;top:0;right:0}.navbar-toggler{padding:.75rem 1rem;border:none}.navbar-toggler>div{width:25px;height:2px;background:#BBB;margin:6px 0;transition:.4s}.navbar-toggler.open>div:nth-of-type(1){transform:rotate(-45deg) translate(-7px,5px)}.navbar-toggler.open>div:nth-of-type(2){opacity:0}.navbar-toggler.open>div:nth-of-type(3){transform:rotate(45deg) translate(-6px,-4px)}@media (min-width: 768px){.navbar-toggler.auto>div:nth-of-type(1){transform:rotate(-45deg) translate(-7px,5px)}.navbar-toggler.auto>div:nth-of-type(2){opacity:0}.navbar-toggler.auto>div:nth-of-type(3){transform:rotate(45deg) translate(-6px,-4px)}}\n"], directives: [{ type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }] });
3279
+ BsNavbarTogglerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.0", type: BsNavbarTogglerComponent, selector: "bs-navbar-toggler", inputs: { state: "state", toggleOnClick: "toggleOnClick" }, outputs: { stateChange: "stateChange" }, host: { listeners: { "click": "toggleState($event)" } }, ngImport: i0, template: "<div class=\"navbar-toggler float-left\" [ngClass]=\"state\">\n <div></div>\n <div></div>\n <div></div>\n</div>", styles: [":host{align-self:start;top:0;right:0}.navbar-toggler{padding:.75rem 1rem;border:none}.navbar-toggler>div{width:25px;height:2px;background:#BBB;margin:6px 0;transition:.4s}.navbar-toggler.open>div:nth-of-type(1){transform:rotate(-45deg) translate(-7px,5px)}.navbar-toggler.open>div:nth-of-type(2){opacity:0}.navbar-toggler.open>div:nth-of-type(3){transform:rotate(45deg) translate(-6px,-4px)}@media (min-width: 768px){.navbar-toggler.auto>div:nth-of-type(1){transform:rotate(-45deg) translate(-7px,5px)}.navbar-toggler.auto>div:nth-of-type(2){opacity:0}.navbar-toggler.auto>div:nth-of-type(3){transform:rotate(45deg) translate(-6px,-4px)}}\n"], directives: [{ type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }] });
3243
3280
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: BsNavbarTogglerComponent, decorators: [{
3244
3281
  type: Component,
3245
3282
  args: [{ selector: 'bs-navbar-toggler', template: "<div class=\"navbar-toggler float-left\" [ngClass]=\"state\">\n <div></div>\n <div></div>\n <div></div>\n</div>", styles: [":host{align-self:start;top:0;right:0}.navbar-toggler{padding:.75rem 1rem;border:none}.navbar-toggler>div{width:25px;height:2px;background:#BBB;margin:6px 0;transition:.4s}.navbar-toggler.open>div:nth-of-type(1){transform:rotate(-45deg) translate(-7px,5px)}.navbar-toggler.open>div:nth-of-type(2){opacity:0}.navbar-toggler.open>div:nth-of-type(3){transform:rotate(45deg) translate(-6px,-4px)}@media (min-width: 768px){.navbar-toggler.auto>div:nth-of-type(1){transform:rotate(-45deg) translate(-7px,5px)}.navbar-toggler.auto>div:nth-of-type(2){opacity:0}.navbar-toggler.auto>div:nth-of-type(3){transform:rotate(45deg) translate(-6px,-4px)}}\n"] }]
@@ -3247,6 +3284,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.0", ngImpor
3247
3284
  type: Output
3248
3285
  }], state: [{
3249
3286
  type: Input
3287
+ }], toggleOnClick: [{
3288
+ type: Input
3250
3289
  }], toggleState: [{
3251
3290
  type: HostListener,
3252
3291
  args: ['click', ['$event']]