@indice/ng-components 0.1.273 → 0.1.277

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.
@@ -92,7 +92,7 @@ export class PagerComponent {
92
92
  PagerComponent.decorators = [
93
93
  { type: Component, args: [{
94
94
  selector: 'lib-pager',
95
- template: "<div class=\"pager-container\">\r\n <div class=\"pager-container-inner\">\r\n <div class=\"inline-flex\" *ngIf=\"sortOptions && sortOptions.length > 0\">\r\n <lib-drop-down-menu [options]=\"sortOptions\" [selected]=\"sort\" (selectedChanged)=\"sortOptionChanged($event)\"></lib-drop-down-menu>\r\n <button (click)=\"toggleSortdir()\" class=\"pager-icon-button\">\r\n <span class=\"sr-only\">sort direction</span>\r\n <span class=\"inline-block relative\">\r\n <i [class]=\"sortdirIcon\"></i>\r\n </span>\r\n </button>\r\n </div>\r\n <div class=\"pager-pages-container\">\r\n <lib-drop-down-menu [options]=\"pageSizeOptions\" [selected]=\"pageSize\" (selectedChanged)=\"pageSizeOptionChanged($event)\"></lib-drop-down-menu>\r\n <div class=\"mx-2\">\r\n <button [disabled]=\"!canPreviousPage\" (click)=\"previousPage()\"\r\n class=\"pager-arrow-button-left\">\r\n <span class=\"sr-only\">Previous</span>\r\n <svg class=\"h-5 w-5\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 20 20\" fill=\"currentColor\" aria-hidden=\"true\">\r\n <path fill-rule=\"evenodd\" d=\"M12.707 5.293a1 1 0 010 1.414L9.414 10l3.293 3.293a1 1 0 01-1.414 1.414l-4-4a1 1 0 010-1.414l4-4a1 1 0 011.414 0z\" clip-rule=\"evenodd\" />\r\n </svg>\r\n </button>\r\n <button [disabled]=\"!canNextPage\" (click)=\"nextPage()\"\r\n class=\"pager-arrow-button-right\">\r\n <span class=\"sr-only\">Next</span>\r\n <svg class=\"h-5 w-5\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 20 20\" fill=\"currentColor\" aria-hidden=\"true\">\r\n <path fill-rule=\"evenodd\" d=\"M7.293 14.707a1 1 0 010-1.414L10.586 10 7.293 6.707a1 1 0 011.414-1.414l4 4a1 1 0 010 1.414l-4 4a1 1 0 01-1.414 0z\" clip-rule=\"evenodd\" />\r\n </svg>\r\n </button>\r\n </div>\r\n <lib-drop-down-menu *ngIf=\"pages && pages.length > 0\" [options]=\"pages\" [selected]=\"page\" (selectedChanged)=\"pageOptionChanged($event)\"></lib-drop-down-menu>\r\n </div>\r\n </div>\r\n</div>\r\n"
95
+ template: "<div class=\"pager-container\">\r\n <div class=\"pager-container-inner\">\r\n <div class=\"inline-flex\" *ngIf=\"sortOptions && sortOptions.length > 0\">\r\n <lib-drop-down-menu [options]=\"sortOptions\" [selected]=\"sort\" (selectedChanged)=\"sortOptionChanged($event)\"></lib-drop-down-menu>\r\n <button (click)=\"toggleSortdir()\" class=\"pager-icon-button\">\r\n <span class=\"sr-only\">sort direction</span>\r\n <span class=\"inline-block relative\">\r\n <i [class]=\"sortdirIcon\"></i>\r\n </span>\r\n </button>\r\n </div>\r\n <div class=\"pager-pages-container\">\r\n <lib-drop-down-menu [options]=\"pageSizeOptions\" [selected]=\"pageSize\" (selectedChanged)=\"pageSizeOptionChanged($event)\"></lib-drop-down-menu>\r\n <div class=\"mx-2\" *ngIf=\"count !== null && count > pageSize\">\r\n <button [disabled]=\"!canPreviousPage\" (click)=\"previousPage()\"\r\n class=\"pager-arrow-button-left\">\r\n <span class=\"sr-only\">Previous</span>\r\n <svg class=\"h-5 w-5\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 20 20\" fill=\"currentColor\" aria-hidden=\"true\">\r\n <path fill-rule=\"evenodd\" d=\"M12.707 5.293a1 1 0 010 1.414L9.414 10l3.293 3.293a1 1 0 01-1.414 1.414l-4-4a1 1 0 010-1.414l4-4a1 1 0 011.414 0z\" clip-rule=\"evenodd\" />\r\n </svg>\r\n </button>\r\n <button [disabled]=\"!canNextPage\" (click)=\"nextPage()\"\r\n class=\"pager-arrow-button-right\">\r\n <span class=\"sr-only\">Next</span>\r\n <svg class=\"h-5 w-5\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 20 20\" fill=\"currentColor\" aria-hidden=\"true\">\r\n <path fill-rule=\"evenodd\" d=\"M7.293 14.707a1 1 0 010-1.414L10.586 10 7.293 6.707a1 1 0 011.414-1.414l4 4a1 1 0 010 1.414l-4 4a1 1 0 01-1.414 0z\" clip-rule=\"evenodd\" />\r\n </svg>\r\n </button>\r\n </div>\r\n <lib-drop-down-menu *ngIf=\"(pages && pages.length > 0) && (count !== null && count > pageSize)\" [options]=\"pages\" [selected]=\"page\" (selectedChanged)=\"pageOptionChanged($event)\"></lib-drop-down-menu>\r\n </div>\r\n </div>\r\n</div>\r\n"
96
96
  },] }
97
97
  ];
98
98
  PagerComponent.ctorParameters = () => [
@@ -111,4 +111,4 @@ PagerComponent.propDecorators = {
111
111
  sortChanged: [{ type: Output }],
112
112
  sortdirChanged: [{ type: Output }]
113
113
  };
114
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFnZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmctY29tcG9uZW50cy9zcmMvbGliL2NvbnRyb2xzL3BhZ2VyL3BhZ2VyLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQXFCLE1BQU0sRUFBaUIsTUFBTSxlQUFlLENBQUM7QUFDekcsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3pDLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDcEMsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQU16QyxNQUFNLE9BQU8sY0FBYztJQStCekIsWUFBb0IsTUFBYztRQUFkLFdBQU0sR0FBTixNQUFNLENBQVE7UUE5QmxDLFNBQVM7UUFDQSxVQUFLLEdBQWtCLElBQUksQ0FBQztRQUM1QixTQUFJLEdBQUcsQ0FBQyxDQUFDO1FBQ2xCLDJDQUEyQztRQUN2QixhQUFRLEdBQUcsRUFBRSxDQUFDO1FBQ2xDLDJDQUEyQztRQUNmLG9CQUFlLEdBQWlCO1lBQzFELElBQUksVUFBVSxDQUFDLElBQUksRUFBRSxFQUFFLENBQUM7WUFDeEIsSUFBSSxVQUFVLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQztZQUN4QixJQUFJLFVBQVUsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDO1lBQ3hCLElBQUksVUFBVSxDQUFDLElBQUksRUFBRSxFQUFFLENBQUM7WUFDeEIsSUFBSSxVQUFVLENBQUMsS0FBSyxFQUFFLEdBQUcsQ0FBQztTQUMzQixDQUFDO1FBQ0ssVUFBSyxHQUFpQixFQUFFLENBQUM7UUFDdEIsZ0JBQVcsR0FBeUIsSUFBSSxZQUFZLEVBQVUsQ0FBQztRQUMvRCxvQkFBZSxHQUF5QixJQUFJLFlBQVksRUFBVSxDQUFDO1FBQ3RFLG9CQUFlLEdBQUcsS0FBSyxDQUFDO1FBQ3hCLGdCQUFXLEdBQUcsS0FBSyxDQUFDO1FBRTNCLFVBQVU7UUFDViwyQ0FBMkM7UUFDcEIsZ0JBQVcsR0FBaUIsRUFBRSxDQUFDO1FBQ3RELDJDQUEyQztRQUM1QixTQUFJLEdBQWtCLElBQUksQ0FBQztRQUMxQywyQ0FBMkM7UUFDeEIsWUFBTyxHQUFrQixNQUFNLENBQUM7UUFDekMsZ0JBQVcsR0FBeUIsSUFBSSxZQUFZLEVBQVUsQ0FBQztRQUMvRCxtQkFBYyxHQUF5QixJQUFJLFlBQVksRUFBVSxDQUFDO1FBQ3JFLGdCQUFXLEdBQUcsS0FBSyxDQUFDLFFBQVEsQ0FBQztJQUVFLENBQUM7SUFFdkMsV0FBVyxDQUFDLE9BQXNCO1FBQ2hDLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztJQUNuQixDQUFDO0lBRUQsUUFBUTtJQUNSLENBQUM7SUFFTyxTQUFTO1FBQ2YsSUFBSSxDQUFDLEtBQUssR0FBRyxFQUFFLENBQUM7UUFDaEIsSUFBSSxJQUFJLENBQUMsS0FBSyxJQUFJLElBQUksQ0FBQyxLQUFLLEdBQUcsQ0FBQyxFQUFFO1lBQ2hDLE1BQU0sU0FBUyxHQUFHLElBQUksQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQztZQUM3QyxLQUFLLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsU0FBUyxFQUFFLENBQUMsRUFBRSxFQUFFO2dCQUNsQyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFJLFVBQVUsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUUsRUFBRSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQzthQUNwRDtTQUNGO1FBQ0QsSUFBSSxDQUFDLGVBQWUsR0FBRyxJQUFJLENBQUMsSUFBSSxHQUFHLENBQUMsQ0FBQztRQUNyQyxJQUFJLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUM7UUFDakQsOEVBQThFO0lBQ2hGLENBQUM7SUFFTSxRQUFRO1FBQ2IsTUFBTSxJQUFJLEdBQUcsSUFBSSxDQUFDLElBQUksR0FBRyxDQUFDLENBQUM7UUFDM0IsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUN0QixDQUFDO0lBRU0sWUFBWTtRQUNqQixNQUFNLFFBQVEsR0FBRyxJQUFJLENBQUMsSUFBSSxHQUFHLENBQUMsQ0FBQztRQUMvQixJQUFJLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQzFCLENBQUM7SUFFTSxRQUFRLENBQUMsSUFBWTtRQUMxQixJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQztRQUNqQixJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUM1QixJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7SUFDbkIsQ0FBQztJQUVNLHFCQUFxQixDQUFDLFFBQWdCO1FBQzNDLElBQUksQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQ3BDLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztJQUNuQixDQUFDO0lBRU0saUJBQWlCLENBQUMsSUFBWTtRQUNuQyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUM1QixJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7SUFDbkIsQ0FBQztJQUVNLGlCQUFpQixDQUFDLElBQVk7UUFDbkMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDOUIsQ0FBQztJQUVNLGFBQWE7UUFDbEIsK0JBQStCO1FBQy9CLElBQUksT0FBTyxHQUFHLE1BQU0sQ0FBQztRQUNyQixJQUFJLElBQUksQ0FBQyxPQUFPLEtBQUssTUFBTSxFQUFFO1lBQzNCLE9BQU8sR0FBRyxLQUFLLENBQUM7WUFDaEIsSUFBSSxDQUFDLFdBQVcsR0FBRyxLQUFLLENBQUMsT0FBTyxDQUFDO1NBQ2xDO2FBQU07WUFDTCxPQUFPLEdBQUcsTUFBTSxDQUFDO1lBQ2pCLElBQUksQ0FBQyxXQUFXLEdBQUcsS0FBSyxDQUFDLFFBQVEsQ0FBQztTQUNuQztRQUNELElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQ3BDLENBQUM7OztZQWxHRixTQUFTLFNBQUM7Z0JBQ1QsUUFBUSxFQUFFLFdBQVc7Z0JBQ3JCLHltRUFBcUM7YUFDdEM7OztZQVBRLE1BQU07OztvQkFVWixLQUFLO21CQUNMLEtBQUs7dUJBRUwsS0FBSyxTQUFDLFdBQVc7OEJBRWpCLEtBQUssU0FBQyxtQkFBbUI7MEJBUXpCLE1BQU07OEJBQ04sTUFBTTswQkFNTixLQUFLLFNBQUMsY0FBYzttQkFFcEIsS0FBSyxTQUFDLE1BQU07c0JBRVosS0FBSyxTQUFDLFVBQVU7MEJBQ2hCLE1BQU07NkJBQ04sTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25DaGFuZ2VzLCBPbkluaXQsIE91dHB1dCwgU2ltcGxlQ2hhbmdlcyB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBSb3V0ZXIgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xyXG5pbXBvcnQgeyBJY29ucyB9IGZyb20gJy4uLy4uL2ljb25zJztcclxuaW1wb3J0IHsgTWVudU9wdGlvbiB9IGZyb20gJy4uLy4uL3R5cGVzJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnbGliLXBhZ2VyJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vcGFnZXIuY29tcG9uZW50Lmh0bWwnXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBQYWdlckNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25DaGFuZ2VzIHtcclxuICAvLyBQQUdJTkdcclxuICBASW5wdXQoKSBjb3VudDogbnVtYmVyIHwgbnVsbCA9IG51bGw7XHJcbiAgQElucHV0KCkgcGFnZSA9IDE7XHJcbiAgLy8gdHNsaW50OmRpc2FibGUtbmV4dC1saW5lOm5vLWlucHV0LXJlbmFtZVxyXG4gIEBJbnB1dCgncGFnZS1zaXplJykgcGFnZVNpemUgPSAyMDtcclxuICAvLyB0c2xpbnQ6ZGlzYWJsZS1uZXh0LWxpbmU6bm8taW5wdXQtcmVuYW1lXHJcbiAgQElucHV0KCdwYWdlLXNpemUtb3B0aW9ucycpIHBhZ2VTaXplT3B0aW9uczogTWVudU9wdGlvbltdID0gW1xyXG4gICAgbmV3IE1lbnVPcHRpb24oJzEwJywgMTApLFxyXG4gICAgbmV3IE1lbnVPcHRpb24oJzIwJywgMjApLFxyXG4gICAgbmV3IE1lbnVPcHRpb24oJzMwJywgMzApLFxyXG4gICAgbmV3IE1lbnVPcHRpb24oJzUwJywgNTApLFxyXG4gICAgbmV3IE1lbnVPcHRpb24oJzEwMCcsIDEwMClcclxuICBdO1xyXG4gIHB1YmxpYyBwYWdlczogTWVudU9wdGlvbltdID0gW107XHJcbiAgQE91dHB1dCgpIHBhZ2VDaGFuZ2VkOiBFdmVudEVtaXR0ZXI8bnVtYmVyPiA9IG5ldyBFdmVudEVtaXR0ZXI8bnVtYmVyPigpO1xyXG4gIEBPdXRwdXQoKSBwYWdlU2l6ZUNoYW5nZWQ6IEV2ZW50RW1pdHRlcjxudW1iZXI+ID0gbmV3IEV2ZW50RW1pdHRlcjxudW1iZXI+KCk7XHJcbiAgcHVibGljIGNhblByZXZpb3VzUGFnZSA9IGZhbHNlO1xyXG4gIHB1YmxpYyBjYW5OZXh0UGFnZSA9IGZhbHNlO1xyXG5cclxuICAvLyBTT1JUSU5HXHJcbiAgLy8gdHNsaW50OmRpc2FibGUtbmV4dC1saW5lOm5vLWlucHV0LXJlbmFtZVxyXG4gIEBJbnB1dCgnc29ydC1vcHRpb25zJykgc29ydE9wdGlvbnM6IE1lbnVPcHRpb25bXSA9IFtdO1xyXG4gIC8vIHRzbGludDpkaXNhYmxlLW5leHQtbGluZTpuby1pbnB1dC1yZW5hbWVcclxuICBASW5wdXQoJ3NvcnQnKSBzb3J0OiBzdHJpbmcgfCBudWxsID0gbnVsbDtcclxuICAvLyB0c2xpbnQ6ZGlzYWJsZS1uZXh0LWxpbmU6bm8taW5wdXQtcmVuYW1lXHJcbiAgQElucHV0KCdzb3J0LWRpcicpIHNvcnRkaXI6IHN0cmluZyB8IG51bGwgPSAnZGVzYyc7XHJcbiAgQE91dHB1dCgpIHNvcnRDaGFuZ2VkOiBFdmVudEVtaXR0ZXI8c3RyaW5nPiA9IG5ldyBFdmVudEVtaXR0ZXI8c3RyaW5nPigpO1xyXG4gIEBPdXRwdXQoKSBzb3J0ZGlyQ2hhbmdlZDogRXZlbnRFbWl0dGVyPHN0cmluZz4gPSBuZXcgRXZlbnRFbWl0dGVyPHN0cmluZz4oKTtcclxuICBwdWJsaWMgc29ydGRpckljb24gPSBJY29ucy5Tb3J0RGVzYztcclxuXHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSByb3V0ZXI6IFJvdXRlcikgeyB9XHJcblxyXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcclxuICAgIHRoaXMuY2FsY1BhZ2VzKCk7XHJcbiAgfVxyXG5cclxuICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgY2FsY1BhZ2VzKCk6IHZvaWQge1xyXG4gICAgdGhpcy5wYWdlcyA9IFtdO1xyXG4gICAgaWYgKHRoaXMuY291bnQgJiYgdGhpcy5jb3VudCA+IDApIHtcclxuICAgICAgY29uc3QgcGFnZUNvdW50ID0gdGhpcy5jb3VudCAvIHRoaXMucGFnZVNpemU7XHJcbiAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgcGFnZUNvdW50OyBpKyspIHtcclxuICAgICAgICB0aGlzLnBhZ2VzLnB1c2gobmV3IE1lbnVPcHRpb24oaSArIDEgKyAnJywgaSArIDEpKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgdGhpcy5jYW5QcmV2aW91c1BhZ2UgPSB0aGlzLnBhZ2UgPiAxO1xyXG4gICAgdGhpcy5jYW5OZXh0UGFnZSA9IHRoaXMucGFnZSA8IHRoaXMucGFnZXMubGVuZ3RoO1xyXG4gICAgLy9jb25zb2xlLmxvZygnY2FsY1BhZ2VzJywgdGhpcy5wYWdlLCB0aGlzLmNhblByZXZpb3VzUGFnZSwgdGhpcy5jYW5OZXh0UGFnZSk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgbmV4dFBhZ2UoKTogdm9pZCB7XHJcbiAgICBjb25zdCBuZXh0ID0gdGhpcy5wYWdlICsgMTtcclxuICAgIHRoaXMuZ290b1BhZ2UobmV4dCk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgcHJldmlvdXNQYWdlKCk6IHZvaWQge1xyXG4gICAgY29uc3QgcHJldmlvdXMgPSB0aGlzLnBhZ2UgLSAxO1xyXG4gICAgdGhpcy5nb3RvUGFnZShwcmV2aW91cyk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ290b1BhZ2UocGFnZTogbnVtYmVyKTogdm9pZCB7XHJcbiAgICB0aGlzLnBhZ2UgPSBwYWdlO1xyXG4gICAgdGhpcy5wYWdlQ2hhbmdlZC5lbWl0KHBhZ2UpO1xyXG4gICAgdGhpcy5jYWxjUGFnZXMoKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBwYWdlU2l6ZU9wdGlvbkNoYW5nZWQocGFnZVNpemU6IG51bWJlcik6IHZvaWQge1xyXG4gICAgdGhpcy5wYWdlU2l6ZUNoYW5nZWQuZW1pdChwYWdlU2l6ZSk7XHJcbiAgICB0aGlzLmNhbGNQYWdlcygpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIHBhZ2VPcHRpb25DaGFuZ2VkKHBhZ2U6IG51bWJlcik6IHZvaWQge1xyXG4gICAgdGhpcy5wYWdlQ2hhbmdlZC5lbWl0KHBhZ2UpO1xyXG4gICAgdGhpcy5jYWxjUGFnZXMoKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBzb3J0T3B0aW9uQ2hhbmdlZChzb3J0OiBzdHJpbmcpOiB2b2lkIHtcclxuICAgIHRoaXMuc29ydENoYW5nZWQuZW1pdChzb3J0KTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyB0b2dnbGVTb3J0ZGlyKCk6IHZvaWQge1xyXG4gICAgLy9jb25zb2xlLmxvZygndG9nZ2xlU29ydGRpcicpO1xyXG4gICAgbGV0IHNvcnRkaXIgPSAnZGVzYyc7XHJcbiAgICBpZiAodGhpcy5zb3J0ZGlyID09PSAnZGVzYycpIHtcclxuICAgICAgc29ydGRpciA9ICdhc2MnO1xyXG4gICAgICB0aGlzLnNvcnRkaXJJY29uID0gSWNvbnMuU29ydEFzYztcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHNvcnRkaXIgPSAnZGVzYyc7XHJcbiAgICAgIHRoaXMuc29ydGRpckljb24gPSBJY29ucy5Tb3J0RGVzYztcclxuICAgIH1cclxuICAgIHRoaXMuc29ydGRpckNoYW5nZWQuZW1pdChzb3J0ZGlyKTtcclxuICB9XHJcblxyXG59XHJcbiJdfQ==
114
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFnZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmctY29tcG9uZW50cy9zcmMvbGliL2NvbnRyb2xzL3BhZ2VyL3BhZ2VyLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQXFCLE1BQU0sRUFBaUIsTUFBTSxlQUFlLENBQUM7QUFDekcsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3pDLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDcEMsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQU16QyxNQUFNLE9BQU8sY0FBYztJQStCekIsWUFBb0IsTUFBYztRQUFkLFdBQU0sR0FBTixNQUFNLENBQVE7UUE5QmxDLFNBQVM7UUFDQSxVQUFLLEdBQWtCLElBQUksQ0FBQztRQUM1QixTQUFJLEdBQUcsQ0FBQyxDQUFDO1FBQ2xCLDJDQUEyQztRQUN2QixhQUFRLEdBQUcsRUFBRSxDQUFDO1FBQ2xDLDJDQUEyQztRQUNmLG9CQUFlLEdBQWlCO1lBQzFELElBQUksVUFBVSxDQUFDLElBQUksRUFBRSxFQUFFLENBQUM7WUFDeEIsSUFBSSxVQUFVLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQztZQUN4QixJQUFJLFVBQVUsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDO1lBQ3hCLElBQUksVUFBVSxDQUFDLElBQUksRUFBRSxFQUFFLENBQUM7WUFDeEIsSUFBSSxVQUFVLENBQUMsS0FBSyxFQUFFLEdBQUcsQ0FBQztTQUMzQixDQUFDO1FBQ0ssVUFBSyxHQUFpQixFQUFFLENBQUM7UUFDdEIsZ0JBQVcsR0FBeUIsSUFBSSxZQUFZLEVBQVUsQ0FBQztRQUMvRCxvQkFBZSxHQUF5QixJQUFJLFlBQVksRUFBVSxDQUFDO1FBQ3RFLG9CQUFl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Q0FBQyxXQUFXLEdBQUcsS0FBSyxDQUFDLFFBQVEsQ0FBQztTQUNuQztRQUNELElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQ3BDLENBQUM7OztZQWxHRixTQUFTLFNBQUM7Z0JBQ1QsUUFBUSxFQUFFLFdBQVc7Z0JBQ3JCLGlzRUFBcUM7YUFDdEM7OztZQVBRLE1BQU07OztvQkFVWixLQUFLO21CQUNMLEtBQUs7dUJBRUwsS0FBSyxTQUFDLFdBQVc7OEJBRWpCLEtBQUssU0FBQyxtQkFBbUI7MEJBUXpCLE1BQU07OEJBQ04sTUFBTTswQkFNTixLQUFLLFNBQUMsY0FBYzttQkFFcEIsS0FBSyxTQUFDLE1BQU07c0JBRVosS0FBSyxTQUFDLFVBQVU7MEJBQ2hCLE1BQU07NkJBQ04sTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25DaGFuZ2VzLCBPbkluaXQsIE91dHB1dCwgU2ltcGxlQ2hhbmdlcyB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBSb3V0ZXIgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xyXG5pbXBvcnQgeyBJY29ucyB9IGZyb20gJy4uLy4uL2ljb25zJztcclxuaW1wb3J0IHsgTWVudU9wdGlvbiB9IGZyb20gJy4uLy4uL3R5cGVzJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnbGliLXBhZ2VyJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vcGFnZXIuY29tcG9uZW50Lmh0bWwnXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBQYWdlckNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25DaGFuZ2VzIHtcclxuICAvLyBQQUdJTkdcclxuICBASW5wdXQoKSBjb3VudDogbnVtYmVyIHwgbnVsbCA9IG51bGw7XHJcbiAgQElucHV0KCkgcGFnZSA9IDE7XHJcbiAgLy8gdHNsaW50OmRpc2FibGUtbmV4dC1saW5lOm5vLWlucHV0LXJlbmFtZVxyXG4gIEBJbnB1dCgncGFnZS1zaXplJykgcGFnZVNpemUgPSAyMDtcclxuICAvLyB0c2xpbnQ6ZGlzYWJsZS1uZXh0LWxpbmU6bm8taW5wdXQtcmVuYW1lXHJcbiAgQElucHV0KCdwYWdlLXNpemUtb3B0aW9ucycpIHBhZ2VTaXplT3B0aW9uczogTWVudU9wdGlvbltdID0gW1xyXG4gICAgbmV3IE1lbnVPcHRpb24oJzEwJywgMTApLFxyXG4gICAgbmV3IE1lbnVPcHRpb24oJzIwJywgMjApLFxyXG4gICAgbmV3IE1lbnVPcHRpb24oJzMwJywgMzApLFxyXG4gICAgbmV3IE1lbnVPcHRpb24oJzUwJywgNTApLFxyXG4gICAgbmV3IE1lbnVPcHRpb24oJzEwMCcsIDEwMClcclxuICBdO1xyXG4gIHB1YmxpYyBwYWdlczogTWVudU9wdGlvbltdID0gW107XHJcbiAgQE91dHB1dCgpIHBhZ2VDaGFuZ2VkOiBFdmVudEVtaXR0ZXI8bnVtYmVyPiA9IG5ldyBFdmVudEVtaXR0ZXI8bnVtYmVyPigpO1xyXG4gIEBPdXRwdXQoKSBwYWdlU2l6ZUNoYW5nZWQ6IEV2ZW50RW1pdHRlcjxudW1iZXI+ID0gbmV3IEV2ZW50RW1pdHRlcjxudW1iZXI+KCk7XHJcbiAgcHVibGljIGNhblByZXZpb3VzUGFnZSA9IGZhbHNlO1xyXG4gIHB1YmxpYyBjYW5OZXh0UGFnZSA9IGZhbHNlO1xyXG5cclxuICAvLyBTT1JUSU5HXHJcbiAgLy8gdHNsaW50OmRpc2FibGUtbmV4dC1saW5lOm5vLWlucHV0LXJlbmFtZVxyXG4gIEBJbnB1dCgnc29ydC1vcHRpb25zJykgc29ydE9wdGlvbnM6IE1lbnVPcHRpb25bXSA9IFtdO1xyXG4gIC8vIHRzbGludDpkaXNhYmxlLW5leHQtbGluZTpuby1pbnB1dC1yZW5hbWVcclxuICBASW5wdXQoJ3NvcnQnKSBzb3J0OiBzdHJpbmcgfCBudWxsID0gbnVsbDtcclxuICAvLyB0c2xpbnQ6ZGlzYWJsZS1uZXh0LWxpbmU6bm8taW5wdXQtcmVuYW1lXHJcbiAgQElucHV0KCdzb3J0LWRpcicpIHNvcnRkaXI6IHN0cmluZyB8IG51bGwgPSAnZGVzYyc7XHJcbiAgQE91dHB1dCgpIHNvcnRDaGFuZ2VkOiBFdmVudEVtaXR0ZXI8c3RyaW5nPiA9IG5ldyBFdmVudEVtaXR0ZXI8c3RyaW5nPigpO1xyXG4gIEBPdXRwdXQoKSBzb3J0ZGlyQ2hhbmdlZDogRXZlbnRFbWl0dGVyPHN0cmluZz4gPSBuZXcgRXZlbnRFbWl0dGVyPHN0cmluZz4oKTtcclxuICBwdWJsaWMgc29ydGRpckljb24gPSBJY29ucy5Tb3J0RGVzYztcclxuXHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSByb3V0ZXI6IFJvdXRlcikgeyB9XHJcblxyXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcclxuICAgIHRoaXMuY2FsY1BhZ2VzKCk7XHJcbiAgfVxyXG5cclxuICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgY2FsY1BhZ2VzKCk6IHZvaWQge1xyXG4gICAgdGhpcy5wYWdlcyA9IFtdO1xyXG4gICAgaWYgKHRoaXMuY291bnQgJiYgdGhpcy5jb3VudCA+IDApIHtcclxuICAgICAgY29uc3QgcGFnZUNvdW50ID0gdGhpcy5jb3VudCAvIHRoaXMucGFnZVNpemU7XHJcbiAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgcGFnZUNvdW50OyBpKyspIHtcclxuICAgICAgICB0aGlzLnBhZ2VzLnB1c2gobmV3IE1lbnVPcHRpb24oaSArIDEgKyAnJywgaSArIDEpKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgdGhpcy5jYW5QcmV2aW91c1BhZ2UgPSB0aGlzLnBhZ2UgPiAxO1xyXG4gICAgdGhpcy5jYW5OZXh0UGFnZSA9IHRoaXMucGFnZSA8IHRoaXMucGFnZXMubGVuZ3RoO1xyXG4gICAgLy9jb25zb2xlLmxvZygnY2FsY1BhZ2VzJywgdGhpcy5wYWdlLCB0aGlzLmNhblByZXZpb3VzUGFnZSwgdGhpcy5jYW5OZXh0UGFnZSk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgbmV4dFBhZ2UoKTogdm9pZCB7XHJcbiAgICBjb25zdCBuZXh0ID0gdGhpcy5wYWdlICsgMTtcclxuICAgIHRoaXMuZ290b1BhZ2UobmV4dCk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgcHJldmlvdXNQYWdlKCk6IHZvaWQge1xyXG4gICAgY29uc3QgcHJldmlvdXMgPSB0aGlzLnBhZ2UgLSAxO1xyXG4gICAgdGhpcy5nb3RvUGFnZShwcmV2aW91cyk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ290b1BhZ2UocGFnZTogbnVtYmVyKTogdm9pZCB7XHJcbiAgICB0aGlzLnBhZ2UgPSBwYWdlO1xyXG4gICAgdGhpcy5wYWdlQ2hhbmdlZC5lbWl0KHBhZ2UpO1xyXG4gICAgdGhpcy5jYWxjUGFnZXMoKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBwYWdlU2l6ZU9wdGlvbkNoYW5nZWQocGFnZVNpemU6IG51bWJlcik6IHZvaWQge1xyXG4gICAgdGhpcy5wYWdlU2l6ZUNoYW5nZWQuZW1pdChwYWdlU2l6ZSk7XHJcbiAgICB0aGlzLmNhbGNQYWdlcygpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIHBhZ2VPcHRpb25DaGFuZ2VkKHBhZ2U6IG51bWJlcik6IHZvaWQge1xyXG4gICAgdGhpcy5wYWdlQ2hhbmdlZC5lbWl0KHBhZ2UpO1xyXG4gICAgdGhpcy5jYWxjUGFnZXMoKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBzb3J0T3B0aW9uQ2hhbmdlZChzb3J0OiBzdHJpbmcpOiB2b2lkIHtcclxuICAgIHRoaXMuc29ydENoYW5nZWQuZW1pdChzb3J0KTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyB0b2dnbGVTb3J0ZGlyKCk6IHZvaWQge1xyXG4gICAgLy9jb25zb2xlLmxvZygndG9nZ2xlU29ydGRpcicpO1xyXG4gICAgbGV0IHNvcnRkaXIgPSAnZGVzYyc7XHJcbiAgICBpZiAodGhpcy5zb3J0ZGlyID09PSAnZGVzYycpIHtcclxuICAgICAgc29ydGRpciA9ICdhc2MnO1xyXG4gICAgICB0aGlzLnNvcnRkaXJJY29uID0gSWNvbnMuU29ydEFzYztcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHNvcnRkaXIgPSAnZGVzYyc7XHJcbiAgICAgIHRoaXMuc29ydGRpckljb24gPSBJY29ucy5Tb3J0RGVzYztcclxuICAgIH1cclxuICAgIHRoaXMuc29ydGRpckNoYW5nZWQuZW1pdChzb3J0ZGlyKTtcclxuICB9XHJcblxyXG59XHJcbiJdfQ==
@@ -11,8 +11,10 @@ export class SidePaneComponent {
11
11
  this.sizeContainerStyle = 'side-pane-box-size';
12
12
  this.overlayStyle = 'side-pane-overlay';
13
13
  }
14
- ngOnDestroy() { }
15
- ngOnInit() { }
14
+ ngOnDestroy() {
15
+ }
16
+ ngOnInit() {
17
+ }
16
18
  onSidePaneActivated(component) {
17
19
  var _a;
18
20
  this.document.body.classList.add('modal-active');
@@ -43,7 +45,6 @@ export class SidePaneComponent {
43
45
  }
44
46
  }
45
47
  this.sizeContainerStyle = `side-pane-box-size${sizeStyleSuffix}`;
46
- console.log('SidePaneComponent:activateRoute.data', 'calculated container style: ', this.sizeContainerStyle, 'overlay type: ', this.overlayStyle);
47
48
  this.showPane = true;
48
49
  }
49
50
  onSidePaneDeactivated($event) {
@@ -64,4 +65,4 @@ SidePaneComponent.ctorParameters = () => [
64
65
  SidePaneComponent.propDecorators = {
65
66
  showPane: [{ type: Input, args: ['visible',] }]
66
67
  };
67
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2lkZS1wYW5lLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25nLWNvbXBvbmVudHMvc3JjL2xpYi9jb250cm9scy9zaWRlLXBhbmUvc2lkZS1wYW5lLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsWUFBWSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRWxFLE9BQU8sRUFBa0IsTUFBTSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDekQsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQXFCLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM1RSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFNM0MsTUFBTSxPQUFPLGlCQUFpQjtJQUs1QixZQUNVLE1BQWMsRUFDSSxRQUFhO1FBRC9CLFdBQU0sR0FBTixNQUFNLENBQVE7UUFDSSxhQUFRLEdBQVIsUUFBUSxDQUFLO1FBTnpDLDJDQUEyQztRQUN6QixhQUFRLEdBQUcsS0FBSyxDQUFDO1FBQzVCLHVCQUFrQixHQUFHLG9CQUFvQixDQUFDO1FBQzFDLGlCQUFZLEdBQUcsbUJBQW1CLENBQUM7SUFJdkMsQ0FBQztJQUVKLFdBQVcsS0FBVSxDQUFDO0lBRXRCLFFBQVEsS0FBVSxDQUFDO0lBRVosbUJBQW1CLENBQUMsU0FBYzs7UUFDdkMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxjQUFjLENBQUMsQ0FBQztRQUNqRCxJQUFJLGVBQWUsR0FBRyxFQUFFLENBQUM7UUFDekIsTUFBTSxLQUFLLEdBQUcsTUFBQSxJQUFJLENBQUMsTUFBTSxDQUFDLG9CQUFvQixFQUFFLDBDQUFFLE1BQU0sQ0FBQyxLQUFLLENBQUM7UUFDL0QsSUFBSSxLQUFLLEVBQUU7WUFDVCxJQUFJLEtBQUssQ0FBQyxRQUFRLEVBQUU7Z0JBQ2xCLElBQUksS0FBSyxDQUFDLFFBQVEsS0FBSyxZQUFZLENBQUMsT0FBTyxFQUFFO29CQUMzQyxlQUFlLEdBQUcsS0FBSyxDQUFDO2lCQUN6QjtxQkFBTSxJQUFJLEtBQUssQ0FBQyxRQUFRLEtBQUssWUFBWSxDQUFDLFFBQVEsRUFBRTtvQkFDbkQsZUFBZSxHQUFHLEtBQUssQ0FBQztpQkFDekI7cUJBQU0sSUFBSSxLQUFLLENBQUMsUUFBUSxLQUFLLFlBQVksQ0FBQyxPQUFPLEVBQUU7b0JBQ2xELGVBQWUsR0FBRyxLQUFLLENBQUM7aUJBQ3pCO2FBQ0Y7WUFDRCxJQUFJLEtBQUssQ0FBQyxXQUFXLEVBQUU7Z0JBQ3JCLElBQUksS0FBSyxDQUFDLFdBQVcsS0FBSyxtQkFBbUIsQ0FBQyxJQUFJLEVBQUU7b0JBQ2xELElBQUksQ0FBQyxZQUFZLEdBQUcsNkJBQTZCLENBQUM7aUJBQ25EO3FCQUFNLElBQUksS0FBSyxDQUFDLFdBQVcsS0FBSyxtQkFBbUIsQ0FBQyxJQUFJLEVBQUU7b0JBQ3pELElBQUksQ0FBQyxZQUFZLEdBQUcsOEJBQThCLENBQUM7aUJBQ3BEO3FCQUFNO29CQUNMLElBQUksQ0FBQyxZQUFZLEdBQUcsbUJBQW1CLENBQUM7aUJBQ3pDO2FBQ0Y7U0FDRjtRQUNELElBQUksQ0FBQyxrQkFBa0IsR0FBRyxxQkFBcUIsZUFBZSxFQUFFLENBQUM7UUFDakUsT0FBTyxDQUFDLEdBQUcsQ0FDVCxzQ0FBc0MsRUFDdEMsOEJBQThCLEVBQzlCLElBQUksQ0FBQyxrQkFBa0IsRUFDdkIsZ0JBQWdCLEVBQ2hCLElBQUksQ0FBQyxZQUFZLENBQ2xCLENBQUM7UUFDRixJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQztJQUN2QixDQUFDO0lBRU0scUJBQXFCLENBQUMsTUFBVztRQUN0QyxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLGNBQWMsQ0FBQyxDQUFDO1FBQ3BELElBQUksQ0FBQyxRQUFRLEdBQUcsS0FBSyxDQUFDO0lBQ3hCLENBQUM7OztZQXhERixTQUFTLFNBQUM7Z0JBQ1QsUUFBUSxFQUFFLGVBQWU7Z0JBQ3pCLCtjQUF5QzthQUMxQzs7O1lBUHdCLE1BQU07NENBZTFCLE1BQU0sU0FBQyxRQUFROzs7dUJBTGpCLEtBQUssU0FBQyxTQUFTIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgU2lkZVBhbmVPdmVybGF5VHlwZSwgU2lkZVBhbmVTaXplIH0gZnJvbSAnLi8uLi8uLi90eXBlcyc7XHJcbmltcG9ydCB7IFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBBY3RpdmF0ZWRSb3V0ZSwgUm91dGVyIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcclxuaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCwgT25Jbml0LCBPbkRlc3Ryb3ksIEluamVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBET0NVTUVOVCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2xpYi1zaWRlLXBhbmUnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9zaWRlLXBhbmUuY29tcG9uZW50Lmh0bWwnLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgU2lkZVBhbmVDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XHJcbiAgLy8gdHNsaW50OmRpc2FibGUtbmV4dC1saW5lOm5vLWlucHV0LXJlbmFtZVxyXG4gIEBJbnB1dCgndmlzaWJsZScpIHNob3dQYW5lID0gZmFsc2U7XHJcbiAgcHVibGljIHNpemVDb250YWluZXJTdHlsZSA9ICdzaWRlLXBhbmUtYm94LXNpemUnO1xyXG4gIHB1YmxpYyBvdmVybGF5U3R5bGUgPSAnc2lkZS1wYW5lLW92ZXJsYXknO1xyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSByb3V0ZXI6IFJvdXRlcixcclxuICAgIEBJbmplY3QoRE9DVU1FTlQpIHByaXZhdGUgZG9jdW1lbnQ6IGFueVxyXG4gICkge31cclxuXHJcbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7fVxyXG5cclxuICBuZ09uSW5pdCgpOiB2b2lkIHt9XHJcblxyXG4gIHB1YmxpYyBvblNpZGVQYW5lQWN0aXZhdGVkKGNvbXBvbmVudDogYW55KTogdm9pZCB7XHJcbiAgICB0aGlzLmRvY3VtZW50LmJvZHkuY2xhc3NMaXN0LmFkZCgnbW9kYWwtYWN0aXZlJyk7XHJcbiAgICBsZXQgc2l6ZVN0eWxlU3VmZml4ID0gJyc7XHJcbiAgICBjb25zdCBzdGF0ZSA9IHRoaXMucm91dGVyLmdldEN1cnJlbnROYXZpZ2F0aW9uKCk/LmV4dHJhcy5zdGF0ZTtcclxuICAgIGlmIChzdGF0ZSkge1xyXG4gICAgICBpZiAoc3RhdGUucGFuZVNpemUpIHtcclxuICAgICAgICBpZiAoc3RhdGUucGFuZVNpemUgPT09IFNpZGVQYW5lU2l6ZS5TbWFsbDI1KSB7XHJcbiAgICAgICAgICBzaXplU3R5bGVTdWZmaXggPSAnLTI1JztcclxuICAgICAgICB9IGVsc2UgaWYgKHN0YXRlLnBhbmVTaXplID09PSBTaWRlUGFuZVNpemUuTWVkaXVtNTApIHtcclxuICAgICAgICAgIHNpemVTdHlsZVN1ZmZpeCA9ICctNTAnO1xyXG4gICAgICAgIH0gZWxzZSBpZiAoc3RhdGUucGFuZVNpemUgPT09IFNpZGVQYW5lU2l6ZS5MYXJnZTc1KSB7XHJcbiAgICAgICAgICBzaXplU3R5bGVTdWZmaXggPSAnLTc1JztcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgaWYgKHN0YXRlLnBhbmVPdmVybGF5KSB7XHJcbiAgICAgICAgaWYgKHN0YXRlLnBhbmVPdmVybGF5ID09PSBTaWRlUGFuZU92ZXJsYXlUeXBlLk5vbmUpIHtcclxuICAgICAgICAgIHRoaXMub3ZlcmxheVN0eWxlID0gJ3NpZGUtcGFuZS1vdmVybGF5LW9wYWNpdHktMCc7XHJcbiAgICAgICAgfSBlbHNlIGlmIChzdGF0ZS5wYW5lT3ZlcmxheSA9PT0gU2lkZVBhbmVPdmVybGF5VHlwZS5EYXJrKSB7XHJcbiAgICAgICAgICB0aGlzLm92ZXJsYXlTdHlsZSA9ICdzaWRlLXBhbmUtb3ZlcmxheS1vcGFjaXR5LTUwJztcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgdGhpcy5vdmVybGF5U3R5bGUgPSAnc2lkZS1wYW5lLW92ZXJsYXknO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgdGhpcy5zaXplQ29udGFpbmVyU3R5bGUgPSBgc2lkZS1wYW5lLWJveC1zaXplJHtzaXplU3R5bGVTdWZmaXh9YDtcclxuICAgIGNvbnNvbGUubG9nKFxyXG4gICAgICAnU2lkZVBhbmVDb21wb25lbnQ6YWN0aXZhdGVSb3V0ZS5kYXRhJyxcclxuICAgICAgJ2NhbGN1bGF0ZWQgY29udGFpbmVyIHN0eWxlOiAnLFxyXG4gICAgICB0aGlzLnNpemVDb250YWluZXJTdHlsZSxcclxuICAgICAgJ292ZXJsYXkgdHlwZTogJyxcclxuICAgICAgdGhpcy5vdmVybGF5U3R5bGVcclxuICAgICk7XHJcbiAgICB0aGlzLnNob3dQYW5lID0gdHJ1ZTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBvblNpZGVQYW5lRGVhY3RpdmF0ZWQoJGV2ZW50OiBhbnkpOiB2b2lkIHtcclxuICAgIHRoaXMuZG9jdW1lbnQuYm9keS5jbGFzc0xpc3QucmVtb3ZlKCdtb2RhbC1hY3RpdmUnKTtcclxuICAgIHRoaXMuc2hvd1BhbmUgPSBmYWxzZTtcclxuICB9XHJcbn1cclxuIl19
68
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2lkZS1wYW5lLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25nLWNvbXBvbmVudHMvc3JjL2xpYi9jb250cm9scy9zaWRlLXBhbmUvc2lkZS1wYW5lLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsWUFBWSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRWxFLE9BQU8sRUFBa0IsTUFBTSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDekQsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQXFCLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM1RSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFNM0MsTUFBTSxPQUFPLGlCQUFpQjtJQUs1QixZQUFvQixNQUFjLEVBQTRCLFFBQWE7UUFBdkQsV0FBTSxHQUFOLE1BQU0sQ0FBUTtRQUE0QixhQUFRLEdBQVIsUUFBUSxDQUFLO1FBSjNFLDJDQUEyQztRQUN6QixhQUFRLEdBQUcsS0FBSyxDQUFDO1FBQzVCLHVCQUFrQixHQUFHLG9CQUFvQixDQUFDO1FBQzFDLGlCQUFZLEdBQUcsbUJBQW1CLENBQUM7SUFDc0MsQ0FBQztJQUVqRixXQUFXO0lBQ1gsQ0FBQztJQUVELFFBQVE7SUFDUixDQUFDO0lBRU0sbUJBQW1CLENBQUMsU0FBYzs7UUFDdkMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxjQUFjLENBQUMsQ0FBQztRQUNqRCxJQUFJLGVBQWUsR0FBRyxFQUFFLENBQUM7UUFDekIsTUFBTSxLQUFLLEdBQUcsTUFBQSxJQUFJLENBQUMsTUFBTSxDQUFDLG9CQUFvQixFQUFFLDBDQUFFLE1BQU0sQ0FBQyxLQUFLLENBQUM7UUFDL0QsSUFBSSxLQUFLLEVBQUU7WUFDVCxJQUFJLEtBQUssQ0FBQyxRQUFRLEVBQUU7Z0JBQ2xCLElBQUksS0FBSyxDQUFDLFFBQVEsS0FBSyxZQUFZLENBQUMsT0FBTyxFQUFFO29CQUMzQyxlQUFlLEdBQUcsS0FBSyxDQUFDO2lCQUN6QjtxQkFBTSxJQUFJLEtBQUssQ0FBQyxRQUFRLEtBQUssWUFBWSxDQUFDLFFBQVEsRUFBRTtvQkFDbkQsZUFBZSxHQUFHLEtBQUssQ0FBQztpQkFDekI7cUJBQU0sSUFBSSxLQUFLLENBQUMsUUFBUSxLQUFLLFlBQVksQ0FBQyxPQUFPLEVBQUU7b0JBQ2xELGVBQWUsR0FBRyxLQUFLLENBQUM7aUJBQ3pCO2FBQ0Y7WUFDRCxJQUFJLEtBQUssQ0FBQyxXQUFXLEVBQUU7Z0JBQ3JCLElBQUksS0FBSyxDQUFDLFdBQVcsS0FBSyxtQkFBbUIsQ0FBQyxJQUFJLEVBQUc7b0JBQ25ELElBQUksQ0FBQyxZQUFZLEdBQUcsNkJBQTZCLENBQUM7aUJBQ25EO3FCQUFNLElBQUksS0FBSyxDQUFDLFdBQVcsS0FBSyxtQkFBbUIsQ0FBQyxJQUFJLEVBQUU7b0JBQ3pELElBQUksQ0FBQyxZQUFZLEdBQUcsOEJBQThCLENBQUM7aUJBQ3BEO3FCQUFNO29CQUNMLElBQUksQ0FBQyxZQUFZLEdBQUcsbUJBQW1CLENBQUM7aUJBQ3pDO2FBQ0Y7U0FDRjtRQUNELElBQUksQ0FBQyxrQkFBa0IsR0FBRyxxQkFBcUIsZUFBZSxFQUFFLENBQUM7UUFDakUsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUM7SUFDdkIsQ0FBQztJQUVNLHFCQUFxQixDQUFDLE1BQVc7UUFDdEMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxjQUFjLENBQUMsQ0FBQztRQUNwRCxJQUFJLENBQUMsUUFBUSxHQUFHLEtBQUssQ0FBQztJQUN4QixDQUFDOzs7WUFoREYsU0FBUyxTQUFDO2dCQUNULFFBQVEsRUFBRSxlQUFlO2dCQUN6QiwrY0FBeUM7YUFDMUM7OztZQVB3QixNQUFNOzRDQWFRLE1BQU0sU0FBQyxRQUFROzs7dUJBSG5ELEtBQUssU0FBQyxTQUFTIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgU2lkZVBhbmVPdmVybGF5VHlwZSwgU2lkZVBhbmVTaXplIH0gZnJvbSAnLi8uLi8uLi90eXBlcyc7XHJcbmltcG9ydCB7IFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBBY3RpdmF0ZWRSb3V0ZSwgUm91dGVyIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcclxuaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCwgT25Jbml0LCBPbkRlc3Ryb3ksIEluamVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBET0NVTUVOVCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2xpYi1zaWRlLXBhbmUnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9zaWRlLXBhbmUuY29tcG9uZW50Lmh0bWwnXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBTaWRlUGFuZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcclxuICAvLyB0c2xpbnQ6ZGlzYWJsZS1uZXh0LWxpbmU6bm8taW5wdXQtcmVuYW1lXHJcbiAgQElucHV0KCd2aXNpYmxlJykgc2hvd1BhbmUgPSBmYWxzZTtcclxuICBwdWJsaWMgc2l6ZUNvbnRhaW5lclN0eWxlID0gJ3NpZGUtcGFuZS1ib3gtc2l6ZSc7XHJcbiAgcHVibGljIG92ZXJsYXlTdHlsZSA9ICdzaWRlLXBhbmUtb3ZlcmxheSc7XHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSByb3V0ZXI6IFJvdXRlciwgQEluamVjdChET0NVTUVOVCkgcHJpdmF0ZSBkb2N1bWVudDogYW55LCkgeyB9XHJcblxyXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xyXG4gIH1cclxuXHJcbiAgbmdPbkluaXQoKTogdm9pZCAge1xyXG4gIH1cclxuXHJcbiAgcHVibGljIG9uU2lkZVBhbmVBY3RpdmF0ZWQoY29tcG9uZW50OiBhbnkpOiB2b2lkICB7XHJcbiAgICB0aGlzLmRvY3VtZW50LmJvZHkuY2xhc3NMaXN0LmFkZCgnbW9kYWwtYWN0aXZlJyk7XHJcbiAgICBsZXQgc2l6ZVN0eWxlU3VmZml4ID0gJyc7XHJcbiAgICBjb25zdCBzdGF0ZSA9IHRoaXMucm91dGVyLmdldEN1cnJlbnROYXZpZ2F0aW9uKCk/LmV4dHJhcy5zdGF0ZTtcclxuICAgIGlmIChzdGF0ZSkge1xyXG4gICAgICBpZiAoc3RhdGUucGFuZVNpemUpIHtcclxuICAgICAgICBpZiAoc3RhdGUucGFuZVNpemUgPT09IFNpZGVQYW5lU2l6ZS5TbWFsbDI1KSB7XHJcbiAgICAgICAgICBzaXplU3R5bGVTdWZmaXggPSAnLTI1JztcclxuICAgICAgICB9IGVsc2UgaWYgKHN0YXRlLnBhbmVTaXplID09PSBTaWRlUGFuZVNpemUuTWVkaXVtNTApIHtcclxuICAgICAgICAgIHNpemVTdHlsZVN1ZmZpeCA9ICctNTAnO1xyXG4gICAgICAgIH0gZWxzZSBpZiAoc3RhdGUucGFuZVNpemUgPT09IFNpZGVQYW5lU2l6ZS5MYXJnZTc1KSB7XHJcbiAgICAgICAgICBzaXplU3R5bGVTdWZmaXggPSAnLTc1JztcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgaWYgKHN0YXRlLnBhbmVPdmVybGF5KSB7XHJcbiAgICAgICAgaWYgKHN0YXRlLnBhbmVPdmVybGF5ID09PSBTaWRlUGFuZU92ZXJsYXlUeXBlLk5vbmUpICB7XHJcbiAgICAgICAgICB0aGlzLm92ZXJsYXlTdHlsZSA9ICdzaWRlLXBhbmUtb3ZlcmxheS1vcGFjaXR5LTAnO1xyXG4gICAgICAgIH0gZWxzZSBpZiAoc3RhdGUucGFuZU92ZXJsYXkgPT09IFNpZGVQYW5lT3ZlcmxheVR5cGUuRGFyaykge1xyXG4gICAgICAgICAgdGhpcy5vdmVybGF5U3R5bGUgPSAnc2lkZS1wYW5lLW92ZXJsYXktb3BhY2l0eS01MCc7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgIHRoaXMub3ZlcmxheVN0eWxlID0gJ3NpZGUtcGFuZS1vdmVybGF5JztcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIHRoaXMuc2l6ZUNvbnRhaW5lclN0eWxlID0gYHNpZGUtcGFuZS1ib3gtc2l6ZSR7c2l6ZVN0eWxlU3VmZml4fWA7XHJcbiAgICB0aGlzLnNob3dQYW5lID0gdHJ1ZTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBvblNpZGVQYW5lRGVhY3RpdmF0ZWQoJGV2ZW50OiBhbnkpOiB2b2lkICB7XHJcbiAgICB0aGlzLmRvY3VtZW50LmJvZHkuY2xhc3NMaXN0LnJlbW92ZSgnbW9kYWwtYWN0aXZlJyk7XHJcbiAgICB0aGlzLnNob3dQYW5lID0gZmFsc2U7XHJcbiAgfVxyXG5cclxufVxyXG4iXX0=
@@ -0,0 +1,57 @@
1
+ import { Component, EventEmitter, forwardRef, Input, Output } from '@angular/core';
2
+ import { NG_VALUE_ACCESSOR } from '@angular/forms';
3
+ export class ToggleComponent {
4
+ constructor() {
5
+ this.valueChange = new EventEmitter();
6
+ this.onChange$ = undefined;
7
+ this.onTouched$ = undefined;
8
+ }
9
+ writeValue(obj) {
10
+ if (obj) {
11
+ this.value = obj || false;
12
+ }
13
+ }
14
+ registerOnChange(fn) {
15
+ this.onChange$ = fn;
16
+ }
17
+ registerOnTouched(fn) {
18
+ this.onTouched$ = fn;
19
+ }
20
+ onBlur(event) {
21
+ if (this.onTouched$) {
22
+ this.onTouched$();
23
+ }
24
+ }
25
+ ngOnInit() {
26
+ }
27
+ changeValue() {
28
+ this.value = !this.value;
29
+ this.valueChange.emit(this.value);
30
+ if (this.onChange$) {
31
+ this.onChange$(this.value);
32
+ }
33
+ if (this.onTouched$) {
34
+ this.onTouched$();
35
+ }
36
+ }
37
+ }
38
+ ToggleComponent.decorators = [
39
+ { type: Component, args: [{
40
+ selector: 'lib-toggle',
41
+ template: "<button type=\"button\"\n [ngClass]=\"value ? 'enabled' : 'disabled'\"\n class=\"toggle-button\"\n role=\"switch\"\n aria-checked=\"false\"\n aria-labelledby=\"isPrivate\"\n (click)=\"changeValue()\"\n (blur)=\"onBlur($event)\"\n value=\"{{value}}\"\n [disabled]=\"disabled\"\n [title]=\"disabled ? '\u03A4\u03BF \u03B1\u03C1\u03C7\u03B5\u03AF\u03BF \u03C0\u03C1\u03AD\u03C0\u03B5\u03B9 \u03BD\u03B1 \u03B5\u03AF\u03BD\u03B1\u03B9 \u03B9\u03B4\u03C9\u03C4\u03B9\u03BA\u03CC' : '\u0399\u03B4\u03B9\u03C9\u03C4\u03B9\u03BA\u03CC'\">\n <span aria-hidden=\"true\"\n [ngClass]=\"value ? 'enabled-anim' : 'disabled-anim'\"\n class=\"toggle-span\"></span>\n</button>",
42
+ providers: [
43
+ {
44
+ provide: NG_VALUE_ACCESSOR,
45
+ useExisting: forwardRef(() => ToggleComponent),
46
+ multi: true
47
+ }
48
+ ]
49
+ },] }
50
+ ];
51
+ ToggleComponent.ctorParameters = () => [];
52
+ ToggleComponent.propDecorators = {
53
+ value: [{ type: Input }],
54
+ disabled: [{ type: Input }],
55
+ valueChange: [{ type: Output }]
56
+ };
57
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9nZ2xlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25nLWNvbXBvbmVudHMvc3JjL2xpYi9jb250cm9scy90b2dnbGUvdG9nZ2xlLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxVQUFVLEVBQUUsS0FBSyxFQUFVLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzRixPQUFPLEVBQUUsaUJBQWlCLEVBQXdCLE1BQU0sZ0JBQWdCLENBQUM7QUFhekUsTUFBTSxPQUFPLGVBQWU7SUFVMUI7UUFMVSxnQkFBVyxHQUEwQixJQUFJLFlBQVksRUFBVyxDQUFDO1FBRW5FLGNBQVMsR0FBb0IsU0FBUyxDQUFDO1FBQ3ZDLGVBQVUsR0FBb0IsU0FBUyxDQUFDO0lBRWhDLENBQUM7SUFDakIsVUFBVSxDQUFDLEdBQVE7UUFDakIsSUFBRyxHQUFHLEVBQUU7WUFDTixJQUFJLENBQUMsS0FBSyxHQUFHLEdBQUcsSUFBSSxLQUFLLENBQUM7U0FDM0I7SUFDSCxDQUFDO0lBQ0QsZ0JBQWdCLENBQUMsRUFBTztRQUN0QixJQUFJLENBQUMsU0FBUyxHQUFHLEVBQUUsQ0FBQztJQUN0QixDQUFDO0lBQ0QsaUJBQWlCLENBQUMsRUFBTztRQUN2QixJQUFJLENBQUMsVUFBVSxHQUFHLEVBQUUsQ0FBQztJQUN2QixDQUFDO0lBRU0sTUFBTSxDQUFDLEtBQVU7UUFDdEIsSUFBRyxJQUFJLENBQUMsVUFBVSxFQUFFO1lBQ2xCLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQztTQUNuQjtJQUNILENBQUM7SUFFRCxRQUFRO0lBQ1IsQ0FBQztJQUVNLFdBQVc7UUFDaEIsSUFBSSxDQUFDLEtBQUssR0FBRyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUM7UUFDekIsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ2xDLElBQUcsSUFBSSxDQUFDLFNBQVMsRUFBRTtZQUNqQixJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztTQUM1QjtRQUNELElBQUcsSUFBSSxDQUFDLFVBQVUsRUFBRTtZQUNsQixJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7U0FDbkI7SUFDSCxDQUFDOzs7WUFwREYsU0FBUyxTQUFDO2dCQUNULFFBQVEsRUFBRSxZQUFZO2dCQUN0QiwwdkJBQXNDO2dCQUN0QyxTQUFTLEVBQUU7b0JBQ1Q7d0JBQ0UsT0FBTyxFQUFFLGlCQUFpQjt3QkFDMUIsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxlQUFlLENBQUM7d0JBQzlDLEtBQUssRUFBRSxJQUFJO3FCQUNaO2lCQUNGO2FBQ0Y7Ozs7b0JBRUUsS0FBSzt1QkFFTCxLQUFLOzBCQUVMLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgZm9yd2FyZFJlZiwgSW5wdXQsIE9uSW5pdCwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBOR19WQUxVRV9BQ0NFU1NPUiwgQ29udHJvbFZhbHVlQWNjZXNzb3IgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2xpYi10b2dnbGUnLFxuICB0ZW1wbGF0ZVVybDogJy4vdG9nZ2xlLmNvbXBvbmVudC5odG1sJyxcbiAgcHJvdmlkZXJzOiBbXG4gICAge1xuICAgICAgcHJvdmlkZTogTkdfVkFMVUVfQUNDRVNTT1IsXG4gICAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBUb2dnbGVDb21wb25lbnQpLFxuICAgICAgbXVsdGk6IHRydWVcbiAgICB9XG4gIF1cbn0pXG5leHBvcnQgY2xhc3MgVG9nZ2xlQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBDb250cm9sVmFsdWVBY2Nlc3NvciB7XG4gIEBJbnB1dCgpXG4gIHB1YmxpYyB2YWx1ZTogYm9vbGVhbiB8IG51bGwgfCB1bmRlZmluZWQ7XG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBkaXNhYmxlZDpib29sZWFuIHwgbnVsbCB8IHVuZGVmaW5lZDtcbiAgQE91dHB1dCgpIHZhbHVlQ2hhbmdlOiBFdmVudEVtaXR0ZXI8Qm9vbGVhbj4gPSBuZXcgRXZlbnRFbWl0dGVyPEJvb2xlYW4+KCk7XG5cbiAgcHJpdmF0ZSBvbkNoYW5nZSQ6IGFueSB8IHVuZGVmaW5lZCA9IHVuZGVmaW5lZDtcbiAgcHJpdmF0ZSBvblRvdWNoZWQkOiBhbnkgfCB1bmRlZmluZWQgPSB1bmRlZmluZWQ7XG5cbiAgY29uc3RydWN0b3IoKSB7IH1cbiAgd3JpdGVWYWx1ZShvYmo6IGFueSk6IHZvaWQge1xuICAgIGlmKG9iaikge1xuICAgICAgdGhpcy52YWx1ZSA9IG9iaiB8fCBmYWxzZTtcbiAgICB9XG4gIH1cbiAgcmVnaXN0ZXJPbkNoYW5nZShmbjogYW55KTogdm9pZCB7XG4gICAgdGhpcy5vbkNoYW5nZSQgPSBmbjtcbiAgfVxuICByZWdpc3Rlck9uVG91Y2hlZChmbjogYW55KTogdm9pZCB7XG4gICAgdGhpcy5vblRvdWNoZWQkID0gZm47XG4gIH1cblxuICBwdWJsaWMgb25CbHVyKGV2ZW50OiBhbnkpOiB2b2lkIHtcbiAgICBpZih0aGlzLm9uVG91Y2hlZCQpIHtcbiAgICAgIHRoaXMub25Ub3VjaGVkJCgpO1xuICAgIH1cbiAgfVxuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICB9XG5cbiAgcHVibGljIGNoYW5nZVZhbHVlKCl7XG4gICAgdGhpcy52YWx1ZSA9ICF0aGlzLnZhbHVlO1xuICAgIHRoaXMudmFsdWVDaGFuZ2UuZW1pdCh0aGlzLnZhbHVlKTtcbiAgICBpZih0aGlzLm9uQ2hhbmdlJCkge1xuICAgICAgdGhpcy5vbkNoYW5nZSQodGhpcy52YWx1ZSk7XG4gICAgfVxuICAgIGlmKHRoaXMub25Ub3VjaGVkJCkge1xuICAgICAgdGhpcy5vblRvdWNoZWQkKCk7XG4gICAgfVxuICB9XG59Il19
@@ -35,6 +35,7 @@ import { CollapsiblePanelComponent } from './controls/collapsible-panel/collapsi
35
35
  import { KpiTileComponent } from './controls/kpi-tile/kpi-tile.component';
36
36
  import { DynamicComponentHostDirective } from './directives/dynamic-component-host.directive';
37
37
  import { ListViewEmptyStateComponent } from './controls/list-view/list-view-empty-state.component';
38
+ import { ToggleComponent } from './controls/toggle/toggle.component';
38
39
  export class IndiceComponentsModule {
39
40
  // tslint:disable-next-line:typedef
40
41
  static forRoot() {
@@ -64,6 +65,7 @@ IndiceComponentsModule.decorators = [
64
65
  SidePaneComponent,
65
66
  DatepickerComponent,
66
67
  AvatarInitialsComponent,
68
+ ToggleComponent,
67
69
  // Toaster
68
70
  ToasterContainerComponent,
69
71
  ToasterComponent,
@@ -123,8 +125,9 @@ IndiceComponentsModule.decorators = [
123
125
  DatepickerComponent,
124
126
  ToasterContainerComponent,
125
127
  ToasterComponent,
126
- AvatarInitialsComponent
128
+ AvatarInitialsComponent,
129
+ ToggleComponent
127
130
  ]
128
131
  },] }
129
132
  ];
130
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmctY29tcG9uZW50cy5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9uZy1jb21wb25lbnRzL3NyYy9saWIvbmctY29tcG9uZW50cy5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sc0RBQXNELENBQUM7QUFDL0YsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQzVELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBQ3hFLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLGdEQUFnRCxDQUFDO0FBQzNGLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLDhDQUE4QyxDQUFDO0FBQ25GLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLDBDQUEwQyxDQUFDO0FBQzdFLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLHFEQUFxRCxDQUFDO0FBQ2xHLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0seURBQXlELENBQUM7QUFDaEcsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sNkRBQTZELENBQUM7QUFDcEcsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLDJDQUEyQyxDQUFDO0FBQzNFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDhDQUE4QyxDQUFDO0FBQ2xGLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLG9EQUFvRCxDQUFDO0FBQzNGLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ25ELE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLHNEQUFzRCxDQUFDO0FBQy9GLE9BQU8sRUFBRSxpQkFBaUIs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QzNCLGdCQUFnQjtvQkFDaEIsdUJBQXVCO29CQUN2QixvQkFBb0I7b0JBQ3BCLG9CQUFvQjtvQkFDcEIsb0JBQW9CO29CQUNwQixtQkFBbUI7b0JBQ25CLHVCQUF1QjtvQkFDdkIsd0JBQXdCO29CQUN4QixtQkFBbUI7b0JBQ25CLHFCQUFxQjtvQkFDckIsa0JBQWtCO29CQUNsQixrQkFBa0I7b0JBQ2xCLGNBQWM7b0JBQ2QscUJBQXFCO29CQUNyQixxQkFBcUI7b0JBQ3JCLFdBQVc7b0JBQ1gsa0JBQWtCO29CQUNsQix5QkFBeUI7b0JBQ3pCLGlCQUFpQjtvQkFDakIsbUJBQW1CO29CQUNuQix5QkFBeUI7b0JBQ3pCLGdCQUFnQjtvQkFDaEIsdUJBQXVCO2lCQUN4QjthQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQXZhdGFySW5pdGlhbHNDb21wb25lbnQgfSBmcm9tICcuL2NvbnRyb2xzL2F2YXRhci1pbml0aWFscy9hdmF0YXItaW5pdGlhbHMuY29tcG9uZW50JztcclxuaW1wb3J0IHsgVG9hc3RlclNlcnZpY2UgfSBmcm9tICcuL3NlcnZpY2VzL3RvYXN0ZXIuc2VydmljZSc7XHJcbmltcG9ydCB7IFRvYXN0ZXJDb21wb25lbnQgfSBmcm9tICcuL2NvbnRyb2xzL3RvYXN0ZXIvdG9hc3Rlci5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBUb2FzdGVyQ29udGFpbmVyQ29tcG9uZW50IH0gZnJvbSAnLi9jb250cm9scy90b2FzdGVyL3RvYXN0ZXItY29udGFpbmVyLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IERhdGVwaWNrZXJDb21wb25lbnQgfSBmcm9tICcuL2NvbnRyb2xzL2RhdGUtcGlja2VyL2RhdGUtcGlja2VyLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFNpZGVQYW5lQ29tcG9uZW50IH0gZnJvbSAnLi9jb250cm9scy9zaWRlLXBhbmUvc2lkZS1wYW5lLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IExpc3REZXRhaWxzU2VjdGlvbkNvbXBvbmVudCB9IGZyb20gJy4vY29udHJvbHMvbGlzdC12aWV3L2xpc3QtZGV0YWlscy1zZWN0aW9uLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcbmltcG9ydCB7IFJvdXRlck1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XHJcbmltcG9ydCB7IFVuYXV0aG9yaXplZENvbXBvbmVudCB9IGZyb20gJy4vcGFnZXMvaHR0cC1zdGF0dXMvdW5hdXRob3JpemVkL3VuYXV0aG9yaXplZC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBQYWdlTm90Rm91bmRDb21wb25lbnQgfSBmcm9tICcuL3BhZ2VzL2h0dHAtc3RhdHVzL3BhZ2Utbm90LWZvdW5kL3BhZ2Utbm90LWZvdW5kLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEVycm9yQ29tcG9uZW50IH0gZnJvbSAnLi9wYWdlcy9odHRwLXN0YXR1cy9lcnJvci9lcnJvci5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBMb2dnZWRPdXRDb21wb25lbnQgfSBmcm9tICcuL3BhZ2VzL2F1dGgvbG9nZ2VkLW91dC9sb2dnZWQtb3V0LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEF1dGhDYWxsYmFja0NvbXBvbmVudCB9IGZyb20gJy4vcGFnZXMvYXV0aC9hdXRoLWNhbGxiYWNrL2F1dGgtY2FsbGJhY2suY29tcG9uZW50JztcclxuaW1wb3J0IHsgSW5kaWNlQXV0aE1vZHVsZSB9IGZyb20gJ0BpbmRpY2UvbmctYXV0aCc7XHJcbmltcG9ydCB7IFNrZWxldG9uTG9hZGVyQ29tcG9uZW50IH0gZnJvbSAnLi9jb250cm9scy9za2VsZXRvbi1sb2FkZXIvc2tlbGV0b24tbG9hZGVyLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IExpc3RUaWxlQ29tcG9uZW50IH0gZnJvbSAnLi9jb250cm9scy9saXN0LXZpZXcvbGlzdC10aWxlLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IExpc3RDb2x1bW5Db21wb25lbnQgfSBmcm9tICcuL2NvbnRyb2xzL2xpc3Qtdmlldy9saXN0LWNvbHVtbi5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBEcm9wRG93bk1lbnVDb21wb25lbnQgfSBmcm9tICcuL2NvbnRyb2xzL2Ryb3AtZG93bi1tZW51L2Ryb3AtZG93bi1tZW51LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IExpc3RWaWV3Q29tcG9uZW50IH0gZnJvbSAnLi9jb250cm9scy9saXN0LXZpZXcvbGlzdC12aWV3LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFBhZ2VyQ29tcG9uZW50IH0gZnJvbSAnLi9jb250cm9scy9wYWdlci9wYWdlci5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBDbGlja091dHNpZGVEaXJlY3RpdmUgfSBmcm9tICcuL2RpcmVjdGl2ZXMvY2xpY2stb3V0c2lkZS5kaXJlY3RpdmUnO1xyXG5pbXBvcnQgeyBTaGVsbEZvb3RlckNvbXBvbmVudCB9IGZyb20gJy4vbGF5b3V0cy9zaGVsbC9zaGVsbC1mb290ZXIvc2hlbGwtZm9vdGVyLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFNoZWxsSGVhZGVyQ29tcG9uZW50IH0gZnJvbSAnLi9sYXlvdXRzL3NoZWxsL3NoZWxsLWhlYWRlci9zaGVsbC1oZWFkZXIuY29tcG9uZW50JztcclxuaW1wb3J0IHsgU2hlbGxMYXlvdXRDb21wb25lbnQgfSBmcm9tICcuL2xheW91dHMvc2hlbGwvc2hlbGwtbGF5b3V0L3NoZWxsLWxheW91dC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBGb3JtTGF5b3V0Q29tcG9uZW50IH0gZnJvbSAnLi9sYXlvdXRzL3ZpZXdzL2Zvcm0tbGF5b3V0L2Zvcm0tbGF5b3V0LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IE1vZGVsVmlld0xheW91dENvbXBvbmVudCB9IGZyb20gJy4vbGF5b3V0cy92aWV3cy9tb2RlbC12aWV3LWxheW91dC9tb2RlbC12aWV3LWxheW91dC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBTaWRlVmlld0xheW91dENvbXBvbmVudCB9IGZyb20gJy4vbGF5b3V0cy92aWV3cy9zaWRlLXZpZXctbGF5b3V0L3NpZGUtdmlldy1sYXlvdXQuY29tcG9uZW50JztcclxuaW1wb3J0IHsgVmlld0xheW91dENvbXBvbmVudCB9IGZyb20gJy4vbGF5b3V0cy92aWV3cy92aWV3LWxheW91dC92aWV3LWxheW91dC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBBdXRoUmVuZXdDb21wb25lbnQgfSBmcm9tICcuL3BhZ2VzL2F1dGgvYXV0aC1yZW5ldy9hdXRoLXJlbmV3LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEFkZHJlc3NQaXBlIH0gZnJvbSAnLi9waXBlcy9hZGRyZXNzLnBpcGUnO1xyXG5pbXBvcnQgeyBEdXJhdGlvbkZvcm1hdFBpcGUgfSBmcm9tICcuL3BpcGVzL2R1cmF0aW9uLWZvcm1hdC5waXBlJztcclxuaW1wb3J0IHsgQ29sbGFwc2libGVQYW5lbENvbXBvbmVudCB9IGZyb20gJy4vY29udHJvbHMvY29sbGFwc2libGUtcGFuZWwvY29sbGFwc2libGUtcGFuZWwuY29tcG9uZW50JztcclxuaW1wb3J0IHsgS3BpVGlsZUNvbXBvbmVudCB9IGZyb20gJy4vY29udHJvbHMva3BpLXRpbGUva3BpLXRpbGUuY29tcG9uZW50JztcclxuaW1wb3J0IHsgRHluYW1pY0NvbXBvbmVudEhvc3REaXJlY3RpdmUgfSBmcm9tICcuL2RpcmVjdGl2ZXMvZHluYW1pYy1jb21wb25lbnQtaG9zdC5kaXJlY3RpdmUnO1xyXG5pbXBvcnQgeyBMaXN0Vmlld0VtcHR5U3RhdGVDb21wb25lbnQgfSBmcm9tICcuL2NvbnRyb2xzL2xpc3Qtdmlldy9saXN0LXZpZXctZW1wdHktc3RhdGUuY29tcG9uZW50JztcclxuXHJcbkBOZ01vZHVsZSh7XHJcbiAgZGVjbGFyYXRpb25zOiBbXHJcbiAgICAvLyBkaWVjdGl2ZXNcclxuICAgIENsaWNrT3V0c2lkZURpcmVjdGl2ZSxcclxuICAgIER5bmFtaWNDb21wb25lbnRIb3N0RGlyZWN0aXZlLFxyXG4gICAgLy8gY29udHJvbHNcclxuICAgIERyb3BEb3duTWVudUNvbXBvbmVudCxcclxuICAgIFBhZ2VyQ29tcG9uZW50LFxyXG4gICAgTGlzdFZpZXdDb21wb25lbnQsXHJcbiAgICBMaXN0Q29sdW1uQ29tcG9uZW50LFxyXG4gICAgTGlzdFRpbGVDb21wb25lbnQsXHJcbiAgICBMaXN0RGV0YWlsc1NlY3Rpb25Db21wb25lbnQsXHJcbiAgICBMaXN0Vmlld0VtcHR5U3RhdGVDb21wb25lbnQsXHJcbiAgICBTa2VsZXRvbkxvYWRlckNvbXBvbmVudCxcclxuICAgIENvbGxhcHNpYmxlUGFuZWxDb21wb25lbnQsXHJcbiAgICBLcGlUaWxlQ29tcG9uZW50LFxyXG4gICAgU2lkZVBhbmVDb21wb25lbnQsXHJcbiAgICBEYXRlcGlja2VyQ29tcG9uZW50LFxyXG4gICAgQXZhdGFySW5pdGlhbHNDb21wb25lbnQsXHJcbiAgICAvLyBUb2FzdGVyXHJcbiAgICBUb2FzdGVyQ29udGFpbmVyQ29tcG9uZW50LFxyXG4gICAgVG9hc3RlckNvbXBvbmVudCxcclxuICAgIC8vIHNoZWxsIGxheW91dFxyXG4gICAgU2hlbGxMYXlvdXRDb21wb25lbnQsXHJcbiAgICBTaGVsbEhlYWRlckNvbXBvbmVudCxcclxuICAgIFNoZWxsRm9vdGVyQ29tcG9uZW50LFxyXG4gICAgLy8gdmlldyBsYXlvdXRzXHJcbiAgICBWaWV3TGF5b3V0Q29tcG9uZW50LFxyXG4gICAgU2lkZVZpZXdMYXlvdXRDb21wb25lbnQsXHJcbiAgICBNb2RlbFZpZXdMYXlvdXRDb21wb25lbnQsXHJcbiAgICBGb3JtTGF5b3V0Q29tcG9uZW50LFxyXG4gICAgLy8gcGFnZXMgKGNvbW1vbilcclxuICAgIEF1dGhDYWxsYmFja0NvbXBvbmVudCxcclxuICAgIEF1dGhSZW5ld0NvbXBvbmVudCxcclxuICAgIExvZ2dlZE91dENvbXBvbmVudCxcclxuICAgIEVycm9yQ29tcG9uZW50LFxyXG4gICAgUGFnZU5vdEZvdW5kQ29tcG9uZW50LFxyXG4gICAgVW5hdXRob3JpemVkQ29tcG9uZW50LFxyXG4gICAgLy8gcGlwZXNcclxuICAgIEFkZHJlc3NQaXBlLFxyXG4gICAgRHVyYXRpb25Gb3JtYXRQaXBlXHJcbiAgXSxcclxuICBpbXBvcnRzOiBbXHJcbiAgICBDb21tb25Nb2R1bGUsXHJcbiAgICBSb3V0ZXJNb2R1bGUsXHJcbiAgICBJbmRpY2VBdXRoTW9kdWxlXHJcbiAgXSxcclxuICBleHBvcnRzOiBbXHJcbiAgICBDbGlja091dHNpZGVEaXJlY3RpdmUsXHJcbiAgICBEcm9wRG93bk1lbnVDb21wb25lbnQsXHJcbiAgICBQYWdlckNvbXBvbmVudCxcclxuICAgIExpc3RWaWV3Q29tcG9uZW50LFxyXG4gICAgTGlzdENvbHVtbkNvbXBvbmVudCxcclxuICAgIExpc3RUaWxlQ29tcG9uZW50LFxyXG4gICAgTGlzdERldGFpbHNTZWN0aW9uQ29tcG9uZW50LFxyXG4gICAgTGlzdFZpZXdFbXB0eVN0YXRlQ29tcG9uZW50LFxyXG4gICAgS3BpVGlsZUNvbXBvbmVudCxcclxuICAgIFNrZWxldG9uTG9hZGVyQ29tcG9uZW50LFxyXG4gICAgU2hlbGxMYXlvdXRDb21wb25lbnQsXHJcbiAgICBTaGVsbEhlYWRlckNvbXBvbmVudCxcclxuICAgIFNoZWxsRm9vdGVyQ29tcG9uZW50LFxyXG4gICAgVmlld0xheW91dENvbXBvbmVudCxcclxuICAgIFNpZGVWaWV3TGF5b3V0Q29tcG9uZW50LFxyXG4gICAgTW9kZWxWaWV3TGF5b3V0Q29tcG9uZW50LFxyXG4gICAgRm9ybUxheW91dENvbXBvbmVudCxcclxuICAgIEF1dGhDYWxsYmFja0NvbXBvbmVudCxcclxuICAgIEF1dGhSZW5ld0NvbXBvbmVudCxcclxuICAgIExvZ2dlZE91dENvbXBvbmVudCxcclxuICAgIEVycm9yQ29tcG9uZW50LFxyXG4gICAgUGFnZU5vdEZvdW5kQ29tcG9uZW50LFxyXG4gICAgVW5hdXRob3JpemVkQ29tcG9uZW50LFxyXG4gICAgQWRkcmVzc1BpcGUsXHJcbiAgICBEdXJhdGlvbkZvcm1hdFBpcGUsXHJcbiAgICBDb2xsYXBzaWJsZVBhbmVsQ29tcG9uZW50LFxyXG4gICAgU2lkZVBhbmVDb21wb25lbnQsXHJcbiAgICBEYXRlcGlja2VyQ29tcG9uZW50LFxyXG4gICAgVG9hc3RlckNvbnRhaW5lckNvbXBvbmVudCxcclxuICAgIFRvYXN0ZXJDb21wb25lbnQsXHJcbiAgICBBdmF0YXJJbml0aWFsc0NvbXBvbmVudFxyXG4gIF1cclxufSlcclxuZXhwb3J0IGNsYXNzIEluZGljZUNvbXBvbmVudHNNb2R1bGUge1xyXG4gIC8vIHRzbGludDpkaXNhYmxlLW5leHQtbGluZTp0eXBlZGVmXHJcbiAgc3RhdGljIGZvclJvb3QoKSB7XHJcbiAgICByZXR1cm4ge1xyXG4gICAgICBuZ01vZHVsZTogSW5kaWNlQ29tcG9uZW50c01vZHVsZSxcclxuICAgICAgcHJvdmlkZXJzOiBbVG9hc3RlclNlcnZpY2VdXHJcbiAgICB9O1xyXG4gfVxyXG59XHJcbiJdfQ==
133
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmctY29tcG9uZW50cy5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9uZy1jb21wb25lbnRzL3NyYy9saWIvbmctY29tcG9uZW50cy5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sc0RBQXNELENBQUM7QUFDL0YsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQzVELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBQ3hFLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLGdEQUFnRCxDQUFDO0FBQzNGLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLDhDQUE4QyxDQUFDO0FBQ25GLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLDBDQUEwQyxDQUFDO0FBQzdFLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLHFEQUFxRCxDQUFDO0FBQ2xHLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0seURBQXlELENBQUM7QUFDaEcsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sNkRBQTZELENBQUM7QUFDcEcsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLDJDQUEyQyxDQUFDO0FBQzNFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDhDQUE4QyxDQUFDO0FBQ2xGLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLG9EQUFvRCxDQUFDO0FBQzNGLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ25ELE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLHNEQUFzRCxDQUFDO0FBQy9GLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLDBDQUEwQyxDQUFDO0FBQzdFLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLDRDQUE0QyxDQUFDO0FBQ2pGLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sb0RBQW9ELENBQUM7QUFDM0YsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sMENBQTBDLENBQUM7QUFDN0UsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBQ2xFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBQzdFLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHFEQUFxRCxDQUFDO0FBQzNGLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHFEQUFxRCxDQUFDO0FBQzNGLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHFEQUFxRCxDQUFDO0FBQzNGLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLG1EQUFtRCxDQUFDO0FBQ3hGLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLCtEQUErRCxDQUFDO0FBQ3pHLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLDZEQUE2RCxDQUFDO0FBQ3RHLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLG1EQUFtRCxDQUFDO0FBQ3hGLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDhDQUE4QyxDQUFDO0FBQ2xGLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUNuRCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUNsRSxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSwwREFBMEQsQ0FBQztBQUNyRyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQztBQUMxRSxPQUFPLEVBQUUsNkJBQTZCLEVBQUUsTUFBTSwrQ0FBK0MsQ0FBQztBQUM5RixPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSxzREFBc0QsQ0FBQztBQUNuRyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFxRnJFLE1BQU0sT0FBTyxzQkFBc0I7SUFDakMsbUNBQW1DO0lBQ25DLE1BQU0sQ0FBQyxPQUFPO1FBQ1osT0FBTztZQUNMLFFBQVEsRUFBRSxzQkFBc0I7WUFDaEMsU0FBUyxFQUFFLENBQUMsY0FBYyxDQUFDO1NBQzVCLENBQUM7SUFDTCxDQUFDOzs7WUExRkQsUUFBUSxTQUFDO2dCQUNSLFlBQVksRUFBRTtvQkFDWixZQUFZO29CQUNaLHFCQUFxQjtvQkFDckIsNkJBQTZCO29CQUM3QixXQUFXO29CQUNYLHFCQUFxQjtvQkFDckIsY0FBYztvQkFDZCxpQkFBaUI7b0JBQ2pCLG1CQUFtQjtvQkFDbkIsaUJBQWlCO29CQUNqQiwyQkFBMkI7b0JBQzNCLDJCQUEyQjtvQkFDM0IsdUJBQXVCO29CQUN2Qix5QkFBeUI7b0JBQ3pCLGdCQUFnQjtvQkFDaEIsaUJBQWlCO29CQUNqQixtQkFBbUI7b0JBQ25CLHVCQUF1QjtvQkFDdkIsZUFBZTtvQkFDZixVQUFVO29CQUNWLHlCQUF5QjtvQkFDekIsZ0JBQWdCO29CQUNoQixlQUFlO29CQUNmLG9CQUFvQjtvQkFDcEIsb0JBQW9CO29CQUNwQixvQkFBb0I7b0JBQ3BCLGVBQWU7b0JBQ2YsbUJBQW1CO29CQUNuQix1QkFBdUI7b0JBQ3ZCLHdCQUF3QjtvQkFDeEIsbUJBQW1CO29CQUNuQixpQkFBaUI7b0JBQ2pCLHFCQUFxQjtvQkFDckIsa0JBQWtCO29CQUNsQixrQkFBa0I7b0JBQ2xCLGNBQWM7b0JBQ2QscUJBQXFCO29CQUNyQixxQkFBcUI7b0JBQ3JCLFFBQVE7b0JBQ1IsV0FBVztvQkFDWCxrQkFBa0I7aUJBQ25CO2dCQUNELE9BQU8sRUFBRTtvQkFDUCxZQUFZO29CQUNaLFlBQVk7b0JBQ1osZ0JBQWdCO2lCQUNqQjtnQkFDRCxPQUFPLEVBQUU7b0JBQ1AscUJBQXFCO29CQUNyQixxQkFBcUI7b0JBQ3JCLGNBQWM7b0JBQ2QsaUJBQWlCO29CQUNqQixtQkFBbUI7b0JBQ25CLGlCQUFpQjtvQkFDakIsMkJBQTJCO29CQUMzQiwyQkFBMkI7b0JBQzNCLGdCQUFnQjtvQkFDaEIsdUJBQXVCO29CQUN2QixvQkFBb0I7b0JBQ3BCLG9CQUFvQjtvQkFDcEIsb0JBQW9CO29CQUNwQixtQkFBbUI7b0JBQ25CLHVCQUF1QjtvQkFDdkIsd0JBQXdCO29CQUN4QixtQkFBbUI7b0JBQ25CLHFCQUFxQjtvQkFDckIsa0JBQWtCO29CQUNsQixrQkFBa0I7b0JBQ2xCLGNBQWM7b0JBQ2QscUJBQXFCO29CQUNyQixxQkFBcUI7b0JBQ3JCLFdBQVc7b0JBQ1gsa0JBQWtCO29CQUNsQix5QkFBeUI7b0JBQ3pCLGlCQUFpQjtvQkFDakIsbUJBQW1CO29CQUNuQix5QkFBeUI7b0JBQ3pCLGdCQUFnQjtvQkFDaEIsdUJBQXVCO29CQUN2QixlQUFlO2lCQUNoQjthQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQXZhdGFySW5pdGlhbHNDb21wb25lbnQgfSBmcm9tICcuL2NvbnRyb2xzL2F2YXRhci1pbml0aWFscy9hdmF0YXItaW5pdGlhbHMuY29tcG9uZW50JztcclxuaW1wb3J0IHsgVG9hc3RlclNlcnZpY2UgfSBmcm9tICcuL3NlcnZpY2VzL3RvYXN0ZXIuc2VydmljZSc7XHJcbmltcG9ydCB7IFRvYXN0ZXJDb21wb25lbnQgfSBmcm9tICcuL2NvbnRyb2xzL3RvYXN0ZXIvdG9hc3Rlci5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBUb2FzdGVyQ29udGFpbmVyQ29tcG9uZW50IH0gZnJvbSAnLi9jb250cm9scy90b2FzdGVyL3RvYXN0ZXItY29udGFpbmVyLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IERhdGVwaWNrZXJDb21wb25lbnQgfSBmcm9tICcuL2NvbnRyb2xzL2RhdGUtcGlja2VyL2RhdGUtcGlja2VyLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFNpZGVQYW5lQ29tcG9uZW50IH0gZnJvbSAnLi9jb250cm9scy9zaWRlLXBhbmUvc2lkZS1wYW5lLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IExpc3REZXRhaWxzU2VjdGlvbkNvbXBvbmVudCB9IGZyb20gJy4vY29udHJvbHMvbGlzdC12aWV3L2xpc3QtZGV0YWlscy1zZWN0aW9uLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcbmltcG9ydCB7IFJvdXRlck1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XHJcbmltcG9ydCB7IFVuYXV0aG9yaXplZENvbXBvbmVudCB9IGZyb20gJy4vcGFnZXMvaHR0cC1zdGF0dXMvdW5hdXRob3JpemVkL3VuYXV0aG9yaXplZC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBQYWdlTm90Rm91bmRDb21wb25lbnQgfSBmcm9tICcuL3BhZ2VzL2h0dHAtc3RhdHVzL3BhZ2Utbm90LWZvdW5kL3BhZ2Utbm90LWZvdW5kLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEVycm9yQ29tcG9uZW50IH0gZnJvbSAnLi9wYWdlcy9odHRwLXN0YXR1cy9lcnJvci9lcnJvci5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBMb2dnZWRPdXRDb21wb25lbnQgfSBmcm9tICcuL3BhZ2VzL2F1dGgvbG9nZ2VkLW91dC9sb2dnZWQtb3V0LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEF1dGhDYWxsYmFja0NvbXBvbmVudCB9IGZyb20gJy4vcGFnZXMvYXV0aC9hdXRoLWNhbGxiYWNrL2F1dGgtY2FsbGJhY2suY29tcG9uZW50JztcclxuaW1wb3J0IHsgSW5kaWNlQXV0aE1vZHVsZSB9IGZyb20gJ0BpbmRpY2UvbmctYXV0aCc7XHJcbmltcG9ydCB7IFNrZWxldG9uTG9hZGVyQ29tcG9uZW50IH0gZnJvbSAnLi9jb250cm9scy9za2VsZXRvbi1sb2FkZXIvc2tlbGV0b24tbG9hZGVyLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IExpc3RUaWxlQ29tcG9uZW50IH0gZnJvbSAnLi9jb250cm9scy9saXN0LXZpZXcvbGlzdC10aWxlLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IExpc3RDb2x1bW5Db21wb25lbnQgfSBmcm9tICcuL2NvbnRyb2xzL2xpc3Qtdmlldy9saXN0LWNvbHVtbi5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBEcm9wRG93bk1lbnVDb21wb25lbnQgfSBmcm9tICcuL2NvbnRyb2xzL2Ryb3AtZG93bi1tZW51L2Ryb3AtZG93bi1tZW51LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IExpc3RWaWV3Q29tcG9uZW50IH0gZnJvbSAnLi9jb250cm9scy9saXN0LXZpZXcvbGlzdC12aWV3LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFBhZ2VyQ29tcG9uZW50IH0gZnJvbSAnLi9jb250cm9scy9wYWdlci9wYWdlci5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBDbGlja091dHNpZGVEaXJlY3RpdmUgfSBmcm9tICcuL2RpcmVjdGl2ZXMvY2xpY2stb3V0c2lkZS5kaXJlY3RpdmUnO1xyXG5pbXBvcnQgeyBTaGVsbEZvb3RlckNvbXBvbmVudCB9IGZyb20gJy4vbGF5b3V0cy9zaGVsbC9zaGVsbC1mb290ZXIvc2hlbGwtZm9vdGVyLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFNoZWxsSGVhZGVyQ29tcG9uZW50IH0gZnJvbSAnLi9sYXlvdXRzL3NoZWxsL3NoZWxsLWhlYWRlci9zaGVsbC1oZWFkZXIuY29tcG9uZW50JztcclxuaW1wb3J0IHsgU2hlbGxMYXlvdXRDb21wb25lbnQgfSBmcm9tICcuL2xheW91dHMvc2hlbGwvc2hlbGwtbGF5b3V0L3NoZWxsLWxheW91dC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBGb3JtTGF5b3V0Q29tcG9uZW50IH0gZnJvbSAnLi9sYXlvdXRzL3ZpZXdzL2Zvcm0tbGF5b3V0L2Zvcm0tbGF5b3V0LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IE1vZGVsVmlld0xheW91dENvbXBvbmVudCB9IGZyb20gJy4vbGF5b3V0cy92aWV3cy9tb2RlbC12aWV3LWxheW91dC9tb2RlbC12aWV3LWxheW91dC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBTaWRlVmlld0xheW91dENvbXBvbmVudCB9IGZyb20gJy4vbGF5b3V0cy92aWV3cy9zaWRlLXZpZXctbGF5b3V0L3NpZGUtdmlldy1sYXlvdXQuY29tcG9uZW50JztcclxuaW1wb3J0IHsgVmlld0xheW91dENvbXBvbmVudCB9IGZyb20gJy4vbGF5b3V0cy92aWV3cy92aWV3LWxheW91dC92aWV3LWxheW91dC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBBdXRoUmVuZXdDb21wb25lbnQgfSBmcm9tICcuL3BhZ2VzL2F1dGgvYXV0aC1yZW5ldy9hdXRoLXJlbmV3LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEFkZHJlc3NQaXBlIH0gZnJvbSAnLi9waXBlcy9hZGRyZXNzLnBpcGUnO1xyXG5pbXBvcnQgeyBEdXJhdGlvbkZvcm1hdFBpcGUgfSBmcm9tICcuL3BpcGVzL2R1cmF0aW9uLWZvcm1hdC5waXBlJztcclxuaW1wb3J0IHsgQ29sbGFwc2libGVQYW5lbENvbXBvbmVudCB9IGZyb20gJy4vY29udHJvbHMvY29sbGFwc2libGUtcGFuZWwvY29sbGFwc2libGUtcGFuZWwuY29tcG9uZW50JztcclxuaW1wb3J0IHsgS3BpVGlsZUNvbXBvbmVudCB9IGZyb20gJy4vY29udHJvbHMva3BpLXRpbGUva3BpLXRpbGUuY29tcG9uZW50JztcclxuaW1wb3J0IHsgRHluYW1pY0NvbXBvbmVudEhvc3REaXJlY3RpdmUgfSBmcm9tICcuL2RpcmVjdGl2ZXMvZHluYW1pYy1jb21wb25lbnQtaG9zdC5kaXJlY3RpdmUnO1xyXG5pbXBvcnQgeyBMaXN0Vmlld0VtcHR5U3RhdGVDb21wb25lbnQgfSBmcm9tICcuL2NvbnRyb2xzL2xpc3Qtdmlldy9saXN0LXZpZXctZW1wdHktc3RhdGUuY29tcG9uZW50JztcclxuaW1wb3J0IHsgVG9nZ2xlQ29tcG9uZW50IH0gZnJvbSAnLi9jb250cm9scy90b2dnbGUvdG9nZ2xlLmNvbXBvbmVudCc7XHJcblxyXG5ATmdNb2R1bGUoe1xyXG4gIGRlY2xhcmF0aW9uczogW1xyXG4gICAgLy8gZGllY3RpdmVzXHJcbiAgICBDbGlja091dHNpZGVEaXJlY3RpdmUsXHJcbiAgICBEeW5hbWljQ29tcG9uZW50SG9zdERpcmVjdGl2ZSxcclxuICAgIC8vIGNvbnRyb2xzXHJcbiAgICBEcm9wRG93bk1lbnVDb21wb25lbnQsXHJcbiAgICBQYWdlckNvbXBvbmVudCxcclxuICAgIExpc3RWaWV3Q29tcG9uZW50LFxyXG4gICAgTGlzdENvbHVtbkNvbXBvbmVudCxcclxuICAgIExpc3RUaWxlQ29tcG9uZW50LFxyXG4gICAgTGlzdERldGFpbHNTZWN0aW9uQ29tcG9uZW50LFxyXG4gICAgTGlzdFZpZXdFbXB0eVN0YXRlQ29tcG9uZW50LFxyXG4gICAgU2tlbGV0b25Mb2FkZXJDb21wb25lbnQsXHJcbiAgICBDb2xsYXBzaWJsZVBhbmVsQ29tcG9uZW50LFxyXG4gICAgS3BpVGlsZUNvbXBvbmVudCxcclxuICAgIFNpZGVQYW5lQ29tcG9uZW50LFxyXG4gICAgRGF0ZXBpY2tlckNvbXBvbmVudCxcclxuICAgIEF2YXRhckluaXRpYWxzQ29tcG9uZW50LFxyXG4gICAgVG9nZ2xlQ29tcG9uZW50LFxyXG4gICAgLy8gVG9hc3RlclxyXG4gICAgVG9hc3RlckNvbnRhaW5lckNvbXBvbmVudCxcclxuICAgIFRvYXN0ZXJDb21wb25lbnQsXHJcbiAgICAvLyBzaGVsbCBsYXlvdXRcclxuICAgIFNoZWxsTGF5b3V0Q29tcG9uZW50LFxyXG4gICAgU2hlbGxIZWFkZXJDb21wb25lbnQsXHJcbiAgICBTaGVsbEZvb3RlckNvbXBvbmVudCxcclxuICAgIC8vIHZpZXcgbGF5b3V0c1xyXG4gICAgVmlld0xheW91dENvbXBvbmVudCxcclxuICAgIFNpZGVWaWV3TGF5b3V0Q29tcG9uZW50LFxyXG4gICAgTW9kZWxWaWV3TGF5b3V0Q29tcG9uZW50LFxyXG4gICAgRm9ybUxheW91dENvbXBvbmVudCxcclxuICAgIC8vIHBhZ2VzIChjb21tb24pXHJcbiAgICBBdXRoQ2FsbGJhY2tDb21wb25lbnQsXHJcbiAgICBBdXRoUmVuZXdDb21wb25lbnQsXHJcbiAgICBMb2dnZWRPdXRDb21wb25lbnQsXHJcbiAgICBFcnJvckNvbXBvbmVudCxcclxuICAgIFBhZ2VOb3RGb3VuZENvbXBvbmVudCxcclxuICAgIFVuYXV0aG9yaXplZENvbXBvbmVudCxcclxuICAgIC8vIHBpcGVzXHJcbiAgICBBZGRyZXNzUGlwZSxcclxuICAgIER1cmF0aW9uRm9ybWF0UGlwZVxyXG4gIF0sXHJcbiAgaW1wb3J0czogW1xyXG4gICAgQ29tbW9uTW9kdWxlLFxyXG4gICAgUm91dGVyTW9kdWxlLFxyXG4gICAgSW5kaWNlQXV0aE1vZHVsZVxyXG4gIF0sXHJcbiAgZXhwb3J0czogW1xyXG4gICAgQ2xpY2tPdXRzaWRlRGlyZWN0aXZlLFxyXG4gICAgRHJvcERvd25NZW51Q29tcG9uZW50LFxyXG4gICAgUGFnZXJDb21wb25lbnQsXHJcbiAgICBMaXN0Vmlld0NvbXBvbmVudCxcclxuICAgIExpc3RDb2x1bW5Db21wb25lbnQsXHJcbiAgICBMaXN0VGlsZUNvbXBvbmVudCxcclxuICAgIExpc3REZXRhaWxzU2VjdGlvbkNvbXBvbmVudCxcclxuICAgIExpc3RWaWV3RW1wdHlTdGF0ZUNvbXBvbmVudCxcclxuICAgIEtwaVRpbGVDb21wb25lbnQsXHJcbiAgICBTa2VsZXRvbkxvYWRlckNvbXBvbmVudCxcclxuICAgIFNoZWxsTGF5b3V0Q29tcG9uZW50LFxyXG4gICAgU2hlbGxIZWFkZXJDb21wb25lbnQsXHJcbiAgICBTaGVsbEZvb3RlckNvbXBvbmVudCxcclxuICAgIFZpZXdMYXlvdXRDb21wb25lbnQsXHJcbiAgICBTaWRlVmlld0xheW91dENvbXBvbmVudCxcclxuICAgIE1vZGVsVmlld0xheW91dENvbXBvbmVudCxcclxuICAgIEZvcm1MYXlvdXRDb21wb25lbnQsXHJcbiAgICBBdXRoQ2FsbGJhY2tDb21wb25lbnQsXHJcbiAgICBBdXRoUmVuZXdDb21wb25lbnQsXHJcbiAgICBMb2dnZWRPdXRDb21wb25lbnQsXHJcbiAgICBFcnJvckNvbXBvbmVudCxcclxuICAgIFBhZ2VOb3RGb3VuZENvbXBvbmVudCxcclxuICAgIFVuYXV0aG9yaXplZENvbXBvbmVudCxcclxuICAgIEFkZHJlc3NQaXBlLFxyXG4gICAgRHVyYXRpb25Gb3JtYXRQaXBlLFxyXG4gICAgQ29sbGFwc2libGVQYW5lbENvbXBvbmVudCxcclxuICAgIFNpZGVQYW5lQ29tcG9uZW50LFxyXG4gICAgRGF0ZXBpY2tlckNvbXBvbmVudCxcclxuICAgIFRvYXN0ZXJDb250YWluZXJDb21wb25lbnQsXHJcbiAgICBUb2FzdGVyQ29tcG9uZW50LFxyXG4gICAgQXZhdGFySW5pdGlhbHNDb21wb25lbnQsXHJcbiAgICBUb2dnbGVDb21wb25lbnRcclxuICBdXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBJbmRpY2VDb21wb25lbnRzTW9kdWxlIHtcclxuICAvLyB0c2xpbnQ6ZGlzYWJsZS1uZXh0LWxpbmU6dHlwZWRlZlxyXG4gIHN0YXRpYyBmb3JSb290KCkge1xyXG4gICAgcmV0dXJuIHtcclxuICAgICAgbmdNb2R1bGU6IEluZGljZUNvbXBvbmVudHNNb2R1bGUsXHJcbiAgICAgIHByb3ZpZGVyczogW1RvYXN0ZXJTZXJ2aWNlXVxyXG4gICAgfTtcclxuIH1cclxufVxyXG4iXX0=
@@ -18,6 +18,7 @@ export * from './lib/controls/date-picker/date-picker.component';
18
18
  export * from './lib/controls/toaster/toaster-container.component';
19
19
  export * from './lib/controls/toaster/toaster.component';
20
20
  export * from './lib/controls/avatar-initials/avatar-initials.component';
21
+ export * from './lib/controls/toggle/toggle.component';
21
22
  // shell layout
22
23
  export * from './lib/layouts/shell/shell-layout/shell-layout.component';
23
24
  export * from './lib/layouts/shell/shell-header/shell-header.component';
@@ -46,4 +47,4 @@ export * from './lib/helpers/base-list.component';
46
47
  export * from './lib/services/component-loader.service';
47
48
  export * from './lib/services/toaster.service';
48
49
  export * from './lib/ng-components.module';
49
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL25nLWNvbXBvbmVudHMvc3JjL3B1YmxpYy1hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFFSCxhQUFhO0FBQ2IsY0FBYywwQ0FBMEMsQ0FBQztBQUV6RCxXQUFXO0FBQ1gsY0FBYyx3REFBd0QsQ0FBQztBQUN2RSxjQUFjLHNDQUFzQyxDQUFDO0FBQ3JELGNBQWMsOENBQThDLENBQUM7QUFDN0QsY0FBYyxnREFBZ0QsQ0FBQztBQUMvRCxjQUFjLDhDQUE4QyxDQUFDO0FBQzdELGNBQWMseURBQXlELENBQUM7QUFDeEUsY0FBYywwREFBMEQsQ0FBQztBQUN6RSxjQUFjLDBEQUEwRCxDQUFDO0FBQ3pFLGNBQWMsOERBQThELENBQUM7QUFDN0UsY0FBYyw0Q0FBNEMsQ0FBQztBQUMzRCxjQUFjLGtEQUFrRCxDQUFDO0FBQ2pFLGNBQWMsb0RBQW9ELENBQUM7QUFDbkUsY0FBYywwQ0FBMEMsQ0FBQztBQUN6RCxjQUFjLDBEQUEwRCxDQUFDO0FBRXpFLGVBQWU7QUFDZixjQUFjLHlEQUF5RCxDQUFDO0FBQ3hFLGNBQWMseURBQXlELENBQUM7QUFDeEUsY0FBYyx5REFBeUQsQ0FBQztBQUV4RSxlQUFlO0FBQ2YsY0FBYyx1REFBdUQsQ0FBQztBQUN0RSxjQUFjLG1FQUFtRSxDQUFDO0FBQ2xGLGNBQWMsaUVBQWlFLENBQUM7QUFDaEYsY0FBYyx1REFBdUQsQ0FBQztBQUV0RSxRQUFRO0FBQ1IsY0FBYyx3REFBd0QsQ0FBQztBQUN2RSxjQUFjLGtEQUFrRCxDQUFDO0FBQ2pFLGNBQWMsa0RBQWtELENBQUM7QUFDakUsY0FBYywrQ0FBK0MsQ0FBQztBQUM5RCxjQUFjLGlFQUFpRSxDQUFDO0FBQ2hGLGNBQWMsNkRBQTZELENBQUM7QUFFNUUsUUFBUTtBQUNSLGNBQWMsMEJBQTBCLENBQUM7QUFDekMsY0FBYyxrQ0FBa0MsQ0FBQztBQUVqRCwrQ0FBK0M7QUFDL0MsY0FBYyxjQUFjLENBQUM7QUFDN0IsY0FBYyxhQUFhLENBQUM7QUFDNUIsY0FBYyxhQUFhLENBQUM7QUFDNUIsY0FBYyxtQ0FBbUMsQ0FBQztBQUVsRCxXQUFXO0FBQ1gsY0FBYyx5Q0FBeUMsQ0FBQztBQUN4RCxjQUFjLGdDQUFnQyxDQUFDO0FBRS9DLGNBQWMsNEJBQTRCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxyXG4gKiBQdWJsaWMgQVBJIFN1cmZhY2Ugb2YgQGluZGljZS9uZy1jb21wb25lbnRzXHJcbiAqL1xyXG5cclxuLy8gZGlyZWN0aXZlc1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9kaXJlY3RpdmVzL2NsaWNrLW91dHNpZGUuZGlyZWN0aXZlJztcclxuXHJcbi8vIGNvbnRyb2xzXHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbnRyb2xzL2Ryb3AtZG93bi1tZW51L2Ryb3AtZG93bi1tZW51LmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbnRyb2xzL3BhZ2VyL3BhZ2VyLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbnRyb2xzL2xpc3Qtdmlldy9saXN0LXZpZXcuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29udHJvbHMvbGlzdC12aWV3L2xpc3QtY29sdW1uLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbnRyb2xzL2xpc3Qtdmlldy9saXN0LXRpbGUuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29udHJvbHMvbGlzdC12aWV3L2xpc3QtZGV0YWlscy1zZWN0aW9uLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbnRyb2xzL2xpc3Qtdmlldy9saXN0LXZpZXctZW1wdHktc3RhdGUuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29udHJvbHMvc2tlbGV0b24tbG9hZGVyL3NrZWxldG9uLWxvYWRlci5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb250cm9scy9jb2xsYXBzaWJsZS1wYW5lbC9jb2xsYXBzaWJsZS1wYW5lbC5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb250cm9scy9rcGktdGlsZS9rcGktdGlsZS5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb250cm9scy9kYXRlLXBpY2tlci9kYXRlLXBpY2tlci5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb250cm9scy90b2FzdGVyL3RvYXN0ZXItY29udGFpbmVyLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbnRyb2xzL3RvYXN0ZXIvdG9hc3Rlci5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb250cm9scy9hdmF0YXItaW5pdGlhbHMvYXZhdGFyLWluaXRpYWxzLmNvbXBvbmVudCc7XHJcblxyXG4vLyBzaGVsbCBsYXlvdXRcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvbGF5b3V0cy9zaGVsbC9zaGVsbC1sYXlvdXQvc2hlbGwtbGF5b3V0LmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2xheW91dHMvc2hlbGwvc2hlbGwtaGVhZGVyL3NoZWxsLWhlYWRlci5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9sYXlvdXRzL3NoZWxsL3NoZWxsLWZvb3Rlci9zaGVsbC1mb290ZXIuY29tcG9uZW50JztcclxuXHJcbi8vIHZpZXcgbGF5b3V0c1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9sYXlvdXRzL3ZpZXdzL3ZpZXctbGF5b3V0L3ZpZXctbGF5b3V0LmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2xheW91dHMvdmlld3MvbW9kZWwtdmlldy1sYXlvdXQvbW9kZWwtdmlldy1sYXlvdXQuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvbGF5b3V0cy92aWV3cy9zaWRlLXZpZXctbGF5b3V0L3NpZGUtdmlldy1sYXlvdXQuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvbGF5b3V0cy92aWV3cy9mb3JtLWxheW91dC9mb3JtLWxheW91dC5jb21wb25lbnQnO1xyXG5cclxuLy8gcGFnZXNcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvcGFnZXMvYXV0aC9hdXRoLWNhbGxiYWNrL2F1dGgtY2FsbGJhY2suY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvcGFnZXMvYXV0aC9hdXRoLXJlbmV3L2F1dGgtcmVuZXcuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvcGFnZXMvYXV0aC9sb2dnZWQtb3V0L2xvZ2dlZC1vdXQuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvcGFnZXMvaHR0cC1zdGF0dXMvZXJyb3IvZXJyb3IuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvcGFnZXMvaHR0cC1zdGF0dXMvcGFnZS1ub3QtZm91bmQvcGFnZS1ub3QtZm91bmQuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvcGFnZXMvaHR0cC1zdGF0dXMvdW5hdXRob3JpemVkL3VuYXV0aG9yaXplZC5jb21wb25lbnQnO1xyXG5cclxuLy8gcGlwZXNcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvcGlwZXMvYWRkcmVzcy5waXBlJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvcGlwZXMvZHVyYXRpb24tZm9ybWF0LnBpcGUnO1xyXG5cclxuLy8gY29tbW9uIHN0dWZmICh0b2tlbnMsIHR5cGVzLCBoZWxwZXIgY2xhc3NlcylcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvdG9rZW5zJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvdHlwZXMnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9pY29ucyc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2hlbHBlcnMvYmFzZS1saXN0LmNvbXBvbmVudCc7XHJcblxyXG4vLyBzZXJ2aWNlc1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9zZXJ2aWNlcy9jb21wb25lbnQtbG9hZGVyLnNlcnZpY2UnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9zZXJ2aWNlcy90b2FzdGVyLnNlcnZpY2UnO1xyXG5cclxuZXhwb3J0ICogZnJvbSAnLi9saWIvbmctY29tcG9uZW50cy5tb2R1bGUnO1xyXG4iXX0=
50
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL25nLWNvbXBvbmVudHMvc3JjL3B1YmxpYy1hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFFSCxhQUFhO0FBQ2IsY0FBYywwQ0FBMEMsQ0FBQztBQUV6RCxXQUFXO0FBQ1gsY0FBYyx3REFBd0QsQ0FBQztBQUN2RSxjQUFjLHNDQUFzQyxDQUFDO0FBQ3JELGNBQWMsOENBQThDLENBQUM7QUFDN0QsY0FBYyxnREFBZ0QsQ0FBQztBQUMvRCxjQUFjLDhDQUE4QyxDQUFDO0FBQzdELGNBQWMseURBQXlELENBQUM7QUFDeEUsY0FBYywwREFBMEQsQ0FBQztBQUN6RSxjQUFjLDBEQUEwRCxDQUFDO0FBQ3pFLGNBQWMsOERBQThELENBQUM7QUFDN0UsY0FBYyw0Q0FBNEMsQ0FBQztBQUMzRCxjQUFjLGtEQUFrRCxDQUFDO0FBQ2pFLGNBQWMsb0RBQW9ELENBQUM7QUFDbkUsY0FBYywwQ0FBMEMsQ0FBQztBQUN6RCxjQUFjLDBEQUEwRCxDQUFDO0FBQ3pFLGNBQWMsd0NBQXdDLENBQUM7QUFFdkQsZUFBZTtBQUNmLGNBQWMseURBQXlELENBQUM7QUFDeEUsY0FBYyx5REFBeUQsQ0FBQztBQUN4RSxjQUFjLHlEQUF5RCxDQUFDO0FBRXhFLGVBQWU7QUFDZixjQUFjLHVEQUF1RCxDQUFDO0FBQ3RFLGNBQWMsbUVBQW1FLENBQUM7QUFDbEYsY0FBYyxpRUFBaUUsQ0FBQztBQUNoRixjQUFjLHVEQUF1RCxDQUFDO0FBRXRFLFFBQVE7QUFDUixjQUFjLHdEQUF3RCxDQUFDO0FBQ3ZFLGNBQWMsa0RBQWtELENBQUM7QUFDakUsY0FBYyxrREFBa0QsQ0FBQztBQUNqRSxjQUFjLCtDQUErQyxDQUFDO0FBQzlELGNBQWMsaUVBQWlFLENBQUM7QUFDaEYsY0FBYyw2REFBNkQsQ0FBQztBQUU1RSxRQUFRO0FBQ1IsY0FBYywwQkFBMEIsQ0FBQztBQUN6QyxjQUFjLGtDQUFrQyxDQUFDO0FBRWpELCtDQUErQztBQUMvQyxjQUFjLGNBQWMsQ0FBQztBQUM3QixjQUFjLGFBQWEsQ0FBQztBQUM1QixjQUFjLGFBQWEsQ0FBQztBQUM1QixjQUFjLG1DQUFtQyxDQUFDO0FBRWxELFdBQVc7QUFDWCxjQUFjLHlDQUF5QyxDQUFDO0FBQ3hELGNBQWMsZ0NBQWdDLENBQUM7QUFFL0MsY0FBYyw0QkFBNEIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qXHJcbiAqIFB1YmxpYyBBUEkgU3VyZmFjZSBvZiBAaW5kaWNlL25nLWNvbXBvbmVudHNcclxuICovXHJcblxyXG4vLyBkaXJlY3RpdmVzXHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2RpcmVjdGl2ZXMvY2xpY2stb3V0c2lkZS5kaXJlY3RpdmUnO1xyXG5cclxuLy8gY29udHJvbHNcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29udHJvbHMvZHJvcC1kb3duLW1lbnUvZHJvcC1kb3duLW1lbnUuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29udHJvbHMvcGFnZXIvcGFnZXIuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29udHJvbHMvbGlzdC12aWV3L2xpc3Qtdmlldy5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb250cm9scy9saXN0LXZpZXcvbGlzdC1jb2x1bW4uY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29udHJvbHMvbGlzdC12aWV3L2xpc3QtdGlsZS5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb250cm9scy9saXN0LXZpZXcvbGlzdC1kZXRhaWxzLXNlY3Rpb24uY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29udHJvbHMvbGlzdC12aWV3L2xpc3Qtdmlldy1lbXB0eS1zdGF0ZS5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb250cm9scy9za2VsZXRvbi1sb2FkZXIvc2tlbGV0b24tbG9hZGVyLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbnRyb2xzL2NvbGxhcHNpYmxlLXBhbmVsL2NvbGxhcHNpYmxlLXBhbmVsLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbnRyb2xzL2twaS10aWxlL2twaS10aWxlLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbnRyb2xzL2RhdGUtcGlja2VyL2RhdGUtcGlja2VyLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbnRyb2xzL3RvYXN0ZXIvdG9hc3Rlci1jb250YWluZXIuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29udHJvbHMvdG9hc3Rlci90b2FzdGVyLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbnRyb2xzL2F2YXRhci1pbml0aWFscy9hdmF0YXItaW5pdGlhbHMuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29udHJvbHMvdG9nZ2xlL3RvZ2dsZS5jb21wb25lbnQnO1xyXG5cclxuLy8gc2hlbGwgbGF5b3V0XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2xheW91dHMvc2hlbGwvc2hlbGwtbGF5b3V0L3NoZWxsLWxheW91dC5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9sYXlvdXRzL3NoZWxsL3NoZWxsLWhlYWRlci9zaGVsbC1oZWFkZXIuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvbGF5b3V0cy9zaGVsbC9zaGVsbC1mb290ZXIvc2hlbGwtZm9vdGVyLmNvbXBvbmVudCc7XHJcblxyXG4vLyB2aWV3IGxheW91dHNcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvbGF5b3V0cy92aWV3cy92aWV3LWxheW91dC92aWV3LWxheW91dC5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9sYXlvdXRzL3ZpZXdzL21vZGVsLXZpZXctbGF5b3V0L21vZGVsLXZpZXctbGF5b3V0LmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2xheW91dHMvdmlld3Mvc2lkZS12aWV3LWxheW91dC9zaWRlLXZpZXctbGF5b3V0LmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2xheW91dHMvdmlld3MvZm9ybS1sYXlvdXQvZm9ybS1sYXlvdXQuY29tcG9uZW50JztcclxuXHJcbi8vIHBhZ2VzXHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL3BhZ2VzL2F1dGgvYXV0aC1jYWxsYmFjay9hdXRoLWNhbGxiYWNrLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL3BhZ2VzL2F1dGgvYXV0aC1yZW5ldy9hdXRoLXJlbmV3LmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL3BhZ2VzL2F1dGgvbG9nZ2VkLW91dC9sb2dnZWQtb3V0LmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL3BhZ2VzL2h0dHAtc3RhdHVzL2Vycm9yL2Vycm9yLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL3BhZ2VzL2h0dHAtc3RhdHVzL3BhZ2Utbm90LWZvdW5kL3BhZ2Utbm90LWZvdW5kLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL3BhZ2VzL2h0dHAtc3RhdHVzL3VuYXV0aG9yaXplZC91bmF1dGhvcml6ZWQuY29tcG9uZW50JztcclxuXHJcbi8vIHBpcGVzXHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL3BpcGVzL2FkZHJlc3MucGlwZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL3BpcGVzL2R1cmF0aW9uLWZvcm1hdC5waXBlJztcclxuXHJcbi8vIGNvbW1vbiBzdHVmZiAodG9rZW5zLCB0eXBlcywgaGVscGVyIGNsYXNzZXMpXHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL3Rva2Vucyc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL3R5cGVzJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvaWNvbnMnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9oZWxwZXJzL2Jhc2UtbGlzdC5jb21wb25lbnQnO1xyXG5cclxuLy8gc2VydmljZXNcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvc2VydmljZXMvY29tcG9uZW50LWxvYWRlci5zZXJ2aWNlJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvc2VydmljZXMvdG9hc3Rlci5zZXJ2aWNlJztcclxuXHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL25nLWNvbXBvbmVudHMubW9kdWxlJztcclxuIl19
@@ -464,7 +464,7 @@ class PagerComponent {
464
464
  PagerComponent.decorators = [
465
465
  { type: Component, args: [{
466
466
  selector: 'lib-pager',
467
- template: "<div class=\"pager-container\">\r\n <div class=\"pager-container-inner\">\r\n <div class=\"inline-flex\" *ngIf=\"sortOptions && sortOptions.length > 0\">\r\n <lib-drop-down-menu [options]=\"sortOptions\" [selected]=\"sort\" (selectedChanged)=\"sortOptionChanged($event)\"></lib-drop-down-menu>\r\n <button (click)=\"toggleSortdir()\" class=\"pager-icon-button\">\r\n <span class=\"sr-only\">sort direction</span>\r\n <span class=\"inline-block relative\">\r\n <i [class]=\"sortdirIcon\"></i>\r\n </span>\r\n </button>\r\n </div>\r\n <div class=\"pager-pages-container\">\r\n <lib-drop-down-menu [options]=\"pageSizeOptions\" [selected]=\"pageSize\" (selectedChanged)=\"pageSizeOptionChanged($event)\"></lib-drop-down-menu>\r\n <div class=\"mx-2\">\r\n <button [disabled]=\"!canPreviousPage\" (click)=\"previousPage()\"\r\n class=\"pager-arrow-button-left\">\r\n <span class=\"sr-only\">Previous</span>\r\n <svg class=\"h-5 w-5\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 20 20\" fill=\"currentColor\" aria-hidden=\"true\">\r\n <path fill-rule=\"evenodd\" d=\"M12.707 5.293a1 1 0 010 1.414L9.414 10l3.293 3.293a1 1 0 01-1.414 1.414l-4-4a1 1 0 010-1.414l4-4a1 1 0 011.414 0z\" clip-rule=\"evenodd\" />\r\n </svg>\r\n </button>\r\n <button [disabled]=\"!canNextPage\" (click)=\"nextPage()\"\r\n class=\"pager-arrow-button-right\">\r\n <span class=\"sr-only\">Next</span>\r\n <svg class=\"h-5 w-5\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 20 20\" fill=\"currentColor\" aria-hidden=\"true\">\r\n <path fill-rule=\"evenodd\" d=\"M7.293 14.707a1 1 0 010-1.414L10.586 10 7.293 6.707a1 1 0 011.414-1.414l4 4a1 1 0 010 1.414l-4 4a1 1 0 01-1.414 0z\" clip-rule=\"evenodd\" />\r\n </svg>\r\n </button>\r\n </div>\r\n <lib-drop-down-menu *ngIf=\"pages && pages.length > 0\" [options]=\"pages\" [selected]=\"page\" (selectedChanged)=\"pageOptionChanged($event)\"></lib-drop-down-menu>\r\n </div>\r\n </div>\r\n</div>\r\n"
467
+ template: "<div class=\"pager-container\">\r\n <div class=\"pager-container-inner\">\r\n <div class=\"inline-flex\" *ngIf=\"sortOptions && sortOptions.length > 0\">\r\n <lib-drop-down-menu [options]=\"sortOptions\" [selected]=\"sort\" (selectedChanged)=\"sortOptionChanged($event)\"></lib-drop-down-menu>\r\n <button (click)=\"toggleSortdir()\" class=\"pager-icon-button\">\r\n <span class=\"sr-only\">sort direction</span>\r\n <span class=\"inline-block relative\">\r\n <i [class]=\"sortdirIcon\"></i>\r\n </span>\r\n </button>\r\n </div>\r\n <div class=\"pager-pages-container\">\r\n <lib-drop-down-menu [options]=\"pageSizeOptions\" [selected]=\"pageSize\" (selectedChanged)=\"pageSizeOptionChanged($event)\"></lib-drop-down-menu>\r\n <div class=\"mx-2\" *ngIf=\"count !== null && count > pageSize\">\r\n <button [disabled]=\"!canPreviousPage\" (click)=\"previousPage()\"\r\n class=\"pager-arrow-button-left\">\r\n <span class=\"sr-only\">Previous</span>\r\n <svg class=\"h-5 w-5\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 20 20\" fill=\"currentColor\" aria-hidden=\"true\">\r\n <path fill-rule=\"evenodd\" d=\"M12.707 5.293a1 1 0 010 1.414L9.414 10l3.293 3.293a1 1 0 01-1.414 1.414l-4-4a1 1 0 010-1.414l4-4a1 1 0 011.414 0z\" clip-rule=\"evenodd\" />\r\n </svg>\r\n </button>\r\n <button [disabled]=\"!canNextPage\" (click)=\"nextPage()\"\r\n class=\"pager-arrow-button-right\">\r\n <span class=\"sr-only\">Next</span>\r\n <svg class=\"h-5 w-5\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 20 20\" fill=\"currentColor\" aria-hidden=\"true\">\r\n <path fill-rule=\"evenodd\" d=\"M7.293 14.707a1 1 0 010-1.414L10.586 10 7.293 6.707a1 1 0 011.414-1.414l4 4a1 1 0 010 1.414l-4 4a1 1 0 01-1.414 0z\" clip-rule=\"evenodd\" />\r\n </svg>\r\n </button>\r\n </div>\r\n <lib-drop-down-menu *ngIf=\"(pages && pages.length > 0) && (count !== null && count > pageSize)\" [options]=\"pages\" [selected]=\"page\" (selectedChanged)=\"pageOptionChanged($event)\"></lib-drop-down-menu>\r\n </div>\r\n </div>\r\n</div>\r\n"
468
468
  },] }
469
469
  ];
470
470
  PagerComponent.ctorParameters = () => [
@@ -759,6 +759,7 @@ class DatepickerComponent {
759
759
  this.value = null;
760
760
  this.valueChange = new EventEmitter();
761
761
  this.showCalendar = false;
762
+ this.showYears = false;
762
763
  this.monthNames = [
763
764
  'Ιανουάριος',
764
765
  'Φεβρουάριος',
@@ -777,20 +778,41 @@ class DatepickerComponent {
777
778
  this.month = -1;
778
779
  this.year = -1;
779
780
  this.calendarDates = [];
781
+ this.calendarYears = [];
782
+ this.showCalendarYears = [];
780
783
  this.blankDays = [];
784
+ this.calendarYearPage = 1;
785
+ this.yearsPerPage = 30;
781
786
  this.onChange$ = undefined;
782
787
  this.onTouched$ = undefined;
783
788
  }
784
- compareDates(date1, day) {
789
+ ngOnInit() {
790
+ var _a, _b;
791
+ let today = new Date();
792
+ this.month = today.getMonth();
793
+ this.year = today.getFullYear();
794
+ this.calendarDates = [{ day: this.value, today: this.value, selected: this.value }];
795
+ this.calendarYears = [{ year: (_a = this.value) === null || _a === void 0 ? void 0 : _a.getFullYear(), today: this.value, selected: this.value }];
796
+ const yearsArray = [];
797
+ for (let i = 1950; i <= today.getFullYear() + 2; i++) {
798
+ yearsArray.push({ year: i, today: this.compareDates(today, null, i), selected: i == ((_b = this.value) === null || _b === void 0 ? void 0 : _b.getFullYear()) });
799
+ }
800
+ this.calendarYears = yearsArray;
801
+ this.showCalendarYears = this.paginate(this.calendarYears, 1);
802
+ this.calcDays();
803
+ }
804
+ compareDates(date1, day, year) {
805
+ var _a;
785
806
  if (!date1) {
786
807
  return false;
787
808
  }
788
- const d = new Date(this.year, this.month, day);
809
+ const d = new Date(year !== null && year !== void 0 ? year : this.year, this.month, day !== null && day !== void 0 ? day : (_a = this.value) === null || _a === void 0 ? void 0 : _a.getDay());
789
810
  return date1.toDateString() === d.toDateString();
790
811
  }
791
812
  ;
792
813
  selectDateValue(date) {
793
- let selectedDate = new Date(this.year, this.month, date.day);
814
+ // This should be in UTC
815
+ let selectedDate = new Date(this.year, this.month, date.day, 3, 0, 0, 0);
794
816
  this.value = selectedDate;
795
817
  this.valueChange.emit(this.value);
796
818
  if (this.onChange$) {
@@ -802,6 +824,21 @@ class DatepickerComponent {
802
824
  }
803
825
  this.showCalendar = false;
804
826
  }
827
+ selectYearValue(year) {
828
+ let selectedDate = new Date(year.year, 1, 1, 2, 0, 0, 0);
829
+ this.year = year.year;
830
+ this.value = selectedDate;
831
+ this.valueChange.emit(this.value);
832
+ if (this.onChange$) {
833
+ this.onChange$(this.value);
834
+ }
835
+ this.updateDays();
836
+ if (this.onTouched$) {
837
+ this.onTouched$();
838
+ }
839
+ this.showYears = false;
840
+ this.showCalendar = true;
841
+ }
805
842
  previousMonth() {
806
843
  if (this.month !== 0) {
807
844
  this.month = this.month - 1;
@@ -830,6 +867,20 @@ class DatepickerComponent {
830
867
  this.onTouched$();
831
868
  }
832
869
  }
870
+ previousYear() {
871
+ this.showCalendarYears = this.paginate(this.calendarYears, this.calendarYearPage > 1 ? --this.calendarYearPage : 1);
872
+ this.calcDays();
873
+ if (this.onTouched$) {
874
+ this.onTouched$();
875
+ }
876
+ }
877
+ nextYear() {
878
+ this.showCalendarYears = this.paginate(this.calendarYears, this.calendarYearPage <= this.calendarYears.length / this.yearsPerPage ? ++this.calendarYearPage : this.calendarYearPage);
879
+ this.calcDays();
880
+ if (this.onTouched$) {
881
+ this.onTouched$();
882
+ }
883
+ }
833
884
  calcDays() {
834
885
  const daysInMonth = new Date(this.year, this.month + 1, 0).getDate();
835
886
  // find where to start calendar day of week
@@ -841,17 +892,21 @@ class DatepickerComponent {
841
892
  const daysArray = [];
842
893
  const today = new Date();
843
894
  for (var i = 1; i <= daysInMonth; i++) {
844
- daysArray.push({ day: i, today: this.compareDates(today, i), selected: this.compareDates(this.value, i) });
895
+ daysArray.push({ day: i, today: this.compareDates(today, i, null), selected: this.compareDates(this.value, i, null) });
845
896
  }
897
+ const yearsArray = [];
898
+ for (let i = 1950; i <= today.getFullYear() + 2; i++) {
899
+ yearsArray.push({ year: i, today: this.compareDates(today, null, i), selected: i == this.year });
900
+ }
901
+ this.calendarYears = yearsArray;
846
902
  this.blankDays = blankdaysArray;
847
903
  this.calendarDates = daysArray;
848
904
  }
849
905
  updateDays() {
850
906
  const today = new Date();
851
907
  this.calendarDates.forEach(d => {
852
- d.today = this.compareDates(today, d);
853
- d.selected = this.compareDates(this.value, d);
854
- ;
908
+ d.today = this.compareDates(today, d, this.year);
909
+ d.selected = this.compareDates(this.value, d, this.year);
855
910
  });
856
911
  }
857
912
  writeValue(obj) {
@@ -872,17 +927,23 @@ class DatepickerComponent {
872
927
  this.onTouched$();
873
928
  }
874
929
  }
875
- ngOnInit() {
876
- let today = new Date();
877
- this.month = today.getMonth();
878
- this.year = today.getFullYear();
930
+ paginate(array, page_number) {
931
+ return array.slice((page_number - 1) * this.yearsPerPage, page_number * this.yearsPerPage);
932
+ }
933
+ openYears() {
934
+ this.showYears = !this.showYears;
935
+ this.showCalendarYears = this.paginate(this.calendarYears, 1);
936
+ this.calcDays();
937
+ }
938
+ openCalendar() {
939
+ this.showCalendar = !this.showCalendar;
879
940
  this.calcDays();
880
941
  }
881
942
  }
882
943
  DatepickerComponent.decorators = [
883
944
  { type: Component, args: [{
884
945
  selector: 'lib-date-picker',
885
- template: "<div class=\"relative flex\" (clickOutside)=\"showCalendar = false\">\r\n\r\n <input type=\"text\" #dateInput [readonly]=\"readonly\" name=\"dateInput\"\r\n (blur)=\"onBlur($event)\"\r\n id=\"dateInput\" [value]=\"value | date: displayFormat\" class=\"w-full focus:ring-0 focus:outline-none rounded-none sm:text-sm border-gray-300 focus:border-0\"\r\n [placeholder]=\"placeholder\">\r\n\r\n <button class=\"relative inline-flex items-center px-2 py-2 border border-gray-300 text-sm font-medium rounded-r-sm text-gray-700 bg-gray-50 hover:bg-gray-100 focus:outline-none focus:ring-1 focus:ring-gray-500 focus:border-gray-500\"\r\n (click)=\"openCalendar()\"><i class=\"ms-Icon ms-Icon--DateTime2\"></i>\r\n </button>\r\n\r\n <div *ngIf=\"showCalendar\" class=\"bg-gray-100 mt-10 rounded-sm shadow-md p-4 absolute left-0 z-50 w-full\" style=\"height:18rem;min-width:15rem;\">\r\n <div class=\"flex justify-between items-center mb-2\">\r\n <div>\r\n <span class=\"text-lg font-bold text-gray-800\">{{monthNames[month]}}</span>\r\n <span class=\"ml-1 text-lg text-gray-600 font-normal\">{{year}}</span>\r\n </div>\r\n <div>\r\n <button\r\n type=\"button\" class=\"transition ease-in-out duration-100 inline-flex cursor-pointer hover:bg-gray-200 p-1 rounded-full disabled:opacity-25\"\r\n (click)=\"previousMonth();\">\r\n <svg class=\"h-6 w-6 text-gray-500 inline-flex\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\">\r\n <path stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M15 19l-7-7 7-7\"/>\r\n </svg>\r\n </button>\r\n <button type=\"button\" class=\"transition ease-in-out duration-100 inline-flex cursor-pointer hover:bg-gray-200 p-1 rounded-full disabled:opacity-25\"\r\n (click)=\"nextMonth()\">\r\n <svg class=\"h-6 w-6 text-gray-500 inline-flex\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\">\r\n <path stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M9 5l7 7-7 7\"/>\r\n </svg>\r\n </button>\r\n </div>\r\n </div>\r\n\r\n <div class=\"flex flex-wrap mb-3 -mx-1\">\r\n <div *ngFor=\"let day of dayNames\" class=\"text-gray-800 font-medium text-center text-sm uppercase\" style=\"width: 14.28%\">{{day}}</div>\r\n </div>\r\n\r\n <div class=\"flex flex-wrap -mx-1\">\r\n <div *ngFor=\"let blankday of blankDays\" style=\"width: 14.28%\" class=\"text-center border p-1 border-transparent text-sm opacity-50\">{{blankday}}1</div>\r\n <div *ngFor=\"let date of calendarDates\" style=\"width: 14.28%\" class=\"px-1 mb-1\">\r\n <div (click)=\"selectDateValue(date)\" class=\"cursor-pointer text-center hover:text-white text-sm leading-none rounded-full leading-loose transition ease-in-out duration-100\"\r\n [class]=\"date.selected ? 'bg-gray-700 text-white' : 'text-gray-800 hover:bg-gray-800'\">{{date.day}}</div>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n</div>\r\n",
946
+ template: "<div class=\"relative flex\">\r\n\r\n <input type=\"text\"\r\n #dateInput\r\n [readonly]=\"readonly\"\r\n name=\"dateInput\"\r\n (blur)=\"onBlur($event)\"\r\n id=\"dateInput\"\r\n [value]=\"value | date: displayFormat\"\r\n class=\"w-full focus:ring-0 focus:outline-none rounded-none sm:text-sm border-gray-300 focus:border-0\"\r\n [ngClass]=\"{'cursor-not-allowed': disabled}\"\r\n [placeholder]=\"disabled ? '' : placeholder\">\r\n\r\n <button class=\"relative inline-flex items-center px-2 py-2 border border-gray-300 text-sm font-medium rounded-r-sm text-gray-700 bg-gray-50 hover:bg-gray-100 focus:outline-none focus:ring-1 focus:ring-gray-500 focus:border-gray-500\"\r\n [disabled]=\"disabled\"\r\n (click)=\"openCalendar()\"\r\n [ngClass]=\"{'cursor-not-allowed': disabled}\">\r\n <i class=\"ms-Icon ms-Icon--DateTime2\"></i>\r\n </button>\r\n\r\n <div *ngIf=\"showCalendar\"\r\n class=\"bg-gray-100 mt-10 rounded-sm shadow-md p-4 absolute left-0 z-50 w-full\"\r\n style=\"height:18rem;min-width:16rem;\">\r\n <div class=\"flex justify-between items-center mb-2\">\r\n <div>\r\n <button class=\"text-lg font-bold text-gray-800\"\r\n (click)=\"openYears()\">{{monthNames[month]}}</button>\r\n <button class=\"ml-1 text-lg text-gray-600 font-normal\"\r\n (click)=\"openYears()\">{{year}}</button>\r\n </div>\r\n <div *ngIf=\"!showYears; else showYearsPickerTmpl\">\r\n <button type=\"button\"\r\n class=\"transition ease-in-out duration-100 inline-flex cursor-pointer hover:bg-gray-200 p-1 rounded-full disabled:opacity-25\"\r\n (click)=\"previousMonth();\">\r\n <svg class=\"h-6 w-6 text-gray-500 inline-flex\"\r\n fill=\"none\"\r\n viewBox=\"0 0 24 24\"\r\n stroke=\"currentColor\">\r\n <path stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\"\r\n stroke-width=\"2\"\r\n d=\"M15 19l-7-7 7-7\" />\r\n </svg>\r\n </button>\r\n <button type=\"button\"\r\n class=\"transition ease-in-out duration-100 inline-flex cursor-pointer hover:bg-gray-200 p-1 rounded-full disabled:opacity-25\"\r\n (click)=\"nextMonth()\">\r\n <svg class=\"h-6 w-6 text-gray-500 inline-flex\"\r\n fill=\"none\"\r\n viewBox=\"0 0 24 24\"\r\n stroke=\"currentColor\">\r\n <path stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\"\r\n stroke-width=\"2\"\r\n d=\"M9 5l7 7-7 7\" />\r\n </svg>\r\n </button>\r\n </div>\r\n <ng-template #showYearsPickerTmpl>\r\n <div>\r\n <button type=\"button\"\r\n class=\"transition ease-in-out duration-100 inline-flex cursor-pointer hover:bg-gray-200 p-1 rounded-full disabled:opacity-25\"\r\n (click)=\"previousYear();\">\r\n <svg class=\"h-6 w-6 text-gray-500 inline-flex\"\r\n fill=\"none\"\r\n viewBox=\"0 0 24 24\"\r\n stroke=\"currentColor\">\r\n <path stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\"\r\n stroke-width=\"2\"\r\n d=\"M15 19l-7-7 7-7\" />\r\n </svg>\r\n </button>\r\n <button type=\"button\"\r\n class=\"transition ease-in-out duration-100 inline-flex cursor-pointer hover:bg-gray-200 p-1 rounded-full disabled:opacity-25\"\r\n (click)=\"nextYear()\">\r\n <svg class=\"h-6 w-6 text-gray-500 inline-flex\"\r\n fill=\"none\"\r\n viewBox=\"0 0 24 24\"\r\n stroke=\"currentColor\">\r\n <path stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\"\r\n stroke-width=\"2\"\r\n d=\"M9 5l7 7-7 7\" />\r\n </svg>\r\n </button>\r\n </div>\r\n </ng-template>\r\n </div>\r\n\r\n <div class=\"flex flex-wrap mb-3 -mx-1\"\r\n *ngIf=\"!showYears; else showCalYearsTmpl\">\r\n <div *ngFor=\"let day of dayNames\"\r\n class=\"text-gray-800 font-medium text-center text-sm uppercase\"\r\n style=\"width: 14.28%\">{{day}}</div>\r\n </div>\r\n\r\n <ng-template #showCalYearsTmpl>\r\n <div class=\"flex flex-wrap -mx-1\">\r\n <div *ngFor=\"let year of showCalendarYears\"\r\n style=\"width: 18.28%\"\r\n class=\"px-1 mb-1\">\r\n <div (click)=\"selectYearValue(year)\"\r\n class=\"cursor-pointer text-center hover:text-white text-sm leading-none rounded-full leading-loose transition ease-in-out duration-100\"\r\n [class]=\"year.selected ? 'bg-gray-700 text-white' : 'text-gray-800 hover:bg-gray-800'\">{{year.year}}</div>\r\n </div>\r\n </div>\r\n </ng-template>\r\n\r\n <div class=\"flex flex-wrap -mx-1\"\r\n *ngIf=\"!showYears\">\r\n <div *ngFor=\"let blankday of blankDays\"\r\n style=\"width: 14.28%\"\r\n class=\"text-center border p-1 border-transparent text-sm opacity-50\">{{blankday}}1</div>\r\n <div *ngFor=\"let date of calendarDates\"\r\n style=\"width: 14.28%\"\r\n class=\"px-1 mb-1\">\r\n <div (click)=\"selectDateValue(date)\"\r\n class=\"cursor-pointer text-center hover:text-white text-sm leading-none rounded-full leading-loose transition ease-in-out duration-100\"\r\n [class]=\"date.selected ? 'bg-gray-700 text-white' : 'text-gray-800 hover:bg-gray-800'\">{{date.day}}</div>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n</div>",
886
947
  providers: [
887
948
  {
888
949
  provide: NG_VALUE_ACCESSOR,
@@ -1021,6 +1082,61 @@ AvatarInitialsComponent.propDecorators = {
1021
1082
  large: [{ type: Input }]
1022
1083
  };
1023
1084
 
1085
+ class ToggleComponent {
1086
+ constructor() {
1087
+ this.valueChange = new EventEmitter();
1088
+ this.onChange$ = undefined;
1089
+ this.onTouched$ = undefined;
1090
+ }
1091
+ writeValue(obj) {
1092
+ if (obj) {
1093
+ this.value = obj || false;
1094
+ }
1095
+ }
1096
+ registerOnChange(fn) {
1097
+ this.onChange$ = fn;
1098
+ }
1099
+ registerOnTouched(fn) {
1100
+ this.onTouched$ = fn;
1101
+ }
1102
+ onBlur(event) {
1103
+ if (this.onTouched$) {
1104
+ this.onTouched$();
1105
+ }
1106
+ }
1107
+ ngOnInit() {
1108
+ }
1109
+ changeValue() {
1110
+ this.value = !this.value;
1111
+ this.valueChange.emit(this.value);
1112
+ if (this.onChange$) {
1113
+ this.onChange$(this.value);
1114
+ }
1115
+ if (this.onTouched$) {
1116
+ this.onTouched$();
1117
+ }
1118
+ }
1119
+ }
1120
+ ToggleComponent.decorators = [
1121
+ { type: Component, args: [{
1122
+ selector: 'lib-toggle',
1123
+ template: "<button type=\"button\"\n [ngClass]=\"value ? 'enabled' : 'disabled'\"\n class=\"toggle-button\"\n role=\"switch\"\n aria-checked=\"false\"\n aria-labelledby=\"isPrivate\"\n (click)=\"changeValue()\"\n (blur)=\"onBlur($event)\"\n value=\"{{value}}\"\n [disabled]=\"disabled\"\n [title]=\"disabled ? '\u03A4\u03BF \u03B1\u03C1\u03C7\u03B5\u03AF\u03BF \u03C0\u03C1\u03AD\u03C0\u03B5\u03B9 \u03BD\u03B1 \u03B5\u03AF\u03BD\u03B1\u03B9 \u03B9\u03B4\u03C9\u03C4\u03B9\u03BA\u03CC' : '\u0399\u03B4\u03B9\u03C9\u03C4\u03B9\u03BA\u03CC'\">\n <span aria-hidden=\"true\"\n [ngClass]=\"value ? 'enabled-anim' : 'disabled-anim'\"\n class=\"toggle-span\"></span>\n</button>",
1124
+ providers: [
1125
+ {
1126
+ provide: NG_VALUE_ACCESSOR,
1127
+ useExisting: forwardRef(() => ToggleComponent),
1128
+ multi: true
1129
+ }
1130
+ ]
1131
+ },] }
1132
+ ];
1133
+ ToggleComponent.ctorParameters = () => [];
1134
+ ToggleComponent.propDecorators = {
1135
+ value: [{ type: Input }],
1136
+ disabled: [{ type: Input }],
1137
+ valueChange: [{ type: Output }]
1138
+ };
1139
+
1024
1140
  const APP_LINKS = new InjectionToken('APP_LINKS');
1025
1141
  const SHELL_CONFIG = new InjectionToken('SHELL_CONFIG');
1026
1142
 
@@ -1943,8 +2059,10 @@ class SidePaneComponent {
1943
2059
  this.sizeContainerStyle = 'side-pane-box-size';
1944
2060
  this.overlayStyle = 'side-pane-overlay';
1945
2061
  }
1946
- ngOnDestroy() { }
1947
- ngOnInit() { }
2062
+ ngOnDestroy() {
2063
+ }
2064
+ ngOnInit() {
2065
+ }
1948
2066
  onSidePaneActivated(component) {
1949
2067
  var _a;
1950
2068
  this.document.body.classList.add('modal-active');
@@ -1975,7 +2093,6 @@ class SidePaneComponent {
1975
2093
  }
1976
2094
  }
1977
2095
  this.sizeContainerStyle = `side-pane-box-size${sizeStyleSuffix}`;
1978
- console.log('SidePaneComponent:activateRoute.data', 'calculated container style: ', this.sizeContainerStyle, 'overlay type: ', this.overlayStyle);
1979
2096
  this.showPane = true;
1980
2097
  }
1981
2098
  onSidePaneDeactivated($event) {
@@ -2026,6 +2143,7 @@ IndiceComponentsModule.decorators = [
2026
2143
  SidePaneComponent,
2027
2144
  DatepickerComponent,
2028
2145
  AvatarInitialsComponent,
2146
+ ToggleComponent,
2029
2147
  // Toaster
2030
2148
  ToasterContainerComponent,
2031
2149
  ToasterComponent,
@@ -2085,7 +2203,8 @@ IndiceComponentsModule.decorators = [
2085
2203
  DatepickerComponent,
2086
2204
  ToasterContainerComponent,
2087
2205
  ToasterComponent,
2088
- AvatarInitialsComponent
2206
+ AvatarInitialsComponent,
2207
+ ToggleComponent
2089
2208
  ]
2090
2209
  },] }
2091
2210
  ];
@@ -2098,5 +2217,5 @@ IndiceComponentsModule.decorators = [
2098
2217
  * Generated bundle index. Do not edit.
2099
2218
  */
2100
2219
 
2101
- export { APP_LINKS, AddressPipe, AuthCallbackComponent, AuthRenewComponent, AvatarInitialsComponent, BaseListComponent, ClickOutsideDirective, CollapsiblePanelComponent, ComponentLoaderService, DatepickerComponent, DefaultShellConfig, DropDownMenuComponent, DurationFormatPipe, ErrorComponent, ExternalNavLink, FormLayoutComponent, FragmentNavLink, HeaderMetaItem, Icons, IndiceComponentsModule, KpiTileComponent, ListColumnComponent, ListDetailsSectionComponent, ListTileComponent, ListViewComponent, ListViewEmptyStateComponent, ListViewType, LoggedOutComponent, MenuOption, ModelViewLayoutComponent, NULL_TOAST, NavLink, PageNotFoundComponent, PagerComponent, RouterViewAction, SCREEN_SIZE, SHELL_CONFIG, ShellFooterComponent, ShellHeaderComponent, ShellLayoutComponent, SidePaneOverlayType, SidePaneSize, SideViewLayoutComponent, SkeletonLoaderComponent, SwitchViewAction, ToastType, ToasterComponent, ToasterContainerComponent, ToasterService, UnauthorizedComponent, ViewAction, ViewLayoutComponent, DynamicComponentHostDirective as ɵa, SidePaneComponent as ɵb };
2220
+ export { APP_LINKS, AddressPipe, AuthCallbackComponent, AuthRenewComponent, AvatarInitialsComponent, BaseListComponent, ClickOutsideDirective, CollapsiblePanelComponent, ComponentLoaderService, DatepickerComponent, DefaultShellConfig, DropDownMenuComponent, DurationFormatPipe, ErrorComponent, ExternalNavLink, FormLayoutComponent, FragmentNavLink, HeaderMetaItem, Icons, IndiceComponentsModule, KpiTileComponent, ListColumnComponent, ListDetailsSectionComponent, ListTileComponent, ListViewComponent, ListViewEmptyStateComponent, ListViewType, LoggedOutComponent, MenuOption, ModelViewLayoutComponent, NULL_TOAST, NavLink, PageNotFoundComponent, PagerComponent, RouterViewAction, SCREEN_SIZE, SHELL_CONFIG, ShellFooterComponent, ShellHeaderComponent, ShellLayoutComponent, SidePaneOverlayType, SidePaneSize, SideViewLayoutComponent, SkeletonLoaderComponent, SwitchViewAction, ToastType, ToasterComponent, ToasterContainerComponent, ToasterService, ToggleComponent, UnauthorizedComponent, ViewAction, ViewLayoutComponent, DynamicComponentHostDirective as ɵa, SidePaneComponent as ɵb };
2102
2221
  //# sourceMappingURL=indice-ng-components.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"indice-ng-components.js","sources":["../../../projects/ng-components/src/lib/directives/click-outside.directive.ts","../../../projects/ng-components/src/lib/controls/drop-down-menu/drop-down-menu.component.ts","../../../projects/ng-components/src/lib/icons.ts","../../../projects/ng-components/src/lib/types.ts","../../../projects/ng-components/src/lib/controls/pager/pager.component.ts","../../../projects/ng-components/src/lib/controls/list-view/list-tile.component.ts","../../../projects/ng-components/src/lib/controls/list-view/list-column.component.ts","../../../projects/ng-components/src/lib/controls/list-view/list-details-section.component.ts","../../../projects/ng-components/src/lib/controls/list-view/list-view.component.ts","../../../projects/ng-components/src/lib/controls/list-view/list-view-empty-state.component.ts","../../../projects/ng-components/src/lib/controls/skeleton-loader/skeleton-loader.component.ts","../../../projects/ng-components/src/lib/controls/collapsible-panel/collapsible-panel.component.ts","../../../projects/ng-components/src/lib/controls/kpi-tile/kpi-tile.component.ts","../../../projects/ng-components/src/lib/controls/date-picker/date-picker.component.ts","../../../projects/ng-components/src/lib/services/toaster.service.ts","../../../projects/ng-components/src/lib/controls/toaster/toaster-container.component.ts","../../../projects/ng-components/src/lib/controls/toaster/toaster.component.ts","../../../projects/ng-components/src/lib/controls/avatar-initials/avatar-initials.component.ts","../../../projects/ng-components/src/lib/tokens.ts","../../../projects/ng-components/src/lib/services/component-loader.service.ts","../../../projects/ng-components/src/lib/directives/dynamic-component-host.directive.ts","../../../projects/ng-components/src/lib/layouts/shell/shell-layout/shell-layout.component.ts","../../../projects/ng-components/src/lib/layouts/shell/shell-header/shell-header.component.ts","../../../projects/ng-components/src/lib/layouts/shell/shell-footer/shell-footer.component.ts","../../../projects/ng-components/src/lib/layouts/views/view-layout/view-layout.component.ts","../../../projects/ng-components/src/lib/layouts/views/model-view-layout/model-view-layout.component.ts","../../../projects/ng-components/src/lib/layouts/views/side-view-layout/side-view-layout.component.ts","../../../projects/ng-components/src/lib/layouts/views/form-layout/form-layout.component.ts","../../../projects/ng-components/src/lib/pages/auth/auth-callback/auth-callback.component.ts","../../../projects/ng-components/src/lib/pages/auth/auth-renew/auth-renew.component.ts","../../../projects/ng-components/src/lib/pages/auth/logged-out/logged-out.component.ts","../../../projects/ng-components/src/lib/pages/http-status/error/error.component.ts","../../../projects/ng-components/src/lib/pages/http-status/page-not-found/page-not-found.component.ts","../../../projects/ng-components/src/lib/pages/http-status/unauthorized/unauthorized.component.ts","../../../projects/ng-components/src/lib/pipes/address.pipe.ts","../../../projects/ng-components/src/lib/pipes/duration-format.pipe.ts","../../../projects/ng-components/src/lib/helpers/base-list.component.ts","../../../projects/ng-components/src/lib/controls/side-pane/side-pane.component.ts","../../../projects/ng-components/src/lib/ng-components.module.ts","../../../projects/ng-components/src/public-api.ts","../../../projects/ng-components/src/indice-ng-components.ts"],"sourcesContent":["//\r\n// https://github.com/arkon/ng-click-outside\r\n// the project is inactive - so imoved the directive code in our project\r\n//\r\nimport {\r\n Directive,\r\n ElementRef,\r\n EventEmitter,\r\n Inject,\r\n Input,\r\n OnChanges,\r\n OnDestroy,\r\n OnInit,\r\n Output,\r\n PLATFORM_ID,\r\n SimpleChanges,\r\n NgZone,\r\n} from '@angular/core';\r\nimport { isPlatformBrowser } from '@angular/common';\r\n\r\n// tslint:disable-next-line:directive-selector\r\n@Directive({ selector: '[clickOutside]' })\r\nexport class ClickOutsideDirective implements OnInit, OnChanges, OnDestroy {\r\n\r\n @Input() clickOutsideEnabled = true;\r\n\r\n @Input() attachOutsideOnClick = false;\r\n @Input() delayClickOutsideInit = false;\r\n @Input() emitOnBlur = false;\r\n\r\n @Input() exclude = '';\r\n @Input() excludeBeforeClick = false;\r\n\r\n @Input() clickOutsideEvents = '';\r\n\r\n @Output() clickOutside: EventEmitter<Event> = new EventEmitter<Event>();\r\n\r\n // tslint:disable-next-line:variable-name\r\n private _nodesExcluded: Array<HTMLElement> = [];\r\n // tslint:disable-next-line:variable-name\r\n private _events: Array<string> = ['click'];\r\n\r\n constructor(\r\n // tslint:disable-next-line:variable-name\r\n private _el: ElementRef,\r\n // tslint:disable-next-line:variable-name\r\n private _ngZone: NgZone,\r\n @Inject(PLATFORM_ID) private platformId: any) {\r\n this._initOnClickBody = this._initOnClickBody.bind(this);\r\n this._onClickBody = this._onClickBody.bind(this);\r\n this._onWindowBlur = this._onWindowBlur.bind(this);\r\n }\r\n\r\n ngOnInit(): void {\r\n if (!isPlatformBrowser(this.platformId)) { return; }\r\n\r\n this._init();\r\n }\r\n\r\n ngOnDestroy(): void {\r\n if (!isPlatformBrowser(this.platformId)) { return; }\r\n\r\n this._removeClickOutsideListener();\r\n this._removeAttachOutsideOnClickListener();\r\n this._removeWindowBlurListener();\r\n }\r\n\r\n ngOnChanges(changes: SimpleChanges): void {\r\n if (!isPlatformBrowser(this.platformId)) { return; }\r\n\r\n // tslint:disable-next-line:no-string-literal\r\n if (changes['attachOutsideOnClick'] || changes['exclude'] || changes['emitOnBlur']) {\r\n this._init();\r\n }\r\n }\r\n\r\n private _init(): void {\r\n if (this.clickOutsideEvents !== '') {\r\n this._events = this.clickOutsideEvents.split(',').map(e => e.trim());\r\n }\r\n\r\n this._excludeCheck();\r\n\r\n if (this.attachOutsideOnClick) {\r\n this._initAttachOutsideOnClickListener();\r\n } else {\r\n this._initOnClickBody();\r\n }\r\n\r\n if (this.emitOnBlur) {\r\n this._initWindowBlurListener();\r\n }\r\n }\r\n\r\n private _initOnClickBody(): void {\r\n if (this.delayClickOutsideInit) {\r\n setTimeout(this._initClickOutsideListener.bind(this));\r\n } else {\r\n this._initClickOutsideListener();\r\n }\r\n }\r\n\r\n private _excludeCheck(): void {\r\n if (this.exclude) {\r\n try {\r\n const nodes = Array.from(document.querySelectorAll(this.exclude)) as Array<HTMLElement>;\r\n if (nodes) {\r\n this._nodesExcluded = nodes;\r\n }\r\n } catch (err) {\r\n console.error('[ng-click-outside] Check your exclude selector syntax.', err);\r\n }\r\n }\r\n }\r\n\r\n private _onClickBody(ev: Event): void {\r\n if (!this.clickOutsideEnabled) { return; }\r\n\r\n if (this.excludeBeforeClick) {\r\n this._excludeCheck();\r\n }\r\n\r\n if (!this._el.nativeElement.contains(ev.target) && !this._shouldExclude(ev.target)) {\r\n this._emit(ev);\r\n\r\n if (this.attachOutsideOnClick) {\r\n this._removeClickOutsideListener();\r\n }\r\n }\r\n }\r\n\r\n /**\r\n * Resolves problem with outside click on iframe\r\n * @see https://github.com/arkon/ng-click-outside/issues/32\r\n */\r\n private _onWindowBlur(ev: Event): void {\r\n setTimeout(() => {\r\n if (!document.hidden) {\r\n this._emit(ev);\r\n }\r\n });\r\n }\r\n\r\n private _emit(ev: Event): void {\r\n if (!this.clickOutsideEnabled) { return; }\r\n\r\n this._ngZone.run(() => this.clickOutside.emit(ev));\r\n }\r\n\r\n private _shouldExclude(target: any): boolean {\r\n // tslint:disable-next-line:prefer-const\r\n for (let excludedNode of this._nodesExcluded) {\r\n if (excludedNode.contains(target)) {\r\n return true;\r\n }\r\n }\r\n\r\n return false;\r\n }\r\n\r\n private _initClickOutsideListener(): void {\r\n this._ngZone.runOutsideAngular(() => {\r\n this._events.forEach(e => document.addEventListener(e, this._onClickBody));\r\n });\r\n }\r\n\r\n private _removeClickOutsideListener(): void {\r\n this._ngZone.runOutsideAngular(() => {\r\n this._events.forEach(e => document.removeEventListener(e, this._onClickBody));\r\n });\r\n }\r\n\r\n private _initAttachOutsideOnClickListener(): void {\r\n this._ngZone.runOutsideAngular(() => {\r\n this._events.forEach(e => this._el.nativeElement.addEventListener(e, this._initOnClickBody));\r\n });\r\n }\r\n\r\n private _removeAttachOutsideOnClickListener(): void {\r\n this._ngZone.runOutsideAngular(() => {\r\n this._events.forEach(e => this._el.nativeElement.removeEventListener(e, this._initOnClickBody));\r\n });\r\n }\r\n\r\n private _initWindowBlurListener(): void {\r\n this._ngZone.runOutsideAngular(() => {\r\n window.addEventListener('blur', this._onWindowBlur);\r\n });\r\n }\r\n\r\n private _removeWindowBlurListener(): void {\r\n this._ngZone.runOutsideAngular(() => {\r\n window.removeEventListener('blur', this._onWindowBlur);\r\n });\r\n }\r\n}\r\n","import { Component, EventEmitter, Input, OnChanges, OnInit, Output, SimpleChanges } from '@angular/core';\r\nimport { MenuOption } from '../../types';\r\n\r\n@Component({\r\n // tslint:disable-next-line:component-selector\r\n selector: 'lib-drop-down-menu',\r\n templateUrl: './drop-down-menu.component.html'\r\n})\r\nexport class DropDownMenuComponent implements OnInit, OnChanges {\r\n @Input() options: MenuOption[] = [];\r\n // tslint:disable-next-line:no-input-rename\r\n @Input('selected') selectedValue: any | null = null;\r\n @Input() multiple = false;\r\n\r\n private selectedOption$: MenuOption | null = null;\r\n public get selectedOption(): MenuOption | null {\r\n return this.selectedOption$;\r\n }\r\n public set selectedOption(option: MenuOption | null) {\r\n this.selectedOption$ = option;\r\n this.selectedValue = option ? option.value : null;\r\n this.expanded = false;\r\n }\r\n\r\n @Output() selectedChange: EventEmitter<any> = new EventEmitter<any>();\r\n @Output() selectedChanged: EventEmitter<any> = new EventEmitter<any>();\r\n\r\n private expanded$ = false;\r\n public get expanded(): boolean {\r\n return this.expanded$;\r\n }\r\n public set expanded(value: boolean) {\r\n this.expanded$ = value;\r\n }\r\n constructor() { }\r\n\r\n ngOnChanges(changes: SimpleChanges): void {\r\n if (this.options && this.options.length > 0 && this.selectedValue !== null && this.selectedValue !== undefined) {\r\n this.selectedOption$ = this.options.filter(o => o.value === this.selectedValue)[0];\r\n }\r\n }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n public isSelected(option: MenuOption): boolean {\r\n return option != null && this.selectedValue != null && option.value === this.selectedValue;\r\n }\r\n\r\n public onClickOutside($event: any): void {\r\n this.expanded = false;\r\n }\r\n\r\n public selectOption(option: MenuOption): void {\r\n this.selectedOption = option;\r\n this.selectedChange.emit(option.value);\r\n this.selectedChanged.emit(option.value);\r\n }\r\n\r\n}\r\n","export class Icons {\r\n // https://uifabricicons.azurewebsites.net/\r\n public static Dashboard = `ms-Icon ms-Icon--HomeGroup `;\r\n public static Locations = `ms-Icon ms-Icon--MapPin `;\r\n public static ChargePoints = `ms-Icon ms-Icon--ChatBot `;\r\n public static Transations = `ms-Icon ms-Icon--PaymentCard `;\r\n public static Badges = `ms-Icon ms-Icon--IDBadge `;\r\n\r\n public static Information = `ms-Icon ms-Icon--Info`;\r\n public static Refresh = `ms-Icon ms-Icon--Refresh`;\r\n public static Search = `ms-Icon ms-Icon--Search`;\r\n public static Add = `ms-Icon ms-Icon--Add`;\r\n public static Filter = `ms-Icon ms-Icon--Filter`;\r\n\r\n public static TilesView = `ms-Icon ms-Icon--AppIconDefault`;\r\n public static TableView = `ms-Icon ms-Icon--Table`;\r\n public static MapView = `ms-Icon ms-Icon--MapPin`;\r\n public static EntryView = `ms-Icon ms-Icon--EntryView`;\r\n\r\n public static Separator = `ms-Icon ms-Icon--Separator text-white`;\r\n\r\n public static ItemsCount = 'ms-Icon ms-Icon--Boards';\r\n\r\n public static Heart = 'ms-Icon ms-Icon--Heart';\r\n public static HeartBroken = 'ms-Icon ms-Icon--HeartBroken';\r\n public static DateTime = 'ms-Icon ms-Icon--ReminderTime';\r\n\r\n public static Expand = 'ms-Icon ms-Icon--ChevronDown';\r\n public static Collapse = 'ms-Icon ms-Icon--ChevronUp';\r\n\r\n public static SortAsc = 'ms-Icon ms-Icon--Ascending';\r\n public static SortDesc = 'ms-Icon ms-Icon--Descending';\r\n\r\n public static Details = ' ms-Icon ms-Icon--AccountActivity'\r\n}\r\n","export interface IAppLinks {\r\n public: NavLink[];\r\n main: NavLink[];\r\n profile: NavLink[];\r\n profileActions: NavLink[];\r\n legal: NavLink[];\r\n brand: NavLink[];\r\n}\r\n\r\n\r\nexport class NavLink {\r\n constructor(text: string, path: string, exact: boolean = false, external: boolean = false, icon?: string) {\r\n this.text = text;\r\n this.path = path;\r\n this.exact = exact;\r\n this.external = external;\r\n this.icon = icon;\r\n }\r\n public text: string;\r\n public path: string;\r\n public exact: boolean;\r\n public external: boolean;\r\n public icon: string | undefined;\r\n}\r\n\r\nexport class ExternalNavLink extends NavLink {\r\n constructor(text: string, path: string, icon?: string) {\r\n super(text, path, true, true, icon);\r\n }\r\n}\r\n\r\nexport class FragmentNavLink extends NavLink {\r\n constructor(text: string, path: string, icon?: string) {\r\n super(text, path, true, true, icon);\r\n }\r\n}\r\n\r\nexport class ViewAction {\r\n public type: string;\r\n public key: string | null;\r\n public param: any;\r\n public icon: string;\r\n public tooltip: string | null;\r\n\r\n constructor(type: string, key: string | null, param: any, icon: string, tooltip: string | null) {\r\n this.type = type;\r\n this.key = key;\r\n this.param = param;\r\n this.icon = icon;\r\n this.tooltip = tooltip;\r\n }\r\n}\r\n\r\nexport class ListViewType {\r\n public static Tiles = 'tiles';\r\n public static Table = 'table';\r\n public static Map = 'map';\r\n}\r\n\r\nexport class RouterViewAction extends ViewAction {\r\n public outlet: string | null = null;\r\n public link: string | null = null;\r\n constructor(icon: string, link: string, outlet: string | null, tooltip: string | null) {\r\n super('router-link', null, null, icon, tooltip);\r\n this.outlet = outlet;\r\n this.link = link;\r\n }\r\n}\r\n\r\n\r\nexport class SwitchViewAction extends ViewAction {\r\n constructor(view: string, icon: string, tooltip: string | null) {\r\n super('switch-view', null, view, icon, tooltip);\r\n }\r\n}\r\n\r\nexport interface IResultSet<T> {\r\n count: number;\r\n items: T[];\r\n}\r\n\r\nexport class HeaderMetaItem {\r\n public key: string | null = null;\r\n public icon: string | null = null;\r\n public text: string | null = null;\r\n}\r\n\r\nexport class MenuOption {\r\n constructor(text: string, value: any, description?: string, data?: any, icon?: string) {\r\n this.text = text;\r\n this.value = value;\r\n this.description = description;\r\n this.data = data;\r\n this.icon = icon;\r\n }\r\n public text: string;\r\n public value: any;\r\n public description: string | undefined;\r\n public data: any | undefined;\r\n public icon: string | undefined;\r\n}\r\n\r\nexport interface IAddress {\r\n id?: string;\r\n street?: string | null;\r\n streetNumber?: string | null;\r\n city?: string | null;\r\n region?: string | null;\r\n postalCode?: string | null;\r\n country?: string | null;\r\n}\r\n\r\nexport interface IShellConfig {\r\n appLogo: string;\r\n appLogoAlt: string;\r\n showHeader: boolean;\r\n customHeaderComponent?: any;\r\n showFooter: boolean;\r\n customFooterComponent?: any;\r\n fluid: boolean;\r\n}\r\n\r\nexport class DefaultShellConfig implements IShellConfig {\r\n appLogo = 'https://tailwindui.com/img/logos/workflow-mark.svg?color=white';\r\n appLogoAlt = 'your app name here';\r\n showHeader = true;\r\n showFooter = true;\r\n fluid = false;\r\n}\r\n\r\nexport enum SCREEN_SIZE {\r\n XS,\r\n SM,\r\n MD,\r\n LG,\r\n XL\r\n}\r\n\r\nexport interface IScreenSize {\r\n id: SCREEN_SIZE;\r\n name: string;\r\n css: string;\r\n}\r\n\r\nexport enum ToastType {\r\n Info = 'info',\r\n Success = 'success',\r\n Error = 'error',\r\n Warning = 'warning'\r\n}\r\n\r\nexport const NULL_TOAST = { title : '_____NULL_____' } as Toast;\r\n\r\nexport interface Toast {\r\n type: ToastType;\r\n title: string;\r\n body: string;\r\n delay: number;\r\n}\r\n\r\nexport enum SidePaneSize {\r\n Default = '',\r\n Small25 = '25%',\r\n Medium50 = '50%',\r\n Large75 = '75%'\r\n}\r\n\r\nexport enum SidePaneOverlayType {\r\n Default = '',\r\n None = '-opacity-0',\r\n Light = '',\r\n Dark = '-opacity-50'\r\n}\r\n\r\n","import { Component, EventEmitter, Input, OnChanges, OnInit, Output, SimpleChanges } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { Icons } from '../../icons';\r\nimport { MenuOption } from '../../types';\r\n\r\n@Component({\r\n selector: 'lib-pager',\r\n templateUrl: './pager.component.html'\r\n})\r\nexport class PagerComponent implements OnInit, OnChanges {\r\n // PAGING\r\n @Input() count: number | null = null;\r\n @Input() page = 1;\r\n // tslint:disable-next-line:no-input-rename\r\n @Input('page-size') pageSize = 20;\r\n // tslint:disable-next-line:no-input-rename\r\n @Input('page-size-options') pageSizeOptions: MenuOption[] = [\r\n new MenuOption('10', 10),\r\n new MenuOption('20', 20),\r\n new MenuOption('30', 30),\r\n new MenuOption('50', 50),\r\n new MenuOption('100', 100)\r\n ];\r\n public pages: MenuOption[] = [];\r\n @Output() pageChanged: EventEmitter<number> = new EventEmitter<number>();\r\n @Output() pageSizeChanged: EventEmitter<number> = new EventEmitter<number>();\r\n public canPreviousPage = false;\r\n public canNextPage = false;\r\n\r\n // SORTING\r\n // tslint:disable-next-line:no-input-rename\r\n @Input('sort-options') sortOptions: MenuOption[] = [];\r\n // tslint:disable-next-line:no-input-rename\r\n @Input('sort') sort: string | null = null;\r\n // tslint:disable-next-line:no-input-rename\r\n @Input('sort-dir') sortdir: string | null = 'desc';\r\n @Output() sortChanged: EventEmitter<string> = new EventEmitter<string>();\r\n @Output() sortdirChanged: EventEmitter<string> = new EventEmitter<string>();\r\n public sortdirIcon = Icons.SortDesc;\r\n\r\n constructor(private router: Router) { }\r\n\r\n ngOnChanges(changes: SimpleChanges): void {\r\n this.calcPages();\r\n }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n private calcPages(): void {\r\n this.pages = [];\r\n if (this.count && this.count > 0) {\r\n const pageCount = this.count / this.pageSize;\r\n for (let i = 0; i < pageCount; i++) {\r\n this.pages.push(new MenuOption(i + 1 + '', i + 1));\r\n }\r\n }\r\n this.canPreviousPage = this.page > 1;\r\n this.canNextPage = this.page < this.pages.length;\r\n //console.log('calcPages', this.page, this.canPreviousPage, this.canNextPage);\r\n }\r\n\r\n public nextPage(): void {\r\n const next = this.page + 1;\r\n this.gotoPage(next);\r\n }\r\n\r\n public previousPage(): void {\r\n const previous = this.page - 1;\r\n this.gotoPage(previous);\r\n }\r\n\r\n public gotoPage(page: number): void {\r\n this.page = page;\r\n this.pageChanged.emit(page);\r\n this.calcPages();\r\n }\r\n\r\n public pageSizeOptionChanged(pageSize: number): void {\r\n this.pageSizeChanged.emit(pageSize);\r\n this.calcPages();\r\n }\r\n\r\n public pageOptionChanged(page: number): void {\r\n this.pageChanged.emit(page);\r\n this.calcPages();\r\n }\r\n\r\n public sortOptionChanged(sort: string): void {\r\n this.sortChanged.emit(sort);\r\n }\r\n\r\n public toggleSortdir(): void {\r\n //console.log('toggleSortdir');\r\n let sortdir = 'desc';\r\n if (this.sortdir === 'desc') {\r\n sortdir = 'asc';\r\n this.sortdirIcon = Icons.SortAsc;\r\n } else {\r\n sortdir = 'desc';\r\n this.sortdirIcon = Icons.SortDesc;\r\n }\r\n this.sortdirChanged.emit(sortdir);\r\n }\r\n\r\n}\r\n","import { Component, ContentChild, Input, OnInit, TemplateRef } from '@angular/core';\r\n\r\n@Component({ selector: 'lib-list-tile', template: '<ng-content></ng-content>' })\r\nexport class ListTileComponent{\r\n @ContentChild(TemplateRef) template: any | null = null;\r\n constructor() {\r\n }\r\n}\r\n","import { Component, ContentChild, Input, OnInit, TemplateRef } from '@angular/core';\r\n\r\n@Component({selector: 'lib-list-column', template: '<ng-content></ng-content>'})\r\nexport class ListColumnComponent {\r\n @Input() title: string | null = null;\r\n // tslint:disable-next-line:no-input-rename\r\n @Input('full-width') fullWidth = false;\r\n @ContentChild(TemplateRef) template: any | null = null;\r\n constructor() { }\r\n}\r\n","import { Component, ContentChild, Input, OnInit, TemplateRef } from '@angular/core';\r\n\r\n@Component({ selector: 'lib-list-details-section', template: '<ng-content></ng-content>' })\r\nexport class ListDetailsSectionComponent{\r\n @ContentChild(TemplateRef) template: any | null = null;\r\n constructor() {\r\n }\r\n}\r\n","import { Component, ContentChild, ContentChildren, EventEmitter, Input, Output, QueryList, OnChanges, SimpleChanges } from '@angular/core';\r\nimport { MenuOption, ListViewType } from '../../types';\r\nimport { ListTileComponent } from './list-tile.component';\r\nimport { ListColumnComponent } from './list-column.component';\r\nimport { ListDetailsSectionComponent } from './list-details-section.component';\r\nimport { Icons } from '../../icons';\r\n\r\n@Component({\r\n selector: 'lib-list-view',\r\n templateUrl: './list-view.component.html'\r\n})\r\nexport class ListViewComponent implements OnChanges {\r\n public expandIcon = Icons.Expand;\r\n public collapseIcon = Icons.Collapse;\r\n // tslint:disable-next-line:no-input-rename\r\n @Input('show-pager') showPager = true;\r\n // DATA SOURCE!\r\n @Input() items: any[] | null | undefined;\r\n\r\n // PAGING - pass through for pager component\r\n @Input() count: number | null = null;\r\n @Input() page = 1;\r\n // tslint:disable-next-line:no-input-rename\r\n @Input('page-size') pageSize = 20;\r\n // tslint:disable-next-line:no-input-rename\r\n @Input('page-size-options') pageSizeOptions: MenuOption[] = [];\r\n @Output() pageChanged: EventEmitter<number> = new EventEmitter<number>();\r\n @Output() pageSizeChanged: EventEmitter<number> = new EventEmitter<number>();\r\n @Output() detailsOpened: EventEmitter<{item: any, open: boolean}> = new EventEmitter<{item: any, open: boolean}>();\r\n\r\n public tableViewSupported = false;\r\n private multipleFullWidth = false;\r\n public fullWidthTHClass = 'list-view-th-full';\r\n public fullWidthTDClass = 'list-view-td-full';\r\n public tilesViewSupported = false;\r\n public detailsSectionSupported = false;\r\n\r\n @Input() view = ListViewType.Table;\r\n\r\n // SORTING - pass through for pager component\r\n // tslint:disable-next-line:no-input-rename\r\n @Input('sort-options') sortOptions: MenuOption[] = [];\r\n // tslint:disable-next-line:no-input-rename\r\n @Input('sort') sort: string | null = null;\r\n // tslint:disable-next-line:no-input-rename\r\n @Input('sort-dir') sortdir: string | null = '-';\r\n @Output() sortChanged: EventEmitter<string> = new EventEmitter<string>();\r\n @Output() sortdirChanged: EventEmitter<string> = new EventEmitter<string>();\r\n\r\n // COLUMNS\r\n public columns: any[] = [];\r\n @ContentChildren(ListColumnComponent, { read: ListColumnComponent })\r\n set cols(refs: QueryList<ListColumnComponent>) {\r\n this.columns = refs?.toArray();\r\n if (this.columns && this.columns.length > 0) {\r\n this.tableViewSupported = true;\r\n }\r\n this.multipleFullWidth = this.columns.filter(c => c.fullWidth).length > 1;\r\n this.fullWidthTHClass = this.multipleFullWidth ? 'list-view-th-half' : 'list-view-th-full';\r\n this.fullWidthTDClass = this.multipleFullWidth ? 'list-view-td-half' : 'list-view-td-full';\r\n }\r\n\r\n public tilesDeckClass = 'cards-deck-4';\r\n // tslint:disable-next-line:no-input-rename\r\n @Input('tiles-count') tilesCount = 4;\r\n\r\n public tileTemplate: any | null | undefined = null;\r\n @ContentChild(ListTileComponent, {read: ListTileComponent})\r\n set tiles(ref: ListTileComponent) {\r\n this.tileTemplate = ref;\r\n if (this.tileTemplate) {\r\n this.tilesViewSupported = true;\r\n }\r\n }\r\n\r\n public detailsTemplate: any | null | undefined = null;\r\n @ContentChild(ListDetailsSectionComponent, {read: ListDetailsSectionComponent})\r\n set details(ref: ListDetailsSectionComponent) {\r\n this.detailsTemplate = ref;\r\n if (this.detailsTemplate) {\r\n this.detailsSectionSupported = true;\r\n }\r\n }\r\n\r\n constructor() { }\r\n\r\n ngOnChanges(changes: SimpleChanges): void {\r\n const tilesCountChange = changes['tiles-count'] || changes.tilesCount ;\r\n if (tilesCountChange) {\r\n this.setTilesDeckClass(tilesCountChange.currentValue);\r\n }\r\n }\r\n\r\n // events\r\n public emitPageChanged($event: number): void {\r\n this.pageChanged.emit($event);\r\n }\r\n\r\n public emitPageSizeChanged($event: number): void {\r\n this.pageSizeChanged.emit($event);\r\n }\r\n\r\n public emitSortChanged($event: string): void {\r\n this.sortChanged.emit($event);\r\n }\r\n public emitSortdirChanged($event: string): void {\r\n this.sortdirChanged.emit($event);\r\n }\r\n\r\n public toggleDetails(item: any): void {\r\n item.detailsExpanded = !item.detailsExpanded;\r\n this.detailsOpened.emit({ item, open: item.detailsExpanded });\r\n }\r\n\r\n // helpers\r\n private setTilesDeckClass(tiles: number): void {\r\n if ( tiles >= 1 && tiles <= 4 ) {\r\n this.tilesDeckClass = `cards-deck-${tiles}`;\r\n } else {\r\n this.tilesDeckClass = 'cards-deck-3';\r\n }\r\n }\r\n\r\n}\r\n","import { Component, Input, OnInit } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'lib-list-view-empty-state',\r\n templateUrl: './list-view-empty-state.component.html'\r\n})\r\nexport class ListViewEmptyStateComponent implements OnInit {\r\n\r\n @Input() title = 'Δεν βρέθηκαν εγγραφές.';\r\n // tslint:disable-next-line:no-input-rename\r\n @Input('sub-title') subTitle = 'Παρακαλώ αλλάξτε τα κριτήρια αναζήτησης σας ή ξεκινήστε προσθέτοντας μια νέα εγγραφή';\r\n // tslint:disable-next-line:no-input-rename\r\n @Input('new-item-label') newItemLabel = 'Νέα εγγραφή';\r\n constructor() { }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n}\r\n","import { Component, Input, OnInit } from '@angular/core';\r\n\r\n@Component({\r\n // tslint:disable-next-line:component-selector\r\n selector: 'lib-skeleton-loader',\r\n templateUrl: './skeleton-loader.component.html'\r\n})\r\nexport class SkeletonLoaderComponent implements OnInit {\r\n @Input() count = 5;\r\n @Input() type = 'tiles'; // 'large-tile', 'table'\r\n constructor() { }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n public counter(i: number): number[] {\r\n return new Array(i);\r\n }\r\n\r\n}\r\n","import { Component, Input, OnInit } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'lib-collapsible-panel',\r\n templateUrl: './collapsible-panel.component.html'\r\n})\r\nexport class CollapsiblePanelComponent implements OnInit {\r\n @Input() title: string | null = null;\r\n public visible = false;\r\n\r\n constructor() { }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n}\r\n","import { Component, EventEmitter, Input, OnInit, Output } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'lib-kpi-tile',\r\n templateUrl: './kpi-tile.component.html'\r\n})\r\nexport class KpiTileComponent implements OnInit {\r\n\r\n @Input() title: string | undefined = undefined;\r\n @Input() busy = false;\r\n @Input() kpi: any | undefined = undefined;\r\n // tslint:disable-next-line:no-output-rename\r\n @Output('tile-action') tileAction: EventEmitter<any> = new EventEmitter<any>();\r\n constructor() { }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n public emitTileAction($event: any): boolean {\r\n $event.preventDefault();\r\n $event.stopPropagation();\r\n this.tileAction.emit($event);\r\n return false;\r\n }\r\n\r\n}\r\n","import { Component, ElementRef, EventEmitter, forwardRef, Input, OnInit, Output, ViewChild } from '@angular/core';\r\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\r\n\r\n// freaksly simple date picker : https://tailwind-elements.com/docs/standard/forms/datepicker/\r\n@Component({\r\n selector: 'lib-date-picker',\r\n templateUrl: './date-picker.component.html',\r\n providers: [\r\n {\r\n provide: NG_VALUE_ACCESSOR,\r\n useExisting: forwardRef(() => DatepickerComponent), // replace name as appropriate\r\n multi: true\r\n }\r\n ]\r\n})\r\nexport class DatepickerComponent implements OnInit, ControlValueAccessor {\r\n @Input() readonly: boolean = true;\r\n @Input() disabled: boolean = false;\r\n @Input('display-format') displayFormat: string | undefined = 'dd/MM/yyyy';\r\n @Input() placeholder: string | undefined = '';\r\n @Input() value: Date | undefined | null = null;\r\n @Output() valueChange: EventEmitter<Date> = new EventEmitter<Date>();\r\n @ViewChild('dateInput') dateInput: ElementRef | undefined;\r\n public showCalendar = false;\r\n public monthNames = [\r\n 'Ιανουάριος',\r\n 'Φεβρουάριος',\r\n 'Μάρτιος',\r\n 'Απρίλιος',\r\n 'Μάϊος',\r\n 'Ιούνιος',\r\n 'Ιούλιος',\r\n 'Αύγουστος',\r\n 'Σεπτέμβριος',\r\n 'Οκτώβριος',\r\n 'Νοεμβριος',\r\n 'Δεκέμβριος',\r\n ];\r\n public dayNames = ['Κυρ', 'Δευ', 'Τρι', 'Τετ', 'Πεμ', 'Παρ', 'Σαβ'];\r\n\r\n public month: number = -1;\r\n public year: number = -1;\r\n public calendarDates: any[] = [];\r\n public blankDays: any[] = [];\r\n\r\n private onChange$: any | undefined = undefined;\r\n private onTouched$: any | undefined = undefined;\r\n\r\n public compareDates(date1: Date | undefined | null, day: number): boolean {\r\n if(!date1) {\r\n return false;\r\n }\r\n const d = new Date(this.year, this.month, day);\r\n return date1.toDateString() === d.toDateString();\r\n };\r\n\r\n public selectDateValue(date: any): void {\r\n let selectedDate = new Date(this.year, this.month, date.day);\r\n this.value = selectedDate;\r\n this.valueChange.emit(this.value);\r\n if(this.onChange$) {\r\n this.onChange$(this.value);\r\n }\r\n this.updateDays();\r\n if(this.onTouched$) {\r\n this.onTouched$();\r\n }\r\n this.showCalendar = false;\r\n }\r\n\r\n public previousMonth(): void {\r\n if (this.month !== 0) {\r\n this.month = this.month - 1;\r\n this.calcDays();\r\n } else {\r\n this.month = 11;\r\n this.year = this.year - 1;\r\n this.calcDays();\r\n }\r\n if(this.onTouched$) {\r\n this.onTouched$();\r\n }\r\n }\r\n\r\n public nextMonth(): void {\r\n if (this.month !== 11) {\r\n this.month = this.month + 1;\r\n this.calcDays();\r\n } else {\r\n this.month = 0;\r\n this.year = this.year + 1;\r\n this.calcDays();\r\n }\r\n if(this.onTouched$) {\r\n this.onTouched$();\r\n }\r\n }\r\n\r\n public calcDays(): void {\r\n const daysInMonth = new Date(this.year, this.month + 1, 0).getDate();\r\n\r\n // find where to start calendar day of week\r\n const dayOfWeek = new Date(this.year, this.month).getDay();\r\n const blankdaysArray = [];\r\n for (var i = 1; i <= dayOfWeek; i++) {\r\n blankdaysArray.push(i);\r\n }\r\n\r\n const daysArray = [];\r\n const today = new Date();\r\n for (var i = 1; i <= daysInMonth; i++) {\r\n daysArray.push({day: i, today: this.compareDates(today, i), selected: this.compareDates(this.value, i)});\r\n }\r\n this.blankDays = blankdaysArray;\r\n this.calendarDates = daysArray;\r\n }\r\n\r\n private updateDays(): void {\r\n const today = new Date();\r\n this.calendarDates.forEach(d => {\r\n d.today = this.compareDates(today, d);\r\n d.selected = this.compareDates(this.value, d);;\r\n });\r\n }\r\n\r\n constructor() { }\r\n\r\n writeValue(obj: any): void {\r\n if(obj) {\r\n this.value = new Date(obj);\r\n this.month = this.value.getMonth();\r\n this.year = this.value.getFullYear();\r\n }\r\n }\r\n\r\n registerOnChange(fn: (_: any) => void): void {\r\n this.onChange$ = fn;\r\n }\r\n\r\n registerOnTouched(fn: any): void {\r\n this.onTouched$ = fn;\r\n }\r\n\r\n public onBlur(event: any): void {\r\n if(this.onTouched$) {\r\n this.onTouched$();\r\n }\r\n }\r\n\r\n ngOnInit(): void {\r\n let today = new Date();\r\n this.month = today.getMonth();\r\n this.year = today.getFullYear();\r\n this.calcDays();\r\n }\r\n\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { BehaviorSubject, Observable } from 'rxjs';\r\nimport { filter } from 'rxjs/operators';\r\nimport { Toast, ToastType, NULL_TOAST } from '../types';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class ToasterService {\r\n\r\n private subject: BehaviorSubject<Toast>;\r\n public toast$: Observable<Toast>;\r\n\r\n constructor() {\r\n this.subject = new BehaviorSubject<Toast>(NULL_TOAST);\r\n this.toast$ = this.subject.asObservable()\r\n .pipe(filter( toast => toast !== null && toast.title !== NULL_TOAST.title ));\r\n }\r\n\r\n public show(type: ToastType, title?: string, body?: string, delay?: number): void {\r\n this.subject.next({ type, title, body, delay } as Toast);\r\n }\r\n}\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { ToasterService } from '../../services/toaster.service';\r\nimport { Toast } from '../../types';\r\n\r\n@Component({\r\n selector: 'lib-toaster-container',\r\n templateUrl: './toaster-container.component.html'\r\n})\r\nexport class ToasterContainerComponent implements OnInit {\r\n\r\n toasts: Toast[] = [];\r\n\r\n constructor(private toaster: ToasterService) { }\r\n\r\n ngOnInit(): void {\r\n this.toaster.toast$\r\n .subscribe(toast => {\r\n this.toasts = [toast, ...this.toasts];\r\n setTimeout(() => this.toasts.pop(), toast.delay || 6000);\r\n });\r\n }\r\n\r\n remove(index: number): void {\r\n this.toasts = this.toasts.slice(0, index).concat(this.toasts.slice(index + 1));\r\n }\r\n\r\n}\r\n","import { Component, EventEmitter, Input, OnInit, Output } from '@angular/core';\r\nimport { Toast } from '../../types';\r\n\r\n@Component({\r\n selector: 'lib-toaster',\r\n templateUrl: './toaster.component.html'\r\n})\r\nexport class ToasterComponent implements OnInit {\r\n\r\n @Input() toast: Toast | undefined;\r\n @Input() i = 0;\r\n @Output() remove = new EventEmitter<number>();\r\n public isMobile = false;\r\n public closed = false;\r\n\r\n constructor() { }\r\n\r\n ngOnInit(): void {\r\n window.screen.width > 640 ? this.isMobile = false : this.isMobile = true;\r\n }\r\n\r\n public closeToast(index: number): void {\r\n this.closed = true;\r\n setTimeout(() => this.remove.emit(index), 100);\r\n }\r\n}\r\n","import { Component, Input, OnInit } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'lib-avatar-initials',\r\n templateUrl: './avatar-initials.component.html'\r\n})\r\nexport class AvatarInitialsComponent implements OnInit {\r\n @Input()\r\n public name: string | null | undefined;\r\n @Input()\r\n public large = false;\r\n public initials?: string;\r\n public circleColor!: string;\r\n private colors = [\r\n '#EB7181', // red\r\n '#468547', // green\r\n '#FFD558', // yellow\r\n '#3670B2', // blue\r\n ];\r\n\r\n constructor() { }\r\n\r\n ngOnInit(): void {\r\n this.createInititals();\r\n const randomIndex = Math.floor(Math.random() * Math.floor(this.colors.length));\r\n // assign this to a class if you want to randomly change background colors of the circle.\r\n this.circleColor = this.colors[randomIndex];\r\n }\r\n\r\n private createInititals(): void {\r\n if (this.name) {\r\n let initials = '';\r\n for (let i = 0; i < this.name.length; i++) {\r\n if (this.name.charAt(i) === ' ') {\r\n continue;\r\n }\r\n if (this.name.charAt(i) === this.name.charAt(i).toUpperCase()) {\r\n initials += this.name.charAt(i);\r\n if (initials.length === 2) {\r\n break;\r\n }\r\n }\r\n }\r\n this.initials = initials;\r\n }\r\n }\r\n}\r\n","import { InjectionToken } from '@angular/core';\r\nimport { IAppLinks, IShellConfig } from './types';\r\n\r\nexport const APP_LINKS = new InjectionToken<IAppLinks>('APP_LINKS');\r\nexport const SHELL_CONFIG = new InjectionToken<IShellConfig>('SHELL_CONFIG');\r\n","import { Injectable, ComponentFactoryResolver, ViewContainerRef } from '@angular/core';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class ComponentLoaderService {\r\n constructor(private cfr: ComponentFactoryResolver) { }\r\n\r\n public loadComponent(vcr: ViewContainerRef, component: any): void {\r\n vcr.clear();\r\n const componentFactory = this.cfr.resolveComponentFactory(component);\r\n const componentRef = vcr.createComponent(componentFactory);\r\n // TL;TR Force change detection on this component, where change detection means force lifecycle hooks to run\r\n // In order to avoid NG0100: Expression has changed after it was checked\r\n // The above error is caused because the view is rendered before the lifecycle hooks are called,\r\n // resulting in bindind expression changes\r\n // A somewhat explanation here:\r\n // https://stackoverflow.com/questions/56427104/when-is-oninit-event-triggered-for-a-dynamically-loaded-angular-component\r\n componentRef.changeDetectorRef.detectChanges();\r\n }\r\n}\r\n","import { Directive, ViewContainerRef, Input } from '@angular/core';\r\n\r\n@Directive({ selector: '[appDynamicComponentHost]' })\r\nexport class DynamicComponentHostDirective {\r\n @Input() hostName: string = '';\r\n constructor(public viewContainerRef: ViewContainerRef) {}\r\n}","import { SHELL_CONFIG } from './../../../tokens';\r\nimport { IShellConfig, DefaultShellConfig } from './../../../types';\r\nimport { AfterViewInit, Component, OnInit, OnDestroy, Inject, ViewChildren, ViewContainerRef, QueryList } from '@angular/core';\r\nimport { DOCUMENT, Location } from '@angular/common';\r\nimport { ActivationStart, Router } from '@angular/router';\r\nimport { filter } from 'rxjs/operators';\r\nimport { Subscription } from 'rxjs';\r\nimport { ComponentLoaderService } from '../../../services/component-loader.service';\r\nimport { DynamicComponentHostDirective } from '../../../directives/dynamic-component-host.directive';\r\n\r\n@Component({\r\n // tslint:disable-next-line:component-selector\r\n selector: 'lib-shell-layout',\r\n templateUrl: './shell-layout.component.html'\r\n})\r\nexport class ShellLayoutComponent implements OnInit, OnDestroy, AfterViewInit {\r\n @ViewChildren(DynamicComponentHostDirective)\r\n dynamicComponentHosts: QueryList<DynamicComponentHostDirective> | null = null;\r\n public showRightPaneSM = false;\r\n private routerSub$: Subscription | null = null;\r\n public activeConfig: IShellConfig = new DefaultShellConfig();\r\n constructor(@Inject(DOCUMENT) private document: any,\r\n private router: Router, private location: Location,\r\n @Inject(SHELL_CONFIG) private config: IShellConfig | null,\r\n private componentLoaderService: ComponentLoaderService) {\r\n if (!config) {\r\n config = new DefaultShellConfig();\r\n }\r\n this.activeConfig = config;\r\n }\r\n\r\n ngOnInit(): void {\r\n this.routerSub$ = this.router.events\r\n .pipe(filter(event => event instanceof ActivationStart))\r\n .subscribe((e) => {\r\n // console.log('ShellLayoutComponent ActivationStart', e);\r\n if ((e as ActivationStart)?.snapshot) {\r\n // console.log('ShellLayoutComponent ActivationStart snapshot', (e as ActivationStart)?.snapshot);\r\n if ((e as ActivationStart)?.snapshot?.data) {\r\n // console.log('ShellLayoutComponent ActivationStart snapshot data', (e as ActivationStart)?.snapshot.data);\r\n if ((e as ActivationStart)?.snapshot?.data.shell) {\r\n // console.log('ShellLayoutComponent ActivationStart snapshot data shell params',\r\n // (e as ActivationStart)?.snapshot.data.shell);\r\n this.activeConfig = (e as ActivationStart)?.snapshot.data.shell as IShellConfig;\r\n // console.log('ShellLayoutComponent activeConfig from route: ', this.activeConfig);\r\n if (this.activeConfig.customHeaderComponent) {\r\n this.initCustomComponents();\r\n }\r\n } else {\r\n this.activeConfig = this.config ? this.config : new DefaultShellConfig();\r\n // console.log('ShellLayoutComponent default activeConfig: ', this.activeConfig);\r\n }\r\n }\r\n }\r\n });\r\n\r\n }\r\n\r\n ngAfterViewInit(): void {\r\n this.initCustomComponents();\r\n }\r\n\r\n private initCustomComponents(): void {\r\n if(this.dynamicComponentHosts && this.dynamicComponentHosts.length > 0){\r\n this.loadCustomComponent(this.dynamicComponentHosts.find(_ => _.hostName === 'Header'));\r\n // since you're not using it...\r\n // this.loadCustomComponent(this.dynamicComponentHosts.find(_ => _.hostName === 'Footer'));\r\n }\r\n }\r\n\r\n ngOnDestroy(): void {\r\n if (this.routerSub$) {\r\n this.routerSub$.unsubscribe();\r\n }\r\n }\r\n\r\n private loadCustomComponent(host: DynamicComponentHostDirective | undefined): void{\r\n if (host){\r\n const viewContainerRef = host.viewContainerRef;\r\n if (viewContainerRef && this.activeConfig.customHeaderComponent) {\r\n this.componentLoaderService.loadComponent(viewContainerRef, this.activeConfig.customHeaderComponent);\r\n }\r\n }\r\n }\r\n}\r\n","import { Component, OnInit, OnDestroy, Inject, Input } from '@angular/core';\r\nimport { User } from 'oidc-client';\r\nimport { Event, NavigationStart, Router, RouterEvent } from '@angular/router';\r\nimport { filter } from 'rxjs/operators';\r\nimport { NavLink } from '../../../types';\r\nimport { AuthService } from '@indice/ng-auth';\r\nimport { APP_LINKS, SHELL_CONFIG } from '../../../tokens';\r\nimport { BehaviorSubject, Observable, Subject, SubscriptionLike } from 'rxjs';\r\nimport { Subscription } from 'rxjs';\r\n\r\n@Component({\r\n // tslint:disable-next-line:component-selector\r\n selector: 'lib-shell-header',\r\n templateUrl: './shell-header.component.html'\r\n})\r\nexport class ShellHeaderComponent implements OnInit, OnDestroy {\r\n // tslint:disable-next-line:no-input-rename\r\n @Input('section-links') sectionLinksPath = 'main';\r\n // tslint:disable-next-line:no-input-rename\r\n @Input('profile-menu') profileMenuVisible = true;\r\n @Input() border = true;\r\n public sectionLinks: NavLink[] = [];\r\n public mobileMenuExpanded = false;\r\n public userMenuExpanded = false;\r\n protected routeSubject: Observable<Event>;\r\n protected userSubject: BehaviorSubject<any>;\r\n protected routerSub$: Subscription | null = null;\r\n protected userSub$: Subscription | null = null;\r\n protected statusSub$: Subscription | null = null;\r\n public user: User | null = null;\r\n public avatarName: string | null = null;\r\n\r\n constructor(@Inject(AuthService) protected authService: AuthService,\r\n @Inject(Router) protected router: Router,\r\n @Inject(SHELL_CONFIG) public config: any,\r\n @Inject(APP_LINKS) public links: any) {\r\n this.routeSubject = this.router.events.pipe(filter(event => event instanceof NavigationStart));\r\n this.userSubject = this.authService.userStatus;\r\n }\r\n\r\n ngOnDestroy(): void {\r\n if (this.routerSub$) {\r\n this.routerSub$.unsubscribe();\r\n }\r\n // TODO: check authenticated user here before we start polling server status\r\n if (this.statusSub$) {\r\n this.statusSub$.unsubscribe();\r\n }\r\n if (this.userSub$) {\r\n this.userSub$.unsubscribe();\r\n }\r\n }\r\n\r\n ngOnInit(): void {\r\n this.sectionLinks = this.links[this.sectionLinksPath] as NavLink[];\r\n this.routerSub$ = this.routeSubject.subscribe(event => {\r\n this.mobileMenuExpanded = false;\r\n this.userMenuExpanded = false;\r\n });\r\n this.authService.loadUser().then(user => {\r\n this.setCurrentUser(user);\r\n }, error => {\r\n //console.log(error);\r\n });\r\n // Detect user changes and display / or not user info accordingly...\r\n this.userSub$ = this.userSubject.subscribe((user: any) => {\r\n //console.log('ShellHeaderComponent user subscription');\r\n this.setCurrentUser(user);\r\n });\r\n }\r\n\r\n // tslint:disable-next-line:typedef\r\n public onClickOutside($event: any) {\r\n this.userMenuExpanded = false;\r\n }\r\n\r\n public signin(event: any | null | undefined): void {\r\n if (event) {\r\n event.preventDefault();\r\n }\r\n this.authService.startAuthentication();\r\n }\r\n\r\n private setCurrentUser(user: any): void {\r\n this.user = user;\r\n if (this.user && this.user.profile) {\r\n this.avatarName = `${this.user.profile.given_name?.charAt(0)}${this.user.profile.family_name?.charAt(0)}`;\r\n //console.log('load user', this.avatarName);\r\n }\r\n }\r\n}\r\n\r\n","import { Component, Inject } from '@angular/core';\r\nimport { APP_LINKS } from '../../../tokens';\r\nimport { IAppLinks } from '../../../types';\r\n\r\n@Component({\r\n selector: 'lib-shell-footer',\r\n templateUrl: './shell-footer.component.html'\r\n\r\n})\r\n\r\nexport class ShellFooterComponent {\r\n constructor(@Inject(APP_LINKS) public links: IAppLinks) {\r\n }\r\n}\r\n","import { SwitchViewAction } from '../../../types';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { Component, Input, OnInit, Output, EventEmitter, ViewChild, ElementRef } from '@angular/core';\r\nimport { fromEvent } from 'rxjs';\r\nimport { debounceTime, distinctUntilChanged, filter, map } from 'rxjs/operators';\r\nimport { HeaderMetaItem, RouterViewAction, ViewAction } from '../../../types';\r\n\r\n@Component({\r\n selector: 'lib-view-layout',\r\n templateUrl: './view-layout.component.html'\r\n})\r\nexport class ViewLayoutComponent implements OnInit {\r\n // tslint:disable-next-line:no-input-rename\r\n @ViewChild('search') private searchInput$?: ElementRef;\r\n // tslint:disable-next-line:no-input-rename\r\n @Input('show-header') header = true;\r\n @Input() fluid = false;\r\n @Input() title = 'no title';\r\n @Input() icon: string | null = null;\r\n @Input() actions: ViewAction[] | null = null;\r\n @Input() busy = false;\r\n // tslint:disable-next-line:no-input-rename\r\n @Input('search-placeholder') searchPlaceholder: string | null = 'αναζήτηση'\r\n @Input() view: string | null = null;\r\n // tslint:disable-next-line:no-input-rename\r\n @Input('meta-items') metaItems: HeaderMetaItem[] | null = [\r\n // { key: 'test', icon: Icons.Badges, text: 'βρέθηκαν 200 αποτελέσματα' }\r\n ];\r\n // tslint:disable-next-line:no-output-on-prefix\r\n @Output() onAction: EventEmitter<ViewAction> = new EventEmitter<ViewAction>();\r\n // tslint:disable-next-line:no-output-on-prefix\r\n @Output() onSearch: EventEmitter<string> = new EventEmitter<string>();\r\n\r\n constructor(private route$: ActivatedRoute, private router$: Router) { }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n public emitActionClick(action: ViewAction): void {\r\n this.onAction.emit(action);\r\n }\r\n\r\n public routerLinkActionClick(action: RouterViewAction | any): void {\r\n //console.log('routerLinkActionClick', action);\r\n if (action.outlet) {\r\n this.router$.navigate(['', { outlets: { rightpane: action.link } }]);\r\n } else {\r\n this.router$.navigate([action.link]);\r\n }\r\n }\r\n\r\n searchActionClick(action: ViewAction, text: string): void {\r\n this.onSearch.emit(text);\r\n }\r\n\r\n searchActionType(text: string): void {\r\n fromEvent(this.searchInput$?.nativeElement, 'keyup').pipe(\r\n map((event: any) => {\r\n return event.target.value; // Get input value.\r\n }),\r\n filter(inputValue => inputValue.length >= 3 || inputValue.length === 0),\r\n // If character length greater than minimumSearchCharacters setting.\r\n debounceTime(1000), // Time in milliseconds between key events.\r\n distinctUntilChanged() // If previous query is different from current.\r\n ).subscribe(_ => {\r\n this.onSearch.emit(this.searchInput$?.nativeElement.value);\r\n });\r\n }\r\n\r\n public switchViewActionClick(action: SwitchViewAction | any): void {\r\n //console.log('switchViewActionClick', action);\r\n this.view = action.param;\r\n if (action && action.param) {\r\n this.router$.navigate([], { queryParams: { view: action.param }, queryParamsHandling: 'merge', skipLocationChange: false });\r\n }\r\n }\r\n\r\n}\r\n","import { Component, Input, OnInit } from '@angular/core';\r\nimport { Location } from '@angular/common';\r\nimport { HeaderMetaItem } from '../../../types';\r\n\r\n@Component({\r\n // tslint:disable-next-line:component-selector\r\n selector: 'lib-model-view-layout',\r\n templateUrl: './model-view-layout.component.html'\r\n})\r\nexport class ModelViewLayoutComponent implements OnInit {\r\n public showRightPaneSM = false;\r\n @Input() title = 'no title';\r\n // tslint:disable-next-line:no-input-rename\r\n @Input('primary-links') primary: { text: string, link: string }[] | null = null;\r\n // tslint:disable-next-line:no-input-rename\r\n @Input('secondary-links') secondary: { text: string, link: string }[] | null = null;\r\n // tslint:disable-next-line:no-input-rename\r\n @Input('meta-items') metaItems: HeaderMetaItem[] | null = [\r\n // { key: 'test', icon: Icons.Badges, text: 'βρέθηκαν 200 αποτελέσματα' }\r\n ];\r\n constructor( private location: Location) { }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n public onSidePaneActivated($event: any): void {\r\n //console.log('onSidePaneActivated', $event);\r\n this.showRightPaneSM = true;\r\n }\r\n\r\n public onSidePaneDeactivated($event: any): void {\r\n //console.log('onSidePaneActivated', $event);\r\n this.showRightPaneSM = false;\r\n }\r\n\r\n public closeSidePane(): void {\r\n this.location.back();\r\n }\r\n}\r\n","import { Router } from '@angular/router';\r\nimport { Component, Input, OnInit, Output, EventEmitter } from '@angular/core';\r\nimport { Location } from '@angular/common';\r\n\r\n@Component({\r\n selector: 'lib-side-view-layout',\r\n templateUrl: './side-view-layout.component.html'\r\n})\r\nexport class SideViewLayoutComponent implements OnInit {\r\n @Input() title: string | null = 'Πληροφορίες';\r\n @Input() showActions = true;\r\n @Input() disabled = false;\r\n // tslint:disable-next-line:no-input-rename\r\n @Input('return-path') returnPath: string | undefined;\r\n // tslint:disable-next-line:no-input-rename\r\n @Input('ok-label') okLabel = 'Αποθήκευση';\r\n // tslint:disable-next-line:no-input-rename\r\n @Input('ok-show') okShow = true;\r\n // tslint:disable-next-line:no-input-rename\r\n @Input('ok-close-dialog') closeOnOk = true;\r\n // tslint:disable-next-line:no-input-rename\r\n @Input('cancel-label') cancelLabel = 'Ακύρωση';\r\n // tslint:disable-next-line:no-input-rename\r\n @Input('cancel-show') cancelShow = true;\r\n // @Output() close = new EventEmitter<any>();\r\n @Output() cancel: EventEmitter<boolean> = new EventEmitter();\r\n @Output() ok: EventEmitter<boolean> = new EventEmitter();\r\n\r\n constructor(private location: Location, private router: Router) { }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n public closeSidePane(): void {\r\n if (this.returnPath) {\r\n this.router.navigateByUrl('/', {skipLocationChange: true}).then(() => this.router.navigateByUrl(this.returnPath || '/'));\r\n } else {\r\n this.location.back();\r\n }\r\n }\r\n\r\n public emitClose(): void {\r\n this.cancel.emit(false);\r\n this.closeSidePane();\r\n }\r\n\r\n public emitCancel(): void {\r\n this.cancel.emit(false);\r\n this.closeSidePane();\r\n }\r\n\r\n public emitOK(): void {\r\n this.ok.emit(true);\r\n if(this.closeOnOk) {\r\n this.closeSidePane();\r\n }\r\n }\r\n\r\n}\r\n","import { Component, ElementRef, EventEmitter, Input, OnInit, Output, ViewChild } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { fromEvent } from 'rxjs';\r\nimport { map, filter, debounceTime, distinctUntilChanged } from 'rxjs/operators';\r\nimport { RouterViewAction, ViewAction } from '../../../types';\r\n\r\n@Component({\r\n selector: 'lib-form-layout',\r\n templateUrl: './form-layout.component.html'\r\n})\r\nexport class FormLayoutComponent implements OnInit {\r\n // tslint:disable-next-line:no-input-rename\r\n @ViewChild('search') private searchInput$?: ElementRef;\r\n @Input() title: string | null = null;\r\n // tslint:disable-next-line:no-input-rename\r\n @Input('search-placeholder') searchPlaceholder: string | null = 'αναζήτηση'\r\n @Input() actions: ViewAction[] | null = null;\r\n // tslint:disable-next-line:no-input-rename\r\n @Input('sub-title') subTitle: string | null = null;\r\n // tslint:disable-next-line:no-output-on-prefix\r\n @Output() onAction: EventEmitter<ViewAction> = new EventEmitter<ViewAction>();\r\n // tslint:disable-next-line:no-output-on-prefix\r\n @Output() onSearch: EventEmitter<string> = new EventEmitter<string>();\r\n @Output() onComplete: EventEmitter<boolean> = new EventEmitter<boolean>();\r\n public showRightPaneSM = false;\r\n\r\n constructor(private router$: Router) { }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n public onSidePaneActivated($event: any): void {\r\n this.showRightPaneSM = true;\r\n }\r\n\r\n public onSidePaneDeactivated($event: any): void {\r\n this.onComplete.emit(true);\r\n this.showRightPaneSM = false;\r\n }\r\n\r\n public emitActionClick(action: ViewAction): void {\r\n this.onAction.emit(action);\r\n }\r\n\r\n searchActionClick(action: ViewAction, text: string): void {\r\n this.onSearch.emit(text);\r\n }\r\n\r\n searchActionType(text: string): void {\r\n fromEvent(this.searchInput$?.nativeElement, 'keyup').pipe(\r\n map((event: any) => {\r\n return event.target.value; // Get input value.\r\n }),\r\n filter(inputValue => inputValue.length >= 3 || inputValue.length === 0),\r\n // If character length greater than minimumSearchCharacters setting.\r\n debounceTime(1000), // Time in milliseconds between key events.\r\n distinctUntilChanged() // If previous query is different from current.\r\n ).subscribe(_ => {\r\n this.onSearch.emit(this.searchInput$?.nativeElement.value);\r\n });\r\n }\r\n\r\n public routerLinkActionClick(action: RouterViewAction | any, relative: boolean = false): void {\r\n if (action.outlet) {\r\n this.router$.navigate(['', { outlets: { formRightPane: action.link } }]);\r\n } else {\r\n this.router$.navigate([action.link]);\r\n }\r\n }\r\n\r\n}\r\n","import { Inject } from '@angular/core';\r\nimport { Component, OnInit } from '@angular/core';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { AuthService } from '@indice/ng-auth';\r\n\r\n@Component({\r\n // tslint:disable-next-line:component-selector\r\n selector: 'lib-auth-callback',\r\n templateUrl: './auth-callback.component.html'\r\n})\r\nexport class AuthCallbackComponent implements OnInit {\r\n public status = 'παρακαλώ περιμένετε...';\r\n\r\n constructor(@Inject(AuthService) private authService: AuthService, private router: Router, private route: ActivatedRoute) { }\r\n\r\n ngOnInit(): void {\r\n const self = this;\r\n this.authService.completeAuthentication().then(() => {\r\n self.authService.isLoggedIn().subscribe((result: any) => {\r\n // i'm sorry!\r\n if (!result) {\r\n self.router.navigate(['/unauthorized']);\r\n return;\r\n }\r\n let navigationUrl = '/dashboard';\r\n if (this.route.data) {\r\n this.route.data.subscribe(data => {\r\n if(data['navigationUrl'] != undefined){\r\n navigationUrl = data['navigationUrl'];\r\n }\r\n })\r\n }\r\n\r\n // did you want to go somewhere?\r\n const user = self.authService.currentUser();\r\n if (user && user.state && user.state.url) {\r\n //console.log('AuthCallbackComponent user state', user.state);\r\n self.router.navigateByUrl(user.state.url);\r\n return;\r\n } else {\r\n self.router.navigateByUrl(navigationUrl);\r\n return;\r\n }\r\n\r\n //\r\n // lets check your subscriptions...\r\n // self.status = `we're loading your subscription information, please wait...`;\r\n // ok get the subscriptions for the user\r\n // self.appState.subscriptions.subscribe((subs) => {\r\n // self.subscriptions = subs;\r\n // if (subs === null || subs.length === 0) {\r\n // self.router.navigate(['/new-subscription']);\r\n // } else if (subs.length === 1) {\r\n // self.status = `welcome ${user.profile.name}, we're loading your configuration information, please wait...`;\r\n // self.selectSubscription(subs[0]);\r\n // } else {\r\n // self.status = `welcome ${user.profile.name}, please select a subscription to proceed...`;\r\n // }\r\n // }, error => {\r\n // self.status = `oups! an error occured, sorry about that! please try again in a while :)`;\r\n // });\r\n //\r\n\r\n });\r\n });\r\n }\r\n\r\n // public selectSubscription(subscription: any) {\r\n // this.appState.selectSubscription(subscription);\r\n // this.router.navigate([subscription.homePath]);\r\n // }\r\n\r\n}\r\n","import { Inject } from '@angular/core';\r\nimport { Component, OnInit } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { AuthService } from '@indice/ng-auth';\r\n\r\n\r\n@Component({ selector: 'lib-auth-renew', template: ''})\r\nexport class AuthRenewComponent implements OnInit {\r\n\r\n constructor(@Inject(AuthService) private authService: AuthService, private router: Router) { }\r\n\r\n ngOnInit(): void {\r\n // console.log('AuthRenewComponent init!!!');\r\n this.authService.manager.signinSilentCallback().catch(() => {\r\n // console.log('redirect to unauthorized!');\r\n this.router.navigate(['/unauthorized']);\r\n });\r\n }\r\n\r\n\r\n}\r\n","import { Component, Inject, OnInit } from '@angular/core';\r\nimport { AuthService } from '@indice/ng-auth';\r\n\r\n@Component({\r\n // tslint:disable-next-line:component-selector\r\n selector: 'lib-logged-out',\r\n templateUrl: './logged-out.component.html'\r\n})\r\nexport class LoggedOutComponent implements OnInit {\r\n status = 'working on it, please give me a sec...';\r\n finished = false;\r\n constructor(@Inject(AuthService) private authService: AuthService) { }\r\n\r\n ngOnInit(): void {\r\n this.authService.completeSignout().then(() => {\r\n this.status = 'Thank you!';\r\n this.finished = true;\r\n });\r\n }\r\n\r\n}\r\n","import { Component, OnInit } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'lib-error',\r\n templateUrl: './error.component.html'\r\n})\r\nexport class ErrorComponent implements OnInit {\r\n public error = 'Error!';\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n}\r\n","import { Component, OnInit } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'lib-page-not-found',\r\n templateUrl: './page-not-found.component.html'\r\n})\r\nexport class PageNotFoundComponent implements OnInit {\r\n\r\n constructor() { }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n}\r\n","import { Component, Inject, OnInit } from '@angular/core';\r\nimport { AuthService } from '@indice/ng-auth';\r\n\r\n\r\n// tslint:disable-next-line:component-selector\r\n@Component({selector: 'lib-unauthorized', templateUrl: './unauthorized.component.html'})\r\nexport class UnauthorizedComponent implements OnInit {\r\n\r\n constructor(@Inject(AuthService) private authService: AuthService) { }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n signin(): void {\r\n this.authService.clearState().then( (_: any) => {\r\n this.authService.startSignout();\r\n });\r\n }\r\n\r\n}\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\nimport { IAddress } from '../types';\r\n\r\n@Pipe({\r\n name: 'address',\r\n pure: false\r\n})\r\nexport class AddressPipe implements PipeTransform {\r\n\r\n transform(value: IAddress | undefined): string {\r\n if (value === undefined || null || '') {\r\n return '';\r\n }\r\n // tslint:disable-next-line:no-non-null-assertion\r\n return `${value.street || ''}${value.streetNumber ? ' ' + value.streetNumber : ''}${value.city ? ', ' + value.city : ''}${+value.postalCode! ? ', ' + +value.postalCode! : ''}`;\r\n }\r\n}\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\n\r\n@Pipe({\r\n name: 'durationFormat',\r\n pure: false\r\n})\r\nexport class DurationFormatPipe implements PipeTransform {\r\n\r\n transform(value: any, arg1: any, arg2: any): string {\r\n\r\n let days: any;\r\n let seconds: any;\r\n let minutes: any;\r\n let hours: any;\r\n\r\n if (arg1 === 'ms' && arg2 === 'hhmmss') {\r\n seconds = Math.floor((value / 1000) % 60);\r\n minutes = Math.floor(((value / (1000 * 60)) % 60));\r\n hours = Math.floor((value / (1000 * 60 * 60)));\r\n return this.format(arg2, seconds, minutes, hours, days);\r\n\r\n } else if (arg1 === 's' && arg2 === 'hhmmss') {\r\n seconds = Math.floor((value % 60));\r\n minutes = Math.floor(((value / 60) % 60));\r\n hours = Math.floor(((value / 60) / 60));\r\n return this.format(arg2, seconds, minutes, hours, days);\r\n\r\n } else if (arg1 === 'ms' && (arg2 === 'ddhhmmss' || arg2 === 'ddhhmmssLong')) {\r\n seconds = Math.floor(((value / 1000) % 60));\r\n minutes = Math.floor((value / (1000 * 60) % 60));\r\n hours = Math.floor((value / (1000 * 60 * 60) % 24));\r\n days = Math.floor((value / (1000 * 60 * 60 * 24)));\r\n return this.format(arg2, seconds, minutes, hours, days);\r\n\r\n } else if (arg1 === 's' && (arg2 === 'ddhhmmss' || arg2 === 'ddhhmmssLong')) {\r\n seconds = Math.floor(value % 60);\r\n minutes = Math.floor(((value / 60) % 60));\r\n hours = Math.floor(((value / 60) / 60) % 24);\r\n days = Math.floor((((value / 60) / 60) / 24));\r\n return this.format(arg2, seconds, minutes, hours, days);\r\n\r\n }\r\n else {\r\n return value;\r\n }\r\n }\r\n\r\n private format(arg2: string, seconds: any, minutes: any, hours: any, days: any): any {\r\n (days < 10) ? days = '0' + days : days;\r\n (hours < 10) ? hours = '0' + hours : hours;\r\n (minutes < 10) ? minutes = '0' + minutes : minutes;\r\n (seconds < 10) ? seconds = '0' + seconds : seconds;\r\n\r\n switch (arg2) {\r\n case 'hhmmss':\r\n return `${hours}:${minutes}:${seconds}`;\r\n\r\n case 'ddhhmmss':\r\n return `${days}d, ${hours}h, ${minutes}m, ${seconds}s`;\r\n\r\n case 'ddhhmmssLong':\r\n return `${days} days, ${hours} hours, ${minutes} minutes, ${seconds} seconds`;\r\n }\r\n return undefined;\r\n }\r\n\r\n}\r\n","import { Observable, Subscription } from 'rxjs';\r\nimport { Component, OnInit, OnDestroy } from '@angular/core';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { HeaderMetaItem, IResultSet, MenuOption, RouterViewAction, ViewAction, ListViewType } from '../types';\r\nimport { Icons } from '../icons';\r\n\r\n@Component({ template: '' })\r\nexport abstract class BaseListComponent<T> implements OnInit, OnDestroy {\r\n public items: T[] | null | undefined = null;\r\n public view: string = ListViewType.Tiles;\r\n public title: string | null = null;\r\n public actions: ViewAction[] = [];\r\n public loaderItems: any[] = [1, 2, 3, 4, 5];\r\n public page = 1;\r\n public pageSize = 20;\r\n public count = 0;\r\n public sort: string | null = '';\r\n public sortdir: string | null = '-';\r\n public search: string | null = '';\r\n public sortOptions: MenuOption[] = [];\r\n public metaItems: HeaderMetaItem[] = [];\r\n public abstract newItemLink: string | null;\r\n private routeSub$: Subscription | undefined;\r\n\r\n constructor(private route$: ActivatedRoute, private router$: Router) {\r\n }\r\n\r\n ngOnDestroy(): void {\r\n if (this.routeSub$) {\r\n this.routeSub$.unsubscribe();\r\n }\r\n }\r\n\r\n ngOnInit(): void {\r\n this.actions = [\r\n new ViewAction('search', null, null, Icons.Search, 'αναζήτηση'),\r\n new ViewAction('refresh', null, null, Icons.Refresh, 'ανανέωση στοιχείων')\r\n ];\r\n if (this.newItemLink) {\r\n this.actions.push(new RouterViewAction(Icons.Add, this.newItemLink, 'rightpane', 'προσθήκη νέας εγγραφής;'));\r\n }\r\n\r\n this.metaItems = [\r\n { key: 'count', icon: Icons.ItemsCount, text: 'παρακαλώ περιμένετε...' }\r\n ];\r\n\r\n // disabled external route changes monitoring due to sync issues - which is bad :) - refresh from url will not work\r\n // until i come up with a solution...\r\n\r\n this.routeSub$ = this.route$.queryParamMap.subscribe(params => {\r\n if (params.keys.length === 0) {\r\n return;\r\n }\r\n\r\n // changing the view mode does not require reloading...\r\n this.view = params.get('view') || ListViewType.Tiles;\r\n //console.log('route changes ', this.view);\r\n\r\n // if (params.get('search') !== this.search) {\r\n // this.searchChanged(params.get('search'));\r\n // }\r\n\r\n // const page = +(params.get('page') || 1);\r\n // if (page !== this.page) {\r\n // this.page = page;\r\n // }\r\n\r\n // const size = +(params.get('pagesize') || 20);\r\n // if (this.pageSize !== size) {\r\n // this.pageSize = size;\r\n // }\r\n\r\n // if (params.get('search') !== this.search) {\r\n // this.search = params.get('search');\r\n // }\r\n\r\n // if (params.get('sort') !== this.sort) {\r\n // this.sort = params.get('sort');\r\n // }\r\n\r\n // if (params.get('sortdir') !== this.sortdir) {\r\n // this.sortdir = params.get('sortdir');\r\n // }\r\n\r\n });\r\n\r\n // just to sync params in query\r\n this.setRouteParams(true);\r\n this.load();\r\n }\r\n\r\n private setRouteParams(locationChange: boolean = false): void {\r\n this.router$.navigate([], {\r\n relativeTo: this.route$, queryParams: {\r\n view: this.view,\r\n page: this.page,\r\n pagesize: this.pageSize,\r\n search: this.search,\r\n sort: this.sort,\r\n dir: this.sortdir\r\n }, queryParamsHandling: 'merge', skipLocationChange: locationChange\r\n });\r\n }\r\n\r\n public actionHandler($event: ViewAction): void {\r\n //console.log('BaseListComponent actionHandler', $event);\r\n if ($event.key === 'refresh') {\r\n this.refresh();\r\n }\r\n }\r\n\r\n private load(): void {\r\n //console.log('BaseListComponent LOAD');\r\n this.count = 0;\r\n this.items = null;\r\n this.loadItems().subscribe(result => {\r\n this.count = result ? result.count : 0;\r\n this.items = result?.items;\r\n this.updateHeaderMeta();\r\n });\r\n }\r\n\r\n private updateHeaderMeta(): void {\r\n const count = this.metaItems?.filter(m => m.key === 'count')[0];\r\n if (count) {\r\n count.text = `${this.count} αποτελέσματα`;\r\n }\r\n }\r\n\r\n public abstract loadItems(): Observable<IResultSet<T> | null | undefined>;\r\n\r\n public clear(): void {\r\n this.count = 0;\r\n this.page = 1;\r\n this.items = null;\r\n this.search = null;\r\n this.setRouteParams();\r\n this.load();\r\n }\r\n\r\n public refresh(): void {\r\n this.count = 0;\r\n this.page = 1;\r\n this.items = null;\r\n this.setRouteParams();\r\n this.load();\r\n }\r\n\r\n public pageChanged(page: number): void {\r\n if(this.page !== page) {\r\n this.page = page;\r\n this.setRouteParams();\r\n this.load();\r\n }\r\n }\r\n\r\n public pageSizeChanged(pageSize: number): void {\r\n if(this.pageSize !== pageSize) {\r\n this.pageSize = pageSize;\r\n this.page = 1;\r\n this.setRouteParams();\r\n this.refresh();\r\n }\r\n }\r\n\r\n public sortChanged(sort: string): void {\r\n //console.log('base-list sortChanged', sort);\r\n if (this.sort !== sort) {\r\n this.page = 1;\r\n this.sort = sort;\r\n this.setRouteParams();\r\n this.refresh();\r\n }\r\n }\r\n\r\n public sortdirChanged(sortdir: string): void {\r\n if (this.sortdir !== sortdir) {\r\n this.page = 1;\r\n this.sortdir = sortdir;\r\n this.setRouteParams();\r\n this.refresh();\r\n }\r\n }\r\n\r\n public searchChanged(searchText: string | null): void {\r\n this.count = 0;\r\n this.page = 1;\r\n this.items = null;\r\n this.search = searchText;\r\n this.setRouteParams();\r\n this.load();\r\n }\r\n}\r\n","import { SidePaneOverlayType, SidePaneSize } from './../../types';\r\nimport { Subscription } from 'rxjs';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { Component, Input, OnInit, OnDestroy, Inject } from '@angular/core';\r\nimport { DOCUMENT } from '@angular/common';\r\n\r\n@Component({\r\n selector: 'lib-side-pane',\r\n templateUrl: './side-pane.component.html',\r\n})\r\nexport class SidePaneComponent implements OnInit, OnDestroy {\r\n // tslint:disable-next-line:no-input-rename\r\n @Input('visible') showPane = false;\r\n public sizeContainerStyle = 'side-pane-box-size';\r\n public overlayStyle = 'side-pane-overlay';\r\n constructor(\r\n private router: Router,\r\n @Inject(DOCUMENT) private document: any\r\n ) {}\r\n\r\n ngOnDestroy(): void {}\r\n\r\n ngOnInit(): void {}\r\n\r\n public onSidePaneActivated(component: any): void {\r\n this.document.body.classList.add('modal-active');\r\n let sizeStyleSuffix = '';\r\n const state = this.router.getCurrentNavigation()?.extras.state;\r\n if (state) {\r\n if (state.paneSize) {\r\n if (state.paneSize === SidePaneSize.Small25) {\r\n sizeStyleSuffix = '-25';\r\n } else if (state.paneSize === SidePaneSize.Medium50) {\r\n sizeStyleSuffix = '-50';\r\n } else if (state.paneSize === SidePaneSize.Large75) {\r\n sizeStyleSuffix = '-75';\r\n }\r\n }\r\n if (state.paneOverlay) {\r\n if (state.paneOverlay === SidePaneOverlayType.None) {\r\n this.overlayStyle = 'side-pane-overlay-opacity-0';\r\n } else if (state.paneOverlay === SidePaneOverlayType.Dark) {\r\n this.overlayStyle = 'side-pane-overlay-opacity-50';\r\n } else {\r\n this.overlayStyle = 'side-pane-overlay';\r\n }\r\n }\r\n }\r\n this.sizeContainerStyle = `side-pane-box-size${sizeStyleSuffix}`;\r\n console.log(\r\n 'SidePaneComponent:activateRoute.data',\r\n 'calculated container style: ',\r\n this.sizeContainerStyle,\r\n 'overlay type: ',\r\n this.overlayStyle\r\n );\r\n this.showPane = true;\r\n }\r\n\r\n public onSidePaneDeactivated($event: any): void {\r\n this.document.body.classList.remove('modal-active');\r\n this.showPane = false;\r\n }\r\n}\r\n","import { AvatarInitialsComponent } from './controls/avatar-initials/avatar-initials.component';\r\nimport { ToasterService } from './services/toaster.service';\r\nimport { ToasterComponent } from './controls/toaster/toaster.component';\r\nimport { ToasterContainerComponent } from './controls/toaster/toaster-container.component';\r\nimport { DatepickerComponent } from './controls/date-picker/date-picker.component';\r\nimport { SidePaneComponent } from './controls/side-pane/side-pane.component';\r\nimport { ListDetailsSectionComponent } from './controls/list-view/list-details-section.component';\r\nimport { CommonModule } from '@angular/common';\r\nimport { RouterModule } from '@angular/router';\r\nimport { UnauthorizedComponent } from './pages/http-status/unauthorized/unauthorized.component';\r\nimport { PageNotFoundComponent } from './pages/http-status/page-not-found/page-not-found.component';\r\nimport { ErrorComponent } from './pages/http-status/error/error.component';\r\nimport { LoggedOutComponent } from './pages/auth/logged-out/logged-out.component';\r\nimport { AuthCallbackComponent } from './pages/auth/auth-callback/auth-callback.component';\r\nimport { IndiceAuthModule } from '@indice/ng-auth';\r\nimport { SkeletonLoaderComponent } from './controls/skeleton-loader/skeleton-loader.component';\r\nimport { ListTileComponent } from './controls/list-view/list-tile.component';\r\nimport { ListColumnComponent } from './controls/list-view/list-column.component';\r\nimport { NgModule } from '@angular/core';\r\nimport { DropDownMenuComponent } from './controls/drop-down-menu/drop-down-menu.component';\r\nimport { ListViewComponent } from './controls/list-view/list-view.component';\r\nimport { PagerComponent } from './controls/pager/pager.component';\r\nimport { ClickOutsideDirective } from './directives/click-outside.directive';\r\nimport { ShellFooterComponent } from './layouts/shell/shell-footer/shell-footer.component';\r\nimport { ShellHeaderComponent } from './layouts/shell/shell-header/shell-header.component';\r\nimport { ShellLayoutComponent } from './layouts/shell/shell-layout/shell-layout.component';\r\nimport { FormLayoutComponent } from './layouts/views/form-layout/form-layout.component';\r\nimport { ModelViewLayoutComponent } from './layouts/views/model-view-layout/model-view-layout.component';\r\nimport { SideViewLayoutComponent } from './layouts/views/side-view-layout/side-view-layout.component';\r\nimport { ViewLayoutComponent } from './layouts/views/view-layout/view-layout.component';\r\nimport { AuthRenewComponent } from './pages/auth/auth-renew/auth-renew.component';\r\nimport { AddressPipe } from './pipes/address.pipe';\r\nimport { DurationFormatPipe } from './pipes/duration-format.pipe';\r\nimport { CollapsiblePanelComponent } from './controls/collapsible-panel/collapsible-panel.component';\r\nimport { KpiTileComponent } from './controls/kpi-tile/kpi-tile.component';\r\nimport { DynamicComponentHostDirective } from './directives/dynamic-component-host.directive';\r\nimport { ListViewEmptyStateComponent } from './controls/list-view/list-view-empty-state.component';\r\n\r\n@NgModule({\r\n declarations: [\r\n // diectives\r\n ClickOutsideDirective,\r\n DynamicComponentHostDirective,\r\n // controls\r\n DropDownMenuComponent,\r\n PagerComponent,\r\n ListViewComponent,\r\n ListColumnComponent,\r\n ListTileComponent,\r\n ListDetailsSectionComponent,\r\n ListViewEmptyStateComponent,\r\n SkeletonLoaderComponent,\r\n CollapsiblePanelComponent,\r\n KpiTileComponent,\r\n SidePaneComponent,\r\n DatepickerComponent,\r\n AvatarInitialsComponent,\r\n // Toaster\r\n ToasterContainerComponent,\r\n ToasterComponent,\r\n // shell layout\r\n ShellLayoutComponent,\r\n ShellHeaderComponent,\r\n ShellFooterComponent,\r\n // view layouts\r\n ViewLayoutComponent,\r\n SideViewLayoutComponent,\r\n ModelViewLayoutComponent,\r\n FormLayoutComponent,\r\n // pages (common)\r\n AuthCallbackComponent,\r\n AuthRenewComponent,\r\n LoggedOutComponent,\r\n ErrorComponent,\r\n PageNotFoundComponent,\r\n UnauthorizedComponent,\r\n // pipes\r\n AddressPipe,\r\n DurationFormatPipe\r\n ],\r\n imports: [\r\n CommonModule,\r\n RouterModule,\r\n IndiceAuthModule\r\n ],\r\n exports: [\r\n ClickOutsideDirective,\r\n DropDownMenuComponent,\r\n PagerComponent,\r\n ListViewComponent,\r\n ListColumnComponent,\r\n ListTileComponent,\r\n ListDetailsSectionComponent,\r\n ListViewEmptyStateComponent,\r\n KpiTileComponent,\r\n SkeletonLoaderComponent,\r\n ShellLayoutComponent,\r\n ShellHeaderComponent,\r\n ShellFooterComponent,\r\n ViewLayoutComponent,\r\n SideViewLayoutComponent,\r\n ModelViewLayoutComponent,\r\n FormLayoutComponent,\r\n AuthCallbackComponent,\r\n AuthRenewComponent,\r\n LoggedOutComponent,\r\n ErrorComponent,\r\n PageNotFoundComponent,\r\n UnauthorizedComponent,\r\n AddressPipe,\r\n DurationFormatPipe,\r\n CollapsiblePanelComponent,\r\n SidePaneComponent,\r\n DatepickerComponent,\r\n ToasterContainerComponent,\r\n ToasterComponent,\r\n AvatarInitialsComponent\r\n ]\r\n})\r\nexport class IndiceComponentsModule {\r\n // tslint:disable-next-line:typedef\r\n static forRoot() {\r\n return {\r\n ngModule: IndiceComponentsModule,\r\n providers: [ToasterService]\r\n };\r\n }\r\n}\r\n","/*\r\n * Public API Surface of @indice/ng-components\r\n */\r\n\r\n// directives\r\nexport * from './lib/directives/click-outside.directive';\r\n\r\n// controls\r\nexport * from './lib/controls/drop-down-menu/drop-down-menu.component';\r\nexport * from './lib/controls/pager/pager.component';\r\nexport * from './lib/controls/list-view/list-view.component';\r\nexport * from './lib/controls/list-view/list-column.component';\r\nexport * from './lib/controls/list-view/list-tile.component';\r\nexport * from './lib/controls/list-view/list-details-section.component';\r\nexport * from './lib/controls/list-view/list-view-empty-state.component';\r\nexport * from './lib/controls/skeleton-loader/skeleton-loader.component';\r\nexport * from './lib/controls/collapsible-panel/collapsible-panel.component';\r\nexport * from './lib/controls/kpi-tile/kpi-tile.component';\r\nexport * from './lib/controls/date-picker/date-picker.component';\r\nexport * from './lib/controls/toaster/toaster-container.component';\r\nexport * from './lib/controls/toaster/toaster.component';\r\nexport * from './lib/controls/avatar-initials/avatar-initials.component';\r\n\r\n// shell layout\r\nexport * from './lib/layouts/shell/shell-layout/shell-layout.component';\r\nexport * from './lib/layouts/shell/shell-header/shell-header.component';\r\nexport * from './lib/layouts/shell/shell-footer/shell-footer.component';\r\n\r\n// view layouts\r\nexport * from './lib/layouts/views/view-layout/view-layout.component';\r\nexport * from './lib/layouts/views/model-view-layout/model-view-layout.component';\r\nexport * from './lib/layouts/views/side-view-layout/side-view-layout.component';\r\nexport * from './lib/layouts/views/form-layout/form-layout.component';\r\n\r\n// pages\r\nexport * from './lib/pages/auth/auth-callback/auth-callback.component';\r\nexport * from './lib/pages/auth/auth-renew/auth-renew.component';\r\nexport * from './lib/pages/auth/logged-out/logged-out.component';\r\nexport * from './lib/pages/http-status/error/error.component';\r\nexport * from './lib/pages/http-status/page-not-found/page-not-found.component';\r\nexport * from './lib/pages/http-status/unauthorized/unauthorized.component';\r\n\r\n// pipes\r\nexport * from './lib/pipes/address.pipe';\r\nexport * from './lib/pipes/duration-format.pipe';\r\n\r\n// common stuff (tokens, types, helper classes)\r\nexport * from './lib/tokens';\r\nexport * from './lib/types';\r\nexport * from './lib/icons';\r\nexport * from './lib/helpers/base-list.component';\r\n\r\n// services\r\nexport * from './lib/services/component-loader.service';\r\nexport * from './lib/services/toaster.service';\r\n\r\nexport * from './lib/ng-components.module';\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n\nexport {SidePaneComponent as ɵb} from './lib/controls/side-pane/side-pane.component';\nexport {DynamicComponentHostDirective as ɵa} from './lib/directives/dynamic-component-host.directive';"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"indice-ng-components.js","sources":["../../../projects/ng-components/src/lib/directives/click-outside.directive.ts","../../../projects/ng-components/src/lib/controls/drop-down-menu/drop-down-menu.component.ts","../../../projects/ng-components/src/lib/icons.ts","../../../projects/ng-components/src/lib/types.ts","../../../projects/ng-components/src/lib/controls/pager/pager.component.ts","../../../projects/ng-components/src/lib/controls/list-view/list-tile.component.ts","../../../projects/ng-components/src/lib/controls/list-view/list-column.component.ts","../../../projects/ng-components/src/lib/controls/list-view/list-details-section.component.ts","../../../projects/ng-components/src/lib/controls/list-view/list-view.component.ts","../../../projects/ng-components/src/lib/controls/list-view/list-view-empty-state.component.ts","../../../projects/ng-components/src/lib/controls/skeleton-loader/skeleton-loader.component.ts","../../../projects/ng-components/src/lib/controls/collapsible-panel/collapsible-panel.component.ts","../../../projects/ng-components/src/lib/controls/kpi-tile/kpi-tile.component.ts","../../../projects/ng-components/src/lib/controls/date-picker/date-picker.component.ts","../../../projects/ng-components/src/lib/services/toaster.service.ts","../../../projects/ng-components/src/lib/controls/toaster/toaster-container.component.ts","../../../projects/ng-components/src/lib/controls/toaster/toaster.component.ts","../../../projects/ng-components/src/lib/controls/avatar-initials/avatar-initials.component.ts","../../../projects/ng-components/src/lib/controls/toggle/toggle.component.ts","../../../projects/ng-components/src/lib/tokens.ts","../../../projects/ng-components/src/lib/services/component-loader.service.ts","../../../projects/ng-components/src/lib/directives/dynamic-component-host.directive.ts","../../../projects/ng-components/src/lib/layouts/shell/shell-layout/shell-layout.component.ts","../../../projects/ng-components/src/lib/layouts/shell/shell-header/shell-header.component.ts","../../../projects/ng-components/src/lib/layouts/shell/shell-footer/shell-footer.component.ts","../../../projects/ng-components/src/lib/layouts/views/view-layout/view-layout.component.ts","../../../projects/ng-components/src/lib/layouts/views/model-view-layout/model-view-layout.component.ts","../../../projects/ng-components/src/lib/layouts/views/side-view-layout/side-view-layout.component.ts","../../../projects/ng-components/src/lib/layouts/views/form-layout/form-layout.component.ts","../../../projects/ng-components/src/lib/pages/auth/auth-callback/auth-callback.component.ts","../../../projects/ng-components/src/lib/pages/auth/auth-renew/auth-renew.component.ts","../../../projects/ng-components/src/lib/pages/auth/logged-out/logged-out.component.ts","../../../projects/ng-components/src/lib/pages/http-status/error/error.component.ts","../../../projects/ng-components/src/lib/pages/http-status/page-not-found/page-not-found.component.ts","../../../projects/ng-components/src/lib/pages/http-status/unauthorized/unauthorized.component.ts","../../../projects/ng-components/src/lib/pipes/address.pipe.ts","../../../projects/ng-components/src/lib/pipes/duration-format.pipe.ts","../../../projects/ng-components/src/lib/helpers/base-list.component.ts","../../../projects/ng-components/src/lib/controls/side-pane/side-pane.component.ts","../../../projects/ng-components/src/lib/ng-components.module.ts","../../../projects/ng-components/src/public-api.ts","../../../projects/ng-components/src/indice-ng-components.ts"],"sourcesContent":["//\r\n// https://github.com/arkon/ng-click-outside\r\n// the project is inactive - so imoved the directive code in our project\r\n//\r\nimport {\r\n Directive,\r\n ElementRef,\r\n EventEmitter,\r\n Inject,\r\n Input,\r\n OnChanges,\r\n OnDestroy,\r\n OnInit,\r\n Output,\r\n PLATFORM_ID,\r\n SimpleChanges,\r\n NgZone,\r\n} from '@angular/core';\r\nimport { isPlatformBrowser } from '@angular/common';\r\n\r\n// tslint:disable-next-line:directive-selector\r\n@Directive({ selector: '[clickOutside]' })\r\nexport class ClickOutsideDirective implements OnInit, OnChanges, OnDestroy {\r\n\r\n @Input() clickOutsideEnabled = true;\r\n\r\n @Input() attachOutsideOnClick = false;\r\n @Input() delayClickOutsideInit = false;\r\n @Input() emitOnBlur = false;\r\n\r\n @Input() exclude = '';\r\n @Input() excludeBeforeClick = false;\r\n\r\n @Input() clickOutsideEvents = '';\r\n\r\n @Output() clickOutside: EventEmitter<Event> = new EventEmitter<Event>();\r\n\r\n // tslint:disable-next-line:variable-name\r\n private _nodesExcluded: Array<HTMLElement> = [];\r\n // tslint:disable-next-line:variable-name\r\n private _events: Array<string> = ['click'];\r\n\r\n constructor(\r\n // tslint:disable-next-line:variable-name\r\n private _el: ElementRef,\r\n // tslint:disable-next-line:variable-name\r\n private _ngZone: NgZone,\r\n @Inject(PLATFORM_ID) private platformId: any) {\r\n this._initOnClickBody = this._initOnClickBody.bind(this);\r\n this._onClickBody = this._onClickBody.bind(this);\r\n this._onWindowBlur = this._onWindowBlur.bind(this);\r\n }\r\n\r\n ngOnInit(): void {\r\n if (!isPlatformBrowser(this.platformId)) { return; }\r\n\r\n this._init();\r\n }\r\n\r\n ngOnDestroy(): void {\r\n if (!isPlatformBrowser(this.platformId)) { return; }\r\n\r\n this._removeClickOutsideListener();\r\n this._removeAttachOutsideOnClickListener();\r\n this._removeWindowBlurListener();\r\n }\r\n\r\n ngOnChanges(changes: SimpleChanges): void {\r\n if (!isPlatformBrowser(this.platformId)) { return; }\r\n\r\n // tslint:disable-next-line:no-string-literal\r\n if (changes['attachOutsideOnClick'] || changes['exclude'] || changes['emitOnBlur']) {\r\n this._init();\r\n }\r\n }\r\n\r\n private _init(): void {\r\n if (this.clickOutsideEvents !== '') {\r\n this._events = this.clickOutsideEvents.split(',').map(e => e.trim());\r\n }\r\n\r\n this._excludeCheck();\r\n\r\n if (this.attachOutsideOnClick) {\r\n this._initAttachOutsideOnClickListener();\r\n } else {\r\n this._initOnClickBody();\r\n }\r\n\r\n if (this.emitOnBlur) {\r\n this._initWindowBlurListener();\r\n }\r\n }\r\n\r\n private _initOnClickBody(): void {\r\n if (this.delayClickOutsideInit) {\r\n setTimeout(this._initClickOutsideListener.bind(this));\r\n } else {\r\n this._initClickOutsideListener();\r\n }\r\n }\r\n\r\n private _excludeCheck(): void {\r\n if (this.exclude) {\r\n try {\r\n const nodes = Array.from(document.querySelectorAll(this.exclude)) as Array<HTMLElement>;\r\n if (nodes) {\r\n this._nodesExcluded = nodes;\r\n }\r\n } catch (err) {\r\n console.error('[ng-click-outside] Check your exclude selector syntax.', err);\r\n }\r\n }\r\n }\r\n\r\n private _onClickBody(ev: Event): void {\r\n if (!this.clickOutsideEnabled) { return; }\r\n\r\n if (this.excludeBeforeClick) {\r\n this._excludeCheck();\r\n }\r\n\r\n if (!this._el.nativeElement.contains(ev.target) && !this._shouldExclude(ev.target)) {\r\n this._emit(ev);\r\n\r\n if (this.attachOutsideOnClick) {\r\n this._removeClickOutsideListener();\r\n }\r\n }\r\n }\r\n\r\n /**\r\n * Resolves problem with outside click on iframe\r\n * @see https://github.com/arkon/ng-click-outside/issues/32\r\n */\r\n private _onWindowBlur(ev: Event): void {\r\n setTimeout(() => {\r\n if (!document.hidden) {\r\n this._emit(ev);\r\n }\r\n });\r\n }\r\n\r\n private _emit(ev: Event): void {\r\n if (!this.clickOutsideEnabled) { return; }\r\n\r\n this._ngZone.run(() => this.clickOutside.emit(ev));\r\n }\r\n\r\n private _shouldExclude(target: any): boolean {\r\n // tslint:disable-next-line:prefer-const\r\n for (let excludedNode of this._nodesExcluded) {\r\n if (excludedNode.contains(target)) {\r\n return true;\r\n }\r\n }\r\n\r\n return false;\r\n }\r\n\r\n private _initClickOutsideListener(): void {\r\n this._ngZone.runOutsideAngular(() => {\r\n this._events.forEach(e => document.addEventListener(e, this._onClickBody));\r\n });\r\n }\r\n\r\n private _removeClickOutsideListener(): void {\r\n this._ngZone.runOutsideAngular(() => {\r\n this._events.forEach(e => document.removeEventListener(e, this._onClickBody));\r\n });\r\n }\r\n\r\n private _initAttachOutsideOnClickListener(): void {\r\n this._ngZone.runOutsideAngular(() => {\r\n this._events.forEach(e => this._el.nativeElement.addEventListener(e, this._initOnClickBody));\r\n });\r\n }\r\n\r\n private _removeAttachOutsideOnClickListener(): void {\r\n this._ngZone.runOutsideAngular(() => {\r\n this._events.forEach(e => this._el.nativeElement.removeEventListener(e, this._initOnClickBody));\r\n });\r\n }\r\n\r\n private _initWindowBlurListener(): void {\r\n this._ngZone.runOutsideAngular(() => {\r\n window.addEventListener('blur', this._onWindowBlur);\r\n });\r\n }\r\n\r\n private _removeWindowBlurListener(): void {\r\n this._ngZone.runOutsideAngular(() => {\r\n window.removeEventListener('blur', this._onWindowBlur);\r\n });\r\n }\r\n}\r\n","import { Component, EventEmitter, Input, OnChanges, OnInit, Output, SimpleChanges } from '@angular/core';\r\nimport { MenuOption } from '../../types';\r\n\r\n@Component({\r\n // tslint:disable-next-line:component-selector\r\n selector: 'lib-drop-down-menu',\r\n templateUrl: './drop-down-menu.component.html'\r\n})\r\nexport class DropDownMenuComponent implements OnInit, OnChanges {\r\n @Input() options: MenuOption[] = [];\r\n // tslint:disable-next-line:no-input-rename\r\n @Input('selected') selectedValue: any | null = null;\r\n @Input() multiple = false;\r\n\r\n private selectedOption$: MenuOption | null = null;\r\n public get selectedOption(): MenuOption | null {\r\n return this.selectedOption$;\r\n }\r\n public set selectedOption(option: MenuOption | null) {\r\n this.selectedOption$ = option;\r\n this.selectedValue = option ? option.value : null;\r\n this.expanded = false;\r\n }\r\n\r\n @Output() selectedChange: EventEmitter<any> = new EventEmitter<any>();\r\n @Output() selectedChanged: EventEmitter<any> = new EventEmitter<any>();\r\n\r\n private expanded$ = false;\r\n public get expanded(): boolean {\r\n return this.expanded$;\r\n }\r\n public set expanded(value: boolean) {\r\n this.expanded$ = value;\r\n }\r\n constructor() { }\r\n\r\n ngOnChanges(changes: SimpleChanges): void {\r\n if (this.options && this.options.length > 0 && this.selectedValue !== null && this.selectedValue !== undefined) {\r\n this.selectedOption$ = this.options.filter(o => o.value === this.selectedValue)[0];\r\n }\r\n }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n public isSelected(option: MenuOption): boolean {\r\n return option != null && this.selectedValue != null && option.value === this.selectedValue;\r\n }\r\n\r\n public onClickOutside($event: any): void {\r\n this.expanded = false;\r\n }\r\n\r\n public selectOption(option: MenuOption): void {\r\n this.selectedOption = option;\r\n this.selectedChange.emit(option.value);\r\n this.selectedChanged.emit(option.value);\r\n }\r\n\r\n}\r\n","export class Icons {\r\n // https://uifabricicons.azurewebsites.net/\r\n public static Dashboard = `ms-Icon ms-Icon--HomeGroup `;\r\n public static Locations = `ms-Icon ms-Icon--MapPin `;\r\n public static ChargePoints = `ms-Icon ms-Icon--ChatBot `;\r\n public static Transations = `ms-Icon ms-Icon--PaymentCard `;\r\n public static Badges = `ms-Icon ms-Icon--IDBadge `;\r\n\r\n public static Information = `ms-Icon ms-Icon--Info`;\r\n public static Refresh = `ms-Icon ms-Icon--Refresh`;\r\n public static Search = `ms-Icon ms-Icon--Search`;\r\n public static Add = `ms-Icon ms-Icon--Add`;\r\n public static Filter = `ms-Icon ms-Icon--Filter`;\r\n\r\n public static TilesView = `ms-Icon ms-Icon--AppIconDefault`;\r\n public static TableView = `ms-Icon ms-Icon--Table`;\r\n public static MapView = `ms-Icon ms-Icon--MapPin`;\r\n public static EntryView = `ms-Icon ms-Icon--EntryView`;\r\n\r\n public static Separator = `ms-Icon ms-Icon--Separator text-white`;\r\n\r\n public static ItemsCount = 'ms-Icon ms-Icon--Boards';\r\n\r\n public static Heart = 'ms-Icon ms-Icon--Heart';\r\n public static HeartBroken = 'ms-Icon ms-Icon--HeartBroken';\r\n public static DateTime = 'ms-Icon ms-Icon--ReminderTime';\r\n\r\n public static Expand = 'ms-Icon ms-Icon--ChevronDown';\r\n public static Collapse = 'ms-Icon ms-Icon--ChevronUp';\r\n\r\n public static SortAsc = 'ms-Icon ms-Icon--Ascending';\r\n public static SortDesc = 'ms-Icon ms-Icon--Descending';\r\n\r\n public static Details = ' ms-Icon ms-Icon--AccountActivity'\r\n}\r\n","export interface IAppLinks {\r\n public: NavLink[];\r\n main: NavLink[];\r\n profile: NavLink[];\r\n profileActions: NavLink[];\r\n legal: NavLink[];\r\n brand: NavLink[];\r\n}\r\n\r\n\r\nexport class NavLink {\r\n constructor(text: string, path: string, exact: boolean = false, external: boolean = false, icon?: string) {\r\n this.text = text;\r\n this.path = path;\r\n this.exact = exact;\r\n this.external = external;\r\n this.icon = icon;\r\n }\r\n public text: string;\r\n public path: string;\r\n public exact: boolean;\r\n public external: boolean;\r\n public icon: string | undefined;\r\n}\r\n\r\nexport class ExternalNavLink extends NavLink {\r\n constructor(text: string, path: string, icon?: string) {\r\n super(text, path, true, true, icon);\r\n }\r\n}\r\n\r\nexport class FragmentNavLink extends NavLink {\r\n constructor(text: string, path: string, icon?: string) {\r\n super(text, path, true, true, icon);\r\n }\r\n}\r\n\r\nexport class ViewAction {\r\n public type: string;\r\n public key: string | null;\r\n public param: any;\r\n public icon: string;\r\n public tooltip: string | null;\r\n\r\n constructor(type: string, key: string | null, param: any, icon: string, tooltip: string | null) {\r\n this.type = type;\r\n this.key = key;\r\n this.param = param;\r\n this.icon = icon;\r\n this.tooltip = tooltip;\r\n }\r\n}\r\n\r\nexport class ListViewType {\r\n public static Tiles = 'tiles';\r\n public static Table = 'table';\r\n public static Map = 'map';\r\n}\r\n\r\nexport class RouterViewAction extends ViewAction {\r\n public outlet: string | null = null;\r\n public link: string | null = null;\r\n constructor(icon: string, link: string, outlet: string | null, tooltip: string | null) {\r\n super('router-link', null, null, icon, tooltip);\r\n this.outlet = outlet;\r\n this.link = link;\r\n }\r\n}\r\n\r\n\r\nexport class SwitchViewAction extends ViewAction {\r\n constructor(view: string, icon: string, tooltip: string | null) {\r\n super('switch-view', null, view, icon, tooltip);\r\n }\r\n}\r\n\r\nexport interface IResultSet<T> {\r\n count: number;\r\n items: T[];\r\n}\r\n\r\nexport class HeaderMetaItem {\r\n public key: string | null = null;\r\n public icon: string | null = null;\r\n public text: string | null = null;\r\n}\r\n\r\nexport class MenuOption {\r\n constructor(text: string, value: any, description?: string, data?: any, icon?: string) {\r\n this.text = text;\r\n this.value = value;\r\n this.description = description;\r\n this.data = data;\r\n this.icon = icon;\r\n }\r\n public text: string;\r\n public value: any;\r\n public description: string | undefined;\r\n public data: any | undefined;\r\n public icon: string | undefined;\r\n}\r\n\r\nexport interface IAddress {\r\n id?: string;\r\n street?: string | null;\r\n streetNumber?: string | null;\r\n city?: string | null;\r\n region?: string | null;\r\n postalCode?: string | null;\r\n country?: string | null;\r\n}\r\n\r\nexport interface IShellConfig {\r\n appLogo: string;\r\n appLogoAlt: string;\r\n showHeader: boolean;\r\n customHeaderComponent?: any;\r\n showFooter: boolean;\r\n customFooterComponent?: any;\r\n fluid: boolean;\r\n}\r\n\r\nexport class DefaultShellConfig implements IShellConfig {\r\n appLogo = 'https://tailwindui.com/img/logos/workflow-mark.svg?color=white';\r\n appLogoAlt = 'your app name here';\r\n showHeader = true;\r\n showFooter = true;\r\n fluid = false;\r\n}\r\n\r\nexport enum SCREEN_SIZE {\r\n XS,\r\n SM,\r\n MD,\r\n LG,\r\n XL\r\n}\r\n\r\nexport interface IScreenSize {\r\n id: SCREEN_SIZE;\r\n name: string;\r\n css: string;\r\n}\r\n\r\nexport enum ToastType {\r\n Info = 'info',\r\n Success = 'success',\r\n Error = 'error',\r\n Warning = 'warning'\r\n}\r\n\r\nexport const NULL_TOAST = { title : '_____NULL_____' } as Toast;\r\n\r\nexport interface Toast {\r\n type: ToastType;\r\n title: string;\r\n body: string;\r\n delay: number;\r\n}\r\n\r\nexport enum SidePaneSize {\r\n Default = '',\r\n Small25 = '25%',\r\n Medium50 = '50%',\r\n Large75 = '75%'\r\n}\r\n\r\nexport enum SidePaneOverlayType {\r\n Default = '',\r\n None = '-opacity-0',\r\n Light = '',\r\n Dark = '-opacity-50'\r\n}\r\n\r\n","import { Component, EventEmitter, Input, OnChanges, OnInit, Output, SimpleChanges } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { Icons } from '../../icons';\r\nimport { MenuOption } from '../../types';\r\n\r\n@Component({\r\n selector: 'lib-pager',\r\n templateUrl: './pager.component.html'\r\n})\r\nexport class PagerComponent implements OnInit, OnChanges {\r\n // PAGING\r\n @Input() count: number | null = null;\r\n @Input() page = 1;\r\n // tslint:disable-next-line:no-input-rename\r\n @Input('page-size') pageSize = 20;\r\n // tslint:disable-next-line:no-input-rename\r\n @Input('page-size-options') pageSizeOptions: MenuOption[] = [\r\n new MenuOption('10', 10),\r\n new MenuOption('20', 20),\r\n new MenuOption('30', 30),\r\n new MenuOption('50', 50),\r\n new MenuOption('100', 100)\r\n ];\r\n public pages: MenuOption[] = [];\r\n @Output() pageChanged: EventEmitter<number> = new EventEmitter<number>();\r\n @Output() pageSizeChanged: EventEmitter<number> = new EventEmitter<number>();\r\n public canPreviousPage = false;\r\n public canNextPage = false;\r\n\r\n // SORTING\r\n // tslint:disable-next-line:no-input-rename\r\n @Input('sort-options') sortOptions: MenuOption[] = [];\r\n // tslint:disable-next-line:no-input-rename\r\n @Input('sort') sort: string | null = null;\r\n // tslint:disable-next-line:no-input-rename\r\n @Input('sort-dir') sortdir: string | null = 'desc';\r\n @Output() sortChanged: EventEmitter<string> = new EventEmitter<string>();\r\n @Output() sortdirChanged: EventEmitter<string> = new EventEmitter<string>();\r\n public sortdirIcon = Icons.SortDesc;\r\n\r\n constructor(private router: Router) { }\r\n\r\n ngOnChanges(changes: SimpleChanges): void {\r\n this.calcPages();\r\n }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n private calcPages(): void {\r\n this.pages = [];\r\n if (this.count && this.count > 0) {\r\n const pageCount = this.count / this.pageSize;\r\n for (let i = 0; i < pageCount; i++) {\r\n this.pages.push(new MenuOption(i + 1 + '', i + 1));\r\n }\r\n }\r\n this.canPreviousPage = this.page > 1;\r\n this.canNextPage = this.page < this.pages.length;\r\n //console.log('calcPages', this.page, this.canPreviousPage, this.canNextPage);\r\n }\r\n\r\n public nextPage(): void {\r\n const next = this.page + 1;\r\n this.gotoPage(next);\r\n }\r\n\r\n public previousPage(): void {\r\n const previous = this.page - 1;\r\n this.gotoPage(previous);\r\n }\r\n\r\n public gotoPage(page: number): void {\r\n this.page = page;\r\n this.pageChanged.emit(page);\r\n this.calcPages();\r\n }\r\n\r\n public pageSizeOptionChanged(pageSize: number): void {\r\n this.pageSizeChanged.emit(pageSize);\r\n this.calcPages();\r\n }\r\n\r\n public pageOptionChanged(page: number): void {\r\n this.pageChanged.emit(page);\r\n this.calcPages();\r\n }\r\n\r\n public sortOptionChanged(sort: string): void {\r\n this.sortChanged.emit(sort);\r\n }\r\n\r\n public toggleSortdir(): void {\r\n //console.log('toggleSortdir');\r\n let sortdir = 'desc';\r\n if (this.sortdir === 'desc') {\r\n sortdir = 'asc';\r\n this.sortdirIcon = Icons.SortAsc;\r\n } else {\r\n sortdir = 'desc';\r\n this.sortdirIcon = Icons.SortDesc;\r\n }\r\n this.sortdirChanged.emit(sortdir);\r\n }\r\n\r\n}\r\n","import { Component, ContentChild, Input, OnInit, TemplateRef } from '@angular/core';\r\n\r\n@Component({ selector: 'lib-list-tile', template: '<ng-content></ng-content>' })\r\nexport class ListTileComponent{\r\n @ContentChild(TemplateRef) template: any | null = null;\r\n constructor() {\r\n }\r\n}\r\n","import { Component, ContentChild, Input, OnInit, TemplateRef } from '@angular/core';\r\n\r\n@Component({selector: 'lib-list-column', template: '<ng-content></ng-content>'})\r\nexport class ListColumnComponent {\r\n @Input() title: string | null = null;\r\n // tslint:disable-next-line:no-input-rename\r\n @Input('full-width') fullWidth = false;\r\n @ContentChild(TemplateRef) template: any | null = null;\r\n constructor() { }\r\n}\r\n","import { Component, ContentChild, Input, OnInit, TemplateRef } from '@angular/core';\r\n\r\n@Component({ selector: 'lib-list-details-section', template: '<ng-content></ng-content>' })\r\nexport class ListDetailsSectionComponent{\r\n @ContentChild(TemplateRef) template: any | null = null;\r\n constructor() {\r\n }\r\n}\r\n","import { Component, ContentChild, ContentChildren, EventEmitter, Input, Output, QueryList, OnChanges, SimpleChanges } from '@angular/core';\r\nimport { MenuOption, ListViewType } from '../../types';\r\nimport { ListTileComponent } from './list-tile.component';\r\nimport { ListColumnComponent } from './list-column.component';\r\nimport { ListDetailsSectionComponent } from './list-details-section.component';\r\nimport { Icons } from '../../icons';\r\n\r\n@Component({\r\n selector: 'lib-list-view',\r\n templateUrl: './list-view.component.html'\r\n})\r\nexport class ListViewComponent implements OnChanges {\r\n public expandIcon = Icons.Expand;\r\n public collapseIcon = Icons.Collapse;\r\n // tslint:disable-next-line:no-input-rename\r\n @Input('show-pager') showPager = true;\r\n // DATA SOURCE!\r\n @Input() items: any[] | null | undefined;\r\n\r\n // PAGING - pass through for pager component\r\n @Input() count: number | null = null;\r\n @Input() page = 1;\r\n // tslint:disable-next-line:no-input-rename\r\n @Input('page-size') pageSize = 20;\r\n // tslint:disable-next-line:no-input-rename\r\n @Input('page-size-options') pageSizeOptions: MenuOption[] = [];\r\n @Output() pageChanged: EventEmitter<number> = new EventEmitter<number>();\r\n @Output() pageSizeChanged: EventEmitter<number> = new EventEmitter<number>();\r\n @Output() detailsOpened: EventEmitter<{item: any, open: boolean}> = new EventEmitter<{item: any, open: boolean}>();\r\n\r\n public tableViewSupported = false;\r\n private multipleFullWidth = false;\r\n public fullWidthTHClass = 'list-view-th-full';\r\n public fullWidthTDClass = 'list-view-td-full';\r\n public tilesViewSupported = false;\r\n public detailsSectionSupported = false;\r\n\r\n @Input() view = ListViewType.Table;\r\n\r\n // SORTING - pass through for pager component\r\n // tslint:disable-next-line:no-input-rename\r\n @Input('sort-options') sortOptions: MenuOption[] = [];\r\n // tslint:disable-next-line:no-input-rename\r\n @Input('sort') sort: string | null = null;\r\n // tslint:disable-next-line:no-input-rename\r\n @Input('sort-dir') sortdir: string | null = '-';\r\n @Output() sortChanged: EventEmitter<string> = new EventEmitter<string>();\r\n @Output() sortdirChanged: EventEmitter<string> = new EventEmitter<string>();\r\n\r\n // COLUMNS\r\n public columns: any[] = [];\r\n @ContentChildren(ListColumnComponent, { read: ListColumnComponent })\r\n set cols(refs: QueryList<ListColumnComponent>) {\r\n this.columns = refs?.toArray();\r\n if (this.columns && this.columns.length > 0) {\r\n this.tableViewSupported = true;\r\n }\r\n this.multipleFullWidth = this.columns.filter(c => c.fullWidth).length > 1;\r\n this.fullWidthTHClass = this.multipleFullWidth ? 'list-view-th-half' : 'list-view-th-full';\r\n this.fullWidthTDClass = this.multipleFullWidth ? 'list-view-td-half' : 'list-view-td-full';\r\n }\r\n\r\n public tilesDeckClass = 'cards-deck-4';\r\n // tslint:disable-next-line:no-input-rename\r\n @Input('tiles-count') tilesCount = 4;\r\n\r\n public tileTemplate: any | null | undefined = null;\r\n @ContentChild(ListTileComponent, {read: ListTileComponent})\r\n set tiles(ref: ListTileComponent) {\r\n this.tileTemplate = ref;\r\n if (this.tileTemplate) {\r\n this.tilesViewSupported = true;\r\n }\r\n }\r\n\r\n public detailsTemplate: any | null | undefined = null;\r\n @ContentChild(ListDetailsSectionComponent, {read: ListDetailsSectionComponent})\r\n set details(ref: ListDetailsSectionComponent) {\r\n this.detailsTemplate = ref;\r\n if (this.detailsTemplate) {\r\n this.detailsSectionSupported = true;\r\n }\r\n }\r\n\r\n constructor() { }\r\n\r\n ngOnChanges(changes: SimpleChanges): void {\r\n const tilesCountChange = changes['tiles-count'] || changes.tilesCount ;\r\n if (tilesCountChange) {\r\n this.setTilesDeckClass(tilesCountChange.currentValue);\r\n }\r\n }\r\n\r\n // events\r\n public emitPageChanged($event: number): void {\r\n this.pageChanged.emit($event);\r\n }\r\n\r\n public emitPageSizeChanged($event: number): void {\r\n this.pageSizeChanged.emit($event);\r\n }\r\n\r\n public emitSortChanged($event: string): void {\r\n this.sortChanged.emit($event);\r\n }\r\n public emitSortdirChanged($event: string): void {\r\n this.sortdirChanged.emit($event);\r\n }\r\n\r\n public toggleDetails(item: any): void {\r\n item.detailsExpanded = !item.detailsExpanded;\r\n this.detailsOpened.emit({ item, open: item.detailsExpanded });\r\n }\r\n\r\n // helpers\r\n private setTilesDeckClass(tiles: number): void {\r\n if ( tiles >= 1 && tiles <= 4 ) {\r\n this.tilesDeckClass = `cards-deck-${tiles}`;\r\n } else {\r\n this.tilesDeckClass = 'cards-deck-3';\r\n }\r\n }\r\n\r\n}\r\n","import { Component, Input, OnInit } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'lib-list-view-empty-state',\r\n templateUrl: './list-view-empty-state.component.html'\r\n})\r\nexport class ListViewEmptyStateComponent implements OnInit {\r\n\r\n @Input() title = 'Δεν βρέθηκαν εγγραφές.';\r\n // tslint:disable-next-line:no-input-rename\r\n @Input('sub-title') subTitle = 'Παρακαλώ αλλάξτε τα κριτήρια αναζήτησης σας ή ξεκινήστε προσθέτοντας μια νέα εγγραφή';\r\n // tslint:disable-next-line:no-input-rename\r\n @Input('new-item-label') newItemLabel = 'Νέα εγγραφή';\r\n constructor() { }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n}\r\n","import { Component, Input, OnInit } from '@angular/core';\r\n\r\n@Component({\r\n // tslint:disable-next-line:component-selector\r\n selector: 'lib-skeleton-loader',\r\n templateUrl: './skeleton-loader.component.html'\r\n})\r\nexport class SkeletonLoaderComponent implements OnInit {\r\n @Input() count = 5;\r\n @Input() type = 'tiles'; // 'large-tile', 'table'\r\n constructor() { }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n public counter(i: number): number[] {\r\n return new Array(i);\r\n }\r\n\r\n}\r\n","import { Component, Input, OnInit } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'lib-collapsible-panel',\r\n templateUrl: './collapsible-panel.component.html'\r\n})\r\nexport class CollapsiblePanelComponent implements OnInit {\r\n @Input() title: string | null = null;\r\n public visible = false;\r\n\r\n constructor() { }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n}\r\n","import { Component, EventEmitter, Input, OnInit, Output } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'lib-kpi-tile',\r\n templateUrl: './kpi-tile.component.html'\r\n})\r\nexport class KpiTileComponent implements OnInit {\r\n\r\n @Input() title: string | undefined = undefined;\r\n @Input() busy = false;\r\n @Input() kpi: any | undefined = undefined;\r\n // tslint:disable-next-line:no-output-rename\r\n @Output('tile-action') tileAction: EventEmitter<any> = new EventEmitter<any>();\r\n constructor() { }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n public emitTileAction($event: any): boolean {\r\n $event.preventDefault();\r\n $event.stopPropagation();\r\n this.tileAction.emit($event);\r\n return false;\r\n }\r\n\r\n}\r\n","import { Component, ElementRef, EventEmitter, forwardRef, Input, OnInit, Output, ViewChild } from '@angular/core';\r\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\r\n\r\n// freaksly simple date picker : https://tailwind-elements.com/docs/standard/forms/datepicker/\r\n@Component({\r\n selector: 'lib-date-picker',\r\n templateUrl: './date-picker.component.html',\r\n providers: [\r\n {\r\n provide: NG_VALUE_ACCESSOR,\r\n useExisting: forwardRef(() => DatepickerComponent),\r\n multi: true\r\n }\r\n ]\r\n})\r\nexport class DatepickerComponent implements OnInit, ControlValueAccessor {\r\n @Input() readonly: boolean = true;\r\n @Input() disabled: boolean = false;\r\n @Input('display-format') displayFormat: string | undefined = 'dd/MM/yyyy';\r\n @Input() placeholder: string | undefined = '';\r\n @Input() value: Date | undefined | null = null;\r\n @Output() valueChange: EventEmitter<Date> = new EventEmitter<Date>();\r\n @ViewChild('dateInput') dateInput: ElementRef | undefined;\r\n public showCalendar = false;\r\n public showYears = false;\r\n public monthNames = [\r\n 'Ιανουάριος',\r\n 'Φεβρουάριος',\r\n 'Μάρτιος',\r\n 'Απρίλιος',\r\n 'Μάϊος',\r\n 'Ιούνιος',\r\n 'Ιούλιος',\r\n 'Αύγουστος',\r\n 'Σεπτέμβριος',\r\n 'Οκτώβριος',\r\n 'Νοεμβριος',\r\n 'Δεκέμβριος',\r\n ];\r\n public dayNames = ['Κυρ', 'Δευ', 'Τρι', 'Τετ', 'Πεμ', 'Παρ', 'Σαβ'];\r\n\r\n public month: number = -1;\r\n public year: number = -1;\r\n public calendarDates: any[] = [];\r\n public calendarYears: any[] = [];\r\n public showCalendarYears: any[] = [];\r\n public blankDays: any[] = [];\r\n public calendarYearPage = 1;\r\n private yearsPerPage = 30;\r\n\r\n private onChange$: any | undefined = undefined;\r\n private onTouched$: any | undefined = undefined;\r\n\r\n ngOnInit(): void {\r\n let today = new Date();\r\n this.month = today.getMonth();\r\n this.year = today.getFullYear();\r\n this.calendarDates = [{ day: this.value, today: this.value, selected: this.value }];\r\n this.calendarYears = [{ year: this.value?.getFullYear(), today: this.value, selected: this.value }];\r\n const yearsArray = [];\r\n for (let i = 1950; i <= today.getFullYear() + 2; i++) {\r\n yearsArray.push({ year: i, today: this.compareDates(today, null, i), selected: i == this.value?.getFullYear() });\r\n }\r\n this.calendarYears = yearsArray;\r\n this.showCalendarYears = this.paginate(this.calendarYears, 1);\r\n this.calcDays();\r\n }\r\n\r\n public compareDates(date1: Date | undefined | null, day: number | null | undefined, year: number | null | undefined): boolean {\r\n if (!date1) {\r\n return false;\r\n }\r\n const d = new Date(year ?? this.year, this.month, day ?? this.value?.getDay());\r\n return date1.toDateString() === d.toDateString();\r\n };\r\n\r\n public selectDateValue(date: any): void {\r\n // This should be in UTC\r\n let selectedDate = new Date(this.year, this.month, date.day, 3, 0, 0, 0);\r\n this.value = selectedDate;\r\n this.valueChange.emit(this.value);\r\n if (this.onChange$) {\r\n this.onChange$(this.value);\r\n }\r\n this.updateDays();\r\n if (this.onTouched$) {\r\n this.onTouched$();\r\n }\r\n this.showCalendar = false;\r\n }\r\n\r\n public selectYearValue(year: any): void {\r\n let selectedDate = new Date(year.year, 1, 1, 2, 0, 0, 0);\r\n this.year = year.year;\r\n this.value = selectedDate;\r\n this.valueChange.emit(this.value);\r\n if (this.onChange$) {\r\n this.onChange$(this.value);\r\n }\r\n this.updateDays();\r\n if (this.onTouched$) {\r\n this.onTouched$();\r\n }\r\n this.showYears = false;\r\n this.showCalendar = true;\r\n }\r\n\r\n public previousMonth(): void {\r\n if (this.month !== 0) {\r\n this.month = this.month - 1;\r\n this.calcDays();\r\n } else {\r\n this.month = 11;\r\n this.year = this.year - 1;\r\n this.calcDays();\r\n }\r\n if (this.onTouched$) {\r\n this.onTouched$();\r\n }\r\n }\r\n\r\n public nextMonth(): void {\r\n if (this.month !== 11) {\r\n this.month = this.month + 1;\r\n this.calcDays();\r\n } else {\r\n this.month = 0;\r\n this.year = this.year + 1;\r\n this.calcDays();\r\n }\r\n if (this.onTouched$) {\r\n this.onTouched$();\r\n }\r\n }\r\n\r\n public previousYear(): void {\r\n this.showCalendarYears = this.paginate(\r\n this.calendarYears,\r\n this.calendarYearPage > 1 ? --this.calendarYearPage : 1);\r\n this.calcDays();\r\n if (this.onTouched$) {\r\n this.onTouched$();\r\n }\r\n }\r\n\r\n public nextYear(): void {\r\n this.showCalendarYears = this.paginate(\r\n this.calendarYears,\r\n this.calendarYearPage <= this.calendarYears.length / this.yearsPerPage ? ++this.calendarYearPage : this.calendarYearPage);\r\n this.calcDays();\r\n if (this.onTouched$) {\r\n this.onTouched$();\r\n }\r\n }\r\n\r\n public calcDays(): void {\r\n const daysInMonth = new Date(this.year, this.month + 1, 0).getDate();\r\n // find where to start calendar day of week\r\n const dayOfWeek = new Date(this.year, this.month).getDay();\r\n const blankdaysArray = [];\r\n for (var i = 1; i <= dayOfWeek; i++) {\r\n blankdaysArray.push(i);\r\n }\r\n\r\n const daysArray = [];\r\n const today = new Date();\r\n for (var i = 1; i <= daysInMonth; i++) {\r\n daysArray.push({ day: i, today: this.compareDates(today, i, null), selected: this.compareDates(this.value, i, null) });\r\n }\r\n const yearsArray = [];\r\n for (let i = 1950; i <= today.getFullYear() + 2; i++) {\r\n yearsArray.push({ year: i, today: this.compareDates(today, null, i), selected: i == this.year });\r\n }\r\n this.calendarYears = yearsArray;\r\n this.blankDays = blankdaysArray;\r\n this.calendarDates = daysArray;\r\n }\r\n\r\n private updateDays(): void {\r\n const today = new Date();\r\n this.calendarDates.forEach(d => {\r\n d.today = this.compareDates(today, d, this.year);\r\n d.selected = this.compareDates(this.value, d, this.year);\r\n });\r\n }\r\n\r\n constructor() { }\r\n\r\n writeValue(obj: any): void {\r\n if (obj) {\r\n this.value = new Date(obj);\r\n this.month = this.value.getMonth();\r\n this.year = this.value.getFullYear();\r\n }\r\n }\r\n\r\n registerOnChange(fn: (_: any) => void): void {\r\n this.onChange$ = fn;\r\n }\r\n\r\n registerOnTouched(fn: any): void {\r\n this.onTouched$ = fn;\r\n }\r\n\r\n public onBlur(event: any): void {\r\n if (this.onTouched$) {\r\n this.onTouched$();\r\n }\r\n }\r\n\r\n public paginate(array: any[], page_number: number): any[] {\r\n return array.slice((page_number - 1) * this.yearsPerPage, page_number * this.yearsPerPage);\r\n }\r\n\r\n public openYears() {\r\n this.showYears = !this.showYears;\r\n this.showCalendarYears = this.paginate(this.calendarYears, 1);\r\n this.calcDays();\r\n }\r\n\r\n public openCalendar() {\r\n this.showCalendar = !this.showCalendar\r\n this.calcDays();\r\n }\r\n\r\n}","import { Injectable } from '@angular/core';\r\nimport { BehaviorSubject, Observable } from 'rxjs';\r\nimport { filter } from 'rxjs/operators';\r\nimport { Toast, ToastType, NULL_TOAST } from '../types';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class ToasterService {\r\n\r\n private subject: BehaviorSubject<Toast>;\r\n public toast$: Observable<Toast>;\r\n\r\n constructor() {\r\n this.subject = new BehaviorSubject<Toast>(NULL_TOAST);\r\n this.toast$ = this.subject.asObservable()\r\n .pipe(filter( toast => toast !== null && toast.title !== NULL_TOAST.title ));\r\n }\r\n\r\n public show(type: ToastType, title?: string, body?: string, delay?: number): void {\r\n this.subject.next({ type, title, body, delay } as Toast);\r\n }\r\n}\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { ToasterService } from '../../services/toaster.service';\r\nimport { Toast } from '../../types';\r\n\r\n@Component({\r\n selector: 'lib-toaster-container',\r\n templateUrl: './toaster-container.component.html'\r\n})\r\nexport class ToasterContainerComponent implements OnInit {\r\n\r\n toasts: Toast[] = [];\r\n\r\n constructor(private toaster: ToasterService) { }\r\n\r\n ngOnInit(): void {\r\n this.toaster.toast$\r\n .subscribe(toast => {\r\n this.toasts = [toast, ...this.toasts];\r\n setTimeout(() => this.toasts.pop(), toast.delay || 6000);\r\n });\r\n }\r\n\r\n remove(index: number): void {\r\n this.toasts = this.toasts.slice(0, index).concat(this.toasts.slice(index + 1));\r\n }\r\n\r\n}\r\n","import { Component, EventEmitter, Input, OnInit, Output } from '@angular/core';\r\nimport { Toast } from '../../types';\r\n\r\n@Component({\r\n selector: 'lib-toaster',\r\n templateUrl: './toaster.component.html'\r\n})\r\nexport class ToasterComponent implements OnInit {\r\n\r\n @Input() toast: Toast | undefined;\r\n @Input() i = 0;\r\n @Output() remove = new EventEmitter<number>();\r\n public isMobile = false;\r\n public closed = false;\r\n\r\n constructor() { }\r\n\r\n ngOnInit(): void {\r\n window.screen.width > 640 ? this.isMobile = false : this.isMobile = true;\r\n }\r\n\r\n public closeToast(index: number): void {\r\n this.closed = true;\r\n setTimeout(() => this.remove.emit(index), 100);\r\n }\r\n}\r\n","import { Component, Input, OnInit } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'lib-avatar-initials',\r\n templateUrl: './avatar-initials.component.html'\r\n})\r\nexport class AvatarInitialsComponent implements OnInit {\r\n @Input()\r\n public name: string | null | undefined;\r\n @Input()\r\n public large = false;\r\n public initials?: string;\r\n public circleColor!: string;\r\n private colors = [\r\n '#EB7181', // red\r\n '#468547', // green\r\n '#FFD558', // yellow\r\n '#3670B2', // blue\r\n ];\r\n\r\n constructor() { }\r\n\r\n ngOnInit(): void {\r\n this.createInititals();\r\n const randomIndex = Math.floor(Math.random() * Math.floor(this.colors.length));\r\n // assign this to a class if you want to randomly change background colors of the circle.\r\n this.circleColor = this.colors[randomIndex];\r\n }\r\n\r\n private createInititals(): void {\r\n if (this.name) {\r\n let initials = '';\r\n for (let i = 0; i < this.name.length; i++) {\r\n if (this.name.charAt(i) === ' ') {\r\n continue;\r\n }\r\n if (this.name.charAt(i) === this.name.charAt(i).toUpperCase()) {\r\n initials += this.name.charAt(i);\r\n if (initials.length === 2) {\r\n break;\r\n }\r\n }\r\n }\r\n this.initials = initials;\r\n }\r\n }\r\n}\r\n","import { Component, EventEmitter, forwardRef, Input, OnInit, Output } from '@angular/core';\nimport { NG_VALUE_ACCESSOR, ControlValueAccessor } from '@angular/forms';\n\n@Component({\n selector: 'lib-toggle',\n templateUrl: './toggle.component.html',\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => ToggleComponent),\n multi: true\n }\n ]\n})\nexport class ToggleComponent implements OnInit, ControlValueAccessor {\n @Input()\n public value: boolean | null | undefined;\n @Input()\n public disabled:boolean | null | undefined;\n @Output() valueChange: EventEmitter<Boolean> = new EventEmitter<Boolean>();\n\n private onChange$: any | undefined = undefined;\n private onTouched$: any | undefined = undefined;\n\n constructor() { }\n writeValue(obj: any): void {\n if(obj) {\n this.value = obj || false;\n }\n }\n registerOnChange(fn: any): void {\n this.onChange$ = fn;\n }\n registerOnTouched(fn: any): void {\n this.onTouched$ = fn;\n }\n\n public onBlur(event: any): void {\n if(this.onTouched$) {\n this.onTouched$();\n }\n }\n\n ngOnInit(): void {\n }\n\n public changeValue(){\n this.value = !this.value;\n this.valueChange.emit(this.value);\n if(this.onChange$) {\n this.onChange$(this.value);\n }\n if(this.onTouched$) {\n this.onTouched$();\n }\n }\n}","import { InjectionToken } from '@angular/core';\r\nimport { IAppLinks, IShellConfig } from './types';\r\n\r\nexport const APP_LINKS = new InjectionToken<IAppLinks>('APP_LINKS');\r\nexport const SHELL_CONFIG = new InjectionToken<IShellConfig>('SHELL_CONFIG');\r\n","import { Injectable, ComponentFactoryResolver, ViewContainerRef } from '@angular/core';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class ComponentLoaderService {\r\n constructor(private cfr: ComponentFactoryResolver) { }\r\n\r\n public loadComponent(vcr: ViewContainerRef, component: any): void {\r\n vcr.clear();\r\n const componentFactory = this.cfr.resolveComponentFactory(component);\r\n const componentRef = vcr.createComponent(componentFactory);\r\n // TL;TR Force change detection on this component, where change detection means force lifecycle hooks to run\r\n // In order to avoid NG0100: Expression has changed after it was checked\r\n // The above error is caused because the view is rendered before the lifecycle hooks are called,\r\n // resulting in bindind expression changes\r\n // A somewhat explanation here:\r\n // https://stackoverflow.com/questions/56427104/when-is-oninit-event-triggered-for-a-dynamically-loaded-angular-component\r\n componentRef.changeDetectorRef.detectChanges();\r\n }\r\n}\r\n","import { Directive, ViewContainerRef, Input } from '@angular/core';\r\n\r\n@Directive({ selector: '[appDynamicComponentHost]' })\r\nexport class DynamicComponentHostDirective {\r\n @Input() hostName: string = '';\r\n constructor(public viewContainerRef: ViewContainerRef) {}\r\n}","import { SHELL_CONFIG } from './../../../tokens';\r\nimport { IShellConfig, DefaultShellConfig } from './../../../types';\r\nimport { AfterViewInit, Component, OnInit, OnDestroy, Inject, ViewChildren, ViewContainerRef, QueryList } from '@angular/core';\r\nimport { DOCUMENT, Location } from '@angular/common';\r\nimport { ActivationStart, Router } from '@angular/router';\r\nimport { filter } from 'rxjs/operators';\r\nimport { Subscription } from 'rxjs';\r\nimport { ComponentLoaderService } from '../../../services/component-loader.service';\r\nimport { DynamicComponentHostDirective } from '../../../directives/dynamic-component-host.directive';\r\n\r\n@Component({\r\n // tslint:disable-next-line:component-selector\r\n selector: 'lib-shell-layout',\r\n templateUrl: './shell-layout.component.html'\r\n})\r\nexport class ShellLayoutComponent implements OnInit, OnDestroy, AfterViewInit {\r\n @ViewChildren(DynamicComponentHostDirective)\r\n dynamicComponentHosts: QueryList<DynamicComponentHostDirective> | null = null;\r\n public showRightPaneSM = false;\r\n private routerSub$: Subscription | null = null;\r\n public activeConfig: IShellConfig = new DefaultShellConfig();\r\n constructor(@Inject(DOCUMENT) private document: any,\r\n private router: Router, private location: Location,\r\n @Inject(SHELL_CONFIG) private config: IShellConfig | null,\r\n private componentLoaderService: ComponentLoaderService) {\r\n if (!config) {\r\n config = new DefaultShellConfig();\r\n }\r\n this.activeConfig = config;\r\n }\r\n\r\n ngOnInit(): void {\r\n this.routerSub$ = this.router.events\r\n .pipe(filter(event => event instanceof ActivationStart))\r\n .subscribe((e) => {\r\n // console.log('ShellLayoutComponent ActivationStart', e);\r\n if ((e as ActivationStart)?.snapshot) {\r\n // console.log('ShellLayoutComponent ActivationStart snapshot', (e as ActivationStart)?.snapshot);\r\n if ((e as ActivationStart)?.snapshot?.data) {\r\n // console.log('ShellLayoutComponent ActivationStart snapshot data', (e as ActivationStart)?.snapshot.data);\r\n if ((e as ActivationStart)?.snapshot?.data.shell) {\r\n // console.log('ShellLayoutComponent ActivationStart snapshot data shell params',\r\n // (e as ActivationStart)?.snapshot.data.shell);\r\n this.activeConfig = (e as ActivationStart)?.snapshot.data.shell as IShellConfig;\r\n // console.log('ShellLayoutComponent activeConfig from route: ', this.activeConfig);\r\n if (this.activeConfig.customHeaderComponent) {\r\n this.initCustomComponents();\r\n }\r\n } else {\r\n this.activeConfig = this.config ? this.config : new DefaultShellConfig();\r\n // console.log('ShellLayoutComponent default activeConfig: ', this.activeConfig);\r\n }\r\n }\r\n }\r\n });\r\n\r\n }\r\n\r\n ngAfterViewInit(): void {\r\n this.initCustomComponents();\r\n }\r\n\r\n private initCustomComponents(): void {\r\n if(this.dynamicComponentHosts && this.dynamicComponentHosts.length > 0){\r\n this.loadCustomComponent(this.dynamicComponentHosts.find(_ => _.hostName === 'Header'));\r\n // since you're not using it...\r\n // this.loadCustomComponent(this.dynamicComponentHosts.find(_ => _.hostName === 'Footer'));\r\n }\r\n }\r\n\r\n ngOnDestroy(): void {\r\n if (this.routerSub$) {\r\n this.routerSub$.unsubscribe();\r\n }\r\n }\r\n\r\n private loadCustomComponent(host: DynamicComponentHostDirective | undefined): void{\r\n if (host){\r\n const viewContainerRef = host.viewContainerRef;\r\n if (viewContainerRef && this.activeConfig.customHeaderComponent) {\r\n this.componentLoaderService.loadComponent(viewContainerRef, this.activeConfig.customHeaderComponent);\r\n }\r\n }\r\n }\r\n}\r\n","import { Component, OnInit, OnDestroy, Inject, Input } from '@angular/core';\r\nimport { User } from 'oidc-client';\r\nimport { Event, NavigationStart, Router, RouterEvent } from '@angular/router';\r\nimport { filter } from 'rxjs/operators';\r\nimport { NavLink } from '../../../types';\r\nimport { AuthService } from '@indice/ng-auth';\r\nimport { APP_LINKS, SHELL_CONFIG } from '../../../tokens';\r\nimport { BehaviorSubject, Observable, Subject, SubscriptionLike } from 'rxjs';\r\nimport { Subscription } from 'rxjs';\r\n\r\n@Component({\r\n // tslint:disable-next-line:component-selector\r\n selector: 'lib-shell-header',\r\n templateUrl: './shell-header.component.html'\r\n})\r\nexport class ShellHeaderComponent implements OnInit, OnDestroy {\r\n // tslint:disable-next-line:no-input-rename\r\n @Input('section-links') sectionLinksPath = 'main';\r\n // tslint:disable-next-line:no-input-rename\r\n @Input('profile-menu') profileMenuVisible = true;\r\n @Input() border = true;\r\n public sectionLinks: NavLink[] = [];\r\n public mobileMenuExpanded = false;\r\n public userMenuExpanded = false;\r\n protected routeSubject: Observable<Event>;\r\n protected userSubject: BehaviorSubject<any>;\r\n protected routerSub$: Subscription | null = null;\r\n protected userSub$: Subscription | null = null;\r\n protected statusSub$: Subscription | null = null;\r\n public user: User | null = null;\r\n public avatarName: string | null = null;\r\n\r\n constructor(@Inject(AuthService) protected authService: AuthService,\r\n @Inject(Router) protected router: Router,\r\n @Inject(SHELL_CONFIG) public config: any,\r\n @Inject(APP_LINKS) public links: any) {\r\n this.routeSubject = this.router.events.pipe(filter(event => event instanceof NavigationStart));\r\n this.userSubject = this.authService.userStatus;\r\n }\r\n\r\n ngOnDestroy(): void {\r\n if (this.routerSub$) {\r\n this.routerSub$.unsubscribe();\r\n }\r\n // TODO: check authenticated user here before we start polling server status\r\n if (this.statusSub$) {\r\n this.statusSub$.unsubscribe();\r\n }\r\n if (this.userSub$) {\r\n this.userSub$.unsubscribe();\r\n }\r\n }\r\n\r\n ngOnInit(): void {\r\n this.sectionLinks = this.links[this.sectionLinksPath] as NavLink[];\r\n this.routerSub$ = this.routeSubject.subscribe(event => {\r\n this.mobileMenuExpanded = false;\r\n this.userMenuExpanded = false;\r\n });\r\n this.authService.loadUser().then(user => {\r\n this.setCurrentUser(user);\r\n }, error => {\r\n //console.log(error);\r\n });\r\n // Detect user changes and display / or not user info accordingly...\r\n this.userSub$ = this.userSubject.subscribe((user: any) => {\r\n //console.log('ShellHeaderComponent user subscription');\r\n this.setCurrentUser(user);\r\n });\r\n }\r\n\r\n // tslint:disable-next-line:typedef\r\n public onClickOutside($event: any) {\r\n this.userMenuExpanded = false;\r\n }\r\n\r\n public signin(event: any | null | undefined): void {\r\n if (event) {\r\n event.preventDefault();\r\n }\r\n this.authService.startAuthentication();\r\n }\r\n\r\n private setCurrentUser(user: any): void {\r\n this.user = user;\r\n if (this.user && this.user.profile) {\r\n this.avatarName = `${this.user.profile.given_name?.charAt(0)}${this.user.profile.family_name?.charAt(0)}`;\r\n //console.log('load user', this.avatarName);\r\n }\r\n }\r\n}\r\n\r\n","import { Component, Inject } from '@angular/core';\r\nimport { APP_LINKS } from '../../../tokens';\r\nimport { IAppLinks } from '../../../types';\r\n\r\n@Component({\r\n selector: 'lib-shell-footer',\r\n templateUrl: './shell-footer.component.html'\r\n\r\n})\r\n\r\nexport class ShellFooterComponent {\r\n constructor(@Inject(APP_LINKS) public links: IAppLinks) {\r\n }\r\n}\r\n","import { SwitchViewAction } from '../../../types';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { Component, Input, OnInit, Output, EventEmitter, ViewChild, ElementRef } from '@angular/core';\r\nimport { fromEvent } from 'rxjs';\r\nimport { debounceTime, distinctUntilChanged, filter, map } from 'rxjs/operators';\r\nimport { HeaderMetaItem, RouterViewAction, ViewAction } from '../../../types';\r\n\r\n@Component({\r\n selector: 'lib-view-layout',\r\n templateUrl: './view-layout.component.html'\r\n})\r\nexport class ViewLayoutComponent implements OnInit {\r\n // tslint:disable-next-line:no-input-rename\r\n @ViewChild('search') private searchInput$?: ElementRef;\r\n // tslint:disable-next-line:no-input-rename\r\n @Input('show-header') header = true;\r\n @Input() fluid = false;\r\n @Input() title = 'no title';\r\n @Input() icon: string | null = null;\r\n @Input() actions: ViewAction[] | null = null;\r\n @Input() busy = false;\r\n // tslint:disable-next-line:no-input-rename\r\n @Input('search-placeholder') searchPlaceholder: string | null = 'αναζήτηση'\r\n @Input() view: string | null = null;\r\n // tslint:disable-next-line:no-input-rename\r\n @Input('meta-items') metaItems: HeaderMetaItem[] | null = [\r\n // { key: 'test', icon: Icons.Badges, text: 'βρέθηκαν 200 αποτελέσματα' }\r\n ];\r\n // tslint:disable-next-line:no-output-on-prefix\r\n @Output() onAction: EventEmitter<ViewAction> = new EventEmitter<ViewAction>();\r\n // tslint:disable-next-line:no-output-on-prefix\r\n @Output() onSearch: EventEmitter<string> = new EventEmitter<string>();\r\n\r\n constructor(private route$: ActivatedRoute, private router$: Router) { }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n public emitActionClick(action: ViewAction): void {\r\n this.onAction.emit(action);\r\n }\r\n\r\n public routerLinkActionClick(action: RouterViewAction | any): void {\r\n //console.log('routerLinkActionClick', action);\r\n if (action.outlet) {\r\n this.router$.navigate(['', { outlets: { rightpane: action.link } }]);\r\n } else {\r\n this.router$.navigate([action.link]);\r\n }\r\n }\r\n\r\n searchActionClick(action: ViewAction, text: string): void {\r\n this.onSearch.emit(text);\r\n }\r\n\r\n searchActionType(text: string): void {\r\n fromEvent(this.searchInput$?.nativeElement, 'keyup').pipe(\r\n map((event: any) => {\r\n return event.target.value; // Get input value.\r\n }),\r\n filter(inputValue => inputValue.length >= 3 || inputValue.length === 0),\r\n // If character length greater than minimumSearchCharacters setting.\r\n debounceTime(1000), // Time in milliseconds between key events.\r\n distinctUntilChanged() // If previous query is different from current.\r\n ).subscribe(_ => {\r\n this.onSearch.emit(this.searchInput$?.nativeElement.value);\r\n });\r\n }\r\n\r\n public switchViewActionClick(action: SwitchViewAction | any): void {\r\n //console.log('switchViewActionClick', action);\r\n this.view = action.param;\r\n if (action && action.param) {\r\n this.router$.navigate([], { queryParams: { view: action.param }, queryParamsHandling: 'merge', skipLocationChange: false });\r\n }\r\n }\r\n\r\n}\r\n","import { Component, Input, OnInit } from '@angular/core';\r\nimport { Location } from '@angular/common';\r\nimport { HeaderMetaItem } from '../../../types';\r\n\r\n@Component({\r\n // tslint:disable-next-line:component-selector\r\n selector: 'lib-model-view-layout',\r\n templateUrl: './model-view-layout.component.html'\r\n})\r\nexport class ModelViewLayoutComponent implements OnInit {\r\n public showRightPaneSM = false;\r\n @Input() title = 'no title';\r\n // tslint:disable-next-line:no-input-rename\r\n @Input('primary-links') primary: { text: string, link: string }[] | null = null;\r\n // tslint:disable-next-line:no-input-rename\r\n @Input('secondary-links') secondary: { text: string, link: string }[] | null = null;\r\n // tslint:disable-next-line:no-input-rename\r\n @Input('meta-items') metaItems: HeaderMetaItem[] | null = [\r\n // { key: 'test', icon: Icons.Badges, text: 'βρέθηκαν 200 αποτελέσματα' }\r\n ];\r\n constructor( private location: Location) { }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n public onSidePaneActivated($event: any): void {\r\n //console.log('onSidePaneActivated', $event);\r\n this.showRightPaneSM = true;\r\n }\r\n\r\n public onSidePaneDeactivated($event: any): void {\r\n //console.log('onSidePaneActivated', $event);\r\n this.showRightPaneSM = false;\r\n }\r\n\r\n public closeSidePane(): void {\r\n this.location.back();\r\n }\r\n}\r\n","import { Router } from '@angular/router';\r\nimport { Component, Input, OnInit, Output, EventEmitter } from '@angular/core';\r\nimport { Location } from '@angular/common';\r\n\r\n@Component({\r\n selector: 'lib-side-view-layout',\r\n templateUrl: './side-view-layout.component.html'\r\n})\r\nexport class SideViewLayoutComponent implements OnInit {\r\n @Input() title: string | null = 'Πληροφορίες';\r\n @Input() showActions = true;\r\n @Input() disabled = false;\r\n // tslint:disable-next-line:no-input-rename\r\n @Input('return-path') returnPath: string | undefined;\r\n // tslint:disable-next-line:no-input-rename\r\n @Input('ok-label') okLabel = 'Αποθήκευση';\r\n // tslint:disable-next-line:no-input-rename\r\n @Input('ok-show') okShow = true;\r\n // tslint:disable-next-line:no-input-rename\r\n @Input('ok-close-dialog') closeOnOk = true;\r\n // tslint:disable-next-line:no-input-rename\r\n @Input('cancel-label') cancelLabel = 'Ακύρωση';\r\n // tslint:disable-next-line:no-input-rename\r\n @Input('cancel-show') cancelShow = true;\r\n // @Output() close = new EventEmitter<any>();\r\n @Output() cancel: EventEmitter<boolean> = new EventEmitter();\r\n @Output() ok: EventEmitter<boolean> = new EventEmitter();\r\n\r\n constructor(private location: Location, private router: Router) { }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n public closeSidePane(): void {\r\n if (this.returnPath) {\r\n this.router.navigateByUrl('/', {skipLocationChange: true}).then(() => this.router.navigateByUrl(this.returnPath || '/'));\r\n } else {\r\n this.location.back();\r\n }\r\n }\r\n\r\n public emitClose(): void {\r\n this.cancel.emit(false);\r\n this.closeSidePane();\r\n }\r\n\r\n public emitCancel(): void {\r\n this.cancel.emit(false);\r\n this.closeSidePane();\r\n }\r\n\r\n public emitOK(): void {\r\n this.ok.emit(true);\r\n if(this.closeOnOk) {\r\n this.closeSidePane();\r\n }\r\n }\r\n\r\n}\r\n","import { Component, ElementRef, EventEmitter, Input, OnInit, Output, ViewChild } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { fromEvent } from 'rxjs';\r\nimport { map, filter, debounceTime, distinctUntilChanged } from 'rxjs/operators';\r\nimport { RouterViewAction, ViewAction } from '../../../types';\r\n\r\n@Component({\r\n selector: 'lib-form-layout',\r\n templateUrl: './form-layout.component.html'\r\n})\r\nexport class FormLayoutComponent implements OnInit {\r\n // tslint:disable-next-line:no-input-rename\r\n @ViewChild('search') private searchInput$?: ElementRef;\r\n @Input() title: string | null = null;\r\n // tslint:disable-next-line:no-input-rename\r\n @Input('search-placeholder') searchPlaceholder: string | null = 'αναζήτηση'\r\n @Input() actions: ViewAction[] | null = null;\r\n // tslint:disable-next-line:no-input-rename\r\n @Input('sub-title') subTitle: string | null = null;\r\n // tslint:disable-next-line:no-output-on-prefix\r\n @Output() onAction: EventEmitter<ViewAction> = new EventEmitter<ViewAction>();\r\n // tslint:disable-next-line:no-output-on-prefix\r\n @Output() onSearch: EventEmitter<string> = new EventEmitter<string>();\r\n @Output() onComplete: EventEmitter<boolean> = new EventEmitter<boolean>();\r\n public showRightPaneSM = false;\r\n\r\n constructor(private router$: Router) { }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n public onSidePaneActivated($event: any): void {\r\n this.showRightPaneSM = true;\r\n }\r\n\r\n public onSidePaneDeactivated($event: any): void {\r\n this.onComplete.emit(true);\r\n this.showRightPaneSM = false;\r\n }\r\n\r\n public emitActionClick(action: ViewAction): void {\r\n this.onAction.emit(action);\r\n }\r\n\r\n searchActionClick(action: ViewAction, text: string): void {\r\n this.onSearch.emit(text);\r\n }\r\n\r\n searchActionType(text: string): void {\r\n fromEvent(this.searchInput$?.nativeElement, 'keyup').pipe(\r\n map((event: any) => {\r\n return event.target.value; // Get input value.\r\n }),\r\n filter(inputValue => inputValue.length >= 3 || inputValue.length === 0),\r\n // If character length greater than minimumSearchCharacters setting.\r\n debounceTime(1000), // Time in milliseconds between key events.\r\n distinctUntilChanged() // If previous query is different from current.\r\n ).subscribe(_ => {\r\n this.onSearch.emit(this.searchInput$?.nativeElement.value);\r\n });\r\n }\r\n\r\n public routerLinkActionClick(action: RouterViewAction | any, relative: boolean = false): void {\r\n if (action.outlet) {\r\n this.router$.navigate(['', { outlets: { formRightPane: action.link } }]);\r\n } else {\r\n this.router$.navigate([action.link]);\r\n }\r\n }\r\n\r\n}\r\n","import { Inject } from '@angular/core';\r\nimport { Component, OnInit } from '@angular/core';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { AuthService } from '@indice/ng-auth';\r\n\r\n@Component({\r\n // tslint:disable-next-line:component-selector\r\n selector: 'lib-auth-callback',\r\n templateUrl: './auth-callback.component.html'\r\n})\r\nexport class AuthCallbackComponent implements OnInit {\r\n public status = 'παρακαλώ περιμένετε...';\r\n\r\n constructor(@Inject(AuthService) private authService: AuthService, private router: Router, private route: ActivatedRoute) { }\r\n\r\n ngOnInit(): void {\r\n const self = this;\r\n this.authService.completeAuthentication().then(() => {\r\n self.authService.isLoggedIn().subscribe((result: any) => {\r\n // i'm sorry!\r\n if (!result) {\r\n self.router.navigate(['/unauthorized']);\r\n return;\r\n }\r\n let navigationUrl = '/dashboard';\r\n if (this.route.data) {\r\n this.route.data.subscribe(data => {\r\n if(data['navigationUrl'] != undefined){\r\n navigationUrl = data['navigationUrl'];\r\n }\r\n })\r\n }\r\n\r\n // did you want to go somewhere?\r\n const user = self.authService.currentUser();\r\n if (user && user.state && user.state.url) {\r\n //console.log('AuthCallbackComponent user state', user.state);\r\n self.router.navigateByUrl(user.state.url);\r\n return;\r\n } else {\r\n self.router.navigateByUrl(navigationUrl);\r\n return;\r\n }\r\n\r\n //\r\n // lets check your subscriptions...\r\n // self.status = `we're loading your subscription information, please wait...`;\r\n // ok get the subscriptions for the user\r\n // self.appState.subscriptions.subscribe((subs) => {\r\n // self.subscriptions = subs;\r\n // if (subs === null || subs.length === 0) {\r\n // self.router.navigate(['/new-subscription']);\r\n // } else if (subs.length === 1) {\r\n // self.status = `welcome ${user.profile.name}, we're loading your configuration information, please wait...`;\r\n // self.selectSubscription(subs[0]);\r\n // } else {\r\n // self.status = `welcome ${user.profile.name}, please select a subscription to proceed...`;\r\n // }\r\n // }, error => {\r\n // self.status = `oups! an error occured, sorry about that! please try again in a while :)`;\r\n // });\r\n //\r\n\r\n });\r\n });\r\n }\r\n\r\n // public selectSubscription(subscription: any) {\r\n // this.appState.selectSubscription(subscription);\r\n // this.router.navigate([subscription.homePath]);\r\n // }\r\n\r\n}\r\n","import { Inject } from '@angular/core';\r\nimport { Component, OnInit } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { AuthService } from '@indice/ng-auth';\r\n\r\n\r\n@Component({ selector: 'lib-auth-renew', template: ''})\r\nexport class AuthRenewComponent implements OnInit {\r\n\r\n constructor(@Inject(AuthService) private authService: AuthService, private router: Router) { }\r\n\r\n ngOnInit(): void {\r\n // console.log('AuthRenewComponent init!!!');\r\n this.authService.manager.signinSilentCallback().catch(() => {\r\n // console.log('redirect to unauthorized!');\r\n this.router.navigate(['/unauthorized']);\r\n });\r\n }\r\n\r\n\r\n}\r\n","import { Component, Inject, OnInit } from '@angular/core';\r\nimport { AuthService } from '@indice/ng-auth';\r\n\r\n@Component({\r\n // tslint:disable-next-line:component-selector\r\n selector: 'lib-logged-out',\r\n templateUrl: './logged-out.component.html'\r\n})\r\nexport class LoggedOutComponent implements OnInit {\r\n status = 'working on it, please give me a sec...';\r\n finished = false;\r\n constructor(@Inject(AuthService) private authService: AuthService) { }\r\n\r\n ngOnInit(): void {\r\n this.authService.completeSignout().then(() => {\r\n this.status = 'Thank you!';\r\n this.finished = true;\r\n });\r\n }\r\n\r\n}\r\n","import { Component, OnInit } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'lib-error',\r\n templateUrl: './error.component.html'\r\n})\r\nexport class ErrorComponent implements OnInit {\r\n public error = 'Error!';\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n}\r\n","import { Component, OnInit } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'lib-page-not-found',\r\n templateUrl: './page-not-found.component.html'\r\n})\r\nexport class PageNotFoundComponent implements OnInit {\r\n\r\n constructor() { }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n}\r\n","import { Component, Inject, OnInit } from '@angular/core';\r\nimport { AuthService } from '@indice/ng-auth';\r\n\r\n\r\n// tslint:disable-next-line:component-selector\r\n@Component({selector: 'lib-unauthorized', templateUrl: './unauthorized.component.html'})\r\nexport class UnauthorizedComponent implements OnInit {\r\n\r\n constructor(@Inject(AuthService) private authService: AuthService) { }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n signin(): void {\r\n this.authService.clearState().then( (_: any) => {\r\n this.authService.startSignout();\r\n });\r\n }\r\n\r\n}\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\nimport { IAddress } from '../types';\r\n\r\n@Pipe({\r\n name: 'address',\r\n pure: false\r\n})\r\nexport class AddressPipe implements PipeTransform {\r\n\r\n transform(value: IAddress | undefined): string {\r\n if (value === undefined || null || '') {\r\n return '';\r\n }\r\n // tslint:disable-next-line:no-non-null-assertion\r\n return `${value.street || ''}${value.streetNumber ? ' ' + value.streetNumber : ''}${value.city ? ', ' + value.city : ''}${+value.postalCode! ? ', ' + +value.postalCode! : ''}`;\r\n }\r\n}\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\n\r\n@Pipe({\r\n name: 'durationFormat',\r\n pure: false\r\n})\r\nexport class DurationFormatPipe implements PipeTransform {\r\n\r\n transform(value: any, arg1: any, arg2: any): string {\r\n\r\n let days: any;\r\n let seconds: any;\r\n let minutes: any;\r\n let hours: any;\r\n\r\n if (arg1 === 'ms' && arg2 === 'hhmmss') {\r\n seconds = Math.floor((value / 1000) % 60);\r\n minutes = Math.floor(((value / (1000 * 60)) % 60));\r\n hours = Math.floor((value / (1000 * 60 * 60)));\r\n return this.format(arg2, seconds, minutes, hours, days);\r\n\r\n } else if (arg1 === 's' && arg2 === 'hhmmss') {\r\n seconds = Math.floor((value % 60));\r\n minutes = Math.floor(((value / 60) % 60));\r\n hours = Math.floor(((value / 60) / 60));\r\n return this.format(arg2, seconds, minutes, hours, days);\r\n\r\n } else if (arg1 === 'ms' && (arg2 === 'ddhhmmss' || arg2 === 'ddhhmmssLong')) {\r\n seconds = Math.floor(((value / 1000) % 60));\r\n minutes = Math.floor((value / (1000 * 60) % 60));\r\n hours = Math.floor((value / (1000 * 60 * 60) % 24));\r\n days = Math.floor((value / (1000 * 60 * 60 * 24)));\r\n return this.format(arg2, seconds, minutes, hours, days);\r\n\r\n } else if (arg1 === 's' && (arg2 === 'ddhhmmss' || arg2 === 'ddhhmmssLong')) {\r\n seconds = Math.floor(value % 60);\r\n minutes = Math.floor(((value / 60) % 60));\r\n hours = Math.floor(((value / 60) / 60) % 24);\r\n days = Math.floor((((value / 60) / 60) / 24));\r\n return this.format(arg2, seconds, minutes, hours, days);\r\n\r\n }\r\n else {\r\n return value;\r\n }\r\n }\r\n\r\n private format(arg2: string, seconds: any, minutes: any, hours: any, days: any): any {\r\n (days < 10) ? days = '0' + days : days;\r\n (hours < 10) ? hours = '0' + hours : hours;\r\n (minutes < 10) ? minutes = '0' + minutes : minutes;\r\n (seconds < 10) ? seconds = '0' + seconds : seconds;\r\n\r\n switch (arg2) {\r\n case 'hhmmss':\r\n return `${hours}:${minutes}:${seconds}`;\r\n\r\n case 'ddhhmmss':\r\n return `${days}d, ${hours}h, ${minutes}m, ${seconds}s`;\r\n\r\n case 'ddhhmmssLong':\r\n return `${days} days, ${hours} hours, ${minutes} minutes, ${seconds} seconds`;\r\n }\r\n return undefined;\r\n }\r\n\r\n}\r\n","import { Observable, Subscription } from 'rxjs';\r\nimport { Component, OnInit, OnDestroy } from '@angular/core';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { HeaderMetaItem, IResultSet, MenuOption, RouterViewAction, ViewAction, ListViewType } from '../types';\r\nimport { Icons } from '../icons';\r\n\r\n@Component({ template: '' })\r\nexport abstract class BaseListComponent<T> implements OnInit, OnDestroy {\r\n public items: T[] | null | undefined = null;\r\n public view: string = ListViewType.Tiles;\r\n public title: string | null = null;\r\n public actions: ViewAction[] = [];\r\n public loaderItems: any[] = [1, 2, 3, 4, 5];\r\n public page = 1;\r\n public pageSize = 20;\r\n public count = 0;\r\n public sort: string | null = '';\r\n public sortdir: string | null = '-';\r\n public search: string | null = '';\r\n public sortOptions: MenuOption[] = [];\r\n public metaItems: HeaderMetaItem[] = [];\r\n public abstract newItemLink: string | null;\r\n private routeSub$: Subscription | undefined;\r\n\r\n constructor(private route$: ActivatedRoute, private router$: Router) {\r\n }\r\n\r\n ngOnDestroy(): void {\r\n if (this.routeSub$) {\r\n this.routeSub$.unsubscribe();\r\n }\r\n }\r\n\r\n ngOnInit(): void {\r\n this.actions = [\r\n new ViewAction('search', null, null, Icons.Search, 'αναζήτηση'),\r\n new ViewAction('refresh', null, null, Icons.Refresh, 'ανανέωση στοιχείων')\r\n ];\r\n if (this.newItemLink) {\r\n this.actions.push(new RouterViewAction(Icons.Add, this.newItemLink, 'rightpane', 'προσθήκη νέας εγγραφής;'));\r\n }\r\n\r\n this.metaItems = [\r\n { key: 'count', icon: Icons.ItemsCount, text: 'παρακαλώ περιμένετε...' }\r\n ];\r\n\r\n // disabled external route changes monitoring due to sync issues - which is bad :) - refresh from url will not work\r\n // until i come up with a solution...\r\n\r\n this.routeSub$ = this.route$.queryParamMap.subscribe(params => {\r\n if (params.keys.length === 0) {\r\n return;\r\n }\r\n\r\n // changing the view mode does not require reloading...\r\n this.view = params.get('view') || ListViewType.Tiles;\r\n //console.log('route changes ', this.view);\r\n\r\n // if (params.get('search') !== this.search) {\r\n // this.searchChanged(params.get('search'));\r\n // }\r\n\r\n // const page = +(params.get('page') || 1);\r\n // if (page !== this.page) {\r\n // this.page = page;\r\n // }\r\n\r\n // const size = +(params.get('pagesize') || 20);\r\n // if (this.pageSize !== size) {\r\n // this.pageSize = size;\r\n // }\r\n\r\n // if (params.get('search') !== this.search) {\r\n // this.search = params.get('search');\r\n // }\r\n\r\n // if (params.get('sort') !== this.sort) {\r\n // this.sort = params.get('sort');\r\n // }\r\n\r\n // if (params.get('sortdir') !== this.sortdir) {\r\n // this.sortdir = params.get('sortdir');\r\n // }\r\n\r\n });\r\n\r\n // just to sync params in query\r\n this.setRouteParams(true);\r\n this.load();\r\n }\r\n\r\n private setRouteParams(locationChange: boolean = false): void {\r\n this.router$.navigate([], {\r\n relativeTo: this.route$, queryParams: {\r\n view: this.view,\r\n page: this.page,\r\n pagesize: this.pageSize,\r\n search: this.search,\r\n sort: this.sort,\r\n dir: this.sortdir\r\n }, queryParamsHandling: 'merge', skipLocationChange: locationChange\r\n });\r\n }\r\n\r\n public actionHandler($event: ViewAction): void {\r\n //console.log('BaseListComponent actionHandler', $event);\r\n if ($event.key === 'refresh') {\r\n this.refresh();\r\n }\r\n }\r\n\r\n private load(): void {\r\n //console.log('BaseListComponent LOAD');\r\n this.count = 0;\r\n this.items = null;\r\n this.loadItems().subscribe(result => {\r\n this.count = result ? result.count : 0;\r\n this.items = result?.items;\r\n this.updateHeaderMeta();\r\n });\r\n }\r\n\r\n private updateHeaderMeta(): void {\r\n const count = this.metaItems?.filter(m => m.key === 'count')[0];\r\n if (count) {\r\n count.text = `${this.count} αποτελέσματα`;\r\n }\r\n }\r\n\r\n public abstract loadItems(): Observable<IResultSet<T> | null | undefined>;\r\n\r\n public clear(): void {\r\n this.count = 0;\r\n this.page = 1;\r\n this.items = null;\r\n this.search = null;\r\n this.setRouteParams();\r\n this.load();\r\n }\r\n\r\n public refresh(): void {\r\n this.count = 0;\r\n this.page = 1;\r\n this.items = null;\r\n this.setRouteParams();\r\n this.load();\r\n }\r\n\r\n public pageChanged(page: number): void {\r\n if(this.page !== page) {\r\n this.page = page;\r\n this.setRouteParams();\r\n this.load();\r\n }\r\n }\r\n\r\n public pageSizeChanged(pageSize: number): void {\r\n if(this.pageSize !== pageSize) {\r\n this.pageSize = pageSize;\r\n this.page = 1;\r\n this.setRouteParams();\r\n this.refresh();\r\n }\r\n }\r\n\r\n public sortChanged(sort: string): void {\r\n //console.log('base-list sortChanged', sort);\r\n if (this.sort !== sort) {\r\n this.page = 1;\r\n this.sort = sort;\r\n this.setRouteParams();\r\n this.refresh();\r\n }\r\n }\r\n\r\n public sortdirChanged(sortdir: string): void {\r\n if (this.sortdir !== sortdir) {\r\n this.page = 1;\r\n this.sortdir = sortdir;\r\n this.setRouteParams();\r\n this.refresh();\r\n }\r\n }\r\n\r\n public searchChanged(searchText: string | null): void {\r\n this.count = 0;\r\n this.page = 1;\r\n this.items = null;\r\n this.search = searchText;\r\n this.setRouteParams();\r\n this.load();\r\n }\r\n}\r\n","import { SidePaneOverlayType, SidePaneSize } from './../../types';\r\nimport { Subscription } from 'rxjs';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { Component, Input, OnInit, OnDestroy, Inject } from '@angular/core';\r\nimport { DOCUMENT } from '@angular/common';\r\n\r\n@Component({\r\n selector: 'lib-side-pane',\r\n templateUrl: './side-pane.component.html'\r\n})\r\nexport class SidePaneComponent implements OnInit, OnDestroy {\r\n // tslint:disable-next-line:no-input-rename\r\n @Input('visible') showPane = false;\r\n public sizeContainerStyle = 'side-pane-box-size';\r\n public overlayStyle = 'side-pane-overlay';\r\n constructor(private router: Router, @Inject(DOCUMENT) private document: any,) { }\r\n\r\n ngOnDestroy(): void {\r\n }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n public onSidePaneActivated(component: any): void {\r\n this.document.body.classList.add('modal-active');\r\n let sizeStyleSuffix = '';\r\n const state = this.router.getCurrentNavigation()?.extras.state;\r\n if (state) {\r\n if (state.paneSize) {\r\n if (state.paneSize === SidePaneSize.Small25) {\r\n sizeStyleSuffix = '-25';\r\n } else if (state.paneSize === SidePaneSize.Medium50) {\r\n sizeStyleSuffix = '-50';\r\n } else if (state.paneSize === SidePaneSize.Large75) {\r\n sizeStyleSuffix = '-75';\r\n }\r\n }\r\n if (state.paneOverlay) {\r\n if (state.paneOverlay === SidePaneOverlayType.None) {\r\n this.overlayStyle = 'side-pane-overlay-opacity-0';\r\n } else if (state.paneOverlay === SidePaneOverlayType.Dark) {\r\n this.overlayStyle = 'side-pane-overlay-opacity-50';\r\n } else {\r\n this.overlayStyle = 'side-pane-overlay';\r\n }\r\n }\r\n }\r\n this.sizeContainerStyle = `side-pane-box-size${sizeStyleSuffix}`;\r\n this.showPane = true;\r\n }\r\n\r\n public onSidePaneDeactivated($event: any): void {\r\n this.document.body.classList.remove('modal-active');\r\n this.showPane = false;\r\n }\r\n\r\n}\r\n","import { AvatarInitialsComponent } from './controls/avatar-initials/avatar-initials.component';\r\nimport { ToasterService } from './services/toaster.service';\r\nimport { ToasterComponent } from './controls/toaster/toaster.component';\r\nimport { ToasterContainerComponent } from './controls/toaster/toaster-container.component';\r\nimport { DatepickerComponent } from './controls/date-picker/date-picker.component';\r\nimport { SidePaneComponent } from './controls/side-pane/side-pane.component';\r\nimport { ListDetailsSectionComponent } from './controls/list-view/list-details-section.component';\r\nimport { CommonModule } from '@angular/common';\r\nimport { RouterModule } from '@angular/router';\r\nimport { UnauthorizedComponent } from './pages/http-status/unauthorized/unauthorized.component';\r\nimport { PageNotFoundComponent } from './pages/http-status/page-not-found/page-not-found.component';\r\nimport { ErrorComponent } from './pages/http-status/error/error.component';\r\nimport { LoggedOutComponent } from './pages/auth/logged-out/logged-out.component';\r\nimport { AuthCallbackComponent } from './pages/auth/auth-callback/auth-callback.component';\r\nimport { IndiceAuthModule } from '@indice/ng-auth';\r\nimport { SkeletonLoaderComponent } from './controls/skeleton-loader/skeleton-loader.component';\r\nimport { ListTileComponent } from './controls/list-view/list-tile.component';\r\nimport { ListColumnComponent } from './controls/list-view/list-column.component';\r\nimport { NgModule } from '@angular/core';\r\nimport { DropDownMenuComponent } from './controls/drop-down-menu/drop-down-menu.component';\r\nimport { ListViewComponent } from './controls/list-view/list-view.component';\r\nimport { PagerComponent } from './controls/pager/pager.component';\r\nimport { ClickOutsideDirective } from './directives/click-outside.directive';\r\nimport { ShellFooterComponent } from './layouts/shell/shell-footer/shell-footer.component';\r\nimport { ShellHeaderComponent } from './layouts/shell/shell-header/shell-header.component';\r\nimport { ShellLayoutComponent } from './layouts/shell/shell-layout/shell-layout.component';\r\nimport { FormLayoutComponent } from './layouts/views/form-layout/form-layout.component';\r\nimport { ModelViewLayoutComponent } from './layouts/views/model-view-layout/model-view-layout.component';\r\nimport { SideViewLayoutComponent } from './layouts/views/side-view-layout/side-view-layout.component';\r\nimport { ViewLayoutComponent } from './layouts/views/view-layout/view-layout.component';\r\nimport { AuthRenewComponent } from './pages/auth/auth-renew/auth-renew.component';\r\nimport { AddressPipe } from './pipes/address.pipe';\r\nimport { DurationFormatPipe } from './pipes/duration-format.pipe';\r\nimport { CollapsiblePanelComponent } from './controls/collapsible-panel/collapsible-panel.component';\r\nimport { KpiTileComponent } from './controls/kpi-tile/kpi-tile.component';\r\nimport { DynamicComponentHostDirective } from './directives/dynamic-component-host.directive';\r\nimport { ListViewEmptyStateComponent } from './controls/list-view/list-view-empty-state.component';\r\nimport { ToggleComponent } from './controls/toggle/toggle.component';\r\n\r\n@NgModule({\r\n declarations: [\r\n // diectives\r\n ClickOutsideDirective,\r\n DynamicComponentHostDirective,\r\n // controls\r\n DropDownMenuComponent,\r\n PagerComponent,\r\n ListViewComponent,\r\n ListColumnComponent,\r\n ListTileComponent,\r\n ListDetailsSectionComponent,\r\n ListViewEmptyStateComponent,\r\n SkeletonLoaderComponent,\r\n CollapsiblePanelComponent,\r\n KpiTileComponent,\r\n SidePaneComponent,\r\n DatepickerComponent,\r\n AvatarInitialsComponent,\r\n ToggleComponent,\r\n // Toaster\r\n ToasterContainerComponent,\r\n ToasterComponent,\r\n // shell layout\r\n ShellLayoutComponent,\r\n ShellHeaderComponent,\r\n ShellFooterComponent,\r\n // view layouts\r\n ViewLayoutComponent,\r\n SideViewLayoutComponent,\r\n ModelViewLayoutComponent,\r\n FormLayoutComponent,\r\n // pages (common)\r\n AuthCallbackComponent,\r\n AuthRenewComponent,\r\n LoggedOutComponent,\r\n ErrorComponent,\r\n PageNotFoundComponent,\r\n UnauthorizedComponent,\r\n // pipes\r\n AddressPipe,\r\n DurationFormatPipe\r\n ],\r\n imports: [\r\n CommonModule,\r\n RouterModule,\r\n IndiceAuthModule\r\n ],\r\n exports: [\r\n ClickOutsideDirective,\r\n DropDownMenuComponent,\r\n PagerComponent,\r\n ListViewComponent,\r\n ListColumnComponent,\r\n ListTileComponent,\r\n ListDetailsSectionComponent,\r\n ListViewEmptyStateComponent,\r\n KpiTileComponent,\r\n SkeletonLoaderComponent,\r\n ShellLayoutComponent,\r\n ShellHeaderComponent,\r\n ShellFooterComponent,\r\n ViewLayoutComponent,\r\n SideViewLayoutComponent,\r\n ModelViewLayoutComponent,\r\n FormLayoutComponent,\r\n AuthCallbackComponent,\r\n AuthRenewComponent,\r\n LoggedOutComponent,\r\n ErrorComponent,\r\n PageNotFoundComponent,\r\n UnauthorizedComponent,\r\n AddressPipe,\r\n DurationFormatPipe,\r\n CollapsiblePanelComponent,\r\n SidePaneComponent,\r\n DatepickerComponent,\r\n ToasterContainerComponent,\r\n ToasterComponent,\r\n AvatarInitialsComponent,\r\n ToggleComponent\r\n ]\r\n})\r\nexport class IndiceComponentsModule {\r\n // tslint:disable-next-line:typedef\r\n static forRoot() {\r\n return {\r\n ngModule: IndiceComponentsModule,\r\n providers: [ToasterService]\r\n };\r\n }\r\n}\r\n","/*\r\n * Public API Surface of @indice/ng-components\r\n */\r\n\r\n// directives\r\nexport * from './lib/directives/click-outside.directive';\r\n\r\n// controls\r\nexport * from './lib/controls/drop-down-menu/drop-down-menu.component';\r\nexport * from './lib/controls/pager/pager.component';\r\nexport * from './lib/controls/list-view/list-view.component';\r\nexport * from './lib/controls/list-view/list-column.component';\r\nexport * from './lib/controls/list-view/list-tile.component';\r\nexport * from './lib/controls/list-view/list-details-section.component';\r\nexport * from './lib/controls/list-view/list-view-empty-state.component';\r\nexport * from './lib/controls/skeleton-loader/skeleton-loader.component';\r\nexport * from './lib/controls/collapsible-panel/collapsible-panel.component';\r\nexport * from './lib/controls/kpi-tile/kpi-tile.component';\r\nexport * from './lib/controls/date-picker/date-picker.component';\r\nexport * from './lib/controls/toaster/toaster-container.component';\r\nexport * from './lib/controls/toaster/toaster.component';\r\nexport * from './lib/controls/avatar-initials/avatar-initials.component';\r\nexport * from './lib/controls/toggle/toggle.component';\r\n\r\n// shell layout\r\nexport * from './lib/layouts/shell/shell-layout/shell-layout.component';\r\nexport * from './lib/layouts/shell/shell-header/shell-header.component';\r\nexport * from './lib/layouts/shell/shell-footer/shell-footer.component';\r\n\r\n// view layouts\r\nexport * from './lib/layouts/views/view-layout/view-layout.component';\r\nexport * from './lib/layouts/views/model-view-layout/model-view-layout.component';\r\nexport * from './lib/layouts/views/side-view-layout/side-view-layout.component';\r\nexport * from './lib/layouts/views/form-layout/form-layout.component';\r\n\r\n// pages\r\nexport * from './lib/pages/auth/auth-callback/auth-callback.component';\r\nexport * from './lib/pages/auth/auth-renew/auth-renew.component';\r\nexport * from './lib/pages/auth/logged-out/logged-out.component';\r\nexport * from './lib/pages/http-status/error/error.component';\r\nexport * from './lib/pages/http-status/page-not-found/page-not-found.component';\r\nexport * from './lib/pages/http-status/unauthorized/unauthorized.component';\r\n\r\n// pipes\r\nexport * from './lib/pipes/address.pipe';\r\nexport * from './lib/pipes/duration-format.pipe';\r\n\r\n// common stuff (tokens, types, helper classes)\r\nexport * from './lib/tokens';\r\nexport * from './lib/types';\r\nexport * from './lib/icons';\r\nexport * from './lib/helpers/base-list.component';\r\n\r\n// services\r\nexport * from './lib/services/component-loader.service';\r\nexport * from './lib/services/toaster.service';\r\n\r\nexport * from './lib/ng-components.module';\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n\nexport {SidePaneComponent as ɵb} from './lib/controls/side-pane/side-pane.component';\nexport {DynamicComponentHostDirective as ɵa} from './lib/directives/dynamic-component-host.directive';"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"__symbolic":"module","version":4,"metadata":{"ClickOutsideDirective":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Directive","line":21,"character":1},"arguments":[{"selector":"[clickOutside]"}]}],"members":{"clickOutsideEnabled":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":24,"character":3}}]}],"attachOutsideOnClick":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":26,"character":3}}]}],"delayClickOutsideInit":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":27,"character":3}}]}],"emitOnBlur":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":28,"character":3}}]}],"exclude":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":30,"character":3}}]}],"excludeBeforeClick":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":31,"character":3}}]}],"clickOutsideEvents":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":33,"character":3}}]}],"clickOutside":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":35,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[null,null,[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":47,"character":5},"arguments":[{"__symbolic":"reference","module":"@angular/core","name":"PLATFORM_ID","line":47,"character":12}]}]],"parameters":[{"__symbolic":"reference","module":"@angular/core","name":"ElementRef","line":44,"character":17},{"__symbolic":"reference","module":"@angular/core","name":"NgZone","line":46,"character":21},{"__symbolic":"reference","name":"any"}]}],"ngOnInit":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}],"ngOnChanges":[{"__symbolic":"method"}],"_init":[{"__symbolic":"method"}],"_initOnClickBody":[{"__symbolic":"method"}],"_excludeCheck":[{"__symbolic":"method"}],"_onClickBody":[{"__symbolic":"method"}],"_onWindowBlur":[{"__symbolic":"method"}],"_emit":[{"__symbolic":"method"}],"_shouldExclude":[{"__symbolic":"method"}],"_initClickOutsideListener":[{"__symbolic":"method"}],"_removeClickOutsideListener":[{"__symbolic":"method"}],"_initAttachOutsideOnClickListener":[{"__symbolic":"method"}],"_removeAttachOutsideOnClickListener":[{"__symbolic":"method"}],"_initWindowBlurListener":[{"__symbolic":"method"}],"_removeWindowBlurListener":[{"__symbolic":"method"}]}},"DropDownMenuComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":3,"character":1},"arguments":[{"selector":"lib-drop-down-menu","template":"<div class=\"dropdown-container\" (clickOutside)=\"onClickOutside($event)\">\r\n <button type=\"button\" (click)=\"expanded=!expanded\"\r\n class=\"dropdown-button\"\r\n aria-haspopup=\"listbox\" aria-expanded=\"true\" aria-labelledby=\"listbox-label\">\r\n <span class=\"dropdown-selected-text\">\r\n {{selectedOption?.text || 'Παρακαλώ επιλέξτε...'}}\r\n </span>\r\n <span class=\"dropdown-button-icon\">\r\n <!-- Heroicon name: solid/selector -->\r\n <svg class=\"dropdown-arrow\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 20 20\" fill=\"currentColor\" aria-hidden=\"true\">\r\n <path fill-rule=\"evenodd\" d=\"M10 3a1 1 0 01.707.293l3 3a1 1 0 01-1.414 1.414L10 5.414 7.707 7.707a1 1 0 01-1.414-1.414l3-3A1 1 0 0110 3zm-3.707 9.293a1 1 0 011.414 0L10 14.586l2.293-2.293a1 1 0 011.414 1.414l-3 3a1 1 0 01-1.414 0l-3-3a1 1 0 010-1.414z\" clip-rule=\"evenodd\" />\r\n </svg>\r\n </span>\r\n </button>\r\n <ul *ngIf=\"expanded && options && options.length>0\"\r\n class=\"dropdown-ul\" tabindex=\"-1\"\r\n role=\"listbox\" aria-labelledby=\"listbox-label\" aria-activedescendant=\"listbox-option-3\">\r\n <ng-container *ngFor=\"let option of options\">\r\n <li [class]=\"isSelected(option) ? 'dropdown-li-selected' : 'dropdown-li'\" (click)=\"selectOption(option)\" id=\"listbox-option-0\" role=\"option\">\r\n <span [class]=\"isSelected(option) ? 'dropdown-li-selected-text' : 'dropdown-li-text'\">\r\n {{option.text}}\r\n </span>\r\n <span *ngIf=\"isSelected(option)\" class=\"dropdown-li-selected-indicator-container\">\r\n <!-- Heroicon name: solid/check -->\r\n <svg class=\"dropdown-li-selected-indicator\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 20 20\" fill=\"currentColor\" aria-hidden=\"true\">\r\n <path fill-rule=\"evenodd\" d=\"M16.707 5.293a1 1 0 010 1.414l-8 8a1 1 0 01-1.414 0l-4-4a1 1 0 011.414-1.414L8 12.586l7.293-7.293a1 1 0 011.414 0z\" clip-rule=\"evenodd\" />\r\n </svg>\r\n </span>\r\n </li>\r\n </ng-container>\r\n </ul>\r\n</div>\r\n"}]}],"members":{"options":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":9,"character":3}}]}],"selectedValue":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":11,"character":3},"arguments":["selected"]}]}],"multiple":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":12,"character":3}}]}],"selectedChange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":24,"character":3}}]}],"selectedChanged":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":25,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor"}],"ngOnChanges":[{"__symbolic":"method"}],"ngOnInit":[{"__symbolic":"method"}],"isSelected":[{"__symbolic":"method"}],"onClickOutside":[{"__symbolic":"method"}],"selectOption":[{"__symbolic":"method"}]}},"PagerComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":5,"character":1},"arguments":[{"selector":"lib-pager","template":"<div class=\"pager-container\">\r\n <div class=\"pager-container-inner\">\r\n <div class=\"inline-flex\" *ngIf=\"sortOptions && sortOptions.length > 0\">\r\n <lib-drop-down-menu [options]=\"sortOptions\" [selected]=\"sort\" (selectedChanged)=\"sortOptionChanged($event)\"></lib-drop-down-menu>\r\n <button (click)=\"toggleSortdir()\" class=\"pager-icon-button\">\r\n <span class=\"sr-only\">sort direction</span>\r\n <span class=\"inline-block relative\">\r\n <i [class]=\"sortdirIcon\"></i>\r\n </span>\r\n </button>\r\n </div>\r\n <div class=\"pager-pages-container\">\r\n <lib-drop-down-menu [options]=\"pageSizeOptions\" [selected]=\"pageSize\" (selectedChanged)=\"pageSizeOptionChanged($event)\"></lib-drop-down-menu>\r\n <div class=\"mx-2\">\r\n <button [disabled]=\"!canPreviousPage\" (click)=\"previousPage()\"\r\n class=\"pager-arrow-button-left\">\r\n <span class=\"sr-only\">Previous</span>\r\n <svg class=\"h-5 w-5\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 20 20\" fill=\"currentColor\" aria-hidden=\"true\">\r\n <path fill-rule=\"evenodd\" d=\"M12.707 5.293a1 1 0 010 1.414L9.414 10l3.293 3.293a1 1 0 01-1.414 1.414l-4-4a1 1 0 010-1.414l4-4a1 1 0 011.414 0z\" clip-rule=\"evenodd\" />\r\n </svg>\r\n </button>\r\n <button [disabled]=\"!canNextPage\" (click)=\"nextPage()\"\r\n class=\"pager-arrow-button-right\">\r\n <span class=\"sr-only\">Next</span>\r\n <svg class=\"h-5 w-5\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 20 20\" fill=\"currentColor\" aria-hidden=\"true\">\r\n <path fill-rule=\"evenodd\" d=\"M7.293 14.707a1 1 0 010-1.414L10.586 10 7.293 6.707a1 1 0 011.414-1.414l4 4a1 1 0 010 1.414l-4 4a1 1 0 01-1.414 0z\" clip-rule=\"evenodd\" />\r\n </svg>\r\n </button>\r\n </div>\r\n <lib-drop-down-menu *ngIf=\"pages && pages.length > 0\" [options]=\"pages\" [selected]=\"page\" (selectedChanged)=\"pageOptionChanged($event)\"></lib-drop-down-menu>\r\n </div>\r\n </div>\r\n</div>\r\n"}]}],"members":{"count":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":11,"character":3}}]}],"page":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":12,"character":3}}]}],"pageSize":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":14,"character":3},"arguments":["page-size"]}]}],"pageSizeOptions":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":16,"character":3},"arguments":["page-size-options"]}]}],"pageChanged":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":24,"character":3}}]}],"pageSizeChanged":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":25,"character":3}}]}],"sortOptions":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":31,"character":3},"arguments":["sort-options"]}]}],"sort":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":33,"character":3},"arguments":["sort"]}]}],"sortdir":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":35,"character":3},"arguments":["sort-dir"]}]}],"sortChanged":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":36,"character":3}}]}],"sortdirChanged":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":37,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/router","name":"Router","line":40,"character":30}]}],"ngOnChanges":[{"__symbolic":"method"}],"ngOnInit":[{"__symbolic":"method"}],"calcPages":[{"__symbolic":"method"}],"nextPage":[{"__symbolic":"method"}],"previousPage":[{"__symbolic":"method"}],"gotoPage":[{"__symbolic":"method"}],"pageSizeOptionChanged":[{"__symbolic":"method"}],"pageOptionChanged":[{"__symbolic":"method"}],"sortOptionChanged":[{"__symbolic":"method"}],"toggleSortdir":[{"__symbolic":"method"}]}},"ListViewComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":7,"character":1},"arguments":[{"selector":"lib-list-view","template":"<div class=\"px-2\">\r\n\r\n <lib-pager\r\n *ngIf=\"showPager && items && items.length > 0\"\r\n [page]=\"page\"\r\n [page-size]=\"pageSize\"\r\n [count]=\"count\"\r\n [sort-options]=\"sortOptions\"\r\n [sort]=\"sort\"\r\n [sort-dir]=\"sortdir\"\r\n (pageChanged)=\"emitPageChanged($event)\"\r\n (pageSizeChanged)=\"emitPageSizeChanged($event)\"\r\n (sortChanged)=\"emitSortChanged($event)\"\r\n (sortdirChanged)=\"emitSortdirChanged($event)\">\r\n </lib-pager>\r\n</div>\r\n\r\n<ng-container [ngSwitch]=\"view\">\r\n <ng-container *ngSwitchCase=\"'tiles'\">\r\n <div [class]=\"tilesDeckClass\">\r\n <lib-skeleton-loader *ngIf=\"!items\" [count]=\"5\" [type]=\"'tiles'\"></lib-skeleton-loader>\r\n <ng-container *ngIf=\"items && items.length > 0\">\r\n <ng-container *ngFor=\"let item of items\">\r\n <span *ngIf=\"!tileTemplate || !tileTemplate.template\">template missing..</span>\r\n <ng-template [ngTemplateOutlet]=\"tileTemplate.template\" [ngTemplateOutletContext]=\"{ $implicit: item }\"></ng-template>\r\n </ng-container>\r\n </ng-container>\r\n <ng-container *ngIf=\"items && items.length == 0\">\r\n <lib-list-view-empty-state></lib-list-view-empty-state>\r\n </ng-container>\r\n </div>\r\n </ng-container>\r\n\r\n <!-- *ngSwitchCase=\"'table'\" -->\r\n <ng-container *ngSwitchDefault>\r\n <lib-skeleton-loader *ngIf=\"(items == null || undefined) || items?.length == 0\" [count]=\"5\" [type]=\"'table'\"></lib-skeleton-loader>\r\n <div class=\"list-view-container\" *ngIf=\"items && items.length > 0\">\r\n <div class=\"list-view-container-inner\">\r\n <table class=\"list-view-table\">\r\n <thead class=\"list-view-thead\">\r\n <tr>\r\n <ng-container *ngIf=\"detailsSectionSupported\">\r\n <th class=\"list-view-th-details\"></th>\r\n </ng-container>\r\n <ng-container *ngFor=\"let col of columns\">\r\n <th scope=\"col\" [class]=\"col.fullWidth ? fullWidthTHClass : 'list-view-th'\">\r\n {{col.title}}\r\n </th>\r\n </ng-container>\r\n </tr>\r\n </thead>\r\n <tbody class=\"list-view-tbody\">\r\n <ng-container *ngFor=\"let item of items;let i=index\">\r\n <tr class=\"list-view-tr\">\r\n <ng-container *ngIf=\"detailsSectionSupported\">\r\n <td class=\"list-view-td-details\">\r\n <button (click)=\"toggleDetails(item)\" type=\"button\" class=\"expand-collapse-button\">\r\n <!-- Heroicon name: solid/plus -->\r\n <i [class]=\"item.detailsExpanded ? collapseIcon : expandIcon\"></i>\r\n </button>\r\n </td>\r\n </ng-container>\r\n <td *ngFor=\"let col of columns\" [class]=\"col.fullWidth ? fullWidthTDClass : 'list-view-td'\">\r\n <ng-template [ngTemplateOutlet]=\"col.template\" [ngTemplateOutletContext]=\"{ $implicit: item }\"></ng-template>\r\n </td>\r\n </tr>\r\n <ng-container *ngIf=\"detailsSectionSupported\">\r\n <tr *ngIf=\"item.detailsExpanded\">\r\n <td [colSpan]=\"columns.length + 1\" class=\"list-view-td\">\r\n <ng-template [ngTemplateOutlet]=\"detailsTemplate.template\" [ngTemplateOutletContext]=\"{ $implicit: item }\"></ng-template>\r\n </td>\r\n </tr>\r\n </ng-container>\r\n </ng-container>\r\n </tbody>\r\n </table>\r\n </div>\r\n </div>\r\n <ng-container *ngIf=\"(items == null || undefined) || items?.length == 0\">\r\n <lib-list-view-empty-state></lib-list-view-empty-state>\r\n </ng-container>\r\n </ng-container>\r\n</ng-container>\r\n\r\n<ng-content></ng-content>\r\n"}]}],"members":{"showPager":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":15,"character":3},"arguments":["show-pager"]}]}],"items":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":17,"character":3}}]}],"count":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":20,"character":3}}]}],"page":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":21,"character":3}}]}],"pageSize":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":23,"character":3},"arguments":["page-size"]}]}],"pageSizeOptions":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":25,"character":3},"arguments":["page-size-options"]}]}],"pageChanged":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":26,"character":3}}]}],"pageSizeChanged":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":27,"character":3}}]}],"detailsOpened":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":28,"character":3}}]}],"view":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":37,"character":3}}]}],"sortOptions":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":41,"character":3},"arguments":["sort-options"]}]}],"sort":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":43,"character":3},"arguments":["sort"]}]}],"sortdir":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":45,"character":3},"arguments":["sort-dir"]}]}],"sortChanged":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":46,"character":3}}]}],"sortdirChanged":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":47,"character":3}}]}],"cols":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ContentChildren","line":51,"character":3},"arguments":[{"__symbolic":"reference","name":"ListColumnComponent"},{"read":{"__symbolic":"reference","name":"ListColumnComponent"}}]}]}],"tilesCount":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":64,"character":3},"arguments":["tiles-count"]}]}],"tiles":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ContentChild","line":67,"character":3},"arguments":[{"__symbolic":"reference","name":"ListTileComponent"},{"read":{"__symbolic":"reference","name":"ListTileComponent"}}]}]}],"details":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ContentChild","line":76,"character":3},"arguments":[{"__symbolic":"reference","name":"ListDetailsSectionComponent"},{"read":{"__symbolic":"reference","name":"ListDetailsSectionComponent"}}]}]}],"__ctor__":[{"__symbolic":"constructor"}],"ngOnChanges":[{"__symbolic":"method"}],"emitPageChanged":[{"__symbolic":"method"}],"emitPageSizeChanged":[{"__symbolic":"method"}],"emitSortChanged":[{"__symbolic":"method"}],"emitSortdirChanged":[{"__symbolic":"method"}],"toggleDetails":[{"__symbolic":"method"}],"setTilesDeckClass":[{"__symbolic":"method"}]}},"ListColumnComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":2,"character":1},"arguments":[{"selector":"lib-list-column","template":"<ng-content></ng-content>"}]}],"members":{"title":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":4,"character":3}}]}],"fullWidth":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":6,"character":3},"arguments":["full-width"]}]}],"template":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ContentChild","line":7,"character":3},"arguments":[{"__symbolic":"reference","module":"@angular/core","name":"TemplateRef","line":7,"character":16}]}]}],"__ctor__":[{"__symbolic":"constructor"}]}},"ListTileComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":2,"character":1},"arguments":[{"selector":"lib-list-tile","template":"<ng-content></ng-content>"}]}],"members":{"template":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ContentChild","line":4,"character":3},"arguments":[{"__symbolic":"reference","module":"@angular/core","name":"TemplateRef","line":4,"character":16}]}]}],"__ctor__":[{"__symbolic":"constructor"}]}},"ListDetailsSectionComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":2,"character":1},"arguments":[{"selector":"lib-list-details-section","template":"<ng-content></ng-content>"}]}],"members":{"template":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ContentChild","line":4,"character":3},"arguments":[{"__symbolic":"reference","module":"@angular/core","name":"TemplateRef","line":4,"character":16}]}]}],"__ctor__":[{"__symbolic":"constructor"}]}},"ListViewEmptyStateComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":2,"character":1},"arguments":[{"selector":"lib-list-view-empty-state","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"}]}],"members":{"title":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":8,"character":3}}]}],"subTitle":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":10,"character":3},"arguments":["sub-title"]}]}],"newItemLabel":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":12,"character":3},"arguments":["new-item-label"]}]}],"__ctor__":[{"__symbolic":"constructor"}],"ngOnInit":[{"__symbolic":"method"}]}},"SkeletonLoaderComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":2,"character":1},"arguments":[{"selector":"lib-skeleton-loader","template":"<ng-container *ngSwitch=\"type\">\r\n <div class=\"cards-deck-4\" *ngSwitchCase=\"'tiles'\">\r\n <ng-container *ngFor=\"let i of counter(count)\">\r\n <div class=\"border border-light-blue-300 shadow rounded-sm p-4 max-w-sm w-full mx-auto\">\r\n <div class=\"animate-pulse flex space-x-4\">\r\n <div class=\"rounded-full bg-light-blue-400 h-12 w-12\">&nbsp;</div>\r\n <div class=\"flex-1 space-y-4 py-1\">\r\n <div class=\"h-4 bg-light-blue-400 rounded w-3/4\">&nbsp;</div>\r\n <div class=\"space-y-2\">\r\n <div class=\"h-4 bg-light-blue-400 rounded\">&nbsp;</div>\r\n <div class=\"h-4 bg-light-blue-400 rounded w-5/6\">&nbsp;</div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </ng-container>\r\n </div>\r\n <div class=\"cards-deck-3\" *ngSwitchCase=\"'large-tiles'\">\r\n <ng-container *ngFor=\"let i of counter(count)\">\r\n <div class=\"border border-light-blue-300 shadow rounded-sm p-4 max-w-sm w-full mx-auto\">\r\n <div class=\"animate-pulse flex space-x-4\">\r\n <div class=\"rounded-full bg-light-blue-400 h-12 w-12\">&nbsp;</div>\r\n <div class=\"rounded-full bg-light-blue-400 h-12 w-12\">&nbsp;</div>\r\n <div class=\"rounded-full bg-light-blue-400 h-12 w-12\">&nbsp;</div>\r\n <div class=\"flex-1 space-y-4 py-1\">\r\n <div class=\"h-4 bg-light-blue-400 rounded w-3/4\">&nbsp;</div>\r\n <div class=\"space-y-2\">\r\n <div class=\"h-4 bg-light-blue-400 rounded\">&nbsp;</div>\r\n <div class=\"h-4 bg-light-blue-400 rounded w-5/6\">&nbsp;</div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </ng-container>\r\n </div>\r\n <div class=\"cards-deck-1\" *ngSwitchCase=\"'table'\">\r\n <ng-container *ngFor=\"let i of counter(count)\">\r\n <div class=\"border border-light-blue-300 shadow rounded-sm p-4 max-w-sm w-full mx-auto mb-4\">\r\n <div class=\"animate-pulse flex space-x-4\">\r\n <div class=\"rounded-full bg-light-blue-400 h-12 w-12\">&nbsp;</div>\r\n <div class=\"flex-1 space-y-4 py-1\">\r\n <div class=\"h-4 bg-light-blue-400 rounded w-3/4\">&nbsp;</div>\r\n <div class=\"space-y-2\">\r\n <div class=\"h-4 bg-light-blue-400 rounded\">&nbsp;</div>\r\n <div class=\"h-4 bg-light-blue-400 rounded w-5/6\">&nbsp;</div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </ng-container>\r\n </div>\r\n</ng-container>\r\n"}]}],"members":{"count":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":8,"character":3}}]}],"type":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":9,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor"}],"ngOnInit":[{"__symbolic":"method"}],"counter":[{"__symbolic":"method"}]}},"CollapsiblePanelComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":2,"character":1},"arguments":[{"selector":"lib-collapsible-panel","template":"<div class=\"collapsible-panel-container\">\r\n <div class=\"collapsible-panel-container-shadow\">\r\n <div class=\"collapsible-panel-container-inner\">\r\n <button type=\"button\" class=\"collapsible-panel-button\" (click)=\"visible = !visible\">\r\n <div class=\"collapsible-panel-button-content-container\">\r\n <span>{{ title }} </span>\r\n <span class=\"ico-plus\"></span>\r\n </div>\r\n </button>\r\n <div class=\"collapsible-panel-content-container\" *ngIf=\"visible\">\r\n <ng-content></ng-content>\r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n"}]}],"members":{"title":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":7,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor"}],"ngOnInit":[{"__symbolic":"method"}]}},"KpiTileComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":2,"character":1},"arguments":[{"selector":"lib-kpi-tile","template":"<div class=\"card\"\r\n [ngClass]=\"{'card-deck-busy' : busy }\">\r\n <div class=\"card-body\">\r\n <div class=\"kpi-tile-title-container\">\r\n <a href=\"#\"\r\n class=\"kpi-tile-action\"\r\n (click)=\"emitTileAction($event)\">{{title || '-'}}</a>\r\n </div>\r\n <p class=\"kpi-tile-value\">{{kpi || '-'}}</p>\r\n <div class=\"card-footer\">\r\n <div class=\"text-xs\">\r\n <a href=\"#\"\r\n class=\"kpi-tile-action\"\r\n (click)=\"emitTileAction($event)\">Περισσότερα</a>\r\n </div>\r\n </div>\r\n </div>\r\n</div>"}]}],"members":{"title":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":8,"character":3}}]}],"busy":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":9,"character":3}}]}],"kpi":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":10,"character":3}}]}],"tileAction":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":12,"character":3},"arguments":["tile-action"]}]}],"__ctor__":[{"__symbolic":"constructor"}],"ngOnInit":[{"__symbolic":"method"}],"emitTileAction":[{"__symbolic":"method"}]}},"DatepickerComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":4,"character":1},"arguments":[{"selector":"lib-date-picker","providers":[{"provide":{"__symbolic":"reference","module":"@angular/forms","name":"NG_VALUE_ACCESSOR","line":9,"character":15},"useExisting":{"__symbolic":"reference","name":"DatepickerComponent"},"multi":true}],"template":"<div class=\"relative flex\" (clickOutside)=\"showCalendar = false\">\r\n\r\n <input type=\"text\" #dateInput [readonly]=\"readonly\" name=\"dateInput\"\r\n (blur)=\"onBlur($event)\"\r\n id=\"dateInput\" [value]=\"value | date: displayFormat\" class=\"w-full focus:ring-0 focus:outline-none rounded-none sm:text-sm border-gray-300 focus:border-0\"\r\n [placeholder]=\"placeholder\">\r\n\r\n <button class=\"relative inline-flex items-center px-2 py-2 border border-gray-300 text-sm font-medium rounded-r-sm text-gray-700 bg-gray-50 hover:bg-gray-100 focus:outline-none focus:ring-1 focus:ring-gray-500 focus:border-gray-500\"\r\n (click)=\"openCalendar()\"><i class=\"ms-Icon ms-Icon--DateTime2\"></i>\r\n </button>\r\n\r\n <div *ngIf=\"showCalendar\" class=\"bg-gray-100 mt-10 rounded-sm shadow-md p-4 absolute left-0 z-50 w-full\" style=\"height:18rem;min-width:15rem;\">\r\n <div class=\"flex justify-between items-center mb-2\">\r\n <div>\r\n <span class=\"text-lg font-bold text-gray-800\">{{monthNames[month]}}</span>\r\n <span class=\"ml-1 text-lg text-gray-600 font-normal\">{{year}}</span>\r\n </div>\r\n <div>\r\n <button\r\n type=\"button\" class=\"transition ease-in-out duration-100 inline-flex cursor-pointer hover:bg-gray-200 p-1 rounded-full disabled:opacity-25\"\r\n (click)=\"previousMonth();\">\r\n <svg class=\"h-6 w-6 text-gray-500 inline-flex\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\">\r\n <path stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M15 19l-7-7 7-7\"/>\r\n </svg>\r\n </button>\r\n <button type=\"button\" class=\"transition ease-in-out duration-100 inline-flex cursor-pointer hover:bg-gray-200 p-1 rounded-full disabled:opacity-25\"\r\n (click)=\"nextMonth()\">\r\n <svg class=\"h-6 w-6 text-gray-500 inline-flex\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\">\r\n <path stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M9 5l7 7-7 7\"/>\r\n </svg>\r\n </button>\r\n </div>\r\n </div>\r\n\r\n <div class=\"flex flex-wrap mb-3 -mx-1\">\r\n <div *ngFor=\"let day of dayNames\" class=\"text-gray-800 font-medium text-center text-sm uppercase\" style=\"width: 14.28%\">{{day}}</div>\r\n </div>\r\n\r\n <div class=\"flex flex-wrap -mx-1\">\r\n <div *ngFor=\"let blankday of blankDays\" style=\"width: 14.28%\" class=\"text-center border p-1 border-transparent text-sm opacity-50\">{{blankday}}1</div>\r\n <div *ngFor=\"let date of calendarDates\" style=\"width: 14.28%\" class=\"px-1 mb-1\">\r\n <div (click)=\"selectDateValue(date)\" class=\"cursor-pointer text-center hover:text-white text-sm leading-none rounded-full leading-loose transition ease-in-out duration-100\"\r\n [class]=\"date.selected ? 'bg-gray-700 text-white' : 'text-gray-800 hover:bg-gray-800'\">{{date.day}}</div>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n</div>\r\n"}]}],"members":{"readonly":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":16,"character":3}}]}],"disabled":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":17,"character":3}}]}],"displayFormat":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":18,"character":3},"arguments":["display-format"]}]}],"placeholder":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":19,"character":3}}]}],"value":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":20,"character":3}}]}],"valueChange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":21,"character":3}}]}],"dateInput":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewChild","line":22,"character":3},"arguments":["dateInput"]}]}],"compareDates":[{"__symbolic":"method"}],"selectDateValue":[{"__symbolic":"method"}],"previousMonth":[{"__symbolic":"method"}],"nextMonth":[{"__symbolic":"method"}],"calcDays":[{"__symbolic":"method"}],"updateDays":[{"__symbolic":"method"}],"__ctor__":[{"__symbolic":"constructor"}],"writeValue":[{"__symbolic":"method"}],"registerOnChange":[{"__symbolic":"method"}],"registerOnTouched":[{"__symbolic":"method"}],"onBlur":[{"__symbolic":"method"}],"ngOnInit":[{"__symbolic":"method"}]}},"ToasterContainerComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":4,"character":1},"arguments":[{"selector":"lib-toaster-container","template":"<lib-toaster *ngFor=\"let toast of toasts; let i=index\" [toast]=\"toast\" [i]=\"i\" (remove)=\"remove($event)\"></lib-toaster>\r\n"}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"ToasterService"}]}],"ngOnInit":[{"__symbolic":"method"}],"remove":[{"__symbolic":"method"}]}},"ToasterComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":3,"character":1},"arguments":[{"selector":"lib-toaster","template":"<div aria-live=\"assertive\"\r\n [ngClass]=\"closed ? 'toast-closed': 'toast z-50'\"\r\n [ngStyle]=\"isMobile ? { 'margin-bottom.px': i * 85 } : {'margin-top.px': i * 85 }\">\r\n <div class=\"toast-container\">\r\n <div class=\"toast-pill\">\r\n <div class=\"toast-context-padding\">\r\n <div class=\"toast-context\"\r\n [ngSwitch]=\"toast?.type\">\r\n <div class=\"toast-icon\"\r\n *ngSwitchCase=\"'info'\">\r\n <svg class=\"h-5 w-5 text-blue-400\"\r\n xmlns=\"http://www.w3.org/2000/svg\"\r\n viewBox=\"0 0 20 20\"\r\n fill=\"currentColor\"\r\n aria-hidden=\"true\">\r\n <path fill-rule=\"evenodd\"\r\n d=\"M18 10a8 8 0 11-16 0 8 8 0 0116 0zm-7-4a1 1 0 11-2 0 1 1 0 012 0zM9 9a1 1 0 000 2v3a1 1 0 001 1h1a1 1 0 100-2v-3a1 1 0 00-1-1H9z\"\r\n clip-rule=\"evenodd\" />\r\n </svg>\r\n </div>\r\n <div class=\"toast-icon\"\r\n *ngSwitchCase=\"'success'\">\r\n <svg class=\"h-5 w-5 text-green-400\"\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=\"M9 12l2 2 4-4m6 2a9 9 0 11-18 0 9 9 0 0118 0z\" />\r\n </svg>\r\n </div>\r\n <div class=\"toast-icon\"\r\n *ngSwitchCase=\"'error'\">\r\n <svg class=\"h-5 w-5 text-red-400\"\r\n xmlns=\"http://www.w3.org/2000/svg\"\r\n viewBox=\"0 0 20 20\"\r\n fill=\"currentColor\"\r\n aria-hidden=\"true\">\r\n <path fill-rule=\"evenodd\"\r\n d=\"M10 18a8 8 0 100-16 8 8 0 000 16zM8.707 7.293a1 1 0 00-1.414 1.414L8.586 10l-1.293 1.293a1 1 0 101.414 1.414L10 11.414l1.293 1.293a1 1 0 001.414-1.414L11.414 10l1.293-1.293a1 1 0 00-1.414-1.414L10 8.586 8.707 7.293z\"\r\n clip-rule=\"evenodd\" />\r\n </svg>\r\n </div>\r\n <div class=\"toast-icon\"\r\n *ngSwitchCase=\"'warning'\">\r\n <svg class=\"h-5 w-5 text-yellow-400\"\r\n xmlns=\"http://www.w3.org/2000/svg\"\r\n viewBox=\"0 0 20 20\"\r\n fill=\"currentColor\"\r\n aria-hidden=\"true\">\r\n <path fill-rule=\"evenodd\"\r\n d=\"M8.257 3.099c.765-1.36 2.722-1.36 3.486 0l5.58 9.92c.75 1.334-.213 2.98-1.742 2.98H4.42c-1.53 0-2.493-1.646-1.743-2.98l5.58-9.92zM11 13a1 1 0 11-2 0 1 1 0 012 0zm-1-8a1 1 0 00-1 1v3a1 1 0 002 0V6a1 1 0 00-1-1z\"\r\n clip-rule=\"evenodd\" />\r\n </svg>\r\n </div>\r\n <div class=\"toast-icon\"\r\n *ngSwitchDefault>\r\n <svg class=\"h-5 w-5 text-green-400\"\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=\"M9 12l2 2 4-4m6 2a9 9 0 11-18 0 9 9 0 0118 0z\" />\r\n </svg>\r\n </div>\r\n\r\n <div class=\"ml-3 w-0 flex-1\">\r\n <p class=\"toast-title\"\r\n *ngIf=\"toast?.title\">\r\n {{toast?.title}}\r\n </p>\r\n <p class=\"toast-body\">\r\n {{toast?.body}}\r\n </p>\r\n </div>\r\n <div class=\"toast-close-icon\">\r\n <button class=\"toast-close-button\"\r\n (click)=\"closeToast(i)\">\r\n <span class=\"sr-only\">Close</span>\r\n <!-- Heroicon name: solid/x -->\r\n <svg class=\"h-5 w-5\"\r\n xmlns=\"http://www.w3.org/2000/svg\"\r\n viewBox=\"0 0 20 20\"\r\n fill=\"currentColor\"\r\n aria-hidden=\"true\">\r\n <path fill-rule=\"evenodd\"\r\n d=\"M4.293 4.293a1 1 0 011.414 0L10 8.586l4.293-4.293a1 1 0 111.414 1.414L11.414 10l4.293 4.293a1 1 0 01-1.414 1.414L10 11.414l-4.293 4.293a1 1 0 01-1.414-1.414L8.586 10 4.293 5.707a1 1 0 010-1.414z\"\r\n clip-rule=\"evenodd\" />\r\n </svg>\r\n </button>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n</div>"}]}],"members":{"toast":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":9,"character":3}}]}],"i":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":10,"character":3}}]}],"remove":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":11,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor"}],"ngOnInit":[{"__symbolic":"method"}],"closeToast":[{"__symbolic":"method"}]}},"AvatarInitialsComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":2,"character":1},"arguments":[{"selector":"lib-avatar-initials","template":"<div [ngClass]=\"large ? 'avatar-container-large': 'avatar-container'\">\r\n <span [ngClass]=\"large ? 'avatar-text-large': 'avatar-text'\">{{ initials }}</span>\r\n</div>\r\n"}]}],"members":{"name":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":7,"character":3}}]}],"large":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":9,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor"}],"ngOnInit":[{"__symbolic":"method"}],"createInititals":[{"__symbolic":"method"}]}},"ShellLayoutComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":10,"character":1},"arguments":[{"selector":"lib-shell-layout","template":"<div [class]=\"activeSidePane ? 'shell-container' : 'shell-container active-side-pane'\">\r\n <div class=\"shell-header-container\" *ngIf=\"activeConfig.showHeader\">\r\n <div [class]=\"activeConfig.fluid ? 'shell-header-container-inner-fluid' : 'shell-header-container-inner'\">\r\n <ng-container *ngIf=\"activeConfig.customHeaderComponent\" >\r\n <ng-template appDynamicComponentHost hostName=\"Header\"></ng-template>\r\n </ng-container>\r\n <lib-shell-header *ngIf=\"!activeConfig.customHeaderComponent\"></lib-shell-header>\r\n </div>\r\n </div>\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 <div class=\"shell-footer-container\" *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 <ng-template appDynamicComponentHost hostName=\"Footer\"></ng-template>\r\n </ng-container>\r\n <lib-shell-footer *ngIf=\"!activeConfig.customFooterComponent\"></lib-shell-footer>\r\n </div>\r\n </div>\r\n <lib-side-pane #rightPane>\r\n <router-outlet name=\"rightpane\" (activate)=\"rightPane.onSidePaneActivated($event)\" (deactivate)=\"rightPane.onSidePaneDeactivated($event)\"></router-outlet>\r\n </lib-side-pane>\r\n <lib-toaster-container></lib-toaster-container>\r\n</div>\r\n"}]}],"members":{"dynamicComponentHosts":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewChildren","line":16,"character":3},"arguments":[{"__symbolic":"reference","name":"ɵa"}]}]}],"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":21,"character":15},"arguments":[{"__symbolic":"reference","module":"@angular/common","name":"DOCUMENT","line":21,"character":22}]}],null,null,[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":23,"character":15},"arguments":[{"__symbolic":"reference","name":"SHELL_CONFIG"}]}],null],"parameters":[{"__symbolic":"reference","name":"any"},{"__symbolic":"reference","module":"@angular/router","name":"Router","line":22,"character":30},{"__symbolic":"reference","module":"@angular/common","name":"Location","line":22,"character":56},{"__symbolic":"reference","name":"IShellConfig"},{"__symbolic":"reference","name":"ComponentLoaderService"}]}],"ngOnInit":[{"__symbolic":"method"}],"ngAfterViewInit":[{"__symbolic":"method"}],"initCustomComponents":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}],"loadCustomComponent":[{"__symbolic":"method"}]}},"ShellHeaderComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":10,"character":1},"arguments":[{"selector":"lib-shell-header","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=\"#\" [routerLink]=\"['/']\"><img class=\"h-8 w-8\" [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 <ng-container *ngFor=\"let link of sectionLinks\">\r\n <a href=\"#\" [routerLinkActive]=\"['nav-link-active']\" [routerLinkActiveOptions]=\"{ exact: link.exact }\" [routerLink]=\"[link.path]\" 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\">\r\n <a class=\"shell-header-menu-rounded-button\" (clickOutside)=\"onClickOutside($event)\" href=\"#\" [routerLink]=\"[link.path]\">\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 class=\"ml-2 relative\" (clickOutside)=\"onClickOutside($event)\" *ngIf=\"profileMenuVisible\">\r\n <div>\r\n <button type=\"button\" *ngIf=\"user\" (click)=\"userMenuExpanded = !userMenuExpanded\" class=\"shell-header-profile-dropdown-button\"\r\n id=\"user-menu\" aria-expanded=\"false\" 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\" *ngIf=\"!user\" (click)=\"signin(null)\" class=\"shell-header-profile-dropdown-button\" id=\"user-menu\" aria-expanded=\"false\" 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\" class=\"shell-header-profile-dropdown\" role=\"menu\" aria-orientation=\"vertical\" 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\">Αποσύνδεση</a> -->\r\n <ng-container *ngFor=\"let link of links.profile\">\r\n <a href=\"#\" [routerLinkActive]=\"['nav-link-profile-active']\" [routerLinkActiveOptions]=\"{ exact: link.exact }\" [routerLink]=\"[link.path]\" 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 </div>\r\n </div>\r\n\r\n <div class=\"mobile-menu-button-container\">\r\n <!-- Mobile menu button -->\r\n <button type=\"button\" (click)=\"mobileMenuExpanded = !mobileMenuExpanded\" class=\"mobile-menu-button\" aria-controls=\"mobile-menu\" [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\" xmlns=\"http://www.w3.org/2000/svg\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\" aria-hidden=\"true\">\r\n <path stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" 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\" xmlns=\"http://www.w3.org/2000/svg\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\"aria-hidden=\"true\">\r\n <path stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" 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 <ng-container *ngFor=\"let link of sectionLinks\">\r\n <a href=\"#\" [routerLinkActive]=\"['nav-link-mobile-active']\" [routerLinkActiveOptions]=\"{ exact: link.exact }\" [routerLink]=\"[link.path]\" 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=\"#\" (click)=\"signin($event)\" class=\"nav-link-mobile\">\r\n <i class=\"ms-Icon ms-Icon--Signin mr-2\"></i>Σύνδεση\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\" xmlns=\"http://www.w3.org/2000/svg\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\" aria-hidden=\"true\" >\r\n <path stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" 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\">\r\n <a href=\"#\" [routerLinkActive]=\"['nav-link-mobile-active']\" [routerLinkActiveOptions]=\"{ exact: link.exact }\" [routerLink]=\"[link.path]\" 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\">Αποσύνδεση</a> -->\r\n </div>\r\n </div>\r\n </div>\r\n</nav>\r\n"}]}],"members":{"sectionLinksPath":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":17,"character":3},"arguments":["section-links"]}]}],"profileMenuVisible":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":19,"character":3},"arguments":["profile-menu"]}]}],"border":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":20,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":32,"character":15},"arguments":[{"__symbolic":"reference","module":"@indice/ng-auth","name":"AuthService","line":32,"character":22}]}],[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":33,"character":15},"arguments":[{"__symbolic":"reference","module":"@angular/router","name":"Router","line":33,"character":22}]}],[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":34,"character":15},"arguments":[{"__symbolic":"reference","name":"SHELL_CONFIG"}]}],[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":35,"character":15},"arguments":[{"__symbolic":"reference","name":"APP_LINKS"}]}]],"parameters":[{"__symbolic":"reference","module":"@indice/ng-auth","name":"AuthService","line":32,"character":58},{"__symbolic":"reference","module":"@angular/router","name":"Router","line":33,"character":48},{"__symbolic":"reference","name":"any"},{"__symbolic":"reference","name":"any"}]}],"ngOnDestroy":[{"__symbolic":"method"}],"ngOnInit":[{"__symbolic":"method"}],"onClickOutside":[{"__symbolic":"method"}],"signin":[{"__symbolic":"method"}],"setCurrentUser":[{"__symbolic":"method"}]}},"ShellFooterComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":4,"character":1},"arguments":[{"selector":"lib-shell-footer","template":"<footer class=\"shell-footer-component-container\">\r\n <div class=\"shell-footer-paddings\">\r\n <div class=\"shell-footer-component-container-inner\">\r\n <div class=\"shell-footer-sections-container\">\r\n <div class=\"shell-footer-section\">\r\n <img class=\"shell-footer-logo-h\" src=\"/assets/images/branding/indice.png\" alt=\"INDICE logo\" />\r\n <nav class=\"mt-4\">\r\n <ul class=\"space-y-2\">\r\n <ng-container *ngFor=\"let link of links.brand\">\r\n <li>\r\n <a [href]=\"link.path\" class=\"shell-footer-link\">{{ link.text }}</a>\r\n </li>\r\n </ng-container>\r\n </ul>\r\n </nav>\r\n </div>\r\n <div class=\"shell-footer-section-links\">\r\n <h5 class=\"shell-footer-section-title\">Legal</h5>\r\n <nav class=\"mt-4\">\r\n <ul class=\"grid lg:grid-cols-2\">\r\n <ng-container *ngFor=\"let link of links.legal\">\r\n <li class=\"mb-2\">\r\n <a [href]=\"link.path\" class=\"shell-footer-link\">{{ link.text }}</a>\r\n </li>\r\n </ng-container>\r\n </ul>\r\n </nav>\r\n </div>\r\n <div class=\"shell-footer-section-links\">\r\n <h5 class=\"shell-footer-section-title\">Follow us</h5>\r\n <nav class=\"mt-4\">\r\n <ul class=\"grid lg:grid-cols-2\">\r\n <li class=\"mb-2\">\r\n <a href=\"#\" class=\"shell-footer-social\">\r\n <svg class=\"shell-footer-social-icon\" aria-hidden=\"true\" fill=\"currentColor\" viewBox=\"0 0 24 24\">\r\n <path d=\"M8.29 20.251c7.547 0 11.675-6.253 11.675-11.675 0-.178 0-.355-.012-.53A8.348 8.348 0 0022 5.92a8.19 8.19 0 01-2.357.646 4.118 4.118 0 001.804-2.27 8.224 8.224 0 01-2.605.996 4.107 4.107 0 00-6.993 3.743 11.65 11.65 0 01-8.457-4.287 4.106 4.106 0 001.27 5.477A4.072 4.072 0 012.8 9.713v.052a4.105 4.105 0 003.292 4.022 4.095 4.095 0 01-1.853.07 4.108 4.108 0 003.834 2.85A8.233 8.233 0 012 18.407a11.616 11.616 0 006.29 1.84\"/>\r\n </svg>\r\n <span> Twitter </span>\r\n </a>\r\n </li>\r\n <li class=\"mb-2\">\r\n <a href=\"#\" class=\"shell-footer-social\">\r\n <svg class=\"shell-footer-social-icon\" aria-hidden=\"true\" fill=\"currentColor\" viewBox=\"0 0 24 24\">\r\n <path fill-rule=\"evenodd\" d=\"M12.315 2c2.43 0 2.784.013 3.808.06 1.064.049 1.791.218 2.427.465a4.902 4.902 0 011.772 1.153 4.902 4.902 0 011.153 1.772c.247.636.416 1.363.465 2.427.048 1.067.06 1.407.06 4.123v.08c0 2.643-.012 2.987-.06 4.043-.049 1.064-.218 1.791-.465 2.427a4.902 4.902 0 01-1.153 1.772 4.902 4.902 0 01-1.772 1.153c-.636.247-1.363.416-2.427.465-1.067.048-1.407.06-4.123.06h-.08c-2.643 0-2.987-.012-4.043-.06-1.064-.049-1.791-.218-2.427-.465a4.902 4.902 0 01-1.772-1.153 4.902 4.902 0 01-1.153-1.772c-.247-.636-.416-1.363-.465-2.427-.047-1.024-.06-1.379-.06-3.808v-.63c0-2.43.013-2.784.06-3.808.049-1.064.218-1.791.465-2.427a4.902 4.902 0 011.153-1.772A4.902 4.902 0 015.45 2.525c.636-.247 1.363-.416 2.427-.465C8.901 2.013 9.256 2 11.685 2h.63zm-.081 1.802h-.468c-2.456 0-2.784.011-3.807.058-.975.045-1.504.207-1.857.344-.467.182-.8.398-1.15.748-.35.35-.566.683-.748 1.15-.137.353-.3.882-.344 1.857-.047 1.023-.058 1.351-.058 3.807v.468c0 2.456.011 2.784.058 3.807.045.975.207 1.504.344 1.857.182.466.399.8.748 1.15.35.35.683.566 1.15.748.353.137.882.3 1.857.344 1.054.048 1.37.058 4.041.058h.08c2.597 0 2.917-.01 3.96-.058.976-.045 1.505-.207 1.858-.344.466-.182.8-.398 1.15-.748.35-.35.566-.683.748-1.15.137-.353.3-.882.344-1.857.048-1.055.058-1.37.058-4.041v-.08c0-2.597-.01-2.917-.058-3.96-.045-.976-.207-1.505-.344-1.858a3.097 3.097 0 00-.748-1.15 3.098 3.098 0 00-1.15-.748c-.353-.137-.882-.3-1.857-.344-1.023-.047-1.351-.058-3.807-.058zM12 6.865a5.135 5.135 0 110 10.27 5.135 5.135 0 010-10.27zm0 1.802a3.333 3.333 0 100 6.666 3.333 3.333 0 000-6.666zm5.338-3.205a1.2 1.2 0 110 2.4 1.2 1.2 0 010-2.4z\" clip-rule=\"evenodd\"/>\r\n </svg>\r\n <span> Instagram </span>\r\n </a>\r\n </li>\r\n <li class=\"mb-2\">\r\n <a href=\"#\" class=\"shell-footer-social\">\r\n <svg class=\"shell-footer-social-icon\" aria-hidden=\"true\" fill=\"currentColor\" viewBox=\"0 0 24 24\" >\r\n <path fill-rule=\"evenodd\" d=\"M22 12c0-5.523-4.477-10-10-10S2 6.477 2 12c0 4.991 3.657 9.128 8.438 9.878v-6.987h-2.54V12h2.54V9.797c0-2.506 1.492-3.89 3.777-3.89 1.094 0 2.238.195 2.238.195v2.46h-1.26c-1.243 0-1.63.771-1.63 1.562V12h2.773l-.443 2.89h-2.33v6.988C18.343 21.128 22 16.991 22 12z\" clip-rule=\"evenodd\"/>\r\n </svg>\r\n <span> Facebook </span>\r\n </a>\r\n </li>\r\n </ul>\r\n </nav>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"shell-footer-copyright\">\r\n <!--<nav class=\"flex flex-wrap justify-center space-x-6\">\r\n <a href=\"#\" class=\"font-normal text-sm hover:text-gray-100 mb-2\">Cookie settings</a>\r\n </nav>-->\r\n <p class=\"text-sm text-center sm:text-right\">\r\n © 2021 INDICE. All rights reserved.\r\n </p>\r\n </div>\r\n </div>\r\n</footer>\r\n"}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":11,"character":17},"arguments":[{"__symbolic":"reference","name":"APP_LINKS"}]}]],"parameters":[{"__symbolic":"reference","name":"IAppLinks"}]}]}},"ViewLayoutComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":7,"character":1},"arguments":[{"selector":"lib-view-layout","template":"<header *ngIf=\"header\" class=\"view-layout-paddings\">\r\n\r\n <div class=\"view-layout-title-container\">\r\n <div class=\"view-layout-title-container-inner\">\r\n <i *ngIf=\"icon\" [class]=\"icon + ' title-icon'\"\r\n aria-hidden=\"true\"></i>\r\n <h1 [class]=\"busy ? 'view-layout-title-busy' : 'view-layout-title'\">\r\n {{title}}\r\n </h1>\r\n </div>\r\n <div *ngIf=\"metaItems && metaItems.length > 0\" class=\"meta-container\">\r\n <ng-container *ngFor=\"let meta of metaItems\">\r\n <div class=\"meta-container-inner\">\r\n <i *ngIf=\"meta.icon\" [class]=\"meta.icon + ' meta-icon'\" aria-hidden=\"true\"></i>\r\n <span class=\"meta-text\">{{meta.text}}</span>\r\n </div>\r\n </ng-container>\r\n </div>\r\n </div>\r\n\r\n <div class=\"view-layout-title-container-sm\">\r\n <div class=\"view-layout-title-container-sm-inner\">\r\n <i *ngIf=\"icon\" [class]=\"icon + ' title-icon-sm'\"\r\n aria-hidden=\"true\"></i>\r\n <h1 [class]=\"busy ? 'view-layout-title-busy-sm' : 'view-layout-title-sm'\">\r\n {{title}}\r\n </h1>\r\n <div *ngIf=\"metaItems && metaItems.length > 0\"\r\n class=\"meta-container-sm\">\r\n <ng-container *ngFor=\"let meta of metaItems\">\r\n <div class=\"meta-container-sm-inner\">\r\n <i *ngIf=\"meta.icon\"\r\n [class]=\"meta.icon + ' meta-icon-sm'\"\r\n aria-hidden=\"true\"></i>\r\n <span class=\"meta-text\">{{meta.text}}</span>\r\n </div>\r\n </ng-container>\r\n </div>\r\n </div>\r\n\r\n <div class=\"flex items-center justify-end\">\r\n <ng-container *ngFor=\"let action of actions\"\r\n [ngSwitch]=\"action.type\">\r\n <ng-container *ngSwitchCase=\"'switch-view'\">\r\n <button [disabled]=\"view==action.param\"\r\n type=\"button\"\r\n href=\"#\"\r\n class=\"ml-1 disabled:opacity-50 btn-view-header\"\r\n (click)=\"switchViewActionClick(action)\">\r\n <span class=\"inline-block relative\">\r\n <i [class]=\"action.icon\"></i>\r\n <span *ngIf=\"view==action.param\"\r\n class=\"selected-view-indicator\"></span>\r\n </span>\r\n </button>\r\n </ng-container>\r\n <ng-container *ngSwitchCase=\"'search'\">\r\n <label for=\"search\"\r\n class=\"sr-only\">Search</label>\r\n <div class=\"search-container\">\r\n <div class=\"pointer-events-none absolute inset-y-0 left-0 pl-3 flex items-center\">\r\n <!--<svg class=\"h-5 w-5\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 20 20\" fill=\"currentColor\" aria-hidden=\"true\">\r\n <path fill-rule=\"evenodd\" d=\"M8 4a4 4 0 100 8 4 4 0 000-8zM2 8a6 6 0 1110.89 3.476l4.817 4.817a1 1 0 01-1.414 1.414l-4.816-4.816A6 6 0 012 8z\" clip-rule=\"evenodd\" />\r\n </svg>-->\r\n </div>\r\n <input id=\"search\"\r\n #search\r\n class=\"search-input\"\r\n [placeholder]=\"searchPlaceholder\"\r\n type=\"search\"\r\n name=\"search\"\r\n (input)=\"searchActionType(search.value)\">\r\n </div>\r\n <button type=\"button\"\r\n href=\"#\"\r\n class=\"btn-view-header rounded-l-none\"\r\n (click)=\"searchActionClick(action, search.value)\">\r\n <i [class]=\"action.icon\"></i>\r\n </button>\r\n </ng-container>\r\n <ng-container *ngSwitchCase=\"'router-link'\">\r\n <button type=\"button\"\r\n href=\"#\"\r\n class=\"ml-1 btn-view-header\"\r\n (click)=\"routerLinkActionClick(action)\">\r\n <i [class]=\"action.icon\"></i>\r\n </button>\r\n </ng-container>\r\n\r\n <!---->\r\n <ng-container *ngSwitchDefault>\r\n <button type=\"button\"\r\n class=\"ml-1 btn-view-header\"\r\n (click)=\"emitActionClick(action)\">\r\n <i [class]=\"action.icon\"></i>\r\n </button>\r\n </ng-container>\r\n </ng-container>\r\n </div>\r\n </div>\r\n</header>\r\n\r\n<!-- component -->\r\n<div [class]=\"fluid ? 'view-container-fluid' : 'view-container'\">\r\n <ng-content></ng-content>\r\n</div>\r\n"}]}],"members":{"searchInput$":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewChild","line":13,"character":3},"arguments":["search"]}]}],"header":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":15,"character":3},"arguments":["show-header"]}]}],"fluid":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":16,"character":3}}]}],"title":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":17,"character":3}}]}],"icon":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":18,"character":3}}]}],"actions":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":19,"character":3}}]}],"busy":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":20,"character":3}}]}],"searchPlaceholder":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":22,"character":3},"arguments":["search-placeholder"]}]}],"view":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":23,"character":3}}]}],"metaItems":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":25,"character":3},"arguments":["meta-items"]}]}],"onAction":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":29,"character":3}}]}],"onSearch":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":31,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/router","name":"ActivatedRoute","line":33,"character":30},{"__symbolic":"reference","module":"@angular/router","name":"Router","line":33,"character":63}]}],"ngOnInit":[{"__symbolic":"method"}],"emitActionClick":[{"__symbolic":"method"}],"routerLinkActionClick":[{"__symbolic":"method"}],"searchActionClick":[{"__symbolic":"method"}],"searchActionType":[{"__symbolic":"method"}],"switchViewActionClick":[{"__symbolic":"method"}]}},"ModelViewLayoutComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":4,"character":1},"arguments":[{"selector":"lib-model-view-layout","template":"<lib-view-layout [title]=\"title\" [meta-items]=\"metaItems\">\r\n <main class=\"model-view-container\">\r\n <div class=\"model-view-container-inner\">\r\n <aside class=\"model-view-aside\">\r\n <section aria-labelledby=\"menu\" class=\"details-view-aside-header-section\">\r\n <div class=\"model-view-aside-header-container\">\r\n <div class=\"model-view-aside-header-container-inner\">\r\n <ng-content></ng-content>\r\n </div>\r\n <!-- menu items -->\r\n <div class=\"model-view-menu-container\">\r\n <nav class=\"model-view-menu-nav\">\r\n <div class=\"model-view-menu-item\">\r\n <ng-container *ngFor=\"let section of primary\">\r\n <a href=\"#\"\r\n [routerLinkActive]=\"['view-nav-link-active']\"\r\n [routerLink]=\"section.link\"\r\n class=\"view-nav-link\">\r\n {{section.text}}\r\n </a>\r\n </ng-container>\r\n </div>\r\n <div class=\"model-view-menu-item-far\">\r\n <ng-container *ngFor=\"let section of secondary\">\r\n <a href=\"#\"\r\n [routerLinkActive]=\"['view-nav-link-active']\"\r\n [routerLinkActiveOptions]=\"{ exact: true }\"\r\n [routerLink]=\"section.link\"\r\n class=\"view-nav-link\">\r\n {{section.text}}\r\n </a>\r\n </ng-container>\r\n </div>\r\n </nav>\r\n </div>\r\n </div>\r\n </section>\r\n </aside>\r\n <div class=\"model-view-details-container\">\r\n <router-outlet></router-outlet>\r\n </div>\r\n </div>\r\n </main>\r\n"}]}],"members":{"title":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":11,"character":3}}]}],"primary":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":13,"character":3},"arguments":["primary-links"]}]}],"secondary":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":15,"character":3},"arguments":["secondary-links"]}]}],"metaItems":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":17,"character":3},"arguments":["meta-items"]}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/common","name":"Location","line":20,"character":33}]}],"ngOnInit":[{"__symbolic":"method"}],"onSidePaneActivated":[{"__symbolic":"method"}],"onSidePaneDeactivated":[{"__symbolic":"method"}],"closeSidePane":[{"__symbolic":"method"}]}},"SideViewLayoutComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":4,"character":1},"arguments":[{"selector":"lib-side-view-layout","template":"<div class=\"side-view-layout-size-box\">\r\n <div class=\"side-view-layout-container\">\r\n <div class=\"side-view-layout-container-inner\">\r\n <div class=\"side-view-layout-header-margins\">\r\n <div class=\"side-view-layout-header-container\">\r\n <h2 class=\"side-view-layout-header-title\" id=\"slide-over-title\">\r\n {{title}}\r\n </h2>\r\n <div class=\"side-view-layout-close-button-container\">\r\n <button (click)=\"emitClose()\" class=\"side-view-layout-close-button\">\r\n <span class=\"sr-only\">Close panel</span>\r\n <!-- Heroicon name: outline/x -->\r\n <svg class=\"side-view-layout-close-button-icon\" xmlns=\"http://www.w3.org/2000/svg\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\" aria-hidden=\"true\">\r\n <path stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M6 18L18 6M6 6l12 12\" />\r\n </svg>\r\n </button>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"side-view-layout-content-container\">\r\n <!-- Replace with your content -->\r\n <ng-content></ng-content>\r\n <!-- /End replace -->\r\n </div>\r\n </div>\r\n <div *ngIf=\"showActions\" class=\"side-view-layout-actions-container\">\r\n <button *ngIf=\"cancelShow\" (click)=\"emitCancel()\" type=\"button\" class=\"side-view-layout-action-button\">\r\n {{cancelLabel}}\r\n </button>\r\n <button *ngIf=\"okShow\" (click)=\"emitOK()\" class=\"side-view-layout-action-button-default\" [disabled]=\"disabled\">\r\n {{okLabel}}\r\n </button>\r\n </div>\r\n </div>\r\n</div>\r\n\r\n"}]}],"members":{"title":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":9,"character":3}}]}],"showActions":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":10,"character":3}}]}],"disabled":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":11,"character":3}}]}],"returnPath":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":13,"character":3},"arguments":["return-path"]}]}],"okLabel":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":15,"character":3},"arguments":["ok-label"]}]}],"okShow":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":17,"character":3},"arguments":["ok-show"]}]}],"closeOnOk":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":19,"character":3},"arguments":["ok-close-dialog"]}]}],"cancelLabel":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":21,"character":3},"arguments":["cancel-label"]}]}],"cancelShow":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":23,"character":3},"arguments":["cancel-show"]}]}],"cancel":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":25,"character":3}}]}],"ok":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":26,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/common","name":"Location","line":28,"character":32},{"__symbolic":"reference","module":"@angular/router","name":"Router","line":28,"character":58}]}],"ngOnInit":[{"__symbolic":"method"}],"closeSidePane":[{"__symbolic":"method"}],"emitClose":[{"__symbolic":"method"}],"emitCancel":[{"__symbolic":"method"}],"emitOK":[{"__symbolic":"method"}]}},"FormLayoutComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":6,"character":1},"arguments":[{"selector":"lib-form-layout","template":"<div class=\"form-layout-container\">\r\n <div class=\"form-header\">\r\n <div class=\"form-header-inner\">\r\n <h3 class=\"form-title\">\r\n {{ title }}\r\n </h3>\r\n <p class=\"form-subtitle\">\r\n {{ subTitle }}\r\n </p>\r\n </div>\r\n <div class=\"form-header-actions\">\r\n <ng-container *ngFor=\"let action of actions\"\r\n [ngSwitch]=\"action.type\">\r\n <ng-container *ngSwitchCase=\"'search'\">\r\n <label for=\"search\"\r\n class=\"sr-only\">Search</label>\r\n <div class=\"search-container\">\r\n <div class=\"pointer-events-none absolute inset-y-0 left-0 pl-3 flex items-center\">\r\n <!--<svg class=\"h-5 w-5\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 20 20\" fill=\"currentColor\" aria-hidden=\"true\">\r\n <path fill-rule=\"evenodd\" d=\"M8 4a4 4 0 100 8 4 4 0 000-8zM2 8a6 6 0 1110.89 3.476l4.817 4.817a1 1 0 01-1.414 1.414l-4.816-4.816A6 6 0 012 8z\" clip-rule=\"evenodd\" />\r\n </svg>-->\r\n </div>\r\n <input id=\"search\"\r\n #search\r\n class=\"form-search-input\"\r\n [placeholder]=\"searchPlaceholder\"\r\n type=\"search\"\r\n name=\"search\"\r\n (input)=\"searchActionType(search.value)\">\r\n </div>\r\n <button type=\"button\"\r\n href=\"#\"\r\n class=\"btn-form-view-header-search\"\r\n (click)=\"searchActionClick(action, search.value)\">\r\n <i [class]=\"action.icon\"></i>\r\n </button>\r\n </ng-container>\r\n <ng-container *ngSwitchCase=\"'router-link'\">\r\n <button type=\"button\"\r\n href=\"#\"\r\n class=\"ml-1 btn-form-view-header\"\r\n (click)=\"routerLinkActionClick(action)\">\r\n <i [class]=\"action.icon\"></i>\r\n </button>\r\n </ng-container>\r\n <ng-container *ngSwitchDefault>\r\n <button type=\"button\"\r\n class=\"ml-1 btn-form-view-header\"\r\n (click)=\"emitActionClick(action)\">\r\n <i [class]=\"action.icon\"></i>\r\n </button>\r\n </ng-container>\r\n </ng-container>\r\n </div>\r\n </div>\r\n <div class=\"form-content-container\">\r\n <div class=\"form-content-container-inner\">\r\n <ng-content></ng-content>\r\n </div>\r\n </div>\r\n <lib-side-pane #formPane>\r\n <router-outlet name=\"formRightPane\"\r\n (activate)=\"formPane.onSidePaneActivated($event)\"\r\n (deactivate)=\"formPane.onSidePaneDeactivated($event)\"></router-outlet>\r\n </lib-side-pane>\r\n</div>\r\n"}]}],"members":{"searchInput$":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewChild","line":12,"character":3},"arguments":["search"]}]}],"title":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":13,"character":3}}]}],"searchPlaceholder":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":15,"character":3},"arguments":["search-placeholder"]}]}],"actions":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":16,"character":3}}]}],"subTitle":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":18,"character":3},"arguments":["sub-title"]}]}],"onAction":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":20,"character":3}}]}],"onSearch":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":22,"character":3}}]}],"onComplete":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":23,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/router","name":"Router","line":26,"character":31}]}],"ngOnInit":[{"__symbolic":"method"}],"onSidePaneActivated":[{"__symbolic":"method"}],"onSidePaneDeactivated":[{"__symbolic":"method"}],"emitActionClick":[{"__symbolic":"method"}],"searchActionClick":[{"__symbolic":"method"}],"searchActionType":[{"__symbolic":"method"}],"routerLinkActionClick":[{"__symbolic":"method"}]}},"AuthCallbackComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":5,"character":1},"arguments":[{"selector":"lib-auth-callback","template":"<lib-view-layout [title]=\"status\" [busy]=\"true\">\r\n\r\n</lib-view-layout>\r\n"}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":13,"character":15},"arguments":[{"__symbolic":"reference","module":"@indice/ng-auth","name":"AuthService","line":13,"character":22}]}],null,null],"parameters":[{"__symbolic":"reference","module":"@indice/ng-auth","name":"AuthService","line":13,"character":56},{"__symbolic":"reference","module":"@angular/router","name":"Router","line":13,"character":85},{"__symbolic":"reference","module":"@angular/router","name":"ActivatedRoute","line":13,"character":108}]}],"ngOnInit":[{"__symbolic":"method"}]}},"AuthRenewComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":6,"character":1},"arguments":[{"selector":"lib-auth-renew","template":""}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":9,"character":15},"arguments":[{"__symbolic":"reference","module":"@indice/ng-auth","name":"AuthService","line":9,"character":22}]}],null],"parameters":[{"__symbolic":"reference","module":"@indice/ng-auth","name":"AuthService","line":9,"character":56},{"__symbolic":"reference","module":"@angular/router","name":"Router","line":9,"character":85}]}],"ngOnInit":[{"__symbolic":"method"}]}},"LoggedOutComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":3,"character":1},"arguments":[{"selector":"lib-logged-out","template":"<lib-view-layout title=\"γειά σας!\"></lib-view-layout>\r\n\r\n"}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":11,"character":15},"arguments":[{"__symbolic":"reference","module":"@indice/ng-auth","name":"AuthService","line":11,"character":22}]}]],"parameters":[{"__symbolic":"reference","module":"@indice/ng-auth","name":"AuthService","line":11,"character":56}]}],"ngOnInit":[{"__symbolic":"method"}]}},"ErrorComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":2,"character":1},"arguments":[{"selector":"lib-error","template":"<lib-view-layout [show-header]=\"false\" title=\"500 - παρουσιάστηκε σφάλμα!\">\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\">500</span>\r\n </h2>\r\n <p class=\"mt-4 text-lg leading-6 text-gray-200\">σφάλμα, κατι δεν πήγε καλά...!</p>\r\n <a href=\"/\" 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 πατήστε εδώ για να επιστρέψετε\r\n </a>\r\n </div>\r\n </div>\r\n</lib-view-layout>\r\n"}]}],"members":{"ngOnInit":[{"__symbolic":"method"}]}},"PageNotFoundComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":2,"character":1},"arguments":[{"selector":"lib-page-not-found","template":"<lib-view-layout [show-header]=\"false\"\r\n title=\"404 - δεν βρέθηκε!\">\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\">δεν βρέθηκε η σελίδα που ζητήσατε!</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 πατήστε εδώ για να επιστρέψετε\r\n </a>\r\n </div>\r\n </div>\r\n</lib-view-layout>"}]}],"members":{"__ctor__":[{"__symbolic":"constructor"}],"ngOnInit":[{"__symbolic":"method"}]}},"UnauthorizedComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":5,"character":1},"arguments":[{"selector":"lib-unauthorized","template":"<lib-view-layout [show-header]=\"false\" title=\"401 - δεν επιτρέπεται η πρόσβαση!\">\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\">401</span>\r\n </h2>\r\n <p class=\"mt-4 text-lg leading-6 text-gray-200\">δεν έχετε τα κατάλληλα δικαιώματα πρόσβασης!</p>\r\n <a href=\"/\" 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 πατήστε εδώ για να επιστρέψετε\r\n </a>\r\n </div>\r\n </div>\r\n </lib-view-layout>\r\n\r\n\r\n"}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":8,"character":15},"arguments":[{"__symbolic":"reference","module":"@indice/ng-auth","name":"AuthService","line":8,"character":22}]}]],"parameters":[{"__symbolic":"reference","module":"@indice/ng-auth","name":"AuthService","line":8,"character":56}]}],"ngOnInit":[{"__symbolic":"method"}],"signin":[{"__symbolic":"method"}]}},"AddressPipe":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Pipe","line":3,"character":1},"arguments":[{"name":"address","pure":false}]}],"members":{"transform":[{"__symbolic":"method"}]}},"DurationFormatPipe":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Pipe","line":2,"character":1},"arguments":[{"name":"durationFormat","pure":false}]}],"members":{"transform":[{"__symbolic":"method"}],"format":[{"__symbolic":"method"}]}},"APP_LINKS":{"__symbolic":"new","expression":{"__symbolic":"reference","module":"@angular/core","name":"InjectionToken","line":3,"character":29},"arguments":["APP_LINKS"]},"SHELL_CONFIG":{"__symbolic":"new","expression":{"__symbolic":"reference","module":"@angular/core","name":"InjectionToken","line":4,"character":32},"arguments":["SHELL_CONFIG"]},"IAppLinks":{"__symbolic":"interface"},"NavLink":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"string"},{"__symbolic":"reference","name":"string"},{"__symbolic":"reference","name":"boolean"},{"__symbolic":"reference","name":"boolean"},{"__symbolic":"reference","name":"string"}]}]}},"ExternalNavLink":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"NavLink"},"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"string"},{"__symbolic":"reference","name":"string"},{"__symbolic":"reference","name":"string"}]}]}},"FragmentNavLink":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"NavLink"},"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"string"},{"__symbolic":"reference","name":"string"},{"__symbolic":"reference","name":"string"}]}]}},"ViewAction":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"string"},{"__symbolic":"reference","name":"string"},{"__symbolic":"reference","name":"any"},{"__symbolic":"reference","name":"string"},{"__symbolic":"reference","name":"string"}]}]}},"ListViewType":{"__symbolic":"class","members":{},"statics":{"Tiles":"tiles","Table":"table","Map":"map"}},"RouterViewAction":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"ViewAction"},"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"string"},{"__symbolic":"reference","name":"string"},{"__symbolic":"reference","name":"string"},{"__symbolic":"reference","name":"string"}]}]}},"SwitchViewAction":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"ViewAction"},"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"string"},{"__symbolic":"reference","name":"string"},{"__symbolic":"reference","name":"string"}]}]}},"IResultSet":{"__symbolic":"interface"},"HeaderMetaItem":{"__symbolic":"class","members":{}},"MenuOption":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"string"},{"__symbolic":"reference","name":"any"},{"__symbolic":"reference","name":"string"},{"__symbolic":"reference","name":"any"},{"__symbolic":"reference","name":"string"}]}]}},"IAddress":{"__symbolic":"interface"},"IShellConfig":{"__symbolic":"interface"},"DefaultShellConfig":{"__symbolic":"class","members":{}},"SCREEN_SIZE":{"XS":0,"SM":1,"MD":2,"LG":3,"XL":4},"IScreenSize":{"__symbolic":"interface"},"ToastType":{"Info":"info","Success":"success","Error":"error","Warning":"warning"},"NULL_TOAST":{"title":"_____NULL_____"},"Toast":{"__symbolic":"interface"},"SidePaneSize":{"Default":"","Small25":"25%","Medium50":"50%","Large75":"75%"},"SidePaneOverlayType":{"Default":"","None":"-opacity-0","Light":"","Dark":"-opacity-50"},"Icons":{"__symbolic":"class","members":{},"statics":{"Dashboard":"ms-Icon ms-Icon--HomeGroup ","Locations":"ms-Icon ms-Icon--MapPin ","ChargePoints":"ms-Icon ms-Icon--ChatBot ","Transations":"ms-Icon ms-Icon--PaymentCard ","Badges":"ms-Icon ms-Icon--IDBadge ","Information":"ms-Icon ms-Icon--Info","Refresh":"ms-Icon ms-Icon--Refresh","Search":"ms-Icon ms-Icon--Search","Add":"ms-Icon ms-Icon--Add","Filter":"ms-Icon ms-Icon--Filter","TilesView":"ms-Icon ms-Icon--AppIconDefault","TableView":"ms-Icon ms-Icon--Table","MapView":"ms-Icon ms-Icon--MapPin","EntryView":"ms-Icon ms-Icon--EntryView","Separator":"ms-Icon ms-Icon--Separator text-white","ItemsCount":"ms-Icon ms-Icon--Boards","Heart":"ms-Icon ms-Icon--Heart","HeartBroken":"ms-Icon ms-Icon--HeartBroken","DateTime":"ms-Icon ms-Icon--ReminderTime","Expand":"ms-Icon ms-Icon--ChevronDown","Collapse":"ms-Icon ms-Icon--ChevronUp","SortAsc":"ms-Icon ms-Icon--Ascending","SortDesc":"ms-Icon ms-Icon--Descending","Details":" ms-Icon ms-Icon--AccountActivity"}},"BaseListComponent":{"__symbolic":"class","arity":1,"decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":6,"character":1},"arguments":[{"template":""}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/router","name":"ActivatedRoute","line":24,"character":30},{"__symbolic":"reference","module":"@angular/router","name":"Router","line":24,"character":63}]}],"ngOnDestroy":[{"__symbolic":"method"}],"ngOnInit":[{"__symbolic":"method"}],"setRouteParams":[{"__symbolic":"method"}],"actionHandler":[{"__symbolic":"method"}],"load":[{"__symbolic":"method"}],"updateHeaderMeta":[{"__symbolic":"method"}],"loadItems":[{"__symbolic":"method"}],"clear":[{"__symbolic":"method"}],"refresh":[{"__symbolic":"method"}],"pageChanged":[{"__symbolic":"method"}],"pageSizeChanged":[{"__symbolic":"method"}],"sortChanged":[{"__symbolic":"method"}],"sortdirChanged":[{"__symbolic":"method"}],"searchChanged":[{"__symbolic":"method"}]}},"ComponentLoaderService":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":2,"character":1},"arguments":[{"providedIn":"root"}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/core","name":"ComponentFactoryResolver","line":6,"character":29}]}],"loadComponent":[{"__symbolic":"method"}]},"statics":{"ɵprov":{}}},"ToasterService":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":5,"character":1},"arguments":[{"providedIn":"root"}]}],"members":{"__ctor__":[{"__symbolic":"constructor"}],"show":[{"__symbolic":"method"}]},"statics":{"ɵprov":{}}},"IndiceComponentsModule":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgModule","line":38,"character":1},"arguments":[{"declarations":[{"__symbolic":"reference","name":"ClickOutsideDirective"},{"__symbolic":"reference","name":"ɵa"},{"__symbolic":"reference","name":"DropDownMenuComponent"},{"__symbolic":"reference","name":"PagerComponent"},{"__symbolic":"reference","name":"ListViewComponent"},{"__symbolic":"reference","name":"ListColumnComponent"},{"__symbolic":"reference","name":"ListTileComponent"},{"__symbolic":"reference","name":"ListDetailsSectionComponent"},{"__symbolic":"reference","name":"ListViewEmptyStateComponent"},{"__symbolic":"reference","name":"SkeletonLoaderComponent"},{"__symbolic":"reference","name":"CollapsiblePanelComponent"},{"__symbolic":"reference","name":"KpiTileComponent"},{"__symbolic":"reference","name":"ɵb"},{"__symbolic":"reference","name":"DatepickerComponent"},{"__symbolic":"reference","name":"AvatarInitialsComponent"},{"__symbolic":"reference","name":"ToasterContainerComponent"},{"__symbolic":"reference","name":"ToasterComponent"},{"__symbolic":"reference","name":"ShellLayoutComponent"},{"__symbolic":"reference","name":"ShellHeaderComponent"},{"__symbolic":"reference","name":"ShellFooterComponent"},{"__symbolic":"reference","name":"ViewLayoutComponent"},{"__symbolic":"reference","name":"SideViewLayoutComponent"},{"__symbolic":"reference","name":"ModelViewLayoutComponent"},{"__symbolic":"reference","name":"FormLayoutComponent"},{"__symbolic":"reference","name":"AuthCallbackComponent"},{"__symbolic":"reference","name":"AuthRenewComponent"},{"__symbolic":"reference","name":"LoggedOutComponent"},{"__symbolic":"reference","name":"ErrorComponent"},{"__symbolic":"reference","name":"PageNotFoundComponent"},{"__symbolic":"reference","name":"UnauthorizedComponent"},{"__symbolic":"reference","name":"AddressPipe"},{"__symbolic":"reference","name":"DurationFormatPipe"}],"imports":[{"__symbolic":"reference","module":"@angular/common","name":"CommonModule","line":81,"character":4},{"__symbolic":"reference","module":"@angular/router","name":"RouterModule","line":82,"character":4},{"__symbolic":"reference","module":"@indice/ng-auth","name":"IndiceAuthModule","line":83,"character":4}],"exports":[{"__symbolic":"reference","name":"ClickOutsideDirective"},{"__symbolic":"reference","name":"DropDownMenuComponent"},{"__symbolic":"reference","name":"PagerComponent"},{"__symbolic":"reference","name":"ListViewComponent"},{"__symbolic":"reference","name":"ListColumnComponent"},{"__symbolic":"reference","name":"ListTileComponent"},{"__symbolic":"reference","name":"ListDetailsSectionComponent"},{"__symbolic":"reference","name":"ListViewEmptyStateComponent"},{"__symbolic":"reference","name":"KpiTileComponent"},{"__symbolic":"reference","name":"SkeletonLoaderComponent"},{"__symbolic":"reference","name":"ShellLayoutComponent"},{"__symbolic":"reference","name":"ShellHeaderComponent"},{"__symbolic":"reference","name":"ShellFooterComponent"},{"__symbolic":"reference","name":"ViewLayoutComponent"},{"__symbolic":"reference","name":"SideViewLayoutComponent"},{"__symbolic":"reference","name":"ModelViewLayoutComponent"},{"__symbolic":"reference","name":"FormLayoutComponent"},{"__symbolic":"reference","name":"AuthCallbackComponent"},{"__symbolic":"reference","name":"AuthRenewComponent"},{"__symbolic":"reference","name":"LoggedOutComponent"},{"__symbolic":"reference","name":"ErrorComponent"},{"__symbolic":"reference","name":"PageNotFoundComponent"},{"__symbolic":"reference","name":"UnauthorizedComponent"},{"__symbolic":"reference","name":"AddressPipe"},{"__symbolic":"reference","name":"DurationFormatPipe"},{"__symbolic":"reference","name":"CollapsiblePanelComponent"},{"__symbolic":"reference","name":"ɵb"},{"__symbolic":"reference","name":"DatepickerComponent"},{"__symbolic":"reference","name":"ToasterContainerComponent"},{"__symbolic":"reference","name":"ToasterComponent"},{"__symbolic":"reference","name":"AvatarInitialsComponent"}]}]}],"members":{},"statics":{"forRoot":{"__symbolic":"function","parameters":[],"value":{"ngModule":{"__symbolic":"reference","name":"IndiceComponentsModule"},"providers":[{"__symbolic":"reference","name":"ToasterService"}]}}}},"ɵa":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Directive","line":2,"character":1},"arguments":[{"selector":"[appDynamicComponentHost]"}]}],"members":{"hostName":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":4,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/core","name":"ViewContainerRef","line":5,"character":39}]}]}},"ɵb":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":6,"character":1},"arguments":[{"selector":"lib-side-pane","template":"<div *ngIf=\"showPane\" class=\"side-pane-outer-container\" aria-labelledby=\"slide-over\" role=\"dialog\" aria-modal=\"true\">\r\n <div [class]=\"showPane ? overlayStyle : 'hidden'\" aria-hidden=\"true\"></div>\r\n <div [class]=\"showPane ? 'side-pane-container' : 'hidden'\">\r\n <div [class]=\"sizeContainerStyle\">\r\n <div class=\"side-pane\">\r\n <ng-content></ng-content>\r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n"}]}],"members":{"showPane":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":12,"character":3},"arguments":["visible"]}]}],"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[null,[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":17,"character":5},"arguments":[{"__symbolic":"reference","module":"@angular/common","name":"DOCUMENT","line":17,"character":12}]}]],"parameters":[{"__symbolic":"reference","module":"@angular/router","name":"Router","line":16,"character":20},{"__symbolic":"reference","name":"any"}]}],"ngOnDestroy":[{"__symbolic":"method"}],"ngOnInit":[{"__symbolic":"method"}],"onSidePaneActivated":[{"__symbolic":"method"}],"onSidePaneDeactivated":[{"__symbolic":"method"}]}}},"origins":{"ClickOutsideDirective":"./lib/directives/click-outside.directive","DropDownMenuComponent":"./lib/controls/drop-down-menu/drop-down-menu.component","PagerComponent":"./lib/controls/pager/pager.component","ListViewComponent":"./lib/controls/list-view/list-view.component","ListColumnComponent":"./lib/controls/list-view/list-column.component","ListTileComponent":"./lib/controls/list-view/list-tile.component","ListDetailsSectionComponent":"./lib/controls/list-view/list-details-section.component","ListViewEmptyStateComponent":"./lib/controls/list-view/list-view-empty-state.component","SkeletonLoaderComponent":"./lib/controls/skeleton-loader/skeleton-loader.component","CollapsiblePanelComponent":"./lib/controls/collapsible-panel/collapsible-panel.component","KpiTileComponent":"./lib/controls/kpi-tile/kpi-tile.component","DatepickerComponent":"./lib/controls/date-picker/date-picker.component","ToasterContainerComponent":"./lib/controls/toaster/toaster-container.component","ToasterComponent":"./lib/controls/toaster/toaster.component","AvatarInitialsComponent":"./lib/controls/avatar-initials/avatar-initials.component","ShellLayoutComponent":"./lib/layouts/shell/shell-layout/shell-layout.component","ShellHeaderComponent":"./lib/layouts/shell/shell-header/shell-header.component","ShellFooterComponent":"./lib/layouts/shell/shell-footer/shell-footer.component","ViewLayoutComponent":"./lib/layouts/views/view-layout/view-layout.component","ModelViewLayoutComponent":"./lib/layouts/views/model-view-layout/model-view-layout.component","SideViewLayoutComponent":"./lib/layouts/views/side-view-layout/side-view-layout.component","FormLayoutComponent":"./lib/layouts/views/form-layout/form-layout.component","AuthCallbackComponent":"./lib/pages/auth/auth-callback/auth-callback.component","AuthRenewComponent":"./lib/pages/auth/auth-renew/auth-renew.component","LoggedOutComponent":"./lib/pages/auth/logged-out/logged-out.component","ErrorComponent":"./lib/pages/http-status/error/error.component","PageNotFoundComponent":"./lib/pages/http-status/page-not-found/page-not-found.component","UnauthorizedComponent":"./lib/pages/http-status/unauthorized/unauthorized.component","AddressPipe":"./lib/pipes/address.pipe","DurationFormatPipe":"./lib/pipes/duration-format.pipe","APP_LINKS":"./lib/tokens","SHELL_CONFIG":"./lib/tokens","IAppLinks":"./lib/types","NavLink":"./lib/types","ExternalNavLink":"./lib/types","FragmentNavLink":"./lib/types","ViewAction":"./lib/types","ListViewType":"./lib/types","RouterViewAction":"./lib/types","SwitchViewAction":"./lib/types","IResultSet":"./lib/types","HeaderMetaItem":"./lib/types","MenuOption":"./lib/types","IAddress":"./lib/types","IShellConfig":"./lib/types","DefaultShellConfig":"./lib/types","SCREEN_SIZE":"./lib/types","IScreenSize":"./lib/types","ToastType":"./lib/types","NULL_TOAST":"./lib/types","Toast":"./lib/types","SidePaneSize":"./lib/types","SidePaneOverlayType":"./lib/types","Icons":"./lib/icons","BaseListComponent":"./lib/helpers/base-list.component","ComponentLoaderService":"./lib/services/component-loader.service","ToasterService":"./lib/services/toaster.service","IndiceComponentsModule":"./lib/ng-components.module","ɵa":"./lib/directives/dynamic-component-host.directive","ɵb":"./lib/controls/side-pane/side-pane.component"},"importAs":"@indice/ng-components"}
1
+ {"__symbolic":"module","version":4,"metadata":{"ClickOutsideDirective":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Directive","line":21,"character":1},"arguments":[{"selector":"[clickOutside]"}]}],"members":{"clickOutsideEnabled":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":24,"character":3}}]}],"attachOutsideOnClick":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":26,"character":3}}]}],"delayClickOutsideInit":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":27,"character":3}}]}],"emitOnBlur":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":28,"character":3}}]}],"exclude":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":30,"character":3}}]}],"excludeBeforeClick":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":31,"character":3}}]}],"clickOutsideEvents":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":33,"character":3}}]}],"clickOutside":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":35,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[null,null,[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":47,"character":5},"arguments":[{"__symbolic":"reference","module":"@angular/core","name":"PLATFORM_ID","line":47,"character":12}]}]],"parameters":[{"__symbolic":"reference","module":"@angular/core","name":"ElementRef","line":44,"character":17},{"__symbolic":"reference","module":"@angular/core","name":"NgZone","line":46,"character":21},{"__symbolic":"reference","name":"any"}]}],"ngOnInit":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}],"ngOnChanges":[{"__symbolic":"method"}],"_init":[{"__symbolic":"method"}],"_initOnClickBody":[{"__symbolic":"method"}],"_excludeCheck":[{"__symbolic":"method"}],"_onClickBody":[{"__symbolic":"method"}],"_onWindowBlur":[{"__symbolic":"method"}],"_emit":[{"__symbolic":"method"}],"_shouldExclude":[{"__symbolic":"method"}],"_initClickOutsideListener":[{"__symbolic":"method"}],"_removeClickOutsideListener":[{"__symbolic":"method"}],"_initAttachOutsideOnClickListener":[{"__symbolic":"method"}],"_removeAttachOutsideOnClickListener":[{"__symbolic":"method"}],"_initWindowBlurListener":[{"__symbolic":"method"}],"_removeWindowBlurListener":[{"__symbolic":"method"}]}},"DropDownMenuComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":3,"character":1},"arguments":[{"selector":"lib-drop-down-menu","template":"<div class=\"dropdown-container\" (clickOutside)=\"onClickOutside($event)\">\r\n <button type=\"button\" (click)=\"expanded=!expanded\"\r\n class=\"dropdown-button\"\r\n aria-haspopup=\"listbox\" aria-expanded=\"true\" aria-labelledby=\"listbox-label\">\r\n <span class=\"dropdown-selected-text\">\r\n {{selectedOption?.text || 'Παρακαλώ επιλέξτε...'}}\r\n </span>\r\n <span class=\"dropdown-button-icon\">\r\n <!-- Heroicon name: solid/selector -->\r\n <svg class=\"dropdown-arrow\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 20 20\" fill=\"currentColor\" aria-hidden=\"true\">\r\n <path fill-rule=\"evenodd\" d=\"M10 3a1 1 0 01.707.293l3 3a1 1 0 01-1.414 1.414L10 5.414 7.707 7.707a1 1 0 01-1.414-1.414l3-3A1 1 0 0110 3zm-3.707 9.293a1 1 0 011.414 0L10 14.586l2.293-2.293a1 1 0 011.414 1.414l-3 3a1 1 0 01-1.414 0l-3-3a1 1 0 010-1.414z\" clip-rule=\"evenodd\" />\r\n </svg>\r\n </span>\r\n </button>\r\n <ul *ngIf=\"expanded && options && options.length>0\"\r\n class=\"dropdown-ul\" tabindex=\"-1\"\r\n role=\"listbox\" aria-labelledby=\"listbox-label\" aria-activedescendant=\"listbox-option-3\">\r\n <ng-container *ngFor=\"let option of options\">\r\n <li [class]=\"isSelected(option) ? 'dropdown-li-selected' : 'dropdown-li'\" (click)=\"selectOption(option)\" id=\"listbox-option-0\" role=\"option\">\r\n <span [class]=\"isSelected(option) ? 'dropdown-li-selected-text' : 'dropdown-li-text'\">\r\n {{option.text}}\r\n </span>\r\n <span *ngIf=\"isSelected(option)\" class=\"dropdown-li-selected-indicator-container\">\r\n <!-- Heroicon name: solid/check -->\r\n <svg class=\"dropdown-li-selected-indicator\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 20 20\" fill=\"currentColor\" aria-hidden=\"true\">\r\n <path fill-rule=\"evenodd\" d=\"M16.707 5.293a1 1 0 010 1.414l-8 8a1 1 0 01-1.414 0l-4-4a1 1 0 011.414-1.414L8 12.586l7.293-7.293a1 1 0 011.414 0z\" clip-rule=\"evenodd\" />\r\n </svg>\r\n </span>\r\n </li>\r\n </ng-container>\r\n </ul>\r\n</div>\r\n"}]}],"members":{"options":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":9,"character":3}}]}],"selectedValue":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":11,"character":3},"arguments":["selected"]}]}],"multiple":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":12,"character":3}}]}],"selectedChange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":24,"character":3}}]}],"selectedChanged":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":25,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor"}],"ngOnChanges":[{"__symbolic":"method"}],"ngOnInit":[{"__symbolic":"method"}],"isSelected":[{"__symbolic":"method"}],"onClickOutside":[{"__symbolic":"method"}],"selectOption":[{"__symbolic":"method"}]}},"PagerComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":5,"character":1},"arguments":[{"selector":"lib-pager","template":"<div class=\"pager-container\">\r\n <div class=\"pager-container-inner\">\r\n <div class=\"inline-flex\" *ngIf=\"sortOptions && sortOptions.length > 0\">\r\n <lib-drop-down-menu [options]=\"sortOptions\" [selected]=\"sort\" (selectedChanged)=\"sortOptionChanged($event)\"></lib-drop-down-menu>\r\n <button (click)=\"toggleSortdir()\" class=\"pager-icon-button\">\r\n <span class=\"sr-only\">sort direction</span>\r\n <span class=\"inline-block relative\">\r\n <i [class]=\"sortdirIcon\"></i>\r\n </span>\r\n </button>\r\n </div>\r\n <div class=\"pager-pages-container\">\r\n <lib-drop-down-menu [options]=\"pageSizeOptions\" [selected]=\"pageSize\" (selectedChanged)=\"pageSizeOptionChanged($event)\"></lib-drop-down-menu>\r\n <div class=\"mx-2\" *ngIf=\"count !== null && count > pageSize\">\r\n <button [disabled]=\"!canPreviousPage\" (click)=\"previousPage()\"\r\n class=\"pager-arrow-button-left\">\r\n <span class=\"sr-only\">Previous</span>\r\n <svg class=\"h-5 w-5\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 20 20\" fill=\"currentColor\" aria-hidden=\"true\">\r\n <path fill-rule=\"evenodd\" d=\"M12.707 5.293a1 1 0 010 1.414L9.414 10l3.293 3.293a1 1 0 01-1.414 1.414l-4-4a1 1 0 010-1.414l4-4a1 1 0 011.414 0z\" clip-rule=\"evenodd\" />\r\n </svg>\r\n </button>\r\n <button [disabled]=\"!canNextPage\" (click)=\"nextPage()\"\r\n class=\"pager-arrow-button-right\">\r\n <span class=\"sr-only\">Next</span>\r\n <svg class=\"h-5 w-5\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 20 20\" fill=\"currentColor\" aria-hidden=\"true\">\r\n <path fill-rule=\"evenodd\" d=\"M7.293 14.707a1 1 0 010-1.414L10.586 10 7.293 6.707a1 1 0 011.414-1.414l4 4a1 1 0 010 1.414l-4 4a1 1 0 01-1.414 0z\" clip-rule=\"evenodd\" />\r\n </svg>\r\n </button>\r\n </div>\r\n <lib-drop-down-menu *ngIf=\"(pages && pages.length > 0) && (count !== null && count > pageSize)\" [options]=\"pages\" [selected]=\"page\" (selectedChanged)=\"pageOptionChanged($event)\"></lib-drop-down-menu>\r\n </div>\r\n </div>\r\n</div>\r\n"}]}],"members":{"count":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":11,"character":3}}]}],"page":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":12,"character":3}}]}],"pageSize":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":14,"character":3},"arguments":["page-size"]}]}],"pageSizeOptions":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":16,"character":3},"arguments":["page-size-options"]}]}],"pageChanged":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":24,"character":3}}]}],"pageSizeChanged":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":25,"character":3}}]}],"sortOptions":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":31,"character":3},"arguments":["sort-options"]}]}],"sort":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":33,"character":3},"arguments":["sort"]}]}],"sortdir":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":35,"character":3},"arguments":["sort-dir"]}]}],"sortChanged":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":36,"character":3}}]}],"sortdirChanged":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":37,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/router","name":"Router","line":40,"character":30}]}],"ngOnChanges":[{"__symbolic":"method"}],"ngOnInit":[{"__symbolic":"method"}],"calcPages":[{"__symbolic":"method"}],"nextPage":[{"__symbolic":"method"}],"previousPage":[{"__symbolic":"method"}],"gotoPage":[{"__symbolic":"method"}],"pageSizeOptionChanged":[{"__symbolic":"method"}],"pageOptionChanged":[{"__symbolic":"method"}],"sortOptionChanged":[{"__symbolic":"method"}],"toggleSortdir":[{"__symbolic":"method"}]}},"ListViewComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":7,"character":1},"arguments":[{"selector":"lib-list-view","template":"<div class=\"px-2\">\r\n\r\n <lib-pager\r\n *ngIf=\"showPager && items && items.length > 0\"\r\n [page]=\"page\"\r\n [page-size]=\"pageSize\"\r\n [count]=\"count\"\r\n [sort-options]=\"sortOptions\"\r\n [sort]=\"sort\"\r\n [sort-dir]=\"sortdir\"\r\n (pageChanged)=\"emitPageChanged($event)\"\r\n (pageSizeChanged)=\"emitPageSizeChanged($event)\"\r\n (sortChanged)=\"emitSortChanged($event)\"\r\n (sortdirChanged)=\"emitSortdirChanged($event)\">\r\n </lib-pager>\r\n</div>\r\n\r\n<ng-container [ngSwitch]=\"view\">\r\n <ng-container *ngSwitchCase=\"'tiles'\">\r\n <div [class]=\"tilesDeckClass\">\r\n <lib-skeleton-loader *ngIf=\"!items\" [count]=\"5\" [type]=\"'tiles'\"></lib-skeleton-loader>\r\n <ng-container *ngIf=\"items && items.length > 0\">\r\n <ng-container *ngFor=\"let item of items\">\r\n <span *ngIf=\"!tileTemplate || !tileTemplate.template\">template missing..</span>\r\n <ng-template [ngTemplateOutlet]=\"tileTemplate.template\" [ngTemplateOutletContext]=\"{ $implicit: item }\"></ng-template>\r\n </ng-container>\r\n </ng-container>\r\n <ng-container *ngIf=\"items && items.length == 0\">\r\n <lib-list-view-empty-state></lib-list-view-empty-state>\r\n </ng-container>\r\n </div>\r\n </ng-container>\r\n\r\n <!-- *ngSwitchCase=\"'table'\" -->\r\n <ng-container *ngSwitchDefault>\r\n <lib-skeleton-loader *ngIf=\"(items == null || undefined) || items?.length == 0\" [count]=\"5\" [type]=\"'table'\"></lib-skeleton-loader>\r\n <div class=\"list-view-container\" *ngIf=\"items && items.length > 0\">\r\n <div class=\"list-view-container-inner\">\r\n <table class=\"list-view-table\">\r\n <thead class=\"list-view-thead\">\r\n <tr>\r\n <ng-container *ngIf=\"detailsSectionSupported\">\r\n <th class=\"list-view-th-details\"></th>\r\n </ng-container>\r\n <ng-container *ngFor=\"let col of columns\">\r\n <th scope=\"col\" [class]=\"col.fullWidth ? fullWidthTHClass : 'list-view-th'\">\r\n {{col.title}}\r\n </th>\r\n </ng-container>\r\n </tr>\r\n </thead>\r\n <tbody class=\"list-view-tbody\">\r\n <ng-container *ngFor=\"let item of items;let i=index\">\r\n <tr class=\"list-view-tr\">\r\n <ng-container *ngIf=\"detailsSectionSupported\">\r\n <td class=\"list-view-td-details\">\r\n <button (click)=\"toggleDetails(item)\" type=\"button\" class=\"expand-collapse-button\">\r\n <!-- Heroicon name: solid/plus -->\r\n <i [class]=\"item.detailsExpanded ? collapseIcon : expandIcon\"></i>\r\n </button>\r\n </td>\r\n </ng-container>\r\n <td *ngFor=\"let col of columns\" [class]=\"col.fullWidth ? fullWidthTDClass : 'list-view-td'\">\r\n <ng-template [ngTemplateOutlet]=\"col.template\" [ngTemplateOutletContext]=\"{ $implicit: item }\"></ng-template>\r\n </td>\r\n </tr>\r\n <ng-container *ngIf=\"detailsSectionSupported\">\r\n <tr *ngIf=\"item.detailsExpanded\">\r\n <td [colSpan]=\"columns.length + 1\" class=\"list-view-td\">\r\n <ng-template [ngTemplateOutlet]=\"detailsTemplate.template\" [ngTemplateOutletContext]=\"{ $implicit: item }\"></ng-template>\r\n </td>\r\n </tr>\r\n </ng-container>\r\n </ng-container>\r\n </tbody>\r\n </table>\r\n </div>\r\n </div>\r\n <ng-container *ngIf=\"(items == null || undefined) || items?.length == 0\">\r\n <lib-list-view-empty-state></lib-list-view-empty-state>\r\n </ng-container>\r\n </ng-container>\r\n</ng-container>\r\n\r\n<ng-content></ng-content>\r\n"}]}],"members":{"showPager":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":15,"character":3},"arguments":["show-pager"]}]}],"items":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":17,"character":3}}]}],"count":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":20,"character":3}}]}],"page":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":21,"character":3}}]}],"pageSize":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":23,"character":3},"arguments":["page-size"]}]}],"pageSizeOptions":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":25,"character":3},"arguments":["page-size-options"]}]}],"pageChanged":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":26,"character":3}}]}],"pageSizeChanged":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":27,"character":3}}]}],"detailsOpened":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":28,"character":3}}]}],"view":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":37,"character":3}}]}],"sortOptions":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":41,"character":3},"arguments":["sort-options"]}]}],"sort":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":43,"character":3},"arguments":["sort"]}]}],"sortdir":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":45,"character":3},"arguments":["sort-dir"]}]}],"sortChanged":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":46,"character":3}}]}],"sortdirChanged":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":47,"character":3}}]}],"cols":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ContentChildren","line":51,"character":3},"arguments":[{"__symbolic":"reference","name":"ListColumnComponent"},{"read":{"__symbolic":"reference","name":"ListColumnComponent"}}]}]}],"tilesCount":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":64,"character":3},"arguments":["tiles-count"]}]}],"tiles":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ContentChild","line":67,"character":3},"arguments":[{"__symbolic":"reference","name":"ListTileComponent"},{"read":{"__symbolic":"reference","name":"ListTileComponent"}}]}]}],"details":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ContentChild","line":76,"character":3},"arguments":[{"__symbolic":"reference","name":"ListDetailsSectionComponent"},{"read":{"__symbolic":"reference","name":"ListDetailsSectionComponent"}}]}]}],"__ctor__":[{"__symbolic":"constructor"}],"ngOnChanges":[{"__symbolic":"method"}],"emitPageChanged":[{"__symbolic":"method"}],"emitPageSizeChanged":[{"__symbolic":"method"}],"emitSortChanged":[{"__symbolic":"method"}],"emitSortdirChanged":[{"__symbolic":"method"}],"toggleDetails":[{"__symbolic":"method"}],"setTilesDeckClass":[{"__symbolic":"method"}]}},"ListColumnComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":2,"character":1},"arguments":[{"selector":"lib-list-column","template":"<ng-content></ng-content>"}]}],"members":{"title":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":4,"character":3}}]}],"fullWidth":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":6,"character":3},"arguments":["full-width"]}]}],"template":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ContentChild","line":7,"character":3},"arguments":[{"__symbolic":"reference","module":"@angular/core","name":"TemplateRef","line":7,"character":16}]}]}],"__ctor__":[{"__symbolic":"constructor"}]}},"ListTileComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":2,"character":1},"arguments":[{"selector":"lib-list-tile","template":"<ng-content></ng-content>"}]}],"members":{"template":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ContentChild","line":4,"character":3},"arguments":[{"__symbolic":"reference","module":"@angular/core","name":"TemplateRef","line":4,"character":16}]}]}],"__ctor__":[{"__symbolic":"constructor"}]}},"ListDetailsSectionComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":2,"character":1},"arguments":[{"selector":"lib-list-details-section","template":"<ng-content></ng-content>"}]}],"members":{"template":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ContentChild","line":4,"character":3},"arguments":[{"__symbolic":"reference","module":"@angular/core","name":"TemplateRef","line":4,"character":16}]}]}],"__ctor__":[{"__symbolic":"constructor"}]}},"ListViewEmptyStateComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":2,"character":1},"arguments":[{"selector":"lib-list-view-empty-state","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"}]}],"members":{"title":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":8,"character":3}}]}],"subTitle":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":10,"character":3},"arguments":["sub-title"]}]}],"newItemLabel":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":12,"character":3},"arguments":["new-item-label"]}]}],"__ctor__":[{"__symbolic":"constructor"}],"ngOnInit":[{"__symbolic":"method"}]}},"SkeletonLoaderComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":2,"character":1},"arguments":[{"selector":"lib-skeleton-loader","template":"<ng-container *ngSwitch=\"type\">\r\n <div class=\"cards-deck-4\" *ngSwitchCase=\"'tiles'\">\r\n <ng-container *ngFor=\"let i of counter(count)\">\r\n <div class=\"border border-light-blue-300 shadow rounded-sm p-4 max-w-sm w-full mx-auto\">\r\n <div class=\"animate-pulse flex space-x-4\">\r\n <div class=\"rounded-full bg-light-blue-400 h-12 w-12\">&nbsp;</div>\r\n <div class=\"flex-1 space-y-4 py-1\">\r\n <div class=\"h-4 bg-light-blue-400 rounded w-3/4\">&nbsp;</div>\r\n <div class=\"space-y-2\">\r\n <div class=\"h-4 bg-light-blue-400 rounded\">&nbsp;</div>\r\n <div class=\"h-4 bg-light-blue-400 rounded w-5/6\">&nbsp;</div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </ng-container>\r\n </div>\r\n <div class=\"cards-deck-3\" *ngSwitchCase=\"'large-tiles'\">\r\n <ng-container *ngFor=\"let i of counter(count)\">\r\n <div class=\"border border-light-blue-300 shadow rounded-sm p-4 max-w-sm w-full mx-auto\">\r\n <div class=\"animate-pulse flex space-x-4\">\r\n <div class=\"rounded-full bg-light-blue-400 h-12 w-12\">&nbsp;</div>\r\n <div class=\"rounded-full bg-light-blue-400 h-12 w-12\">&nbsp;</div>\r\n <div class=\"rounded-full bg-light-blue-400 h-12 w-12\">&nbsp;</div>\r\n <div class=\"flex-1 space-y-4 py-1\">\r\n <div class=\"h-4 bg-light-blue-400 rounded w-3/4\">&nbsp;</div>\r\n <div class=\"space-y-2\">\r\n <div class=\"h-4 bg-light-blue-400 rounded\">&nbsp;</div>\r\n <div class=\"h-4 bg-light-blue-400 rounded w-5/6\">&nbsp;</div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </ng-container>\r\n </div>\r\n <div class=\"cards-deck-1\" *ngSwitchCase=\"'table'\">\r\n <ng-container *ngFor=\"let i of counter(count)\">\r\n <div class=\"border border-light-blue-300 shadow rounded-sm p-4 max-w-sm w-full mx-auto mb-4\">\r\n <div class=\"animate-pulse flex space-x-4\">\r\n <div class=\"rounded-full bg-light-blue-400 h-12 w-12\">&nbsp;</div>\r\n <div class=\"flex-1 space-y-4 py-1\">\r\n <div class=\"h-4 bg-light-blue-400 rounded w-3/4\">&nbsp;</div>\r\n <div class=\"space-y-2\">\r\n <div class=\"h-4 bg-light-blue-400 rounded\">&nbsp;</div>\r\n <div class=\"h-4 bg-light-blue-400 rounded w-5/6\">&nbsp;</div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </ng-container>\r\n </div>\r\n</ng-container>\r\n"}]}],"members":{"count":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":8,"character":3}}]}],"type":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":9,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor"}],"ngOnInit":[{"__symbolic":"method"}],"counter":[{"__symbolic":"method"}]}},"CollapsiblePanelComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":2,"character":1},"arguments":[{"selector":"lib-collapsible-panel","template":"<div class=\"collapsible-panel-container\">\r\n <div class=\"collapsible-panel-container-shadow\">\r\n <div class=\"collapsible-panel-container-inner\">\r\n <button type=\"button\" class=\"collapsible-panel-button\" (click)=\"visible = !visible\">\r\n <div class=\"collapsible-panel-button-content-container\">\r\n <span>{{ title }} </span>\r\n <span class=\"ico-plus\"></span>\r\n </div>\r\n </button>\r\n <div class=\"collapsible-panel-content-container\" *ngIf=\"visible\">\r\n <ng-content></ng-content>\r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n"}]}],"members":{"title":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":7,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor"}],"ngOnInit":[{"__symbolic":"method"}]}},"KpiTileComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":2,"character":1},"arguments":[{"selector":"lib-kpi-tile","template":"<div class=\"card\"\r\n [ngClass]=\"{'card-deck-busy' : busy }\">\r\n <div class=\"card-body\">\r\n <div class=\"kpi-tile-title-container\">\r\n <a href=\"#\"\r\n class=\"kpi-tile-action\"\r\n (click)=\"emitTileAction($event)\">{{title || '-'}}</a>\r\n </div>\r\n <p class=\"kpi-tile-value\">{{kpi || '-'}}</p>\r\n <div class=\"card-footer\">\r\n <div class=\"text-xs\">\r\n <a href=\"#\"\r\n class=\"kpi-tile-action\"\r\n (click)=\"emitTileAction($event)\">Περισσότερα</a>\r\n </div>\r\n </div>\r\n </div>\r\n</div>"}]}],"members":{"title":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":8,"character":3}}]}],"busy":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":9,"character":3}}]}],"kpi":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":10,"character":3}}]}],"tileAction":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":12,"character":3},"arguments":["tile-action"]}]}],"__ctor__":[{"__symbolic":"constructor"}],"ngOnInit":[{"__symbolic":"method"}],"emitTileAction":[{"__symbolic":"method"}]}},"DatepickerComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":4,"character":1},"arguments":[{"selector":"lib-date-picker","providers":[{"provide":{"__symbolic":"reference","module":"@angular/forms","name":"NG_VALUE_ACCESSOR","line":9,"character":15},"useExisting":{"__symbolic":"reference","name":"DatepickerComponent"},"multi":true}],"template":"<div class=\"relative flex\">\r\n\r\n <input type=\"text\"\r\n #dateInput\r\n [readonly]=\"readonly\"\r\n name=\"dateInput\"\r\n (blur)=\"onBlur($event)\"\r\n id=\"dateInput\"\r\n [value]=\"value | date: displayFormat\"\r\n class=\"w-full focus:ring-0 focus:outline-none rounded-none sm:text-sm border-gray-300 focus:border-0\"\r\n [ngClass]=\"{'cursor-not-allowed': disabled}\"\r\n [placeholder]=\"disabled ? '' : placeholder\">\r\n\r\n <button class=\"relative inline-flex items-center px-2 py-2 border border-gray-300 text-sm font-medium rounded-r-sm text-gray-700 bg-gray-50 hover:bg-gray-100 focus:outline-none focus:ring-1 focus:ring-gray-500 focus:border-gray-500\"\r\n [disabled]=\"disabled\"\r\n (click)=\"openCalendar()\"\r\n [ngClass]=\"{'cursor-not-allowed': disabled}\">\r\n <i class=\"ms-Icon ms-Icon--DateTime2\"></i>\r\n </button>\r\n\r\n <div *ngIf=\"showCalendar\"\r\n class=\"bg-gray-100 mt-10 rounded-sm shadow-md p-4 absolute left-0 z-50 w-full\"\r\n style=\"height:18rem;min-width:16rem;\">\r\n <div class=\"flex justify-between items-center mb-2\">\r\n <div>\r\n <button class=\"text-lg font-bold text-gray-800\"\r\n (click)=\"openYears()\">{{monthNames[month]}}</button>\r\n <button class=\"ml-1 text-lg text-gray-600 font-normal\"\r\n (click)=\"openYears()\">{{year}}</button>\r\n </div>\r\n <div *ngIf=\"!showYears; else showYearsPickerTmpl\">\r\n <button type=\"button\"\r\n class=\"transition ease-in-out duration-100 inline-flex cursor-pointer hover:bg-gray-200 p-1 rounded-full disabled:opacity-25\"\r\n (click)=\"previousMonth();\">\r\n <svg class=\"h-6 w-6 text-gray-500 inline-flex\"\r\n fill=\"none\"\r\n viewBox=\"0 0 24 24\"\r\n stroke=\"currentColor\">\r\n <path stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\"\r\n stroke-width=\"2\"\r\n d=\"M15 19l-7-7 7-7\" />\r\n </svg>\r\n </button>\r\n <button type=\"button\"\r\n class=\"transition ease-in-out duration-100 inline-flex cursor-pointer hover:bg-gray-200 p-1 rounded-full disabled:opacity-25\"\r\n (click)=\"nextMonth()\">\r\n <svg class=\"h-6 w-6 text-gray-500 inline-flex\"\r\n fill=\"none\"\r\n viewBox=\"0 0 24 24\"\r\n stroke=\"currentColor\">\r\n <path stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\"\r\n stroke-width=\"2\"\r\n d=\"M9 5l7 7-7 7\" />\r\n </svg>\r\n </button>\r\n </div>\r\n <ng-template #showYearsPickerTmpl>\r\n <div>\r\n <button type=\"button\"\r\n class=\"transition ease-in-out duration-100 inline-flex cursor-pointer hover:bg-gray-200 p-1 rounded-full disabled:opacity-25\"\r\n (click)=\"previousYear();\">\r\n <svg class=\"h-6 w-6 text-gray-500 inline-flex\"\r\n fill=\"none\"\r\n viewBox=\"0 0 24 24\"\r\n stroke=\"currentColor\">\r\n <path stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\"\r\n stroke-width=\"2\"\r\n d=\"M15 19l-7-7 7-7\" />\r\n </svg>\r\n </button>\r\n <button type=\"button\"\r\n class=\"transition ease-in-out duration-100 inline-flex cursor-pointer hover:bg-gray-200 p-1 rounded-full disabled:opacity-25\"\r\n (click)=\"nextYear()\">\r\n <svg class=\"h-6 w-6 text-gray-500 inline-flex\"\r\n fill=\"none\"\r\n viewBox=\"0 0 24 24\"\r\n stroke=\"currentColor\">\r\n <path stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\"\r\n stroke-width=\"2\"\r\n d=\"M9 5l7 7-7 7\" />\r\n </svg>\r\n </button>\r\n </div>\r\n </ng-template>\r\n </div>\r\n\r\n <div class=\"flex flex-wrap mb-3 -mx-1\"\r\n *ngIf=\"!showYears; else showCalYearsTmpl\">\r\n <div *ngFor=\"let day of dayNames\"\r\n class=\"text-gray-800 font-medium text-center text-sm uppercase\"\r\n style=\"width: 14.28%\">{{day}}</div>\r\n </div>\r\n\r\n <ng-template #showCalYearsTmpl>\r\n <div class=\"flex flex-wrap -mx-1\">\r\n <div *ngFor=\"let year of showCalendarYears\"\r\n style=\"width: 18.28%\"\r\n class=\"px-1 mb-1\">\r\n <div (click)=\"selectYearValue(year)\"\r\n class=\"cursor-pointer text-center hover:text-white text-sm leading-none rounded-full leading-loose transition ease-in-out duration-100\"\r\n [class]=\"year.selected ? 'bg-gray-700 text-white' : 'text-gray-800 hover:bg-gray-800'\">{{year.year}}</div>\r\n </div>\r\n </div>\r\n </ng-template>\r\n\r\n <div class=\"flex flex-wrap -mx-1\"\r\n *ngIf=\"!showYears\">\r\n <div *ngFor=\"let blankday of blankDays\"\r\n style=\"width: 14.28%\"\r\n class=\"text-center border p-1 border-transparent text-sm opacity-50\">{{blankday}}1</div>\r\n <div *ngFor=\"let date of calendarDates\"\r\n style=\"width: 14.28%\"\r\n class=\"px-1 mb-1\">\r\n <div (click)=\"selectDateValue(date)\"\r\n class=\"cursor-pointer text-center hover:text-white text-sm leading-none rounded-full leading-loose transition ease-in-out duration-100\"\r\n [class]=\"date.selected ? 'bg-gray-700 text-white' : 'text-gray-800 hover:bg-gray-800'\">{{date.day}}</div>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n</div>"}]}],"members":{"readonly":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":16,"character":3}}]}],"disabled":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":17,"character":3}}]}],"displayFormat":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":18,"character":3},"arguments":["display-format"]}]}],"placeholder":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":19,"character":3}}]}],"value":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":20,"character":3}}]}],"valueChange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":21,"character":3}}]}],"dateInput":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewChild","line":22,"character":3},"arguments":["dateInput"]}]}],"ngOnInit":[{"__symbolic":"method"}],"compareDates":[{"__symbolic":"method"}],"selectDateValue":[{"__symbolic":"method"}],"selectYearValue":[{"__symbolic":"method"}],"previousMonth":[{"__symbolic":"method"}],"nextMonth":[{"__symbolic":"method"}],"previousYear":[{"__symbolic":"method"}],"nextYear":[{"__symbolic":"method"}],"calcDays":[{"__symbolic":"method"}],"updateDays":[{"__symbolic":"method"}],"__ctor__":[{"__symbolic":"constructor"}],"writeValue":[{"__symbolic":"method"}],"registerOnChange":[{"__symbolic":"method"}],"registerOnTouched":[{"__symbolic":"method"}],"onBlur":[{"__symbolic":"method"}],"paginate":[{"__symbolic":"method"}],"openYears":[{"__symbolic":"method"}],"openCalendar":[{"__symbolic":"method"}]}},"ToasterContainerComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":4,"character":1},"arguments":[{"selector":"lib-toaster-container","template":"<lib-toaster *ngFor=\"let toast of toasts; let i=index\" [toast]=\"toast\" [i]=\"i\" (remove)=\"remove($event)\"></lib-toaster>\r\n"}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"ToasterService"}]}],"ngOnInit":[{"__symbolic":"method"}],"remove":[{"__symbolic":"method"}]}},"ToasterComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":3,"character":1},"arguments":[{"selector":"lib-toaster","template":"<div aria-live=\"assertive\"\r\n [ngClass]=\"closed ? 'toast-closed': 'toast z-50'\"\r\n [ngStyle]=\"isMobile ? { 'margin-bottom.px': i * 85 } : {'margin-top.px': i * 85 }\">\r\n <div class=\"toast-container\">\r\n <div class=\"toast-pill\">\r\n <div class=\"toast-context-padding\">\r\n <div class=\"toast-context\"\r\n [ngSwitch]=\"toast?.type\">\r\n <div class=\"toast-icon\"\r\n *ngSwitchCase=\"'info'\">\r\n <svg class=\"h-5 w-5 text-blue-400\"\r\n xmlns=\"http://www.w3.org/2000/svg\"\r\n viewBox=\"0 0 20 20\"\r\n fill=\"currentColor\"\r\n aria-hidden=\"true\">\r\n <path fill-rule=\"evenodd\"\r\n d=\"M18 10a8 8 0 11-16 0 8 8 0 0116 0zm-7-4a1 1 0 11-2 0 1 1 0 012 0zM9 9a1 1 0 000 2v3a1 1 0 001 1h1a1 1 0 100-2v-3a1 1 0 00-1-1H9z\"\r\n clip-rule=\"evenodd\" />\r\n </svg>\r\n </div>\r\n <div class=\"toast-icon\"\r\n *ngSwitchCase=\"'success'\">\r\n <svg class=\"h-5 w-5 text-green-400\"\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=\"M9 12l2 2 4-4m6 2a9 9 0 11-18 0 9 9 0 0118 0z\" />\r\n </svg>\r\n </div>\r\n <div class=\"toast-icon\"\r\n *ngSwitchCase=\"'error'\">\r\n <svg class=\"h-5 w-5 text-red-400\"\r\n xmlns=\"http://www.w3.org/2000/svg\"\r\n viewBox=\"0 0 20 20\"\r\n fill=\"currentColor\"\r\n aria-hidden=\"true\">\r\n <path fill-rule=\"evenodd\"\r\n d=\"M10 18a8 8 0 100-16 8 8 0 000 16zM8.707 7.293a1 1 0 00-1.414 1.414L8.586 10l-1.293 1.293a1 1 0 101.414 1.414L10 11.414l1.293 1.293a1 1 0 001.414-1.414L11.414 10l1.293-1.293a1 1 0 00-1.414-1.414L10 8.586 8.707 7.293z\"\r\n clip-rule=\"evenodd\" />\r\n </svg>\r\n </div>\r\n <div class=\"toast-icon\"\r\n *ngSwitchCase=\"'warning'\">\r\n <svg class=\"h-5 w-5 text-yellow-400\"\r\n xmlns=\"http://www.w3.org/2000/svg\"\r\n viewBox=\"0 0 20 20\"\r\n fill=\"currentColor\"\r\n aria-hidden=\"true\">\r\n <path fill-rule=\"evenodd\"\r\n d=\"M8.257 3.099c.765-1.36 2.722-1.36 3.486 0l5.58 9.92c.75 1.334-.213 2.98-1.742 2.98H4.42c-1.53 0-2.493-1.646-1.743-2.98l5.58-9.92zM11 13a1 1 0 11-2 0 1 1 0 012 0zm-1-8a1 1 0 00-1 1v3a1 1 0 002 0V6a1 1 0 00-1-1z\"\r\n clip-rule=\"evenodd\" />\r\n </svg>\r\n </div>\r\n <div class=\"toast-icon\"\r\n *ngSwitchDefault>\r\n <svg class=\"h-5 w-5 text-green-400\"\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=\"M9 12l2 2 4-4m6 2a9 9 0 11-18 0 9 9 0 0118 0z\" />\r\n </svg>\r\n </div>\r\n\r\n <div class=\"ml-3 w-0 flex-1\">\r\n <p class=\"toast-title\"\r\n *ngIf=\"toast?.title\">\r\n {{toast?.title}}\r\n </p>\r\n <p class=\"toast-body\">\r\n {{toast?.body}}\r\n </p>\r\n </div>\r\n <div class=\"toast-close-icon\">\r\n <button class=\"toast-close-button\"\r\n (click)=\"closeToast(i)\">\r\n <span class=\"sr-only\">Close</span>\r\n <!-- Heroicon name: solid/x -->\r\n <svg class=\"h-5 w-5\"\r\n xmlns=\"http://www.w3.org/2000/svg\"\r\n viewBox=\"0 0 20 20\"\r\n fill=\"currentColor\"\r\n aria-hidden=\"true\">\r\n <path fill-rule=\"evenodd\"\r\n d=\"M4.293 4.293a1 1 0 011.414 0L10 8.586l4.293-4.293a1 1 0 111.414 1.414L11.414 10l4.293 4.293a1 1 0 01-1.414 1.414L10 11.414l-4.293 4.293a1 1 0 01-1.414-1.414L8.586 10 4.293 5.707a1 1 0 010-1.414z\"\r\n clip-rule=\"evenodd\" />\r\n </svg>\r\n </button>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n</div>"}]}],"members":{"toast":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":9,"character":3}}]}],"i":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":10,"character":3}}]}],"remove":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":11,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor"}],"ngOnInit":[{"__symbolic":"method"}],"closeToast":[{"__symbolic":"method"}]}},"AvatarInitialsComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":2,"character":1},"arguments":[{"selector":"lib-avatar-initials","template":"<div [ngClass]=\"large ? 'avatar-container-large': 'avatar-container'\">\r\n <span [ngClass]=\"large ? 'avatar-text-large': 'avatar-text'\">{{ initials }}</span>\r\n</div>\r\n"}]}],"members":{"name":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":7,"character":3}}]}],"large":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":9,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor"}],"ngOnInit":[{"__symbolic":"method"}],"createInititals":[{"__symbolic":"method"}]}},"ToggleComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":3,"character":1},"arguments":[{"selector":"lib-toggle","providers":[{"provide":{"__symbolic":"reference","module":"@angular/forms","name":"NG_VALUE_ACCESSOR","line":8,"character":15},"useExisting":{"__symbolic":"reference","name":"ToggleComponent"},"multi":true}],"template":"<button type=\"button\"\n [ngClass]=\"value ? 'enabled' : 'disabled'\"\n class=\"toggle-button\"\n role=\"switch\"\n aria-checked=\"false\"\n aria-labelledby=\"isPrivate\"\n (click)=\"changeValue()\"\n (blur)=\"onBlur($event)\"\n value=\"{{value}}\"\n [disabled]=\"disabled\"\n [title]=\"disabled ? 'Το αρχείο πρέπει να είναι ιδωτικό' : 'Ιδιωτικό'\">\n <span aria-hidden=\"true\"\n [ngClass]=\"value ? 'enabled-anim' : 'disabled-anim'\"\n class=\"toggle-span\"></span>\n</button>"}]}],"members":{"value":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":15,"character":3}}]}],"disabled":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":17,"character":3}}]}],"valueChange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":19,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor"}],"writeValue":[{"__symbolic":"method"}],"registerOnChange":[{"__symbolic":"method"}],"registerOnTouched":[{"__symbolic":"method"}],"onBlur":[{"__symbolic":"method"}],"ngOnInit":[{"__symbolic":"method"}],"changeValue":[{"__symbolic":"method"}]}},"ShellLayoutComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":10,"character":1},"arguments":[{"selector":"lib-shell-layout","template":"<div [class]=\"activeSidePane ? 'shell-container' : 'shell-container active-side-pane'\">\r\n <div class=\"shell-header-container\" *ngIf=\"activeConfig.showHeader\">\r\n <div [class]=\"activeConfig.fluid ? 'shell-header-container-inner-fluid' : 'shell-header-container-inner'\">\r\n <ng-container *ngIf=\"activeConfig.customHeaderComponent\" >\r\n <ng-template appDynamicComponentHost hostName=\"Header\"></ng-template>\r\n </ng-container>\r\n <lib-shell-header *ngIf=\"!activeConfig.customHeaderComponent\"></lib-shell-header>\r\n </div>\r\n </div>\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 <div class=\"shell-footer-container\" *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 <ng-template appDynamicComponentHost hostName=\"Footer\"></ng-template>\r\n </ng-container>\r\n <lib-shell-footer *ngIf=\"!activeConfig.customFooterComponent\"></lib-shell-footer>\r\n </div>\r\n </div>\r\n <lib-side-pane #rightPane>\r\n <router-outlet name=\"rightpane\" (activate)=\"rightPane.onSidePaneActivated($event)\" (deactivate)=\"rightPane.onSidePaneDeactivated($event)\"></router-outlet>\r\n </lib-side-pane>\r\n <lib-toaster-container></lib-toaster-container>\r\n</div>\r\n"}]}],"members":{"dynamicComponentHosts":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewChildren","line":16,"character":3},"arguments":[{"__symbolic":"reference","name":"ɵa"}]}]}],"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":21,"character":15},"arguments":[{"__symbolic":"reference","module":"@angular/common","name":"DOCUMENT","line":21,"character":22}]}],null,null,[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":23,"character":15},"arguments":[{"__symbolic":"reference","name":"SHELL_CONFIG"}]}],null],"parameters":[{"__symbolic":"reference","name":"any"},{"__symbolic":"reference","module":"@angular/router","name":"Router","line":22,"character":30},{"__symbolic":"reference","module":"@angular/common","name":"Location","line":22,"character":56},{"__symbolic":"reference","name":"IShellConfig"},{"__symbolic":"reference","name":"ComponentLoaderService"}]}],"ngOnInit":[{"__symbolic":"method"}],"ngAfterViewInit":[{"__symbolic":"method"}],"initCustomComponents":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}],"loadCustomComponent":[{"__symbolic":"method"}]}},"ShellHeaderComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":10,"character":1},"arguments":[{"selector":"lib-shell-header","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=\"#\" [routerLink]=\"['/']\"><img class=\"h-8 w-8\" [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 <ng-container *ngFor=\"let link of sectionLinks\">\r\n <a href=\"#\" [routerLinkActive]=\"['nav-link-active']\" [routerLinkActiveOptions]=\"{ exact: link.exact }\" [routerLink]=\"[link.path]\" 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\">\r\n <a class=\"shell-header-menu-rounded-button\" (clickOutside)=\"onClickOutside($event)\" href=\"#\" [routerLink]=\"[link.path]\">\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 class=\"ml-2 relative\" (clickOutside)=\"onClickOutside($event)\" *ngIf=\"profileMenuVisible\">\r\n <div>\r\n <button type=\"button\" *ngIf=\"user\" (click)=\"userMenuExpanded = !userMenuExpanded\" class=\"shell-header-profile-dropdown-button\"\r\n id=\"user-menu\" aria-expanded=\"false\" 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\" *ngIf=\"!user\" (click)=\"signin(null)\" class=\"shell-header-profile-dropdown-button\" id=\"user-menu\" aria-expanded=\"false\" 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\" class=\"shell-header-profile-dropdown\" role=\"menu\" aria-orientation=\"vertical\" 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\">Αποσύνδεση</a> -->\r\n <ng-container *ngFor=\"let link of links.profile\">\r\n <a href=\"#\" [routerLinkActive]=\"['nav-link-profile-active']\" [routerLinkActiveOptions]=\"{ exact: link.exact }\" [routerLink]=\"[link.path]\" 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 </div>\r\n </div>\r\n\r\n <div class=\"mobile-menu-button-container\">\r\n <!-- Mobile menu button -->\r\n <button type=\"button\" (click)=\"mobileMenuExpanded = !mobileMenuExpanded\" class=\"mobile-menu-button\" aria-controls=\"mobile-menu\" [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\" xmlns=\"http://www.w3.org/2000/svg\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\" aria-hidden=\"true\">\r\n <path stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" 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\" xmlns=\"http://www.w3.org/2000/svg\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\"aria-hidden=\"true\">\r\n <path stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" 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 <ng-container *ngFor=\"let link of sectionLinks\">\r\n <a href=\"#\" [routerLinkActive]=\"['nav-link-mobile-active']\" [routerLinkActiveOptions]=\"{ exact: link.exact }\" [routerLink]=\"[link.path]\" 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=\"#\" (click)=\"signin($event)\" class=\"nav-link-mobile\">\r\n <i class=\"ms-Icon ms-Icon--Signin mr-2\"></i>Σύνδεση\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\" xmlns=\"http://www.w3.org/2000/svg\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\" aria-hidden=\"true\" >\r\n <path stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" 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\">\r\n <a href=\"#\" [routerLinkActive]=\"['nav-link-mobile-active']\" [routerLinkActiveOptions]=\"{ exact: link.exact }\" [routerLink]=\"[link.path]\" 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\">Αποσύνδεση</a> -->\r\n </div>\r\n </div>\r\n </div>\r\n</nav>\r\n"}]}],"members":{"sectionLinksPath":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":17,"character":3},"arguments":["section-links"]}]}],"profileMenuVisible":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":19,"character":3},"arguments":["profile-menu"]}]}],"border":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":20,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":32,"character":15},"arguments":[{"__symbolic":"reference","module":"@indice/ng-auth","name":"AuthService","line":32,"character":22}]}],[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":33,"character":15},"arguments":[{"__symbolic":"reference","module":"@angular/router","name":"Router","line":33,"character":22}]}],[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":34,"character":15},"arguments":[{"__symbolic":"reference","name":"SHELL_CONFIG"}]}],[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":35,"character":15},"arguments":[{"__symbolic":"reference","name":"APP_LINKS"}]}]],"parameters":[{"__symbolic":"reference","module":"@indice/ng-auth","name":"AuthService","line":32,"character":58},{"__symbolic":"reference","module":"@angular/router","name":"Router","line":33,"character":48},{"__symbolic":"reference","name":"any"},{"__symbolic":"reference","name":"any"}]}],"ngOnDestroy":[{"__symbolic":"method"}],"ngOnInit":[{"__symbolic":"method"}],"onClickOutside":[{"__symbolic":"method"}],"signin":[{"__symbolic":"method"}],"setCurrentUser":[{"__symbolic":"method"}]}},"ShellFooterComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":4,"character":1},"arguments":[{"selector":"lib-shell-footer","template":"<footer class=\"shell-footer-component-container\">\r\n <div class=\"shell-footer-paddings\">\r\n <div class=\"shell-footer-component-container-inner\">\r\n <div class=\"shell-footer-sections-container\">\r\n <div class=\"shell-footer-section\">\r\n <img class=\"shell-footer-logo-h\" src=\"/assets/images/branding/indice.png\" alt=\"INDICE logo\" />\r\n <nav class=\"mt-4\">\r\n <ul class=\"space-y-2\">\r\n <ng-container *ngFor=\"let link of links.brand\">\r\n <li>\r\n <a [href]=\"link.path\" class=\"shell-footer-link\">{{ link.text }}</a>\r\n </li>\r\n </ng-container>\r\n </ul>\r\n </nav>\r\n </div>\r\n <div class=\"shell-footer-section-links\">\r\n <h5 class=\"shell-footer-section-title\">Legal</h5>\r\n <nav class=\"mt-4\">\r\n <ul class=\"grid lg:grid-cols-2\">\r\n <ng-container *ngFor=\"let link of links.legal\">\r\n <li class=\"mb-2\">\r\n <a [href]=\"link.path\" class=\"shell-footer-link\">{{ link.text }}</a>\r\n </li>\r\n </ng-container>\r\n </ul>\r\n </nav>\r\n </div>\r\n <div class=\"shell-footer-section-links\">\r\n <h5 class=\"shell-footer-section-title\">Follow us</h5>\r\n <nav class=\"mt-4\">\r\n <ul class=\"grid lg:grid-cols-2\">\r\n <li class=\"mb-2\">\r\n <a href=\"#\" class=\"shell-footer-social\">\r\n <svg class=\"shell-footer-social-icon\" aria-hidden=\"true\" fill=\"currentColor\" viewBox=\"0 0 24 24\">\r\n <path d=\"M8.29 20.251c7.547 0 11.675-6.253 11.675-11.675 0-.178 0-.355-.012-.53A8.348 8.348 0 0022 5.92a8.19 8.19 0 01-2.357.646 4.118 4.118 0 001.804-2.27 8.224 8.224 0 01-2.605.996 4.107 4.107 0 00-6.993 3.743 11.65 11.65 0 01-8.457-4.287 4.106 4.106 0 001.27 5.477A4.072 4.072 0 012.8 9.713v.052a4.105 4.105 0 003.292 4.022 4.095 4.095 0 01-1.853.07 4.108 4.108 0 003.834 2.85A8.233 8.233 0 012 18.407a11.616 11.616 0 006.29 1.84\"/>\r\n </svg>\r\n <span> Twitter </span>\r\n </a>\r\n </li>\r\n <li class=\"mb-2\">\r\n <a href=\"#\" class=\"shell-footer-social\">\r\n <svg class=\"shell-footer-social-icon\" aria-hidden=\"true\" fill=\"currentColor\" viewBox=\"0 0 24 24\">\r\n <path fill-rule=\"evenodd\" d=\"M12.315 2c2.43 0 2.784.013 3.808.06 1.064.049 1.791.218 2.427.465a4.902 4.902 0 011.772 1.153 4.902 4.902 0 011.153 1.772c.247.636.416 1.363.465 2.427.048 1.067.06 1.407.06 4.123v.08c0 2.643-.012 2.987-.06 4.043-.049 1.064-.218 1.791-.465 2.427a4.902 4.902 0 01-1.153 1.772 4.902 4.902 0 01-1.772 1.153c-.636.247-1.363.416-2.427.465-1.067.048-1.407.06-4.123.06h-.08c-2.643 0-2.987-.012-4.043-.06-1.064-.049-1.791-.218-2.427-.465a4.902 4.902 0 01-1.772-1.153 4.902 4.902 0 01-1.153-1.772c-.247-.636-.416-1.363-.465-2.427-.047-1.024-.06-1.379-.06-3.808v-.63c0-2.43.013-2.784.06-3.808.049-1.064.218-1.791.465-2.427a4.902 4.902 0 011.153-1.772A4.902 4.902 0 015.45 2.525c.636-.247 1.363-.416 2.427-.465C8.901 2.013 9.256 2 11.685 2h.63zm-.081 1.802h-.468c-2.456 0-2.784.011-3.807.058-.975.045-1.504.207-1.857.344-.467.182-.8.398-1.15.748-.35.35-.566.683-.748 1.15-.137.353-.3.882-.344 1.857-.047 1.023-.058 1.351-.058 3.807v.468c0 2.456.011 2.784.058 3.807.045.975.207 1.504.344 1.857.182.466.399.8.748 1.15.35.35.683.566 1.15.748.353.137.882.3 1.857.344 1.054.048 1.37.058 4.041.058h.08c2.597 0 2.917-.01 3.96-.058.976-.045 1.505-.207 1.858-.344.466-.182.8-.398 1.15-.748.35-.35.566-.683.748-1.15.137-.353.3-.882.344-1.857.048-1.055.058-1.37.058-4.041v-.08c0-2.597-.01-2.917-.058-3.96-.045-.976-.207-1.505-.344-1.858a3.097 3.097 0 00-.748-1.15 3.098 3.098 0 00-1.15-.748c-.353-.137-.882-.3-1.857-.344-1.023-.047-1.351-.058-3.807-.058zM12 6.865a5.135 5.135 0 110 10.27 5.135 5.135 0 010-10.27zm0 1.802a3.333 3.333 0 100 6.666 3.333 3.333 0 000-6.666zm5.338-3.205a1.2 1.2 0 110 2.4 1.2 1.2 0 010-2.4z\" clip-rule=\"evenodd\"/>\r\n </svg>\r\n <span> Instagram </span>\r\n </a>\r\n </li>\r\n <li class=\"mb-2\">\r\n <a href=\"#\" class=\"shell-footer-social\">\r\n <svg class=\"shell-footer-social-icon\" aria-hidden=\"true\" fill=\"currentColor\" viewBox=\"0 0 24 24\" >\r\n <path fill-rule=\"evenodd\" d=\"M22 12c0-5.523-4.477-10-10-10S2 6.477 2 12c0 4.991 3.657 9.128 8.438 9.878v-6.987h-2.54V12h2.54V9.797c0-2.506 1.492-3.89 3.777-3.89 1.094 0 2.238.195 2.238.195v2.46h-1.26c-1.243 0-1.63.771-1.63 1.562V12h2.773l-.443 2.89h-2.33v6.988C18.343 21.128 22 16.991 22 12z\" clip-rule=\"evenodd\"/>\r\n </svg>\r\n <span> Facebook </span>\r\n </a>\r\n </li>\r\n </ul>\r\n </nav>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"shell-footer-copyright\">\r\n <!--<nav class=\"flex flex-wrap justify-center space-x-6\">\r\n <a href=\"#\" class=\"font-normal text-sm hover:text-gray-100 mb-2\">Cookie settings</a>\r\n </nav>-->\r\n <p class=\"text-sm text-center sm:text-right\">\r\n © 2021 INDICE. All rights reserved.\r\n </p>\r\n </div>\r\n </div>\r\n</footer>\r\n"}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":11,"character":17},"arguments":[{"__symbolic":"reference","name":"APP_LINKS"}]}]],"parameters":[{"__symbolic":"reference","name":"IAppLinks"}]}]}},"ViewLayoutComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":7,"character":1},"arguments":[{"selector":"lib-view-layout","template":"<header *ngIf=\"header\" class=\"view-layout-paddings\">\r\n\r\n <div class=\"view-layout-title-container\">\r\n <div class=\"view-layout-title-container-inner\">\r\n <i *ngIf=\"icon\" [class]=\"icon + ' title-icon'\"\r\n aria-hidden=\"true\"></i>\r\n <h1 [class]=\"busy ? 'view-layout-title-busy' : 'view-layout-title'\">\r\n {{title}}\r\n </h1>\r\n </div>\r\n <div *ngIf=\"metaItems && metaItems.length > 0\" class=\"meta-container\">\r\n <ng-container *ngFor=\"let meta of metaItems\">\r\n <div class=\"meta-container-inner\">\r\n <i *ngIf=\"meta.icon\" [class]=\"meta.icon + ' meta-icon'\" aria-hidden=\"true\"></i>\r\n <span class=\"meta-text\">{{meta.text}}</span>\r\n </div>\r\n </ng-container>\r\n </div>\r\n </div>\r\n\r\n <div class=\"view-layout-title-container-sm\">\r\n <div class=\"view-layout-title-container-sm-inner\">\r\n <i *ngIf=\"icon\" [class]=\"icon + ' title-icon-sm'\"\r\n aria-hidden=\"true\"></i>\r\n <h1 [class]=\"busy ? 'view-layout-title-busy-sm' : 'view-layout-title-sm'\">\r\n {{title}}\r\n </h1>\r\n <div *ngIf=\"metaItems && metaItems.length > 0\"\r\n class=\"meta-container-sm\">\r\n <ng-container *ngFor=\"let meta of metaItems\">\r\n <div class=\"meta-container-sm-inner\">\r\n <i *ngIf=\"meta.icon\"\r\n [class]=\"meta.icon + ' meta-icon-sm'\"\r\n aria-hidden=\"true\"></i>\r\n <span class=\"meta-text\">{{meta.text}}</span>\r\n </div>\r\n </ng-container>\r\n </div>\r\n </div>\r\n\r\n <div class=\"flex items-center justify-end\">\r\n <ng-container *ngFor=\"let action of actions\"\r\n [ngSwitch]=\"action.type\">\r\n <ng-container *ngSwitchCase=\"'switch-view'\">\r\n <button [disabled]=\"view==action.param\"\r\n type=\"button\"\r\n href=\"#\"\r\n class=\"ml-1 disabled:opacity-50 btn-view-header\"\r\n (click)=\"switchViewActionClick(action)\">\r\n <span class=\"inline-block relative\">\r\n <i [class]=\"action.icon\"></i>\r\n <span *ngIf=\"view==action.param\"\r\n class=\"selected-view-indicator\"></span>\r\n </span>\r\n </button>\r\n </ng-container>\r\n <ng-container *ngSwitchCase=\"'search'\">\r\n <label for=\"search\"\r\n class=\"sr-only\">Search</label>\r\n <div class=\"search-container\">\r\n <div class=\"pointer-events-none absolute inset-y-0 left-0 pl-3 flex items-center\">\r\n <!--<svg class=\"h-5 w-5\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 20 20\" fill=\"currentColor\" aria-hidden=\"true\">\r\n <path fill-rule=\"evenodd\" d=\"M8 4a4 4 0 100 8 4 4 0 000-8zM2 8a6 6 0 1110.89 3.476l4.817 4.817a1 1 0 01-1.414 1.414l-4.816-4.816A6 6 0 012 8z\" clip-rule=\"evenodd\" />\r\n </svg>-->\r\n </div>\r\n <input id=\"search\"\r\n #search\r\n class=\"search-input\"\r\n [placeholder]=\"searchPlaceholder\"\r\n type=\"search\"\r\n name=\"search\"\r\n (input)=\"searchActionType(search.value)\">\r\n </div>\r\n <button type=\"button\"\r\n href=\"#\"\r\n class=\"btn-view-header rounded-l-none\"\r\n (click)=\"searchActionClick(action, search.value)\">\r\n <i [class]=\"action.icon\"></i>\r\n </button>\r\n </ng-container>\r\n <ng-container *ngSwitchCase=\"'router-link'\">\r\n <button type=\"button\"\r\n href=\"#\"\r\n class=\"ml-1 btn-view-header\"\r\n (click)=\"routerLinkActionClick(action)\">\r\n <i [class]=\"action.icon\"></i>\r\n </button>\r\n </ng-container>\r\n\r\n <!---->\r\n <ng-container *ngSwitchDefault>\r\n <button type=\"button\"\r\n class=\"ml-1 btn-view-header\"\r\n (click)=\"emitActionClick(action)\">\r\n <i [class]=\"action.icon\"></i>\r\n </button>\r\n </ng-container>\r\n </ng-container>\r\n </div>\r\n </div>\r\n</header>\r\n\r\n<!-- component -->\r\n<div [class]=\"fluid ? 'view-container-fluid' : 'view-container'\">\r\n <ng-content></ng-content>\r\n</div>\r\n"}]}],"members":{"searchInput$":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewChild","line":13,"character":3},"arguments":["search"]}]}],"header":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":15,"character":3},"arguments":["show-header"]}]}],"fluid":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":16,"character":3}}]}],"title":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":17,"character":3}}]}],"icon":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":18,"character":3}}]}],"actions":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":19,"character":3}}]}],"busy":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":20,"character":3}}]}],"searchPlaceholder":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":22,"character":3},"arguments":["search-placeholder"]}]}],"view":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":23,"character":3}}]}],"metaItems":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":25,"character":3},"arguments":["meta-items"]}]}],"onAction":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":29,"character":3}}]}],"onSearch":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":31,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/router","name":"ActivatedRoute","line":33,"character":30},{"__symbolic":"reference","module":"@angular/router","name":"Router","line":33,"character":63}]}],"ngOnInit":[{"__symbolic":"method"}],"emitActionClick":[{"__symbolic":"method"}],"routerLinkActionClick":[{"__symbolic":"method"}],"searchActionClick":[{"__symbolic":"method"}],"searchActionType":[{"__symbolic":"method"}],"switchViewActionClick":[{"__symbolic":"method"}]}},"ModelViewLayoutComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":4,"character":1},"arguments":[{"selector":"lib-model-view-layout","template":"<lib-view-layout [title]=\"title\" [meta-items]=\"metaItems\">\r\n <main class=\"model-view-container\">\r\n <div class=\"model-view-container-inner\">\r\n <aside class=\"model-view-aside\">\r\n <section aria-labelledby=\"menu\" class=\"details-view-aside-header-section\">\r\n <div class=\"model-view-aside-header-container\">\r\n <div class=\"model-view-aside-header-container-inner\">\r\n <ng-content></ng-content>\r\n </div>\r\n <!-- menu items -->\r\n <div class=\"model-view-menu-container\">\r\n <nav class=\"model-view-menu-nav\">\r\n <div class=\"model-view-menu-item\">\r\n <ng-container *ngFor=\"let section of primary\">\r\n <a href=\"#\"\r\n [routerLinkActive]=\"['view-nav-link-active']\"\r\n [routerLink]=\"section.link\"\r\n class=\"view-nav-link\">\r\n {{section.text}}\r\n </a>\r\n </ng-container>\r\n </div>\r\n <div class=\"model-view-menu-item-far\">\r\n <ng-container *ngFor=\"let section of secondary\">\r\n <a href=\"#\"\r\n [routerLinkActive]=\"['view-nav-link-active']\"\r\n [routerLinkActiveOptions]=\"{ exact: true }\"\r\n [routerLink]=\"section.link\"\r\n class=\"view-nav-link\">\r\n {{section.text}}\r\n </a>\r\n </ng-container>\r\n </div>\r\n </nav>\r\n </div>\r\n </div>\r\n </section>\r\n </aside>\r\n <div class=\"model-view-details-container\">\r\n <router-outlet></router-outlet>\r\n </div>\r\n </div>\r\n </main>\r\n"}]}],"members":{"title":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":11,"character":3}}]}],"primary":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":13,"character":3},"arguments":["primary-links"]}]}],"secondary":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":15,"character":3},"arguments":["secondary-links"]}]}],"metaItems":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":17,"character":3},"arguments":["meta-items"]}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/common","name":"Location","line":20,"character":33}]}],"ngOnInit":[{"__symbolic":"method"}],"onSidePaneActivated":[{"__symbolic":"method"}],"onSidePaneDeactivated":[{"__symbolic":"method"}],"closeSidePane":[{"__symbolic":"method"}]}},"SideViewLayoutComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":4,"character":1},"arguments":[{"selector":"lib-side-view-layout","template":"<div class=\"side-view-layout-size-box\">\r\n <div class=\"side-view-layout-container\">\r\n <div class=\"side-view-layout-container-inner\">\r\n <div class=\"side-view-layout-header-margins\">\r\n <div class=\"side-view-layout-header-container\">\r\n <h2 class=\"side-view-layout-header-title\" id=\"slide-over-title\">\r\n {{title}}\r\n </h2>\r\n <div class=\"side-view-layout-close-button-container\">\r\n <button (click)=\"emitClose()\" class=\"side-view-layout-close-button\">\r\n <span class=\"sr-only\">Close panel</span>\r\n <!-- Heroicon name: outline/x -->\r\n <svg class=\"side-view-layout-close-button-icon\" xmlns=\"http://www.w3.org/2000/svg\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\" aria-hidden=\"true\">\r\n <path stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M6 18L18 6M6 6l12 12\" />\r\n </svg>\r\n </button>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"side-view-layout-content-container\">\r\n <!-- Replace with your content -->\r\n <ng-content></ng-content>\r\n <!-- /End replace -->\r\n </div>\r\n </div>\r\n <div *ngIf=\"showActions\" class=\"side-view-layout-actions-container\">\r\n <button *ngIf=\"cancelShow\" (click)=\"emitCancel()\" type=\"button\" class=\"side-view-layout-action-button\">\r\n {{cancelLabel}}\r\n </button>\r\n <button *ngIf=\"okShow\" (click)=\"emitOK()\" class=\"side-view-layout-action-button-default\" [disabled]=\"disabled\">\r\n {{okLabel}}\r\n </button>\r\n </div>\r\n </div>\r\n</div>\r\n\r\n"}]}],"members":{"title":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":9,"character":3}}]}],"showActions":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":10,"character":3}}]}],"disabled":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":11,"character":3}}]}],"returnPath":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":13,"character":3},"arguments":["return-path"]}]}],"okLabel":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":15,"character":3},"arguments":["ok-label"]}]}],"okShow":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":17,"character":3},"arguments":["ok-show"]}]}],"closeOnOk":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":19,"character":3},"arguments":["ok-close-dialog"]}]}],"cancelLabel":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":21,"character":3},"arguments":["cancel-label"]}]}],"cancelShow":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":23,"character":3},"arguments":["cancel-show"]}]}],"cancel":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":25,"character":3}}]}],"ok":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":26,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/common","name":"Location","line":28,"character":32},{"__symbolic":"reference","module":"@angular/router","name":"Router","line":28,"character":58}]}],"ngOnInit":[{"__symbolic":"method"}],"closeSidePane":[{"__symbolic":"method"}],"emitClose":[{"__symbolic":"method"}],"emitCancel":[{"__symbolic":"method"}],"emitOK":[{"__symbolic":"method"}]}},"FormLayoutComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":6,"character":1},"arguments":[{"selector":"lib-form-layout","template":"<div class=\"form-layout-container\">\r\n <div class=\"form-header\">\r\n <div class=\"form-header-inner\">\r\n <h3 class=\"form-title\">\r\n {{ title }}\r\n </h3>\r\n <p class=\"form-subtitle\">\r\n {{ subTitle }}\r\n </p>\r\n </div>\r\n <div class=\"form-header-actions\">\r\n <ng-container *ngFor=\"let action of actions\"\r\n [ngSwitch]=\"action.type\">\r\n <ng-container *ngSwitchCase=\"'search'\">\r\n <label for=\"search\"\r\n class=\"sr-only\">Search</label>\r\n <div class=\"search-container\">\r\n <div class=\"pointer-events-none absolute inset-y-0 left-0 pl-3 flex items-center\">\r\n <!--<svg class=\"h-5 w-5\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 20 20\" fill=\"currentColor\" aria-hidden=\"true\">\r\n <path fill-rule=\"evenodd\" d=\"M8 4a4 4 0 100 8 4 4 0 000-8zM2 8a6 6 0 1110.89 3.476l4.817 4.817a1 1 0 01-1.414 1.414l-4.816-4.816A6 6 0 012 8z\" clip-rule=\"evenodd\" />\r\n </svg>-->\r\n </div>\r\n <input id=\"search\"\r\n #search\r\n class=\"form-search-input\"\r\n [placeholder]=\"searchPlaceholder\"\r\n type=\"search\"\r\n name=\"search\"\r\n (input)=\"searchActionType(search.value)\">\r\n </div>\r\n <button type=\"button\"\r\n href=\"#\"\r\n class=\"btn-form-view-header-search\"\r\n (click)=\"searchActionClick(action, search.value)\">\r\n <i [class]=\"action.icon\"></i>\r\n </button>\r\n </ng-container>\r\n <ng-container *ngSwitchCase=\"'router-link'\">\r\n <button type=\"button\"\r\n href=\"#\"\r\n class=\"ml-1 btn-form-view-header\"\r\n (click)=\"routerLinkActionClick(action)\">\r\n <i [class]=\"action.icon\"></i>\r\n </button>\r\n </ng-container>\r\n <ng-container *ngSwitchDefault>\r\n <button type=\"button\"\r\n class=\"ml-1 btn-form-view-header\"\r\n (click)=\"emitActionClick(action)\">\r\n <i [class]=\"action.icon\"></i>\r\n </button>\r\n </ng-container>\r\n </ng-container>\r\n </div>\r\n </div>\r\n <div class=\"form-content-container\">\r\n <div class=\"form-content-container-inner\">\r\n <ng-content></ng-content>\r\n </div>\r\n </div>\r\n <lib-side-pane #formPane>\r\n <router-outlet name=\"formRightPane\"\r\n (activate)=\"formPane.onSidePaneActivated($event)\"\r\n (deactivate)=\"formPane.onSidePaneDeactivated($event)\"></router-outlet>\r\n </lib-side-pane>\r\n</div>\r\n"}]}],"members":{"searchInput$":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewChild","line":12,"character":3},"arguments":["search"]}]}],"title":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":13,"character":3}}]}],"searchPlaceholder":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":15,"character":3},"arguments":["search-placeholder"]}]}],"actions":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":16,"character":3}}]}],"subTitle":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":18,"character":3},"arguments":["sub-title"]}]}],"onAction":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":20,"character":3}}]}],"onSearch":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":22,"character":3}}]}],"onComplete":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":23,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/router","name":"Router","line":26,"character":31}]}],"ngOnInit":[{"__symbolic":"method"}],"onSidePaneActivated":[{"__symbolic":"method"}],"onSidePaneDeactivated":[{"__symbolic":"method"}],"emitActionClick":[{"__symbolic":"method"}],"searchActionClick":[{"__symbolic":"method"}],"searchActionType":[{"__symbolic":"method"}],"routerLinkActionClick":[{"__symbolic":"method"}]}},"AuthCallbackComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":5,"character":1},"arguments":[{"selector":"lib-auth-callback","template":"<lib-view-layout [title]=\"status\" [busy]=\"true\">\r\n\r\n</lib-view-layout>\r\n"}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":13,"character":15},"arguments":[{"__symbolic":"reference","module":"@indice/ng-auth","name":"AuthService","line":13,"character":22}]}],null,null],"parameters":[{"__symbolic":"reference","module":"@indice/ng-auth","name":"AuthService","line":13,"character":56},{"__symbolic":"reference","module":"@angular/router","name":"Router","line":13,"character":85},{"__symbolic":"reference","module":"@angular/router","name":"ActivatedRoute","line":13,"character":108}]}],"ngOnInit":[{"__symbolic":"method"}]}},"AuthRenewComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":6,"character":1},"arguments":[{"selector":"lib-auth-renew","template":""}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":9,"character":15},"arguments":[{"__symbolic":"reference","module":"@indice/ng-auth","name":"AuthService","line":9,"character":22}]}],null],"parameters":[{"__symbolic":"reference","module":"@indice/ng-auth","name":"AuthService","line":9,"character":56},{"__symbolic":"reference","module":"@angular/router","name":"Router","line":9,"character":85}]}],"ngOnInit":[{"__symbolic":"method"}]}},"LoggedOutComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":3,"character":1},"arguments":[{"selector":"lib-logged-out","template":"<lib-view-layout title=\"γειά σας!\"></lib-view-layout>\r\n\r\n"}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":11,"character":15},"arguments":[{"__symbolic":"reference","module":"@indice/ng-auth","name":"AuthService","line":11,"character":22}]}]],"parameters":[{"__symbolic":"reference","module":"@indice/ng-auth","name":"AuthService","line":11,"character":56}]}],"ngOnInit":[{"__symbolic":"method"}]}},"ErrorComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":2,"character":1},"arguments":[{"selector":"lib-error","template":"<lib-view-layout [show-header]=\"false\" title=\"500 - παρουσιάστηκε σφάλμα!\">\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\">500</span>\r\n </h2>\r\n <p class=\"mt-4 text-lg leading-6 text-gray-200\">σφάλμα, κατι δεν πήγε καλά...!</p>\r\n <a href=\"/\" 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 πατήστε εδώ για να επιστρέψετε\r\n </a>\r\n </div>\r\n </div>\r\n</lib-view-layout>\r\n"}]}],"members":{"ngOnInit":[{"__symbolic":"method"}]}},"PageNotFoundComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":2,"character":1},"arguments":[{"selector":"lib-page-not-found","template":"<lib-view-layout [show-header]=\"false\"\r\n title=\"404 - δεν βρέθηκε!\">\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\">δεν βρέθηκε η σελίδα που ζητήσατε!</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 πατήστε εδώ για να επιστρέψετε\r\n </a>\r\n </div>\r\n </div>\r\n</lib-view-layout>"}]}],"members":{"__ctor__":[{"__symbolic":"constructor"}],"ngOnInit":[{"__symbolic":"method"}]}},"UnauthorizedComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":5,"character":1},"arguments":[{"selector":"lib-unauthorized","template":"<lib-view-layout [show-header]=\"false\" title=\"401 - δεν επιτρέπεται η πρόσβαση!\">\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\">401</span>\r\n </h2>\r\n <p class=\"mt-4 text-lg leading-6 text-gray-200\">δεν έχετε τα κατάλληλα δικαιώματα πρόσβασης!</p>\r\n <a href=\"/\" 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 πατήστε εδώ για να επιστρέψετε\r\n </a>\r\n </div>\r\n </div>\r\n </lib-view-layout>\r\n\r\n\r\n"}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":8,"character":15},"arguments":[{"__symbolic":"reference","module":"@indice/ng-auth","name":"AuthService","line":8,"character":22}]}]],"parameters":[{"__symbolic":"reference","module":"@indice/ng-auth","name":"AuthService","line":8,"character":56}]}],"ngOnInit":[{"__symbolic":"method"}],"signin":[{"__symbolic":"method"}]}},"AddressPipe":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Pipe","line":3,"character":1},"arguments":[{"name":"address","pure":false}]}],"members":{"transform":[{"__symbolic":"method"}]}},"DurationFormatPipe":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Pipe","line":2,"character":1},"arguments":[{"name":"durationFormat","pure":false}]}],"members":{"transform":[{"__symbolic":"method"}],"format":[{"__symbolic":"method"}]}},"APP_LINKS":{"__symbolic":"new","expression":{"__symbolic":"reference","module":"@angular/core","name":"InjectionToken","line":3,"character":29},"arguments":["APP_LINKS"]},"SHELL_CONFIG":{"__symbolic":"new","expression":{"__symbolic":"reference","module":"@angular/core","name":"InjectionToken","line":4,"character":32},"arguments":["SHELL_CONFIG"]},"IAppLinks":{"__symbolic":"interface"},"NavLink":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"string"},{"__symbolic":"reference","name":"string"},{"__symbolic":"reference","name":"boolean"},{"__symbolic":"reference","name":"boolean"},{"__symbolic":"reference","name":"string"}]}]}},"ExternalNavLink":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"NavLink"},"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"string"},{"__symbolic":"reference","name":"string"},{"__symbolic":"reference","name":"string"}]}]}},"FragmentNavLink":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"NavLink"},"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"string"},{"__symbolic":"reference","name":"string"},{"__symbolic":"reference","name":"string"}]}]}},"ViewAction":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"string"},{"__symbolic":"reference","name":"string"},{"__symbolic":"reference","name":"any"},{"__symbolic":"reference","name":"string"},{"__symbolic":"reference","name":"string"}]}]}},"ListViewType":{"__symbolic":"class","members":{},"statics":{"Tiles":"tiles","Table":"table","Map":"map"}},"RouterViewAction":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"ViewAction"},"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"string"},{"__symbolic":"reference","name":"string"},{"__symbolic":"reference","name":"string"},{"__symbolic":"reference","name":"string"}]}]}},"SwitchViewAction":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"ViewAction"},"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"string"},{"__symbolic":"reference","name":"string"},{"__symbolic":"reference","name":"string"}]}]}},"IResultSet":{"__symbolic":"interface"},"HeaderMetaItem":{"__symbolic":"class","members":{}},"MenuOption":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"string"},{"__symbolic":"reference","name":"any"},{"__symbolic":"reference","name":"string"},{"__symbolic":"reference","name":"any"},{"__symbolic":"reference","name":"string"}]}]}},"IAddress":{"__symbolic":"interface"},"IShellConfig":{"__symbolic":"interface"},"DefaultShellConfig":{"__symbolic":"class","members":{}},"SCREEN_SIZE":{"XS":0,"SM":1,"MD":2,"LG":3,"XL":4},"IScreenSize":{"__symbolic":"interface"},"ToastType":{"Info":"info","Success":"success","Error":"error","Warning":"warning"},"NULL_TOAST":{"title":"_____NULL_____"},"Toast":{"__symbolic":"interface"},"SidePaneSize":{"Default":"","Small25":"25%","Medium50":"50%","Large75":"75%"},"SidePaneOverlayType":{"Default":"","None":"-opacity-0","Light":"","Dark":"-opacity-50"},"Icons":{"__symbolic":"class","members":{},"statics":{"Dashboard":"ms-Icon ms-Icon--HomeGroup ","Locations":"ms-Icon ms-Icon--MapPin ","ChargePoints":"ms-Icon ms-Icon--ChatBot ","Transations":"ms-Icon ms-Icon--PaymentCard ","Badges":"ms-Icon ms-Icon--IDBadge ","Information":"ms-Icon ms-Icon--Info","Refresh":"ms-Icon ms-Icon--Refresh","Search":"ms-Icon ms-Icon--Search","Add":"ms-Icon ms-Icon--Add","Filter":"ms-Icon ms-Icon--Filter","TilesView":"ms-Icon ms-Icon--AppIconDefault","TableView":"ms-Icon ms-Icon--Table","MapView":"ms-Icon ms-Icon--MapPin","EntryView":"ms-Icon ms-Icon--EntryView","Separator":"ms-Icon ms-Icon--Separator text-white","ItemsCount":"ms-Icon ms-Icon--Boards","Heart":"ms-Icon ms-Icon--Heart","HeartBroken":"ms-Icon ms-Icon--HeartBroken","DateTime":"ms-Icon ms-Icon--ReminderTime","Expand":"ms-Icon ms-Icon--ChevronDown","Collapse":"ms-Icon ms-Icon--ChevronUp","SortAsc":"ms-Icon ms-Icon--Ascending","SortDesc":"ms-Icon ms-Icon--Descending","Details":" ms-Icon ms-Icon--AccountActivity"}},"BaseListComponent":{"__symbolic":"class","arity":1,"decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":6,"character":1},"arguments":[{"template":""}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/router","name":"ActivatedRoute","line":24,"character":30},{"__symbolic":"reference","module":"@angular/router","name":"Router","line":24,"character":63}]}],"ngOnDestroy":[{"__symbolic":"method"}],"ngOnInit":[{"__symbolic":"method"}],"setRouteParams":[{"__symbolic":"method"}],"actionHandler":[{"__symbolic":"method"}],"load":[{"__symbolic":"method"}],"updateHeaderMeta":[{"__symbolic":"method"}],"loadItems":[{"__symbolic":"method"}],"clear":[{"__symbolic":"method"}],"refresh":[{"__symbolic":"method"}],"pageChanged":[{"__symbolic":"method"}],"pageSizeChanged":[{"__symbolic":"method"}],"sortChanged":[{"__symbolic":"method"}],"sortdirChanged":[{"__symbolic":"method"}],"searchChanged":[{"__symbolic":"method"}]}},"ComponentLoaderService":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":2,"character":1},"arguments":[{"providedIn":"root"}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/core","name":"ComponentFactoryResolver","line":6,"character":29}]}],"loadComponent":[{"__symbolic":"method"}]},"statics":{"ɵprov":{}}},"ToasterService":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":5,"character":1},"arguments":[{"providedIn":"root"}]}],"members":{"__ctor__":[{"__symbolic":"constructor"}],"show":[{"__symbolic":"method"}]},"statics":{"ɵprov":{}}},"IndiceComponentsModule":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgModule","line":39,"character":1},"arguments":[{"declarations":[{"__symbolic":"reference","name":"ClickOutsideDirective"},{"__symbolic":"reference","name":"ɵa"},{"__symbolic":"reference","name":"DropDownMenuComponent"},{"__symbolic":"reference","name":"PagerComponent"},{"__symbolic":"reference","name":"ListViewComponent"},{"__symbolic":"reference","name":"ListColumnComponent"},{"__symbolic":"reference","name":"ListTileComponent"},{"__symbolic":"reference","name":"ListDetailsSectionComponent"},{"__symbolic":"reference","name":"ListViewEmptyStateComponent"},{"__symbolic":"reference","name":"SkeletonLoaderComponent"},{"__symbolic":"reference","name":"CollapsiblePanelComponent"},{"__symbolic":"reference","name":"KpiTileComponent"},{"__symbolic":"reference","name":"ɵb"},{"__symbolic":"reference","name":"DatepickerComponent"},{"__symbolic":"reference","name":"AvatarInitialsComponent"},{"__symbolic":"reference","name":"ToggleComponent"},{"__symbolic":"reference","name":"ToasterContainerComponent"},{"__symbolic":"reference","name":"ToasterComponent"},{"__symbolic":"reference","name":"ShellLayoutComponent"},{"__symbolic":"reference","name":"ShellHeaderComponent"},{"__symbolic":"reference","name":"ShellFooterComponent"},{"__symbolic":"reference","name":"ViewLayoutComponent"},{"__symbolic":"reference","name":"SideViewLayoutComponent"},{"__symbolic":"reference","name":"ModelViewLayoutComponent"},{"__symbolic":"reference","name":"FormLayoutComponent"},{"__symbolic":"reference","name":"AuthCallbackComponent"},{"__symbolic":"reference","name":"AuthRenewComponent"},{"__symbolic":"reference","name":"LoggedOutComponent"},{"__symbolic":"reference","name":"ErrorComponent"},{"__symbolic":"reference","name":"PageNotFoundComponent"},{"__symbolic":"reference","name":"UnauthorizedComponent"},{"__symbolic":"reference","name":"AddressPipe"},{"__symbolic":"reference","name":"DurationFormatPipe"}],"imports":[{"__symbolic":"reference","module":"@angular/common","name":"CommonModule","line":83,"character":4},{"__symbolic":"reference","module":"@angular/router","name":"RouterModule","line":84,"character":4},{"__symbolic":"reference","module":"@indice/ng-auth","name":"IndiceAuthModule","line":85,"character":4}],"exports":[{"__symbolic":"reference","name":"ClickOutsideDirective"},{"__symbolic":"reference","name":"DropDownMenuComponent"},{"__symbolic":"reference","name":"PagerComponent"},{"__symbolic":"reference","name":"ListViewComponent"},{"__symbolic":"reference","name":"ListColumnComponent"},{"__symbolic":"reference","name":"ListTileComponent"},{"__symbolic":"reference","name":"ListDetailsSectionComponent"},{"__symbolic":"reference","name":"ListViewEmptyStateComponent"},{"__symbolic":"reference","name":"KpiTileComponent"},{"__symbolic":"reference","name":"SkeletonLoaderComponent"},{"__symbolic":"reference","name":"ShellLayoutComponent"},{"__symbolic":"reference","name":"ShellHeaderComponent"},{"__symbolic":"reference","name":"ShellFooterComponent"},{"__symbolic":"reference","name":"ViewLayoutComponent"},{"__symbolic":"reference","name":"SideViewLayoutComponent"},{"__symbolic":"reference","name":"ModelViewLayoutComponent"},{"__symbolic":"reference","name":"FormLayoutComponent"},{"__symbolic":"reference","name":"AuthCallbackComponent"},{"__symbolic":"reference","name":"AuthRenewComponent"},{"__symbolic":"reference","name":"LoggedOutComponent"},{"__symbolic":"reference","name":"ErrorComponent"},{"__symbolic":"reference","name":"PageNotFoundComponent"},{"__symbolic":"reference","name":"UnauthorizedComponent"},{"__symbolic":"reference","name":"AddressPipe"},{"__symbolic":"reference","name":"DurationFormatPipe"},{"__symbolic":"reference","name":"CollapsiblePanelComponent"},{"__symbolic":"reference","name":"ɵb"},{"__symbolic":"reference","name":"DatepickerComponent"},{"__symbolic":"reference","name":"ToasterContainerComponent"},{"__symbolic":"reference","name":"ToasterComponent"},{"__symbolic":"reference","name":"AvatarInitialsComponent"},{"__symbolic":"reference","name":"ToggleComponent"}]}]}],"members":{},"statics":{"forRoot":{"__symbolic":"function","parameters":[],"value":{"ngModule":{"__symbolic":"reference","name":"IndiceComponentsModule"},"providers":[{"__symbolic":"reference","name":"ToasterService"}]}}}},"ɵa":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Directive","line":2,"character":1},"arguments":[{"selector":"[appDynamicComponentHost]"}]}],"members":{"hostName":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":4,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/core","name":"ViewContainerRef","line":5,"character":39}]}]}},"ɵb":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":6,"character":1},"arguments":[{"selector":"lib-side-pane","template":"<div *ngIf=\"showPane\" class=\"side-pane-outer-container\" aria-labelledby=\"slide-over\" role=\"dialog\" aria-modal=\"true\">\r\n <div [class]=\"showPane ? overlayStyle : 'hidden'\" aria-hidden=\"true\"></div>\r\n <div [class]=\"showPane ? 'side-pane-container' : 'hidden'\">\r\n <div [class]=\"sizeContainerStyle\">\r\n <div class=\"side-pane\">\r\n <ng-content></ng-content>\r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n"}]}],"members":{"showPane":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":12,"character":3},"arguments":["visible"]}]}],"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[null,[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":15,"character":39},"arguments":[{"__symbolic":"reference","module":"@angular/common","name":"DOCUMENT","line":15,"character":46}]}]],"parameters":[{"__symbolic":"reference","module":"@angular/router","name":"Router","line":15,"character":30},{"__symbolic":"reference","name":"any"}]}],"ngOnDestroy":[{"__symbolic":"method"}],"ngOnInit":[{"__symbolic":"method"}],"onSidePaneActivated":[{"__symbolic":"method"}],"onSidePaneDeactivated":[{"__symbolic":"method"}]}}},"origins":{"ClickOutsideDirective":"./lib/directives/click-outside.directive","DropDownMenuComponent":"./lib/controls/drop-down-menu/drop-down-menu.component","PagerComponent":"./lib/controls/pager/pager.component","ListViewComponent":"./lib/controls/list-view/list-view.component","ListColumnComponent":"./lib/controls/list-view/list-column.component","ListTileComponent":"./lib/controls/list-view/list-tile.component","ListDetailsSectionComponent":"./lib/controls/list-view/list-details-section.component","ListViewEmptyStateComponent":"./lib/controls/list-view/list-view-empty-state.component","SkeletonLoaderComponent":"./lib/controls/skeleton-loader/skeleton-loader.component","CollapsiblePanelComponent":"./lib/controls/collapsible-panel/collapsible-panel.component","KpiTileComponent":"./lib/controls/kpi-tile/kpi-tile.component","DatepickerComponent":"./lib/controls/date-picker/date-picker.component","ToasterContainerComponent":"./lib/controls/toaster/toaster-container.component","ToasterComponent":"./lib/controls/toaster/toaster.component","AvatarInitialsComponent":"./lib/controls/avatar-initials/avatar-initials.component","ToggleComponent":"./lib/controls/toggle/toggle.component","ShellLayoutComponent":"./lib/layouts/shell/shell-layout/shell-layout.component","ShellHeaderComponent":"./lib/layouts/shell/shell-header/shell-header.component","ShellFooterComponent":"./lib/layouts/shell/shell-footer/shell-footer.component","ViewLayoutComponent":"./lib/layouts/views/view-layout/view-layout.component","ModelViewLayoutComponent":"./lib/layouts/views/model-view-layout/model-view-layout.component","SideViewLayoutComponent":"./lib/layouts/views/side-view-layout/side-view-layout.component","FormLayoutComponent":"./lib/layouts/views/form-layout/form-layout.component","AuthCallbackComponent":"./lib/pages/auth/auth-callback/auth-callback.component","AuthRenewComponent":"./lib/pages/auth/auth-renew/auth-renew.component","LoggedOutComponent":"./lib/pages/auth/logged-out/logged-out.component","ErrorComponent":"./lib/pages/http-status/error/error.component","PageNotFoundComponent":"./lib/pages/http-status/page-not-found/page-not-found.component","UnauthorizedComponent":"./lib/pages/http-status/unauthorized/unauthorized.component","AddressPipe":"./lib/pipes/address.pipe","DurationFormatPipe":"./lib/pipes/duration-format.pipe","APP_LINKS":"./lib/tokens","SHELL_CONFIG":"./lib/tokens","IAppLinks":"./lib/types","NavLink":"./lib/types","ExternalNavLink":"./lib/types","FragmentNavLink":"./lib/types","ViewAction":"./lib/types","ListViewType":"./lib/types","RouterViewAction":"./lib/types","SwitchViewAction":"./lib/types","IResultSet":"./lib/types","HeaderMetaItem":"./lib/types","MenuOption":"./lib/types","IAddress":"./lib/types","IShellConfig":"./lib/types","DefaultShellConfig":"./lib/types","SCREEN_SIZE":"./lib/types","IScreenSize":"./lib/types","ToastType":"./lib/types","NULL_TOAST":"./lib/types","Toast":"./lib/types","SidePaneSize":"./lib/types","SidePaneOverlayType":"./lib/types","Icons":"./lib/icons","BaseListComponent":"./lib/helpers/base-list.component","ComponentLoaderService":"./lib/services/component-loader.service","ToasterService":"./lib/services/toaster.service","IndiceComponentsModule":"./lib/ng-components.module","ɵa":"./lib/directives/dynamic-component-host.directive","ɵb":"./lib/controls/side-pane/side-pane.component"},"importAs":"@indice/ng-components"}
@@ -9,18 +9,27 @@ export declare class DatepickerComponent implements OnInit, ControlValueAccessor
9
9
  valueChange: EventEmitter<Date>;
10
10
  dateInput: ElementRef | undefined;
11
11
  showCalendar: boolean;
12
+ showYears: boolean;
12
13
  monthNames: string[];
13
14
  dayNames: string[];
14
15
  month: number;
15
16
  year: number;
16
17
  calendarDates: any[];
18
+ calendarYears: any[];
19
+ showCalendarYears: any[];
17
20
  blankDays: any[];
21
+ calendarYearPage: number;
22
+ private yearsPerPage;
18
23
  private onChange$;
19
24
  private onTouched$;
20
- compareDates(date1: Date | undefined | null, day: number): boolean;
25
+ ngOnInit(): void;
26
+ compareDates(date1: Date | undefined | null, day: number | null | undefined, year: number | null | undefined): boolean;
21
27
  selectDateValue(date: any): void;
28
+ selectYearValue(year: any): void;
22
29
  previousMonth(): void;
23
30
  nextMonth(): void;
31
+ previousYear(): void;
32
+ nextYear(): void;
24
33
  calcDays(): void;
25
34
  private updateDays;
26
35
  constructor();
@@ -28,5 +37,7 @@ export declare class DatepickerComponent implements OnInit, ControlValueAccessor
28
37
  registerOnChange(fn: (_: any) => void): void;
29
38
  registerOnTouched(fn: any): void;
30
39
  onBlur(event: any): void;
31
- ngOnInit(): void;
40
+ paginate(array: any[], page_number: number): any[];
41
+ openYears(): void;
42
+ openCalendar(): void;
32
43
  }