myrtex-widget-site-header 1.0.25 → 1.0.26
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.
- package/esm2020/lib/modules/public-pages/public-pages.component.mjs +26 -9
- package/fesm2015/myrtex-widget-site-header.mjs +22 -6
- package/fesm2015/myrtex-widget-site-header.mjs.map +1 -1
- package/fesm2020/myrtex-widget-site-header.mjs +22 -7
- package/fesm2020/myrtex-widget-site-header.mjs.map +1 -1
- package/lib/modules/public-pages/public-pages.component.d.ts +8 -2
- package/package.json +1 -1
|
@@ -1,26 +1,43 @@
|
|
|
1
1
|
import { Component, Input } from '@angular/core';
|
|
2
|
+
import { NavigationEnd } from '@angular/router';
|
|
3
|
+
import { filter } from 'rxjs/operators';
|
|
2
4
|
import * as i0 from "@angular/core";
|
|
3
|
-
import * as i1 from "@angular/
|
|
5
|
+
import * as i1 from "@angular/router";
|
|
6
|
+
import * as i2 from "@angular/common";
|
|
4
7
|
export class PublicPagesComponent {
|
|
5
|
-
constructor() {
|
|
8
|
+
constructor(router) {
|
|
9
|
+
this.router = router;
|
|
6
10
|
this.activePage = null;
|
|
7
11
|
this.data = [];
|
|
8
12
|
this.headerPosition = '';
|
|
9
13
|
}
|
|
10
14
|
ngOnInit() {
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
15
|
+
this.updateActivePage();
|
|
16
|
+
this.routerSubscription = this.router.events
|
|
17
|
+
.pipe(filter(event => event instanceof NavigationEnd))
|
|
18
|
+
.subscribe(() => this.updateActivePage());
|
|
19
|
+
}
|
|
20
|
+
ngOnDestroy() {
|
|
21
|
+
this.routerSubscription?.unsubscribe();
|
|
22
|
+
}
|
|
23
|
+
updateActivePage() {
|
|
24
|
+
const currentPath = document.location.pathname;
|
|
25
|
+
if (currentPath === '/') {
|
|
26
|
+
this.activePage = null;
|
|
27
|
+
return;
|
|
28
|
+
}
|
|
29
|
+
const found = this.data.find(page => currentPath === page.url || currentPath.startsWith(page.url + '/'));
|
|
30
|
+
this.activePage = found ?? null;
|
|
14
31
|
}
|
|
15
32
|
}
|
|
16
|
-
PublicPagesComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: PublicPagesComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
17
|
-
PublicPagesComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: PublicPagesComponent, selector: "lib-public-pages", inputs: { data: "data", headerPosition: "headerPosition" }, ngImport: i0, template: "<nav class=\"universal-header__nav\" [ngClass]=\"headerPosition\">\r\n <ul class=\"universal-header__nav-list\" *ngIf=\"data?.length\">\r\n <li *ngFor=\"let page of data\" [class.active]=\"activePage?.name == page.name\">\r\n <a [href]=\"page.url || '#'\">{{ page.name }}</a>\r\n </li>\r\n </ul>\r\n</nav>\r\n", directives: [{ type:
|
|
33
|
+
PublicPagesComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: PublicPagesComponent, deps: [{ token: i1.Router }], target: i0.ɵɵFactoryTarget.Component });
|
|
34
|
+
PublicPagesComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: PublicPagesComponent, selector: "lib-public-pages", inputs: { data: "data", headerPosition: "headerPosition" }, ngImport: i0, template: "<nav class=\"universal-header__nav\" [ngClass]=\"headerPosition\">\r\n <ul class=\"universal-header__nav-list\" *ngIf=\"data?.length\">\r\n <li *ngFor=\"let page of data\" [class.active]=\"activePage?.name == page.name\">\r\n <a [href]=\"page.url || '#'\">{{ page.name }}</a>\r\n </li>\r\n </ul>\r\n</nav>\r\n", directives: [{ type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }] });
|
|
18
35
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: PublicPagesComponent, decorators: [{
|
|
19
36
|
type: Component,
|
|
20
37
|
args: [{ selector: 'lib-public-pages', template: "<nav class=\"universal-header__nav\" [ngClass]=\"headerPosition\">\r\n <ul class=\"universal-header__nav-list\" *ngIf=\"data?.length\">\r\n <li *ngFor=\"let page of data\" [class.active]=\"activePage?.name == page.name\">\r\n <a [href]=\"page.url || '#'\">{{ page.name }}</a>\r\n </li>\r\n </ul>\r\n</nav>\r\n" }]
|
|
21
|
-
}], propDecorators: { data: [{
|
|
38
|
+
}], ctorParameters: function () { return [{ type: i1.Router }]; }, propDecorators: { data: [{
|
|
22
39
|
type: Input
|
|
23
40
|
}], headerPosition: [{
|
|
24
41
|
type: Input
|
|
25
42
|
}] } });
|
|
26
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
43
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLXBhZ2VzLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL215cnRleC13aWRnZXQtc2l0ZS1oZWFkZXIvc3JjL2xpYi9tb2R1bGVzL3B1YmxpYy1wYWdlcy9wdWJsaWMtcGFnZXMuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbXlydGV4LXdpZGdldC1zaXRlLWhlYWRlci9zcmMvbGliL21vZHVsZXMvcHVibGljLXBhZ2VzL3B1YmxpYy1wYWdlcy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBcUIsTUFBTSxlQUFlLENBQUM7QUFDcEUsT0FBTyxFQUFVLGFBQWEsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3hELE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7OztBQVF4QyxNQUFNLE9BQU8sb0JBQW9CO0lBTy9CLFlBQW9CLE1BQWM7UUFBZCxXQUFNLEdBQU4sTUFBTSxDQUFRO1FBTDNCLGVBQVUsR0FBa0MsSUFBSSxDQUFDO1FBRS9DLFNBQUksR0FBNkIsRUFBRSxDQUFDO1FBQ3BDLG1CQUFjLEdBQUcsRUFBRSxDQUFDO0lBRVEsQ0FBQztJQUV0QyxRQUFRO1FBQ04sSUFBSSxDQUFDLGdCQUFnQixFQUFFLENBQUM7UUFDeEIsSUFBSSxDQUFDLGtCQUFrQixHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTTthQUN6QyxJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsS0FBSyxZQUFZLGFBQWEsQ0FBQyxDQUFDO2FBQ3JELFNBQVMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQyxDQUFDO0lBQzlDLENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBSSxDQUFDLGtCQUFrQixFQUFFLFdBQVcsRUFBRSxDQUFDO0lBQ3pDLENBQUM7SUFFTyxnQkFBZ0I7UUFDdEIsTUFBTSxXQUFXLEdBQUcsUUFBUSxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUM7UUFDL0MsSUFBSSxXQUFXLEtBQUssR0FBRyxFQUFFO1lBQ3ZCLElBQUksQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDO1lBQ3ZCLE9BQU87U0FDUjtRQUVELE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQ2xDLFdBQVcsS0FBSyxJQUFJLENBQUMsR0FBRyxJQUFJLFdBQVcsQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLEdBQUcsR0FBRyxHQUFHLENBQUMsQ0FDbkUsQ0FBQztRQUNGLElBQUksQ0FBQyxVQUFVLEdBQUcsS0FBSyxJQUFJLElBQUksQ0FBQztJQUNsQyxDQUFDOztrSEEvQlUsb0JBQW9CO3NHQUFwQixvQkFBb0Isb0hDVmpDLG9VQU9BOzRGREdhLG9CQUFvQjtrQkFKaEMsU0FBUzsrQkFDRSxrQkFBa0I7NkZBT25CLElBQUk7c0JBQVosS0FBSztnQkFDRyxjQUFjO3NCQUF0QixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCwgT25EZXN0cm95LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgUm91dGVyLCBOYXZpZ2F0aW9uRW5kIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcclxuaW1wb3J0IHsgZmlsdGVyIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xyXG5pbXBvcnQgeyBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgSGVhZGVyV2lkZ2V0UHVibGljUGFnZSB9IGZyb20gJy4uLy4uL21vZGVscy9oZWFkZXItd2lkZ2V0Lm1vZGVsJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnbGliLXB1YmxpYy1wYWdlcycsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL3B1YmxpYy1wYWdlcy5jb21wb25lbnQuaHRtbCdcclxufSlcclxuZXhwb3J0IGNsYXNzIFB1YmxpY1BhZ2VzQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xyXG4gIHByaXZhdGUgcm91dGVyU3Vic2NyaXB0aW9uPzogU3Vic2NyaXB0aW9uO1xyXG4gIHB1YmxpYyBhY3RpdmVQYWdlOiBIZWFkZXJXaWRnZXRQdWJsaWNQYWdlIHwgbnVsbCA9IG51bGw7XHJcblxyXG4gIEBJbnB1dCgpIGRhdGE6IEhlYWRlcldpZGdldFB1YmxpY1BhZ2VbXSA9IFtdO1xyXG4gIEBJbnB1dCgpIGhlYWRlclBvc2l0aW9uID0gJyc7XHJcblxyXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgcm91dGVyOiBSb3V0ZXIpIHt9XHJcbiAgXHJcbiAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICB0aGlzLnVwZGF0ZUFjdGl2ZVBhZ2UoKTtcclxuICAgIHRoaXMucm91dGVyU3Vic2NyaXB0aW9uID0gdGhpcy5yb3V0ZXIuZXZlbnRzXHJcbiAgICAgIC5waXBlKGZpbHRlcihldmVudCA9PiBldmVudCBpbnN0YW5jZW9mIE5hdmlnYXRpb25FbmQpKVxyXG4gICAgICAuc3Vic2NyaWJlKCgpID0+IHRoaXMudXBkYXRlQWN0aXZlUGFnZSgpKTtcclxuICB9XHJcblxyXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xyXG4gICAgdGhpcy5yb3V0ZXJTdWJzY3JpcHRpb24/LnVuc3Vic2NyaWJlKCk7XHJcbiAgfVxyXG4gIFxyXG4gIHByaXZhdGUgdXBkYXRlQWN0aXZlUGFnZSgpOiB2b2lkIHtcclxuICAgIGNvbnN0IGN1cnJlbnRQYXRoID0gZG9jdW1lbnQubG9jYXRpb24ucGF0aG5hbWU7XHJcbiAgICBpZiAoY3VycmVudFBhdGggPT09ICcvJykge1xyXG4gICAgICB0aGlzLmFjdGl2ZVBhZ2UgPSBudWxsO1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcblxyXG4gICAgY29uc3QgZm91bmQgPSB0aGlzLmRhdGEuZmluZChwYWdlID0+XHJcbiAgICAgIGN1cnJlbnRQYXRoID09PSBwYWdlLnVybCB8fCBjdXJyZW50UGF0aC5zdGFydHNXaXRoKHBhZ2UudXJsICsgJy8nKVxyXG4gICAgKTtcclxuICAgIHRoaXMuYWN0aXZlUGFnZSA9IGZvdW5kID8/IG51bGw7XHJcbiAgfVxyXG59XHJcbiIsIjxuYXYgY2xhc3M9XCJ1bml2ZXJzYWwtaGVhZGVyX19uYXZcIiBbbmdDbGFzc109XCJoZWFkZXJQb3NpdGlvblwiPlxyXG4gIDx1bCBjbGFzcz1cInVuaXZlcnNhbC1oZWFkZXJfX25hdi1saXN0XCIgKm5nSWY9XCJkYXRhPy5sZW5ndGhcIj5cclxuICAgIDxsaSAqbmdGb3I9XCJsZXQgcGFnZSBvZiBkYXRhXCIgW2NsYXNzLmFjdGl2ZV09XCJhY3RpdmVQYWdlPy5uYW1lID09IHBhZ2UubmFtZVwiPlxyXG4gICAgICA8YSBbaHJlZl09XCJwYWdlLnVybCB8fCAnIydcIj57eyBwYWdlLm5hbWUgfX08L2E+XHJcbiAgICA8L2xpPlxyXG4gIDwvdWw+XHJcbjwvbmF2PlxyXG4iXX0=
|
|
@@ -12,10 +12,11 @@ import * as i1$1 from '@angular/cdk/layout';
|
|
|
12
12
|
import { LayoutModule } from '@angular/cdk/layout';
|
|
13
13
|
import { UnSubscriber, EndpointBaseService } from 'myrtex-ui-composite';
|
|
14
14
|
import * as i2 from '@angular/router';
|
|
15
|
+
import { NavigationEnd } from '@angular/router';
|
|
16
|
+
import { filter, map, switchMap, debounceTime, catchError } from 'rxjs/operators';
|
|
15
17
|
import { createCustomElement } from '@angular/elements';
|
|
16
18
|
import * as i1$3 from '@ngrx/effects';
|
|
17
19
|
import { createEffect, ofType, EffectsModule } from '@ngrx/effects';
|
|
18
|
-
import { map, switchMap, debounceTime, catchError } from 'rxjs/operators';
|
|
19
20
|
import * as i1$2 from '@angular/common/http';
|
|
20
21
|
import { EMPTY } from 'rxjs';
|
|
21
22
|
|
|
@@ -350,23 +351,38 @@ const loadChatAuthMenuPending = createAction(MainMenuActionEnum.ChatAuthMenuPend
|
|
|
350
351
|
const loadChatAuthMenuSuccess = createAction(MainMenuActionEnum.ChatAuthMenuSuccess, props());
|
|
351
352
|
|
|
352
353
|
class PublicPagesComponent {
|
|
353
|
-
constructor() {
|
|
354
|
+
constructor(router) {
|
|
355
|
+
this.router = router;
|
|
354
356
|
this.activePage = null;
|
|
355
357
|
this.data = [];
|
|
356
358
|
this.headerPosition = '';
|
|
357
359
|
}
|
|
358
360
|
ngOnInit() {
|
|
361
|
+
this.updateActivePage();
|
|
362
|
+
this.routerSubscription = this.router.events
|
|
363
|
+
.pipe(filter(event => event instanceof NavigationEnd))
|
|
364
|
+
.subscribe(() => this.updateActivePage());
|
|
365
|
+
}
|
|
366
|
+
ngOnDestroy() {
|
|
359
367
|
var _a;
|
|
360
|
-
|
|
361
|
-
|
|
368
|
+
(_a = this.routerSubscription) === null || _a === void 0 ? void 0 : _a.unsubscribe();
|
|
369
|
+
}
|
|
370
|
+
updateActivePage() {
|
|
371
|
+
const currentPath = document.location.pathname;
|
|
372
|
+
if (currentPath === '/') {
|
|
373
|
+
this.activePage = null;
|
|
374
|
+
return;
|
|
375
|
+
}
|
|
376
|
+
const found = this.data.find(page => currentPath === page.url || currentPath.startsWith(page.url + '/'));
|
|
377
|
+
this.activePage = found !== null && found !== void 0 ? found : null;
|
|
362
378
|
}
|
|
363
379
|
}
|
|
364
|
-
PublicPagesComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: PublicPagesComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
380
|
+
PublicPagesComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: PublicPagesComponent, deps: [{ token: i2.Router }], target: i0.ɵɵFactoryTarget.Component });
|
|
365
381
|
PublicPagesComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: PublicPagesComponent, selector: "lib-public-pages", inputs: { data: "data", headerPosition: "headerPosition" }, ngImport: i0, template: "<nav class=\"universal-header__nav\" [ngClass]=\"headerPosition\">\r\n <ul class=\"universal-header__nav-list\" *ngIf=\"data?.length\">\r\n <li *ngFor=\"let page of data\" [class.active]=\"activePage?.name == page.name\">\r\n <a [href]=\"page.url || '#'\">{{ page.name }}</a>\r\n </li>\r\n </ul>\r\n</nav>\r\n", directives: [{ type: i4.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }] });
|
|
366
382
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: PublicPagesComponent, decorators: [{
|
|
367
383
|
type: Component,
|
|
368
384
|
args: [{ selector: 'lib-public-pages', template: "<nav class=\"universal-header__nav\" [ngClass]=\"headerPosition\">\r\n <ul class=\"universal-header__nav-list\" *ngIf=\"data?.length\">\r\n <li *ngFor=\"let page of data\" [class.active]=\"activePage?.name == page.name\">\r\n <a [href]=\"page.url || '#'\">{{ page.name }}</a>\r\n </li>\r\n </ul>\r\n</nav>\r\n" }]
|
|
369
|
-
}], propDecorators: { data: [{
|
|
385
|
+
}], ctorParameters: function () { return [{ type: i2.Router }]; }, propDecorators: { data: [{
|
|
370
386
|
type: Input
|
|
371
387
|
}], headerPosition: [{
|
|
372
388
|
type: Input
|