@indice/ng-components 0.2.130 → 0.2.132-beta
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/README.md +4 -4
- package/_styles.css +65 -21
- package/bundles/indice-ng-components.umd.js +126 -124
- package/bundles/indice-ng-components.umd.js.map +1 -1
- package/esm2015/lib/controls/kpi-tile/kpi-tile.component.js +1 -1
- package/esm2015/lib/controls/list-view/list-column.component.js +1 -1
- package/esm2015/lib/controls/list-view/list-view-empty-state.component.js +2 -2
- package/esm2015/lib/controls/skeleton-loader/skeleton-loader.component.js +1 -1
- package/esm2015/lib/layouts/shell/shell-header/shell-header.component.js +67 -62
- package/esm2015/lib/layouts/shell/shell-layout/shell-layout.component.js +6 -11
- package/esm2015/lib/layouts/views/form-layout/form-layout.component.js +6 -5
- package/esm2015/lib/layouts/views/model-view-layout/model-view-layout.component.js +3 -1
- package/esm2015/lib/ng-components.module.js +6 -4
- package/esm2015/lib/pages/http-status/page-not-found/page-not-found.component.js +2 -2
- package/esm2015/lib/pipes/obs-with-status.pipe.js +26 -0
- package/esm2015/lib/services/toaster.service.js +1 -1
- package/esm2015/lib/types.js +11 -5
- package/esm2015/public-api.js +2 -2
- package/fesm2015/indice-ng-components.js +111 -108
- package/fesm2015/indice-ng-components.js.map +1 -1
- package/lib/layouts/shell/shell-header/shell-header.component.d.ts +24 -20
- package/lib/layouts/shell/shell-layout/shell-layout.component.d.ts +2 -3
- package/lib/layouts/views/form-layout/form-layout.component.d.ts +3 -2
- package/lib/ng-components.module.d.ts +2 -2
- package/lib/pipes/obs-with-status.pipe.d.ts +13 -0
- package/lib/types.d.ts +12 -7
- package/package.json +1 -1
- package/public-api.d.ts +1 -1
- package/esm2015/lib/controls/nav-links-list/nav-links-list.component.js +0 -35
- package/lib/controls/nav-links-list/nav-links-list.component.d.ts +0 -14
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
(function (global, factory) {
|
|
2
2
|
typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('@angular/core'), require('@angular/common'), require('@angular/router'), require('@angular/forms'), require('rxjs'), require('rxjs/operators'), require('@indice/ng-auth')) :
|
|
3
3
|
typeof define === 'function' && define.amd ? define('@indice/ng-components', ['exports', '@angular/core', '@angular/common', '@angular/router', '@angular/forms', 'rxjs', 'rxjs/operators', '@indice/ng-auth'], factory) :
|
|
4
|
-
(global = typeof globalThis !== 'undefined' ? globalThis : global || self, factory((global.indice = global.indice || {}, global.indice[
|
|
5
|
-
}
|
|
4
|
+
(global = typeof globalThis !== 'undefined' ? globalThis : global || self, factory((global.indice = global.indice || {}, global.indice['ng-components'] = {}), global.ng.core, global.ng.common, global.ng.router, global.ng.forms, global.rxjs, global.rxjs.operators, global.i2));
|
|
5
|
+
}(this, (function (exports, i0, i1, i1$1, forms, rxjs, operators, i2) { 'use strict';
|
|
6
6
|
|
|
7
7
|
function _interopNamespace(e) {
|
|
8
8
|
if (e && e.__esModule) return e;
|
|
@@ -13,12 +13,14 @@
|
|
|
13
13
|
var d = Object.getOwnPropertyDescriptor(e, k);
|
|
14
14
|
Object.defineProperty(n, k, d.get ? d : {
|
|
15
15
|
enumerable: true,
|
|
16
|
-
get: function () {
|
|
16
|
+
get: function () {
|
|
17
|
+
return e[k];
|
|
18
|
+
}
|
|
17
19
|
});
|
|
18
20
|
}
|
|
19
21
|
});
|
|
20
22
|
}
|
|
21
|
-
n[
|
|
23
|
+
n['default'] = e;
|
|
22
24
|
return Object.freeze(n);
|
|
23
25
|
}
|
|
24
26
|
|
|
@@ -253,16 +255,10 @@
|
|
|
253
255
|
r[k] = a[j];
|
|
254
256
|
return r;
|
|
255
257
|
}
|
|
256
|
-
function __spreadArray(to, from
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
if (!ar)
|
|
261
|
-
ar = Array.prototype.slice.call(from, 0, i);
|
|
262
|
-
ar[i] = from[i];
|
|
263
|
-
}
|
|
264
|
-
}
|
|
265
|
-
return to.concat(ar || Array.prototype.slice.call(from));
|
|
258
|
+
function __spreadArray(to, from) {
|
|
259
|
+
for (var i = 0, il = from.length, j = to.length; i < il; i++, j++)
|
|
260
|
+
to[j] = from[i];
|
|
261
|
+
return to;
|
|
266
262
|
}
|
|
267
263
|
function __await(v) {
|
|
268
264
|
return this instanceof __await ? (this.v = v, this) : new __await(v);
|
|
@@ -663,36 +659,41 @@
|
|
|
663
659
|
Icons.Details = ' ms-Icon ms-Icon--AccountActivity';
|
|
664
660
|
|
|
665
661
|
var NavLink = /** @class */ (function () {
|
|
666
|
-
function NavLink(text, path, exact, external, icon) {
|
|
662
|
+
function NavLink(text, path, exact, external, icon, isRead, creationDate) {
|
|
667
663
|
if (exact === void 0) { exact = false; }
|
|
668
664
|
if (external === void 0) { external = false; }
|
|
669
|
-
this.
|
|
665
|
+
this.isRead = false;
|
|
670
666
|
this.text = text;
|
|
671
667
|
this.path = path;
|
|
672
668
|
this.exact = exact;
|
|
673
669
|
this.external = external;
|
|
674
670
|
this.icon = icon;
|
|
671
|
+
this.isRead = isRead;
|
|
672
|
+
this.creationDate = creationDate;
|
|
675
673
|
}
|
|
676
674
|
return NavLink;
|
|
677
675
|
}());
|
|
678
676
|
var ExternalNavLink = /** @class */ (function (_super) {
|
|
679
677
|
__extends(ExternalNavLink, _super);
|
|
680
678
|
function ExternalNavLink(text, path, openInNewTab, icon) {
|
|
681
|
-
|
|
682
|
-
_this.type = 'external';
|
|
683
|
-
return _this;
|
|
679
|
+
return _super.call(this, text, path, true, openInNewTab, icon) || this;
|
|
684
680
|
}
|
|
685
681
|
return ExternalNavLink;
|
|
686
682
|
}(NavLink));
|
|
687
683
|
var FragmentNavLink = /** @class */ (function (_super) {
|
|
688
684
|
__extends(FragmentNavLink, _super);
|
|
689
685
|
function FragmentNavLink(text, path, icon) {
|
|
690
|
-
|
|
691
|
-
_this.type = 'fragment';
|
|
692
|
-
return _this;
|
|
686
|
+
return _super.call(this, text, path, true, true, icon) || this;
|
|
693
687
|
}
|
|
694
688
|
return FragmentNavLink;
|
|
695
689
|
}(NavLink));
|
|
690
|
+
var NotificationNavLink = /** @class */ (function (_super) {
|
|
691
|
+
__extends(NotificationNavLink, _super);
|
|
692
|
+
function NotificationNavLink(text, path, isRead, creationDate) {
|
|
693
|
+
return _super.call(this, text, path, true, false, undefined, isRead, creationDate) || this;
|
|
694
|
+
}
|
|
695
|
+
return NotificationNavLink;
|
|
696
|
+
}(NavLink));
|
|
696
697
|
var ViewAction = /** @class */ (function () {
|
|
697
698
|
function ViewAction(type, key, param, icon, tooltip) {
|
|
698
699
|
this.type = type;
|
|
@@ -755,6 +756,7 @@
|
|
|
755
756
|
this.appLogoAlt = 'your app name here';
|
|
756
757
|
this.showHeader = true;
|
|
757
758
|
this.showUserNameOnHeader = false;
|
|
759
|
+
this.showNotifications = false;
|
|
758
760
|
this.showFooter = true;
|
|
759
761
|
this.fluid = false;
|
|
760
762
|
}
|
|
@@ -987,7 +989,7 @@
|
|
|
987
989
|
return ListViewEmptyStateComponent;
|
|
988
990
|
}());
|
|
989
991
|
ListViewEmptyStateComponent.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.0.1", ngImport: i0__namespace, type: ListViewEmptyStateComponent, deps: [], target: i0__namespace.ɵɵFactoryTarget.Component });
|
|
990
|
-
ListViewEmptyStateComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.0.1", type: ListViewEmptyStateComponent, selector: "lib-list-view-empty-state", inputs: { title: "title", subTitle: ["sub-title", "subTitle"], newItemLabel: ["new-item-label", "newItemLabel"] }, ngImport: i0__namespace, template: "<div class=\"p-20\">\n <div class=\"text-center p-2\">\n <svg xmlns=\"http://www.w3.org/2000/svg\" class=\"mx-auto h-12 w-12 text-gray-400\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\">\n <path stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M4 7v10c0 2.21 3.582 4 8 4s8-1.79 8-4V7M4 7c0 2.21 3.582 4 8 4s8-1.79 8-4M4 7c0-2.21 3.582-4 8-4s8 1.79 8 4m0 5c0 2.21-3.582 4-8 4s-8-1.79-8-4\" />\n </svg>\n <h3 class=\"mt-2 text-sm font-medium text-gray-900\">{{title}}</h3>\n <p class=\"mt-1 text-sm text-gray-500\">\n {{subTitle}}\n </p>\n <div class=\"mt-6\" *ngIf=\"false\">\n <button type=\"button\" class=\"inline-flex items-center px-4 py-2 border border-transparent shadow-sm text-sm font-medium rounded-md text-white bg-gray-600 hover:bg-gray-700 focus:outline-none focus:ring-2 focus:ring-offset-1 focus:ring-gray-500\">\n <!-- Heroicon name: solid/plus -->\n <svg class=\"-ml-1 mr-2 h-6 w-6\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\" aria-hidden=\"true\">\n <path vector-effect=\"non-scaling-stroke\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M9 13h6m-3-3v6m-9 1V7a2 2 0 012-2h6l2 2h6a2 2 0 012 2v8a2 2 0 01-2 2H5a2 2 0 01-2-2z\" />\n </svg>\n {{newItemLabel}}\n </button>\n </div>\n </div>\n</div>\n", directives: [{ type: i1__namespace.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
|
|
992
|
+
ListViewEmptyStateComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.0.1", type: ListViewEmptyStateComponent, selector: "lib-list-view-empty-state", inputs: { title: "title", subTitle: ["sub-title", "subTitle"], newItemLabel: ["new-item-label", "newItemLabel"] }, ngImport: i0__namespace, template: "<div class=\"p-20\">\r\n <div class=\"text-center p-2\">\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" class=\"mx-auto h-12 w-12 text-gray-400\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\">\r\n <path stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M4 7v10c0 2.21 3.582 4 8 4s8-1.79 8-4V7M4 7c0 2.21 3.582 4 8 4s8-1.79 8-4M4 7c0-2.21 3.582-4 8-4s8 1.79 8 4m0 5c0 2.21-3.582 4-8 4s-8-1.79-8-4\" />\r\n </svg>\r\n <h3 class=\"mt-2 text-sm font-medium text-gray-900\">{{title}}</h3>\r\n <p class=\"mt-1 text-sm text-gray-500\">\r\n {{subTitle}}\r\n </p>\r\n <div class=\"mt-6\" *ngIf=\"false\">\r\n <button type=\"button\" class=\"inline-flex items-center px-4 py-2 border border-transparent shadow-sm text-sm font-medium rounded-md text-white bg-gray-600 hover:bg-gray-700 focus:outline-none focus:ring-2 focus:ring-offset-1 focus:ring-gray-500\">\r\n <!-- Heroicon name: solid/plus -->\r\n <svg class=\"-ml-1 mr-2 h-6 w-6\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\" aria-hidden=\"true\">\r\n <path vector-effect=\"non-scaling-stroke\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M9 13h6m-3-3v6m-9 1V7a2 2 0 012-2h6l2 2h6a2 2 0 012 2v8a2 2 0 01-2 2H5a2 2 0 01-2-2z\" />\r\n </svg>\r\n {{newItemLabel}}\r\n </button>\r\n </div>\r\n </div>\r\n</div>\r\n", directives: [{ type: i1__namespace.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
|
|
991
993
|
i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.0.1", ngImport: i0__namespace, type: ListViewEmptyStateComponent, decorators: [{
|
|
992
994
|
type: i0.Component,
|
|
993
995
|
args: [{
|
|
@@ -1811,38 +1813,6 @@
|
|
|
1811
1813
|
type: i0.Output
|
|
1812
1814
|
}] } });
|
|
1813
1815
|
|
|
1814
|
-
var NavLinksListComponent = /** @class */ (function () {
|
|
1815
|
-
function NavLinksListComponent() {
|
|
1816
|
-
// tslint:disable-next-line:no-input-rename
|
|
1817
|
-
this.navLinkClass = 'nav-link';
|
|
1818
|
-
// tslint:disable-next-line:no-input-rename
|
|
1819
|
-
this.navLinkActiveClass = 'nav-link-active';
|
|
1820
|
-
}
|
|
1821
|
-
NavLinksListComponent.prototype.ngOnInit = function () {
|
|
1822
|
-
};
|
|
1823
|
-
return NavLinksListComponent;
|
|
1824
|
-
}());
|
|
1825
|
-
NavLinksListComponent.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.0.1", ngImport: i0__namespace, type: NavLinksListComponent, deps: [], target: i0__namespace.ɵɵFactoryTarget.Component });
|
|
1826
|
-
NavLinksListComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.0.1", type: NavLinksListComponent, selector: "lib-nav-links-list", inputs: { links: "links", activeFragment: ["active-fragment", "activeFragment"], navLinkClass: ["link-class", "navLinkClass"], navLinkActiveClass: ["link-active-class", "navLinkActiveClass"] }, ngImport: i0__namespace, template: "<ng-container *ngFor=\"let link of links | async\">\n <ng-container [ngSwitch]=\"link.type\">\n <a *ngSwitchCase=\"'router'\"\n href=\"#\"\n [routerLink]=\"[link.path]\"\n [routerLinkActive]=\"navLinkActiveClass\"\n [routerLinkActiveOptions]=\"{ exact: link.exact }\"\n [class]=\"navLinkClass\">\n {{ link.text }}\n </a>\n <a *ngSwitchCase=\"'external'\"\n [href]=\"link.path\"\n [attr.target]=\"link.external ? '_blank' : '_self'\"\n class=\"nav-link\">\n {{ link.text }}\n </a>\n <a *ngSwitchCase=\"'fragment'\"\n routerLink=\".\"\n [fragment]=\"link.path\"\n [class.active]=\"(activeFragment | async) === link.path\"\n class=\"nav-link\">\n {{ link.text }}\n </a>\n </ng-container>\n</ng-container>\n", directives: [{ type: i1__namespace.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i1__namespace.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { type: i1__namespace.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { type: i1__namespace$1.RouterLinkWithHref, selector: "a[routerLink],area[routerLink]", inputs: ["routerLink", "target", "queryParams", "fragment", "queryParamsHandling", "preserveFragment", "skipLocationChange", "replaceUrl", "state", "relativeTo"] }, { type: i1__namespace$1.RouterLinkActive, selector: "[routerLinkActive]", inputs: ["routerLinkActiveOptions", "routerLinkActive"], exportAs: ["routerLinkActive"] }], pipes: { "async": i1__namespace.AsyncPipe } });
|
|
1827
|
-
i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.0.1", ngImport: i0__namespace, type: NavLinksListComponent, decorators: [{
|
|
1828
|
-
type: i0.Component,
|
|
1829
|
-
args: [{
|
|
1830
|
-
selector: 'lib-nav-links-list',
|
|
1831
|
-
templateUrl: './nav-links-list.component.html'
|
|
1832
|
-
}]
|
|
1833
|
-
}], ctorParameters: function () { return []; }, propDecorators: { links: [{
|
|
1834
|
-
type: i0.Input
|
|
1835
|
-
}], activeFragment: [{
|
|
1836
|
-
type: i0.Input,
|
|
1837
|
-
args: ['active-fragment']
|
|
1838
|
-
}], navLinkClass: [{
|
|
1839
|
-
type: i0.Input,
|
|
1840
|
-
args: ['link-class']
|
|
1841
|
-
}], navLinkActiveClass: [{
|
|
1842
|
-
type: i0.Input,
|
|
1843
|
-
args: ['link-active-class']
|
|
1844
|
-
}] } });
|
|
1845
|
-
|
|
1846
1816
|
var APP_LINKS = new i0.InjectionToken('APP_LINKS');
|
|
1847
1817
|
var SHELL_CONFIG = new i0.InjectionToken('SHELL_CONFIG');
|
|
1848
1818
|
|
|
@@ -2097,90 +2067,129 @@
|
|
|
2097
2067
|
args: [{ providedIn: 'root' }]
|
|
2098
2068
|
}], ctorParameters: function () { return [{ type: i0__namespace.ComponentFactoryResolver }, { type: i0__namespace.Injector }, { type: i0__namespace.ApplicationRef }]; } });
|
|
2099
2069
|
|
|
2070
|
+
var defaultError = 'Something went wrong';
|
|
2071
|
+
var ObsWithStatusPipe = /** @class */ (function () {
|
|
2072
|
+
function ObsWithStatusPipe() {
|
|
2073
|
+
}
|
|
2074
|
+
ObsWithStatusPipe.prototype.transform = function (val) {
|
|
2075
|
+
return val.pipe(operators.map(function (value) {
|
|
2076
|
+
return {
|
|
2077
|
+
loading: value.type === 'start',
|
|
2078
|
+
error: value.type === 'error' ? defaultError : '',
|
|
2079
|
+
value: value.type ? value.value : value,
|
|
2080
|
+
};
|
|
2081
|
+
}), operators.startWith({ loading: true }), operators.catchError(function (error) { return rxjs.of({ loading: false, error: typeof error === 'string' ? error : defaultError }); }));
|
|
2082
|
+
};
|
|
2083
|
+
return ObsWithStatusPipe;
|
|
2084
|
+
}());
|
|
2085
|
+
ObsWithStatusPipe.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.0.1", ngImport: i0__namespace, type: ObsWithStatusPipe, deps: [], target: i0__namespace.ɵɵFactoryTarget.Pipe });
|
|
2086
|
+
ObsWithStatusPipe.ɵpipe = i0__namespace.ɵɵngDeclarePipe({ minVersion: "12.0.0", version: "12.0.1", ngImport: i0__namespace, type: ObsWithStatusPipe, name: "obsWithStatus", pure: false });
|
|
2087
|
+
i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.0.1", ngImport: i0__namespace, type: ObsWithStatusPipe, decorators: [{
|
|
2088
|
+
type: i0.Pipe,
|
|
2089
|
+
args: [{
|
|
2090
|
+
name: 'obsWithStatus',
|
|
2091
|
+
pure: false
|
|
2092
|
+
}]
|
|
2093
|
+
}] });
|
|
2094
|
+
|
|
2100
2095
|
var ShellHeaderComponent = /** @class */ (function () {
|
|
2101
|
-
function ShellHeaderComponent(authService, router,
|
|
2096
|
+
function ShellHeaderComponent(authService, router, links) {
|
|
2102
2097
|
this.authService = authService;
|
|
2103
2098
|
this.router = router;
|
|
2104
|
-
this.route = route;
|
|
2105
|
-
this.config = config;
|
|
2106
2099
|
this.links = links;
|
|
2107
2100
|
// tslint:disable-next-line:no-input-rename
|
|
2108
2101
|
this.sectionLinksPath = 'main';
|
|
2109
|
-
|
|
2110
|
-
this.
|
|
2111
|
-
// tslint:disable-next-line:no-input-rename
|
|
2112
|
-
this.showUserNameOnHeader = false;
|
|
2102
|
+
this.notificationLinksPath = 'notifications';
|
|
2103
|
+
this.allNotificationsLinkPath = 'allNotifications';
|
|
2113
2104
|
this.border = true;
|
|
2105
|
+
this.showNotifications = false;
|
|
2106
|
+
this.showUserNameOnHeader = false;
|
|
2107
|
+
this.notificationsMenuVisible = true;
|
|
2108
|
+
this.profileMenuVisible = true;
|
|
2114
2109
|
this.sectionLinks = rxjs.of([]);
|
|
2110
|
+
this.notificationLinks = rxjs.of([]);
|
|
2111
|
+
this.allNotificationsLink = rxjs.of();
|
|
2115
2112
|
this.mobileMenuExpanded = false;
|
|
2116
2113
|
this.userMenuExpanded = false;
|
|
2114
|
+
this.notificationsMenuExpanded = false;
|
|
2115
|
+
this.routeSubject = new rxjs.Observable();
|
|
2117
2116
|
this.routerSub$ = null;
|
|
2118
2117
|
this.userSub$ = null;
|
|
2119
2118
|
this.statusSub$ = null;
|
|
2120
2119
|
this.user = null;
|
|
2121
2120
|
this.avatarName = null;
|
|
2122
|
-
this.activeFragment = null;
|
|
2123
|
-
this.routeSubject = this.router.events.pipe(operators.filter(function (event) { return event instanceof i1$1.NavigationStart; }));
|
|
2124
2121
|
}
|
|
2122
|
+
ShellHeaderComponent.prototype.ngOnDestroy = function () {
|
|
2123
|
+
if (this.routerSub$) {
|
|
2124
|
+
this.routerSub$.unsubscribe();
|
|
2125
|
+
}
|
|
2126
|
+
// TODO: check authenticated user here before we start polling server status
|
|
2127
|
+
if (this.statusSub$) {
|
|
2128
|
+
this.statusSub$.unsubscribe();
|
|
2129
|
+
}
|
|
2130
|
+
if (this.userSub$) {
|
|
2131
|
+
this.userSub$.unsubscribe();
|
|
2132
|
+
}
|
|
2133
|
+
};
|
|
2125
2134
|
ShellHeaderComponent.prototype.ngOnInit = function () {
|
|
2126
2135
|
var _this = this;
|
|
2127
|
-
|
|
2136
|
+
var _a, _b;
|
|
2137
|
+
this.showNotifications = (_a = this.config) === null || _a === void 0 ? void 0 : _a.showNotifications;
|
|
2138
|
+
this.showUserNameOnHeader = (_b = this.config) === null || _b === void 0 ? void 0 : _b.showUserNameOnHeader;
|
|
2128
2139
|
this.sectionLinks = this.links[this.sectionLinksPath];
|
|
2129
|
-
this.
|
|
2140
|
+
this.notificationLinks = this.links[this.notificationLinksPath];
|
|
2141
|
+
this.allNotificationsLink = this.links[this.allNotificationsLinkPath];
|
|
2142
|
+
this.routerSub$ = this.router.events.pipe(operators.filter(function (event) { return event instanceof i1$1.NavigationStart; })).subscribe(function (event) {
|
|
2130
2143
|
_this.mobileMenuExpanded = false;
|
|
2131
2144
|
_this.userMenuExpanded = false;
|
|
2145
|
+
_this.notificationsMenuExpanded = false;
|
|
2132
2146
|
});
|
|
2133
2147
|
this.authService.loadUser().subscribe(function (user) {
|
|
2148
|
+
console.log(user);
|
|
2134
2149
|
_this.setCurrentUser(user);
|
|
2135
2150
|
}, function (error) {
|
|
2136
|
-
console.
|
|
2151
|
+
console.log(error);
|
|
2137
2152
|
});
|
|
2138
2153
|
// Detect user changes and display / or not user info accordingly...
|
|
2139
2154
|
this.userSub$ = this.authService.user$.subscribe(function (user) {
|
|
2140
2155
|
// console.log('ShellHeaderComponent user subscription');
|
|
2141
2156
|
_this.setCurrentUser(user);
|
|
2142
2157
|
});
|
|
2143
|
-
// set current lang if no current value from langs if any
|
|
2144
|
-
if (!this.currentLang && this.langs && this.langs.length > 0) {
|
|
2145
|
-
this.setCurrentLang(this.langs[0]);
|
|
2146
|
-
}
|
|
2147
2158
|
};
|
|
2148
|
-
ShellHeaderComponent.prototype.
|
|
2149
|
-
|
|
2150
|
-
|
|
2151
|
-
|
|
2152
|
-
|
|
2153
|
-
|
|
2154
|
-
this.statusSub$.unsubscribe();
|
|
2155
|
-
}
|
|
2156
|
-
if (this.userSub$) {
|
|
2157
|
-
this.userSub$.unsubscribe();
|
|
2159
|
+
ShellHeaderComponent.prototype.setCurrentUser = function (user) {
|
|
2160
|
+
var _a, _b;
|
|
2161
|
+
this.user = user;
|
|
2162
|
+
if (this.user && this.user.profile) {
|
|
2163
|
+
this.avatarName = "" + ((_a = this.user.profile.given_name) === null || _a === void 0 ? void 0 : _a.charAt(0)) + ((_b = this.user.profile.family_name) === null || _b === void 0 ? void 0 : _b.charAt(0));
|
|
2164
|
+
console.log('load user', this.avatarName);
|
|
2158
2165
|
}
|
|
2159
2166
|
};
|
|
2160
2167
|
// tslint:disable-next-line:typedef
|
|
2161
|
-
ShellHeaderComponent.prototype.
|
|
2168
|
+
ShellHeaderComponent.prototype.onClickOutsideProfile = function ($event) {
|
|
2162
2169
|
this.userMenuExpanded = false;
|
|
2163
2170
|
};
|
|
2171
|
+
// tslint:disable-next-line:typedef
|
|
2172
|
+
ShellHeaderComponent.prototype.onClickOutsideNotifications = function ($event) {
|
|
2173
|
+
this.notificationsMenuExpanded = false;
|
|
2174
|
+
};
|
|
2164
2175
|
ShellHeaderComponent.prototype.signin = function (event) {
|
|
2165
2176
|
if (event) {
|
|
2166
2177
|
event.preventDefault();
|
|
2167
2178
|
}
|
|
2168
2179
|
this.authService.signinRedirect();
|
|
2169
2180
|
};
|
|
2170
|
-
ShellHeaderComponent.prototype.
|
|
2171
|
-
|
|
2172
|
-
this.
|
|
2173
|
-
if (this.user && this.user.profile) {
|
|
2174
|
-
this.avatarName = ("" + ((_a = this.user.profile.given_name) === null || _a === void 0 ? void 0 : _a.charAt(0)) + ((_b = this.user.profile.family_name) === null || _b === void 0 ? void 0 : _b.charAt(0))).toUpperCase();
|
|
2175
|
-
}
|
|
2181
|
+
ShellHeaderComponent.prototype.expandUserMenu = function () {
|
|
2182
|
+
this.userMenuExpanded = !this.userMenuExpanded;
|
|
2183
|
+
this.notificationsMenuExpanded = false;
|
|
2176
2184
|
};
|
|
2177
|
-
ShellHeaderComponent.prototype.
|
|
2178
|
-
this.
|
|
2185
|
+
ShellHeaderComponent.prototype.expandNotificationsMenu = function () {
|
|
2186
|
+
this.notificationsMenuExpanded = !this.notificationsMenuExpanded;
|
|
2187
|
+
this.userMenuExpanded = false;
|
|
2179
2188
|
};
|
|
2180
2189
|
return ShellHeaderComponent;
|
|
2181
2190
|
}());
|
|
2182
|
-
ShellHeaderComponent.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.0.1", ngImport: i0__namespace, type: ShellHeaderComponent, deps: [{ token: i2.AuthService }, { token: i1$1.Router }, { token:
|
|
2183
|
-
ShellHeaderComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.0.1", type: ShellHeaderComponent, selector: "lib-shell-header", inputs: { sectionLinksPath: ["section-links", "sectionLinksPath"], profileMenuVisible: ["profile-menu", "profileMenuVisible"], showUserNameOnHeader: ["show-userName", "showUserNameOnHeader"], langs: "langs", currentLang: ["current-lang", "currentLang"], border: "border" }, ngImport: i0__namespace, template: "<nav>\r\n <div class=\"shell-header-paddings\">\r\n <div [class]=\"border ? 'shell-header-border' : ''\">\r\n <div class=\"shell-header-menu-container\">\r\n <div class=\"shell-header-logo-container\">\r\n <div>\r\n <a href=\"#\" [routerLink]=\"['/']\"><img class=\"app-logo\" [src]=\"config.appLogo\" [alt]=\"config.appLogoAlt\" /></a>\r\n </div>\r\n </div>\r\n\r\n <div class=\"shell-header-link-container\">\r\n <div class=\"shell-header-link-container-inner\">\r\n <lib-nav-links-list\r\n [links]=\"sectionLinks\"\r\n [active-fragment]=\"activeFragment\"\r\n [link-class]=\"'nav-link'\"\r\n [link-active-class]=\"'nav-link-active'\">\r\n </lib-nav-links-list>\r\n </div>\r\n </div>\r\n\r\n <div *ngIf=\"langs && langs.length > 1 && currentLang\" class=\"shell-header-links-far-container\">\r\n <button class=\"text-blue-300 hover:text-blue-500\">\r\n <span>{{currentLang}}</span>\r\n <i class=\"text-xs ml-1 ms-Icon ms-Icon--ChevronDown\"></i>\r\n </button>\r\n </div>\r\n\r\n <div class=\"shell-header-md-visible\">\r\n <div class=\"shell-header-links-far-container\" (clickOutside)=\"onClickOutside($event)\">\r\n\r\n <lib-nav-links-list [links]=\"links.profileActions\" [active-fragment]=\"activeFragment\"\r\n [link-class]=\"'shell-header-menu-rounded-button'\" [link-active-class]=\"'shell-header-menu-rounded-button-active'\">\r\n </lib-nav-links-list>\r\n\r\n <!-- <ng-container *ngFor=\"let link of links.profileActions | async\">\r\n <a class=\"shell-header-menu-rounded-button\"\r\n (clickOutside)=\"onClickOutside($event)\"\r\n [attr.href]=\"link.path\"\r\n [attr.target]=\"link.external ? '_blank' : '_self'\">\r\n <span class=\"sr-only\">{{ link.text }}</span>\r\n <i *ngIf=\"link.icon\" [class]=\"link.icon\"></i>\r\n </a>\r\n </ng-container> -->\r\n\r\n <!-- Profile dropdown -->\r\n <div *ngIf=\"profileMenuVisible\" class=\"ml-2 relative\" (clickOutside)=\"onClickOutside($event)\">\r\n <div [ngClass]=\"{'shell-header-profile': showUserNameOnHeader}\">\r\n <div *ngIf=\"user && showUserNameOnHeader\" class=\"shell-header-profile-userName\">\r\n {{ user.profile.name }}\r\n </div>\r\n <button type=\"button\" *ngIf=\"user\" (click)=\"userMenuExpanded = !userMenuExpanded\"\r\n class=\"shell-header-profile-dropdown-button\"\r\n id=\"user-menu\"\r\n aria-expanded=\"false\"\r\n aria-haspopup=\"true\">\r\n <span class=\"sr-only\">Open user menu</span>\r\n <span class=\"avatar-container\">\r\n <span class=\"avatar-text\">{{this.avatarName}}</span>\r\n </span>\r\n </button>\r\n\r\n <button type=\"button\"\r\n *ngIf=\"!user\"\r\n (click)=\"signin(null)\"\r\n class=\"shell-header-profile-dropdown-button\"\r\n id=\"user-menu\"\r\n aria-expanded=\"false\"\r\n aria-haspopup=\"true\">\r\n <span class=\"sr-only\">sign in</span>\r\n <span class=\"avatar-container\">\r\n <span class=\"avatar-text\"><i class=\"ms-Icon ms-Icon--Signin\"></i></span>\r\n </span>\r\n </button>\r\n\r\n <div *ngIf=\"userMenuExpanded\"\r\n [ngClass]=\"showUserNameOnHeader ? 'shell-header-profile-dropdown-with-username' : 'shell-header-profile-dropdown'\"\r\n role=\"menu\"\r\n aria-orientation=\"vertical\"\r\n aria-labelledby=\"user-menu\">\r\n <lib-nav-links-list\r\n [links]=\"links.profile\"\r\n [active-fragment]=\"activeFragment\"\r\n [link-class]=\"'nav-link-profile'\"\r\n [link-active-class]=\"'nav-link-profile-active'\">\r\n </lib-nav-links-list>\r\n </div>\r\n\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <div class=\"mobile-menu-button-container\">\r\n <!-- Mobile menu button -->\r\n <button type=\"button\"\r\n (click)=\"mobileMenuExpanded = !mobileMenuExpanded\"\r\n class=\"mobile-menu-button\"\r\n aria-controls=\"mobile-menu\"\r\n [attr.aria-expanded]=\"mobileMenuExpanded\">\r\n <span class=\"sr-only\">Open main menu</span>\r\n <!--Heroicon name: outline/menu Menu open: \"hidden\", Menu closed: \"block\"-->\r\n <svg xmlns=\"http://www.w3.org/2000/svg\"\r\n fill=\"none\"\r\n viewBox=\"0 0 24 24\"\r\n stroke=\"currentColor\"\r\n aria-hidden=\"true\"\r\n [class]=\"mobileMenuExpanded ? 'hidden':'block h-6 w-6'\">\r\n <path stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\"\r\n stroke-width=\"2\"\r\n d=\"M4 6h16M4 12h16M4 18h16\" />\r\n </svg>\r\n <!--Heroicon name: outline/x Menu open: \"block\", Menu closed: \"hidden\"-->\r\n <svg xmlns=\"http://www.w3.org/2000/svg\"\r\n fill=\"none\"\r\n viewBox=\"0 0 24 24\"\r\n stroke=\"currentColor\"\r\n aria-hidden=\"true\"\r\n [class]=\"mobileMenuExpanded ? 'block h-6 w-6':'hidden'\">\r\n <path stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\"\r\n stroke-width=\"2\"\r\n d=\"M6 18L18 6M6 6l12 12\" />\r\n </svg>\r\n </button>\r\n </div>\r\n\r\n </div>\r\n </div>\r\n </div>\r\n <!-- Mobile menu, show/hide based on menu state. -->\r\n <div class=\"mobile-menu-container\" *ngIf=\"mobileMenuExpanded\" id=\"mobile-menu\">\r\n <div class=\"mobile-menu-link-container\">\r\n <lib-nav-links-list [links]=\"sectionLinks\" [active-fragment]=\"activeFragment\"\r\n [link-class]=\"'nav-link-mobile'\" [link-active-class]=\"'nav-link-mobile-active'\">\r\n </lib-nav-links-list>\r\n <ng-container *ngIf=\"!user\">\r\n <a href=\"#\" (click)=\"signin($event)\" class=\"nav-link-mobile\">\r\n <i class=\"ms-Icon ms-Icon--Signin mr-2\"></i>\u03A3\u03CD\u03BD\u03B4\u03B5\u03C3\u03B7\r\n </a>\r\n </ng-container>\r\n </div>\r\n <div class=\"mobile-menu-user-info-container\" *ngIf=\"user\">\r\n <div class=\"mobile-menu-user-info-container-inner\">\r\n <div class=\"flex-shrink-0\">\r\n <span class=\"mobile-menu-avatar-container\">\r\n <span class=\"mobile-menu-avatar-name\">{{ this.avatarName }}</span>\r\n </span>\r\n </div>\r\n <div class=\"ml-3\">\r\n <div class=\"mobile-menu-user-name\">{{ user.profile.name }}</div>\r\n <div class=\"mobile-menu-user-email\">{{ user.profile.email }}</div>\r\n </div>\r\n <button class=\"mobile-menu-rounded-button\">\r\n <span class=\"sr-only\">View notifications</span>\r\n <!-- Heroicon name: outline/bell -->\r\n <svg class=\"mobile-menu-rounded-button-icon-style\"\r\n xmlns=\"http://www.w3.org/2000/svg\"\r\n fill=\"none\"\r\n viewBox=\"0 0 24 24\"\r\n stroke=\"currentColor\"\r\n aria-hidden=\"true\">\r\n <path stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\"\r\n stroke-width=\"2\"\r\n d=\"M15 17h5l-1.405-1.405A2.032 2.032 0 0118 14.158V11a6.002 6.002 0 00-4-5.659V5a2 2 0 10-4 0v.341C7.67 6.165 6 8.388 6 11v3.159c0 .538-.214 1.055-.595 1.436L4 17h5m6 0v1a3 3 0 11-6 0v-1m6 0H9\" />\r\n </svg>\r\n </button>\r\n </div>\r\n <div class=\"mobile-menu-link-container\">\r\n <lib-nav-links-list\r\n [links]=\"links.profile\"\r\n [active-fragment]=\"activeFragment\"\r\n [link-class]=\"'nav-link-mobile'\"\r\n [link-active-class]=\"'nav-link-mobile-active'\">\r\n </lib-nav-links-list>\r\n </div>\r\n </div>\r\n </div>\r\n</nav>\r\n", components: [{ type: NavLinksListComponent, selector: "lib-nav-links-list", inputs: ["links", "active-fragment", "link-class", "link-active-class"] }], directives: [{ type: i1__namespace$1.RouterLinkWithHref, selector: "a[routerLink],area[routerLink]", inputs: ["routerLink", "target", "queryParams", "fragment", "queryParamsHandling", "preserveFragment", "skipLocationChange", "replaceUrl", "state", "relativeTo"] }, { type: i1__namespace.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: ClickOutsideDirective, selector: "[clickOutside]", inputs: ["clickOutsideEnabled", "attachOutsideOnClick", "delayClickOutsideInit", "emitOnBlur", "exclude", "excludeBeforeClick", "clickOutsideEvents"], outputs: ["clickOutside"] }, { type: i1__namespace.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }] });
|
|
2191
|
+
ShellHeaderComponent.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.0.1", ngImport: i0__namespace, type: ShellHeaderComponent, deps: [{ token: i2.AuthService }, { token: i1$1.Router }, { token: APP_LINKS }], target: i0__namespace.ɵɵFactoryTarget.Component });
|
|
2192
|
+
ShellHeaderComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.0.1", type: ShellHeaderComponent, selector: "lib-shell-header", inputs: { sectionLinksPath: ["section-links", "sectionLinksPath"], notificationLinksPath: ["notification-links", "notificationLinksPath"], allNotificationsLinkPath: ["all-notifications", "allNotificationsLinkPath"], config: "config", border: "border" }, ngImport: i0__namespace, template: "<nav>\r\n <div class=\"shell-header-paddings\">\r\n <div [class]=\"border ? 'shell-header-border' : ''\">\r\n <div class=\"shell-header-menu-container\">\r\n <div class=\"shell-header-links-no-grow-container\">\r\n <div>\r\n <a href=\"#\"\r\n [routerLink]=\"['/']\"><img class=\"app-logo\"\r\n [src]=\"config.appLogo\"\r\n [alt]=\"config.appLogoAlt\" /></a>\r\n </div>\r\n </div>\r\n\r\n <div class=\"shell-header-link-container\">\r\n <ng-container *ngFor=\"let link of sectionLinks | async\">\r\n <a href=\"#\"\r\n [routerLink]=\"[link.path]\"\r\n [attr.target]=\"link.external ? '_blank' : '_self'\"\r\n [routerLinkActive]=\"['nav-link-active']\"\r\n [routerLinkActiveOptions]=\"{ exact: link.exact }\"\r\n class=\"nav-link\">\r\n {{ link.text }}\r\n </a>\r\n </ng-container>\r\n </div>\r\n\r\n <div class=\"shell-header-md-visible\">\r\n <div class=\"shell-header-links-no-grow-container\">\r\n\r\n <ng-container *ngFor=\"let link of links.profileActions | async\">\r\n <a class=\"shell-header-menu-rounded-button\"\r\n (clickOutside)=\"onClickOutsideProfile($event)\"\r\n [attr.href]=\"link.path\"\r\n [attr.target]=\"link.external ? '_blank' : '_self'\">\r\n <span class=\"sr-only\">{{ link.text }}</span>\r\n <i *ngIf=\"link.icon\"\r\n [class]=\"link.icon\"></i>\r\n </a>\r\n </ng-container>\r\n\r\n <!-- Profile dropdown -->\r\n <div class=\"ml-2 relative\"\r\n (clickOutside)=\"onClickOutsideProfile($event)\"\r\n *ngIf=\"profileMenuVisible\">\r\n <div [ngClass]=\"{'shell-header-profile': showUserNameOnHeader}\">\r\n <div *ngIf=\"user && showUserNameOnHeader\"\r\n class=\"shell-header-profile-userName\">\r\n {{ user.profile.name }}\r\n </div>\r\n <button type=\"button\"\r\n *ngIf=\"user\"\r\n (click)=\"userMenuExpanded = !userMenuExpanded\"\r\n class=\"shell-header-profile-dropdown-button\"\r\n id=\"user-menu\"\r\n aria-expanded=\"false\"\r\n aria-haspopup=\"true\">\r\n <span class=\"sr-only\">Open user menu</span>\r\n <span class=\"avatar-container\">\r\n <span class=\"avatar-text\">{{this.avatarName}}</span>\r\n </span>\r\n </button>\r\n\r\n <button type=\"button\"\r\n *ngIf=\"!user\"\r\n (click)=\"signin(null)\"\r\n class=\"shell-header-profile-dropdown-button\"\r\n id=\"user-menu\"\r\n aria-expanded=\"false\"\r\n aria-haspopup=\"true\">\r\n <span class=\"sr-only\">sign in</span>\r\n <span class=\"avatar-container\">\r\n <span class=\"avatar-text\"><i class=\"ms-Icon ms-Icon--Signin\"></i></span>\r\n </span>\r\n </button>\r\n\r\n <div *ngIf=\"userMenuExpanded\"\r\n [ngClass]=\"showUserNameOnHeader ? 'shell-header-profile-dropdown-with-username' : 'shell-header-profile-dropdown'\"\r\n role=\"menu\"\r\n aria-orientation=\"vertical\"\r\n aria-labelledby=\"user-menu\">\r\n <!-- <a href=\"#\" class=\"block px-4 py-2 text-sm text-gray-700 hover:bg-gray-100\" role=\"menuitem\">\u0391\u03C0\u03BF\u03C3\u03CD\u03BD\u03B4\u03B5\u03C3\u03B7</a> -->\r\n <ng-container *ngFor=\"let link of links.profile | async\">\r\n <!-- <a *ngIf=\"link.external\" [attr.href]=\"link.path\" [attr.target]=\"'_blank'\" class=\"nav-link-profile\">\r\n {{ link.text }}\r\n </a> -->\r\n <a [routerLink]=\"link.path\"\r\n [routerLinkActive]=\"['nav-link-profile-active']\"\r\n [routerLinkActiveOptions]=\"{ exact: link.exact }\"\r\n class=\"nav-link-profile\">\r\n {{ link.text }}\r\n </a>\r\n </ng-container>\r\n </div>\r\n\r\n </div>\r\n </div>\r\n\r\n <!-- Notifications dropdown -->\r\n <div class=\"ml-2 relative\"\r\n (clickOutside)=\"onClickOutsideNotifications($event)\"\r\n *ngIf=\"notificationsMenuVisible\">\r\n <!-- Notifications Button -->\r\n <button class=\"mobile-menu-rounded-button bg-transparent\"\r\n *ngIf=\"showNotifications\"\r\n (click)=\"expandNotificationsMenu()\"\r\n id=\"notifications-menu\"\r\n aria-expanded=\"false\"\r\n aria-haspopup=\"true\">\r\n <span class=\"sr-only\">View notifications</span>\r\n <!-- Heroicon name: outline/bell -->\r\n <svg class=\"mobile-menu-rounded-button-icon-style\"\r\n xmlns=\"http://www.w3.org/2000/svg\"\r\n fill=\"none\"\r\n viewBox=\"0 0 24 24\"\r\n stroke=\"currentColor\"\r\n aria-hidden=\"true\">\r\n <path stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\"\r\n stroke-width=\"2\"\r\n d=\"M15 17h5l-1.405-1.405A2.032 2.032 0 0118 14.158V11a6.002 6.002 0 00-4-5.659V5a2 2 0 10-4 0v.341C7.67 6.165 6 8.388 6 11v3.159c0 .538-.214 1.055-.595 1.436L4 17h5m6 0v1a3 3 0 11-6 0v-1m6 0H9\" />\r\n </svg>\r\n </button>\r\n\r\n <div *ngIf=\"notificationsMenuExpanded\"\r\n [ngClass]=\"showUserNameOnHeader ? 'shell-header-notifications-dropdown-with-username' : 'shell-header-notifications-dropdown'\"\r\n role=\"menu\"\r\n aria-orientation=\"vertical\"\r\n aria-labelledby=\"notifications-menu\">\r\n <div class=\"max-h-64 overflow-y-auto notification-messages min-h\">\r\n <ng-container *ngIf=\"!notificationLinks; else notificationsDropDown\"\r\n class=\"py-5\">\r\n <div class=\"nav-link-notifications hover:bg-transparent\">\r\n \u0394\u03B5\u03BD \u03AD\u03C7\u03B5\u03C4\u03B5 \u03BD\u03AD\u03B5\u03C2 \u03B5\u03B9\u03B4\u03BF\u03C0\u03BF\u03B9\u03AE\u03C3\u03B5\u03B9\u03C2\r\n </div>\r\n </ng-container>\r\n <ng-template #notificationsDropDown>\r\n <ul class=\"pr-1.5\">\r\n <div *ngIf=\"notificationLinks | obsWithStatus | async as obs\">\r\n <ng-template [ngIf]=\"obs.value\">\r\n <ng-container *ngFor=\"let link of notificationLinks | async\">\r\n <li class=\"mb-2\"\r\n [ngClass]=\"{'border-l-2 border-blue-500 bg-blue-50 hover:bg-blue-50': !link.isRead }\">\r\n <a [routerLink]=\"link.path\"\r\n class=\"nav-link-notifications grid grid-row\"\r\n [ngClass]=\"!link.isRead ? ' hover:bg-blue-50' : 'border-b border-gray-100'\">\r\n <span class=\"font-bold\">\r\n {{ link.text }}\r\n </span>\r\n <span class=\"font-thin tracking-tighter\">\r\n {{ link.creationDate | date: 'EEE, d MMMM' }}\r\n </span>\r\n </a>\r\n </li>\r\n </ng-container>\r\n\r\n </ng-template>\r\n <ng-template [ngIf]=\"obs.loading\">\r\n <div class=\"h-32 flex items-center justify-center\">\r\n <div class=\"animate-pulse text-s text-gray-600\">Loading...</div>\r\n </div>\r\n </ng-template>\r\n </div>\r\n </ul>\r\n </ng-template>\r\n </div>\r\n <div class=\"pr-1.5 py-1 rounded-sm\">\r\n <a [routerLink]=\"(allNotificationsLink | async)?.path\">\r\n <button type=\"button\"\r\n class=\"shell-header-notifications-dropdown-view-all-button\">\u03A0\u03C1\u03BF\u03B2\u03BF\u03BB\u03AE \u03CC\u03BB\u03C9\u03BD</button>\r\n </a>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <div class=\"mobile-menu-button-container\">\r\n <!-- Mobile menu button -->\r\n <button type=\"button\"\r\n (click)=\"mobileMenuExpanded = !mobileMenuExpanded\"\r\n class=\"mobile-menu-button\"\r\n aria-controls=\"mobile-menu\"\r\n [attr.aria-expanded]=\"mobileMenuExpanded\">\r\n <span class=\"sr-only\">Open main menu</span>\r\n <!--Heroicon name: outline/menu Menu open: \"hidden\", Menu closed: \"block\"-->\r\n <svg class=\"block h-6 w-6\"\r\n xmlns=\"http://www.w3.org/2000/svg\"\r\n fill=\"none\"\r\n viewBox=\"0 0 24 24\"\r\n stroke=\"currentColor\"\r\n aria-hidden=\"true\">\r\n <path stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\"\r\n stroke-width=\"2\"\r\n d=\"M4 6h16M4 12h16M4 18h16\" />\r\n </svg>\r\n <!--Heroicon name: outline/x Menu open: \"block\", Menu closed: \"hidden\"-->\r\n <svg class=\"hidden h-6 w-6\"\r\n xmlns=\"http://www.w3.org/2000/svg\"\r\n fill=\"none\"\r\n viewBox=\"0 0 24 24\"\r\n stroke=\"currentColor\"\r\n aria-hidden=\"true\">\r\n <path stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\"\r\n stroke-width=\"2\"\r\n d=\"M6 18L18 6M6 6l12 12\" />\r\n </svg>\r\n </button>\r\n </div>\r\n\r\n </div>\r\n </div>\r\n </div>\r\n <!-- Mobile menu, show/hide based on menu state. -->\r\n <div class=\"mobile-menu-container\"\r\n *ngIf=\"mobileMenuExpanded\"\r\n id=\"mobile-menu\">\r\n <div class=\"mobile-menu-link-container\">\r\n <ng-container *ngFor=\"let link of sectionLinks | async\">\r\n <a *ngIf=\"link.external\"\r\n [attr.href]=\"link.path\"\r\n [attr.target]=\"'_blank'\"\r\n class=\"nav-link-mobile\">\r\n {{ link.text }}\r\n </a>\r\n <a *ngIf=\"!link.external\"\r\n [routerLink]=\"link.path\"\r\n [routerLinkActive]=\"['nav-link-mobile-active']\"\r\n [routerLinkActiveOptions]=\"{ exact: link.exact }\"\r\n class=\"nav-link-mobile\">\r\n {{ link.text }}\r\n </a>\r\n </ng-container>\r\n <ng-container *ngIf=\"!user\">\r\n <a href=\"#\"\r\n (click)=\"signin($event)\"\r\n class=\"nav-link-mobile\">\r\n <i class=\"ms-Icon ms-Icon--Signin mr-2\"></i>\u03A3\u03CD\u03BD\u03B4\u03B5\u03C3\u03B7\r\n </a>\r\n </ng-container>\r\n </div>\r\n <div class=\"mobile-menu-user-info-container\"\r\n *ngIf=\"user\">\r\n <div class=\"mobile-menu-user-info-container-inner\">\r\n <div class=\"flex-shrink-0\">\r\n <span class=\"mobile-menu-avatar-container\">\r\n <span class=\"mobile-menu-avatar-name\">{{ this.avatarName }}</span>\r\n </span>\r\n </div>\r\n <div class=\"ml-3\">\r\n <div class=\"mobile-menu-user-name\">{{ user.profile.name }}</div>\r\n <div class=\"mobile-menu-user-email\">{{ user.profile.email }}</div>\r\n </div>\r\n <button class=\"mobile-menu-rounded-button\">\r\n <span class=\"sr-only\">View notifications</span>\r\n <!-- Heroicon name: outline/bell -->\r\n <svg class=\"mobile-menu-rounded-button-icon-style\"\r\n xmlns=\"http://www.w3.org/2000/svg\"\r\n fill=\"none\"\r\n viewBox=\"0 0 24 24\"\r\n stroke=\"currentColor\"\r\n aria-hidden=\"true\">\r\n <path stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\"\r\n stroke-width=\"2\"\r\n d=\"M15 17h5l-1.405-1.405A2.032 2.032 0 0118 14.158V11a6.002 6.002 0 00-4-5.659V5a2 2 0 10-4 0v.341C7.67 6.165 6 8.388 6 11v3.159c0 .538-.214 1.055-.595 1.436L4 17h5m6 0v1a3 3 0 11-6 0v-1m6 0H9\" />\r\n </svg>\r\n </button>\r\n </div>\r\n <div class=\"mobile-menu-link-container\">\r\n <ng-container *ngFor=\"let link of links.profile | async\">\r\n <a *ngIf=\"link.external\"\r\n [attr.href]=\"link.path\"\r\n [attr.target]=\"'_blank'\"\r\n class=\"nav-link-mobile\">\r\n {{ link.text }}\r\n </a>\r\n <a [routerLink]=\"link.path\"\r\n [routerLinkActive]=\"['nav-link-mobile-active']\"\r\n [routerLinkActiveOptions]=\"{ exact: link.exact }\"\r\n class=\"nav-link-mobile\">\r\n {{ link.text }}\r\n </a>\r\n </ng-container>\r\n <!-- <a href=\"#\" class=\"block px-3 py-2 rounded-sm text-base font-medium text-gray-400 hover:text-white hover:bg-gray-700\">\u0391\u03C0\u03BF\u03C3\u03CD\u03BD\u03B4\u03B5\u03C3\u03B7</a> -->\r\n </div>\r\n </div>\r\n </div>\r\n</nav>", directives: [{ type: i1__namespace$1.RouterLinkWithHref, selector: "a[routerLink],area[routerLink]", inputs: ["routerLink", "target", "queryParams", "fragment", "queryParamsHandling", "preserveFragment", "skipLocationChange", "replaceUrl", "state", "relativeTo"] }, { type: i1__namespace.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i1__namespace$1.RouterLinkActive, selector: "[routerLinkActive]", inputs: ["routerLinkActiveOptions", "routerLinkActive"], exportAs: ["routerLinkActive"] }, { type: ClickOutsideDirective, selector: "[clickOutside]", inputs: ["clickOutsideEnabled", "attachOutsideOnClick", "delayClickOutsideInit", "emitOnBlur", "exclude", "excludeBeforeClick", "clickOutsideEvents"], outputs: ["clickOutside"] }, { type: i1__namespace.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1__namespace.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }], pipes: { "async": i1__namespace.AsyncPipe, "obsWithStatus": ObsWithStatusPipe, "date": i1__namespace.DatePipe } });
|
|
2184
2193
|
i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.0.1", ngImport: i0__namespace, type: ShellHeaderComponent, decorators: [{
|
|
2185
2194
|
type: i0.Component,
|
|
2186
2195
|
args: [{
|
|
@@ -2195,12 +2204,6 @@
|
|
|
2195
2204
|
}] }, { type: i1__namespace$1.Router, decorators: [{
|
|
2196
2205
|
type: i0.Inject,
|
|
2197
2206
|
args: [i1$1.Router]
|
|
2198
|
-
}] }, { type: i1__namespace$1.ActivatedRoute, decorators: [{
|
|
2199
|
-
type: i0.Inject,
|
|
2200
|
-
args: [i1$1.ActivatedRoute]
|
|
2201
|
-
}] }, { type: undefined, decorators: [{
|
|
2202
|
-
type: i0.Inject,
|
|
2203
|
-
args: [SHELL_CONFIG]
|
|
2204
2207
|
}] }, { type: undefined, decorators: [{
|
|
2205
2208
|
type: i0.Inject,
|
|
2206
2209
|
args: [APP_LINKS]
|
|
@@ -2208,17 +2211,14 @@
|
|
|
2208
2211
|
}, propDecorators: { sectionLinksPath: [{
|
|
2209
2212
|
type: i0.Input,
|
|
2210
2213
|
args: ['section-links']
|
|
2211
|
-
}],
|
|
2214
|
+
}], notificationLinksPath: [{
|
|
2212
2215
|
type: i0.Input,
|
|
2213
|
-
args: ['
|
|
2214
|
-
}],
|
|
2216
|
+
args: ['notification-links']
|
|
2217
|
+
}], allNotificationsLinkPath: [{
|
|
2215
2218
|
type: i0.Input,
|
|
2216
|
-
args: ['
|
|
2217
|
-
}],
|
|
2219
|
+
args: ['all-notifications']
|
|
2220
|
+
}], config: [{
|
|
2218
2221
|
type: i0.Input
|
|
2219
|
-
}], currentLang: [{
|
|
2220
|
-
type: i0.Input,
|
|
2221
|
-
args: ['current-lang']
|
|
2222
2222
|
}], border: [{
|
|
2223
2223
|
type: i0.Input
|
|
2224
2224
|
}] } });
|
|
@@ -2245,15 +2245,14 @@
|
|
|
2245
2245
|
} });
|
|
2246
2246
|
|
|
2247
2247
|
var ShellLayoutComponent = /** @class */ (function () {
|
|
2248
|
-
function ShellLayoutComponent(
|
|
2249
|
-
this.document = document;
|
|
2248
|
+
function ShellLayoutComponent(router, location, config, componentLoaderFactory) {
|
|
2250
2249
|
this.router = router;
|
|
2251
2250
|
this.location = location;
|
|
2252
2251
|
this.config = config;
|
|
2253
2252
|
this.componentLoaderFactory = componentLoaderFactory;
|
|
2254
2253
|
this.dynamicComponentHosts = null;
|
|
2255
|
-
this.showRightPaneSM = false;
|
|
2256
2254
|
this.routerSub$ = null;
|
|
2255
|
+
this.showRightPaneSM = false;
|
|
2257
2256
|
this.activeConfig = new DefaultShellConfig();
|
|
2258
2257
|
this.loaded = false;
|
|
2259
2258
|
if (!config) {
|
|
@@ -2317,8 +2316,8 @@
|
|
|
2317
2316
|
};
|
|
2318
2317
|
return ShellLayoutComponent;
|
|
2319
2318
|
}());
|
|
2320
|
-
ShellLayoutComponent.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.0.1", ngImport: i0__namespace, type: ShellLayoutComponent, deps: [{ token:
|
|
2321
|
-
ShellLayoutComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.0.1", type: ShellLayoutComponent, selector: "lib-shell-layout", viewQueries: [{ propertyName: "dynamicComponentHosts", predicate: DynamicComponentHostDirective, descendants: true }], ngImport: i0__namespace, template: "<div *ngIf=\"loaded\"
|
|
2319
|
+
ShellLayoutComponent.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.0.1", ngImport: i0__namespace, type: ShellLayoutComponent, deps: [{ token: i1__namespace$1.Router }, { token: i1__namespace.Location }, { token: SHELL_CONFIG }, { token: ComponentLoaderFactory }], target: i0__namespace.ɵɵFactoryTarget.Component });
|
|
2320
|
+
ShellLayoutComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.0.1", type: ShellLayoutComponent, selector: "lib-shell-layout", viewQueries: [{ propertyName: "dynamicComponentHosts", predicate: DynamicComponentHostDirective, descendants: true }], ngImport: i0__namespace, template: "<div *ngIf=\"loaded\"\r\n [style.display]=\"!loaded ? 'none':'block'\"\r\n class=\"shell-container active-side-pane\">\r\n <div class=\"shell-header-container\"\r\n *ngIf=\"activeConfig.showHeader\">\r\n <div [class]=\"activeConfig.fluid ? 'shell-header-container-inner-fluid' : 'shell-header-container-inner'\">\r\n\r\n <ng-container *ngIf=\"activeConfig.customHeaderComponent\">\r\n <div appDynamicComponentHost=\"Header\"></div>\r\n </ng-container>\r\n\r\n <lib-shell-header *ngIf=\"!activeConfig.customHeaderComponent\"\r\n [config]=\"activeConfig\"></lib-shell-header>\r\n </div>\r\n </div>\r\n\r\n <main [class]=\"activeConfig.showHeader ? 'shell-content-container' : 'shell-content-container-no-header'\">\r\n <div [class]=\"activeConfig.fluid ? 'shell-content-container-inner-fluid' : 'shell-content-container-inner'\">\r\n <router-outlet></router-outlet>\r\n </div>\r\n </main>\r\n\r\n <div class=\"shell-footer-container\"\r\n *ngIf=\"activeConfig.showFooter\">\r\n <div [class]=\"activeConfig.fluid ? 'shell-footer-container-inner-fluid' : 'shell-footer-container-inner'\">\r\n <ng-container *ngIf=\"activeConfig.customFooterComponent\">\r\n <div appDynamicComponentHost\r\n hostName=\"Footer\"></div>\r\n </ng-container>\r\n <lib-shell-footer *ngIf=\"!activeConfig.customFooterComponent\"></lib-shell-footer>\r\n </div>\r\n </div>\r\n\r\n <lib-side-pane #rightPane>\r\n <router-outlet name=\"rightpane\"\r\n (activate)=\"rightPane.onSidePaneActivated($event)\"\r\n (deactivate)=\"rightPane.onSidePaneDeactivated($event)\"></router-outlet>\r\n </lib-side-pane>\r\n\r\n <lib-toaster-container></lib-toaster-container>\r\n\r\n</div>\r\n", components: [{ type: ShellHeaderComponent, selector: "lib-shell-header", inputs: ["section-links", "notification-links", "all-notifications", "config", "border"] }, { type: ShellFooterComponent, selector: "lib-shell-footer" }, { type: SidePaneComponent, selector: "lib-side-pane", inputs: ["visible"], outputs: ["onComplete"] }, { type: ToasterContainerComponent, selector: "lib-toaster-container" }], directives: [{ type: i1__namespace.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: DynamicComponentHostDirective, selector: "[appDynamicComponentHost]", inputs: ["hostName"] }, { type: i1__namespace$1.RouterOutlet, selector: "router-outlet", outputs: ["activate", "deactivate"], exportAs: ["outlet"] }] });
|
|
2322
2321
|
i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.0.1", ngImport: i0__namespace, type: ShellLayoutComponent, decorators: [{
|
|
2323
2322
|
type: i0.Component,
|
|
2324
2323
|
args: [{
|
|
@@ -2327,10 +2326,7 @@
|
|
|
2327
2326
|
templateUrl: './shell-layout.component.html',
|
|
2328
2327
|
}]
|
|
2329
2328
|
}], ctorParameters: function () {
|
|
2330
|
-
return [{ type: undefined, decorators: [{
|
|
2331
|
-
type: i0.Inject,
|
|
2332
|
-
args: [i1.DOCUMENT]
|
|
2333
|
-
}] }, { type: i1__namespace$1.Router }, { type: i1__namespace.Location }, { type: undefined, decorators: [{
|
|
2329
|
+
return [{ type: i1__namespace$1.Router }, { type: i1__namespace.Location }, { type: undefined, decorators: [{
|
|
2334
2330
|
type: i0.Inject,
|
|
2335
2331
|
args: [SHELL_CONFIG]
|
|
2336
2332
|
}] }, { type: ComponentLoaderFactory }];
|
|
@@ -2461,9 +2457,11 @@
|
|
|
2461
2457
|
ModelViewLayoutComponent.prototype.ngOnInit = function () {
|
|
2462
2458
|
};
|
|
2463
2459
|
ModelViewLayoutComponent.prototype.onSidePaneActivated = function ($event) {
|
|
2460
|
+
//console.log('onSidePaneActivated', $event);
|
|
2464
2461
|
this.showRightPaneSM = true;
|
|
2465
2462
|
};
|
|
2466
2463
|
ModelViewLayoutComponent.prototype.onSidePaneDeactivated = function ($event) {
|
|
2464
|
+
//console.log('onSidePaneActivated', $event);
|
|
2467
2465
|
this.showRightPaneSM = false;
|
|
2468
2466
|
};
|
|
2469
2467
|
ModelViewLayoutComponent.prototype.closeSidePane = function () {
|
|
@@ -2593,8 +2591,8 @@
|
|
|
2593
2591
|
}] } });
|
|
2594
2592
|
|
|
2595
2593
|
var FormLayoutComponent = /** @class */ (function () {
|
|
2596
|
-
function FormLayoutComponent(
|
|
2597
|
-
this.
|
|
2594
|
+
function FormLayoutComponent(_router) {
|
|
2595
|
+
this._router = _router;
|
|
2598
2596
|
this.title = null;
|
|
2599
2597
|
// tslint:disable-next-line:no-input-rename
|
|
2600
2598
|
this.searchPlaceholder = 'αναζήτηση';
|
|
@@ -2606,6 +2604,7 @@
|
|
|
2606
2604
|
// tslint:disable-next-line:no-output-on-prefix
|
|
2607
2605
|
this.onSearch = new i0.EventEmitter();
|
|
2608
2606
|
this.onComplete = new i0.EventEmitter();
|
|
2607
|
+
this.showRightPaneSM = false;
|
|
2609
2608
|
}
|
|
2610
2609
|
FormLayoutComponent.prototype.ngOnInit = function () {
|
|
2611
2610
|
var _a;
|
|
@@ -2635,10 +2634,10 @@
|
|
|
2635
2634
|
FormLayoutComponent.prototype.routerLinkActionClick = function (action, relative) {
|
|
2636
2635
|
if (relative === void 0) { relative = false; }
|
|
2637
2636
|
if (action.outlet) {
|
|
2638
|
-
this.
|
|
2637
|
+
this._router.navigate(['', { outlets: { formRightPane: action.link } }]);
|
|
2639
2638
|
}
|
|
2640
2639
|
else {
|
|
2641
|
-
this.
|
|
2640
|
+
this._router.navigate([action.link]);
|
|
2642
2641
|
}
|
|
2643
2642
|
};
|
|
2644
2643
|
return FormLayoutComponent;
|
|
@@ -2791,7 +2790,7 @@
|
|
|
2791
2790
|
return PageNotFoundComponent;
|
|
2792
2791
|
}());
|
|
2793
2792
|
PageNotFoundComponent.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.0.1", ngImport: i0__namespace, type: PageNotFoundComponent, deps: [], target: i0__namespace.ɵɵFactoryTarget.Component });
|
|
2794
|
-
PageNotFoundComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.0.1", type: PageNotFoundComponent, selector: "lib-page-not-found", ngImport: i0__namespace, template: "<lib-view-layout [show-header]=\"false\"
|
|
2793
|
+
PageNotFoundComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.0.1", type: PageNotFoundComponent, selector: "lib-page-not-found", ngImport: i0__namespace, template: "<lib-view-layout [show-header]=\"false\"\r\n title=\"404 - \u03B4\u03B5\u03BD \u03B2\u03C1\u03AD\u03B8\u03B7\u03BA\u03B5!\">\r\n <div class=\"bg-gray-600 view-container\">\r\n <div class=\"max-w-2xl mx-auto text-center py-16 px-4 sm:py-20 sm:px-6 lg:px-8\">\r\n <h2 class=\"text-3xl font-extrabold text-white sm:text-4xl\">\r\n <span class=\"block\">404</span>\r\n </h2>\r\n <p class=\"mt-4 text-lg leading-6 text-gray-200\">\u03B4\u03B5\u03BD \u03B2\u03C1\u03AD\u03B8\u03B7\u03BA\u03B5 \u03B7 \u03C3\u03B5\u03BB\u03AF\u03B4\u03B1 \u03C0\u03BF\u03C5 \u03B6\u03B7\u03C4\u03AE\u03C3\u03B1\u03C4\u03B5!</p>\r\n <a href=\"/\"\r\n class=\"mt-8 inline-flex items-center justify-center px-5 py-3 border border-transparent text-base font-sm rounded-sm text-gray-600 bg-white hover:bg-gray-50 sm:w-auto\">\r\n \u03C0\u03B1\u03C4\u03AE\u03C3\u03C4\u03B5 \u03B5\u03B4\u03CE \u03B3\u03B9\u03B1 \u03BD\u03B1 \u03B5\u03C0\u03B9\u03C3\u03C4\u03C1\u03AD\u03C8\u03B5\u03C4\u03B5\r\n </a>\r\n </div>\r\n </div>\r\n</lib-view-layout>", components: [{ type: ViewLayoutComponent, selector: "lib-view-layout", inputs: ["show-header", "fluid", "title", "icon", "actions", "busy", "search-placeholder", "view", "meta-items"], outputs: ["onAction", "onSearch"] }] });
|
|
2795
2794
|
i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.0.1", ngImport: i0__namespace, type: PageNotFoundComponent, decorators: [{
|
|
2796
2795
|
type: i0.Component,
|
|
2797
2796
|
args: [{
|
|
@@ -3582,7 +3581,7 @@
|
|
|
3582
3581
|
// pipes
|
|
3583
3582
|
AddressPipe,
|
|
3584
3583
|
DurationFormatPipe,
|
|
3585
|
-
|
|
3584
|
+
ObsWithStatusPipe
|
|
3586
3585
|
], imports: [i1.CommonModule,
|
|
3587
3586
|
i1$1.RouterModule,
|
|
3588
3587
|
i2.IndiceAuthModule], exports: [ClickOutsideDirective,
|
|
@@ -3610,6 +3609,7 @@
|
|
|
3610
3609
|
UnauthorizedComponent,
|
|
3611
3610
|
AddressPipe,
|
|
3612
3611
|
DurationFormatPipe,
|
|
3612
|
+
ObsWithStatusPipe,
|
|
3613
3613
|
CollapsiblePanelComponent,
|
|
3614
3614
|
SidePaneComponent,
|
|
3615
3615
|
DatepickerComponent,
|
|
@@ -3666,7 +3666,7 @@
|
|
|
3666
3666
|
// pipes
|
|
3667
3667
|
AddressPipe,
|
|
3668
3668
|
DurationFormatPipe,
|
|
3669
|
-
|
|
3669
|
+
ObsWithStatusPipe
|
|
3670
3670
|
],
|
|
3671
3671
|
imports: [
|
|
3672
3672
|
i1.CommonModule,
|
|
@@ -3699,6 +3699,7 @@
|
|
|
3699
3699
|
UnauthorizedComponent,
|
|
3700
3700
|
AddressPipe,
|
|
3701
3701
|
DurationFormatPipe,
|
|
3702
|
+
ObsWithStatusPipe,
|
|
3702
3703
|
CollapsiblePanelComponent,
|
|
3703
3704
|
SidePaneComponent,
|
|
3704
3705
|
DatepickerComponent,
|
|
@@ -3752,7 +3753,8 @@
|
|
|
3752
3753
|
exports.ModelViewLayoutComponent = ModelViewLayoutComponent;
|
|
3753
3754
|
exports.NULL_TOAST = NULL_TOAST;
|
|
3754
3755
|
exports.NavLink = NavLink;
|
|
3755
|
-
exports.
|
|
3756
|
+
exports.NotificationNavLink = NotificationNavLink;
|
|
3757
|
+
exports.ObsWithStatusPipe = ObsWithStatusPipe;
|
|
3756
3758
|
exports.PageNotFoundComponent = PageNotFoundComponent;
|
|
3757
3759
|
exports.PagerComponent = PagerComponent;
|
|
3758
3760
|
exports.RouterViewAction = RouterViewAction;
|
|
@@ -3774,5 +3776,5 @@
|
|
|
3774
3776
|
|
|
3775
3777
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
3776
3778
|
|
|
3777
|
-
}));
|
|
3779
|
+
})));
|
|
3778
3780
|
//# sourceMappingURL=indice-ng-components.umd.js.map
|