@abp/ng.theme.basic 5.0.0-rc.1 → 5.0.2

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.
Files changed (71) hide show
  1. package/abp-ng.theme.basic.d.ts +5 -5
  2. package/bundles/abp-ng.theme.basic-testing.umd.js +37 -37
  3. package/bundles/abp-ng.theme.basic.umd.js +883 -883
  4. package/bundles/abp-ng.theme.basic.umd.js.map +1 -1
  5. package/esm2015/abp-ng.theme.basic.js +4 -4
  6. package/esm2015/lib/components/account-layout/account-layout.component.js +35 -35
  7. package/esm2015/lib/components/account-layout/auth-wrapper/auth-wrapper.component.js +22 -22
  8. package/esm2015/lib/components/account-layout/tenant-box/tenant-box.component.js +23 -23
  9. package/esm2015/lib/components/application-layout/application-layout.component.js +35 -35
  10. package/esm2015/lib/components/empty-layout/empty-layout.component.js +16 -16
  11. package/esm2015/lib/components/index.js +12 -12
  12. package/esm2015/lib/components/logo/logo.component.js +23 -23
  13. package/esm2015/lib/components/nav-items/current-user.component.js +37 -37
  14. package/esm2015/lib/components/nav-items/languages.component.js +38 -38
  15. package/esm2015/lib/components/nav-items/nav-items.component.js +21 -21
  16. package/esm2015/lib/components/page-alert-container/page-alert-container.component.js +22 -22
  17. package/esm2015/lib/components/routes/routes.component.js +39 -39
  18. package/esm2015/lib/components/validation-error/validation-error.component.js +31 -31
  19. package/esm2015/lib/constants/styles.js +1 -1
  20. package/esm2015/lib/enums/components.js +1 -1
  21. package/esm2015/lib/enums/index.js +1 -1
  22. package/esm2015/lib/handlers/index.js +1 -1
  23. package/esm2015/lib/handlers/lazy-style.handler.js +81 -81
  24. package/esm2015/lib/models/index.js +1 -1
  25. package/esm2015/lib/models/layout.js +1 -1
  26. package/esm2015/lib/providers/index.js +2 -2
  27. package/esm2015/lib/providers/nav-item.provider.js +28 -28
  28. package/esm2015/lib/providers/styles.provider.js +34 -34
  29. package/esm2015/lib/services/layout.service.js +37 -37
  30. package/esm2015/lib/theme-basic.module.js +126 -126
  31. package/esm2015/lib/tokens/index.js +1 -1
  32. package/esm2015/lib/tokens/lazy-styles.token.js +2 -2
  33. package/esm2015/public-api.js +10 -10
  34. package/esm2015/testing/abp-ng.theme.basic-testing.js +4 -4
  35. package/esm2015/testing/lib/theme-basic-testing.module.js +37 -37
  36. package/esm2015/testing/public-api.js +1 -1
  37. package/fesm2015/abp-ng.theme.basic-testing.js +34 -34
  38. package/fesm2015/abp-ng.theme.basic.js +501 -501
  39. package/fesm2015/abp-ng.theme.basic.js.map +1 -1
  40. package/lib/components/account-layout/account-layout.component.d.ts +13 -13
  41. package/lib/components/account-layout/auth-wrapper/auth-wrapper.component.d.ts +8 -8
  42. package/lib/components/account-layout/tenant-box/tenant-box.component.d.ts +8 -8
  43. package/lib/components/application-layout/application-layout.component.d.ts +12 -12
  44. package/lib/components/empty-layout/empty-layout.component.d.ts +7 -7
  45. package/lib/components/index.d.ts +12 -12
  46. package/lib/components/logo/logo.component.d.ts +9 -9
  47. package/lib/components/nav-items/current-user.component.d.ts +17 -17
  48. package/lib/components/nav-items/languages.component.d.ts +16 -16
  49. package/lib/components/nav-items/nav-items.component.d.ts +10 -10
  50. package/lib/components/page-alert-container/page-alert-container.component.d.ts +8 -8
  51. package/lib/components/routes/routes.component.d.ts +18 -18
  52. package/lib/components/validation-error/validation-error.component.d.ts +9 -9
  53. package/lib/constants/styles.d.ts +2 -2
  54. package/lib/enums/components.d.ts +10 -10
  55. package/lib/enums/index.d.ts +1 -1
  56. package/lib/handlers/index.d.ts +1 -1
  57. package/lib/handlers/lazy-style.handler.d.ts +23 -23
  58. package/lib/models/index.d.ts +1 -1
  59. package/lib/models/layout.d.ts +11 -11
  60. package/lib/providers/index.d.ts +2 -2
  61. package/lib/providers/nav-item.provider.d.ts +8 -8
  62. package/lib/providers/styles.provider.d.ts +8 -8
  63. package/lib/services/layout.service.d.ts +18 -18
  64. package/lib/theme-basic.module.d.ts +32 -32
  65. package/lib/tokens/index.d.ts +1 -1
  66. package/lib/tokens/lazy-styles.token.d.ts +2 -2
  67. package/package.json +4 -4
  68. package/public-api.d.ts +7 -7
  69. package/testing/abp-ng.theme.basic-testing.d.ts +5 -5
  70. package/testing/lib/theme-basic-testing.module.d.ts +9 -9
  71. package/testing/public-api.d.ts +1 -1
@@ -31,931 +31,931 @@
31
31
  var i1__namespace$2 = /*#__PURE__*/_interopNamespace(i1$2);
32
32
  var i4__namespace = /*#__PURE__*/_interopNamespace(i4);
33
33
 
34
- var LayoutService = /** @class */ (function () {
35
- function LayoutService(subscription, cdRef) {
36
- this.subscription = subscription;
37
- this.cdRef = cdRef;
38
- this.isCollapsed = true;
39
- this.logoComponentKey = "Theme.LogoComponent" /* Logo */;
40
- this.routesComponentKey = "Theme.RoutesComponent" /* Routes */;
41
- this.navItemsComponentKey = "Theme.NavItemsComponent" /* NavItems */;
42
- }
43
- LayoutService.prototype.checkWindowWidth = function () {
44
- var _this = this;
45
- var isSmallScreen = window.innerWidth < 992;
46
- if (isSmallScreen && this.smallScreen === false) {
47
- this.isCollapsed = false;
48
- setTimeout(function () {
49
- _this.isCollapsed = true;
50
- }, 100);
51
- }
52
- this.smallScreen = isSmallScreen;
53
- this.cdRef.detectChanges();
54
- };
55
- LayoutService.prototype.subscribeWindowSize = function () {
56
- var _this = this;
57
- this.checkWindowWidth();
58
- var resize$ = rxjs.fromEvent(window, 'resize').pipe(operators.debounceTime(150));
59
- this.subscription.addOne(resize$, function () { return _this.checkWindowWidth(); });
60
- };
61
- return LayoutService;
62
- }());
63
- LayoutService.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0__namespace, type: LayoutService, deps: [{ token: i1__namespace.SubscriptionService }, { token: i0__namespace.ChangeDetectorRef }], target: i0__namespace.ɵɵFactoryTarget.Injectable });
64
- LayoutService.ɵprov = i0__namespace.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0__namespace, type: LayoutService });
65
- i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0__namespace, type: LayoutService, decorators: [{
66
- type: i0.Injectable
34
+ var LayoutService = /** @class */ (function () {
35
+ function LayoutService(subscription, cdRef) {
36
+ this.subscription = subscription;
37
+ this.cdRef = cdRef;
38
+ this.isCollapsed = true;
39
+ this.logoComponentKey = "Theme.LogoComponent" /* Logo */;
40
+ this.routesComponentKey = "Theme.RoutesComponent" /* Routes */;
41
+ this.navItemsComponentKey = "Theme.NavItemsComponent" /* NavItems */;
42
+ }
43
+ LayoutService.prototype.checkWindowWidth = function () {
44
+ var _this = this;
45
+ var isSmallScreen = window.innerWidth < 992;
46
+ if (isSmallScreen && this.smallScreen === false) {
47
+ this.isCollapsed = false;
48
+ setTimeout(function () {
49
+ _this.isCollapsed = true;
50
+ }, 100);
51
+ }
52
+ this.smallScreen = isSmallScreen;
53
+ this.cdRef.detectChanges();
54
+ };
55
+ LayoutService.prototype.subscribeWindowSize = function () {
56
+ var _this = this;
57
+ this.checkWindowWidth();
58
+ var resize$ = rxjs.fromEvent(window, 'resize').pipe(operators.debounceTime(150));
59
+ this.subscription.addOne(resize$, function () { return _this.checkWindowWidth(); });
60
+ };
61
+ return LayoutService;
62
+ }());
63
+ LayoutService.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0__namespace, type: LayoutService, deps: [{ token: i1__namespace.SubscriptionService }, { token: i0__namespace.ChangeDetectorRef }], target: i0__namespace.ɵɵFactoryTarget.Injectable });
64
+ LayoutService.ɵprov = i0__namespace.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0__namespace, type: LayoutService });
65
+ i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0__namespace, type: LayoutService, decorators: [{
66
+ type: i0.Injectable
67
67
  }], ctorParameters: function () { return [{ type: i1__namespace.SubscriptionService }, { type: i0__namespace.ChangeDetectorRef }]; } });
68
68
 
69
- var LogoComponent = /** @class */ (function () {
70
- function LogoComponent(environment) {
71
- this.environment = environment;
72
- }
73
- Object.defineProperty(LogoComponent.prototype, "appInfo", {
74
- get: function () {
75
- return this.environment.getEnvironment().application;
76
- },
77
- enumerable: false,
78
- configurable: true
79
- });
80
- return LogoComponent;
81
- }());
82
- LogoComponent.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0__namespace, type: LogoComponent, deps: [{ token: i1__namespace.EnvironmentService }], target: i0__namespace.ɵɵFactoryTarget.Component });
83
- LogoComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.13", type: LogoComponent, selector: "abp-logo", ngImport: i0__namespace, template: "\n <a class=\"navbar-brand\" routerLink=\"/\">\n <img\n *ngIf=\"appInfo.logoUrl; else appName\"\n [src]=\"appInfo.logoUrl\"\n [alt]=\"appInfo.name\"\n width=\"100%\"\n height=\"auto\"\n />\n </a>\n\n <ng-template #appName>\n {{ appInfo.name }}\n </ng-template>\n ", isInline: true, directives: [{ type: i2__namespace.RouterLinkWithHref, selector: "a[routerLink],area[routerLink]", inputs: ["routerLink", "target", "queryParams", "fragment", "queryParamsHandling", "preserveFragment", "skipLocationChange", "replaceUrl", "state", "relativeTo"] }, { type: i2__namespace$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
84
- i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0__namespace, type: LogoComponent, decorators: [{
85
- type: i0.Component,
86
- args: [{
87
- selector: 'abp-logo',
88
- template: "\n <a class=\"navbar-brand\" routerLink=\"/\">\n <img\n *ngIf=\"appInfo.logoUrl; else appName\"\n [src]=\"appInfo.logoUrl\"\n [alt]=\"appInfo.name\"\n width=\"100%\"\n height=\"auto\"\n />\n </a>\n\n <ng-template #appName>\n {{ appInfo.name }}\n </ng-template>\n ",
89
- }]
69
+ var LogoComponent = /** @class */ (function () {
70
+ function LogoComponent(environment) {
71
+ this.environment = environment;
72
+ }
73
+ Object.defineProperty(LogoComponent.prototype, "appInfo", {
74
+ get: function () {
75
+ return this.environment.getEnvironment().application;
76
+ },
77
+ enumerable: false,
78
+ configurable: true
79
+ });
80
+ return LogoComponent;
81
+ }());
82
+ LogoComponent.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0__namespace, type: LogoComponent, deps: [{ token: i1__namespace.EnvironmentService }], target: i0__namespace.ɵɵFactoryTarget.Component });
83
+ LogoComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.13", type: LogoComponent, selector: "abp-logo", ngImport: i0__namespace, template: "\n <a class=\"navbar-brand\" routerLink=\"/\">\n <img\n *ngIf=\"appInfo.logoUrl; else appName\"\n [src]=\"appInfo.logoUrl\"\n [alt]=\"appInfo.name\"\n width=\"100%\"\n height=\"auto\"\n />\n </a>\n\n <ng-template #appName>\n {{ appInfo.name }}\n </ng-template>\n ", isInline: true, directives: [{ type: i2__namespace.RouterLinkWithHref, selector: "a[routerLink],area[routerLink]", inputs: ["routerLink", "target", "queryParams", "fragment", "queryParamsHandling", "preserveFragment", "skipLocationChange", "replaceUrl", "state", "relativeTo"] }, { type: i2__namespace$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
84
+ i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0__namespace, type: LogoComponent, decorators: [{
85
+ type: i0.Component,
86
+ args: [{
87
+ selector: 'abp-logo',
88
+ template: "\n <a class=\"navbar-brand\" routerLink=\"/\">\n <img\n *ngIf=\"appInfo.logoUrl; else appName\"\n [src]=\"appInfo.logoUrl\"\n [alt]=\"appInfo.name\"\n width=\"100%\"\n height=\"auto\"\n />\n </a>\n\n <ng-template #appName>\n {{ appInfo.name }}\n </ng-template>\n ",
89
+ }]
90
90
  }], ctorParameters: function () { return [{ type: i1__namespace.EnvironmentService }]; } });
91
91
 
92
- var RoutesComponent = /** @class */ (function () {
93
- function RoutesComponent(routesService, renderer) {
94
- this.routesService = routesService;
95
- this.renderer = renderer;
96
- this.rootDropdownExpand = {};
97
- this.trackByFn = function (_, item) { return item.name; };
98
- }
99
- RoutesComponent.prototype.isDropdown = function (node) {
100
- return !(node === null || node === void 0 ? void 0 : node.isLeaf) || this.routesService.hasChildren(node.name);
101
- };
102
- RoutesComponent.prototype.closeDropdown = function () {
103
- var _this = this;
104
- this.childrenContainers.forEach(function (_a) {
105
- var nativeElement = _a.nativeElement;
106
- _this.renderer.addClass(nativeElement, 'd-none');
107
- setTimeout(function () { return _this.renderer.removeClass(nativeElement, 'd-none'); }, 0);
108
- });
109
- };
110
- return RoutesComponent;
111
- }());
112
- RoutesComponent.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0__namespace, type: RoutesComponent, deps: [{ token: i1__namespace.RoutesService }, { token: i0__namespace.Renderer2 }], target: i0__namespace.ɵɵFactoryTarget.Component });
113
- RoutesComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.13", type: RoutesComponent, selector: "abp-routes", inputs: { smallScreen: "smallScreen" }, viewQueries: [{ propertyName: "childrenContainers", predicate: ["childrenContainer"], descendants: true }], ngImport: i0__namespace, template: "<ul class=\"navbar-nav\">\n <ng-container\n *ngFor=\"let route of routesService.visible$ | async; trackBy: trackByFn\"\n [ngTemplateOutlet]=\"isDropdown(route) ? dropdownLink : defaultLink\"\n [ngTemplateOutletContext]=\"{ $implicit: route }\"\n >\n </ng-container>\n\n <ng-template #defaultLink let-route>\n <li class=\"nav-item\" *abpPermission=\"route.requiredPolicy\">\n <a class=\"nav-link\" [routerLink]=\"[route.path]\"\n ><i *ngIf=\"route.iconClass\" [ngClass]=\"route.iconClass\"></i>\n {{ route.name | abpLocalization }}</a\n >\n </li>\n </ng-template>\n\n <ng-template #dropdownLink let-route>\n <ng-container *ngIf=\"route.children?.length\">\n <li\n class=\"nav-item dropdown\"\n display=\"static\"\n *abpPermission=\"route.requiredPolicy\"\n (click)=\"\n rootDropdownExpand[route.name]\n ? (rootDropdownExpand[route.name] = false)\n : (rootDropdownExpand[route.name] = true)\n \"\n >\n <a\n class=\"nav-link dropdown-toggle\"\n data-toggle=\"dropdown\"\n aria-haspopup=\"true\"\n aria-expanded=\"false\"\n href=\"javascript:void(0)\"\n >\n <i *ngIf=\"route.iconClass\" [ngClass]=\"route.iconClass\"></i>\n {{ route.name | abpLocalization }}\n </a>\n <div\n #routeContainer\n class=\"dropdown-menu border-0 shadow-sm\"\n (click)=\"$event.preventDefault(); $event.stopPropagation()\"\n [class.d-block]=\"smallScreen && rootDropdownExpand[route.name]\"\n >\n <ng-container\n *ngTemplateOutlet=\"forTemplate; context: { $implicit: route }\"\n ></ng-container>\n </div>\n </li>\n </ng-container>\n </ng-template>\n\n <ng-template #forTemplate let-route>\n <ng-container *ngFor=\"let child of route.children\">\n <ng-template\n [ngTemplateOutlet]=\"child.children?.length ? dropdownChild : defaultChild\"\n [ngTemplateOutletContext]=\"{ $implicit: child }\"\n ></ng-template>\n </ng-container>\n </ng-template>\n\n <ng-template #defaultChild let-child>\n <ng-container *ngIf=\"child.path\">\n <div class=\"dropdown-submenu\" *abpPermission=\"child.requiredPolicy\">\n <a class=\"dropdown-item\" [routerLink]=\"[child.path]\" (click)=\"closeDropdown()\">\n <i *ngIf=\"child.iconClass\" [ngClass]=\"child.iconClass\"></i>\n {{ child.name | abpLocalization }}</a\n >\n </div>\n </ng-container>\n </ng-template>\n\n <ng-template #dropdownChild let-child>\n <div\n class=\"dropdown-submenu\"\n ngbDropdown\n #dropdownSubmenu=\"ngbDropdown\"\n placement=\"right-top\"\n [autoClose]=\"true\"\n *abpPermission=\"child.requiredPolicy\"\n >\n <div ngbDropdownToggle [class.dropdown-toggle]=\"false\">\n <a\n abpEllipsis=\"210px\"\n [abpEllipsisEnabled]=\"!smallScreen\"\n role=\"button\"\n class=\"btn d-block text-start dropdown-toggle\"\n >\n <i *ngIf=\"child.iconClass\" [ngClass]=\"child.iconClass\"></i>\n {{ child.name | abpLocalization }}\n </a>\n </div>\n <div\n #childrenContainer\n class=\"dropdown-menu dropdown-menu-start border-0 shadow-sm\"\n [class.d-block]=\"smallScreen && dropdownSubmenu.isOpen()\"\n >\n <ng-container *ngTemplateOutlet=\"forTemplate; context: { $implicit: child }\"></ng-container>\n </div>\n </div>\n </ng-template>\n</ul>\n", directives: [{ type: i2__namespace$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i2__namespace$1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }, { type: i1__namespace.PermissionDirective, selector: "[abpPermission]", inputs: ["abpPermission"] }, { type: i2__namespace.RouterLinkWithHref, selector: "a[routerLink],area[routerLink]", inputs: ["routerLink", "target", "queryParams", "fragment", "queryParamsHandling", "preserveFragment", "skipLocationChange", "replaceUrl", "state", "relativeTo"] }, { type: i2__namespace$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i2__namespace$1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i3__namespace.NgbDropdown, selector: "[ngbDropdown]", inputs: ["open", "placement", "container", "autoClose", "display", "dropdownClass"], outputs: ["openChange"], exportAs: ["ngbDropdown"] }, { type: i3__namespace.NgbDropdownToggle, selector: "[ngbDropdownToggle]" }, { type: i1__namespace$1.EllipsisDirective, selector: "[abpEllipsis]", inputs: ["abpEllipsis", "title", "abpEllipsisEnabled"] }], pipes: { "async": i2__namespace$1.AsyncPipe, "abpLocalization": i1__namespace.LocalizationPipe } });
114
- i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0__namespace, type: RoutesComponent, decorators: [{
115
- type: i0.Component,
116
- args: [{
117
- selector: 'abp-routes',
118
- templateUrl: 'routes.component.html',
119
- }]
120
- }], ctorParameters: function () { return [{ type: i1__namespace.RoutesService }, { type: i0__namespace.Renderer2 }]; }, propDecorators: { smallScreen: [{
121
- type: i0.Input
122
- }], childrenContainers: [{
123
- type: i0.ViewChildren,
124
- args: ['childrenContainer']
92
+ var RoutesComponent = /** @class */ (function () {
93
+ function RoutesComponent(routesService, renderer) {
94
+ this.routesService = routesService;
95
+ this.renderer = renderer;
96
+ this.rootDropdownExpand = {};
97
+ this.trackByFn = function (_, item) { return item.name; };
98
+ }
99
+ RoutesComponent.prototype.isDropdown = function (node) {
100
+ return !(node === null || node === void 0 ? void 0 : node.isLeaf) || this.routesService.hasChildren(node.name);
101
+ };
102
+ RoutesComponent.prototype.closeDropdown = function () {
103
+ var _this = this;
104
+ this.childrenContainers.forEach(function (_a) {
105
+ var nativeElement = _a.nativeElement;
106
+ _this.renderer.addClass(nativeElement, 'd-none');
107
+ setTimeout(function () { return _this.renderer.removeClass(nativeElement, 'd-none'); }, 0);
108
+ });
109
+ };
110
+ return RoutesComponent;
111
+ }());
112
+ RoutesComponent.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0__namespace, type: RoutesComponent, deps: [{ token: i1__namespace.RoutesService }, { token: i0__namespace.Renderer2 }], target: i0__namespace.ɵɵFactoryTarget.Component });
113
+ RoutesComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.13", type: RoutesComponent, selector: "abp-routes", inputs: { smallScreen: "smallScreen" }, viewQueries: [{ propertyName: "childrenContainers", predicate: ["childrenContainer"], descendants: true }], ngImport: i0__namespace, template: "<ul class=\"navbar-nav\">\n <ng-container\n *ngFor=\"let route of routesService.visible$ | async; trackBy: trackByFn\"\n [ngTemplateOutlet]=\"isDropdown(route) ? dropdownLink : defaultLink\"\n [ngTemplateOutletContext]=\"{ $implicit: route }\"\n >\n </ng-container>\n\n <ng-template #defaultLink let-route>\n <li class=\"nav-item\" *abpPermission=\"route.requiredPolicy\">\n <a class=\"nav-link\" [routerLink]=\"[route.path]\"\n ><i *ngIf=\"route.iconClass\" [ngClass]=\"route.iconClass\"></i>\n {{ route.name | abpLocalization }}</a\n >\n </li>\n </ng-template>\n\n <ng-template #dropdownLink let-route>\n <ng-container *ngIf=\"route.children?.length\">\n <li\n class=\"nav-item dropdown\"\n display=\"static\"\n *abpPermission=\"route.requiredPolicy\"\n (click)=\"\n rootDropdownExpand[route.name]\n ? (rootDropdownExpand[route.name] = false)\n : (rootDropdownExpand[route.name] = true)\n \"\n >\n <a\n class=\"nav-link dropdown-toggle\"\n data-toggle=\"dropdown\"\n aria-haspopup=\"true\"\n aria-expanded=\"false\"\n href=\"javascript:void(0)\"\n >\n <i *ngIf=\"route.iconClass\" [ngClass]=\"route.iconClass\"></i>\n {{ route.name | abpLocalization }}\n </a>\n <div\n #routeContainer\n class=\"dropdown-menu border-0 shadow-sm\"\n (click)=\"$event.preventDefault(); $event.stopPropagation()\"\n [class.d-block]=\"smallScreen && rootDropdownExpand[route.name]\"\n >\n <ng-container\n *ngTemplateOutlet=\"forTemplate; context: { $implicit: route }\"\n ></ng-container>\n </div>\n </li>\n </ng-container>\n </ng-template>\n\n <ng-template #forTemplate let-route>\n <ng-container *ngFor=\"let child of route.children\">\n <ng-template\n [ngTemplateOutlet]=\"child.children?.length ? dropdownChild : defaultChild\"\n [ngTemplateOutletContext]=\"{ $implicit: child }\"\n ></ng-template>\n </ng-container>\n </ng-template>\n\n <ng-template #defaultChild let-child>\n <ng-container *ngIf=\"child.path\">\n <div class=\"dropdown-submenu\" *abpPermission=\"child.requiredPolicy\">\n <a class=\"dropdown-item\" [routerLink]=\"[child.path]\" (click)=\"closeDropdown()\">\n <i *ngIf=\"child.iconClass\" [ngClass]=\"child.iconClass\"></i>\n {{ child.name | abpLocalization }}</a\n >\n </div>\n </ng-container>\n </ng-template>\n\n <ng-template #dropdownChild let-child>\n <div\n class=\"dropdown-submenu\"\n ngbDropdown\n #dropdownSubmenu=\"ngbDropdown\"\n placement=\"right-top\"\n [autoClose]=\"true\"\n *abpPermission=\"child.requiredPolicy\"\n >\n <div ngbDropdownToggle [class.dropdown-toggle]=\"false\">\n <a\n abpEllipsis=\"210px\"\n [abpEllipsisEnabled]=\"!smallScreen\"\n role=\"button\"\n class=\"btn d-block text-start dropdown-toggle\"\n >\n <i *ngIf=\"child.iconClass\" [ngClass]=\"child.iconClass\"></i>\n {{ child.name | abpLocalization }}\n </a>\n </div>\n <div\n #childrenContainer\n class=\"dropdown-menu dropdown-menu-start border-0 shadow-sm\"\n [class.d-block]=\"smallScreen && dropdownSubmenu.isOpen()\"\n >\n <ng-container *ngTemplateOutlet=\"forTemplate; context: { $implicit: child }\"></ng-container>\n </div>\n </div>\n </ng-template>\n</ul>\n", directives: [{ type: i2__namespace$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i2__namespace$1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }, { type: i1__namespace.PermissionDirective, selector: "[abpPermission]", inputs: ["abpPermission"] }, { type: i2__namespace.RouterLinkWithHref, selector: "a[routerLink],area[routerLink]", inputs: ["routerLink", "target", "queryParams", "fragment", "queryParamsHandling", "preserveFragment", "skipLocationChange", "replaceUrl", "state", "relativeTo"] }, { type: i2__namespace$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i2__namespace$1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i3__namespace.NgbDropdown, selector: "[ngbDropdown]", inputs: ["open", "placement", "container", "autoClose", "display", "dropdownClass"], outputs: ["openChange"], exportAs: ["ngbDropdown"] }, { type: i3__namespace.NgbDropdownToggle, selector: "[ngbDropdownToggle]" }, { type: i1__namespace$1.EllipsisDirective, selector: "[abpEllipsis]", inputs: ["abpEllipsis", "title", "abpEllipsisEnabled"] }], pipes: { "async": i2__namespace$1.AsyncPipe, "abpLocalization": i1__namespace.LocalizationPipe } });
114
+ i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0__namespace, type: RoutesComponent, decorators: [{
115
+ type: i0.Component,
116
+ args: [{
117
+ selector: 'abp-routes',
118
+ templateUrl: 'routes.component.html',
119
+ }]
120
+ }], ctorParameters: function () { return [{ type: i1__namespace.RoutesService }, { type: i0__namespace.Renderer2 }]; }, propDecorators: { smallScreen: [{
121
+ type: i0.Input
122
+ }], childrenContainers: [{
123
+ type: i0.ViewChildren,
124
+ args: ['childrenContainer']
125
125
  }] } });
126
126
 
127
- var NavItemsComponent = /** @class */ (function () {
128
- function NavItemsComponent(navItems) {
129
- this.navItems = navItems;
130
- this.trackByFn = function (_, element) { return element.id; };
131
- }
132
- return NavItemsComponent;
133
- }());
134
- NavItemsComponent.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0__namespace, type: NavItemsComponent, deps: [{ token: i1__namespace$1.NavItemsService }], target: i0__namespace.ɵɵFactoryTarget.Component });
135
- NavItemsComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.13", type: NavItemsComponent, selector: "abp-nav-items", ngImport: i0__namespace, template: "<ul class=\"navbar-nav\">\n <ng-container *ngFor=\"let item of navItems.items$ | async; trackBy: trackByFn\">\n <ng-container *ngIf=\"item.visible && item.visible()\">\n <li class=\"nav-item d-flex align-items-center\" *abpPermission=\"item.requiredPolicy\">\n <ng-container\n *ngIf=\"item.component; else htmlTemplate\"\n [ngComponentOutlet]=\"item.component\"\n ></ng-container>\n\n <ng-template #htmlTemplate>\n <div [innerHTML]=\"item.html\" (click)=\"item.action ? item.action() : null\"></div>\n </ng-template>\n </li>\n </ng-container>\n </ng-container>\n</ul>\n", directives: [{ type: i2__namespace$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i2__namespace$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1__namespace.PermissionDirective, selector: "[abpPermission]", inputs: ["abpPermission"] }, { type: i2__namespace$1.NgComponentOutlet, selector: "[ngComponentOutlet]", inputs: ["ngComponentOutlet", "ngComponentOutletInjector", "ngComponentOutletContent", "ngComponentOutletNgModuleFactory"] }], pipes: { "async": i2__namespace$1.AsyncPipe } });
136
- i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0__namespace, type: NavItemsComponent, decorators: [{
137
- type: i0.Component,
138
- args: [{
139
- selector: 'abp-nav-items',
140
- templateUrl: 'nav-items.component.html',
141
- }]
127
+ var NavItemsComponent = /** @class */ (function () {
128
+ function NavItemsComponent(navItems) {
129
+ this.navItems = navItems;
130
+ this.trackByFn = function (_, element) { return element.id; };
131
+ }
132
+ return NavItemsComponent;
133
+ }());
134
+ NavItemsComponent.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0__namespace, type: NavItemsComponent, deps: [{ token: i1__namespace$1.NavItemsService }], target: i0__namespace.ɵɵFactoryTarget.Component });
135
+ NavItemsComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.13", type: NavItemsComponent, selector: "abp-nav-items", ngImport: i0__namespace, template: "<ul class=\"navbar-nav\">\n <ng-container *ngFor=\"let item of navItems.items$ | async; trackBy: trackByFn\">\n <ng-container *ngIf=\"item.visible && item.visible()\">\n <li class=\"nav-item d-flex align-items-center\" *abpPermission=\"item.requiredPolicy\">\n <ng-container\n *ngIf=\"item.component; else htmlTemplate\"\n [ngComponentOutlet]=\"item.component\"\n ></ng-container>\n\n <ng-template #htmlTemplate>\n <div [innerHTML]=\"item.html\" (click)=\"item.action ? item.action() : null\"></div>\n </ng-template>\n </li>\n </ng-container>\n </ng-container>\n</ul>\n", directives: [{ type: i2__namespace$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i2__namespace$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1__namespace.PermissionDirective, selector: "[abpPermission]", inputs: ["abpPermission"] }, { type: i2__namespace$1.NgComponentOutlet, selector: "[ngComponentOutlet]", inputs: ["ngComponentOutlet", "ngComponentOutletInjector", "ngComponentOutletContent", "ngComponentOutletNgModuleFactory"] }], pipes: { "async": i2__namespace$1.AsyncPipe } });
136
+ i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0__namespace, type: NavItemsComponent, decorators: [{
137
+ type: i0.Component,
138
+ args: [{
139
+ selector: 'abp-nav-items',
140
+ templateUrl: 'nav-items.component.html',
141
+ }]
142
142
  }], ctorParameters: function () { return [{ type: i1__namespace$1.NavItemsService }]; } });
143
143
 
144
- var PageAlertContainerComponent = /** @class */ (function () {
145
- function PageAlertContainerComponent(service) {
146
- this.service = service;
147
- }
148
- return PageAlertContainerComponent;
149
- }());
150
- PageAlertContainerComponent.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0__namespace, type: PageAlertContainerComponent, deps: [{ token: i1__namespace$1.PageAlertService }], target: i0__namespace.ɵɵFactoryTarget.Component });
151
- PageAlertContainerComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.13", type: PageAlertContainerComponent, selector: "abp-page-alert-container", ngImport: i0__namespace, template: "<ng-container *ngFor=\"let alert of service.alerts$ | async; let i = index\">\n <div\n class=\"alert alert-{{ alert.type }} fade show\"\n [ngClass]=\"{ 'alert-dismissible fade show': alert.dismissible }\"\n role=\"alert\"\n >\n <h4 class=\"alert-heading\" *ngIf=\"alert.title\">\n {{ alert.title | abpLocalization: alert.titleLocalizationParams }}\n </h4>\n {{ alert.message | abpLocalization: alert.messageLocalizationParams }}\n <button\n *ngIf=\"alert.dismissible\"\n type=\"button\"\n class=\"close\"\n data-dismiss=\"alert\"\n aria-label=\"Close\"\n (click)=\"service.remove(i)\"\n >\n <span aria-hidden=\"true\">&times;</span>\n </button>\n </div>\n</ng-container>\n", directives: [{ type: i2__namespace$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i2__namespace$1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i2__namespace$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], pipes: { "async": i2__namespace$1.AsyncPipe, "abpLocalization": i1__namespace.LocalizationPipe }, encapsulation: i0__namespace.ViewEncapsulation.None });
152
- i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0__namespace, type: PageAlertContainerComponent, decorators: [{
153
- type: i0.Component,
154
- args: [{
155
- selector: 'abp-page-alert-container',
156
- templateUrl: './page-alert-container.component.html',
157
- encapsulation: i0.ViewEncapsulation.None,
158
- }]
144
+ var PageAlertContainerComponent = /** @class */ (function () {
145
+ function PageAlertContainerComponent(service) {
146
+ this.service = service;
147
+ }
148
+ return PageAlertContainerComponent;
149
+ }());
150
+ PageAlertContainerComponent.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0__namespace, type: PageAlertContainerComponent, deps: [{ token: i1__namespace$1.PageAlertService }], target: i0__namespace.ɵɵFactoryTarget.Component });
151
+ PageAlertContainerComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.13", type: PageAlertContainerComponent, selector: "abp-page-alert-container", ngImport: i0__namespace, template: "<ng-container *ngFor=\"let alert of service.alerts$ | async; let i = index\">\n <div\n class=\"alert alert-{{ alert.type }} fade show\"\n [ngClass]=\"{ 'alert-dismissible fade show': alert.dismissible }\"\n role=\"alert\"\n >\n <h4 class=\"alert-heading\" *ngIf=\"alert.title\">\n {{ alert.title | abpLocalization: alert.titleLocalizationParams }}\n </h4>\n {{ alert.message | abpLocalization: alert.messageLocalizationParams }}\n <button\n *ngIf=\"alert.dismissible\"\n type=\"button\"\n class=\"btn-close\"\n data-dismiss=\"alert\"\n aria-label=\"Close\"\n (click)=\"service.remove(i)\"\n ></button>\n </div>\n</ng-container>\n", directives: [{ type: i2__namespace$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i2__namespace$1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i2__namespace$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], pipes: { "async": i2__namespace$1.AsyncPipe, "abpLocalization": i1__namespace.LocalizationPipe }, encapsulation: i0__namespace.ViewEncapsulation.None });
152
+ i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0__namespace, type: PageAlertContainerComponent, decorators: [{
153
+ type: i0.Component,
154
+ args: [{
155
+ selector: 'abp-page-alert-container',
156
+ templateUrl: './page-alert-container.component.html',
157
+ encapsulation: i0.ViewEncapsulation.None,
158
+ }]
159
159
  }], ctorParameters: function () { return [{ type: i1__namespace$1.PageAlertService }]; } });
160
160
 
161
- var TenantBoxComponent = /** @class */ (function () {
162
- function TenantBoxComponent(service) {
163
- this.service = service;
164
- }
165
- return TenantBoxComponent;
166
- }());
167
- TenantBoxComponent.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0__namespace, type: TenantBoxComponent, deps: [{ token: i1__namespace$2.TenantBoxService }], target: i0__namespace.ɵɵFactoryTarget.Component });
168
- TenantBoxComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.13", type: TenantBoxComponent, selector: "abp-tenant-box", providers: [i1$2.TenantBoxService], ngImport: i0__namespace, template: "<ng-container *ngIf=\"(service.currentTenant$ | async) || { name: '' } as currentTenant\">\n <div class=\"card shadow-sm rounded mb-3\">\n <div class=\"card-body px-5\">\n <div class=\"row\">\n <div class=\"col\">\n <span style=\"font-size: 0.8em\" class=\"text-uppercase text-muted\">{{\n 'AbpUiMultiTenancy::Tenant' | abpLocalization\n }}</span\n ><br />\n <h6 class=\"m-0 d-inline-block\">\n <i>{{ currentTenant.name || ('AbpUiMultiTenancy::NotSelected' | abpLocalization) }}</i>\n </h6>\n </div>\n <div class=\"col-auto\">\n <a\n id=\"AbpTenantSwitchLink\"\n href=\"javascript:void(0);\"\n class=\"btn btn-sm mt-3 btn-outline-primary\"\n (click)=\"service.onSwitch()\"\n >{{ 'AbpUiMultiTenancy::Switch' | abpLocalization }}</a\n >\n </div>\n </div>\n </div>\n </div>\n\n <abp-modal [(visible)]=\"service.isModalVisible\" [busy]=\"service.modalBusy\">\n <ng-template #abpHeader>\n <h5>Switch Tenant</h5>\n </ng-template>\n <ng-template #abpBody>\n <form (ngSubmit)=\"service.save()\">\n <div class=\"mt-2\">\n <div class=\"mb-3 form-group\">\n <label for=\"name\" class=\"form-label\">{{\n 'AbpUiMultiTenancy::Name' | abpLocalization\n }}</label>\n <input\n [(ngModel)]=\"service.name\"\n type=\"text\"\n id=\"name\"\n name=\"tenant\"\n class=\"form-control\"\n autofocus\n />\n </div>\n <p>{{ 'AbpUiMultiTenancy::SwitchTenantHint' | abpLocalization }}</p>\n </div>\n </form>\n </ng-template>\n <ng-template #abpFooter>\n <button abpClose type=\"button\" class=\"btn btn-secondary\">\n {{ 'AbpTenantManagement::Cancel' | abpLocalization }}\n </button>\n <abp-button\n type=\"abp-button\"\n iconClass=\"fa fa-check\"\n (click)=\"service.save()\"\n [disabled]=\"currentTenant?.name === service.name\"\n >\n <span>{{ 'AbpTenantManagement::Save' | abpLocalization }}</span>\n </abp-button>\n </ng-template>\n </abp-modal>\n</ng-container>\n", components: [{ type: i1__namespace$1.ModalComponent, selector: "abp-modal", inputs: ["visible", "busy", "options", "suppressUnsavedChangesWarning"], outputs: ["visibleChange", "init", "appear", "disappear"] }, { type: i1__namespace$1.ButtonComponent, selector: "abp-button", inputs: ["buttonId", "buttonClass", "buttonType", "iconClass", "loading", "disabled", "attributes"], outputs: ["click", "focus", "blur", "abpClick", "abpFocus", "abpBlur"] }], directives: [{ type: i2__namespace$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i4__namespace.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { type: i4__namespace.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { type: i4__namespace.NgForm, selector: "form:not([ngNoForm]):not([formGroup]),ng-form,[ngForm]", inputs: ["ngFormOptions"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { type: i4__namespace.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { type: i1__namespace.AutofocusDirective, selector: "[autofocus]", inputs: ["autofocus"] }, { type: i4__namespace.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i4__namespace.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { type: i1__namespace$1.ModalCloseDirective, selector: "[abpClose]" }], pipes: { "async": i2__namespace$1.AsyncPipe, "abpLocalization": i1__namespace.LocalizationPipe } });
169
- i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0__namespace, type: TenantBoxComponent, decorators: [{
170
- type: i0.Component,
171
- args: [{
172
- selector: 'abp-tenant-box',
173
- templateUrl: './tenant-box.component.html',
174
- providers: [i1$2.TenantBoxService],
175
- }]
161
+ var TenantBoxComponent = /** @class */ (function () {
162
+ function TenantBoxComponent(service) {
163
+ this.service = service;
164
+ }
165
+ return TenantBoxComponent;
166
+ }());
167
+ TenantBoxComponent.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0__namespace, type: TenantBoxComponent, deps: [{ token: i1__namespace$2.TenantBoxService }], target: i0__namespace.ɵɵFactoryTarget.Component });
168
+ TenantBoxComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.13", type: TenantBoxComponent, selector: "abp-tenant-box", providers: [i1$2.TenantBoxService], ngImport: i0__namespace, template: "<ng-container *ngIf=\"(service.currentTenant$ | async) || { name: '' } as currentTenant\">\n <div class=\"card shadow-sm rounded mb-3\">\n <div class=\"card-body px-5\">\n <div class=\"row\">\n <div class=\"col\">\n <span style=\"font-size: 0.8em\" class=\"text-uppercase text-muted\">{{\n 'AbpUiMultiTenancy::Tenant' | abpLocalization\n }}</span\n ><br />\n <h6 class=\"m-0 d-inline-block\">\n <i>{{ currentTenant.name || ('AbpUiMultiTenancy::NotSelected' | abpLocalization) }}</i>\n </h6>\n </div>\n <div class=\"col-auto\">\n <a\n id=\"AbpTenantSwitchLink\"\n href=\"javascript:void(0);\"\n class=\"btn btn-sm mt-3 btn-outline-primary\"\n (click)=\"service.onSwitch()\"\n >{{ 'AbpUiMultiTenancy::Switch' | abpLocalization }}</a\n >\n </div>\n </div>\n </div>\n </div>\n\n <abp-modal [(visible)]=\"service.isModalVisible\" [busy]=\"service.modalBusy\">\n <ng-template #abpHeader>\n <h5>Switch Tenant</h5>\n </ng-template>\n <ng-template #abpBody>\n <form (ngSubmit)=\"service.save()\">\n <div class=\"mt-2\">\n <div class=\"mb-3 form-group\">\n <label for=\"name\" class=\"form-label\">{{\n 'AbpUiMultiTenancy::Name' | abpLocalization\n }}</label>\n <input\n [(ngModel)]=\"service.name\"\n type=\"text\"\n id=\"name\"\n name=\"tenant\"\n class=\"form-control\"\n autofocus\n />\n </div>\n <p>{{ 'AbpUiMultiTenancy::SwitchTenantHint' | abpLocalization }}</p>\n </div>\n </form>\n </ng-template>\n <ng-template #abpFooter>\n <button abpClose type=\"button\" class=\"btn btn-secondary\">\n {{ 'AbpTenantManagement::Cancel' | abpLocalization }}\n </button>\n <abp-button\n type=\"abp-button\"\n iconClass=\"fa fa-check\"\n (click)=\"service.save()\"\n [disabled]=\"currentTenant?.name === service.name\"\n >\n <span>{{ 'AbpTenantManagement::Save' | abpLocalization }}</span>\n </abp-button>\n </ng-template>\n </abp-modal>\n</ng-container>\n", components: [{ type: i1__namespace$1.ModalComponent, selector: "abp-modal", inputs: ["visible", "busy", "options", "suppressUnsavedChangesWarning"], outputs: ["visibleChange", "init", "appear", "disappear"] }, { type: i1__namespace$1.ButtonComponent, selector: "abp-button", inputs: ["buttonId", "buttonClass", "buttonType", "iconClass", "loading", "disabled", "attributes"], outputs: ["click", "focus", "blur", "abpClick", "abpFocus", "abpBlur"] }], directives: [{ type: i2__namespace$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i4__namespace.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { type: i4__namespace.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { type: i4__namespace.NgForm, selector: "form:not([ngNoForm]):not([formGroup]),ng-form,[ngForm]", inputs: ["ngFormOptions"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { type: i4__namespace.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { type: i1__namespace.AutofocusDirective, selector: "[autofocus]", inputs: ["autofocus"] }, { type: i4__namespace.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i4__namespace.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { type: i1__namespace$1.ModalCloseDirective, selector: "[abpClose]" }], pipes: { "async": i2__namespace$1.AsyncPipe, "abpLocalization": i1__namespace.LocalizationPipe } });
169
+ i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0__namespace, type: TenantBoxComponent, decorators: [{
170
+ type: i0.Component,
171
+ args: [{
172
+ selector: 'abp-tenant-box',
173
+ templateUrl: './tenant-box.component.html',
174
+ providers: [i1$2.TenantBoxService],
175
+ }]
176
176
  }], ctorParameters: function () { return [{ type: i1__namespace$2.TenantBoxService }]; } });
177
177
 
178
- var AuthWrapperComponent = /** @class */ (function () {
179
- function AuthWrapperComponent(service) {
180
- this.service = service;
181
- }
182
- return AuthWrapperComponent;
183
- }());
184
- AuthWrapperComponent.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0__namespace, type: AuthWrapperComponent, deps: [{ token: i1__namespace$2.AuthWrapperService }], target: i0__namespace.ɵɵFactoryTarget.Component });
185
- AuthWrapperComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.13", type: AuthWrapperComponent, selector: "abp-auth-wrapper", providers: [i1$2.AuthWrapperService], ngImport: i0__namespace, template: "<div class=\"row\">\n <div class=\"mx-auto col col-md-5\">\n <ng-container *ngIf=\"(service.isMultiTenancyEnabled$ | async) && service.isTenantBoxVisible\">\n <abp-tenant-box\n *abpReplaceableTemplate=\"{ componentKey: service.tenantBoxKey }\"\n ></abp-tenant-box>\n </ng-container>\n\n <div class=\"abp-account-container\">\n <div\n *ngIf=\"service.enableLocalLogin$ | async; else disableLocalLoginTemplate\"\n class=\"card mt-3 shadow-sm rounded\"\n >\n <div class=\"card-body p-5\">\n <ng-content></ng-content>\n </div>\n </div>\n </div>\n </div>\n</div>\n\n<ng-template #disableLocalLoginTemplate>\n <div class=\"alert alert-warning\">\n <strong>{{ 'AbpAccount::InvalidLoginRequest' | abpLocalization }}</strong>\n {{ 'AbpAccount::ThereAreNoLoginSchemesConfiguredForThisClient' | abpLocalization }}\n </div>\n</ng-template>\n", components: [{ type: TenantBoxComponent, selector: "abp-tenant-box" }], directives: [{ type: i2__namespace$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1__namespace.ReplaceableTemplateDirective, selector: "[abpReplaceableTemplate]", inputs: ["abpReplaceableTemplate"] }], pipes: { "async": i2__namespace$1.AsyncPipe, "abpLocalization": i1__namespace.LocalizationPipe } });
186
- i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0__namespace, type: AuthWrapperComponent, decorators: [{
187
- type: i0.Component,
188
- args: [{
189
- selector: 'abp-auth-wrapper',
190
- templateUrl: './auth-wrapper.component.html',
191
- providers: [i1$2.AuthWrapperService],
192
- }]
178
+ var AuthWrapperComponent = /** @class */ (function () {
179
+ function AuthWrapperComponent(service) {
180
+ this.service = service;
181
+ }
182
+ return AuthWrapperComponent;
183
+ }());
184
+ AuthWrapperComponent.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0__namespace, type: AuthWrapperComponent, deps: [{ token: i1__namespace$2.AuthWrapperService }], target: i0__namespace.ɵɵFactoryTarget.Component });
185
+ AuthWrapperComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.13", type: AuthWrapperComponent, selector: "abp-auth-wrapper", providers: [i1$2.AuthWrapperService], ngImport: i0__namespace, template: "<div class=\"row\">\n <div class=\"mx-auto col col-md-5\">\n <ng-container *ngIf=\"(service.isMultiTenancyEnabled$ | async) && service.isTenantBoxVisible\">\n <abp-tenant-box\n *abpReplaceableTemplate=\"{ componentKey: service.tenantBoxKey }\"\n ></abp-tenant-box>\n </ng-container>\n\n <div class=\"abp-account-container\">\n <div\n *ngIf=\"service.enableLocalLogin$ | async; else disableLocalLoginTemplate\"\n class=\"card mt-3 shadow-sm rounded\"\n >\n <div class=\"card-body p-5\">\n <ng-content></ng-content>\n </div>\n </div>\n </div>\n </div>\n</div>\n\n<ng-template #disableLocalLoginTemplate>\n <div class=\"alert alert-warning\">\n <strong>{{ 'AbpAccount::InvalidLoginRequest' | abpLocalization }}</strong>\n {{ 'AbpAccount::ThereAreNoLoginSchemesConfiguredForThisClient' | abpLocalization }}\n </div>\n</ng-template>\n", components: [{ type: TenantBoxComponent, selector: "abp-tenant-box" }], directives: [{ type: i2__namespace$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1__namespace.ReplaceableTemplateDirective, selector: "[abpReplaceableTemplate]", inputs: ["abpReplaceableTemplate"] }], pipes: { "async": i2__namespace$1.AsyncPipe, "abpLocalization": i1__namespace.LocalizationPipe } });
186
+ i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0__namespace, type: AuthWrapperComponent, decorators: [{
187
+ type: i0.Component,
188
+ args: [{
189
+ selector: 'abp-auth-wrapper',
190
+ templateUrl: './auth-wrapper.component.html',
191
+ providers: [i1$2.AuthWrapperService],
192
+ }]
193
193
  }], ctorParameters: function () { return [{ type: i1__namespace$2.AuthWrapperService }]; } });
194
194
 
195
- var AccountLayoutComponent = /** @class */ (function () {
196
- function AccountLayoutComponent(service) {
197
- this.service = service;
198
- this.authWrapperKey = 'Account.AuthWrapperComponent';
199
- }
200
- AccountLayoutComponent.prototype.ngAfterViewInit = function () {
201
- this.service.subscribeWindowSize();
202
- };
203
- return AccountLayoutComponent;
204
- }());
205
- // required for dynamic component
206
- AccountLayoutComponent.type = "account" /* account */;
207
- AccountLayoutComponent.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0__namespace, type: AccountLayoutComponent, deps: [{ token: LayoutService }], target: i0__namespace.ɵɵFactoryTarget.Component });
208
- AccountLayoutComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.13", type: AccountLayoutComponent, selector: "abp-layout-account", providers: [LayoutService, i1.SubscriptionService], ngImport: i0__namespace, template: "<nav\n class=\"navbar navbar-expand-lg navbar-dark bg-dark shadow-sm flex-column flex-md-row mb-4\"\n id=\"main-navbar\"\n style=\"min-height: 4rem\"\n>\n <div class=\"container\">\n <abp-logo *abpReplaceableTemplate=\"{ componentKey: service.logoComponentKey }\"></abp-logo>\n <button\n class=\"navbar-toggler\"\n type=\"button\"\n [attr.aria-expanded]=\"!service.isCollapsed\"\n (click)=\"service.isCollapsed = !service.isCollapsed\"\n >\n <span class=\"navbar-toggler-icon\"></span>\n </button>\n <div\n class=\"navbar-collapse\"\n [class.overflow-hidden]=\"service.smallScreen\"\n id=\"main-navbar-collapse\"\n >\n <ng-container *ngTemplateOutlet=\"!service.smallScreen ? navigations : null\"></ng-container>\n\n <div\n *ngIf=\"service.smallScreen\"\n [@collapseWithMargin]=\"service.isCollapsed ? 'collapsed' : 'expanded'\"\n >\n <ng-container *ngTemplateOutlet=\"navigations\"></ng-container>\n </div>\n\n <ng-template #navigations>\n <abp-routes\n *abpReplaceableTemplate=\"{\n componentKey: service.routesComponentKey,\n inputs: {\n smallScreen: { value: service.smallScreen }\n }\n }\"\n class=\"mx-auto\"\n [smallScreen]=\"service.smallScreen\"\n ></abp-routes>\n\n <abp-nav-items\n *abpReplaceableTemplate=\"{\n componentKey: service.navItemsComponentKey\n }\"\n ></abp-nav-items>\n </ng-template>\n </div>\n </div>\n</nav>\n\n<!-- [@slideFromBottom]=\"outlet.isActivated && outlet.activatedRoute?.routeConfig?.path\" TODO: throws ExpressionChangedAfterItHasBeenCheck when animation is active. It should be fixed -->\n<div class=\"container\">\n <abp-page-alert-container></abp-page-alert-container>\n <abp-auth-wrapper\n *abpReplaceableTemplate=\"{\n componentKey: authWrapperKey\n }\"\n >\n <router-outlet #outlet=\"outlet\"></router-outlet>\n </abp-auth-wrapper>\n</div>\n", components: [{ type: LogoComponent, selector: "abp-logo" }, { type: RoutesComponent, selector: "abp-routes", inputs: ["smallScreen"] }, { type: NavItemsComponent, selector: "abp-nav-items" }, { type: PageAlertContainerComponent, selector: "abp-page-alert-container" }, { type: AuthWrapperComponent, selector: "abp-auth-wrapper" }], directives: [{ type: i3__namespace.NgbNavbar, selector: ".navbar" }, { type: i1__namespace.ReplaceableTemplateDirective, selector: "[abpReplaceableTemplate]", inputs: ["abpReplaceableTemplate"] }, { type: i2__namespace$1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }, { type: i2__namespace$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i2__namespace.RouterOutlet, selector: "router-outlet", outputs: ["activate", "deactivate"], exportAs: ["outlet"] }] });
209
- i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0__namespace, type: AccountLayoutComponent, decorators: [{
210
- type: i0.Component,
211
- args: [{
212
- selector: 'abp-layout-account',
213
- templateUrl: './account-layout.component.html',
214
- providers: [LayoutService, i1.SubscriptionService],
215
- }]
195
+ var AccountLayoutComponent = /** @class */ (function () {
196
+ function AccountLayoutComponent(service) {
197
+ this.service = service;
198
+ this.authWrapperKey = 'Account.AuthWrapperComponent';
199
+ }
200
+ AccountLayoutComponent.prototype.ngAfterViewInit = function () {
201
+ this.service.subscribeWindowSize();
202
+ };
203
+ return AccountLayoutComponent;
204
+ }());
205
+ // required for dynamic component
206
+ AccountLayoutComponent.type = "account" /* account */;
207
+ AccountLayoutComponent.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0__namespace, type: AccountLayoutComponent, deps: [{ token: LayoutService }], target: i0__namespace.ɵɵFactoryTarget.Component });
208
+ AccountLayoutComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.13", type: AccountLayoutComponent, selector: "abp-layout-account", providers: [LayoutService, i1.SubscriptionService], ngImport: i0__namespace, template: "<nav\n class=\"navbar navbar-expand-lg navbar-dark bg-dark shadow-sm flex-column flex-md-row mb-4\"\n id=\"main-navbar\"\n style=\"min-height: 4rem\"\n>\n <div class=\"container\">\n <abp-logo *abpReplaceableTemplate=\"{ componentKey: service.logoComponentKey }\"></abp-logo>\n <button\n class=\"navbar-toggler\"\n type=\"button\"\n [attr.aria-expanded]=\"!service.isCollapsed\"\n (click)=\"service.isCollapsed = !service.isCollapsed\"\n >\n <span class=\"navbar-toggler-icon\"></span>\n </button>\n <div\n class=\"navbar-collapse\"\n [class.overflow-hidden]=\"service.smallScreen\"\n id=\"main-navbar-collapse\"\n >\n <ng-container *ngTemplateOutlet=\"!service.smallScreen ? navigations : null\"></ng-container>\n\n <div\n *ngIf=\"service.smallScreen\"\n [@collapseWithMargin]=\"service.isCollapsed ? 'collapsed' : 'expanded'\"\n >\n <ng-container *ngTemplateOutlet=\"navigations\"></ng-container>\n </div>\n\n <ng-template #navigations>\n <abp-routes\n *abpReplaceableTemplate=\"{\n componentKey: service.routesComponentKey,\n inputs: {\n smallScreen: { value: service.smallScreen }\n }\n }\"\n class=\"mx-auto\"\n [smallScreen]=\"service.smallScreen\"\n ></abp-routes>\n\n <abp-nav-items\n *abpReplaceableTemplate=\"{\n componentKey: service.navItemsComponentKey\n }\"\n ></abp-nav-items>\n </ng-template>\n </div>\n </div>\n</nav>\n\n<!-- [@slideFromBottom]=\"outlet.isActivated && outlet.activatedRoute?.routeConfig?.path\" TODO: throws ExpressionChangedAfterItHasBeenCheck when animation is active. It should be fixed -->\n<div class=\"container\">\n <abp-page-alert-container></abp-page-alert-container>\n <abp-auth-wrapper\n *abpReplaceableTemplate=\"{\n componentKey: authWrapperKey\n }\"\n >\n <router-outlet #outlet=\"outlet\"></router-outlet>\n </abp-auth-wrapper>\n</div>\n", components: [{ type: LogoComponent, selector: "abp-logo" }, { type: RoutesComponent, selector: "abp-routes", inputs: ["smallScreen"] }, { type: NavItemsComponent, selector: "abp-nav-items" }, { type: PageAlertContainerComponent, selector: "abp-page-alert-container" }, { type: AuthWrapperComponent, selector: "abp-auth-wrapper" }], directives: [{ type: i3__namespace.NgbNavbar, selector: ".navbar" }, { type: i1__namespace.ReplaceableTemplateDirective, selector: "[abpReplaceableTemplate]", inputs: ["abpReplaceableTemplate"] }, { type: i2__namespace$1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }, { type: i2__namespace$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i2__namespace.RouterOutlet, selector: "router-outlet", outputs: ["activate", "deactivate"], exportAs: ["outlet"] }] });
209
+ i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0__namespace, type: AccountLayoutComponent, decorators: [{
210
+ type: i0.Component,
211
+ args: [{
212
+ selector: 'abp-layout-account',
213
+ templateUrl: './account-layout.component.html',
214
+ providers: [LayoutService, i1.SubscriptionService],
215
+ }]
216
216
  }], ctorParameters: function () { return [{ type: LayoutService }]; } });
217
217
 
218
- var ApplicationLayoutComponent = /** @class */ (function () {
219
- function ApplicationLayoutComponent(service) {
220
- this.service = service;
221
- }
222
- ApplicationLayoutComponent.prototype.ngAfterViewInit = function () {
223
- this.service.subscribeWindowSize();
224
- };
225
- return ApplicationLayoutComponent;
226
- }());
227
- // required for dynamic component
228
- ApplicationLayoutComponent.type = "application" /* application */;
229
- ApplicationLayoutComponent.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0__namespace, type: ApplicationLayoutComponent, deps: [{ token: LayoutService }], target: i0__namespace.ɵɵFactoryTarget.Component });
230
- ApplicationLayoutComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.13", type: ApplicationLayoutComponent, selector: "abp-layout-application", providers: [LayoutService, i1.SubscriptionService], ngImport: i0__namespace, template: "<nav\n class=\"navbar navbar-expand-lg navbar-dark bg-dark shadow-sm flex-column flex-md-row mb-4\"\n id=\"main-navbar\"\n style=\"min-height: 4rem\"\n>\n <div class=\"container\">\n <abp-logo *abpReplaceableTemplate=\"{ componentKey: service.logoComponentKey }\"></abp-logo>\n <button\n class=\"navbar-toggler\"\n type=\"button\"\n [attr.aria-expanded]=\"!service.isCollapsed\"\n (click)=\"service.isCollapsed = !service.isCollapsed\"\n >\n <span class=\"navbar-toggler-icon\"></span>\n </button>\n <div class=\"navbar-collapse\" [class.overflow-hidden]=\"service.smallScreen\" id=\"main-navbar-collapse\">\n <ng-container *ngTemplateOutlet=\"!service.smallScreen ? navigations : null\"></ng-container>\n\n <div *ngIf=\"service.smallScreen\" [@collapseWithMargin]=\"service.isCollapsed ? 'collapsed' : 'expanded'\">\n <ng-container *ngTemplateOutlet=\"navigations\"></ng-container>\n </div>\n\n <ng-template #navigations>\n <abp-routes\n *abpReplaceableTemplate=\"{\n componentKey: service.routesComponentKey,\n inputs: {\n smallScreen: { value: service.smallScreen }\n }\n }\"\n class=\"mx-auto\"\n [smallScreen]=\"service.smallScreen\"\n ></abp-routes>\n\n <abp-nav-items\n *abpReplaceableTemplate=\"{\n componentKey: service.navItemsComponentKey\n }\"\n ></abp-nav-items>\n </ng-template>\n </div>\n </div>\n</nav>\n\n<!-- [@slideFromBottom]=\"outlet.isActivated && outlet.activatedRoute?.routeConfig?.path\" TODO: throws ExpressionChangedAfterItHasBeenCheck when animation is active. It should be fixed -->\n<div class=\"container\">\n <abp-page-alert-container></abp-page-alert-container>\n\n <router-outlet #outlet=\"outlet\"></router-outlet>\n</div>\n", components: [{ type: LogoComponent, selector: "abp-logo" }, { type: RoutesComponent, selector: "abp-routes", inputs: ["smallScreen"] }, { type: NavItemsComponent, selector: "abp-nav-items" }, { type: PageAlertContainerComponent, selector: "abp-page-alert-container" }], directives: [{ type: i3__namespace.NgbNavbar, selector: ".navbar" }, { type: i1__namespace.ReplaceableTemplateDirective, selector: "[abpReplaceableTemplate]", inputs: ["abpReplaceableTemplate"] }, { type: i2__namespace$1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }, { type: i2__namespace$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i2__namespace.RouterOutlet, selector: "router-outlet", outputs: ["activate", "deactivate"], exportAs: ["outlet"] }], animations: [i1$1.slideFromBottom, i1$1.collapseWithMargin] });
231
- i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0__namespace, type: ApplicationLayoutComponent, decorators: [{
232
- type: i0.Component,
233
- args: [{
234
- selector: 'abp-layout-application',
235
- templateUrl: './application-layout.component.html',
236
- animations: [i1$1.slideFromBottom, i1$1.collapseWithMargin],
237
- providers: [LayoutService, i1.SubscriptionService],
238
- }]
218
+ var ApplicationLayoutComponent = /** @class */ (function () {
219
+ function ApplicationLayoutComponent(service) {
220
+ this.service = service;
221
+ }
222
+ ApplicationLayoutComponent.prototype.ngAfterViewInit = function () {
223
+ this.service.subscribeWindowSize();
224
+ };
225
+ return ApplicationLayoutComponent;
226
+ }());
227
+ // required for dynamic component
228
+ ApplicationLayoutComponent.type = "application" /* application */;
229
+ ApplicationLayoutComponent.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0__namespace, type: ApplicationLayoutComponent, deps: [{ token: LayoutService }], target: i0__namespace.ɵɵFactoryTarget.Component });
230
+ ApplicationLayoutComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.13", type: ApplicationLayoutComponent, selector: "abp-layout-application", providers: [LayoutService, i1.SubscriptionService], ngImport: i0__namespace, template: "<nav\n class=\"navbar navbar-expand-lg navbar-dark bg-dark shadow-sm flex-column flex-md-row mb-4\"\n id=\"main-navbar\"\n style=\"min-height: 4rem\"\n>\n <div class=\"container\">\n <abp-logo *abpReplaceableTemplate=\"{ componentKey: service.logoComponentKey }\"></abp-logo>\n <button\n class=\"navbar-toggler\"\n type=\"button\"\n [attr.aria-expanded]=\"!service.isCollapsed\"\n (click)=\"service.isCollapsed = !service.isCollapsed\"\n >\n <span class=\"navbar-toggler-icon\"></span>\n </button>\n <div class=\"navbar-collapse\" [class.overflow-hidden]=\"service.smallScreen\" id=\"main-navbar-collapse\">\n <ng-container *ngTemplateOutlet=\"!service.smallScreen ? navigations : null\"></ng-container>\n\n <div *ngIf=\"service.smallScreen\" [@collapseWithMargin]=\"service.isCollapsed ? 'collapsed' : 'expanded'\">\n <ng-container *ngTemplateOutlet=\"navigations\"></ng-container>\n </div>\n\n <ng-template #navigations>\n <abp-routes\n *abpReplaceableTemplate=\"{\n componentKey: service.routesComponentKey,\n inputs: {\n smallScreen: { value: service.smallScreen }\n }\n }\"\n class=\"mx-auto\"\n [smallScreen]=\"service.smallScreen\"\n ></abp-routes>\n\n <abp-nav-items\n *abpReplaceableTemplate=\"{\n componentKey: service.navItemsComponentKey\n }\"\n ></abp-nav-items>\n </ng-template>\n </div>\n </div>\n</nav>\n\n<!-- [@slideFromBottom]=\"outlet.isActivated && outlet.activatedRoute?.routeConfig?.path\" TODO: throws ExpressionChangedAfterItHasBeenCheck when animation is active. It should be fixed -->\n<div class=\"container\">\n <abp-page-alert-container></abp-page-alert-container>\n\n <router-outlet #outlet=\"outlet\"></router-outlet>\n</div>\n", components: [{ type: LogoComponent, selector: "abp-logo" }, { type: RoutesComponent, selector: "abp-routes", inputs: ["smallScreen"] }, { type: NavItemsComponent, selector: "abp-nav-items" }, { type: PageAlertContainerComponent, selector: "abp-page-alert-container" }], directives: [{ type: i3__namespace.NgbNavbar, selector: ".navbar" }, { type: i1__namespace.ReplaceableTemplateDirective, selector: "[abpReplaceableTemplate]", inputs: ["abpReplaceableTemplate"] }, { type: i2__namespace$1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }, { type: i2__namespace$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i2__namespace.RouterOutlet, selector: "router-outlet", outputs: ["activate", "deactivate"], exportAs: ["outlet"] }], animations: [i1$1.slideFromBottom, i1$1.collapseWithMargin] });
231
+ i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0__namespace, type: ApplicationLayoutComponent, decorators: [{
232
+ type: i0.Component,
233
+ args: [{
234
+ selector: 'abp-layout-application',
235
+ templateUrl: './application-layout.component.html',
236
+ animations: [i1$1.slideFromBottom, i1$1.collapseWithMargin],
237
+ providers: [LayoutService, i1.SubscriptionService],
238
+ }]
239
239
  }], ctorParameters: function () { return [{ type: LayoutService }]; } });
240
240
 
241
- var EmptyLayoutComponent = /** @class */ (function () {
242
- function EmptyLayoutComponent() {
243
- }
244
- return EmptyLayoutComponent;
245
- }());
246
- EmptyLayoutComponent.type = "empty" /* empty */;
247
- EmptyLayoutComponent.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0__namespace, type: EmptyLayoutComponent, deps: [], target: i0__namespace.ɵɵFactoryTarget.Component });
248
- EmptyLayoutComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.13", type: EmptyLayoutComponent, selector: "abp-layout-empty", ngImport: i0__namespace, template: "\n <router-outlet></router-outlet>\n <abp-confirmation></abp-confirmation>\n ", isInline: true, components: [{ type: i1__namespace$1.ConfirmationComponent, selector: "abp-confirmation" }], directives: [{ type: i2__namespace.RouterOutlet, selector: "router-outlet", outputs: ["activate", "deactivate"], exportAs: ["outlet"] }] });
249
- i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0__namespace, type: EmptyLayoutComponent, decorators: [{
250
- type: i0.Component,
251
- args: [{
252
- selector: 'abp-layout-empty',
253
- template: "\n <router-outlet></router-outlet>\n <abp-confirmation></abp-confirmation>\n ",
254
- }]
241
+ var EmptyLayoutComponent = /** @class */ (function () {
242
+ function EmptyLayoutComponent() {
243
+ }
244
+ return EmptyLayoutComponent;
245
+ }());
246
+ EmptyLayoutComponent.type = "empty" /* empty */;
247
+ EmptyLayoutComponent.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0__namespace, type: EmptyLayoutComponent, deps: [], target: i0__namespace.ɵɵFactoryTarget.Component });
248
+ EmptyLayoutComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.13", type: EmptyLayoutComponent, selector: "abp-layout-empty", ngImport: i0__namespace, template: "\n <router-outlet></router-outlet>\n <abp-confirmation></abp-confirmation>\n ", isInline: true, components: [{ type: i1__namespace$1.ConfirmationComponent, selector: "abp-confirmation" }], directives: [{ type: i2__namespace.RouterOutlet, selector: "router-outlet", outputs: ["activate", "deactivate"], exportAs: ["outlet"] }] });
249
+ i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0__namespace, type: EmptyLayoutComponent, decorators: [{
250
+ type: i0.Component,
251
+ args: [{
252
+ selector: 'abp-layout-empty',
253
+ template: "\n <router-outlet></router-outlet>\n <abp-confirmation></abp-confirmation>\n ",
254
+ }]
255
255
  }] });
256
256
 
257
- var CurrentUserComponent = /** @class */ (function () {
258
- function CurrentUserComponent(navigateToManageProfile, authService, configState, sessionState) {
259
- this.navigateToManageProfile = navigateToManageProfile;
260
- this.authService = authService;
261
- this.configState = configState;
262
- this.sessionState = sessionState;
263
- this.currentUser$ = this.configState.getOne$('currentUser');
264
- this.selectedTenant$ = this.sessionState.getTenant$();
265
- }
266
- Object.defineProperty(CurrentUserComponent.prototype, "smallScreen", {
267
- get: function () {
268
- return window.innerWidth < 992;
269
- },
270
- enumerable: false,
271
- configurable: true
272
- });
273
- CurrentUserComponent.prototype.navigateToLogin = function () {
274
- this.authService.navigateToLogin();
275
- };
276
- CurrentUserComponent.prototype.logout = function () {
277
- this.authService.logout().subscribe();
278
- };
279
- return CurrentUserComponent;
280
- }());
281
- CurrentUserComponent.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0__namespace, type: CurrentUserComponent, deps: [{ token: i1.NAVIGATE_TO_MANAGE_PROFILE }, { token: i1__namespace.AuthService }, { token: i1__namespace.ConfigStateService }, { token: i1__namespace.SessionStateService }], target: i0__namespace.ɵɵFactoryTarget.Component });
282
- CurrentUserComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.13", type: CurrentUserComponent, selector: "abp-current-user", ngImport: i0__namespace, template: "<ng-template #loginBtn>\n <a role=\"button\" class=\"nav-link pointer\" (click)=\"navigateToLogin()\">{{\n 'AbpAccount::Login' | abpLocalization\n }}</a>\n</ng-template>\n<div\n *ngIf=\"(currentUser$ | async)?.isAuthenticated; else loginBtn\"\n ngbDropdown\n class=\"dropdown\"\n #currentUserDropdown=\"ngbDropdown\"\n display=\"static\"\n>\n <a\n ngbDropdownToggle\n class=\"nav-link\"\n href=\"javascript:void(0)\"\n role=\"button\"\n id=\"dropdownMenuLink\"\n data-toggle=\"dropdown\"\n aria-haspopup=\"true\"\n aria-expanded=\"false\"\n >\n <small *ngIf=\"(selectedTenant$ | async)?.name as tenantName\"\n ><i>{{ tenantName }}</i\n >\\</small\n >\n <strong>{{ (currentUser$ | async)?.userName }}</strong>\n </a>\n <div\n class=\"dropdown-menu dropdown-menu-end border-0 shadow-sm\"\n aria-labelledby=\"dropdownMenuLink\"\n [class.d-block]=\"smallScreen && currentUserDropdown.isOpen()\"\n >\n <a class=\"dropdown-item pointer\" (click)=\"navigateToManageProfile()\"\n ><i class=\"fa fa-cog me-1\"></i>{{ 'AbpAccount::MyAccount' | abpLocalization }}</a\n >\n <a class=\"dropdown-item\" href=\"javascript:void(0)\" (click)=\"logout()\"\n ><i class=\"fa fa-power-off me-1\"></i>{{ 'AbpUi::Logout' | abpLocalization }}</a\n >\n </div>\n</div>\n", directives: [{ type: i2__namespace$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i3__namespace.NgbDropdown, selector: "[ngbDropdown]", inputs: ["open", "placement", "container", "autoClose", "display", "dropdownClass"], outputs: ["openChange"], exportAs: ["ngbDropdown"] }, { type: i3__namespace.NgbDropdownToggle, selector: "[ngbDropdownToggle]" }], pipes: { "abpLocalization": i1__namespace.LocalizationPipe, "async": i2__namespace$1.AsyncPipe } });
283
- i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0__namespace, type: CurrentUserComponent, decorators: [{
284
- type: i0.Component,
285
- args: [{
286
- selector: 'abp-current-user',
287
- templateUrl: './current-user.component.html',
288
- }]
289
- }], ctorParameters: function () {
290
- return [{ type: undefined, decorators: [{
291
- type: i0.Inject,
292
- args: [i1.NAVIGATE_TO_MANAGE_PROFILE]
293
- }] }, { type: i1__namespace.AuthService }, { type: i1__namespace.ConfigStateService }, { type: i1__namespace.SessionStateService }];
257
+ var CurrentUserComponent = /** @class */ (function () {
258
+ function CurrentUserComponent(navigateToManageProfile, authService, configState, sessionState) {
259
+ this.navigateToManageProfile = navigateToManageProfile;
260
+ this.authService = authService;
261
+ this.configState = configState;
262
+ this.sessionState = sessionState;
263
+ this.currentUser$ = this.configState.getOne$('currentUser');
264
+ this.selectedTenant$ = this.sessionState.getTenant$();
265
+ }
266
+ Object.defineProperty(CurrentUserComponent.prototype, "smallScreen", {
267
+ get: function () {
268
+ return window.innerWidth < 992;
269
+ },
270
+ enumerable: false,
271
+ configurable: true
272
+ });
273
+ CurrentUserComponent.prototype.navigateToLogin = function () {
274
+ this.authService.navigateToLogin();
275
+ };
276
+ CurrentUserComponent.prototype.logout = function () {
277
+ this.authService.logout().subscribe();
278
+ };
279
+ return CurrentUserComponent;
280
+ }());
281
+ CurrentUserComponent.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0__namespace, type: CurrentUserComponent, deps: [{ token: i1.NAVIGATE_TO_MANAGE_PROFILE }, { token: i1__namespace.AuthService }, { token: i1__namespace.ConfigStateService }, { token: i1__namespace.SessionStateService }], target: i0__namespace.ɵɵFactoryTarget.Component });
282
+ CurrentUserComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.13", type: CurrentUserComponent, selector: "abp-current-user", ngImport: i0__namespace, template: "<ng-template #loginBtn>\n <a role=\"button\" class=\"nav-link pointer\" (click)=\"navigateToLogin()\">{{\n 'AbpAccount::Login' | abpLocalization\n }}</a>\n</ng-template>\n<div\n *ngIf=\"(currentUser$ | async)?.isAuthenticated; else loginBtn\"\n ngbDropdown\n class=\"dropdown\"\n #currentUserDropdown=\"ngbDropdown\"\n display=\"static\"\n>\n <a\n ngbDropdownToggle\n class=\"nav-link\"\n href=\"javascript:void(0)\"\n role=\"button\"\n id=\"dropdownMenuLink\"\n data-toggle=\"dropdown\"\n aria-haspopup=\"true\"\n aria-expanded=\"false\"\n >\n <small *ngIf=\"(selectedTenant$ | async)?.name as tenantName\"\n ><i>{{ tenantName }}</i\n >\\</small\n >\n <strong>{{ (currentUser$ | async)?.userName }}</strong>\n </a>\n <div\n class=\"dropdown-menu dropdown-menu-end border-0 shadow-sm\"\n aria-labelledby=\"dropdownMenuLink\"\n [class.d-block]=\"smallScreen && currentUserDropdown.isOpen()\"\n >\n <a class=\"dropdown-item pointer\" (click)=\"navigateToManageProfile()\"\n ><i class=\"fa fa-cog me-1\"></i>{{ 'AbpAccount::MyAccount' | abpLocalization }}</a\n >\n <a class=\"dropdown-item\" href=\"javascript:void(0)\" (click)=\"logout()\"\n ><i class=\"fa fa-power-off me-1\"></i>{{ 'AbpUi::Logout' | abpLocalization }}</a\n >\n </div>\n</div>\n", directives: [{ type: i2__namespace$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i3__namespace.NgbDropdown, selector: "[ngbDropdown]", inputs: ["open", "placement", "container", "autoClose", "display", "dropdownClass"], outputs: ["openChange"], exportAs: ["ngbDropdown"] }, { type: i3__namespace.NgbDropdownToggle, selector: "[ngbDropdownToggle]" }], pipes: { "abpLocalization": i1__namespace.LocalizationPipe, "async": i2__namespace$1.AsyncPipe } });
283
+ i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0__namespace, type: CurrentUserComponent, decorators: [{
284
+ type: i0.Component,
285
+ args: [{
286
+ selector: 'abp-current-user',
287
+ templateUrl: './current-user.component.html',
288
+ }]
289
+ }], ctorParameters: function () {
290
+ return [{ type: undefined, decorators: [{
291
+ type: i0.Inject,
292
+ args: [i1.NAVIGATE_TO_MANAGE_PROFILE]
293
+ }] }, { type: i1__namespace.AuthService }, { type: i1__namespace.ConfigStateService }, { type: i1__namespace.SessionStateService }];
294
294
  } });
295
295
 
296
- var LanguagesComponent = /** @class */ (function () {
297
- function LanguagesComponent(sessionState, configState) {
298
- this.sessionState = sessionState;
299
- this.configState = configState;
300
- this.languages$ = this.configState.getDeep$('localization.languages');
301
- }
302
- Object.defineProperty(LanguagesComponent.prototype, "smallScreen", {
303
- get: function () {
304
- return window.innerWidth < 992;
305
- },
306
- enumerable: false,
307
- configurable: true
308
- });
309
- Object.defineProperty(LanguagesComponent.prototype, "defaultLanguage$", {
310
- get: function () {
311
- var _this = this;
312
- return this.languages$.pipe(operators.map(function (languages) { var _a; return ((_a = languages === null || languages === void 0 ? void 0 : languages.find(function (lang) { return lang.cultureName === _this.selectedLangCulture; })) === null || _a === void 0 ? void 0 : _a.displayName) || ''; }));
313
- },
314
- enumerable: false,
315
- configurable: true
316
- });
317
- Object.defineProperty(LanguagesComponent.prototype, "dropdownLanguages$", {
318
- get: function () {
319
- var _this = this;
320
- return this.languages$.pipe(operators.map(function (languages) { return (languages === null || languages === void 0 ? void 0 : languages.filter(function (lang) { return lang.cultureName !== _this.selectedLangCulture; })) || []; }));
321
- },
322
- enumerable: false,
323
- configurable: true
324
- });
325
- Object.defineProperty(LanguagesComponent.prototype, "selectedLangCulture", {
326
- get: function () {
327
- return this.sessionState.getLanguage();
328
- },
329
- enumerable: false,
330
- configurable: true
331
- });
332
- LanguagesComponent.prototype.onChangeLang = function (cultureName) {
333
- this.sessionState.setLanguage(cultureName);
334
- };
335
- return LanguagesComponent;
336
- }());
337
- LanguagesComponent.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0__namespace, type: LanguagesComponent, deps: [{ token: i1__namespace.SessionStateService }, { token: i1__namespace.ConfigStateService }], target: i0__namespace.ɵɵFactoryTarget.Component });
338
- LanguagesComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.13", type: LanguagesComponent, selector: "abp-languages", ngImport: i0__namespace, template: "\n <div\n *ngIf=\"((dropdownLanguages$ | async)?.length || 0) > 0\"\n class=\"dropdown\"\n ngbDropdown\n #languageDropdown=\"ngbDropdown\"\n display=\"static\"\n >\n <a\n ngbDropdownToggle\n class=\"nav-link\"\n href=\"javascript:void(0)\"\n role=\"button\"\n id=\"dropdownMenuLink\"\n data-toggle=\"dropdown\"\n aria-haspopup=\"true\"\n aria-expanded=\"false\"\n >\n {{ defaultLanguage$ | async }}\n </a>\n <div\n class=\"dropdown-menu dropdown-menu-end border-0 shadow-sm\"\n aria-labelledby=\"dropdownMenuLink\"\n [class.d-block]=\"smallScreen && languageDropdown.isOpen()\"\n >\n <a\n *ngFor=\"let lang of dropdownLanguages$ | async\"\n href=\"javascript:void(0)\"\n class=\"dropdown-item\"\n (click)=\"onChangeLang(lang.cultureName || '')\"\n >{{ lang?.displayName }}</a\n >\n </div>\n </div>\n ", isInline: true, directives: [{ type: i2__namespace$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i3__namespace.NgbDropdown, selector: "[ngbDropdown]", inputs: ["open", "placement", "container", "autoClose", "display", "dropdownClass"], outputs: ["openChange"], exportAs: ["ngbDropdown"] }, { type: i3__namespace.NgbDropdownToggle, selector: "[ngbDropdownToggle]" }, { type: i2__namespace$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }], pipes: { "async": i2__namespace$1.AsyncPipe } });
339
- i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0__namespace, type: LanguagesComponent, decorators: [{
340
- type: i0.Component,
341
- args: [{
342
- selector: 'abp-languages',
343
- template: "\n <div\n *ngIf=\"((dropdownLanguages$ | async)?.length || 0) > 0\"\n class=\"dropdown\"\n ngbDropdown\n #languageDropdown=\"ngbDropdown\"\n display=\"static\"\n >\n <a\n ngbDropdownToggle\n class=\"nav-link\"\n href=\"javascript:void(0)\"\n role=\"button\"\n id=\"dropdownMenuLink\"\n data-toggle=\"dropdown\"\n aria-haspopup=\"true\"\n aria-expanded=\"false\"\n >\n {{ defaultLanguage$ | async }}\n </a>\n <div\n class=\"dropdown-menu dropdown-menu-end border-0 shadow-sm\"\n aria-labelledby=\"dropdownMenuLink\"\n [class.d-block]=\"smallScreen && languageDropdown.isOpen()\"\n >\n <a\n *ngFor=\"let lang of dropdownLanguages$ | async\"\n href=\"javascript:void(0)\"\n class=\"dropdown-item\"\n (click)=\"onChangeLang(lang.cultureName || '')\"\n >{{ lang?.displayName }}</a\n >\n </div>\n </div>\n ",
344
- }]
296
+ var LanguagesComponent = /** @class */ (function () {
297
+ function LanguagesComponent(sessionState, configState) {
298
+ this.sessionState = sessionState;
299
+ this.configState = configState;
300
+ this.languages$ = this.configState.getDeep$('localization.languages');
301
+ }
302
+ Object.defineProperty(LanguagesComponent.prototype, "smallScreen", {
303
+ get: function () {
304
+ return window.innerWidth < 992;
305
+ },
306
+ enumerable: false,
307
+ configurable: true
308
+ });
309
+ Object.defineProperty(LanguagesComponent.prototype, "defaultLanguage$", {
310
+ get: function () {
311
+ var _this = this;
312
+ return this.languages$.pipe(operators.map(function (languages) { var _a; return ((_a = languages === null || languages === void 0 ? void 0 : languages.find(function (lang) { return lang.cultureName === _this.selectedLangCulture; })) === null || _a === void 0 ? void 0 : _a.displayName) || ''; }));
313
+ },
314
+ enumerable: false,
315
+ configurable: true
316
+ });
317
+ Object.defineProperty(LanguagesComponent.prototype, "dropdownLanguages$", {
318
+ get: function () {
319
+ var _this = this;
320
+ return this.languages$.pipe(operators.map(function (languages) { return (languages === null || languages === void 0 ? void 0 : languages.filter(function (lang) { return lang.cultureName !== _this.selectedLangCulture; })) || []; }));
321
+ },
322
+ enumerable: false,
323
+ configurable: true
324
+ });
325
+ Object.defineProperty(LanguagesComponent.prototype, "selectedLangCulture", {
326
+ get: function () {
327
+ return this.sessionState.getLanguage();
328
+ },
329
+ enumerable: false,
330
+ configurable: true
331
+ });
332
+ LanguagesComponent.prototype.onChangeLang = function (cultureName) {
333
+ this.sessionState.setLanguage(cultureName);
334
+ };
335
+ return LanguagesComponent;
336
+ }());
337
+ LanguagesComponent.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0__namespace, type: LanguagesComponent, deps: [{ token: i1__namespace.SessionStateService }, { token: i1__namespace.ConfigStateService }], target: i0__namespace.ɵɵFactoryTarget.Component });
338
+ LanguagesComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.13", type: LanguagesComponent, selector: "abp-languages", ngImport: i0__namespace, template: "\n <div\n *ngIf=\"((dropdownLanguages$ | async)?.length || 0) > 0\"\n class=\"dropdown\"\n ngbDropdown\n #languageDropdown=\"ngbDropdown\"\n display=\"static\"\n >\n <a\n ngbDropdownToggle\n class=\"nav-link\"\n href=\"javascript:void(0)\"\n role=\"button\"\n id=\"dropdownMenuLink\"\n data-toggle=\"dropdown\"\n aria-haspopup=\"true\"\n aria-expanded=\"false\"\n >\n {{ defaultLanguage$ | async }}\n </a>\n <div\n class=\"dropdown-menu dropdown-menu-end border-0 shadow-sm\"\n aria-labelledby=\"dropdownMenuLink\"\n [class.d-block]=\"smallScreen && languageDropdown.isOpen()\"\n >\n <a\n *ngFor=\"let lang of dropdownLanguages$ | async\"\n href=\"javascript:void(0)\"\n class=\"dropdown-item\"\n (click)=\"onChangeLang(lang.cultureName || '')\"\n >{{ lang?.displayName }}</a\n >\n </div>\n </div>\n ", isInline: true, directives: [{ type: i2__namespace$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i3__namespace.NgbDropdown, selector: "[ngbDropdown]", inputs: ["open", "placement", "container", "autoClose", "display", "dropdownClass"], outputs: ["openChange"], exportAs: ["ngbDropdown"] }, { type: i3__namespace.NgbDropdownToggle, selector: "[ngbDropdownToggle]" }, { type: i2__namespace$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }], pipes: { "async": i2__namespace$1.AsyncPipe } });
339
+ i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0__namespace, type: LanguagesComponent, decorators: [{
340
+ type: i0.Component,
341
+ args: [{
342
+ selector: 'abp-languages',
343
+ template: "\n <div\n *ngIf=\"((dropdownLanguages$ | async)?.length || 0) > 0\"\n class=\"dropdown\"\n ngbDropdown\n #languageDropdown=\"ngbDropdown\"\n display=\"static\"\n >\n <a\n ngbDropdownToggle\n class=\"nav-link\"\n href=\"javascript:void(0)\"\n role=\"button\"\n id=\"dropdownMenuLink\"\n data-toggle=\"dropdown\"\n aria-haspopup=\"true\"\n aria-expanded=\"false\"\n >\n {{ defaultLanguage$ | async }}\n </a>\n <div\n class=\"dropdown-menu dropdown-menu-end border-0 shadow-sm\"\n aria-labelledby=\"dropdownMenuLink\"\n [class.d-block]=\"smallScreen && languageDropdown.isOpen()\"\n >\n <a\n *ngFor=\"let lang of dropdownLanguages$ | async\"\n href=\"javascript:void(0)\"\n class=\"dropdown-item\"\n (click)=\"onChangeLang(lang.cultureName || '')\"\n >{{ lang?.displayName }}</a\n >\n </div>\n </div>\n ",
344
+ }]
345
345
  }], ctorParameters: function () { return [{ type: i1__namespace.SessionStateService }, { type: i1__namespace.ConfigStateService }]; } });
346
346
 
347
- /*! *****************************************************************************
348
- Copyright (c) Microsoft Corporation.
349
-
350
- Permission to use, copy, modify, and/or distribute this software for any
351
- purpose with or without fee is hereby granted.
352
-
353
- THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
354
- REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
355
- AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
356
- INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
357
- LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
358
- OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
359
- PERFORMANCE OF THIS SOFTWARE.
360
- ***************************************************************************** */
361
- /* global Reflect, Promise */
362
- var extendStatics = function (d, b) {
363
- extendStatics = Object.setPrototypeOf ||
364
- ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
365
- function (d, b) { for (var p in b)
366
- if (Object.prototype.hasOwnProperty.call(b, p))
367
- d[p] = b[p]; };
368
- return extendStatics(d, b);
369
- };
370
- function __extends(d, b) {
371
- if (typeof b !== "function" && b !== null)
372
- throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
373
- extendStatics(d, b);
374
- function __() { this.constructor = d; }
375
- d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
376
- }
377
- var __assign = function () {
378
- __assign = Object.assign || function __assign(t) {
379
- for (var s, i = 1, n = arguments.length; i < n; i++) {
380
- s = arguments[i];
381
- for (var p in s)
382
- if (Object.prototype.hasOwnProperty.call(s, p))
383
- t[p] = s[p];
384
- }
385
- return t;
386
- };
387
- return __assign.apply(this, arguments);
388
- };
389
- function __rest(s, e) {
390
- var t = {};
391
- for (var p in s)
392
- if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
393
- t[p] = s[p];
394
- if (s != null && typeof Object.getOwnPropertySymbols === "function")
395
- for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
396
- if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
397
- t[p[i]] = s[p[i]];
398
- }
399
- return t;
400
- }
401
- function __decorate(decorators, target, key, desc) {
402
- var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
403
- if (typeof Reflect === "object" && typeof Reflect.decorate === "function")
404
- r = Reflect.decorate(decorators, target, key, desc);
405
- else
406
- for (var i = decorators.length - 1; i >= 0; i--)
407
- if (d = decorators[i])
408
- r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
409
- return c > 3 && r && Object.defineProperty(target, key, r), r;
410
- }
411
- function __param(paramIndex, decorator) {
412
- return function (target, key) { decorator(target, key, paramIndex); };
413
- }
414
- function __metadata(metadataKey, metadataValue) {
415
- if (typeof Reflect === "object" && typeof Reflect.metadata === "function")
416
- return Reflect.metadata(metadataKey, metadataValue);
417
- }
418
- function __awaiter(thisArg, _arguments, P, generator) {
419
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
420
- return new (P || (P = Promise))(function (resolve, reject) {
421
- function fulfilled(value) { try {
422
- step(generator.next(value));
423
- }
424
- catch (e) {
425
- reject(e);
426
- } }
427
- function rejected(value) { try {
428
- step(generator["throw"](value));
429
- }
430
- catch (e) {
431
- reject(e);
432
- } }
433
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
434
- step((generator = generator.apply(thisArg, _arguments || [])).next());
435
- });
436
- }
437
- function __generator(thisArg, body) {
438
- var _ = { label: 0, sent: function () { if (t[0] & 1)
439
- throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
440
- return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function () { return this; }), g;
441
- function verb(n) { return function (v) { return step([n, v]); }; }
442
- function step(op) {
443
- if (f)
444
- throw new TypeError("Generator is already executing.");
445
- while (_)
446
- try {
447
- if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done)
448
- return t;
449
- if (y = 0, t)
450
- op = [op[0] & 2, t.value];
451
- switch (op[0]) {
452
- case 0:
453
- case 1:
454
- t = op;
455
- break;
456
- case 4:
457
- _.label++;
458
- return { value: op[1], done: false };
459
- case 5:
460
- _.label++;
461
- y = op[1];
462
- op = [0];
463
- continue;
464
- case 7:
465
- op = _.ops.pop();
466
- _.trys.pop();
467
- continue;
468
- default:
469
- if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) {
470
- _ = 0;
471
- continue;
472
- }
473
- if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) {
474
- _.label = op[1];
475
- break;
476
- }
477
- if (op[0] === 6 && _.label < t[1]) {
478
- _.label = t[1];
479
- t = op;
480
- break;
481
- }
482
- if (t && _.label < t[2]) {
483
- _.label = t[2];
484
- _.ops.push(op);
485
- break;
486
- }
487
- if (t[2])
488
- _.ops.pop();
489
- _.trys.pop();
490
- continue;
491
- }
492
- op = body.call(thisArg, _);
493
- }
494
- catch (e) {
495
- op = [6, e];
496
- y = 0;
497
- }
498
- finally {
499
- f = t = 0;
500
- }
501
- if (op[0] & 5)
502
- throw op[1];
503
- return { value: op[0] ? op[1] : void 0, done: true };
504
- }
505
- }
506
- var __createBinding = Object.create ? (function (o, m, k, k2) {
507
- if (k2 === undefined)
508
- k2 = k;
509
- Object.defineProperty(o, k2, { enumerable: true, get: function () { return m[k]; } });
510
- }) : (function (o, m, k, k2) {
511
- if (k2 === undefined)
512
- k2 = k;
513
- o[k2] = m[k];
514
- });
515
- function __exportStar(m, o) {
516
- for (var p in m)
517
- if (p !== "default" && !Object.prototype.hasOwnProperty.call(o, p))
518
- __createBinding(o, m, p);
519
- }
520
- function __values(o) {
521
- var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0;
522
- if (m)
523
- return m.call(o);
524
- if (o && typeof o.length === "number")
525
- return {
526
- next: function () {
527
- if (o && i >= o.length)
528
- o = void 0;
529
- return { value: o && o[i++], done: !o };
530
- }
531
- };
532
- throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
533
- }
534
- function __read(o, n) {
535
- var m = typeof Symbol === "function" && o[Symbol.iterator];
536
- if (!m)
537
- return o;
538
- var i = m.call(o), r, ar = [], e;
539
- try {
540
- while ((n === void 0 || n-- > 0) && !(r = i.next()).done)
541
- ar.push(r.value);
542
- }
543
- catch (error) {
544
- e = { error: error };
545
- }
546
- finally {
547
- try {
548
- if (r && !r.done && (m = i["return"]))
549
- m.call(i);
550
- }
551
- finally {
552
- if (e)
553
- throw e.error;
554
- }
555
- }
556
- return ar;
557
- }
558
- /** @deprecated */
559
- function __spread() {
560
- for (var ar = [], i = 0; i < arguments.length; i++)
561
- ar = ar.concat(__read(arguments[i]));
562
- return ar;
563
- }
564
- /** @deprecated */
565
- function __spreadArrays() {
566
- for (var s = 0, i = 0, il = arguments.length; i < il; i++)
567
- s += arguments[i].length;
568
- for (var r = Array(s), k = 0, i = 0; i < il; i++)
569
- for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)
570
- r[k] = a[j];
571
- return r;
572
- }
573
- function __spreadArray(to, from, pack) {
574
- if (pack || arguments.length === 2)
575
- for (var i = 0, l = from.length, ar; i < l; i++) {
576
- if (ar || !(i in from)) {
577
- if (!ar)
578
- ar = Array.prototype.slice.call(from, 0, i);
579
- ar[i] = from[i];
580
- }
581
- }
582
- return to.concat(ar || Array.prototype.slice.call(from));
583
- }
584
- function __await(v) {
585
- return this instanceof __await ? (this.v = v, this) : new __await(v);
586
- }
587
- function __asyncGenerator(thisArg, _arguments, generator) {
588
- if (!Symbol.asyncIterator)
589
- throw new TypeError("Symbol.asyncIterator is not defined.");
590
- var g = generator.apply(thisArg, _arguments || []), i, q = [];
591
- return i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function () { return this; }, i;
592
- function verb(n) { if (g[n])
593
- i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }
594
- function resume(n, v) { try {
595
- step(g[n](v));
596
- }
597
- catch (e) {
598
- settle(q[0][3], e);
599
- } }
600
- function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }
601
- function fulfill(value) { resume("next", value); }
602
- function reject(value) { resume("throw", value); }
603
- function settle(f, v) { if (f(v), q.shift(), q.length)
604
- resume(q[0][0], q[0][1]); }
605
- }
606
- function __asyncDelegator(o) {
607
- var i, p;
608
- return i = {}, verb("next"), verb("throw", function (e) { throw e; }), verb("return"), i[Symbol.iterator] = function () { return this; }, i;
609
- function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === "return" } : f ? f(v) : v; } : f; }
610
- }
611
- function __asyncValues(o) {
612
- if (!Symbol.asyncIterator)
613
- throw new TypeError("Symbol.asyncIterator is not defined.");
614
- var m = o[Symbol.asyncIterator], i;
615
- return m ? m.call(o) : (o = typeof __values === "function" ? __values(o) : o[Symbol.iterator](), i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function () { return this; }, i);
616
- function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }
617
- function settle(resolve, reject, d, v) { Promise.resolve(v).then(function (v) { resolve({ value: v, done: d }); }, reject); }
618
- }
619
- function __makeTemplateObject(cooked, raw) {
620
- if (Object.defineProperty) {
621
- Object.defineProperty(cooked, "raw", { value: raw });
622
- }
623
- else {
624
- cooked.raw = raw;
625
- }
626
- return cooked;
627
- }
628
- ;
629
- var __setModuleDefault = Object.create ? (function (o, v) {
630
- Object.defineProperty(o, "default", { enumerable: true, value: v });
631
- }) : function (o, v) {
632
- o["default"] = v;
633
- };
634
- function __importStar(mod) {
635
- if (mod && mod.__esModule)
636
- return mod;
637
- var result = {};
638
- if (mod != null)
639
- for (var k in mod)
640
- if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k))
641
- __createBinding(result, mod, k);
642
- __setModuleDefault(result, mod);
643
- return result;
644
- }
645
- function __importDefault(mod) {
646
- return (mod && mod.__esModule) ? mod : { default: mod };
647
- }
648
- function __classPrivateFieldGet(receiver, state, kind, f) {
649
- if (kind === "a" && !f)
650
- throw new TypeError("Private accessor was defined without a getter");
651
- if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver))
652
- throw new TypeError("Cannot read private member from an object whose class did not declare it");
653
- return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
654
- }
655
- function __classPrivateFieldSet(receiver, state, value, kind, f) {
656
- if (kind === "m")
657
- throw new TypeError("Private method is not writable");
658
- if (kind === "a" && !f)
659
- throw new TypeError("Private accessor was defined without a setter");
660
- if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver))
661
- throw new TypeError("Cannot write private member to an object whose class did not declare it");
662
- return (kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;
347
+ /*! *****************************************************************************
348
+ Copyright (c) Microsoft Corporation.
349
+
350
+ Permission to use, copy, modify, and/or distribute this software for any
351
+ purpose with or without fee is hereby granted.
352
+
353
+ THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
354
+ REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
355
+ AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
356
+ INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
357
+ LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
358
+ OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
359
+ PERFORMANCE OF THIS SOFTWARE.
360
+ ***************************************************************************** */
361
+ /* global Reflect, Promise */
362
+ var extendStatics = function (d, b) {
363
+ extendStatics = Object.setPrototypeOf ||
364
+ ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
365
+ function (d, b) { for (var p in b)
366
+ if (Object.prototype.hasOwnProperty.call(b, p))
367
+ d[p] = b[p]; };
368
+ return extendStatics(d, b);
369
+ };
370
+ function __extends(d, b) {
371
+ if (typeof b !== "function" && b !== null)
372
+ throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
373
+ extendStatics(d, b);
374
+ function __() { this.constructor = d; }
375
+ d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
376
+ }
377
+ var __assign = function () {
378
+ __assign = Object.assign || function __assign(t) {
379
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
380
+ s = arguments[i];
381
+ for (var p in s)
382
+ if (Object.prototype.hasOwnProperty.call(s, p))
383
+ t[p] = s[p];
384
+ }
385
+ return t;
386
+ };
387
+ return __assign.apply(this, arguments);
388
+ };
389
+ function __rest(s, e) {
390
+ var t = {};
391
+ for (var p in s)
392
+ if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
393
+ t[p] = s[p];
394
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
395
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
396
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
397
+ t[p[i]] = s[p[i]];
398
+ }
399
+ return t;
400
+ }
401
+ function __decorate(decorators, target, key, desc) {
402
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
403
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function")
404
+ r = Reflect.decorate(decorators, target, key, desc);
405
+ else
406
+ for (var i = decorators.length - 1; i >= 0; i--)
407
+ if (d = decorators[i])
408
+ r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
409
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
410
+ }
411
+ function __param(paramIndex, decorator) {
412
+ return function (target, key) { decorator(target, key, paramIndex); };
413
+ }
414
+ function __metadata(metadataKey, metadataValue) {
415
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function")
416
+ return Reflect.metadata(metadataKey, metadataValue);
417
+ }
418
+ function __awaiter(thisArg, _arguments, P, generator) {
419
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
420
+ return new (P || (P = Promise))(function (resolve, reject) {
421
+ function fulfilled(value) { try {
422
+ step(generator.next(value));
423
+ }
424
+ catch (e) {
425
+ reject(e);
426
+ } }
427
+ function rejected(value) { try {
428
+ step(generator["throw"](value));
429
+ }
430
+ catch (e) {
431
+ reject(e);
432
+ } }
433
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
434
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
435
+ });
436
+ }
437
+ function __generator(thisArg, body) {
438
+ var _ = { label: 0, sent: function () { if (t[0] & 1)
439
+ throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
440
+ return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function () { return this; }), g;
441
+ function verb(n) { return function (v) { return step([n, v]); }; }
442
+ function step(op) {
443
+ if (f)
444
+ throw new TypeError("Generator is already executing.");
445
+ while (_)
446
+ try {
447
+ if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done)
448
+ return t;
449
+ if (y = 0, t)
450
+ op = [op[0] & 2, t.value];
451
+ switch (op[0]) {
452
+ case 0:
453
+ case 1:
454
+ t = op;
455
+ break;
456
+ case 4:
457
+ _.label++;
458
+ return { value: op[1], done: false };
459
+ case 5:
460
+ _.label++;
461
+ y = op[1];
462
+ op = [0];
463
+ continue;
464
+ case 7:
465
+ op = _.ops.pop();
466
+ _.trys.pop();
467
+ continue;
468
+ default:
469
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) {
470
+ _ = 0;
471
+ continue;
472
+ }
473
+ if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) {
474
+ _.label = op[1];
475
+ break;
476
+ }
477
+ if (op[0] === 6 && _.label < t[1]) {
478
+ _.label = t[1];
479
+ t = op;
480
+ break;
481
+ }
482
+ if (t && _.label < t[2]) {
483
+ _.label = t[2];
484
+ _.ops.push(op);
485
+ break;
486
+ }
487
+ if (t[2])
488
+ _.ops.pop();
489
+ _.trys.pop();
490
+ continue;
491
+ }
492
+ op = body.call(thisArg, _);
493
+ }
494
+ catch (e) {
495
+ op = [6, e];
496
+ y = 0;
497
+ }
498
+ finally {
499
+ f = t = 0;
500
+ }
501
+ if (op[0] & 5)
502
+ throw op[1];
503
+ return { value: op[0] ? op[1] : void 0, done: true };
504
+ }
505
+ }
506
+ var __createBinding = Object.create ? (function (o, m, k, k2) {
507
+ if (k2 === undefined)
508
+ k2 = k;
509
+ Object.defineProperty(o, k2, { enumerable: true, get: function () { return m[k]; } });
510
+ }) : (function (o, m, k, k2) {
511
+ if (k2 === undefined)
512
+ k2 = k;
513
+ o[k2] = m[k];
514
+ });
515
+ function __exportStar(m, o) {
516
+ for (var p in m)
517
+ if (p !== "default" && !Object.prototype.hasOwnProperty.call(o, p))
518
+ __createBinding(o, m, p);
519
+ }
520
+ function __values(o) {
521
+ var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0;
522
+ if (m)
523
+ return m.call(o);
524
+ if (o && typeof o.length === "number")
525
+ return {
526
+ next: function () {
527
+ if (o && i >= o.length)
528
+ o = void 0;
529
+ return { value: o && o[i++], done: !o };
530
+ }
531
+ };
532
+ throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
533
+ }
534
+ function __read(o, n) {
535
+ var m = typeof Symbol === "function" && o[Symbol.iterator];
536
+ if (!m)
537
+ return o;
538
+ var i = m.call(o), r, ar = [], e;
539
+ try {
540
+ while ((n === void 0 || n-- > 0) && !(r = i.next()).done)
541
+ ar.push(r.value);
542
+ }
543
+ catch (error) {
544
+ e = { error: error };
545
+ }
546
+ finally {
547
+ try {
548
+ if (r && !r.done && (m = i["return"]))
549
+ m.call(i);
550
+ }
551
+ finally {
552
+ if (e)
553
+ throw e.error;
554
+ }
555
+ }
556
+ return ar;
557
+ }
558
+ /** @deprecated */
559
+ function __spread() {
560
+ for (var ar = [], i = 0; i < arguments.length; i++)
561
+ ar = ar.concat(__read(arguments[i]));
562
+ return ar;
563
+ }
564
+ /** @deprecated */
565
+ function __spreadArrays() {
566
+ for (var s = 0, i = 0, il = arguments.length; i < il; i++)
567
+ s += arguments[i].length;
568
+ for (var r = Array(s), k = 0, i = 0; i < il; i++)
569
+ for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)
570
+ r[k] = a[j];
571
+ return r;
572
+ }
573
+ function __spreadArray(to, from, pack) {
574
+ if (pack || arguments.length === 2)
575
+ for (var i = 0, l = from.length, ar; i < l; i++) {
576
+ if (ar || !(i in from)) {
577
+ if (!ar)
578
+ ar = Array.prototype.slice.call(from, 0, i);
579
+ ar[i] = from[i];
580
+ }
581
+ }
582
+ return to.concat(ar || Array.prototype.slice.call(from));
583
+ }
584
+ function __await(v) {
585
+ return this instanceof __await ? (this.v = v, this) : new __await(v);
586
+ }
587
+ function __asyncGenerator(thisArg, _arguments, generator) {
588
+ if (!Symbol.asyncIterator)
589
+ throw new TypeError("Symbol.asyncIterator is not defined.");
590
+ var g = generator.apply(thisArg, _arguments || []), i, q = [];
591
+ return i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function () { return this; }, i;
592
+ function verb(n) { if (g[n])
593
+ i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }
594
+ function resume(n, v) { try {
595
+ step(g[n](v));
596
+ }
597
+ catch (e) {
598
+ settle(q[0][3], e);
599
+ } }
600
+ function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }
601
+ function fulfill(value) { resume("next", value); }
602
+ function reject(value) { resume("throw", value); }
603
+ function settle(f, v) { if (f(v), q.shift(), q.length)
604
+ resume(q[0][0], q[0][1]); }
605
+ }
606
+ function __asyncDelegator(o) {
607
+ var i, p;
608
+ return i = {}, verb("next"), verb("throw", function (e) { throw e; }), verb("return"), i[Symbol.iterator] = function () { return this; }, i;
609
+ function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === "return" } : f ? f(v) : v; } : f; }
610
+ }
611
+ function __asyncValues(o) {
612
+ if (!Symbol.asyncIterator)
613
+ throw new TypeError("Symbol.asyncIterator is not defined.");
614
+ var m = o[Symbol.asyncIterator], i;
615
+ return m ? m.call(o) : (o = typeof __values === "function" ? __values(o) : o[Symbol.iterator](), i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function () { return this; }, i);
616
+ function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }
617
+ function settle(resolve, reject, d, v) { Promise.resolve(v).then(function (v) { resolve({ value: v, done: d }); }, reject); }
618
+ }
619
+ function __makeTemplateObject(cooked, raw) {
620
+ if (Object.defineProperty) {
621
+ Object.defineProperty(cooked, "raw", { value: raw });
622
+ }
623
+ else {
624
+ cooked.raw = raw;
625
+ }
626
+ return cooked;
627
+ }
628
+ ;
629
+ var __setModuleDefault = Object.create ? (function (o, v) {
630
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
631
+ }) : function (o, v) {
632
+ o["default"] = v;
633
+ };
634
+ function __importStar(mod) {
635
+ if (mod && mod.__esModule)
636
+ return mod;
637
+ var result = {};
638
+ if (mod != null)
639
+ for (var k in mod)
640
+ if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k))
641
+ __createBinding(result, mod, k);
642
+ __setModuleDefault(result, mod);
643
+ return result;
644
+ }
645
+ function __importDefault(mod) {
646
+ return (mod && mod.__esModule) ? mod : { default: mod };
647
+ }
648
+ function __classPrivateFieldGet(receiver, state, kind, f) {
649
+ if (kind === "a" && !f)
650
+ throw new TypeError("Private accessor was defined without a getter");
651
+ if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver))
652
+ throw new TypeError("Cannot read private member from an object whose class did not declare it");
653
+ return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
654
+ }
655
+ function __classPrivateFieldSet(receiver, state, value, kind, f) {
656
+ if (kind === "m")
657
+ throw new TypeError("Private method is not writable");
658
+ if (kind === "a" && !f)
659
+ throw new TypeError("Private accessor was defined without a setter");
660
+ if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver))
661
+ throw new TypeError("Cannot write private member to an object whose class did not declare it");
662
+ return (kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;
663
663
  }
664
664
 
665
- var ValidationErrorComponent = /** @class */ (function (_super) {
666
- __extends(ValidationErrorComponent, _super);
667
- function ValidationErrorComponent() {
668
- return _super !== null && _super.apply(this, arguments) || this;
669
- }
670
- Object.defineProperty(ValidationErrorComponent.prototype, "abpErrors", {
671
- get: function () {
672
- if (!this.errors || !this.errors.length)
673
- return [];
674
- return this.errors.map(function (error) {
675
- if (!error.message)
676
- return error;
677
- var index = error.message.indexOf('[');
678
- if (index > -1) {
679
- return Object.assign(Object.assign({}, error), { message: error.message.slice(0, index), interpoliteParams: error.message.slice(index + 1, error.message.length - 1).split(',') });
680
- }
681
- return error;
682
- });
683
- },
684
- enumerable: false,
685
- configurable: true
686
- });
687
- return ValidationErrorComponent;
688
- }(core.ValidationErrorComponent));
689
- ValidationErrorComponent.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0__namespace, type: ValidationErrorComponent, deps: null, target: i0__namespace.ɵɵFactoryTarget.Component });
690
- ValidationErrorComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.13", type: ValidationErrorComponent, selector: "abp-validation-error", usesInheritance: true, ngImport: i0__namespace, template: "\n <div class=\"invalid-feedback\" *ngFor=\"let error of abpErrors; trackBy: trackByFn\">\n {{ error.message | abpLocalization: error.interpoliteParams }}\n </div>\n ", isInline: true, directives: [{ type: i2__namespace$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }], pipes: { "abpLocalization": i1__namespace.LocalizationPipe }, changeDetection: i0__namespace.ChangeDetectionStrategy.OnPush, encapsulation: i0__namespace.ViewEncapsulation.None });
691
- i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0__namespace, type: ValidationErrorComponent, decorators: [{
692
- type: i0.Component,
693
- args: [{
694
- selector: 'abp-validation-error',
695
- template: "\n <div class=\"invalid-feedback\" *ngFor=\"let error of abpErrors; trackBy: trackByFn\">\n {{ error.message | abpLocalization: error.interpoliteParams }}\n </div>\n ",
696
- changeDetection: i0.ChangeDetectionStrategy.OnPush,
697
- encapsulation: i0.ViewEncapsulation.None,
698
- }]
665
+ var ValidationErrorComponent = /** @class */ (function (_super) {
666
+ __extends(ValidationErrorComponent, _super);
667
+ function ValidationErrorComponent() {
668
+ return _super !== null && _super.apply(this, arguments) || this;
669
+ }
670
+ Object.defineProperty(ValidationErrorComponent.prototype, "abpErrors", {
671
+ get: function () {
672
+ if (!this.errors || !this.errors.length)
673
+ return [];
674
+ return this.errors.map(function (error) {
675
+ if (!error.message)
676
+ return error;
677
+ var index = error.message.indexOf('[');
678
+ if (index > -1) {
679
+ return Object.assign(Object.assign({}, error), { message: error.message.slice(0, index), interpoliteParams: error.message.slice(index + 1, error.message.length - 1).split(',') });
680
+ }
681
+ return error;
682
+ });
683
+ },
684
+ enumerable: false,
685
+ configurable: true
686
+ });
687
+ return ValidationErrorComponent;
688
+ }(core.ValidationErrorComponent));
689
+ ValidationErrorComponent.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0__namespace, type: ValidationErrorComponent, deps: null, target: i0__namespace.ɵɵFactoryTarget.Component });
690
+ ValidationErrorComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.13", type: ValidationErrorComponent, selector: "abp-validation-error", usesInheritance: true, ngImport: i0__namespace, template: "\n <div class=\"invalid-feedback\" *ngFor=\"let error of abpErrors; trackBy: trackByFn\">\n {{ error.message | abpLocalization: error.interpoliteParams }}\n </div>\n ", isInline: true, directives: [{ type: i2__namespace$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }], pipes: { "abpLocalization": i1__namespace.LocalizationPipe }, changeDetection: i0__namespace.ChangeDetectionStrategy.OnPush, encapsulation: i0__namespace.ViewEncapsulation.None });
691
+ i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0__namespace, type: ValidationErrorComponent, decorators: [{
692
+ type: i0.Component,
693
+ args: [{
694
+ selector: 'abp-validation-error',
695
+ template: "\n <div class=\"invalid-feedback\" *ngFor=\"let error of abpErrors; trackBy: trackByFn\">\n {{ error.message | abpLocalization: error.interpoliteParams }}\n </div>\n ",
696
+ changeDetection: i0.ChangeDetectionStrategy.OnPush,
697
+ encapsulation: i0.ViewEncapsulation.None,
698
+ }]
699
699
  }] });
700
700
 
701
701
  var LAZY_STYLES = new i0.InjectionToken('LAZY_STYLES');
702
702
 
703
- var BOOTSTRAP = 'bootstrap-{{dir}}.min.css';
704
- var LazyStyleHandler = /** @class */ (function () {
705
- function LazyStyleHandler(injector) {
706
- this._dir = 'ltr';
707
- this.loaded = new Map();
708
- this.setStyles(injector);
709
- this.setLazyLoad(injector);
710
- this.listenToDirectionChanges(injector);
711
- }
712
- Object.defineProperty(LazyStyleHandler.prototype, "dir", {
713
- get: function () {
714
- return this._dir;
715
- },
716
- set: function (dir) {
717
- if (dir === this._dir)
718
- return;
719
- this.switchCSS(dir);
720
- this._dir = dir;
721
- },
722
- enumerable: false,
723
- configurable: true
724
- });
725
- LazyStyleHandler.prototype.getHrefFromLink = function (link) {
726
- if (!link)
727
- return '';
728
- var a = document.createElement('a');
729
- a.href = link.href;
730
- return a.pathname.replace(/^\//, '');
731
- };
732
- LazyStyleHandler.prototype.getLoadedBootstrap = function () {
733
- var href = createLazyStyleHref(BOOTSTRAP, this.dir);
734
- var selector = "[href*=\"" + href.replace(/\.css$/, '') + "\"]";
735
- var link = document.querySelector(selector);
736
- return { href: href, link: link };
737
- };
738
- LazyStyleHandler.prototype.listenToDirectionChanges = function (injector) {
739
- var _this = this;
740
- var docDirHandler = injector.get(i1$1.DocumentDirHandlerService);
741
- // will always listen, no need to unsubscribe
742
- docDirHandler.dir$.subscribe(function (dir) {
743
- _this.dir = dir;
744
- });
745
- };
746
- LazyStyleHandler.prototype.setLazyLoad = function (injector) {
747
- this.lazyLoad = injector.get(i1.LazyLoadService);
748
- var _a = this.getLoadedBootstrap(), href = _a.href, link = _a.link;
749
- this.lazyLoad.loaded.set(href, link);
750
- };
751
- LazyStyleHandler.prototype.setStyles = function (injector) {
752
- this.styles = injector.get(LAZY_STYLES, [BOOTSTRAP]);
753
- };
754
- LazyStyleHandler.prototype.switchCSS = function (dir) {
755
- var _this = this;
756
- this.styles.forEach(function (style) {
757
- var oldHref = createLazyStyleHref(style, _this.dir);
758
- var newHref = createLazyStyleHref(style, dir);
759
- var link = _this.loaded.get(newHref);
760
- var href = _this.getHrefFromLink(link) || newHref;
761
- var strategy = i1.LOADING_STRATEGY.PrependAnonymousStyleToHead(href);
762
- _this.lazyLoad.load(strategy).subscribe(function () {
763
- var oldLink = _this.lazyLoad.loaded.get(oldHref);
764
- _this.loaded.delete(newHref);
765
- _this.loaded.set(oldHref, oldLink);
766
- var newLink = _this.lazyLoad.loaded.get(href);
767
- _this.lazyLoad.loaded.delete(href);
768
- _this.lazyLoad.loaded.set(newHref, newLink);
769
- _this.lazyLoad.remove(oldHref);
770
- });
771
- });
772
- };
773
- return LazyStyleHandler;
774
- }());
775
- LazyStyleHandler.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0__namespace, type: LazyStyleHandler, deps: [{ token: i0__namespace.Injector }], target: i0__namespace.ɵɵFactoryTarget.Injectable });
776
- LazyStyleHandler.ɵprov = i0__namespace.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0__namespace, type: LazyStyleHandler });
777
- i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0__namespace, type: LazyStyleHandler, decorators: [{
778
- type: i0.Injectable
779
- }], ctorParameters: function () { return [{ type: i0__namespace.Injector }]; } });
780
- function createLazyStyleHref(style, dir) {
781
- return style.replace(/{{\s*dir\s*}}/g, dir);
782
- }
783
- function initLazyStyleHandler(injector) {
784
- return function () { return new LazyStyleHandler(injector); };
703
+ var BOOTSTRAP = 'bootstrap-{{dir}}.min.css';
704
+ var LazyStyleHandler = /** @class */ (function () {
705
+ function LazyStyleHandler(injector) {
706
+ this._dir = 'ltr';
707
+ this.loaded = new Map();
708
+ this.setStyles(injector);
709
+ this.setLazyLoad(injector);
710
+ this.listenToDirectionChanges(injector);
711
+ }
712
+ Object.defineProperty(LazyStyleHandler.prototype, "dir", {
713
+ get: function () {
714
+ return this._dir;
715
+ },
716
+ set: function (dir) {
717
+ if (dir === this._dir)
718
+ return;
719
+ this.switchCSS(dir);
720
+ this._dir = dir;
721
+ },
722
+ enumerable: false,
723
+ configurable: true
724
+ });
725
+ LazyStyleHandler.prototype.getHrefFromLink = function (link) {
726
+ if (!link)
727
+ return '';
728
+ var a = document.createElement('a');
729
+ a.href = link.href;
730
+ return a.pathname.replace(/^\//, '');
731
+ };
732
+ LazyStyleHandler.prototype.getLoadedBootstrap = function () {
733
+ var href = createLazyStyleHref(BOOTSTRAP, this.dir);
734
+ var selector = "[href*=\"" + href.replace(/\.css$/, '') + "\"]";
735
+ var link = document.querySelector(selector);
736
+ return { href: href, link: link };
737
+ };
738
+ LazyStyleHandler.prototype.listenToDirectionChanges = function (injector) {
739
+ var _this = this;
740
+ var docDirHandler = injector.get(i1$1.DocumentDirHandlerService);
741
+ // will always listen, no need to unsubscribe
742
+ docDirHandler.dir$.subscribe(function (dir) {
743
+ _this.dir = dir;
744
+ });
745
+ };
746
+ LazyStyleHandler.prototype.setLazyLoad = function (injector) {
747
+ this.lazyLoad = injector.get(i1.LazyLoadService);
748
+ var _a = this.getLoadedBootstrap(), href = _a.href, link = _a.link;
749
+ this.lazyLoad.loaded.set(href, link);
750
+ };
751
+ LazyStyleHandler.prototype.setStyles = function (injector) {
752
+ this.styles = injector.get(LAZY_STYLES, [BOOTSTRAP]);
753
+ };
754
+ LazyStyleHandler.prototype.switchCSS = function (dir) {
755
+ var _this = this;
756
+ this.styles.forEach(function (style) {
757
+ var oldHref = createLazyStyleHref(style, _this.dir);
758
+ var newHref = createLazyStyleHref(style, dir);
759
+ var link = _this.loaded.get(newHref);
760
+ var href = _this.getHrefFromLink(link) || newHref;
761
+ var strategy = i1.LOADING_STRATEGY.PrependAnonymousStyleToHead(href);
762
+ _this.lazyLoad.load(strategy).subscribe(function () {
763
+ var oldLink = _this.lazyLoad.loaded.get(oldHref);
764
+ _this.loaded.delete(newHref);
765
+ _this.loaded.set(oldHref, oldLink);
766
+ var newLink = _this.lazyLoad.loaded.get(href);
767
+ _this.lazyLoad.loaded.delete(href);
768
+ _this.lazyLoad.loaded.set(newHref, newLink);
769
+ _this.lazyLoad.remove(oldHref);
770
+ });
771
+ });
772
+ };
773
+ return LazyStyleHandler;
774
+ }());
775
+ LazyStyleHandler.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0__namespace, type: LazyStyleHandler, deps: [{ token: i0__namespace.Injector }], target: i0__namespace.ɵɵFactoryTarget.Injectable });
776
+ LazyStyleHandler.ɵprov = i0__namespace.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0__namespace, type: LazyStyleHandler });
777
+ i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0__namespace, type: LazyStyleHandler, decorators: [{
778
+ type: i0.Injectable
779
+ }], ctorParameters: function () { return [{ type: i0__namespace.Injector }]; } });
780
+ function createLazyStyleHref(style, dir) {
781
+ return style.replace(/{{\s*dir\s*}}/g, dir);
782
+ }
783
+ function initLazyStyleHandler(injector) {
784
+ return function () { return new LazyStyleHandler(injector); };
785
785
  }
786
786
 
787
- var BASIC_THEME_NAV_ITEM_PROVIDERS = [
788
- {
789
- provide: i0.APP_INITIALIZER,
790
- useFactory: configureNavItems,
791
- deps: [i1$1.NavItemsService],
792
- multi: true,
793
- },
794
- ];
795
- function configureNavItems(navItems) {
796
- return function () {
797
- navItems.addItems([
798
- {
799
- id: "Theme.LanguagesComponent" /* Languages */,
800
- order: 100,
801
- component: LanguagesComponent,
802
- },
803
- {
804
- id: "Theme.CurrentUserComponent" /* CurrentUser */,
805
- order: 100,
806
- component: CurrentUserComponent,
807
- },
808
- ]);
809
- };
787
+ var BASIC_THEME_NAV_ITEM_PROVIDERS = [
788
+ {
789
+ provide: i0.APP_INITIALIZER,
790
+ useFactory: configureNavItems,
791
+ deps: [i1$1.NavItemsService],
792
+ multi: true,
793
+ },
794
+ ];
795
+ function configureNavItems(navItems) {
796
+ return function () {
797
+ navItems.addItems([
798
+ {
799
+ id: "Theme.LanguagesComponent" /* Languages */,
800
+ order: 100,
801
+ component: LanguagesComponent,
802
+ },
803
+ {
804
+ id: "Theme.CurrentUserComponent" /* CurrentUser */,
805
+ order: 100,
806
+ component: CurrentUserComponent,
807
+ },
808
+ ]);
809
+ };
810
810
  }
811
811
 
812
812
  var styles = "\n.content-header-title {\n font-size: 24px;\n}\n.entry-row {\n margin-bottom: 15px;\n}\n#main-navbar-tools a.dropdown-toggle {\n text-decoration: none;\n color: #fff;\n}\n.navbar .dropdown-submenu {\n position: relative;\n}\n.navbar .dropdown-menu {\n margin: 0;\n padding: 0;\n}\n.navbar .dropdown-menu a {\n font-size: .9em;\n padding: 10px 15px;\n display: block;\n min-width: 210px;\n text-align: left;\n border-radius: 0.25rem;\n min-height: 44px;\n}\n[dir=rtl] .navbar .dropdown-menu a {\n text-align: right!important;\n}\n.navbar .dropdown-submenu a::after {\n transform: rotate(-90deg);\n position: absolute;\n right: 16px;\n top: 18px;\n}\n[dir=rtl] .navbar .dropdown-submenu a::after {\n transform: rotate(90deg);\n left: 16px;\n right: auto;\n top: 20px;\n}\n.navbar .dropdown-submenu .dropdown-menu {\n top: 0;\n left: 100%;\n}\n/* work around for rtl. Track https://github.com/ng-bootstrap/ng-bootstrap/issues/4100 issue */\n[dir=rtl] .navbar .dropdown-submenu .dropdown-menu {\n top: 0;\n right: 100%;\n}\n.card-header .btn {\n padding: 2px 6px;\n}\n.card-header h5 {\n margin: 0;\n}\n.container > .card {\n box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075) !important;\n}\n@media screen and (min-width: 992px) {\n .navbar .dropdown:hover > .dropdown-menu {\n display: block;\n }\n\n .navbar .dropdown-submenu:hover > .dropdown-menu {\n display: block;\n }\n}\n.input-validation-error {\n border-color: #dc3545;\n}\n.field-validation-error {\n font-size: 0.8em;\n}\n.ui-table .ui-table-tbody > tr.empty-row > div.empty-row-content {\n border: 1px solid #c8c8c8;\n }\n.abp-loading {\n background: rgba(0, 0, 0, 0.05);\n}\n.modal-backdrop {\nbackground-color: rgba(0, 0, 0, 0.6);\n}\n\n.confirmation .confirmation-backdrop {\n\t background: rgba(0, 0, 0, 0.7) !important;\n}\n .confirmation .confirmation-dialog {\n\t border: none;\n\t border-radius: 10px;\n\t background-color: #fff;\n\t box-shadow: 0 0 10px -5px rgba(0, 0, 0, 0.5);\n}\n .confirmation .confirmation-dialog .icon-container .icon {\n\t stroke: #fff;\n\t color: #fff;\n}\n .confirmation .confirmation-dialog .icon-container.info .icon {\n\t stroke: #2f96b4;\n\t color: #2f96b4;\n}\n .confirmation .confirmation-dialog .icon-container.success .icon {\n\t stroke: #51a351;\n\t color: #51a351;\n}\n .confirmation .confirmation-dialog .icon-container.warning .icon {\n\t stroke: #f89406;\n\t color: #f89406;\n}\n .confirmation .confirmation-dialog .icon-container.error .icon {\n\t stroke: #bd362f;\n\t color: #bd362f;\n}\n .confirmation .confirmation-dialog .content .title {\n\t color: #222;\n}\n .confirmation .confirmation-dialog .content .message {\n\t color: #777;\n}\n .confirmation .confirmation-dialog .footer {\n\t background: transparent;\n}\n .confirmation .confirmation-dialog .footer .confirmation-button {\n\t background-color: #eee;\n\t color: #777;\n}\n .confirmation .confirmation-dialog .footer .confirmation-button:hover, .confirmation .confirmation-dialog .footer .confirmation-button:focus, .confirmation .confirmation-dialog .footer .confirmation-button:active {\n\t background-color: #bbb;\n}\n .confirmation .confirmation-dialog .footer .confirmation-button--confirm {\n\t background-color: #2f96b4;\n\t color: #fff;\n}\n .confirmation .confirmation-dialog .footer .confirmation-button--confirm:hover {\n\t background-color: #2e819b;\n}\n.ui-table .pagination-wrapper {\n background-color: #f4f4f4;\n border: 1px solid #c8c8c8;\n}\n.bordered .datatable-body-row {\n border-top: 1px solid #eee;\n margin-top: -1px;\n}\n.breadcrumb {\n background-color: transparent;\n padding: 0.27rem;\n}\n";
813
813
 
814
- var BASIC_THEME_STYLES_PROVIDERS = [
815
- {
816
- provide: i0.APP_INITIALIZER,
817
- useFactory: configureStyles,
818
- deps: [i1.DomInsertionService, i1.ReplaceableComponentsService],
819
- multi: true,
820
- },
821
- ];
822
- function configureStyles(domInsertion, replaceableComponents) {
823
- return function () {
824
- domInsertion.insertContent(i1.CONTENT_STRATEGY.AppendStyleToHead(styles));
825
- initLayouts(replaceableComponents);
826
- };
827
- }
828
- function initLayouts(replaceableComponents) {
829
- replaceableComponents.add({
830
- key: "Theme.ApplicationLayoutComponent" /* ApplicationLayout */,
831
- component: ApplicationLayoutComponent,
832
- });
833
- replaceableComponents.add({
834
- key: "Theme.AccountLayoutComponent" /* AccountLayout */,
835
- component: AccountLayoutComponent,
836
- });
837
- replaceableComponents.add({
838
- key: "Theme.EmptyLayoutComponent" /* EmptyLayout */,
839
- component: EmptyLayoutComponent,
840
- });
814
+ var BASIC_THEME_STYLES_PROVIDERS = [
815
+ {
816
+ provide: i0.APP_INITIALIZER,
817
+ useFactory: configureStyles,
818
+ deps: [i1.DomInsertionService, i1.ReplaceableComponentsService],
819
+ multi: true,
820
+ },
821
+ ];
822
+ function configureStyles(domInsertion, replaceableComponents) {
823
+ return function () {
824
+ domInsertion.insertContent(i1.CONTENT_STRATEGY.AppendStyleToHead(styles));
825
+ initLayouts(replaceableComponents);
826
+ };
827
+ }
828
+ function initLayouts(replaceableComponents) {
829
+ replaceableComponents.add({
830
+ key: "Theme.ApplicationLayoutComponent" /* ApplicationLayout */,
831
+ component: ApplicationLayoutComponent,
832
+ });
833
+ replaceableComponents.add({
834
+ key: "Theme.AccountLayoutComponent" /* AccountLayout */,
835
+ component: AccountLayoutComponent,
836
+ });
837
+ replaceableComponents.add({
838
+ key: "Theme.EmptyLayoutComponent" /* EmptyLayout */,
839
+ component: EmptyLayoutComponent,
840
+ });
841
841
  }
842
842
 
843
- var LAYOUTS = [ApplicationLayoutComponent, AccountLayoutComponent, EmptyLayoutComponent];
844
- var BaseThemeBasicModule = /** @class */ (function () {
845
- function BaseThemeBasicModule() {
846
- }
847
- return BaseThemeBasicModule;
848
- }());
849
- BaseThemeBasicModule.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0__namespace, type: BaseThemeBasicModule, deps: [], target: i0__namespace.ɵɵFactoryTarget.NgModule });
850
- BaseThemeBasicModule.ɵmod = i0__namespace.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0__namespace, type: BaseThemeBasicModule, declarations: [ApplicationLayoutComponent, AccountLayoutComponent, EmptyLayoutComponent, ValidationErrorComponent,
851
- LogoComponent,
852
- NavItemsComponent,
853
- RoutesComponent,
854
- CurrentUserComponent,
855
- LanguagesComponent,
856
- PageAlertContainerComponent,
857
- TenantBoxComponent,
858
- AuthWrapperComponent], imports: [i1.CoreModule,
859
- i1$1.ThemeSharedModule,
860
- i3.NgbCollapseModule,
861
- i3.NgbDropdownModule,
862
- core.NgxValidateCoreModule], exports: [ApplicationLayoutComponent, AccountLayoutComponent, EmptyLayoutComponent, ValidationErrorComponent,
863
- LogoComponent,
864
- NavItemsComponent,
865
- RoutesComponent,
866
- CurrentUserComponent,
867
- LanguagesComponent,
868
- PageAlertContainerComponent] });
869
- BaseThemeBasicModule.ɵinj = i0__namespace.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0__namespace, type: BaseThemeBasicModule, imports: [[
870
- i1.CoreModule,
871
- i1$1.ThemeSharedModule,
872
- i3.NgbCollapseModule,
873
- i3.NgbDropdownModule,
874
- core.NgxValidateCoreModule,
875
- ]] });
876
- i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0__namespace, type: BaseThemeBasicModule, decorators: [{
877
- type: i0.NgModule,
878
- args: [{
879
- declarations: __spreadArray(__spreadArray([], __read(LAYOUTS)), [
880
- ValidationErrorComponent,
881
- LogoComponent,
882
- NavItemsComponent,
883
- RoutesComponent,
884
- CurrentUserComponent,
885
- LanguagesComponent,
886
- PageAlertContainerComponent,
887
- TenantBoxComponent,
888
- AuthWrapperComponent,
889
- ]),
890
- exports: __spreadArray(__spreadArray([], __read(LAYOUTS)), [
891
- ValidationErrorComponent,
892
- LogoComponent,
893
- NavItemsComponent,
894
- RoutesComponent,
895
- CurrentUserComponent,
896
- LanguagesComponent,
897
- PageAlertContainerComponent,
898
- ]),
899
- imports: [
900
- i1.CoreModule,
901
- i1$1.ThemeSharedModule,
902
- i3.NgbCollapseModule,
903
- i3.NgbDropdownModule,
904
- core.NgxValidateCoreModule,
905
- ],
906
- entryComponents: __spreadArray(__spreadArray([], __read(LAYOUTS)), [ValidationErrorComponent, CurrentUserComponent, LanguagesComponent]),
907
- }]
908
- }] });
909
- var ThemeBasicModule = /** @class */ (function () {
910
- function ThemeBasicModule() {
911
- }
912
- ThemeBasicModule.forRoot = function () {
913
- return {
914
- ngModule: ThemeBasicModule,
915
- providers: [
916
- BASIC_THEME_NAV_ITEM_PROVIDERS,
917
- BASIC_THEME_STYLES_PROVIDERS,
918
- {
919
- provide: core.VALIDATION_ERROR_TEMPLATE,
920
- useValue: ValidationErrorComponent,
921
- },
922
- {
923
- provide: core.VALIDATION_TARGET_SELECTOR,
924
- useValue: '.form-group',
925
- },
926
- {
927
- provide: core.VALIDATION_INVALID_CLASSES,
928
- useValue: 'is-invalid',
929
- },
930
- LazyStyleHandler,
931
- {
932
- provide: i0.APP_INITIALIZER,
933
- useFactory: i1.noop,
934
- multi: true,
935
- deps: [LazyStyleHandler],
936
- },
937
- ],
938
- };
939
- };
940
- return ThemeBasicModule;
941
- }());
942
- ThemeBasicModule.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0__namespace, type: ThemeBasicModule, deps: [], target: i0__namespace.ɵɵFactoryTarget.NgModule });
943
- ThemeBasicModule.ɵmod = i0__namespace.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0__namespace, type: ThemeBasicModule, imports: [BaseThemeBasicModule], exports: [BaseThemeBasicModule] });
944
- ThemeBasicModule.ɵinj = i0__namespace.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0__namespace, type: ThemeBasicModule, imports: [[BaseThemeBasicModule], BaseThemeBasicModule] });
945
- i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0__namespace, type: ThemeBasicModule, decorators: [{
946
- type: i0.NgModule,
947
- args: [{
948
- exports: [BaseThemeBasicModule],
949
- imports: [BaseThemeBasicModule],
950
- }]
843
+ var LAYOUTS = [ApplicationLayoutComponent, AccountLayoutComponent, EmptyLayoutComponent];
844
+ var BaseThemeBasicModule = /** @class */ (function () {
845
+ function BaseThemeBasicModule() {
846
+ }
847
+ return BaseThemeBasicModule;
848
+ }());
849
+ BaseThemeBasicModule.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0__namespace, type: BaseThemeBasicModule, deps: [], target: i0__namespace.ɵɵFactoryTarget.NgModule });
850
+ BaseThemeBasicModule.ɵmod = i0__namespace.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0__namespace, type: BaseThemeBasicModule, declarations: [ApplicationLayoutComponent, AccountLayoutComponent, EmptyLayoutComponent, ValidationErrorComponent,
851
+ LogoComponent,
852
+ NavItemsComponent,
853
+ RoutesComponent,
854
+ CurrentUserComponent,
855
+ LanguagesComponent,
856
+ PageAlertContainerComponent,
857
+ TenantBoxComponent,
858
+ AuthWrapperComponent], imports: [i1.CoreModule,
859
+ i1$1.ThemeSharedModule,
860
+ i3.NgbCollapseModule,
861
+ i3.NgbDropdownModule,
862
+ core.NgxValidateCoreModule], exports: [ApplicationLayoutComponent, AccountLayoutComponent, EmptyLayoutComponent, ValidationErrorComponent,
863
+ LogoComponent,
864
+ NavItemsComponent,
865
+ RoutesComponent,
866
+ CurrentUserComponent,
867
+ LanguagesComponent,
868
+ PageAlertContainerComponent] });
869
+ BaseThemeBasicModule.ɵinj = i0__namespace.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0__namespace, type: BaseThemeBasicModule, imports: [[
870
+ i1.CoreModule,
871
+ i1$1.ThemeSharedModule,
872
+ i3.NgbCollapseModule,
873
+ i3.NgbDropdownModule,
874
+ core.NgxValidateCoreModule,
875
+ ]] });
876
+ i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0__namespace, type: BaseThemeBasicModule, decorators: [{
877
+ type: i0.NgModule,
878
+ args: [{
879
+ declarations: __spreadArray(__spreadArray([], __read(LAYOUTS)), [
880
+ ValidationErrorComponent,
881
+ LogoComponent,
882
+ NavItemsComponent,
883
+ RoutesComponent,
884
+ CurrentUserComponent,
885
+ LanguagesComponent,
886
+ PageAlertContainerComponent,
887
+ TenantBoxComponent,
888
+ AuthWrapperComponent,
889
+ ]),
890
+ exports: __spreadArray(__spreadArray([], __read(LAYOUTS)), [
891
+ ValidationErrorComponent,
892
+ LogoComponent,
893
+ NavItemsComponent,
894
+ RoutesComponent,
895
+ CurrentUserComponent,
896
+ LanguagesComponent,
897
+ PageAlertContainerComponent,
898
+ ]),
899
+ imports: [
900
+ i1.CoreModule,
901
+ i1$1.ThemeSharedModule,
902
+ i3.NgbCollapseModule,
903
+ i3.NgbDropdownModule,
904
+ core.NgxValidateCoreModule,
905
+ ],
906
+ entryComponents: __spreadArray(__spreadArray([], __read(LAYOUTS)), [ValidationErrorComponent, CurrentUserComponent, LanguagesComponent]),
907
+ }]
908
+ }] });
909
+ var ThemeBasicModule = /** @class */ (function () {
910
+ function ThemeBasicModule() {
911
+ }
912
+ ThemeBasicModule.forRoot = function () {
913
+ return {
914
+ ngModule: ThemeBasicModule,
915
+ providers: [
916
+ BASIC_THEME_NAV_ITEM_PROVIDERS,
917
+ BASIC_THEME_STYLES_PROVIDERS,
918
+ {
919
+ provide: core.VALIDATION_ERROR_TEMPLATE,
920
+ useValue: ValidationErrorComponent,
921
+ },
922
+ {
923
+ provide: core.VALIDATION_TARGET_SELECTOR,
924
+ useValue: '.form-group',
925
+ },
926
+ {
927
+ provide: core.VALIDATION_INVALID_CLASSES,
928
+ useValue: 'is-invalid',
929
+ },
930
+ LazyStyleHandler,
931
+ {
932
+ provide: i0.APP_INITIALIZER,
933
+ useFactory: i1.noop,
934
+ multi: true,
935
+ deps: [LazyStyleHandler],
936
+ },
937
+ ],
938
+ };
939
+ };
940
+ return ThemeBasicModule;
941
+ }());
942
+ ThemeBasicModule.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0__namespace, type: ThemeBasicModule, deps: [], target: i0__namespace.ɵɵFactoryTarget.NgModule });
943
+ ThemeBasicModule.ɵmod = i0__namespace.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0__namespace, type: ThemeBasicModule, imports: [BaseThemeBasicModule], exports: [BaseThemeBasicModule] });
944
+ ThemeBasicModule.ɵinj = i0__namespace.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0__namespace, type: ThemeBasicModule, imports: [[BaseThemeBasicModule], BaseThemeBasicModule] });
945
+ i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0__namespace, type: ThemeBasicModule, decorators: [{
946
+ type: i0.NgModule,
947
+ args: [{
948
+ exports: [BaseThemeBasicModule],
949
+ imports: [BaseThemeBasicModule],
950
+ }]
951
951
  }] });
952
952
 
953
- /*
954
- * Public API Surface of theme-basic
953
+ /*
954
+ * Public API Surface of theme-basic
955
955
  */
956
956
 
957
- /**
958
- * Generated bundle index. Do not edit.
957
+ /**
958
+ * Generated bundle index. Do not edit.
959
959
  */
960
960
 
961
961
  exports.AccountLayoutComponent = AccountLayoutComponent;