ngssm-toolkit 14.0.2 → 14.1.1

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.
@@ -3,9 +3,9 @@ import * as i0 from "@angular/core";
3
3
  export class NotFoundComponent {
4
4
  }
5
5
  NotFoundComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.2", ngImport: i0, type: NotFoundComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
6
- NotFoundComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.2", type: NotFoundComponent, selector: "ngssm-not-found", ngImport: i0, template: ` <img src="/assets/404-not-found.png" /> `, isInline: true, styles: [":host{display:flex;flex-direction:row;flex:1;align-items:center;justify-content:center}\n"] });
6
+ NotFoundComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.2", type: NotFoundComponent, selector: "ngssm-not-found", ngImport: i0, template: ` <img src="./assets/404-not-found.png" /> `, isInline: true, styles: [":host{display:flex;flex-direction:row;flex:1;align-items:center;justify-content:center}\n"] });
7
7
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.2", ngImport: i0, type: NotFoundComponent, decorators: [{
8
8
  type: Component,
9
- args: [{ selector: 'ngssm-not-found', template: ` <img src="/assets/404-not-found.png" /> `, styles: [":host{display:flex;flex-direction:row;flex:1;align-items:center;justify-content:center}\n"] }]
9
+ args: [{ selector: 'ngssm-not-found', template: ` <img src="./assets/404-not-found.png" /> `, styles: [":host{display:flex;flex-direction:row;flex:1;align-items:center;justify-content:center}\n"] }]
10
10
  }] });
11
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm90LWZvdW5kLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL25nc3NtLXRvb2xraXQvc3JjL2xpYi9ub3QtZm91bmQuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBaUIxQyxNQUFNLE9BQU8saUJBQWlCOzs4R0FBakIsaUJBQWlCO2tHQUFqQixpQkFBaUIsdURBYmxCLDJDQUEyQzsyRkFhMUMsaUJBQWlCO2tCQWY3QixTQUFTOytCQUNFLGlCQUFpQixZQUNqQiwyQ0FBMkMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnbmdzc20tbm90LWZvdW5kJyxcbiAgdGVtcGxhdGU6IGAgPGltZyBzcmM9XCIvYXNzZXRzLzQwNC1ub3QtZm91bmQucG5nXCIgLz4gYCxcbiAgc3R5bGVzOiBbXG4gICAgYFxuICAgICAgOmhvc3Qge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgICBmbGV4OiAxO1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgIH1cbiAgICBgXG4gIF1cbn0pXG5leHBvcnQgY2xhc3MgTm90Rm91bmRDb21wb25lbnQge31cbiJdfQ==
11
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm90LWZvdW5kLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL25nc3NtLXRvb2xraXQvc3JjL2xpYi9ub3QtZm91bmQuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBaUIxQyxNQUFNLE9BQU8saUJBQWlCOzs4R0FBakIsaUJBQWlCO2tHQUFqQixpQkFBaUIsdURBYmxCLDRDQUE0QzsyRkFhM0MsaUJBQWlCO2tCQWY3QixTQUFTOytCQUNFLGlCQUFpQixZQUNqQiw0Q0FBNEMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnbmdzc20tbm90LWZvdW5kJyxcbiAgdGVtcGxhdGU6IGAgPGltZyBzcmM9XCIuL2Fzc2V0cy80MDQtbm90LWZvdW5kLnBuZ1wiIC8+IGAsXG4gIHN0eWxlczogW1xuICAgIGBcbiAgICAgIDpob3N0IHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgICAgZmxleDogMTtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICB9XG4gICAgYFxuICBdXG59KVxuZXhwb3J0IGNsYXNzIE5vdEZvdW5kQ29tcG9uZW50IHt9XG4iXX0=
@@ -12,7 +12,7 @@ import * as i9 from "@angular/flex-layout/flex";
12
12
  export class ShellComponent {
13
13
  constructor() {
14
14
  this.navigationSections = [];
15
- this.logo = 'assets/leono-logo.png';
15
+ this.logo = './assets/leono-logo.png';
16
16
  }
17
17
  }
18
18
  ShellComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.2", ngImport: i0, type: ShellComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
@@ -25,4 +25,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.2", ngImpor
25
25
  }], logo: [{
26
26
  type: Input
27
27
  }] } });
28
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2hlbGwuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmdzc20tdG9vbGtpdC9zcmMvbGliL3NoZWxsL3NoZWxsLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25nc3NtLXRvb2xraXQvc3JjL2xpYi9zaGVsbC9zaGVsbC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQzs7Ozs7Ozs7Ozs7QUFTMUUsTUFBTSxPQUFPLGNBQWM7SUFOM0I7UUFPa0IsdUJBQWtCLEdBQXdCLEVBQUUsQ0FBQztRQUM3QyxTQUFJLEdBQVcsdUJBQXVCLENBQUM7S0FDeEQ7OzJHQUhZLGNBQWM7K0ZBQWQsY0FBYyx1SENUM0IsMnlEQWlDd0I7MkZEeEJYLGNBQWM7a0JBTjFCLFNBQVM7K0JBQ0UsYUFBYSxtQkFHTix1QkFBdUIsQ0FBQyxNQUFNOzhCQUcvQixrQkFBa0I7c0JBQWpDLEtBQUs7Z0JBQ1UsSUFBSTtzQkFBbkIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIElucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBOYXZpZ2F0aW9uU2VjdGlvbiB9IGZyb20gJy4vbmF2aWdhdGlvbi1zZWN0aW9uJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnbmdzc20tc2hlbGwnLFxuICB0ZW1wbGF0ZVVybDogJy4vc2hlbGwuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9zaGVsbC5jb21wb25lbnQuc2NzcyddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxufSlcbmV4cG9ydCBjbGFzcyBTaGVsbENvbXBvbmVudCB7XG4gIEBJbnB1dCgpIHB1YmxpYyBuYXZpZ2F0aW9uU2VjdGlvbnM6IE5hdmlnYXRpb25TZWN0aW9uW10gPSBbXTtcbiAgQElucHV0KCkgcHVibGljIGxvZ286IHN0cmluZyA9ICdhc3NldHMvbGVvbm8tbG9nby5wbmcnO1xufVxuIiwiPG1hdC10b29sYmFyIGNvbG9yPVwicHJpbWFyeVwiIGZ4TGF5b3V0PVwicm93XCIgZnhMYXlvdXRBbGlnbj1cIiBjZW50ZXJcIj5cbiAgICA8YnV0dG9uIG1hdC1pY29uLWJ1dHRvbiAoY2xpY2spPVwic2lkZWJhci50b2dnbGUoKVwiPlxuICAgICAgICA8bWF0LWljb24gY2xhc3M9XCJmYS1zb2xpZCBmYS1iYXJzXCI+PC9tYXQtaWNvbj5cbiAgICA8L2J1dHRvbj5cbiAgICA8aW1nIFtzcmNdPVwibG9nb1wiIGhlaWdodD1cIjUwcHhcIiAvPlxuICAgIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cbjwvbWF0LXRvb2xiYXI+XG5cbjxtYXQtc2lkZW5hdi1jb250YWluZXIgY2xhc3M9XCJuZ3NzbS1zaGVsbC1tYWluLWNvbnRhaW5lclwiIGZ4RmxleD5cbiAgICA8bWF0LXNpZGVuYXYgbW9kZT1cInNpZGVcIiBvcGVuZWQ9XCJ0cnVlXCIgI3NpZGViYXI+XG4gICAgICAgIDxtYXQtbmF2LWxpc3QgY2xhc3M9XCJuZ3NzbS1zaGVsbC1uYXZpZ2F0aW9uLWNvbnRhaW5lclwiPlxuICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgc2VjdGlvbiBvZiBuYXZpZ2F0aW9uU2VjdGlvbnM7bGV0IGxhc3QgPSBsYXN0O1wiPlxuICAgICAgICAgICAgICAgIDxhIG1hdFN1YmhlYWRlciBjbGFzcz1cIm5nc3NtLXNoZWxsLW5hdmlnYXRpb24taGVhZGVyXCIgW3JvdXRlckxpbmtdPVwic2VjdGlvbi5yb3V0ZVwiXG4gICAgICAgICAgICAgICAgICAgIHJvdXRlckxpbmtBY3RpdmU9XCJhY3RpdmUtbGlua1wiIFtyb3V0ZXJMaW5rQWN0aXZlT3B0aW9uc109XCJ7ZXhhY3Q6ZmFsc2V9XCI+XG4gICAgICAgICAgICAgICAgICAgIDxtYXQtaWNvbiBbY2xhc3NdPVwic2VjdGlvbi5pY29uQ2xhc3NcIiAqbmdJZj1cInNlY3Rpb24uaWNvbkNsYXNzXCI+PC9tYXQtaWNvbj5cbiAgICAgICAgICAgICAgICAgICAge3tzZWN0aW9uLmxhYmVsfX1cbiAgICAgICAgICAgICAgICA8L2E+XG4gICAgICAgICAgICAgICAgPGEgW3JvdXRlckxpbmtdPVwiaXRlbS5yb3V0ZVwiIHJvdXRlckxpbmtBY3RpdmU9XCJhY3RpdmUtbGlua1wiIFtyb3V0ZXJMaW5rQWN0aXZlT3B0aW9uc109XCJ7ZXhhY3Q6dHJ1ZX1cIlxuICAgICAgICAgICAgICAgICAgICBjbGFzcz1cIm5nc3NtLXNoZWxsLW5hdmlnYXRpb24tbGlua1wiIG1hdC1saXN0LWl0ZW0gKm5nRm9yPVwibGV0IGl0ZW0gb2Ygc2VjdGlvbi5pdGVtc1wiPlxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibmdzc20tc2hlbGwtbmF2aWdhdGlvbi1saW5rLWNvbnRlbnRcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxtYXQtaWNvbiBbY2xhc3NdPVwiaXRlbS5pY29uQ2xhc3NcIiAqbmdJZj1cIml0ZW0uaWNvbkNsYXNzXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcj1cInt7aXRlbS5pY29uQ29sb3IgPz8gJ3ByaW1hcnknfX1cIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvbWF0LWljb24+XG4gICAgICAgICAgICAgICAgICAgICAgICB7e2l0ZW0ubGFiZWx9fVxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8L2E+XG4gICAgICAgICAgICAgICAgPG1hdC1kaXZpZGVyICpuZ0lmPVwiIWxhc3RcIj48L21hdC1kaXZpZGVyPlxuICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgIDwvbWF0LW5hdi1saXN0PlxuICAgIDwvbWF0LXNpZGVuYXY+XG4gICAgPG1hdC1zaWRlbmF2LWNvbnRlbnQgY2xhc3M9XCJyb3V0ZXItb3V0bGV0LWNvbnRhaW5lclwiPlxuICAgICAgICA8cm91dGVyLW91dGxldD48L3JvdXRlci1vdXRsZXQ+XG4gICAgPC9tYXQtc2lkZW5hdi1jb250ZW50PlxuPC9tYXQtc2lkZW5hdi1jb250YWluZXI+Il19
28
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2hlbGwuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmdzc20tdG9vbGtpdC9zcmMvbGliL3NoZWxsL3NoZWxsLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25nc3NtLXRvb2xraXQvc3JjL2xpYi9zaGVsbC9zaGVsbC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQzs7Ozs7Ozs7Ozs7QUFTMUUsTUFBTSxPQUFPLGNBQWM7SUFOM0I7UUFPa0IsdUJBQWtCLEdBQXdCLEVBQUUsQ0FBQztRQUM3QyxTQUFJLEdBQVcseUJBQXlCLENBQUM7S0FDMUQ7OzJHQUhZLGNBQWM7K0ZBQWQsY0FBYyx1SENUM0IsMnlEQWlDd0I7MkZEeEJYLGNBQWM7a0JBTjFCLFNBQVM7K0JBQ0UsYUFBYSxtQkFHTix1QkFBdUIsQ0FBQyxNQUFNOzhCQUcvQixrQkFBa0I7c0JBQWpDLEtBQUs7Z0JBQ1UsSUFBSTtzQkFBbkIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIElucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBOYXZpZ2F0aW9uU2VjdGlvbiB9IGZyb20gJy4vbmF2aWdhdGlvbi1zZWN0aW9uJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnbmdzc20tc2hlbGwnLFxuICB0ZW1wbGF0ZVVybDogJy4vc2hlbGwuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9zaGVsbC5jb21wb25lbnQuc2NzcyddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxufSlcbmV4cG9ydCBjbGFzcyBTaGVsbENvbXBvbmVudCB7XG4gIEBJbnB1dCgpIHB1YmxpYyBuYXZpZ2F0aW9uU2VjdGlvbnM6IE5hdmlnYXRpb25TZWN0aW9uW10gPSBbXTtcbiAgQElucHV0KCkgcHVibGljIGxvZ286IHN0cmluZyA9ICcuL2Fzc2V0cy9sZW9uby1sb2dvLnBuZyc7XG59XG4iLCI8bWF0LXRvb2xiYXIgY29sb3I9XCJwcmltYXJ5XCIgZnhMYXlvdXQ9XCJyb3dcIiBmeExheW91dEFsaWduPVwiIGNlbnRlclwiPlxuICAgIDxidXR0b24gbWF0LWljb24tYnV0dG9uIChjbGljayk9XCJzaWRlYmFyLnRvZ2dsZSgpXCI+XG4gICAgICAgIDxtYXQtaWNvbiBjbGFzcz1cImZhLXNvbGlkIGZhLWJhcnNcIj48L21hdC1pY29uPlxuICAgIDwvYnV0dG9uPlxuICAgIDxpbWcgW3NyY109XCJsb2dvXCIgaGVpZ2h0PVwiNTBweFwiIC8+XG4gICAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuPC9tYXQtdG9vbGJhcj5cblxuPG1hdC1zaWRlbmF2LWNvbnRhaW5lciBjbGFzcz1cIm5nc3NtLXNoZWxsLW1haW4tY29udGFpbmVyXCIgZnhGbGV4PlxuICAgIDxtYXQtc2lkZW5hdiBtb2RlPVwic2lkZVwiIG9wZW5lZD1cInRydWVcIiAjc2lkZWJhcj5cbiAgICAgICAgPG1hdC1uYXYtbGlzdCBjbGFzcz1cIm5nc3NtLXNoZWxsLW5hdmlnYXRpb24tY29udGFpbmVyXCI+XG4gICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBzZWN0aW9uIG9mIG5hdmlnYXRpb25TZWN0aW9ucztsZXQgbGFzdCA9IGxhc3Q7XCI+XG4gICAgICAgICAgICAgICAgPGEgbWF0U3ViaGVhZGVyIGNsYXNzPVwibmdzc20tc2hlbGwtbmF2aWdhdGlvbi1oZWFkZXJcIiBbcm91dGVyTGlua109XCJzZWN0aW9uLnJvdXRlXCJcbiAgICAgICAgICAgICAgICAgICAgcm91dGVyTGlua0FjdGl2ZT1cImFjdGl2ZS1saW5rXCIgW3JvdXRlckxpbmtBY3RpdmVPcHRpb25zXT1cIntleGFjdDpmYWxzZX1cIj5cbiAgICAgICAgICAgICAgICAgICAgPG1hdC1pY29uIFtjbGFzc109XCJzZWN0aW9uLmljb25DbGFzc1wiICpuZ0lmPVwic2VjdGlvbi5pY29uQ2xhc3NcIj48L21hdC1pY29uPlxuICAgICAgICAgICAgICAgICAgICB7e3NlY3Rpb24ubGFiZWx9fVxuICAgICAgICAgICAgICAgIDwvYT5cbiAgICAgICAgICAgICAgICA8YSBbcm91dGVyTGlua109XCJpdGVtLnJvdXRlXCIgcm91dGVyTGlua0FjdGl2ZT1cImFjdGl2ZS1saW5rXCIgW3JvdXRlckxpbmtBY3RpdmVPcHRpb25zXT1cIntleGFjdDp0cnVlfVwiXG4gICAgICAgICAgICAgICAgICAgIGNsYXNzPVwibmdzc20tc2hlbGwtbmF2aWdhdGlvbi1saW5rXCIgbWF0LWxpc3QtaXRlbSAqbmdGb3I9XCJsZXQgaXRlbSBvZiBzZWN0aW9uLml0ZW1zXCI+XG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJuZ3NzbS1zaGVsbC1uYXZpZ2F0aW9uLWxpbmstY29udGVudFwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgPG1hdC1pY29uIFtjbGFzc109XCJpdGVtLmljb25DbGFzc1wiICpuZ0lmPVwiaXRlbS5pY29uQ2xhc3NcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yPVwie3tpdGVtLmljb25Db2xvciA/PyAncHJpbWFyeSd9fVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9tYXQtaWNvbj5cbiAgICAgICAgICAgICAgICAgICAgICAgIHt7aXRlbS5sYWJlbH19XG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDwvYT5cbiAgICAgICAgICAgICAgICA8bWF0LWRpdmlkZXIgKm5nSWY9XCIhbGFzdFwiPjwvbWF0LWRpdmlkZXI+XG4gICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgPC9tYXQtbmF2LWxpc3Q+XG4gICAgPC9tYXQtc2lkZW5hdj5cbiAgICA8bWF0LXNpZGVuYXYtY29udGVudCBjbGFzcz1cInJvdXRlci1vdXRsZXQtY29udGFpbmVyXCI+XG4gICAgICAgIDxyb3V0ZXItb3V0bGV0Pjwvcm91dGVyLW91dGxldD5cbiAgICA8L21hdC1zaWRlbmF2LWNvbnRlbnQ+XG48L21hdC1zaWRlbmF2LWNvbnRhaW5lcj4iXX0=
@@ -135,10 +135,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.2", ngImpor
135
135
  class NotFoundComponent {
136
136
  }
137
137
  NotFoundComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.2", ngImport: i0, type: NotFoundComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
138
- NotFoundComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.2", type: NotFoundComponent, selector: "ngssm-not-found", ngImport: i0, template: ` <img src="/assets/404-not-found.png" /> `, isInline: true, styles: [":host{display:flex;flex-direction:row;flex:1;align-items:center;justify-content:center}\n"] });
138
+ NotFoundComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.2", type: NotFoundComponent, selector: "ngssm-not-found", ngImport: i0, template: ` <img src="./assets/404-not-found.png" /> `, isInline: true, styles: [":host{display:flex;flex-direction:row;flex:1;align-items:center;justify-content:center}\n"] });
139
139
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.2", ngImport: i0, type: NotFoundComponent, decorators: [{
140
140
  type: Component,
141
- args: [{ selector: 'ngssm-not-found', template: ` <img src="/assets/404-not-found.png" /> `, styles: [":host{display:flex;flex-direction:row;flex:1;align-items:center;justify-content:center}\n"] }]
141
+ args: [{ selector: 'ngssm-not-found', template: ` <img src="./assets/404-not-found.png" /> `, styles: [":host{display:flex;flex-direction:row;flex:1;align-items:center;justify-content:center}\n"] }]
142
142
  }] });
143
143
 
144
144
  class MessageOverlayComponent {
@@ -265,7 +265,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.2", ngImpor
265
265
  class ShellComponent {
266
266
  constructor() {
267
267
  this.navigationSections = [];
268
- this.logo = 'assets/leono-logo.png';
268
+ this.logo = './assets/leono-logo.png';
269
269
  }
270
270
  }
271
271
  ShellComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.2", ngImport: i0, type: ShellComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
@@ -1 +1 @@
1
- {"version":3,"file":"ngssm-toolkit.mjs","sources":["../../../projects/ngssm-toolkit/src/lib/material/material-imports.module.ts","../../../projects/ngssm-toolkit/src/lib/not-found.component.ts","../../../projects/ngssm-toolkit/src/lib/overlay/message-overlay.component.ts","../../../projects/ngssm-toolkit/src/lib/overlay/component-overlay.directive.ts","../../../projects/ngssm-toolkit/src/lib/overlay/empty-overlay.component.ts","../../../projects/ngssm-toolkit/src/lib/shell/shell.component.ts","../../../projects/ngssm-toolkit/src/lib/shell/shell.component.html","../../../projects/ngssm-toolkit/src/lib/ngssm-toolkit.module.ts","../../../projects/ngssm-toolkit/src/lib/logging/log-level.ts","../../../projects/ngssm-toolkit/src/lib/logging/logger.ts","../../../projects/ngssm-toolkit/src/lib/logging/console-appender.ts","../../../projects/ngssm-toolkit/src/lib/default-error-state-matcher.ts","../../../projects/ngssm-toolkit/src/public-api.ts","../../../projects/ngssm-toolkit/src/ngssm-toolkit.ts"],"sourcesContent":["import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { MatToolbarModule } from '@angular/material/toolbar';\nimport { MatSidenavModule } from '@angular/material/sidenav';\nimport { MatButtonModule } from '@angular/material/button';\nimport { MatIconModule } from '@angular/material/icon';\nimport { MatListModule } from '@angular/material/list';\nimport { MatDividerModule } from '@angular/material/divider';\nimport { MatCardModule } from '@angular/material/card';\nimport { MatSlideToggleModule } from '@angular/material/slide-toggle';\nimport { MatFormFieldModule } from '@angular/material/form-field';\nimport { MatRadioModule } from '@angular/material/radio';\nimport { MatSelectModule } from '@angular/material/select';\nimport { MatInputModule } from '@angular/material/input';\nimport { MatTableModule } from '@angular/material/table';\nimport { MatPaginatorModule } from '@angular/material/paginator';\nimport { MatDialogModule } from '@angular/material/dialog';\nimport { MatProgressSpinnerModule } from '@angular/material/progress-spinner';\nimport { MatCheckboxModule } from '@angular/material/checkbox';\nimport { MatTooltipModule } from '@angular/material/tooltip';\nimport { FlexLayoutModule } from '@angular/flex-layout';\n\nconst modules = [\n CommonModule,\n MatToolbarModule,\n MatSidenavModule,\n MatButtonModule,\n MatIconModule,\n MatListModule,\n MatDividerModule,\n MatCardModule,\n MatSlideToggleModule,\n MatFormFieldModule,\n MatRadioModule,\n MatSelectModule,\n MatInputModule,\n MatTableModule,\n MatPaginatorModule,\n MatDialogModule,\n MatProgressSpinnerModule,\n MatCheckboxModule,\n MatTooltipModule,\n FlexLayoutModule\n];\n\n@NgModule({\n declarations: [],\n imports: modules,\n exports: modules\n})\nexport class MaterialImportsModule {}\n","import { Component } from '@angular/core';\n\n@Component({\n selector: 'ngssm-not-found',\n template: ` <img src=\"/assets/404-not-found.png\" /> `,\n styles: [\n `\n :host {\n display: flex;\n flex-direction: row;\n flex: 1;\n align-items: center;\n justify-content: center;\n }\n `\n ]\n})\nexport class NotFoundComponent {}\n","import { Component } from '@angular/core';\nimport { Observable, Subject } from 'rxjs';\n\n@Component({\n selector: 'ngssm-message-overlay',\n template: `\n <mat-card>\n <mat-card-content fxLayout=\"column\" fxLayoutAlign=\"center center\">\n <mat-spinner></mat-spinner>\n {{ message$ | async }}\n </mat-card-content>\n </mat-card>\n `,\n styles: []\n})\nexport class MessageOverlayComponent {\n public message$: Observable<string> = new Subject<string>();\n}\n","import {\n Overlay,\n OverlayKeyboardDispatcher,\n OverlayOutsideClickDispatcher,\n OverlayPositionBuilder,\n OverlayRef,\n ScrollStrategyOptions\n} from '@angular/cdk/overlay';\nimport { DOCUMENT } from '@angular/common';\nimport {\n AfterViewInit,\n ComponentFactoryResolver,\n Directive,\n ElementRef,\n Inject,\n Injector,\n Input,\n NgZone,\n OnDestroy,\n Renderer2,\n TemplateRef,\n ViewContainerRef\n} from '@angular/core';\nimport { Location } from '@angular/common';\nimport { Directionality } from '@angular/cdk/bidi';\nimport { ComponentPortal, ComponentType, TemplatePortal } from '@angular/cdk/portal';\nimport { BehaviorSubject, Subject, takeUntil } from 'rxjs';\n\nimport { MessageOverlayComponent } from './message-overlay.component';\n\n@Directive({\n // eslint-disable-next-line @angular-eslint/directive-selector\n selector: '[displayOverlay]'\n})\nexport class ComponentOverlayDirective implements OnDestroy, AfterViewInit {\n private readonly unSubscribeAll$ = new Subject<void>();\n private readonly _displayOverlay$ = new BehaviorSubject<boolean>(false);\n private readonly _overlayMessage$ = new BehaviorSubject<string>('Please wait');\n\n private overlay: Overlay;\n private overlayRef: OverlayRef;\n\n constructor(\n private elementRef: ElementRef,\n private viewContainerRef: ViewContainerRef,\n @Inject(DOCUMENT) document: any,\n scrollStrategies: ScrollStrategyOptions,\n // eslint-disable-next-line deprecation/deprecation\n componentFactoryResolver: ComponentFactoryResolver,\n positionBuilder: OverlayPositionBuilder,\n keyboardDispatcher: OverlayKeyboardDispatcher,\n injector: Injector,\n ngZone: NgZone,\n directionality: Directionality,\n location: Location,\n outsideClickDispatcher: OverlayOutsideClickDispatcher,\n renderer: Renderer2\n ) {\n renderer.setStyle(this.elementRef.nativeElement, 'position', 'relative');\n const container = {\n getContainerElement: () => this.elementRef.nativeElement\n };\n\n this.overlay = new Overlay(\n scrollStrategies,\n container as any,\n componentFactoryResolver,\n positionBuilder,\n keyboardDispatcher,\n injector,\n ngZone,\n document,\n directionality,\n location,\n outsideClickDispatcher\n );\n\n this.overlayRef = this.overlay.create({\n positionStrategy: this.overlay.position().global().centerHorizontally().centerVertically(),\n hasBackdrop: true\n });\n }\n\n // eslint-disable-next-line @angular-eslint/no-input-rename\n @Input('overlayTemplate') overLayTemplate: TemplateRef<any> | undefined;\n\n @Input() overlayComponent: ComponentType<any> | undefined;\n\n @Input() public set overlayMessage(value: string) {\n this._overlayMessage$.next(value);\n }\n\n @Input('displayOverlay') public set dispalyOverlay(value: boolean) {\n this._displayOverlay$.next(value);\n }\n\n public ngAfterViewInit(): void {\n this._displayOverlay$.pipe(takeUntil(this.unSubscribeAll$)).subscribe((v) => {\n if (v) {\n this.showOverlay();\n } else {\n this.hideOverlay();\n }\n });\n }\n\n public ngOnDestroy(): void {\n this.unSubscribeAll$.next();\n this.unSubscribeAll$.complete();\n if (this._displayOverlay$.getValue()) {\n this.overlayRef.detach();\n }\n }\n\n private showOverlay(): void {\n if (this.overLayTemplate) {\n this.overlayRef.attach(new TemplatePortal(this.overLayTemplate, this.viewContainerRef));\n } else if (this.overlayComponent) {\n const ref = this.overlayRef.attach(new ComponentPortal(this.overlayComponent));\n if (this.overlayComponent === MessageOverlayComponent) {\n ref.instance.message$ = this._overlayMessage$.asObservable();\n }\n } else {\n const ref = this.overlayRef.attach(new ComponentPortal(MessageOverlayComponent));\n ref.instance.message$ = this._overlayMessage$.asObservable();\n }\n }\n\n private hideOverlay(): void {\n this.overlayRef.detach();\n }\n}\n","import { Component } from '@angular/core';\n\n@Component({\n selector: 'ngssm-empty-overlay',\n template: ``,\n styles: []\n})\nexport class EmptyOverlayComponent {}\n","import { ChangeDetectionStrategy, Component, Input } from '@angular/core';\nimport { NavigationSection } from './navigation-section';\n\n@Component({\n selector: 'ngssm-shell',\n templateUrl: './shell.component.html',\n styleUrls: ['./shell.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class ShellComponent {\n @Input() public navigationSections: NavigationSection[] = [];\n @Input() public logo: string = 'assets/leono-logo.png';\n}\n","<mat-toolbar color=\"primary\" fxLayout=\"row\" fxLayoutAlign=\" center\">\n <button mat-icon-button (click)=\"sidebar.toggle()\">\n <mat-icon class=\"fa-solid fa-bars\"></mat-icon>\n </button>\n <img [src]=\"logo\" height=\"50px\" />\n <ng-content></ng-content>\n</mat-toolbar>\n\n<mat-sidenav-container class=\"ngssm-shell-main-container\" fxFlex>\n <mat-sidenav mode=\"side\" opened=\"true\" #sidebar>\n <mat-nav-list class=\"ngssm-shell-navigation-container\">\n <ng-container *ngFor=\"let section of navigationSections;let last = last;\">\n <a matSubheader class=\"ngssm-shell-navigation-header\" [routerLink]=\"section.route\"\n routerLinkActive=\"active-link\" [routerLinkActiveOptions]=\"{exact:false}\">\n <mat-icon [class]=\"section.iconClass\" *ngIf=\"section.iconClass\"></mat-icon>\n {{section.label}}\n </a>\n <a [routerLink]=\"item.route\" routerLinkActive=\"active-link\" [routerLinkActiveOptions]=\"{exact:true}\"\n class=\"ngssm-shell-navigation-link\" mat-list-item *ngFor=\"let item of section.items\">\n <div class=\"ngssm-shell-navigation-link-content\">\n <mat-icon [class]=\"item.iconClass\" *ngIf=\"item.iconClass\"\n color=\"{{item.iconColor ?? 'primary'}}\">\n </mat-icon>\n {{item.label}}\n </div>\n </a>\n <mat-divider *ngIf=\"!last\"></mat-divider>\n </ng-container>\n </mat-nav-list>\n </mat-sidenav>\n <mat-sidenav-content class=\"router-outlet-container\">\n <router-outlet></router-outlet>\n </mat-sidenav-content>\n</mat-sidenav-container>","import { NgModule } from '@angular/core';\nimport { RouterModule } from '@angular/router';\n\nimport { MaterialImportsModule } from './material';\nimport { NotFoundComponent } from './not-found.component';\nimport { ComponentOverlayDirective, EmptyOverlayComponent, MessageOverlayComponent } from './overlay';\nimport { ShellComponent } from './shell';\n\n@NgModule({\n declarations: [ShellComponent, ComponentOverlayDirective, MessageOverlayComponent, EmptyOverlayComponent, NotFoundComponent],\n imports: [RouterModule, MaterialImportsModule],\n exports: [ShellComponent, ComponentOverlayDirective]\n})\nexport class NgssmToolkitModule {}\n","export enum LogLevel {\n debug = 'Debug',\n information = 'Information',\n error = 'Error'\n}\n","import { Injectable } from '@angular/core';\nimport { Observable, Subject } from 'rxjs';\n\nimport { LogEvent } from './log-event';\nimport { LogLevel } from './log-level';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class Logger {\n private readonly _logEvents$ = new Subject<LogEvent>();\n\n public get logEvents$(): Observable<LogEvent> {\n return this._logEvents$.asObservable();\n }\n\n public debug(message: string, payload?: any): void {\n this.log(LogLevel.debug, message, payload);\n }\n\n public information(message: string, payload?: any): void {\n this.log(LogLevel.information, message, payload);\n }\n\n public error(message: string, payload?: any): void {\n this.log(LogLevel.error, message, payload);\n }\n\n public log(level: LogLevel, message: string, payload?: any): void {\n this._logEvents$.next({\n level,\n message,\n payload\n });\n }\n}\n","import { Injectable } from '@angular/core';\nimport { Subject, takeUntil } from 'rxjs';\nimport { Logger } from './logger';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class ConsoleAppender {\n private readonly stopEvent$ = new Subject<boolean>();\n\n constructor(private logger: Logger) {}\n\n public start(): void {\n this.logger.logEvents$.pipe(takeUntil(this.stopEvent$)).subscribe((logEvent) => {\n if (logEvent.payload) {\n console.log(`[${logEvent.level}] ${logEvent.message}`, logEvent.payload);\n } else {\n console.log(`[${logEvent.level}] ${logEvent.message}`);\n }\n });\n }\n\n public stop(): void {\n this.stopEvent$.next(true);\n }\n}\n","import { Provider } from '@angular/core';\nimport { FormControl, FormGroupDirective, NgForm } from '@angular/forms';\nimport { ErrorStateMatcher } from '@angular/material/core';\n\nexport class DefaultErrorStateMatcher implements ErrorStateMatcher {\n isErrorState(control: FormControl | null, form: FormGroupDirective | NgForm | null): boolean {\n return !!(control && control.invalid);\n }\n}\n\nexport const useDefaultErrorStateMatcher: Provider = { provide: ErrorStateMatcher, useClass: DefaultErrorStateMatcher };\n","/*\n * Public API Surface of ngssm-toolkit\n */\n\nexport * from './lib/ngssm-toolkit.module';\nexport * from './lib/logging';\nexport * from './lib/shell';\nexport * from './lib/material';\nexport * from './lib/overlay';\nexport * from './lib/default-error-state-matcher';\nexport * from './lib/not-found.component';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i3","i4","i1","i2","i1.Logger"],"mappings":"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"}
1
+ {"version":3,"file":"ngssm-toolkit.mjs","sources":["../../../projects/ngssm-toolkit/src/lib/material/material-imports.module.ts","../../../projects/ngssm-toolkit/src/lib/not-found.component.ts","../../../projects/ngssm-toolkit/src/lib/overlay/message-overlay.component.ts","../../../projects/ngssm-toolkit/src/lib/overlay/component-overlay.directive.ts","../../../projects/ngssm-toolkit/src/lib/overlay/empty-overlay.component.ts","../../../projects/ngssm-toolkit/src/lib/shell/shell.component.ts","../../../projects/ngssm-toolkit/src/lib/shell/shell.component.html","../../../projects/ngssm-toolkit/src/lib/ngssm-toolkit.module.ts","../../../projects/ngssm-toolkit/src/lib/logging/log-level.ts","../../../projects/ngssm-toolkit/src/lib/logging/logger.ts","../../../projects/ngssm-toolkit/src/lib/logging/console-appender.ts","../../../projects/ngssm-toolkit/src/lib/default-error-state-matcher.ts","../../../projects/ngssm-toolkit/src/public-api.ts","../../../projects/ngssm-toolkit/src/ngssm-toolkit.ts"],"sourcesContent":["import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { MatToolbarModule } from '@angular/material/toolbar';\nimport { MatSidenavModule } from '@angular/material/sidenav';\nimport { MatButtonModule } from '@angular/material/button';\nimport { MatIconModule } from '@angular/material/icon';\nimport { MatListModule } from '@angular/material/list';\nimport { MatDividerModule } from '@angular/material/divider';\nimport { MatCardModule } from '@angular/material/card';\nimport { MatSlideToggleModule } from '@angular/material/slide-toggle';\nimport { MatFormFieldModule } from '@angular/material/form-field';\nimport { MatRadioModule } from '@angular/material/radio';\nimport { MatSelectModule } from '@angular/material/select';\nimport { MatInputModule } from '@angular/material/input';\nimport { MatTableModule } from '@angular/material/table';\nimport { MatPaginatorModule } from '@angular/material/paginator';\nimport { MatDialogModule } from '@angular/material/dialog';\nimport { MatProgressSpinnerModule } from '@angular/material/progress-spinner';\nimport { MatCheckboxModule } from '@angular/material/checkbox';\nimport { MatTooltipModule } from '@angular/material/tooltip';\nimport { FlexLayoutModule } from '@angular/flex-layout';\n\nconst modules = [\n CommonModule,\n MatToolbarModule,\n MatSidenavModule,\n MatButtonModule,\n MatIconModule,\n MatListModule,\n MatDividerModule,\n MatCardModule,\n MatSlideToggleModule,\n MatFormFieldModule,\n MatRadioModule,\n MatSelectModule,\n MatInputModule,\n MatTableModule,\n MatPaginatorModule,\n MatDialogModule,\n MatProgressSpinnerModule,\n MatCheckboxModule,\n MatTooltipModule,\n FlexLayoutModule\n];\n\n@NgModule({\n declarations: [],\n imports: modules,\n exports: modules\n})\nexport class MaterialImportsModule {}\n","import { Component } from '@angular/core';\n\n@Component({\n selector: 'ngssm-not-found',\n template: ` <img src=\"./assets/404-not-found.png\" /> `,\n styles: [\n `\n :host {\n display: flex;\n flex-direction: row;\n flex: 1;\n align-items: center;\n justify-content: center;\n }\n `\n ]\n})\nexport class NotFoundComponent {}\n","import { Component } from '@angular/core';\nimport { Observable, Subject } from 'rxjs';\n\n@Component({\n selector: 'ngssm-message-overlay',\n template: `\n <mat-card>\n <mat-card-content fxLayout=\"column\" fxLayoutAlign=\"center center\">\n <mat-spinner></mat-spinner>\n {{ message$ | async }}\n </mat-card-content>\n </mat-card>\n `,\n styles: []\n})\nexport class MessageOverlayComponent {\n public message$: Observable<string> = new Subject<string>();\n}\n","import {\n Overlay,\n OverlayKeyboardDispatcher,\n OverlayOutsideClickDispatcher,\n OverlayPositionBuilder,\n OverlayRef,\n ScrollStrategyOptions\n} from '@angular/cdk/overlay';\nimport { DOCUMENT } from '@angular/common';\nimport {\n AfterViewInit,\n ComponentFactoryResolver,\n Directive,\n ElementRef,\n Inject,\n Injector,\n Input,\n NgZone,\n OnDestroy,\n Renderer2,\n TemplateRef,\n ViewContainerRef\n} from '@angular/core';\nimport { Location } from '@angular/common';\nimport { Directionality } from '@angular/cdk/bidi';\nimport { ComponentPortal, ComponentType, TemplatePortal } from '@angular/cdk/portal';\nimport { BehaviorSubject, Subject, takeUntil } from 'rxjs';\n\nimport { MessageOverlayComponent } from './message-overlay.component';\n\n@Directive({\n // eslint-disable-next-line @angular-eslint/directive-selector\n selector: '[displayOverlay]'\n})\nexport class ComponentOverlayDirective implements OnDestroy, AfterViewInit {\n private readonly unSubscribeAll$ = new Subject<void>();\n private readonly _displayOverlay$ = new BehaviorSubject<boolean>(false);\n private readonly _overlayMessage$ = new BehaviorSubject<string>('Please wait');\n\n private overlay: Overlay;\n private overlayRef: OverlayRef;\n\n constructor(\n private elementRef: ElementRef,\n private viewContainerRef: ViewContainerRef,\n @Inject(DOCUMENT) document: any,\n scrollStrategies: ScrollStrategyOptions,\n // eslint-disable-next-line deprecation/deprecation\n componentFactoryResolver: ComponentFactoryResolver,\n positionBuilder: OverlayPositionBuilder,\n keyboardDispatcher: OverlayKeyboardDispatcher,\n injector: Injector,\n ngZone: NgZone,\n directionality: Directionality,\n location: Location,\n outsideClickDispatcher: OverlayOutsideClickDispatcher,\n renderer: Renderer2\n ) {\n renderer.setStyle(this.elementRef.nativeElement, 'position', 'relative');\n const container = {\n getContainerElement: () => this.elementRef.nativeElement\n };\n\n this.overlay = new Overlay(\n scrollStrategies,\n container as any,\n componentFactoryResolver,\n positionBuilder,\n keyboardDispatcher,\n injector,\n ngZone,\n document,\n directionality,\n location,\n outsideClickDispatcher\n );\n\n this.overlayRef = this.overlay.create({\n positionStrategy: this.overlay.position().global().centerHorizontally().centerVertically(),\n hasBackdrop: true\n });\n }\n\n // eslint-disable-next-line @angular-eslint/no-input-rename\n @Input('overlayTemplate') overLayTemplate: TemplateRef<any> | undefined;\n\n @Input() overlayComponent: ComponentType<any> | undefined;\n\n @Input() public set overlayMessage(value: string) {\n this._overlayMessage$.next(value);\n }\n\n @Input('displayOverlay') public set dispalyOverlay(value: boolean) {\n this._displayOverlay$.next(value);\n }\n\n public ngAfterViewInit(): void {\n this._displayOverlay$.pipe(takeUntil(this.unSubscribeAll$)).subscribe((v) => {\n if (v) {\n this.showOverlay();\n } else {\n this.hideOverlay();\n }\n });\n }\n\n public ngOnDestroy(): void {\n this.unSubscribeAll$.next();\n this.unSubscribeAll$.complete();\n if (this._displayOverlay$.getValue()) {\n this.overlayRef.detach();\n }\n }\n\n private showOverlay(): void {\n if (this.overLayTemplate) {\n this.overlayRef.attach(new TemplatePortal(this.overLayTemplate, this.viewContainerRef));\n } else if (this.overlayComponent) {\n const ref = this.overlayRef.attach(new ComponentPortal(this.overlayComponent));\n if (this.overlayComponent === MessageOverlayComponent) {\n ref.instance.message$ = this._overlayMessage$.asObservable();\n }\n } else {\n const ref = this.overlayRef.attach(new ComponentPortal(MessageOverlayComponent));\n ref.instance.message$ = this._overlayMessage$.asObservable();\n }\n }\n\n private hideOverlay(): void {\n this.overlayRef.detach();\n }\n}\n","import { Component } from '@angular/core';\n\n@Component({\n selector: 'ngssm-empty-overlay',\n template: ``,\n styles: []\n})\nexport class EmptyOverlayComponent {}\n","import { ChangeDetectionStrategy, Component, Input } from '@angular/core';\nimport { NavigationSection } from './navigation-section';\n\n@Component({\n selector: 'ngssm-shell',\n templateUrl: './shell.component.html',\n styleUrls: ['./shell.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class ShellComponent {\n @Input() public navigationSections: NavigationSection[] = [];\n @Input() public logo: string = './assets/leono-logo.png';\n}\n","<mat-toolbar color=\"primary\" fxLayout=\"row\" fxLayoutAlign=\" center\">\n <button mat-icon-button (click)=\"sidebar.toggle()\">\n <mat-icon class=\"fa-solid fa-bars\"></mat-icon>\n </button>\n <img [src]=\"logo\" height=\"50px\" />\n <ng-content></ng-content>\n</mat-toolbar>\n\n<mat-sidenav-container class=\"ngssm-shell-main-container\" fxFlex>\n <mat-sidenav mode=\"side\" opened=\"true\" #sidebar>\n <mat-nav-list class=\"ngssm-shell-navigation-container\">\n <ng-container *ngFor=\"let section of navigationSections;let last = last;\">\n <a matSubheader class=\"ngssm-shell-navigation-header\" [routerLink]=\"section.route\"\n routerLinkActive=\"active-link\" [routerLinkActiveOptions]=\"{exact:false}\">\n <mat-icon [class]=\"section.iconClass\" *ngIf=\"section.iconClass\"></mat-icon>\n {{section.label}}\n </a>\n <a [routerLink]=\"item.route\" routerLinkActive=\"active-link\" [routerLinkActiveOptions]=\"{exact:true}\"\n class=\"ngssm-shell-navigation-link\" mat-list-item *ngFor=\"let item of section.items\">\n <div class=\"ngssm-shell-navigation-link-content\">\n <mat-icon [class]=\"item.iconClass\" *ngIf=\"item.iconClass\"\n color=\"{{item.iconColor ?? 'primary'}}\">\n </mat-icon>\n {{item.label}}\n </div>\n </a>\n <mat-divider *ngIf=\"!last\"></mat-divider>\n </ng-container>\n </mat-nav-list>\n </mat-sidenav>\n <mat-sidenav-content class=\"router-outlet-container\">\n <router-outlet></router-outlet>\n </mat-sidenav-content>\n</mat-sidenav-container>","import { NgModule } from '@angular/core';\nimport { RouterModule } from '@angular/router';\n\nimport { MaterialImportsModule } from './material';\nimport { NotFoundComponent } from './not-found.component';\nimport { ComponentOverlayDirective, EmptyOverlayComponent, MessageOverlayComponent } from './overlay';\nimport { ShellComponent } from './shell';\n\n@NgModule({\n declarations: [ShellComponent, ComponentOverlayDirective, MessageOverlayComponent, EmptyOverlayComponent, NotFoundComponent],\n imports: [RouterModule, MaterialImportsModule],\n exports: [ShellComponent, ComponentOverlayDirective]\n})\nexport class NgssmToolkitModule {}\n","export enum LogLevel {\n debug = 'Debug',\n information = 'Information',\n error = 'Error'\n}\n","import { Injectable } from '@angular/core';\nimport { Observable, Subject } from 'rxjs';\n\nimport { LogEvent } from './log-event';\nimport { LogLevel } from './log-level';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class Logger {\n private readonly _logEvents$ = new Subject<LogEvent>();\n\n public get logEvents$(): Observable<LogEvent> {\n return this._logEvents$.asObservable();\n }\n\n public debug(message: string, payload?: any): void {\n this.log(LogLevel.debug, message, payload);\n }\n\n public information(message: string, payload?: any): void {\n this.log(LogLevel.information, message, payload);\n }\n\n public error(message: string, payload?: any): void {\n this.log(LogLevel.error, message, payload);\n }\n\n public log(level: LogLevel, message: string, payload?: any): void {\n this._logEvents$.next({\n level,\n message,\n payload\n });\n }\n}\n","import { Injectable } from '@angular/core';\nimport { Subject, takeUntil } from 'rxjs';\nimport { Logger } from './logger';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class ConsoleAppender {\n private readonly stopEvent$ = new Subject<boolean>();\n\n constructor(private logger: Logger) {}\n\n public start(): void {\n this.logger.logEvents$.pipe(takeUntil(this.stopEvent$)).subscribe((logEvent) => {\n if (logEvent.payload) {\n console.log(`[${logEvent.level}] ${logEvent.message}`, logEvent.payload);\n } else {\n console.log(`[${logEvent.level}] ${logEvent.message}`);\n }\n });\n }\n\n public stop(): void {\n this.stopEvent$.next(true);\n }\n}\n","import { Provider } from '@angular/core';\nimport { FormControl, FormGroupDirective, NgForm } from '@angular/forms';\nimport { ErrorStateMatcher } from '@angular/material/core';\n\nexport class DefaultErrorStateMatcher implements ErrorStateMatcher {\n isErrorState(control: FormControl | null, form: FormGroupDirective | NgForm | null): boolean {\n return !!(control && control.invalid);\n }\n}\n\nexport const useDefaultErrorStateMatcher: Provider = { provide: ErrorStateMatcher, useClass: DefaultErrorStateMatcher };\n","/*\n * Public API Surface of ngssm-toolkit\n */\n\nexport * from './lib/ngssm-toolkit.module';\nexport * from './lib/logging';\nexport * from './lib/shell';\nexport * from './lib/material';\nexport * from './lib/overlay';\nexport * from './lib/default-error-state-matcher';\nexport * from './lib/not-found.component';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i3","i4","i1","i2","i1.Logger"],"mappings":"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"}
@@ -135,10 +135,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.2", ngImpor
135
135
  class NotFoundComponent {
136
136
  }
137
137
  NotFoundComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.2", ngImport: i0, type: NotFoundComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
138
- NotFoundComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.2", type: NotFoundComponent, selector: "ngssm-not-found", ngImport: i0, template: ` <img src="/assets/404-not-found.png" /> `, isInline: true, styles: [":host{display:flex;flex-direction:row;flex:1;align-items:center;justify-content:center}\n"] });
138
+ NotFoundComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.2", type: NotFoundComponent, selector: "ngssm-not-found", ngImport: i0, template: ` <img src="./assets/404-not-found.png" /> `, isInline: true, styles: [":host{display:flex;flex-direction:row;flex:1;align-items:center;justify-content:center}\n"] });
139
139
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.2", ngImport: i0, type: NotFoundComponent, decorators: [{
140
140
  type: Component,
141
- args: [{ selector: 'ngssm-not-found', template: ` <img src="/assets/404-not-found.png" /> `, styles: [":host{display:flex;flex-direction:row;flex:1;align-items:center;justify-content:center}\n"] }]
141
+ args: [{ selector: 'ngssm-not-found', template: ` <img src="./assets/404-not-found.png" /> `, styles: [":host{display:flex;flex-direction:row;flex:1;align-items:center;justify-content:center}\n"] }]
142
142
  }] });
143
143
 
144
144
  class MessageOverlayComponent {
@@ -263,7 +263,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.2", ngImpor
263
263
  class ShellComponent {
264
264
  constructor() {
265
265
  this.navigationSections = [];
266
- this.logo = 'assets/leono-logo.png';
266
+ this.logo = './assets/leono-logo.png';
267
267
  }
268
268
  }
269
269
  ShellComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.2", ngImport: i0, type: ShellComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
@@ -1 +1 @@
1
- {"version":3,"file":"ngssm-toolkit.mjs","sources":["../../../projects/ngssm-toolkit/src/lib/material/material-imports.module.ts","../../../projects/ngssm-toolkit/src/lib/not-found.component.ts","../../../projects/ngssm-toolkit/src/lib/overlay/message-overlay.component.ts","../../../projects/ngssm-toolkit/src/lib/overlay/component-overlay.directive.ts","../../../projects/ngssm-toolkit/src/lib/overlay/empty-overlay.component.ts","../../../projects/ngssm-toolkit/src/lib/shell/shell.component.ts","../../../projects/ngssm-toolkit/src/lib/shell/shell.component.html","../../../projects/ngssm-toolkit/src/lib/ngssm-toolkit.module.ts","../../../projects/ngssm-toolkit/src/lib/logging/log-level.ts","../../../projects/ngssm-toolkit/src/lib/logging/logger.ts","../../../projects/ngssm-toolkit/src/lib/logging/console-appender.ts","../../../projects/ngssm-toolkit/src/lib/default-error-state-matcher.ts","../../../projects/ngssm-toolkit/src/public-api.ts","../../../projects/ngssm-toolkit/src/ngssm-toolkit.ts"],"sourcesContent":["import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { MatToolbarModule } from '@angular/material/toolbar';\nimport { MatSidenavModule } from '@angular/material/sidenav';\nimport { MatButtonModule } from '@angular/material/button';\nimport { MatIconModule } from '@angular/material/icon';\nimport { MatListModule } from '@angular/material/list';\nimport { MatDividerModule } from '@angular/material/divider';\nimport { MatCardModule } from '@angular/material/card';\nimport { MatSlideToggleModule } from '@angular/material/slide-toggle';\nimport { MatFormFieldModule } from '@angular/material/form-field';\nimport { MatRadioModule } from '@angular/material/radio';\nimport { MatSelectModule } from '@angular/material/select';\nimport { MatInputModule } from '@angular/material/input';\nimport { MatTableModule } from '@angular/material/table';\nimport { MatPaginatorModule } from '@angular/material/paginator';\nimport { MatDialogModule } from '@angular/material/dialog';\nimport { MatProgressSpinnerModule } from '@angular/material/progress-spinner';\nimport { MatCheckboxModule } from '@angular/material/checkbox';\nimport { MatTooltipModule } from '@angular/material/tooltip';\nimport { FlexLayoutModule } from '@angular/flex-layout';\n\nconst modules = [\n CommonModule,\n MatToolbarModule,\n MatSidenavModule,\n MatButtonModule,\n MatIconModule,\n MatListModule,\n MatDividerModule,\n MatCardModule,\n MatSlideToggleModule,\n MatFormFieldModule,\n MatRadioModule,\n MatSelectModule,\n MatInputModule,\n MatTableModule,\n MatPaginatorModule,\n MatDialogModule,\n MatProgressSpinnerModule,\n MatCheckboxModule,\n MatTooltipModule,\n FlexLayoutModule\n];\n\n@NgModule({\n declarations: [],\n imports: modules,\n exports: modules\n})\nexport class MaterialImportsModule {}\n","import { Component } from '@angular/core';\n\n@Component({\n selector: 'ngssm-not-found',\n template: ` <img src=\"/assets/404-not-found.png\" /> `,\n styles: [\n `\n :host {\n display: flex;\n flex-direction: row;\n flex: 1;\n align-items: center;\n justify-content: center;\n }\n `\n ]\n})\nexport class NotFoundComponent {}\n","import { Component } from '@angular/core';\nimport { Observable, Subject } from 'rxjs';\n\n@Component({\n selector: 'ngssm-message-overlay',\n template: `\n <mat-card>\n <mat-card-content fxLayout=\"column\" fxLayoutAlign=\"center center\">\n <mat-spinner></mat-spinner>\n {{ message$ | async }}\n </mat-card-content>\n </mat-card>\n `,\n styles: []\n})\nexport class MessageOverlayComponent {\n public message$: Observable<string> = new Subject<string>();\n}\n","import {\n Overlay,\n OverlayKeyboardDispatcher,\n OverlayOutsideClickDispatcher,\n OverlayPositionBuilder,\n OverlayRef,\n ScrollStrategyOptions\n} from '@angular/cdk/overlay';\nimport { DOCUMENT } from '@angular/common';\nimport {\n AfterViewInit,\n ComponentFactoryResolver,\n Directive,\n ElementRef,\n Inject,\n Injector,\n Input,\n NgZone,\n OnDestroy,\n Renderer2,\n TemplateRef,\n ViewContainerRef\n} from '@angular/core';\nimport { Location } from '@angular/common';\nimport { Directionality } from '@angular/cdk/bidi';\nimport { ComponentPortal, ComponentType, TemplatePortal } from '@angular/cdk/portal';\nimport { BehaviorSubject, Subject, takeUntil } from 'rxjs';\n\nimport { MessageOverlayComponent } from './message-overlay.component';\n\n@Directive({\n // eslint-disable-next-line @angular-eslint/directive-selector\n selector: '[displayOverlay]'\n})\nexport class ComponentOverlayDirective implements OnDestroy, AfterViewInit {\n private readonly unSubscribeAll$ = new Subject<void>();\n private readonly _displayOverlay$ = new BehaviorSubject<boolean>(false);\n private readonly _overlayMessage$ = new BehaviorSubject<string>('Please wait');\n\n private overlay: Overlay;\n private overlayRef: OverlayRef;\n\n constructor(\n private elementRef: ElementRef,\n private viewContainerRef: ViewContainerRef,\n @Inject(DOCUMENT) document: any,\n scrollStrategies: ScrollStrategyOptions,\n // eslint-disable-next-line deprecation/deprecation\n componentFactoryResolver: ComponentFactoryResolver,\n positionBuilder: OverlayPositionBuilder,\n keyboardDispatcher: OverlayKeyboardDispatcher,\n injector: Injector,\n ngZone: NgZone,\n directionality: Directionality,\n location: Location,\n outsideClickDispatcher: OverlayOutsideClickDispatcher,\n renderer: Renderer2\n ) {\n renderer.setStyle(this.elementRef.nativeElement, 'position', 'relative');\n const container = {\n getContainerElement: () => this.elementRef.nativeElement\n };\n\n this.overlay = new Overlay(\n scrollStrategies,\n container as any,\n componentFactoryResolver,\n positionBuilder,\n keyboardDispatcher,\n injector,\n ngZone,\n document,\n directionality,\n location,\n outsideClickDispatcher\n );\n\n this.overlayRef = this.overlay.create({\n positionStrategy: this.overlay.position().global().centerHorizontally().centerVertically(),\n hasBackdrop: true\n });\n }\n\n // eslint-disable-next-line @angular-eslint/no-input-rename\n @Input('overlayTemplate') overLayTemplate: TemplateRef<any> | undefined;\n\n @Input() overlayComponent: ComponentType<any> | undefined;\n\n @Input() public set overlayMessage(value: string) {\n this._overlayMessage$.next(value);\n }\n\n @Input('displayOverlay') public set dispalyOverlay(value: boolean) {\n this._displayOverlay$.next(value);\n }\n\n public ngAfterViewInit(): void {\n this._displayOverlay$.pipe(takeUntil(this.unSubscribeAll$)).subscribe((v) => {\n if (v) {\n this.showOverlay();\n } else {\n this.hideOverlay();\n }\n });\n }\n\n public ngOnDestroy(): void {\n this.unSubscribeAll$.next();\n this.unSubscribeAll$.complete();\n if (this._displayOverlay$.getValue()) {\n this.overlayRef.detach();\n }\n }\n\n private showOverlay(): void {\n if (this.overLayTemplate) {\n this.overlayRef.attach(new TemplatePortal(this.overLayTemplate, this.viewContainerRef));\n } else if (this.overlayComponent) {\n const ref = this.overlayRef.attach(new ComponentPortal(this.overlayComponent));\n if (this.overlayComponent === MessageOverlayComponent) {\n ref.instance.message$ = this._overlayMessage$.asObservable();\n }\n } else {\n const ref = this.overlayRef.attach(new ComponentPortal(MessageOverlayComponent));\n ref.instance.message$ = this._overlayMessage$.asObservable();\n }\n }\n\n private hideOverlay(): void {\n this.overlayRef.detach();\n }\n}\n","import { Component } from '@angular/core';\n\n@Component({\n selector: 'ngssm-empty-overlay',\n template: ``,\n styles: []\n})\nexport class EmptyOverlayComponent {}\n","import { ChangeDetectionStrategy, Component, Input } from '@angular/core';\nimport { NavigationSection } from './navigation-section';\n\n@Component({\n selector: 'ngssm-shell',\n templateUrl: './shell.component.html',\n styleUrls: ['./shell.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class ShellComponent {\n @Input() public navigationSections: NavigationSection[] = [];\n @Input() public logo: string = 'assets/leono-logo.png';\n}\n","<mat-toolbar color=\"primary\" fxLayout=\"row\" fxLayoutAlign=\" center\">\n <button mat-icon-button (click)=\"sidebar.toggle()\">\n <mat-icon class=\"fa-solid fa-bars\"></mat-icon>\n </button>\n <img [src]=\"logo\" height=\"50px\" />\n <ng-content></ng-content>\n</mat-toolbar>\n\n<mat-sidenav-container class=\"ngssm-shell-main-container\" fxFlex>\n <mat-sidenav mode=\"side\" opened=\"true\" #sidebar>\n <mat-nav-list class=\"ngssm-shell-navigation-container\">\n <ng-container *ngFor=\"let section of navigationSections;let last = last;\">\n <a matSubheader class=\"ngssm-shell-navigation-header\" [routerLink]=\"section.route\"\n routerLinkActive=\"active-link\" [routerLinkActiveOptions]=\"{exact:false}\">\n <mat-icon [class]=\"section.iconClass\" *ngIf=\"section.iconClass\"></mat-icon>\n {{section.label}}\n </a>\n <a [routerLink]=\"item.route\" routerLinkActive=\"active-link\" [routerLinkActiveOptions]=\"{exact:true}\"\n class=\"ngssm-shell-navigation-link\" mat-list-item *ngFor=\"let item of section.items\">\n <div class=\"ngssm-shell-navigation-link-content\">\n <mat-icon [class]=\"item.iconClass\" *ngIf=\"item.iconClass\"\n color=\"{{item.iconColor ?? 'primary'}}\">\n </mat-icon>\n {{item.label}}\n </div>\n </a>\n <mat-divider *ngIf=\"!last\"></mat-divider>\n </ng-container>\n </mat-nav-list>\n </mat-sidenav>\n <mat-sidenav-content class=\"router-outlet-container\">\n <router-outlet></router-outlet>\n </mat-sidenav-content>\n</mat-sidenav-container>","import { NgModule } from '@angular/core';\nimport { RouterModule } from '@angular/router';\n\nimport { MaterialImportsModule } from './material';\nimport { NotFoundComponent } from './not-found.component';\nimport { ComponentOverlayDirective, EmptyOverlayComponent, MessageOverlayComponent } from './overlay';\nimport { ShellComponent } from './shell';\n\n@NgModule({\n declarations: [ShellComponent, ComponentOverlayDirective, MessageOverlayComponent, EmptyOverlayComponent, NotFoundComponent],\n imports: [RouterModule, MaterialImportsModule],\n exports: [ShellComponent, ComponentOverlayDirective]\n})\nexport class NgssmToolkitModule {}\n","export enum LogLevel {\n debug = 'Debug',\n information = 'Information',\n error = 'Error'\n}\n","import { Injectable } from '@angular/core';\nimport { Observable, Subject } from 'rxjs';\n\nimport { LogEvent } from './log-event';\nimport { LogLevel } from './log-level';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class Logger {\n private readonly _logEvents$ = new Subject<LogEvent>();\n\n public get logEvents$(): Observable<LogEvent> {\n return this._logEvents$.asObservable();\n }\n\n public debug(message: string, payload?: any): void {\n this.log(LogLevel.debug, message, payload);\n }\n\n public information(message: string, payload?: any): void {\n this.log(LogLevel.information, message, payload);\n }\n\n public error(message: string, payload?: any): void {\n this.log(LogLevel.error, message, payload);\n }\n\n public log(level: LogLevel, message: string, payload?: any): void {\n this._logEvents$.next({\n level,\n message,\n payload\n });\n }\n}\n","import { Injectable } from '@angular/core';\nimport { Subject, takeUntil } from 'rxjs';\nimport { Logger } from './logger';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class ConsoleAppender {\n private readonly stopEvent$ = new Subject<boolean>();\n\n constructor(private logger: Logger) {}\n\n public start(): void {\n this.logger.logEvents$.pipe(takeUntil(this.stopEvent$)).subscribe((logEvent) => {\n if (logEvent.payload) {\n console.log(`[${logEvent.level}] ${logEvent.message}`, logEvent.payload);\n } else {\n console.log(`[${logEvent.level}] ${logEvent.message}`);\n }\n });\n }\n\n public stop(): void {\n this.stopEvent$.next(true);\n }\n}\n","import { Provider } from '@angular/core';\nimport { FormControl, FormGroupDirective, NgForm } from '@angular/forms';\nimport { ErrorStateMatcher } from '@angular/material/core';\n\nexport class DefaultErrorStateMatcher implements ErrorStateMatcher {\n isErrorState(control: FormControl | null, form: FormGroupDirective | NgForm | null): boolean {\n return !!(control && control.invalid);\n }\n}\n\nexport const useDefaultErrorStateMatcher: Provider = { provide: ErrorStateMatcher, useClass: DefaultErrorStateMatcher };\n","/*\n * Public API Surface of ngssm-toolkit\n */\n\nexport * from './lib/ngssm-toolkit.module';\nexport * from './lib/logging';\nexport * from './lib/shell';\nexport * from './lib/material';\nexport * from './lib/overlay';\nexport * from './lib/default-error-state-matcher';\nexport * from './lib/not-found.component';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i3","i4","i1","i2","i1.Logger"],"mappings":"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"}
1
+ {"version":3,"file":"ngssm-toolkit.mjs","sources":["../../../projects/ngssm-toolkit/src/lib/material/material-imports.module.ts","../../../projects/ngssm-toolkit/src/lib/not-found.component.ts","../../../projects/ngssm-toolkit/src/lib/overlay/message-overlay.component.ts","../../../projects/ngssm-toolkit/src/lib/overlay/component-overlay.directive.ts","../../../projects/ngssm-toolkit/src/lib/overlay/empty-overlay.component.ts","../../../projects/ngssm-toolkit/src/lib/shell/shell.component.ts","../../../projects/ngssm-toolkit/src/lib/shell/shell.component.html","../../../projects/ngssm-toolkit/src/lib/ngssm-toolkit.module.ts","../../../projects/ngssm-toolkit/src/lib/logging/log-level.ts","../../../projects/ngssm-toolkit/src/lib/logging/logger.ts","../../../projects/ngssm-toolkit/src/lib/logging/console-appender.ts","../../../projects/ngssm-toolkit/src/lib/default-error-state-matcher.ts","../../../projects/ngssm-toolkit/src/public-api.ts","../../../projects/ngssm-toolkit/src/ngssm-toolkit.ts"],"sourcesContent":["import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { MatToolbarModule } from '@angular/material/toolbar';\nimport { MatSidenavModule } from '@angular/material/sidenav';\nimport { MatButtonModule } from '@angular/material/button';\nimport { MatIconModule } from '@angular/material/icon';\nimport { MatListModule } from '@angular/material/list';\nimport { MatDividerModule } from '@angular/material/divider';\nimport { MatCardModule } from '@angular/material/card';\nimport { MatSlideToggleModule } from '@angular/material/slide-toggle';\nimport { MatFormFieldModule } from '@angular/material/form-field';\nimport { MatRadioModule } from '@angular/material/radio';\nimport { MatSelectModule } from '@angular/material/select';\nimport { MatInputModule } from '@angular/material/input';\nimport { MatTableModule } from '@angular/material/table';\nimport { MatPaginatorModule } from '@angular/material/paginator';\nimport { MatDialogModule } from '@angular/material/dialog';\nimport { MatProgressSpinnerModule } from '@angular/material/progress-spinner';\nimport { MatCheckboxModule } from '@angular/material/checkbox';\nimport { MatTooltipModule } from '@angular/material/tooltip';\nimport { FlexLayoutModule } from '@angular/flex-layout';\n\nconst modules = [\n CommonModule,\n MatToolbarModule,\n MatSidenavModule,\n MatButtonModule,\n MatIconModule,\n MatListModule,\n MatDividerModule,\n MatCardModule,\n MatSlideToggleModule,\n MatFormFieldModule,\n MatRadioModule,\n MatSelectModule,\n MatInputModule,\n MatTableModule,\n MatPaginatorModule,\n MatDialogModule,\n MatProgressSpinnerModule,\n MatCheckboxModule,\n MatTooltipModule,\n FlexLayoutModule\n];\n\n@NgModule({\n declarations: [],\n imports: modules,\n exports: modules\n})\nexport class MaterialImportsModule {}\n","import { Component } from '@angular/core';\n\n@Component({\n selector: 'ngssm-not-found',\n template: ` <img src=\"./assets/404-not-found.png\" /> `,\n styles: [\n `\n :host {\n display: flex;\n flex-direction: row;\n flex: 1;\n align-items: center;\n justify-content: center;\n }\n `\n ]\n})\nexport class NotFoundComponent {}\n","import { Component } from '@angular/core';\nimport { Observable, Subject } from 'rxjs';\n\n@Component({\n selector: 'ngssm-message-overlay',\n template: `\n <mat-card>\n <mat-card-content fxLayout=\"column\" fxLayoutAlign=\"center center\">\n <mat-spinner></mat-spinner>\n {{ message$ | async }}\n </mat-card-content>\n </mat-card>\n `,\n styles: []\n})\nexport class MessageOverlayComponent {\n public message$: Observable<string> = new Subject<string>();\n}\n","import {\n Overlay,\n OverlayKeyboardDispatcher,\n OverlayOutsideClickDispatcher,\n OverlayPositionBuilder,\n OverlayRef,\n ScrollStrategyOptions\n} from '@angular/cdk/overlay';\nimport { DOCUMENT } from '@angular/common';\nimport {\n AfterViewInit,\n ComponentFactoryResolver,\n Directive,\n ElementRef,\n Inject,\n Injector,\n Input,\n NgZone,\n OnDestroy,\n Renderer2,\n TemplateRef,\n ViewContainerRef\n} from '@angular/core';\nimport { Location } from '@angular/common';\nimport { Directionality } from '@angular/cdk/bidi';\nimport { ComponentPortal, ComponentType, TemplatePortal } from '@angular/cdk/portal';\nimport { BehaviorSubject, Subject, takeUntil } from 'rxjs';\n\nimport { MessageOverlayComponent } from './message-overlay.component';\n\n@Directive({\n // eslint-disable-next-line @angular-eslint/directive-selector\n selector: '[displayOverlay]'\n})\nexport class ComponentOverlayDirective implements OnDestroy, AfterViewInit {\n private readonly unSubscribeAll$ = new Subject<void>();\n private readonly _displayOverlay$ = new BehaviorSubject<boolean>(false);\n private readonly _overlayMessage$ = new BehaviorSubject<string>('Please wait');\n\n private overlay: Overlay;\n private overlayRef: OverlayRef;\n\n constructor(\n private elementRef: ElementRef,\n private viewContainerRef: ViewContainerRef,\n @Inject(DOCUMENT) document: any,\n scrollStrategies: ScrollStrategyOptions,\n // eslint-disable-next-line deprecation/deprecation\n componentFactoryResolver: ComponentFactoryResolver,\n positionBuilder: OverlayPositionBuilder,\n keyboardDispatcher: OverlayKeyboardDispatcher,\n injector: Injector,\n ngZone: NgZone,\n directionality: Directionality,\n location: Location,\n outsideClickDispatcher: OverlayOutsideClickDispatcher,\n renderer: Renderer2\n ) {\n renderer.setStyle(this.elementRef.nativeElement, 'position', 'relative');\n const container = {\n getContainerElement: () => this.elementRef.nativeElement\n };\n\n this.overlay = new Overlay(\n scrollStrategies,\n container as any,\n componentFactoryResolver,\n positionBuilder,\n keyboardDispatcher,\n injector,\n ngZone,\n document,\n directionality,\n location,\n outsideClickDispatcher\n );\n\n this.overlayRef = this.overlay.create({\n positionStrategy: this.overlay.position().global().centerHorizontally().centerVertically(),\n hasBackdrop: true\n });\n }\n\n // eslint-disable-next-line @angular-eslint/no-input-rename\n @Input('overlayTemplate') overLayTemplate: TemplateRef<any> | undefined;\n\n @Input() overlayComponent: ComponentType<any> | undefined;\n\n @Input() public set overlayMessage(value: string) {\n this._overlayMessage$.next(value);\n }\n\n @Input('displayOverlay') public set dispalyOverlay(value: boolean) {\n this._displayOverlay$.next(value);\n }\n\n public ngAfterViewInit(): void {\n this._displayOverlay$.pipe(takeUntil(this.unSubscribeAll$)).subscribe((v) => {\n if (v) {\n this.showOverlay();\n } else {\n this.hideOverlay();\n }\n });\n }\n\n public ngOnDestroy(): void {\n this.unSubscribeAll$.next();\n this.unSubscribeAll$.complete();\n if (this._displayOverlay$.getValue()) {\n this.overlayRef.detach();\n }\n }\n\n private showOverlay(): void {\n if (this.overLayTemplate) {\n this.overlayRef.attach(new TemplatePortal(this.overLayTemplate, this.viewContainerRef));\n } else if (this.overlayComponent) {\n const ref = this.overlayRef.attach(new ComponentPortal(this.overlayComponent));\n if (this.overlayComponent === MessageOverlayComponent) {\n ref.instance.message$ = this._overlayMessage$.asObservable();\n }\n } else {\n const ref = this.overlayRef.attach(new ComponentPortal(MessageOverlayComponent));\n ref.instance.message$ = this._overlayMessage$.asObservable();\n }\n }\n\n private hideOverlay(): void {\n this.overlayRef.detach();\n }\n}\n","import { Component } from '@angular/core';\n\n@Component({\n selector: 'ngssm-empty-overlay',\n template: ``,\n styles: []\n})\nexport class EmptyOverlayComponent {}\n","import { ChangeDetectionStrategy, Component, Input } from '@angular/core';\nimport { NavigationSection } from './navigation-section';\n\n@Component({\n selector: 'ngssm-shell',\n templateUrl: './shell.component.html',\n styleUrls: ['./shell.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class ShellComponent {\n @Input() public navigationSections: NavigationSection[] = [];\n @Input() public logo: string = './assets/leono-logo.png';\n}\n","<mat-toolbar color=\"primary\" fxLayout=\"row\" fxLayoutAlign=\" center\">\n <button mat-icon-button (click)=\"sidebar.toggle()\">\n <mat-icon class=\"fa-solid fa-bars\"></mat-icon>\n </button>\n <img [src]=\"logo\" height=\"50px\" />\n <ng-content></ng-content>\n</mat-toolbar>\n\n<mat-sidenav-container class=\"ngssm-shell-main-container\" fxFlex>\n <mat-sidenav mode=\"side\" opened=\"true\" #sidebar>\n <mat-nav-list class=\"ngssm-shell-navigation-container\">\n <ng-container *ngFor=\"let section of navigationSections;let last = last;\">\n <a matSubheader class=\"ngssm-shell-navigation-header\" [routerLink]=\"section.route\"\n routerLinkActive=\"active-link\" [routerLinkActiveOptions]=\"{exact:false}\">\n <mat-icon [class]=\"section.iconClass\" *ngIf=\"section.iconClass\"></mat-icon>\n {{section.label}}\n </a>\n <a [routerLink]=\"item.route\" routerLinkActive=\"active-link\" [routerLinkActiveOptions]=\"{exact:true}\"\n class=\"ngssm-shell-navigation-link\" mat-list-item *ngFor=\"let item of section.items\">\n <div class=\"ngssm-shell-navigation-link-content\">\n <mat-icon [class]=\"item.iconClass\" *ngIf=\"item.iconClass\"\n color=\"{{item.iconColor ?? 'primary'}}\">\n </mat-icon>\n {{item.label}}\n </div>\n </a>\n <mat-divider *ngIf=\"!last\"></mat-divider>\n </ng-container>\n </mat-nav-list>\n </mat-sidenav>\n <mat-sidenav-content class=\"router-outlet-container\">\n <router-outlet></router-outlet>\n </mat-sidenav-content>\n</mat-sidenav-container>","import { NgModule } from '@angular/core';\nimport { RouterModule } from '@angular/router';\n\nimport { MaterialImportsModule } from './material';\nimport { NotFoundComponent } from './not-found.component';\nimport { ComponentOverlayDirective, EmptyOverlayComponent, MessageOverlayComponent } from './overlay';\nimport { ShellComponent } from './shell';\n\n@NgModule({\n declarations: [ShellComponent, ComponentOverlayDirective, MessageOverlayComponent, EmptyOverlayComponent, NotFoundComponent],\n imports: [RouterModule, MaterialImportsModule],\n exports: [ShellComponent, ComponentOverlayDirective]\n})\nexport class NgssmToolkitModule {}\n","export enum LogLevel {\n debug = 'Debug',\n information = 'Information',\n error = 'Error'\n}\n","import { Injectable } from '@angular/core';\nimport { Observable, Subject } from 'rxjs';\n\nimport { LogEvent } from './log-event';\nimport { LogLevel } from './log-level';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class Logger {\n private readonly _logEvents$ = new Subject<LogEvent>();\n\n public get logEvents$(): Observable<LogEvent> {\n return this._logEvents$.asObservable();\n }\n\n public debug(message: string, payload?: any): void {\n this.log(LogLevel.debug, message, payload);\n }\n\n public information(message: string, payload?: any): void {\n this.log(LogLevel.information, message, payload);\n }\n\n public error(message: string, payload?: any): void {\n this.log(LogLevel.error, message, payload);\n }\n\n public log(level: LogLevel, message: string, payload?: any): void {\n this._logEvents$.next({\n level,\n message,\n payload\n });\n }\n}\n","import { Injectable } from '@angular/core';\nimport { Subject, takeUntil } from 'rxjs';\nimport { Logger } from './logger';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class ConsoleAppender {\n private readonly stopEvent$ = new Subject<boolean>();\n\n constructor(private logger: Logger) {}\n\n public start(): void {\n this.logger.logEvents$.pipe(takeUntil(this.stopEvent$)).subscribe((logEvent) => {\n if (logEvent.payload) {\n console.log(`[${logEvent.level}] ${logEvent.message}`, logEvent.payload);\n } else {\n console.log(`[${logEvent.level}] ${logEvent.message}`);\n }\n });\n }\n\n public stop(): void {\n this.stopEvent$.next(true);\n }\n}\n","import { Provider } from '@angular/core';\nimport { FormControl, FormGroupDirective, NgForm } from '@angular/forms';\nimport { ErrorStateMatcher } from '@angular/material/core';\n\nexport class DefaultErrorStateMatcher implements ErrorStateMatcher {\n isErrorState(control: FormControl | null, form: FormGroupDirective | NgForm | null): boolean {\n return !!(control && control.invalid);\n }\n}\n\nexport const useDefaultErrorStateMatcher: Provider = { provide: ErrorStateMatcher, useClass: DefaultErrorStateMatcher };\n","/*\n * Public API Surface of ngssm-toolkit\n */\n\nexport * from './lib/ngssm-toolkit.module';\nexport * from './lib/logging';\nexport * from './lib/shell';\nexport * from './lib/material';\nexport * from './lib/overlay';\nexport * from './lib/default-error-state-matcher';\nexport * from './lib/not-found.component';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i3","i4","i1","i2","i1.Logger"],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "ngssm-toolkit",
3
- "version": "14.0.2",
3
+ "version": "14.1.1",
4
4
  "description": "NgSsm - Utilities for angular applications.",
5
5
  "author": "Lion Marc",
6
6
  "license": "MIT",