@open-rlb/ng-app 3.1.64 → 3.1.65

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.
@@ -54,10 +54,10 @@ class TokenCookiesService {
54
54
  }
55
55
  clear() {
56
56
  }
57
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: TokenCookiesService, deps: [{ token: i1.SsrCookieService }], target: i0.ɵɵFactoryTarget.Injectable }); }
58
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: TokenCookiesService, providedIn: 'root' }); }
57
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: TokenCookiesService, deps: [{ token: i1.SsrCookieService }], target: i0.ɵɵFactoryTarget.Injectable }); }
58
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: TokenCookiesService, providedIn: 'root' }); }
59
59
  }
60
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: TokenCookiesService, decorators: [{
60
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: TokenCookiesService, decorators: [{
61
61
  type: Injectable,
62
62
  args: [{
63
63
  providedIn: 'root'
@@ -89,10 +89,10 @@ class AppStorageService {
89
89
  clearSession() {
90
90
  sessionStorage.clear();
91
91
  }
92
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: AppStorageService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
93
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: AppStorageService, providedIn: 'root' }); }
92
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: AppStorageService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
93
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: AppStorageService, providedIn: 'root' }); }
94
94
  }
95
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: AppStorageService, decorators: [{
95
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: AppStorageService, decorators: [{
96
96
  type: Injectable,
97
97
  args: [{
98
98
  providedIn: 'root'
@@ -115,10 +115,10 @@ class TokenSessionService {
115
115
  clear() {
116
116
  this.store.clearSession();
117
117
  }
118
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: TokenSessionService, deps: [{ token: AppStorageService }], target: i0.ɵɵFactoryTarget.Injectable }); }
119
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: TokenSessionService, providedIn: 'root' }); }
118
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: TokenSessionService, deps: [{ token: AppStorageService }], target: i0.ɵɵFactoryTarget.Injectable }); }
119
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: TokenSessionService, providedIn: 'root' }); }
120
120
  }
121
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: TokenSessionService, decorators: [{
121
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: TokenSessionService, decorators: [{
122
122
  type: Injectable,
123
123
  args: [{
124
124
  providedIn: 'root'
@@ -141,10 +141,10 @@ class TokenStoreService {
141
141
  clear() {
142
142
  this.store.clearLocal();
143
143
  }
144
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: TokenStoreService, deps: [{ token: AppStorageService }], target: i0.ɵɵFactoryTarget.Injectable }); }
145
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: TokenStoreService, providedIn: 'root' }); }
144
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: TokenStoreService, deps: [{ token: AppStorageService }], target: i0.ɵɵFactoryTarget.Injectable }); }
145
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: TokenStoreService, providedIn: 'root' }); }
146
146
  }
147
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: TokenStoreService, decorators: [{
147
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: TokenStoreService, decorators: [{
148
148
  type: Injectable,
149
149
  args: [{
150
150
  providedIn: 'root'
@@ -244,10 +244,10 @@ class AppLoggerService {
244
244
  console.log(`%c${prefix}`, colors.log, ...messageArgs);
245
245
  }
246
246
  }
247
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: AppLoggerService, deps: [{ token: RLB_CFG_ENV }], target: i0.ɵɵFactoryTarget.Injectable }); }
248
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: AppLoggerService, providedIn: 'root' }); }
247
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: AppLoggerService, deps: [{ token: RLB_CFG_ENV }], target: i0.ɵɵFactoryTarget.Injectable }); }
248
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: AppLoggerService, providedIn: 'root' }); }
249
249
  }
250
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: AppLoggerService, decorators: [{
250
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: AppLoggerService, decorators: [{
251
251
  type: Injectable,
252
252
  args: [{ providedIn: 'root' }]
253
253
  }], ctorParameters: () => [{ type: undefined, decorators: [{
@@ -315,10 +315,10 @@ class AuthFeatureService {
315
315
  logout() {
316
316
  this.store.dispatch(AuthActions.logout());
317
317
  }
318
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: AuthFeatureService, deps: [{ token: i1$1.Store }], target: i0.ɵɵFactoryTarget.Injectable }); }
319
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: AuthFeatureService, providedIn: 'root' }); }
318
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: AuthFeatureService, deps: [{ token: i1$1.Store }], target: i0.ɵɵFactoryTarget.Injectable }); }
319
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: AuthFeatureService, providedIn: 'root' }); }
320
320
  }
321
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: AuthFeatureService, decorators: [{
321
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: AuthFeatureService, decorators: [{
322
322
  type: Injectable,
323
323
  args: [{
324
324
  providedIn: 'root'
@@ -424,10 +424,10 @@ class AdminApiService {
424
424
  const url = `${endpoint.baseUrl}/${path}`;
425
425
  return this.httpClient.get(url).pipe();
426
426
  }
427
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: AdminApiService, deps: [{ token: i1$2.HttpClient }, { token: RLB_CFG, optional: true }, { token: RLB_CFG_ACL, optional: true }], target: i0.ɵɵFactoryTarget.Injectable }); }
428
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: AdminApiService, providedIn: 'root' }); }
427
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: AdminApiService, deps: [{ token: i1$2.HttpClient }, { token: RLB_CFG, optional: true }, { token: RLB_CFG_ACL, optional: true }], target: i0.ɵɵFactoryTarget.Injectable }); }
428
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: AdminApiService, providedIn: 'root' }); }
429
429
  }
430
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: AdminApiService, decorators: [{
430
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: AdminApiService, decorators: [{
431
431
  type: Injectable,
432
432
  args: [{ providedIn: 'root' }]
433
433
  }], ctorParameters: () => [{ type: i1$2.HttpClient }, { type: undefined, decorators: [{
@@ -486,10 +486,10 @@ const AclStore = signalStore({ providedIn: 'root' }, withState(initialAclState),
486
486
  })));
487
487
 
488
488
  class AbstractSupportService {
489
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: AbstractSupportService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
490
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: AbstractSupportService }); }
489
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: AbstractSupportService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
490
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: AbstractSupportService }); }
491
491
  }
492
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: AbstractSupportService, decorators: [{
492
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: AbstractSupportService, decorators: [{
493
493
  type: Injectable
494
494
  }] });
495
495
 
@@ -806,10 +806,10 @@ class AppsService {
806
806
  }
807
807
  return segments.join('/');
808
808
  }
809
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: AppsService, deps: [{ token: i1$1.Store }, { token: i2.ActivatedRoute }, { token: i2.Router }, { token: AppLoggerService }, { token: RLB_CFG_AUTH, optional: true }, { token: RLB_CFG_ACL, optional: true }], target: i0.ɵɵFactoryTarget.Injectable }); }
810
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: AppsService, providedIn: 'root' }); }
809
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: AppsService, deps: [{ token: i1$1.Store }, { token: i2.ActivatedRoute }, { token: i2.Router }, { token: AppLoggerService }, { token: RLB_CFG_AUTH, optional: true }, { token: RLB_CFG_ACL, optional: true }], target: i0.ɵɵFactoryTarget.Injectable }); }
810
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: AppsService, providedIn: 'root' }); }
811
811
  }
812
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: AppsService, decorators: [{
812
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: AppsService, decorators: [{
813
813
  type: Injectable,
814
814
  args: [{
815
815
  providedIn: 'root',
@@ -889,10 +889,10 @@ class LanguageService {
889
889
  default: return '';
890
890
  }
891
891
  }
892
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: LanguageService, deps: [{ token: i1$3.TranslateService }, { token: CookiesService }, { token: RLB_CFG_I18N, optional: true }], target: i0.ɵɵFactoryTarget.Injectable }); }
893
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: LanguageService, providedIn: 'root' }); }
892
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: LanguageService, deps: [{ token: i1$3.TranslateService }, { token: CookiesService }, { token: RLB_CFG_I18N, optional: true }], target: i0.ɵɵFactoryTarget.Injectable }); }
893
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: LanguageService, providedIn: 'root' }); }
894
894
  }
895
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: LanguageService, decorators: [{
895
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: LanguageService, decorators: [{
896
896
  type: Injectable,
897
897
  args: [{ providedIn: 'root' }]
898
898
  }], ctorParameters: () => [{ type: i1$3.TranslateService }, { type: CookiesService }, { type: undefined, decorators: [{
@@ -949,10 +949,10 @@ class AppBreadcrumbService {
949
949
  }
950
950
  return breadcrumbs;
951
951
  }
952
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: AppBreadcrumbService, deps: [{ token: i2.Router }, { token: i2.ActivatedRoute }, { token: AppLoggerService }, { token: LanguageService }, { token: i2$1.UniqueIdService }], target: i0.ɵɵFactoryTarget.Injectable }); }
953
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: AppBreadcrumbService, providedIn: 'root' }); }
952
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: AppBreadcrumbService, deps: [{ token: i2.Router }, { token: i2.ActivatedRoute }, { token: AppLoggerService }, { token: LanguageService }, { token: i2$1.UniqueIdService }], target: i0.ɵɵFactoryTarget.Injectable }); }
953
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: AppBreadcrumbService, providedIn: 'root' }); }
954
954
  }
955
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: AppBreadcrumbService, decorators: [{
955
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: AppBreadcrumbService, decorators: [{
956
956
  type: Injectable,
957
957
  args: [{ providedIn: 'root' }]
958
958
  }], ctorParameters: () => [{ type: i2.Router }, { type: i2.ActivatedRoute }, { type: AppLoggerService }, { type: LanguageService }, { type: i2$1.UniqueIdService }] });
@@ -1016,10 +1016,10 @@ class LocalCacheService {
1016
1016
  }
1017
1017
  }), share());
1018
1018
  }
1019
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: LocalCacheService, deps: [{ token: RLB_CFG, optional: true }], target: i0.ɵɵFactoryTarget.Injectable }); }
1020
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: LocalCacheService, providedIn: 'root' }); }
1019
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: LocalCacheService, deps: [{ token: RLB_CFG, optional: true }], target: i0.ɵɵFactoryTarget.Injectable }); }
1020
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: LocalCacheService, providedIn: 'root' }); }
1021
1021
  }
1022
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: LocalCacheService, decorators: [{
1022
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: LocalCacheService, decorators: [{
1023
1023
  type: Injectable,
1024
1024
  args: [{
1025
1025
  providedIn: 'root'
@@ -1033,10 +1033,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.4", ngImpor
1033
1033
 
1034
1034
  class AbstractMdService {
1035
1035
  constructor() { }
1036
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: AbstractMdService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
1037
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: AbstractMdService, providedIn: 'root' }); }
1036
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: AbstractMdService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
1037
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: AbstractMdService, providedIn: 'root' }); }
1038
1038
  }
1039
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: AbstractMdService, decorators: [{
1039
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: AbstractMdService, decorators: [{
1040
1040
  type: Injectable,
1041
1041
  args: [{
1042
1042
  providedIn: 'root'
@@ -1101,10 +1101,10 @@ class StrapiService {
1101
1101
  }));
1102
1102
  return this.cache.getData(__r, `strapiPage/${lang}/${cid}`, this.cmsOptions.chacheDuration || 3600);
1103
1103
  }
1104
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: StrapiService, deps: [{ token: i1$2.HttpClient }, { token: LocalCacheService }, { token: RLB_CFG_CMS, optional: true }], target: i0.ɵɵFactoryTarget.Injectable }); }
1105
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: StrapiService, providedIn: 'root' }); }
1104
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: StrapiService, deps: [{ token: i1$2.HttpClient }, { token: LocalCacheService }, { token: RLB_CFG_CMS, optional: true }], target: i0.ɵɵFactoryTarget.Injectable }); }
1105
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: StrapiService, providedIn: 'root' }); }
1106
1106
  }
1107
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: StrapiService, decorators: [{
1107
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: StrapiService, decorators: [{
1108
1108
  type: Injectable,
1109
1109
  args: [{
1110
1110
  providedIn: 'root'
@@ -1184,10 +1184,10 @@ class ErrorManagementService {
1184
1184
  }));
1185
1185
  };
1186
1186
  }
1187
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: ErrorManagementService, deps: [{ token: i2$1.ModalService }, { token: i2$1.ToastService }, { token: LanguageService }, { token: RLB_CFG, optional: true }], target: i0.ɵɵFactoryTarget.Injectable }); }
1188
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: ErrorManagementService, providedIn: 'root' }); }
1187
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: ErrorManagementService, deps: [{ token: i2$1.ModalService }, { token: i2$1.ToastService }, { token: LanguageService }, { token: RLB_CFG, optional: true }], target: i0.ɵɵFactoryTarget.Injectable }); }
1188
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: ErrorManagementService, providedIn: 'root' }); }
1189
1189
  }
1190
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: ErrorManagementService, decorators: [{
1190
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: ErrorManagementService, decorators: [{
1191
1191
  type: Injectable,
1192
1192
  args: [{
1193
1193
  providedIn: 'root'
@@ -1207,10 +1207,10 @@ class RlbTranslateAdapterService {
1207
1207
  instant(key, params) {
1208
1208
  return this.translateService.instant(key, params);
1209
1209
  }
1210
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: RlbTranslateAdapterService, deps: [{ token: i1$3.TranslateService }, { token: i2$1.UniqueIdService }], target: i0.ɵɵFactoryTarget.Injectable }); }
1211
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: RlbTranslateAdapterService, providedIn: 'root' }); }
1210
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: RlbTranslateAdapterService, deps: [{ token: i1$3.TranslateService }, { token: i2$1.UniqueIdService }], target: i0.ɵɵFactoryTarget.Injectable }); }
1211
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: RlbTranslateAdapterService, providedIn: 'root' }); }
1212
1212
  }
1213
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: RlbTranslateAdapterService, decorators: [{
1213
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: RlbTranslateAdapterService, decorators: [{
1214
1214
  type: Injectable,
1215
1215
  args: [{ providedIn: 'root' }]
1216
1216
  }], ctorParameters: () => [{ type: i1$3.TranslateService }, { type: i2$1.UniqueIdService }] });
@@ -1297,10 +1297,10 @@ class CookiesService {
1297
1297
  }
1298
1298
  document.cookie = cookie;
1299
1299
  }
1300
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: CookiesService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
1301
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: CookiesService, providedIn: 'root' }); }
1300
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: CookiesService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
1301
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: CookiesService, providedIn: 'root' }); }
1302
1302
  }
1303
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: CookiesService, decorators: [{
1303
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: CookiesService, decorators: [{
1304
1304
  type: Injectable,
1305
1305
  args: [{
1306
1306
  providedIn: 'root'
@@ -1334,10 +1334,10 @@ class PwaUpdaterService {
1334
1334
  }), switchMap(() => this.modalService.openSimpleModal(this.languageService.translate('core.pwa.newVersionAvailable'), this.languageService.translate('core.pwa.updateMessage'), this.languageService.translate('core.pwa.updateNow'), this.languageService.translate('core.pwa.update'), this.languageService.translate('core.pwa.later'))), filter((res) => res?.reason === 'ok'), //si ferma se l'evento non è una action
1335
1335
  map(() => this.updates.activateUpdate().then(() => location.reload())));
1336
1336
  }
1337
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: PwaUpdaterService, deps: [{ token: i1$4.SwUpdate }, { token: i2$1.ModalService }, { token: LanguageService }], target: i0.ɵɵFactoryTarget.Injectable }); }
1338
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: PwaUpdaterService, providedIn: 'root' }); }
1337
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: PwaUpdaterService, deps: [{ token: i1$4.SwUpdate }, { token: i2$1.ModalService }, { token: LanguageService }], target: i0.ɵɵFactoryTarget.Injectable }); }
1338
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: PwaUpdaterService, providedIn: 'root' }); }
1339
1339
  }
1340
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: PwaUpdaterService, decorators: [{
1340
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: PwaUpdaterService, decorators: [{
1341
1341
  type: Injectable,
1342
1342
  args: [{
1343
1343
  providedIn: 'root'
@@ -1483,10 +1483,10 @@ class UtilsService {
1483
1483
  }
1484
1484
  return '0.00';
1485
1485
  }
1486
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: UtilsService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
1487
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: UtilsService, providedIn: 'root' }); }
1486
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: UtilsService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
1487
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: UtilsService, providedIn: 'root' }); }
1488
1488
  }
1489
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: UtilsService, decorators: [{
1489
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: UtilsService, decorators: [{
1490
1490
  type: Injectable,
1491
1491
  args: [{
1492
1492
  providedIn: 'root'
@@ -1512,10 +1512,10 @@ class ParseJwtService {
1512
1512
  }
1513
1513
  }
1514
1514
  ;
1515
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: ParseJwtService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
1516
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: ParseJwtService, providedIn: 'root' }); }
1515
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: ParseJwtService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
1516
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: ParseJwtService, providedIn: 'root' }); }
1517
1517
  }
1518
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: ParseJwtService, decorators: [{
1518
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: ParseJwtService, decorators: [{
1519
1519
  type: Injectable,
1520
1520
  args: [{
1521
1521
  providedIn: 'root'
@@ -1642,10 +1642,10 @@ class AuthenticationService {
1642
1642
  }, 0);
1643
1643
  }
1644
1644
  }
1645
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: AuthenticationService, deps: [{ token: i1$5.OidcSecurityService }, { token: CookiesService }, { token: i2.Router }, { token: ParseJwtService }, { token: i1$1.Store }, { token: AppLoggerService }, { token: AppStorageService }, { token: AdminApiService }, { token: RLB_CFG_ENV, optional: true }, { token: RLB_CFG_AUTH, optional: true }, { token: RLB_CFG, optional: true }], target: i0.ɵɵFactoryTarget.Injectable }); }
1646
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: AuthenticationService, providedIn: 'root' }); }
1645
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: AuthenticationService, deps: [{ token: i1$5.OidcSecurityService }, { token: CookiesService }, { token: i2.Router }, { token: ParseJwtService }, { token: i1$1.Store }, { token: AppLoggerService }, { token: AppStorageService }, { token: AdminApiService }, { token: RLB_CFG_ENV, optional: true }, { token: RLB_CFG_AUTH, optional: true }, { token: RLB_CFG, optional: true }], target: i0.ɵɵFactoryTarget.Injectable }); }
1646
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: AuthenticationService, providedIn: 'root' }); }
1647
1647
  }
1648
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: AuthenticationService, decorators: [{
1648
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: AuthenticationService, decorators: [{
1649
1649
  type: Injectable,
1650
1650
  args: [{
1651
1651
  providedIn: 'root',
@@ -1687,10 +1687,10 @@ class TokenOauthInterceptor {
1687
1687
  return next.handle(request);
1688
1688
  }));
1689
1689
  }
1690
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: TokenOauthInterceptor, deps: [{ token: AuthenticationService }, { token: RLB_CFG }], target: i0.ɵɵFactoryTarget.Injectable }); }
1691
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: TokenOauthInterceptor }); }
1690
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: TokenOauthInterceptor, deps: [{ token: AuthenticationService }, { token: RLB_CFG }], target: i0.ɵɵFactoryTarget.Injectable }); }
1691
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: TokenOauthInterceptor }); }
1692
1692
  }
1693
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: TokenOauthInterceptor, decorators: [{
1693
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: TokenOauthInterceptor, decorators: [{
1694
1694
  type: Injectable
1695
1695
  }], ctorParameters: () => [{ type: AuthenticationService }, { type: undefined, decorators: [{
1696
1696
  type: Inject,
@@ -1723,10 +1723,10 @@ class CompanyInterceptor {
1723
1723
  const clonedReq = req.clone({ params });
1724
1724
  return next.handle(clonedReq);
1725
1725
  }
1726
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: CompanyInterceptor, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
1727
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: CompanyInterceptor }); }
1726
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: CompanyInterceptor, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
1727
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: CompanyInterceptor }); }
1728
1728
  }
1729
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: CompanyInterceptor, decorators: [{
1729
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: CompanyInterceptor, decorators: [{
1730
1730
  type: Injectable
1731
1731
  }] });
1732
1732
 
@@ -1789,10 +1789,10 @@ class CmsPipe {
1789
1789
  }
1790
1790
  return `${cms}/${value}`;
1791
1791
  }
1792
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: CmsPipe, deps: [{ token: RLB_CFG_CMS, optional: true }], target: i0.ɵɵFactoryTarget.Pipe }); }
1793
- static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "21.2.4", ngImport: i0, type: CmsPipe, isStandalone: false, name: "cms" }); }
1792
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: CmsPipe, deps: [{ token: RLB_CFG_CMS, optional: true }], target: i0.ɵɵFactoryTarget.Pipe }); }
1793
+ static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "21.2.5", ngImport: i0, type: CmsPipe, isStandalone: false, name: "cms" }); }
1794
1794
  }
1795
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: CmsPipe, decorators: [{
1795
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: CmsPipe, decorators: [{
1796
1796
  type: Pipe,
1797
1797
  args: [{
1798
1798
  name: 'cms',
@@ -1844,10 +1844,10 @@ class CmsComponent {
1844
1844
  }
1845
1845
  return md;
1846
1846
  }
1847
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: CmsComponent, deps: [{ token: StrapiService }, { token: LanguageService }, { token: RLB_CFG_CMS, optional: true }, { token: AbstractMdService, optional: true }], target: i0.ɵɵFactoryTarget.Component }); }
1848
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.4", type: CmsComponent, isStandalone: false, selector: "rlb-cms-template", inputs: { contentId: "contentId", breadcrumb: "breadcrumb" }, ngImport: i0, template: "<div>\n @if (page) {\n <div class=\"container\">\n @if (breadcrumb) {\n <div class=\"row my-4\">\n <div class=\"col-12\">\n <rlb-breadcrumb [items]=\"breadcrumb\"></rlb-breadcrumb>\n </div>\n </div>\n }\n <div class=\"row my-4\">\n <div class=\"col-12\">\n <h1 class=\"text-center\">{{page.Title}}</h1>\n </div>\n </div>\n @if (page.Content) {\n <div class=\"row my-4\">\n <div class=\"col-12\">\n <div [innerHTML]=\"page.Content \"></div>\n </div>\n </div>\n }\n @if (page.page_tabs.length>0) {\n <div class=\"row my-4\">\n <div class=\"col-12\">\n <rlb-tabs>\n @for (tab of page.page_tabs; track tab.id; let i = $index) {\n <rlb-tab [target]=\"'cms-tab-'+i\">\n {{tab.Title}}\n </rlb-tab>\n }\n </rlb-tabs>\n <rlb-tab-content>\n @for (tab of page.page_tabs; track tab.id; let i = $index) {\n <rlb-tab-pane [id]=\"'cms-tab-'+i\">\n <div class=\"container-fluid\">\n @if (tab.Content) {\n <div class=\"row my-4\">\n <div class=\"col-12\">\n <div [innerHTML]=\"tab.Content \"></div>\n </div>\n </div>\n }\n @for (step of tab.steps; track step.ContentId; let i = $index) {\n <div class=\"row my-4 mx-auto card-steps\"\n style=\"max-width: 350px; border-bottom: 1px solid rgb(192, 198, 204);\">\n <div class=\"col-8\">\n <div class=\"pb-2\">\n <div style=\"height: 54px; min-width: 54px; width: 54px; border: 5px solid rgb(192, 198, 204);\"\n class=\"round-counter\">\n <span class=\"red\">{{i+1}}</span>\n </div>\n </div>\n <div>\n <div [innerHTML]=\"step.Content \"></div>\n </div>\n </div>\n <div class=\"col-4 pb-2\">\n <img [src]=\"step.Picture.url|cms\">\n </div>\n </div>\n }\n @if (tab.faqs.length>0) {\n <div class=\"row my-4\">\n <div class=\"col-12\">\n <h2 class=\"py-3\">{{tab.FaqTitle}}</h2>\n </div>\n </div>\n }\n @if (tab.faqs.length>0 && tab.FaqContent) {\n <div class=\"row my-4\">\n <div class=\"col-12\">\n <div [innerHTML]=\"tab.FaqContent \"></div>\n </div>\n </div>\n }\n @if (tab.faqs.length>0) {\n <div class=\"row my-4\">\n <div class=\"col-12\">\n <rlb-accordion>\n @for (faq of tab.faqs; track faq) {\n <div rlb-accordion-item [expanded]=\"true\">\n <rlb-accordion-header>\n {{faq.Title}}\n </rlb-accordion-header>\n <div rlb-accordion-body>\n <div [innerHTML]=\"faq.Content\"> </div>\n </div>\n </div>\n }\n </rlb-accordion>\n </div>\n </div>\n }\n <div class=\"row my-4\">\n <div class=\"col-12\">\n <span>\n <a routerLink=\"/support\">\n <i class=\"bi bi-info-circle-fill\" style=\"margin-bottom: -6px;margin-right: 6px;\"></i>\n <span>{{'pages.support.infoPage' | translate}}</span>\n </a>\n </span>\n </div>\n </div>\n @if (page.topics.length>0) {\n <div class=\"row my-4\" style=\"padding: 4px\">\n @for (topic of page.topics; track topic.ContentId) {\n <div class=\"col-lg-6 col-md-12 col-sm-12 col-xs-12\">\n <a [routerLink]=\"'/informations/'+topic.page.ContentId\" style=\"color: inherit;text-decoration: none;\">\n <div class=\"card mb-4\" style=\"min-height: 230px;\">\n <img [src]=\"topic.Picture.url | cms\" class=\"card-img-top\"\n style=\"height: 91px; margin: 16px -16px;\">\n <div class=\"card-body\">\n <h5 class=\"card-title\">{{topic.Title}}</h5>\n <div class=\"card-text\" [innerHTML]=\"topic.Content \"></div>\n </div>\n </div>\n </a>\n </div>\n }\n </div>\n }\n </div>\n </rlb-tab-pane>\n }\n </rlb-tab-content>\n </div>\n </div>\n }\n </div>\n }\n </div>\n", styles: [""], dependencies: [{ kind: "component", type: i2$1.BreadcrumbComponent, selector: "rlb-breadcrumb", inputs: ["divider", "items", "cssClasses"] }, { kind: "component", type: i2$1.AccordionComponent, selector: "rlb-accordion", inputs: ["flush", "always-open", "id", "card-style"] }, { kind: "component", type: i2$1.AccordionItemComponent, selector: "div[rlb-accordion-item]", inputs: ["name", "expanded", "class", "style"], outputs: ["statusChange"] }, { kind: "component", type: i2$1.AccordionHeaderComponent, selector: "rlb-accordion-header" }, { kind: "component", type: i2$1.AccordionBodyComponent, selector: "div[rlb-accordion-body]" }, { kind: "component", type: i2$1.TabsComponent, selector: "rlb-tabs", inputs: ["horizontal-alignment", "view", "vertical", "fill", "id", "class"] }, { kind: "component", type: i2$1.TabComponent, selector: "rlb-tab", inputs: ["active", "disabled", "target", "class"] }, { kind: "component", type: i2$1.TabContentComponent, selector: "rlb-tab-content" }, { kind: "component", type: i2$1.TabPaneComponent, selector: "rlb-tab-pane", inputs: ["id", "active", "fade"] }, { kind: "directive", type: i2.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "pipe", type: i1$3.TranslatePipe, name: "translate" }, { kind: "pipe", type: CmsPipe, name: "cms" }] }); }
1847
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: CmsComponent, deps: [{ token: StrapiService }, { token: LanguageService }, { token: RLB_CFG_CMS, optional: true }, { token: AbstractMdService, optional: true }], target: i0.ɵɵFactoryTarget.Component }); }
1848
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.5", type: CmsComponent, isStandalone: false, selector: "rlb-cms-template", inputs: { contentId: "contentId", breadcrumb: "breadcrumb" }, ngImport: i0, template: "<div>\n @if (page) {\n <div class=\"container\">\n @if (breadcrumb) {\n <div class=\"row my-4\">\n <div class=\"col-12\">\n <rlb-breadcrumb [items]=\"breadcrumb\"></rlb-breadcrumb>\n </div>\n </div>\n }\n <div class=\"row my-4\">\n <div class=\"col-12\">\n <h1 class=\"text-center\">{{page.Title}}</h1>\n </div>\n </div>\n @if (page.Content) {\n <div class=\"row my-4\">\n <div class=\"col-12\">\n <div [innerHTML]=\"page.Content \"></div>\n </div>\n </div>\n }\n @if (page.page_tabs.length>0) {\n <div class=\"row my-4\">\n <div class=\"col-12\">\n <rlb-tabs>\n @for (tab of page.page_tabs; track tab.id; let i = $index) {\n <rlb-tab [target]=\"'cms-tab-'+i\">\n {{tab.Title}}\n </rlb-tab>\n }\n </rlb-tabs>\n <rlb-tab-content>\n @for (tab of page.page_tabs; track tab.id; let i = $index) {\n <rlb-tab-pane [id]=\"'cms-tab-'+i\">\n <div class=\"container-fluid\">\n @if (tab.Content) {\n <div class=\"row my-4\">\n <div class=\"col-12\">\n <div [innerHTML]=\"tab.Content \"></div>\n </div>\n </div>\n }\n @for (step of tab.steps; track step.ContentId; let i = $index) {\n <div class=\"row my-4 mx-auto card-steps\"\n style=\"max-width: 350px; border-bottom: 1px solid rgb(192, 198, 204);\">\n <div class=\"col-8\">\n <div class=\"pb-2\">\n <div style=\"height: 54px; min-width: 54px; width: 54px; border: 5px solid rgb(192, 198, 204);\"\n class=\"round-counter\">\n <span class=\"red\">{{i+1}}</span>\n </div>\n </div>\n <div>\n <div [innerHTML]=\"step.Content \"></div>\n </div>\n </div>\n <div class=\"col-4 pb-2\">\n <img [src]=\"step.Picture.url|cms\">\n </div>\n </div>\n }\n @if (tab.faqs.length>0) {\n <div class=\"row my-4\">\n <div class=\"col-12\">\n <h2 class=\"py-3\">{{tab.FaqTitle}}</h2>\n </div>\n </div>\n }\n @if (tab.faqs.length>0 && tab.FaqContent) {\n <div class=\"row my-4\">\n <div class=\"col-12\">\n <div [innerHTML]=\"tab.FaqContent \"></div>\n </div>\n </div>\n }\n @if (tab.faqs.length>0) {\n <div class=\"row my-4\">\n <div class=\"col-12\">\n <rlb-accordion>\n @for (faq of tab.faqs; track faq) {\n <div rlb-accordion-item [expanded]=\"true\">\n <rlb-accordion-header>\n {{faq.Title}}\n </rlb-accordion-header>\n <div rlb-accordion-body>\n <div [innerHTML]=\"faq.Content\"> </div>\n </div>\n </div>\n }\n </rlb-accordion>\n </div>\n </div>\n }\n <div class=\"row my-4\">\n <div class=\"col-12\">\n <span>\n <a routerLink=\"/support\">\n <i class=\"bi bi-info-circle-fill\" style=\"margin-bottom: -6px;margin-right: 6px;\"></i>\n <span>{{'pages.support.infoPage' | translate}}</span>\n </a>\n </span>\n </div>\n </div>\n @if (page.topics.length>0) {\n <div class=\"row my-4\" style=\"padding: 4px\">\n @for (topic of page.topics; track topic.ContentId) {\n <div class=\"col-lg-6 col-md-12 col-sm-12 col-xs-12\">\n <a [routerLink]=\"'/informations/'+topic.page.ContentId\" style=\"color: inherit;text-decoration: none;\">\n <div class=\"card mb-4\" style=\"min-height: 230px;\">\n <img [src]=\"topic.Picture.url | cms\" class=\"card-img-top\"\n style=\"height: 91px; margin: 16px -16px;\">\n <div class=\"card-body\">\n <h5 class=\"card-title\">{{topic.Title}}</h5>\n <div class=\"card-text\" [innerHTML]=\"topic.Content \"></div>\n </div>\n </div>\n </a>\n </div>\n }\n </div>\n }\n </div>\n </rlb-tab-pane>\n }\n </rlb-tab-content>\n </div>\n </div>\n }\n </div>\n }\n </div>\n", styles: [""], dependencies: [{ kind: "component", type: i2$1.BreadcrumbComponent, selector: "rlb-breadcrumb", inputs: ["divider", "items", "cssClasses"] }, { kind: "component", type: i2$1.AccordionComponent, selector: "rlb-accordion", inputs: ["flush", "always-open", "id", "card-style"] }, { kind: "component", type: i2$1.AccordionItemComponent, selector: "div[rlb-accordion-item]", inputs: ["name", "expanded", "class", "style"], outputs: ["statusChange"] }, { kind: "component", type: i2$1.AccordionHeaderComponent, selector: "rlb-accordion-header" }, { kind: "component", type: i2$1.AccordionBodyComponent, selector: "div[rlb-accordion-body]" }, { kind: "component", type: i2$1.TabsComponent, selector: "rlb-tabs", inputs: ["horizontal-alignment", "view", "vertical", "fill", "id", "class"] }, { kind: "component", type: i2$1.TabComponent, selector: "rlb-tab", inputs: ["active", "disabled", "target", "class"] }, { kind: "component", type: i2$1.TabContentComponent, selector: "rlb-tab-content" }, { kind: "component", type: i2$1.TabPaneComponent, selector: "rlb-tab-pane", inputs: ["id", "active", "fade"] }, { kind: "directive", type: i2.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "pipe", type: i1$3.TranslatePipe, name: "translate" }, { kind: "pipe", type: CmsPipe, name: "cms" }] }); }
1849
1849
  }
1850
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: CmsComponent, decorators: [{
1850
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: CmsComponent, decorators: [{
1851
1851
  type: Component,
1852
1852
  args: [{ selector: 'rlb-cms-template', standalone: false, template: "<div>\n @if (page) {\n <div class=\"container\">\n @if (breadcrumb) {\n <div class=\"row my-4\">\n <div class=\"col-12\">\n <rlb-breadcrumb [items]=\"breadcrumb\"></rlb-breadcrumb>\n </div>\n </div>\n }\n <div class=\"row my-4\">\n <div class=\"col-12\">\n <h1 class=\"text-center\">{{page.Title}}</h1>\n </div>\n </div>\n @if (page.Content) {\n <div class=\"row my-4\">\n <div class=\"col-12\">\n <div [innerHTML]=\"page.Content \"></div>\n </div>\n </div>\n }\n @if (page.page_tabs.length>0) {\n <div class=\"row my-4\">\n <div class=\"col-12\">\n <rlb-tabs>\n @for (tab of page.page_tabs; track tab.id; let i = $index) {\n <rlb-tab [target]=\"'cms-tab-'+i\">\n {{tab.Title}}\n </rlb-tab>\n }\n </rlb-tabs>\n <rlb-tab-content>\n @for (tab of page.page_tabs; track tab.id; let i = $index) {\n <rlb-tab-pane [id]=\"'cms-tab-'+i\">\n <div class=\"container-fluid\">\n @if (tab.Content) {\n <div class=\"row my-4\">\n <div class=\"col-12\">\n <div [innerHTML]=\"tab.Content \"></div>\n </div>\n </div>\n }\n @for (step of tab.steps; track step.ContentId; let i = $index) {\n <div class=\"row my-4 mx-auto card-steps\"\n style=\"max-width: 350px; border-bottom: 1px solid rgb(192, 198, 204);\">\n <div class=\"col-8\">\n <div class=\"pb-2\">\n <div style=\"height: 54px; min-width: 54px; width: 54px; border: 5px solid rgb(192, 198, 204);\"\n class=\"round-counter\">\n <span class=\"red\">{{i+1}}</span>\n </div>\n </div>\n <div>\n <div [innerHTML]=\"step.Content \"></div>\n </div>\n </div>\n <div class=\"col-4 pb-2\">\n <img [src]=\"step.Picture.url|cms\">\n </div>\n </div>\n }\n @if (tab.faqs.length>0) {\n <div class=\"row my-4\">\n <div class=\"col-12\">\n <h2 class=\"py-3\">{{tab.FaqTitle}}</h2>\n </div>\n </div>\n }\n @if (tab.faqs.length>0 && tab.FaqContent) {\n <div class=\"row my-4\">\n <div class=\"col-12\">\n <div [innerHTML]=\"tab.FaqContent \"></div>\n </div>\n </div>\n }\n @if (tab.faqs.length>0) {\n <div class=\"row my-4\">\n <div class=\"col-12\">\n <rlb-accordion>\n @for (faq of tab.faqs; track faq) {\n <div rlb-accordion-item [expanded]=\"true\">\n <rlb-accordion-header>\n {{faq.Title}}\n </rlb-accordion-header>\n <div rlb-accordion-body>\n <div [innerHTML]=\"faq.Content\"> </div>\n </div>\n </div>\n }\n </rlb-accordion>\n </div>\n </div>\n }\n <div class=\"row my-4\">\n <div class=\"col-12\">\n <span>\n <a routerLink=\"/support\">\n <i class=\"bi bi-info-circle-fill\" style=\"margin-bottom: -6px;margin-right: 6px;\"></i>\n <span>{{'pages.support.infoPage' | translate}}</span>\n </a>\n </span>\n </div>\n </div>\n @if (page.topics.length>0) {\n <div class=\"row my-4\" style=\"padding: 4px\">\n @for (topic of page.topics; track topic.ContentId) {\n <div class=\"col-lg-6 col-md-12 col-sm-12 col-xs-12\">\n <a [routerLink]=\"'/informations/'+topic.page.ContentId\" style=\"color: inherit;text-decoration: none;\">\n <div class=\"card mb-4\" style=\"min-height: 230px;\">\n <img [src]=\"topic.Picture.url | cms\" class=\"card-img-top\"\n style=\"height: 91px; margin: 16px -16px;\">\n <div class=\"card-body\">\n <h5 class=\"card-title\">{{topic.Title}}</h5>\n <div class=\"card-text\" [innerHTML]=\"topic.Content \"></div>\n </div>\n </div>\n </a>\n </div>\n }\n </div>\n }\n </div>\n </rlb-tab-pane>\n }\n </rlb-tab-content>\n </div>\n </div>\n }\n </div>\n }\n </div>\n" }]
1853
1853
  }], ctorParameters: () => [{ type: StrapiService }, { type: LanguageService }, { type: undefined, decorators: [{
@@ -1870,37 +1870,37 @@ class CmsContentComponent {
1870
1870
  get contentId() {
1871
1871
  return this.route.snapshot.params['id'];
1872
1872
  }
1873
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: CmsContentComponent, deps: [{ token: i2.ActivatedRoute }], target: i0.ɵɵFactoryTarget.Component }); }
1874
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.4", type: CmsContentComponent, isStandalone: false, selector: "rlb-cms-content", ngImport: i0, template: "<rlb-cms-template [contentId]=\"contentId\"></rlb-cms-template>", styles: [""], dependencies: [{ kind: "component", type: CmsComponent, selector: "rlb-cms-template", inputs: ["contentId", "breadcrumb"] }] }); }
1873
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: CmsContentComponent, deps: [{ token: i2.ActivatedRoute }], target: i0.ɵɵFactoryTarget.Component }); }
1874
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.5", type: CmsContentComponent, isStandalone: false, selector: "rlb-cms-content", ngImport: i0, template: "<rlb-cms-template [contentId]=\"contentId\"></rlb-cms-template>", styles: [""], dependencies: [{ kind: "component", type: CmsComponent, selector: "rlb-cms-template", inputs: ["contentId", "breadcrumb"] }] }); }
1875
1875
  }
1876
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: CmsContentComponent, decorators: [{
1876
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: CmsContentComponent, decorators: [{
1877
1877
  type: Component,
1878
1878
  args: [{ selector: 'rlb-cms-content', standalone: false, template: "<rlb-cms-template [contentId]=\"contentId\"></rlb-cms-template>" }]
1879
1879
  }], ctorParameters: () => [{ type: i2.ActivatedRoute }] });
1880
1880
 
1881
1881
  class CookiesComponent {
1882
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: CookiesComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
1883
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.4", type: CookiesComponent, isStandalone: false, selector: "rlb-cookies", ngImport: i0, template: "<rlb-cms-template contentId=\"adb_cookies\"></rlb-cms-template>", styles: [""], dependencies: [{ kind: "component", type: CmsComponent, selector: "rlb-cms-template", inputs: ["contentId", "breadcrumb"] }] }); }
1882
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: CookiesComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
1883
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.5", type: CookiesComponent, isStandalone: false, selector: "rlb-cookies", ngImport: i0, template: "<rlb-cms-template contentId=\"adb_cookies\"></rlb-cms-template>", styles: [""], dependencies: [{ kind: "component", type: CmsComponent, selector: "rlb-cms-template", inputs: ["contentId", "breadcrumb"] }] }); }
1884
1884
  }
1885
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: CookiesComponent, decorators: [{
1885
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: CookiesComponent, decorators: [{
1886
1886
  type: Component,
1887
1887
  args: [{ selector: 'rlb-cookies', standalone: false, template: "<rlb-cms-template contentId=\"adb_cookies\"></rlb-cms-template>" }]
1888
1888
  }] });
1889
1889
 
1890
1890
  class NotFoundComponent {
1891
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: NotFoundComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
1892
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.4", type: NotFoundComponent, isStandalone: false, selector: "rlb-not-found", ngImport: i0, template: "<div class=\"container\" style=\"height:calc(100vh - 58px);\">\n <div class=\"align-center\">\n <div class=\"text-center\">\n <h1 class=\"text-primary\">\n {{ 'pages.notFound.title' | translate }}\n </h1>\n <p>{{ 'pages.notFound.content' | translate }}</p><a href=\"/\" class=\"btn btn-outline-primary\">\n <span>\n {{ 'pages.notFound.button' | translate }}\n </span></a>\n </div>\n </div>\n</div>\n", styles: [""], dependencies: [{ kind: "pipe", type: i1$3.TranslatePipe, name: "translate" }] }); }
1891
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: NotFoundComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
1892
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.5", type: NotFoundComponent, isStandalone: false, selector: "rlb-not-found", ngImport: i0, template: "<div class=\"container\" style=\"height:calc(100vh - 58px);\">\n <div class=\"align-center\">\n <div class=\"text-center\">\n <h1 class=\"text-primary\">\n {{ 'pages.notFound.title' | translate }}\n </h1>\n <p>{{ 'pages.notFound.content' | translate }}</p><a href=\"/\" class=\"btn btn-outline-primary\">\n <span>\n {{ 'pages.notFound.button' | translate }}\n </span></a>\n </div>\n </div>\n</div>\n", styles: [""], dependencies: [{ kind: "pipe", type: i1$3.TranslatePipe, name: "translate" }] }); }
1893
1893
  }
1894
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: NotFoundComponent, decorators: [{
1894
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: NotFoundComponent, decorators: [{
1895
1895
  type: Component,
1896
1896
  args: [{ selector: 'rlb-not-found', standalone: false, template: "<div class=\"container\" style=\"height:calc(100vh - 58px);\">\n <div class=\"align-center\">\n <div class=\"text-center\">\n <h1 class=\"text-primary\">\n {{ 'pages.notFound.title' | translate }}\n </h1>\n <p>{{ 'pages.notFound.content' | translate }}</p><a href=\"/\" class=\"btn btn-outline-primary\">\n <span>\n {{ 'pages.notFound.button' | translate }}\n </span></a>\n </div>\n </div>\n</div>\n" }]
1897
1897
  }] });
1898
1898
 
1899
1899
  class PrivacyComponent {
1900
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: PrivacyComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
1901
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.4", type: PrivacyComponent, isStandalone: false, selector: "rlb-privacy", ngImport: i0, template: "<rlb-cms-template contentId=\"adb_privacy\"></rlb-cms-template>", styles: [""], dependencies: [{ kind: "component", type: CmsComponent, selector: "rlb-cms-template", inputs: ["contentId", "breadcrumb"] }] }); }
1900
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: PrivacyComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
1901
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.5", type: PrivacyComponent, isStandalone: false, selector: "rlb-privacy", ngImport: i0, template: "<rlb-cms-template contentId=\"adb_privacy\"></rlb-cms-template>", styles: [""], dependencies: [{ kind: "component", type: CmsComponent, selector: "rlb-cms-template", inputs: ["contentId", "breadcrumb"] }] }); }
1902
1902
  }
1903
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: PrivacyComponent, decorators: [{
1903
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: PrivacyComponent, decorators: [{
1904
1904
  type: Component,
1905
1905
  args: [{ selector: 'rlb-privacy', standalone: false, template: "<rlb-cms-template contentId=\"adb_privacy\"></rlb-cms-template>" }]
1906
1906
  }] });
@@ -1933,19 +1933,19 @@ class SupportComponent {
1933
1933
  this._location.back();
1934
1934
  }
1935
1935
  ngOnInit() { }
1936
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: SupportComponent, deps: [{ token: AbstractSupportService }, { token: i1$6.Location }], target: i0.ɵɵFactoryTarget.Component }); }
1937
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.4", type: SupportComponent, isStandalone: false, selector: "rlb-support", ngImport: i0, template: "<div class=\"container mt-2 mb-5\">\n <div class=\"container text-center position-relative my-3\">\n <h3>{{ 'pages.support.title' | translate}}</h3>\n <i role=\"button\" class=\"bi bi-chevron-left position-absolute start-0 top-50 translate-middle-y\"\n style=\"font-size: 25px;font-weight: 600;\" (click)=\"backClicked()\"></i>\n </div>\n <form [formGroup]=\"supportForm\" class=\"needs-validation\" (ngSubmit)=\"sendSupport(supportForm.value)\">\n <rlb-list class=\"settings\">\n <rlb-list-item class=\"settings-item\">\n <div class=\"d-flex justify-content-between\">\n <div class=\"settings-text\">\n <h6 class=\"mt-1\">{{ 'pages.support.name' | translate}}</h6>\n </div>\n <div class=\"settings-control\">\n <rlb-input type=\"text\" size=\"small\" formControlName=\"name\" />\n </div>\n </div>\n </rlb-list-item>\n <rlb-list-item class=\"settings-item\">\n <div class=\"d-flex justify-content-between\">\n <div class=\"settings-text\">\n <h6 class=\"mt-1\">{{ 'pages.support.email' | translate}}</h6>\n </div>\n <div class=\"settings-control\">\n <rlb-input type=\"text\" size=\"small\" formControlName=\"email\" />\n </div>\n </div>\n </rlb-list-item>\n <rlb-list-item class=\"settings-item\">\n <div class=\"d-flex justify-content-between\">\n <div class=\"settings-text\">\n <h6 class=\"mt-1\">{{ 'pages.support.subject' | translate}}</h6>\n </div>\n <div class=\"settings-control\">\n <rlb-input type=\"text\" size=\"small\" formControlName=\"subject\" />\n </div>\n </div>\n </rlb-list-item>\n <rlb-list-item class=\"settings-item\">\n <div class=\"d-flex justify-content-between\">\n <div class=\"settings-text\">\n <h6 class=\"mt-1\">{{ 'pages.support.message' | translate}}</h6>\n </div>\n <div class=\"settings-control\">\n <rlb-input type=\"text\" size=\"small\" formControlName=\"message\" />\n </div>\n </div>\n </rlb-list-item>\n <rlb-list-item class=\"settings-item\">\n <div class=\"d-flex justify-content-between\">\n <div class=\"settings-text\">\n <h6 class=\"mt-1\">{{ 'pages.support.legal' | translate}}</h6>\n <span>{{ 'pages.support.infoPage' | translate}}</span>\n </div>\n <div class=\"settings-control\">\n <rlb-switch size=\"small\" formControlName=\"legal\" />\n </div>\n </div>\n </rlb-list-item>\n </rlb-list>\n </form>\n</div>\n", styles: [""], dependencies: [{ kind: "directive", type: i3.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],[formArray],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i3.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i3.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: i2$1.InputComponent, selector: "rlb-input", inputs: ["disabled", "readonly", "before-text", "placeholder", "type", "size", "name", "max", "min", "step", "date-type", "timezone", "id", "extValidation", "enable-validation"] }, { kind: "component", type: i2$1.SwitchComponent, selector: "rlb-switch", inputs: ["disabled", "readonly", "size", "id"] }, { kind: "component", type: i2$1.ListComponent, selector: "rlb-list", inputs: ["disabled", "numbered", "flush", "horizontal"] }, { kind: "component", type: i2$1.ListItemComponent, selector: "rlb-list-item", inputs: ["active", "disabled", "action"] }, { kind: "pipe", type: i1$3.TranslatePipe, name: "translate" }] }); }
1936
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: SupportComponent, deps: [{ token: AbstractSupportService }, { token: i1$6.Location }], target: i0.ɵɵFactoryTarget.Component }); }
1937
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.5", type: SupportComponent, isStandalone: false, selector: "rlb-support", ngImport: i0, template: "<div class=\"container mt-2 mb-5\">\n <div class=\"container text-center position-relative my-3\">\n <h3>{{ 'pages.support.title' | translate}}</h3>\n <i role=\"button\" class=\"bi bi-chevron-left position-absolute start-0 top-50 translate-middle-y\"\n style=\"font-size: 25px;font-weight: 600;\" (click)=\"backClicked()\"></i>\n </div>\n <form [formGroup]=\"supportForm\" class=\"needs-validation\" (ngSubmit)=\"sendSupport(supportForm.value)\">\n <rlb-list class=\"settings\">\n <rlb-list-item class=\"settings-item\">\n <div class=\"d-flex justify-content-between\">\n <div class=\"settings-text\">\n <h6 class=\"mt-1\">{{ 'pages.support.name' | translate}}</h6>\n </div>\n <div class=\"settings-control\">\n <rlb-input type=\"text\" size=\"small\" formControlName=\"name\" />\n </div>\n </div>\n </rlb-list-item>\n <rlb-list-item class=\"settings-item\">\n <div class=\"d-flex justify-content-between\">\n <div class=\"settings-text\">\n <h6 class=\"mt-1\">{{ 'pages.support.email' | translate}}</h6>\n </div>\n <div class=\"settings-control\">\n <rlb-input type=\"text\" size=\"small\" formControlName=\"email\" />\n </div>\n </div>\n </rlb-list-item>\n <rlb-list-item class=\"settings-item\">\n <div class=\"d-flex justify-content-between\">\n <div class=\"settings-text\">\n <h6 class=\"mt-1\">{{ 'pages.support.subject' | translate}}</h6>\n </div>\n <div class=\"settings-control\">\n <rlb-input type=\"text\" size=\"small\" formControlName=\"subject\" />\n </div>\n </div>\n </rlb-list-item>\n <rlb-list-item class=\"settings-item\">\n <div class=\"d-flex justify-content-between\">\n <div class=\"settings-text\">\n <h6 class=\"mt-1\">{{ 'pages.support.message' | translate}}</h6>\n </div>\n <div class=\"settings-control\">\n <rlb-input type=\"text\" size=\"small\" formControlName=\"message\" />\n </div>\n </div>\n </rlb-list-item>\n <rlb-list-item class=\"settings-item\">\n <div class=\"d-flex justify-content-between\">\n <div class=\"settings-text\">\n <h6 class=\"mt-1\">{{ 'pages.support.legal' | translate}}</h6>\n <span>{{ 'pages.support.infoPage' | translate}}</span>\n </div>\n <div class=\"settings-control\">\n <rlb-switch size=\"small\" formControlName=\"legal\" />\n </div>\n </div>\n </rlb-list-item>\n </rlb-list>\n </form>\n</div>\n", styles: [""], dependencies: [{ kind: "directive", type: i3.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],[formArray],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i3.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i3.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: i2$1.InputComponent, selector: "rlb-input", inputs: ["disabled", "readonly", "before-text", "placeholder", "type", "size", "name", "max", "min", "step", "date-type", "timezone", "id", "extValidation", "enable-validation"] }, { kind: "component", type: i2$1.SwitchComponent, selector: "rlb-switch", inputs: ["disabled", "readonly", "size", "id"] }, { kind: "component", type: i2$1.ListComponent, selector: "rlb-list", inputs: ["disabled", "numbered", "flush", "horizontal"] }, { kind: "component", type: i2$1.ListItemComponent, selector: "rlb-list-item", inputs: ["active", "disabled", "action"] }, { kind: "pipe", type: i1$3.TranslatePipe, name: "translate" }] }); }
1938
1938
  }
1939
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: SupportComponent, decorators: [{
1939
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: SupportComponent, decorators: [{
1940
1940
  type: Component,
1941
1941
  args: [{ selector: 'rlb-support', standalone: false, template: "<div class=\"container mt-2 mb-5\">\n <div class=\"container text-center position-relative my-3\">\n <h3>{{ 'pages.support.title' | translate}}</h3>\n <i role=\"button\" class=\"bi bi-chevron-left position-absolute start-0 top-50 translate-middle-y\"\n style=\"font-size: 25px;font-weight: 600;\" (click)=\"backClicked()\"></i>\n </div>\n <form [formGroup]=\"supportForm\" class=\"needs-validation\" (ngSubmit)=\"sendSupport(supportForm.value)\">\n <rlb-list class=\"settings\">\n <rlb-list-item class=\"settings-item\">\n <div class=\"d-flex justify-content-between\">\n <div class=\"settings-text\">\n <h6 class=\"mt-1\">{{ 'pages.support.name' | translate}}</h6>\n </div>\n <div class=\"settings-control\">\n <rlb-input type=\"text\" size=\"small\" formControlName=\"name\" />\n </div>\n </div>\n </rlb-list-item>\n <rlb-list-item class=\"settings-item\">\n <div class=\"d-flex justify-content-between\">\n <div class=\"settings-text\">\n <h6 class=\"mt-1\">{{ 'pages.support.email' | translate}}</h6>\n </div>\n <div class=\"settings-control\">\n <rlb-input type=\"text\" size=\"small\" formControlName=\"email\" />\n </div>\n </div>\n </rlb-list-item>\n <rlb-list-item class=\"settings-item\">\n <div class=\"d-flex justify-content-between\">\n <div class=\"settings-text\">\n <h6 class=\"mt-1\">{{ 'pages.support.subject' | translate}}</h6>\n </div>\n <div class=\"settings-control\">\n <rlb-input type=\"text\" size=\"small\" formControlName=\"subject\" />\n </div>\n </div>\n </rlb-list-item>\n <rlb-list-item class=\"settings-item\">\n <div class=\"d-flex justify-content-between\">\n <div class=\"settings-text\">\n <h6 class=\"mt-1\">{{ 'pages.support.message' | translate}}</h6>\n </div>\n <div class=\"settings-control\">\n <rlb-input type=\"text\" size=\"small\" formControlName=\"message\" />\n </div>\n </div>\n </rlb-list-item>\n <rlb-list-item class=\"settings-item\">\n <div class=\"d-flex justify-content-between\">\n <div class=\"settings-text\">\n <h6 class=\"mt-1\">{{ 'pages.support.legal' | translate}}</h6>\n <span>{{ 'pages.support.infoPage' | translate}}</span>\n </div>\n <div class=\"settings-control\">\n <rlb-switch size=\"small\" formControlName=\"legal\" />\n </div>\n </div>\n </rlb-list-item>\n </rlb-list>\n </form>\n</div>\n" }]
1942
1942
  }], ctorParameters: () => [{ type: AbstractSupportService }, { type: i1$6.Location }] });
1943
1943
 
1944
1944
  class TermsAndConditionsComponent {
1945
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: TermsAndConditionsComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
1946
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.4", type: TermsAndConditionsComponent, isStandalone: false, selector: "rlb-terms-and-conditions", ngImport: i0, template: "<rlb-cms-template contentId=\"adb_terms\"></rlb-cms-template>", styles: [""], dependencies: [{ kind: "component", type: CmsComponent, selector: "rlb-cms-template", inputs: ["contentId", "breadcrumb"] }] }); }
1945
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: TermsAndConditionsComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
1946
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.5", type: TermsAndConditionsComponent, isStandalone: false, selector: "rlb-terms-and-conditions", ngImport: i0, template: "<rlb-cms-template contentId=\"adb_terms\"></rlb-cms-template>", styles: [""], dependencies: [{ kind: "component", type: CmsComponent, selector: "rlb-cms-template", inputs: ["contentId", "breadcrumb"] }] }); }
1947
1947
  }
1948
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: TermsAndConditionsComponent, decorators: [{
1948
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: TermsAndConditionsComponent, decorators: [{
1949
1949
  type: Component,
1950
1950
  args: [{ selector: 'rlb-terms-and-conditions', standalone: false, template: "<rlb-cms-template contentId=\"adb_terms\"></rlb-cms-template>" }]
1951
1951
  }] });
@@ -1957,10 +1957,10 @@ class AsMultiPipe {
1957
1957
  }
1958
1958
  return value;
1959
1959
  }
1960
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: AsMultiPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
1961
- static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "21.2.4", ngImport: i0, type: AsMultiPipe, isStandalone: false, name: "asMulti" }); }
1960
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: AsMultiPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
1961
+ static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "21.2.5", ngImport: i0, type: AsMultiPipe, isStandalone: false, name: "asMulti" }); }
1962
1962
  }
1963
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: AsMultiPipe, decorators: [{
1963
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: AsMultiPipe, decorators: [{
1964
1964
  type: Pipe,
1965
1965
  args: [{
1966
1966
  name: 'asMulti',
@@ -1974,10 +1974,10 @@ class AsSinglePipe {
1974
1974
  }
1975
1975
  return value;
1976
1976
  }
1977
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: AsSinglePipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
1978
- static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "21.2.4", ngImport: i0, type: AsSinglePipe, isStandalone: false, name: "asSingle" }); }
1977
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: AsSinglePipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
1978
+ static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "21.2.5", ngImport: i0, type: AsSinglePipe, isStandalone: false, name: "asSingle" }); }
1979
1979
  }
1980
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: AsSinglePipe, decorators: [{
1980
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: AsSinglePipe, decorators: [{
1981
1981
  type: Pipe,
1982
1982
  args: [{
1983
1983
  name: 'asSingle',
@@ -2063,10 +2063,10 @@ class SettingsDropdownSelectorComponent {
2063
2063
  close() {
2064
2064
  this.menu()?.close();
2065
2065
  }
2066
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: SettingsDropdownSelectorComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
2067
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.4", type: SettingsDropdownSelectorComponent, isStandalone: false, selector: "rlb-settings-dropdown-selector", inputs: { mode: { classPropertyName: "mode", publicName: "mode", isSignal: true, isRequired: false, transformFunction: null }, apps: { classPropertyName: "apps", publicName: "apps", isSignal: true, isRequired: true, transformFunction: null }, navbarHasSettings: { classPropertyName: "navbarHasSettings", publicName: "navbarHasSettings", isSignal: true, isRequired: true, transformFunction: null }, navbarHasLogin: { classPropertyName: "navbarHasLogin", publicName: "navbarHasLogin", isSignal: true, isRequired: true, transformFunction: null }, isAuth: { classPropertyName: "isAuth", publicName: "isAuth", isSignal: true, isRequired: true, transformFunction: null } }, outputs: { appSelected: "appSelected" }, viewQueries: [{ propertyName: "menu", first: true, predicate: ["menu"], descendants: true, isSignal: true }], ngImport: i0, template: "@if (mode() === 'desktop') {\n <rlb-navbar-dropdown-item #menu dropdown auto-close=\"outside\" (status-changed)=\"change($event)\">\n <span tooltip-placement=\"bottom\" [tooltip]=\"('core.settings.title') | translate\">\n <i class=\"bi bi-gear fs-5\"></i>\n </span>\n <rlb-dropdown-container placement=\"right\">\n <div style=\"width: 320px;\">\n <ng-container *ngTemplateOutlet=\"settingsCarousel\"></ng-container>\n </div>\n </rlb-dropdown-container>\n </rlb-navbar-dropdown-item>\n} @else {\n <!-- Inline mode for Offcanvas -->\n <ng-container *ngTemplateOutlet=\"settingsCarousel\"></ng-container>\n}\n\n<ng-template #settingsCarousel>\n <rlb-carousel [hide-indicators]=\"true\" [hide-controls]=\"true\" autoplay=\"none\"[no-touch]=\"true\" [(current-slide)]=\"activeSlide\" class=\"w-100 d-block\">\n <rlb-carousel-slide [active]=\"true\">\n <div class=\"p-3\">\n <h6 class=\"dropdown-header px-0 text-center mb-2 fw-bold text-dark\">\n {{ 'core.settings.title' | translate }}\n </h6>\n\n <div class=\"row row-cols-3 g-2\">\n\n <!-- General Settings -->\n <div class=\"col\">\n <button\n rlb-button\n outline\n color=\"primary\"\n (click)=\"goToInlineSettings()\"\n class=\"w-100 h-100 d-flex flex-column align-items-center justify-content-center p-2 text-decoration-none\">\n <i class=\"bi bi-person fs-4 mb-1\"></i>\n <span class=\"small text-truncate w-100\">{{ 'core.account.settings.title' | translate }}</span>\n </button>\n </div>\n\n <!-- Dynamic App Settings -->\n @for (app of apps(); track app.id) {\n @if (app.settings) {\n <div class=\"col\">\n <button\n rlb-button\n outline\n color=\"primary\"\n [disabled]=\"!app.enabled && (app.settings.auth && !(isAuth()))\"\n (click)=\"selectApp(app)\"\n class=\"w-100 h-100 d-flex flex-column align-items-center justify-content-center p-2 text-decoration-none\">\n <i [ngClass]=\"['bi', 'fs-4', 'mb-1', app.settings.icon || 'bi-gear']\"></i>\n <span class=\"small text-truncate w-100\" [title]=\"(app.settings.title | translate) || app.data?.appName\">\n {{ (app.settings.title | translate) || app.data?.appName }}\n </span>\n </button>\n </div>\n }\n }\n\n <!-- System / Status -->\n @if (pages?.['status']?.path) {\n <div class=\"col\">\n <button rlb-button outline color=\"primary\" routerLink=\"/status\" class=\"w-100 h-100 d-flex flex-column align-items-center justify-content-center p-2 text-decoration-none\">\n <i class=\"bi bi-check2-circle fs-4 mb-1\"></i>\n <span class=\"small text-truncate w-100\">{{ 'core.settings.status' | translate }}</span>\n </button>\n </div>\n }\n\n <!-- Logger -->\n @if (pages?.['logger']?.path) {\n <div class=\"col\">\n <button\n rlb-button\n outline\n color=\"primary\"\n routerLink=\"/logger\"\n class=\"w-100 h-100 d-flex flex-column align-items-center justify-content-center p-2 text-decoration-none\">\n <i class=\"bi bi-file-text fs-4 mb-1\"></i>\n <span class=\"small text-truncate w-100\">\n {{ 'core.settings.logger' | translate }}\n </span>\n </button>\n </div>\n }\n\n <!-- Privacy -->\n @if (pages?.['privacy']?.path) {\n <div class=\"col\">\n <button\n rlb-button\n outline\n color=\"primary\"\n routerLink=\"/privacy\"\n class=\"w-100 h-100 d-flex flex-column align-items-center justify-content-center p-2 text-decoration-none\">\n <i class=\"bi bi-shield-check fs-4 mb-1\"></i>\n <span class=\"small text-truncate w-100\">\n {{ 'core.settings.privacy' | translate }}\n </span>\n </button>\n </div>\n }\n\n <!-- Cookies -->\n @if (pages?.['cookies']?.path) {\n <div class=\"col\">\n <button\n rlb-button\n outline\n color=\"primary\"\n routerLink=\"/cookies\"\n class=\"w-100 h-100 d-flex flex-column align-items-center justify-content-center p-2 text-decoration-none\">\n <i class=\"bi bi-cookie fs-4 mb-1\"></i>\n <span class=\"small text-truncate w-100\">\n {{ 'core.settings.cookies' | translate }}\n </span>\n </button>\n </div>\n }\n\n <!-- Terms -->\n @if (pages?.['terms']?.path) {\n <div class=\"col\">\n <button\n rlb-button\n outline\n color=\"primary\"\n routerLink=\"/terms\"\n class=\"w-100 h-100 d-flex flex-column align-items-center justify-content-center p-2 text-decoration-none\">\n <i class=\"bi bi-vector-pen fs-4 mb-1\"></i>\n <span class=\"small text-truncate w-100\">\n {{ 'core.settings.legal' | translate }}\n </span>\n </button>\n </div>\n }\n\n <!-- Support -->\n @if (pages?.['support']?.path) {\n <div class=\"col\">\n <button\n rlb-button\n outline\n color=\"primary\"\n routerLink=\"/support\"\n class=\"w-100 h-100 d-flex flex-column align-items-center justify-content-center p-2 text-decoration-none\">\n <i class=\"bi bi-chat-quote fs-4 mb-1\"></i>\n <span class=\"small text-truncate w-100\">\n {{ 'core.settings.support' | translate }}\n </span>\n </button>\n </div>\n }\n\n </div>\n </div>\n </rlb-carousel-slide>\n\n <rlb-carousel-slide>\n <div class=\"p-3\">\n\n <!-- Header -->\n <div class=\"d-flex align-items-center mb-3\">\n <button class=\"btn btn-sm btn-link text-reset p-0 me-2 border-0 text-decoration-none\" (click)=\"goToFirstSlide()\">\n <i class=\"bi bi-arrow-left fs-5\"></i>\n </button>\n <h6 class=\"mb-0 fw-bold\">{{ 'core.account.settings.title' | translate }}</h6>\n </div>\n\n <rlb-list class=\"settings\">\n\n <!-- Theme Settings -->\n <rlb-list-item class=\"settings-item\">\n <div class=\"d-flex justify-content-between align-items-center\">\n <div class=\"settings-text\">\n <span class=\"fw-semibold\">{{ 'core.settings.generalTheme' | translate}}</span>\n </div>\n <div class=\"settings-control\">\n <rlb-switch size=\"small\" [(ngModel)]=\"darkMode\" />\n </div>\n </div>\n </rlb-list-item>\n\n <!-- Language Settings -->\n <rlb-list-item class=\"settings-item\">\n <div class=\"d-flex justify-content-between align-items-center\">\n <div class=\"settings-text\">\n <span class=\"fw-semibold\">{{ 'core.settings.generalLanguage' | translate}}</span>\n </div>\n <div class=\"settings-control\">\n <rlb-select size=\"small\" [(ngModel)]=\"currentLanguage\">\n @for (l of languages; track l.value) {\n <rlb-option [value]=\"l.value\">{{l.label}}</rlb-option>\n }\n </rlb-select>\n </div>\n </div>\n </rlb-list-item>\n\n <!-- Show More -->\n <rlb-list-item action class=\"settings-item\" routerLink=\"/profile\" style=\"cursor: pointer;\">\n <div class=\"d-flex justify-content-between align-items-center\">\n <div class=\"settings-text\">\n <span class=\"fw-semibold\">{{ 'core.account.settings.showMore' | translate }}</span>\n </div>\n <div class=\"settings-control text-primary\">\n <i class=\"bi bi-arrow-up-right-square fs-5\"></i>\n </div>\n </div>\n </rlb-list-item>\n\n <!-- Logout -->\n <rlb-list-item action (click)=\"logout()\" class=\"settings-item\" style=\"cursor: pointer;\">\n <div class=\"d-flex justify-content-between align-items-center text-danger\">\n <div class=\"settings-text\">\n <span class=\"fw-semibold\">{{ 'core.account.logout' | translate }}</span>\n </div>\n <div class=\"settings-control\">\n <i class=\"bi bi-box-arrow-left fs-5\"></i>\n </div>\n </div>\n </rlb-list-item>\n\n </rlb-list>\n </div>\n </rlb-carousel-slide>\n </rlb-carousel>\n</ng-template>\n", styles: [""], dependencies: [{ kind: "directive", type: i1$6.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1$6.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i2$1.SwitchComponent, selector: "rlb-switch", inputs: ["disabled", "readonly", "size", "id"] }, { kind: "component", type: i2$1.SelectComponent, selector: "rlb-select", inputs: ["placeholder", "size", "disabled", "readonly", "multiple", "display", "id", "enable-validation"] }, { kind: "component", type: i2$1.OptionComponent, selector: "rlb-option", inputs: ["value", "disabled"] }, { kind: "component", type: i2$1.ButtonComponent, selector: "button[rlb-button], a[rlb-button]", inputs: ["color", "size", "disabled", "outline", "isLink"] }, { kind: "directive", type: i2$1.TooltipDirective, selector: "[tooltip]", inputs: ["tooltip", "tooltip-placement", "tooltip-class", "tooltip-html"] }, { kind: "component", type: i2$1.DropdownContainerComponent, selector: "ul[rlb-dropdown-menu], rlb-dropdown-container", inputs: ["placement", "placement-sm", "placement-md", "placement-lg", "placement-xl", "placement-xxl"] }, { kind: "component", type: i2$1.NavbarDropdownItemComponent, selector: "rlb-navbar-dropdown-item", inputs: ["disabled", "dropdown", "href", "class", "toggle", "auto-close"], outputs: ["click", "status-changed"] }, { kind: "component", type: i2$1.CarouselComponent, selector: "rlb-carousel", inputs: ["id", "hide-indicators", "hide-controls", "cross-fade", "autoplay", "interval", "pause", "wrap", "no-touch", "keyboard", "current-slide"], outputs: ["slid", "slide", "current-slideChange", "slide-count"] }, { kind: "component", type: i2$1.CarouselSlideComponent, selector: "rlb-carousel-slide", inputs: ["active", "id"] }, { kind: "component", type: i2$1.ListComponent, selector: "rlb-list", inputs: ["disabled", "numbered", "flush", "horizontal"] }, { kind: "component", type: i2$1.ListItemComponent, selector: "rlb-list-item", inputs: ["active", "disabled", "action"] }, { kind: "directive", type: i2.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "pipe", type: i1$3.TranslatePipe, name: "translate" }] }); }
2066
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: SettingsDropdownSelectorComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
2067
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.5", type: SettingsDropdownSelectorComponent, isStandalone: false, selector: "rlb-settings-dropdown-selector", inputs: { mode: { classPropertyName: "mode", publicName: "mode", isSignal: true, isRequired: false, transformFunction: null }, apps: { classPropertyName: "apps", publicName: "apps", isSignal: true, isRequired: true, transformFunction: null }, navbarHasSettings: { classPropertyName: "navbarHasSettings", publicName: "navbarHasSettings", isSignal: true, isRequired: true, transformFunction: null }, navbarHasLogin: { classPropertyName: "navbarHasLogin", publicName: "navbarHasLogin", isSignal: true, isRequired: true, transformFunction: null }, isAuth: { classPropertyName: "isAuth", publicName: "isAuth", isSignal: true, isRequired: true, transformFunction: null } }, outputs: { appSelected: "appSelected" }, viewQueries: [{ propertyName: "menu", first: true, predicate: ["menu"], descendants: true, isSignal: true }], ngImport: i0, template: "@if (mode() === 'desktop') {\n <rlb-navbar-dropdown-item #menu dropdown auto-close=\"outside\" (status-changed)=\"change($event)\">\n <span tooltip-placement=\"bottom\" [tooltip]=\"('core.settings.title') | translate\">\n <i class=\"bi bi-gear fs-5\"></i>\n </span>\n <rlb-dropdown-container placement=\"right\">\n <div style=\"width: 320px;\">\n <ng-container *ngTemplateOutlet=\"settingsCarousel\"></ng-container>\n </div>\n </rlb-dropdown-container>\n </rlb-navbar-dropdown-item>\n} @else {\n <!-- Inline mode for Offcanvas -->\n <ng-container *ngTemplateOutlet=\"settingsCarousel\"></ng-container>\n}\n\n<ng-template #settingsCarousel>\n <rlb-carousel [hide-indicators]=\"true\" [hide-controls]=\"true\" autoplay=\"none\"[no-touch]=\"true\" [(current-slide)]=\"activeSlide\" class=\"w-100 d-block\">\n <rlb-carousel-slide [active]=\"true\">\n <div class=\"p-3\">\n <h6 class=\"dropdown-header px-0 text-center mb-2 fw-bold text-dark\">\n {{ 'core.settings.title' | translate }}\n </h6>\n\n <div class=\"row row-cols-3 g-2\">\n\n <!-- General Settings -->\n <div class=\"col\">\n <button\n rlb-button\n outline\n color=\"primary\"\n (click)=\"goToInlineSettings()\"\n class=\"w-100 h-100 d-flex flex-column align-items-center justify-content-center p-2 text-decoration-none\">\n <i class=\"bi bi-person fs-4 mb-1\"></i>\n <span class=\"small text-truncate w-100\">{{ 'core.account.settings.title' | translate }}</span>\n </button>\n </div>\n\n <!-- Dynamic App Settings -->\n @for (app of apps(); track app.id) {\n @if (app.settings) {\n <div class=\"col\">\n <button\n rlb-button\n outline\n color=\"primary\"\n [disabled]=\"!app.enabled && (app.settings.auth && !(isAuth()))\"\n (click)=\"selectApp(app)\"\n class=\"w-100 h-100 d-flex flex-column align-items-center justify-content-center p-2 text-decoration-none\">\n <i [ngClass]=\"['bi', 'fs-4', 'mb-1', app.settings.icon || 'bi-gear']\"></i>\n <span class=\"small text-truncate w-100\" [title]=\"(app.settings.title | translate) || app.data?.appName\">\n {{ (app.settings.title | translate) || app.data?.appName }}\n </span>\n </button>\n </div>\n }\n }\n\n <!-- System / Status -->\n @if (pages?.['status']?.path) {\n <div class=\"col\">\n <button rlb-button outline color=\"primary\" routerLink=\"/status\" class=\"w-100 h-100 d-flex flex-column align-items-center justify-content-center p-2 text-decoration-none\">\n <i class=\"bi bi-check2-circle fs-4 mb-1\"></i>\n <span class=\"small text-truncate w-100\">{{ 'core.settings.status' | translate }}</span>\n </button>\n </div>\n }\n\n <!-- Logger -->\n @if (pages?.['logger']?.path) {\n <div class=\"col\">\n <button\n rlb-button\n outline\n color=\"primary\"\n routerLink=\"/logger\"\n class=\"w-100 h-100 d-flex flex-column align-items-center justify-content-center p-2 text-decoration-none\">\n <i class=\"bi bi-file-text fs-4 mb-1\"></i>\n <span class=\"small text-truncate w-100\">\n {{ 'core.settings.logger' | translate }}\n </span>\n </button>\n </div>\n }\n\n <!-- Privacy -->\n @if (pages?.['privacy']?.path) {\n <div class=\"col\">\n <button\n rlb-button\n outline\n color=\"primary\"\n routerLink=\"/privacy\"\n class=\"w-100 h-100 d-flex flex-column align-items-center justify-content-center p-2 text-decoration-none\">\n <i class=\"bi bi-shield-check fs-4 mb-1\"></i>\n <span class=\"small text-truncate w-100\">\n {{ 'core.settings.privacy' | translate }}\n </span>\n </button>\n </div>\n }\n\n <!-- Cookies -->\n @if (pages?.['cookies']?.path) {\n <div class=\"col\">\n <button\n rlb-button\n outline\n color=\"primary\"\n routerLink=\"/cookies\"\n class=\"w-100 h-100 d-flex flex-column align-items-center justify-content-center p-2 text-decoration-none\">\n <i class=\"bi bi-cookie fs-4 mb-1\"></i>\n <span class=\"small text-truncate w-100\">\n {{ 'core.settings.cookies' | translate }}\n </span>\n </button>\n </div>\n }\n\n <!-- Terms -->\n @if (pages?.['terms']?.path) {\n <div class=\"col\">\n <button\n rlb-button\n outline\n color=\"primary\"\n routerLink=\"/terms\"\n class=\"w-100 h-100 d-flex flex-column align-items-center justify-content-center p-2 text-decoration-none\">\n <i class=\"bi bi-vector-pen fs-4 mb-1\"></i>\n <span class=\"small text-truncate w-100\">\n {{ 'core.settings.legal' | translate }}\n </span>\n </button>\n </div>\n }\n\n <!-- Support -->\n @if (pages?.['support']?.path) {\n <div class=\"col\">\n <button\n rlb-button\n outline\n color=\"primary\"\n routerLink=\"/support\"\n class=\"w-100 h-100 d-flex flex-column align-items-center justify-content-center p-2 text-decoration-none\">\n <i class=\"bi bi-chat-quote fs-4 mb-1\"></i>\n <span class=\"small text-truncate w-100\">\n {{ 'core.settings.support' | translate }}\n </span>\n </button>\n </div>\n }\n\n </div>\n </div>\n </rlb-carousel-slide>\n\n <rlb-carousel-slide>\n <div class=\"p-3\">\n\n <!-- Header -->\n <div class=\"d-flex align-items-center mb-3\">\n <button class=\"btn btn-sm btn-link text-reset p-0 me-2 border-0 text-decoration-none\" (click)=\"goToFirstSlide()\">\n <i class=\"bi bi-arrow-left fs-5\"></i>\n </button>\n <h6 class=\"mb-0 fw-bold\">{{ 'core.account.settings.title' | translate }}</h6>\n </div>\n\n <rlb-list class=\"settings\">\n\n <!-- Theme Settings -->\n <rlb-list-item class=\"settings-item\">\n <div class=\"d-flex justify-content-between align-items-center\">\n <div class=\"settings-text\">\n <span class=\"fw-semibold\">{{ 'core.settings.generalTheme' | translate}}</span>\n </div>\n <div class=\"settings-control\">\n <rlb-switch size=\"small\" [(ngModel)]=\"darkMode\" />\n </div>\n </div>\n </rlb-list-item>\n\n <!-- Language Settings -->\n <rlb-list-item class=\"settings-item\">\n <div class=\"d-flex justify-content-between align-items-center\">\n <div class=\"settings-text\">\n <span class=\"fw-semibold\">{{ 'core.settings.generalLanguage' | translate}}</span>\n </div>\n <div class=\"settings-control\">\n <rlb-select size=\"small\" [(ngModel)]=\"currentLanguage\">\n @for (l of languages; track l.value) {\n <rlb-option [value]=\"l.value\">{{l.label}}</rlb-option>\n }\n </rlb-select>\n </div>\n </div>\n </rlb-list-item>\n\n <!-- Show More -->\n <rlb-list-item action class=\"settings-item\" routerLink=\"/profile\" style=\"cursor: pointer;\">\n <div class=\"d-flex justify-content-between align-items-center\">\n <div class=\"settings-text\">\n <span class=\"fw-semibold\">{{ 'core.account.settings.showMore' | translate }}</span>\n </div>\n <div class=\"settings-control text-primary\">\n <i class=\"bi bi-arrow-up-right-square fs-5\"></i>\n </div>\n </div>\n </rlb-list-item>\n\n <!-- Logout -->\n <rlb-list-item action (click)=\"logout()\" class=\"settings-item\" style=\"cursor: pointer;\">\n <div class=\"d-flex justify-content-between align-items-center text-danger\">\n <div class=\"settings-text\">\n <span class=\"fw-semibold\">{{ 'core.account.logout' | translate }}</span>\n </div>\n <div class=\"settings-control\">\n <i class=\"bi bi-box-arrow-left fs-5\"></i>\n </div>\n </div>\n </rlb-list-item>\n\n </rlb-list>\n </div>\n </rlb-carousel-slide>\n </rlb-carousel>\n</ng-template>\n", styles: [""], dependencies: [{ kind: "directive", type: i1$6.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1$6.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i2$1.SwitchComponent, selector: "rlb-switch", inputs: ["disabled", "readonly", "size", "id"] }, { kind: "component", type: i2$1.SelectComponent, selector: "rlb-select", inputs: ["placeholder", "size", "disabled", "readonly", "multiple", "display", "id", "enable-validation"] }, { kind: "component", type: i2$1.OptionComponent, selector: "rlb-option", inputs: ["value", "disabled"] }, { kind: "component", type: i2$1.ButtonComponent, selector: "button[rlb-button], a[rlb-button]", inputs: ["color", "size", "disabled", "outline", "isLink"] }, { kind: "directive", type: i2$1.TooltipDirective, selector: "[tooltip]", inputs: ["tooltip", "tooltip-placement", "tooltip-class", "tooltip-html"] }, { kind: "component", type: i2$1.DropdownContainerComponent, selector: "ul[rlb-dropdown-menu], rlb-dropdown-container", inputs: ["placement", "placement-sm", "placement-md", "placement-lg", "placement-xl", "placement-xxl"] }, { kind: "component", type: i2$1.NavbarDropdownItemComponent, selector: "rlb-navbar-dropdown-item", inputs: ["disabled", "dropdown", "href", "class", "toggle", "auto-close"], outputs: ["click", "status-changed"] }, { kind: "component", type: i2$1.CarouselComponent, selector: "rlb-carousel", inputs: ["id", "hide-indicators", "hide-controls", "cross-fade", "autoplay", "interval", "pause", "wrap", "no-touch", "keyboard", "current-slide"], outputs: ["slid", "slide", "current-slideChange", "slide-count"] }, { kind: "component", type: i2$1.CarouselSlideComponent, selector: "rlb-carousel-slide", inputs: ["active", "id"] }, { kind: "component", type: i2$1.ListComponent, selector: "rlb-list", inputs: ["disabled", "numbered", "flush", "horizontal"] }, { kind: "component", type: i2$1.ListItemComponent, selector: "rlb-list-item", inputs: ["active", "disabled", "action"] }, { kind: "directive", type: i2.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "pipe", type: i1$3.TranslatePipe, name: "translate" }] }); }
2068
2068
  }
2069
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: SettingsDropdownSelectorComponent, decorators: [{
2069
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: SettingsDropdownSelectorComponent, decorators: [{
2070
2070
  type: Component,
2071
2071
  args: [{ selector: 'rlb-settings-dropdown-selector', standalone: false, template: "@if (mode() === 'desktop') {\n <rlb-navbar-dropdown-item #menu dropdown auto-close=\"outside\" (status-changed)=\"change($event)\">\n <span tooltip-placement=\"bottom\" [tooltip]=\"('core.settings.title') | translate\">\n <i class=\"bi bi-gear fs-5\"></i>\n </span>\n <rlb-dropdown-container placement=\"right\">\n <div style=\"width: 320px;\">\n <ng-container *ngTemplateOutlet=\"settingsCarousel\"></ng-container>\n </div>\n </rlb-dropdown-container>\n </rlb-navbar-dropdown-item>\n} @else {\n <!-- Inline mode for Offcanvas -->\n <ng-container *ngTemplateOutlet=\"settingsCarousel\"></ng-container>\n}\n\n<ng-template #settingsCarousel>\n <rlb-carousel [hide-indicators]=\"true\" [hide-controls]=\"true\" autoplay=\"none\"[no-touch]=\"true\" [(current-slide)]=\"activeSlide\" class=\"w-100 d-block\">\n <rlb-carousel-slide [active]=\"true\">\n <div class=\"p-3\">\n <h6 class=\"dropdown-header px-0 text-center mb-2 fw-bold text-dark\">\n {{ 'core.settings.title' | translate }}\n </h6>\n\n <div class=\"row row-cols-3 g-2\">\n\n <!-- General Settings -->\n <div class=\"col\">\n <button\n rlb-button\n outline\n color=\"primary\"\n (click)=\"goToInlineSettings()\"\n class=\"w-100 h-100 d-flex flex-column align-items-center justify-content-center p-2 text-decoration-none\">\n <i class=\"bi bi-person fs-4 mb-1\"></i>\n <span class=\"small text-truncate w-100\">{{ 'core.account.settings.title' | translate }}</span>\n </button>\n </div>\n\n <!-- Dynamic App Settings -->\n @for (app of apps(); track app.id) {\n @if (app.settings) {\n <div class=\"col\">\n <button\n rlb-button\n outline\n color=\"primary\"\n [disabled]=\"!app.enabled && (app.settings.auth && !(isAuth()))\"\n (click)=\"selectApp(app)\"\n class=\"w-100 h-100 d-flex flex-column align-items-center justify-content-center p-2 text-decoration-none\">\n <i [ngClass]=\"['bi', 'fs-4', 'mb-1', app.settings.icon || 'bi-gear']\"></i>\n <span class=\"small text-truncate w-100\" [title]=\"(app.settings.title | translate) || app.data?.appName\">\n {{ (app.settings.title | translate) || app.data?.appName }}\n </span>\n </button>\n </div>\n }\n }\n\n <!-- System / Status -->\n @if (pages?.['status']?.path) {\n <div class=\"col\">\n <button rlb-button outline color=\"primary\" routerLink=\"/status\" class=\"w-100 h-100 d-flex flex-column align-items-center justify-content-center p-2 text-decoration-none\">\n <i class=\"bi bi-check2-circle fs-4 mb-1\"></i>\n <span class=\"small text-truncate w-100\">{{ 'core.settings.status' | translate }}</span>\n </button>\n </div>\n }\n\n <!-- Logger -->\n @if (pages?.['logger']?.path) {\n <div class=\"col\">\n <button\n rlb-button\n outline\n color=\"primary\"\n routerLink=\"/logger\"\n class=\"w-100 h-100 d-flex flex-column align-items-center justify-content-center p-2 text-decoration-none\">\n <i class=\"bi bi-file-text fs-4 mb-1\"></i>\n <span class=\"small text-truncate w-100\">\n {{ 'core.settings.logger' | translate }}\n </span>\n </button>\n </div>\n }\n\n <!-- Privacy -->\n @if (pages?.['privacy']?.path) {\n <div class=\"col\">\n <button\n rlb-button\n outline\n color=\"primary\"\n routerLink=\"/privacy\"\n class=\"w-100 h-100 d-flex flex-column align-items-center justify-content-center p-2 text-decoration-none\">\n <i class=\"bi bi-shield-check fs-4 mb-1\"></i>\n <span class=\"small text-truncate w-100\">\n {{ 'core.settings.privacy' | translate }}\n </span>\n </button>\n </div>\n }\n\n <!-- Cookies -->\n @if (pages?.['cookies']?.path) {\n <div class=\"col\">\n <button\n rlb-button\n outline\n color=\"primary\"\n routerLink=\"/cookies\"\n class=\"w-100 h-100 d-flex flex-column align-items-center justify-content-center p-2 text-decoration-none\">\n <i class=\"bi bi-cookie fs-4 mb-1\"></i>\n <span class=\"small text-truncate w-100\">\n {{ 'core.settings.cookies' | translate }}\n </span>\n </button>\n </div>\n }\n\n <!-- Terms -->\n @if (pages?.['terms']?.path) {\n <div class=\"col\">\n <button\n rlb-button\n outline\n color=\"primary\"\n routerLink=\"/terms\"\n class=\"w-100 h-100 d-flex flex-column align-items-center justify-content-center p-2 text-decoration-none\">\n <i class=\"bi bi-vector-pen fs-4 mb-1\"></i>\n <span class=\"small text-truncate w-100\">\n {{ 'core.settings.legal' | translate }}\n </span>\n </button>\n </div>\n }\n\n <!-- Support -->\n @if (pages?.['support']?.path) {\n <div class=\"col\">\n <button\n rlb-button\n outline\n color=\"primary\"\n routerLink=\"/support\"\n class=\"w-100 h-100 d-flex flex-column align-items-center justify-content-center p-2 text-decoration-none\">\n <i class=\"bi bi-chat-quote fs-4 mb-1\"></i>\n <span class=\"small text-truncate w-100\">\n {{ 'core.settings.support' | translate }}\n </span>\n </button>\n </div>\n }\n\n </div>\n </div>\n </rlb-carousel-slide>\n\n <rlb-carousel-slide>\n <div class=\"p-3\">\n\n <!-- Header -->\n <div class=\"d-flex align-items-center mb-3\">\n <button class=\"btn btn-sm btn-link text-reset p-0 me-2 border-0 text-decoration-none\" (click)=\"goToFirstSlide()\">\n <i class=\"bi bi-arrow-left fs-5\"></i>\n </button>\n <h6 class=\"mb-0 fw-bold\">{{ 'core.account.settings.title' | translate }}</h6>\n </div>\n\n <rlb-list class=\"settings\">\n\n <!-- Theme Settings -->\n <rlb-list-item class=\"settings-item\">\n <div class=\"d-flex justify-content-between align-items-center\">\n <div class=\"settings-text\">\n <span class=\"fw-semibold\">{{ 'core.settings.generalTheme' | translate}}</span>\n </div>\n <div class=\"settings-control\">\n <rlb-switch size=\"small\" [(ngModel)]=\"darkMode\" />\n </div>\n </div>\n </rlb-list-item>\n\n <!-- Language Settings -->\n <rlb-list-item class=\"settings-item\">\n <div class=\"d-flex justify-content-between align-items-center\">\n <div class=\"settings-text\">\n <span class=\"fw-semibold\">{{ 'core.settings.generalLanguage' | translate}}</span>\n </div>\n <div class=\"settings-control\">\n <rlb-select size=\"small\" [(ngModel)]=\"currentLanguage\">\n @for (l of languages; track l.value) {\n <rlb-option [value]=\"l.value\">{{l.label}}</rlb-option>\n }\n </rlb-select>\n </div>\n </div>\n </rlb-list-item>\n\n <!-- Show More -->\n <rlb-list-item action class=\"settings-item\" routerLink=\"/profile\" style=\"cursor: pointer;\">\n <div class=\"d-flex justify-content-between align-items-center\">\n <div class=\"settings-text\">\n <span class=\"fw-semibold\">{{ 'core.account.settings.showMore' | translate }}</span>\n </div>\n <div class=\"settings-control text-primary\">\n <i class=\"bi bi-arrow-up-right-square fs-5\"></i>\n </div>\n </div>\n </rlb-list-item>\n\n <!-- Logout -->\n <rlb-list-item action (click)=\"logout()\" class=\"settings-item\" style=\"cursor: pointer;\">\n <div class=\"d-flex justify-content-between align-items-center text-danger\">\n <div class=\"settings-text\">\n <span class=\"fw-semibold\">{{ 'core.account.logout' | translate }}</span>\n </div>\n <div class=\"settings-control\">\n <i class=\"bi bi-box-arrow-left fs-5\"></i>\n </div>\n </div>\n </rlb-list-item>\n\n </rlb-list>\n </div>\n </rlb-carousel-slide>\n </rlb-carousel>\n</ng-template>\n" }]
2072
2072
  }], ctorParameters: () => [], propDecorators: { mode: [{ type: i0.Input, args: [{ isSignal: true, alias: "mode", required: false }] }], apps: [{ type: i0.Input, args: [{ isSignal: true, alias: "apps", required: true }] }], navbarHasSettings: [{ type: i0.Input, args: [{ isSignal: true, alias: "navbarHasSettings", required: true }] }], navbarHasLogin: [{ type: i0.Input, args: [{ isSignal: true, alias: "navbarHasLogin", required: true }] }], isAuth: [{ type: i0.Input, args: [{ isSignal: true, alias: "isAuth", required: true }] }], appSelected: [{ type: i0.Output, args: ["appSelected"] }], menu: [{ type: i0.ViewChild, args: ['menu', { isSignal: true }] }] } });
@@ -2081,10 +2081,10 @@ class AppDropdownSelectorComponent {
2081
2081
  selectApp(app) {
2082
2082
  this.appSelected.emit(app);
2083
2083
  }
2084
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: AppDropdownSelectorComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
2085
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.4", type: AppDropdownSelectorComponent, isStandalone: false, selector: "rlb-app-dropdown-selector", inputs: { mode: { classPropertyName: "mode", publicName: "mode", isSignal: true, isRequired: false, transformFunction: null }, apps: { classPropertyName: "apps", publicName: "apps", isSignal: true, isRequired: true, transformFunction: null }, isAuth: { classPropertyName: "isAuth", publicName: "isAuth", isSignal: true, isRequired: true, transformFunction: null } }, outputs: { appSelected: "appSelected" }, ngImport: i0, template: "@if (mode() === 'desktop') {\n <rlb-navbar-dropdown-item dropdown>\n <span tooltip-placement=\"bottom\" [tooltip]=\"('core.apps.button') | translate\">\n <i class=\"bi bi-grid-3x3-gap-fill fs-5\"></i>\n </span>\n <rlb-dropdown-container placement=\"right\">\n\n <div style=\"width: 320px;\">\n <ng-container *ngTemplateOutlet=\"appGrid\"></ng-container>\n </div>\n\n </rlb-dropdown-container>\n </rlb-navbar-dropdown-item>\n} @else {\n <ng-container *ngTemplateOutlet=\"appGrid\"></ng-container>\n}\n\n<ng-template #appGrid>\n <div class=\"row row-cols-3 g-2 p-3\">\n @for (app of apps(); track app.id) {\n @if (app.core) {\n <div class=\"col\">\n <button rlb-button outline class=\"w-100 h-100 d-flex flex-column align-items-center justify-content-center p-2 text-center\"\n [disabled]=\"!app.enabled && (app.core.auth && !(isAuth()))\" (click)=\"selectApp(app)\">\n <i [ngClass]=\"['fs-3', 'mb-1', app.core.icon || 'bi bi-app']\"></i>\n <span class=\"small text-truncate w-100\" [title]=\"app.data.friendlyName ? app.data.friendlyName : app.core.title | translate\">\n {{ app.data.friendlyName ? app.data.friendlyName : app.core.title | translate }}\n </span>\n </button>\n </div>\n }\n }\n </div>\n</ng-template>\n", styles: [""], dependencies: [{ kind: "directive", type: i1$6.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1$6.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i2$1.ButtonComponent, selector: "button[rlb-button], a[rlb-button]", inputs: ["color", "size", "disabled", "outline", "isLink"] }, { kind: "directive", type: i2$1.TooltipDirective, selector: "[tooltip]", inputs: ["tooltip", "tooltip-placement", "tooltip-class", "tooltip-html"] }, { kind: "component", type: i2$1.DropdownContainerComponent, selector: "ul[rlb-dropdown-menu], rlb-dropdown-container", inputs: ["placement", "placement-sm", "placement-md", "placement-lg", "placement-xl", "placement-xxl"] }, { kind: "component", type: i2$1.NavbarDropdownItemComponent, selector: "rlb-navbar-dropdown-item", inputs: ["disabled", "dropdown", "href", "class", "toggle", "auto-close"], outputs: ["click", "status-changed"] }, { kind: "pipe", type: i1$3.TranslatePipe, name: "translate" }] }); }
2084
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: AppDropdownSelectorComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
2085
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.5", type: AppDropdownSelectorComponent, isStandalone: false, selector: "rlb-app-dropdown-selector", inputs: { mode: { classPropertyName: "mode", publicName: "mode", isSignal: true, isRequired: false, transformFunction: null }, apps: { classPropertyName: "apps", publicName: "apps", isSignal: true, isRequired: true, transformFunction: null }, isAuth: { classPropertyName: "isAuth", publicName: "isAuth", isSignal: true, isRequired: true, transformFunction: null } }, outputs: { appSelected: "appSelected" }, ngImport: i0, template: "@if (mode() === 'desktop') {\n <rlb-navbar-dropdown-item dropdown>\n <span tooltip-placement=\"bottom\" [tooltip]=\"('core.apps.button') | translate\">\n <i class=\"bi bi-grid-3x3-gap-fill fs-5\"></i>\n </span>\n <rlb-dropdown-container placement=\"right\">\n\n <div style=\"width: 320px;\">\n <ng-container *ngTemplateOutlet=\"appGrid\"></ng-container>\n </div>\n\n </rlb-dropdown-container>\n </rlb-navbar-dropdown-item>\n} @else {\n <ng-container *ngTemplateOutlet=\"appGrid\"></ng-container>\n}\n\n<ng-template #appGrid>\n <div class=\"row row-cols-3 g-2 p-3\">\n @for (app of apps(); track app.id) {\n @if (app.core) {\n <div class=\"col\">\n <button rlb-button outline class=\"w-100 h-100 d-flex flex-column align-items-center justify-content-center p-2 text-center\"\n [disabled]=\"!app.enabled && (app.core.auth && !(isAuth()))\" (click)=\"selectApp(app)\">\n <i [ngClass]=\"['fs-3', 'mb-1', app.core.icon || 'bi bi-app']\"></i>\n <span class=\"small text-truncate w-100\" [title]=\"app.data.friendlyName ? app.data.friendlyName : app.core.title | translate\">\n {{ app.data.friendlyName ? app.data.friendlyName : app.core.title | translate }}\n </span>\n </button>\n </div>\n }\n }\n </div>\n</ng-template>\n", styles: [""], dependencies: [{ kind: "directive", type: i1$6.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1$6.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i2$1.ButtonComponent, selector: "button[rlb-button], a[rlb-button]", inputs: ["color", "size", "disabled", "outline", "isLink"] }, { kind: "directive", type: i2$1.TooltipDirective, selector: "[tooltip]", inputs: ["tooltip", "tooltip-placement", "tooltip-class", "tooltip-html"] }, { kind: "component", type: i2$1.DropdownContainerComponent, selector: "ul[rlb-dropdown-menu], rlb-dropdown-container", inputs: ["placement", "placement-sm", "placement-md", "placement-lg", "placement-xl", "placement-xxl"] }, { kind: "component", type: i2$1.NavbarDropdownItemComponent, selector: "rlb-navbar-dropdown-item", inputs: ["disabled", "dropdown", "href", "class", "toggle", "auto-close"], outputs: ["click", "status-changed"] }, { kind: "pipe", type: i1$3.TranslatePipe, name: "translate" }] }); }
2086
2086
  }
2087
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: AppDropdownSelectorComponent, decorators: [{
2087
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: AppDropdownSelectorComponent, decorators: [{
2088
2088
  type: Component,
2089
2089
  args: [{ selector: 'rlb-app-dropdown-selector', standalone: false, template: "@if (mode() === 'desktop') {\n <rlb-navbar-dropdown-item dropdown>\n <span tooltip-placement=\"bottom\" [tooltip]=\"('core.apps.button') | translate\">\n <i class=\"bi bi-grid-3x3-gap-fill fs-5\"></i>\n </span>\n <rlb-dropdown-container placement=\"right\">\n\n <div style=\"width: 320px;\">\n <ng-container *ngTemplateOutlet=\"appGrid\"></ng-container>\n </div>\n\n </rlb-dropdown-container>\n </rlb-navbar-dropdown-item>\n} @else {\n <ng-container *ngTemplateOutlet=\"appGrid\"></ng-container>\n}\n\n<ng-template #appGrid>\n <div class=\"row row-cols-3 g-2 p-3\">\n @for (app of apps(); track app.id) {\n @if (app.core) {\n <div class=\"col\">\n <button rlb-button outline class=\"w-100 h-100 d-flex flex-column align-items-center justify-content-center p-2 text-center\"\n [disabled]=\"!app.enabled && (app.core.auth && !(isAuth()))\" (click)=\"selectApp(app)\">\n <i [ngClass]=\"['fs-3', 'mb-1', app.core.icon || 'bi bi-app']\"></i>\n <span class=\"small text-truncate w-100\" [title]=\"app.data.friendlyName ? app.data.friendlyName : app.core.title | translate\">\n {{ app.data.friendlyName ? app.data.friendlyName : app.core.title | translate }}\n </span>\n </button>\n </div>\n }\n }\n </div>\n</ng-template>\n" }]
2090
2090
  }], propDecorators: { mode: [{ type: i0.Input, args: [{ isSignal: true, alias: "mode", required: false }] }], apps: [{ type: i0.Input, args: [{ isSignal: true, alias: "apps", required: true }] }], isAuth: [{ type: i0.Input, args: [{ isSignal: true, alias: "isAuth", required: true }] }], appSelected: [{ type: i0.Output, args: ["appSelected"] }] } });
@@ -2106,10 +2106,10 @@ class RlbRole {
2106
2106
  }
2107
2107
  });
2108
2108
  }
2109
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: RlbRole, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
2110
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "21.2.4", type: RlbRole, isStandalone: false, selector: "[roles]", inputs: { action: { classPropertyName: "action", publicName: "roles", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0 }); }
2109
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: RlbRole, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
2110
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "21.2.5", type: RlbRole, isStandalone: false, selector: "[roles]", inputs: { action: { classPropertyName: "action", publicName: "roles", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0 }); }
2111
2111
  }
2112
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: RlbRole, decorators: [{
2112
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: RlbRole, decorators: [{
2113
2113
  type: Directive,
2114
2114
  args: [{
2115
2115
  selector: '[roles]',
@@ -2128,10 +2128,10 @@ class LeftComponentPipe {
2128
2128
  }
2129
2129
  return t;
2130
2130
  }
2131
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: LeftComponentPipe, deps: [{ token: RLB_APP_NAVCOMP }], target: i0.ɵɵFactoryTarget.Pipe }); }
2132
- static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "21.2.4", ngImport: i0, type: LeftComponentPipe, isStandalone: false, name: "leftComponent" }); }
2131
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: LeftComponentPipe, deps: [{ token: RLB_APP_NAVCOMP }], target: i0.ɵɵFactoryTarget.Pipe }); }
2132
+ static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "21.2.5", ngImport: i0, type: LeftComponentPipe, isStandalone: false, name: "leftComponent" }); }
2133
2133
  }
2134
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: LeftComponentPipe, decorators: [{
2134
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: LeftComponentPipe, decorators: [{
2135
2135
  type: Pipe,
2136
2136
  args: [{
2137
2137
  name: 'leftComponent',
@@ -2153,10 +2153,10 @@ class RightComponentPipe {
2153
2153
  }
2154
2154
  return t;
2155
2155
  }
2156
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: RightComponentPipe, deps: [{ token: RLB_APP_NAVCOMP }], target: i0.ɵɵFactoryTarget.Pipe }); }
2157
- static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "21.2.4", ngImport: i0, type: RightComponentPipe, isStandalone: false, name: "rightComponent" }); }
2156
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: RightComponentPipe, deps: [{ token: RLB_APP_NAVCOMP }], target: i0.ɵɵFactoryTarget.Pipe }); }
2157
+ static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "21.2.5", ngImport: i0, type: RightComponentPipe, isStandalone: false, name: "rightComponent" }); }
2158
2158
  }
2159
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: RightComponentPipe, decorators: [{
2159
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: RightComponentPipe, decorators: [{
2160
2160
  type: Pipe,
2161
2161
  args: [{
2162
2162
  name: 'rightComponent',
@@ -2277,10 +2277,10 @@ class AppTemplateComponent {
2277
2277
  closeMobileMenu() {
2278
2278
  this.mobileOffcanvas()?.close();
2279
2279
  }
2280
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: AppTemplateComponent, deps: [{ token: RLB_CFG_ENV }, { token: i1$1.Store }, { token: AppsService }, { token: AuthenticationService }, { token: i2.Router }], target: i0.ɵɵFactoryTarget.Component }); }
2281
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.4", type: AppTemplateComponent, isStandalone: false, selector: "rlb-app-template", inputs: { modalContainerId: ["modal-container-id", "modalContainerId"], toastContainerIds: ["toast-container-ids", "toastContainerIds"] }, viewQueries: [{ propertyName: "mobileOffcanvas", first: true, predicate: ["mobileOffcanvas"], descendants: true, isSignal: true }, { propertyName: "mobileSettingsMenu", first: true, predicate: ["mobileSettingsMenu"], descendants: true, isSignal: true }], ngImport: i0, template: "<div class=\"rlb-app\">\n @if (navVisible$ | async) {\n <rlb-navbar [dark]=\"theme === 'dark'\" [showSideBarToggler]=\"(sidebarVisible$ | async)\" expand=\"lg\" class=\"border-bottom py-1 rlb-navbar\">\n @if (navHeader$ | async; as header) {\n <a rlb-navbar-brand href=\"#\">\n\n @if (header.type === 'text') {\n {{ header.text }}\n }\n\n @if (header.type === 'image') {\n <img\n [src]=\"header.src\"\n [alt]=\"header.alt ?? 'Brand'\"\n [height]=\"header.height ?? 40\"\n />\n }\n </a>\n }\n @if (navSearchVisible$ | async) {\n <rlb-navbar-form>\n <rlb-input-group class=\"my-1 mx-3\" validate>\n <rlb-input type=\"search\" class=\"search-input\" placeholder=\"Search\" [(ngModel)]=\"navSearchText\"\n (keyup.enter)=\"setNavbarSearchText(navSearchText)\" name=\"search\" size=\"small\">\n <button after rlb-button outline type=\"submit\" (click)=\"setNavbarSearchText(navSearchText)\" size=\"sm\">\n <i class=\"bi bi-search\"></i>\n </button>\n </rlb-input>\n </rlb-input-group>\n </rlb-navbar-form>\n }\n\n <!-- MOBILE VIEWS -->\n <div rlb-custom-navbar-items class=\"d-flex d-lg-none\">\n <rlb-fab size=\"sm\" outline toggle=\"offcanvas\" toggle-target=\"mobileMenuOffcanvas\">\n <i class=\"bi bi-three-dots-vertical\"></i>\n </rlb-fab>\n\n <rlb-offcanvas\n #mobileOffcanvas\n id=\"mobileMenuOffcanvas\"\n [placement]=\"'end'\"\n (statusChange)=\"onMobileMenuStatusChange($event)\"\n >\n <rlb-offcanvas-header class=\"border-bottom\">\n <h5 rlb-offcanvas-title class=\"fw-bold mb-0\">Menu</h5>\n </rlb-offcanvas-header>\n\n <rlb-offcanvas-body class=\"p-0 overflow-x-hidden\">\n\n <!-- Mobile Apps Grid -->\n @if ((navbarHasApps$ | async) && apps.length > 1) {\n <div class=\"border-bottom pb-2\">\n <rlb-app-dropdown-selector\n mode=\"mobile\"\n [apps]=\"apps\"\n [isAuth]=\"isAuth$ | async\"\n (appSelected)=\"selectApp($event, 'app')\"\n />\n </div>\n }\n\n <!-- Mobile Settings Carousel -->\n @if (((navbarHasLogin$ | async) && (isAuth$ | async)) || (navbarHasSettings$ | async)) {\n <div class=\"pt-2\">\n <rlb-settings-dropdown-selector\n mode=\"mobile\"\n #mobileSettingsMenu\n [apps]=\"apps\"\n [isAuth]=\"isAuth$ | async\"\n [navbarHasLogin]=\"navbarHasLogin$ | async\"\n [navbarHasSettings]=\"navbarHasSettings$ | async\"\n (appSelected)=\"selectApp($event, 'settings')\"\n />\n </div>\n }\n\n </rlb-offcanvas-body>\n </rlb-offcanvas>\n </div>\n\n <rlb-navbar-items>\n @for (navComponent of navLeftItems$ | async; track navComponent) {\n <ng-container ngProjectAs=\"rlb-navbar-item\">\n <ng-container *ngComponentOutlet=\"navComponent | leftComponent\"></ng-container>\n </ng-container>\n }\n </rlb-navbar-items>\n\n <rlb-navbar-items class=\"ms-auto align-items-center\">\n @for (navComponent of navRightItems$ | async; track navComponent) {\n <ng-container ngProjectAs=\"rlb-navbar-item\">\n <ng-container *ngComponentOutlet=\"navComponent | rightComponent\"></ng-container>\n </ng-container>\n }\n @if ((separatorVisible$ | async)) {\n <rlb-navbar-separator />\n }\n\n <ng-container ngProjectAs=\"rlb-navbar-item\">\n @if ((navbarLayout$ | async) == 'default') {\n @if ((navbarHasLogin$ | async) && !(isAuth$ | async)) {\n <rlb-navbar-item (click)=\"loginNav($event)\">\n <span tooltip-placement=\"bottom\" [tooltip]=\"('core.account.login') |translate\">\n <i class=\" bi bi-box-arrow-in-left\"></i>\n </span>\n <span class=\"ms-1 d-lg-none\">{{'core.account.login' | translate}}</span>\n </rlb-navbar-item>\n }\n\n @if ( (navbarHasLogin$ | async) && (isAuth$ | async)) {\n <rlb-navbar-item [router-link]=\"'/profile'\">\n <span tooltip-placement=\"bottom\" [tooltip]=\"('core.account.title') |translate\">\n <i class=\"bi bi-person\"></i>\n </span>\n <span class=\"ms-1 d-lg-none\">{{'core.account.title' | translate}}</span>\n </rlb-navbar-item>\n }\n\n @if (navbarHasSettings$ | async) {\n <rlb-navbar-item [router-link]=\"'/settings'\">\n <span tooltip-placement=\"bottom\" [tooltip]=\"('core.settings.title') |translate\">\n <i class=\"bi bi-gear\"></i>\n </span>\n <span class=\"ms-1 d-lg-none\">{{'core.settings.title' | translate}}</span>\n </rlb-navbar-item>\n }\n\n @if ((navbarHasApps$ | async) && apps.length > 1) {\n <rlb-navbar-item [router-link]=\"'/apps'\">\n <span tooltip-placement=\"bottom\" [tooltip]=\"('core.apps.button') |translate\">\n <i class=\"bi bi-grid-3x3-gap-fill\"></i>\n </span>\n <span class=\"ms-1 d-lg-none\">{{'core.apps.button' | translate}}</span>\n </rlb-navbar-item>\n }\n\n } @else if ((navbarLayout$ | async) == 'dropdown') {\n <!-- MODERN DROPDOWN MODE -->\n\n <!--Unauthenticated Login -->\n @if ((navbarHasLogin$ | async) && !(isAuth$ | async)) {\n <rlb-navbar-item (click)=\"loginNav($event)\">\n <span tooltip-placement=\"bottom\" [tooltip]=\"('core.account.login') | translate\">\n <i class=\"bi bi-box-arrow-in-left fs-5\"></i>\n </span>\n <span class=\"ms-1 d-lg-none\">{{ 'core.account.login' | translate }}</span>\n </rlb-navbar-item>\n }\n\n <!-- Profile & Settings Account Card -->\n @if (((navbarHasLogin$ | async) && (isAuth$ | async)) || (navbarHasSettings$ | async)) {\n <rlb-settings-dropdown-selector\n [apps]=\"apps\"\n [isAuth]=\"isAuth$ | async\"\n [navbarHasLogin]=\"navbarHasLogin$ | async\"\n [navbarHasSettings]=\"navbarHasSettings$ | async\"\n (appSelected)=\"selectApp($event, 'settings')\"\n />\n }\n\n <!-- Apps Launcher -->\n @if ((navbarHasApps$ | async) && apps.length > 1) {\n <rlb-app-dropdown-selector\n [apps]=\"apps\"\n [isAuth]=\"isAuth$ | async\"\n (appSelected)=\"selectApp($event, 'app')\"\n />\n }\n }\n </ng-container>\n </rlb-navbar-items>\n </rlb-navbar>\n }\n <div class=\"rlb-main-wrapper\">\n @if ((sidebarVisible$ | async)) {\n <rlb-sidebar [dark]=\"theme === 'dark'\" id=\"sidebar\" class=\"rlb-sidebar\">\n @for (item of (sidebarItems$ | async); track $index) {\n <rlb-sidebar-item\n *roles=\"item.action\"\n [icon]=\"item.icon\" [link]=\"item.url\"\n [title]=\"item.title\" [label]=\"item.label\"\n [badgeCounter]=\"item.badgeCounter\"\n (click)=\"onSideBarItemClick(item)\"\n >\n {{item.label}}\n @for (subitem of item.items || []; track $index) {\n <rlb-sidebar-item\n [icon]=\"subitem.icon\"\n [link]=\"subitem.url\"\n [title]=\"subitem.title\"\n [label]=\"subitem.label\"\n [badgeCounter]=\"subitem.badgeCounter\"\n (click)=\"onSideBarItemClick(subitem)\"\n >\n {{subitem.label}}\n </rlb-sidebar-item>\n }\n </rlb-sidebar-item>\n }\n </rlb-sidebar>\n }\n <div class=\"rlb-content\">\n <ng-content></ng-content>\n </div>\n </div>\n</div>\n\n@if (modalContainerId) {\n <rlb-modal-container [id]=\"modalContainerId\" />\n}\n\n@if (toastContainerIds) {\n @if (toastContainerIds.constructor.name === 'Array') {\n @for (toastContainerId of toastContainerIds | asMulti; track toastContainerId) {\n <rlb-toast-container [id]=\"toastContainerId\" />\n }\n } @else {\n <rlb-toast-container class=\"position-fixed bottom-0 end-0 p-3\" [id]=\"toastContainerIds | asSingle\" />\n }\n}\n", styles: [".separator{border-left:1px solid;padding:0 2px}\n"], dependencies: [{ kind: "directive", type: i1$6.NgComponentOutlet, selector: "[ngComponentOutlet]", inputs: ["ngComponentOutlet", "ngComponentOutletInputs", "ngComponentOutletInjector", "ngComponentOutletEnvironmentInjector", "ngComponentOutletContent", "ngComponentOutletNgModule"], exportAs: ["ngComponentOutlet"] }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i2$1.InputComponent, selector: "rlb-input", inputs: ["disabled", "readonly", "before-text", "placeholder", "type", "size", "name", "max", "min", "step", "date-type", "timezone", "id", "extValidation", "enable-validation"] }, { kind: "component", type: i2$1.InputGroupComponent, selector: "rlb-input-group", inputs: ["text", "validate", "size"] }, { kind: "component", type: i2$1.ButtonComponent, selector: "button[rlb-button], a[rlb-button]", inputs: ["color", "size", "disabled", "outline", "isLink"] }, { kind: "component", type: i2$1.RlbFabComponent, selector: "rlb-fab", inputs: ["color", "size", "disabled", "outline", "position"] }, { kind: "directive", type: i2$1.TooltipDirective, selector: "[tooltip]", inputs: ["tooltip", "tooltip-placement", "tooltip-class", "tooltip-html"] }, { kind: "directive", type: i2$1.NavbarBrandDirective, selector: "[rlb-navbar-brand]" }, { kind: "directive", type: i2$1.NavbarCustomItemsDirective, selector: "[rlb-custom-navbar-items]" }, { kind: "component", type: i2$1.NavbarComponent, selector: "rlb-navbar", inputs: ["dark", "showSideBarToggler", "color", "placement", "expand", "class", "enable-dropdown-toggler"] }, { kind: "component", type: i2$1.NavbarFormComponent, selector: "rlb-navbar-form", inputs: ["role", "class"] }, { kind: "component", type: i2$1.NavbarItemsComponent, selector: "rlb-navbar-items", inputs: ["scroll", "class"], outputs: ["click"] }, { kind: "component", type: i2$1.NavbarItemComponent, selector: "rlb-navbar-item", inputs: ["disabled", "router-link", "class"], outputs: ["click"] }, { kind: "component", type: i2$1.NavbarSeparatorComponent, selector: "rlb-navbar-separator", inputs: ["class"] }, { kind: "component", type: i2$1.OffcanvasComponent, selector: "rlb-offcanvas", inputs: ["id", "body-scroll", "scroll-backup", "close-manual", "placement", "responsive"], outputs: ["statusChange"] }, { kind: "component", type: i2$1.OffcanvasHeaderComponent, selector: "rlb-offcanvas-header", inputs: ["offcanvasId"] }, { kind: "component", type: i2$1.OffcanvasBodyComponent, selector: "rlb-offcanvas-body" }, { kind: "directive", type: i2$1.ToggleDirective, selector: " button[toggle], a[toggle], rlb-navbar-item[toggle], rlb-button-toolbar[toggle], rlb-fab[toggle],", inputs: ["toggle", "toggle-target", "collapsed", "auto-close"] }, { kind: "component", type: i2$1.SidebarComponent, selector: "rlb-sidebar", inputs: ["dark", "rounded"] }, { kind: "component", type: i2$1.SidebarItemComponent, selector: "rlb-sidebar-item", inputs: ["title", "icon", "label", "link", "badgeCounter"], outputs: ["click"] }, { kind: "component", type: i2$1.ModalContainerComponent, selector: "rlb-modal-container", inputs: ["id"] }, { kind: "component", type: i2$1.ToastContainerComponent, selector: "rlb-toast-container", inputs: ["id"] }, { kind: "component", type: SettingsDropdownSelectorComponent, selector: "rlb-settings-dropdown-selector", inputs: ["mode", "apps", "navbarHasSettings", "navbarHasLogin", "isAuth"], outputs: ["appSelected"] }, { kind: "component", type: AppDropdownSelectorComponent, selector: "rlb-app-dropdown-selector", inputs: ["mode", "apps", "isAuth"], outputs: ["appSelected"] }, { kind: "directive", type: RlbRole, selector: "[roles]", inputs: ["roles"] }, { kind: "pipe", type: i1$6.AsyncPipe, name: "async" }, { kind: "pipe", type: i1$3.TranslatePipe, name: "translate" }, { kind: "pipe", type: AsMultiPipe, name: "asMulti" }, { kind: "pipe", type: AsSinglePipe, name: "asSingle" }, { kind: "pipe", type: LeftComponentPipe, name: "leftComponent" }, { kind: "pipe", type: RightComponentPipe, name: "rightComponent" }] }); }
2280
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: AppTemplateComponent, deps: [{ token: RLB_CFG_ENV }, { token: i1$1.Store }, { token: AppsService }, { token: AuthenticationService }, { token: i2.Router }], target: i0.ɵɵFactoryTarget.Component }); }
2281
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.5", type: AppTemplateComponent, isStandalone: false, selector: "rlb-app-template", inputs: { modalContainerId: ["modal-container-id", "modalContainerId"], toastContainerIds: ["toast-container-ids", "toastContainerIds"] }, viewQueries: [{ propertyName: "mobileOffcanvas", first: true, predicate: ["mobileOffcanvas"], descendants: true, isSignal: true }, { propertyName: "mobileSettingsMenu", first: true, predicate: ["mobileSettingsMenu"], descendants: true, isSignal: true }], ngImport: i0, template: "<div class=\"rlb-app\">\n @if (navVisible$ | async) {\n <rlb-navbar [dark]=\"theme === 'dark'\" [showSideBarToggler]=\"(sidebarVisible$ | async)\" expand=\"lg\" class=\"border-bottom py-1 rlb-navbar\">\n @if (navHeader$ | async; as header) {\n <a rlb-navbar-brand href=\"#\">\n\n @if (header.type === 'text') {\n {{ header.text }}\n }\n\n @if (header.type === 'image') {\n <img\n [src]=\"header.src\"\n [alt]=\"header.alt ?? 'Brand'\"\n [height]=\"header.height ?? 40\"\n />\n }\n </a>\n }\n @if (navSearchVisible$ | async) {\n <rlb-navbar-form>\n <rlb-input-group class=\"my-1 mx-3\" validate>\n <rlb-input type=\"search\" class=\"search-input\" placeholder=\"Search\" [(ngModel)]=\"navSearchText\"\n (keyup.enter)=\"setNavbarSearchText(navSearchText)\" name=\"search\" size=\"small\">\n <button after rlb-button outline type=\"submit\" (click)=\"setNavbarSearchText(navSearchText)\" size=\"sm\">\n <i class=\"bi bi-search\"></i>\n </button>\n </rlb-input>\n </rlb-input-group>\n </rlb-navbar-form>\n }\n\n <!-- MOBILE VIEWS -->\n <div rlb-custom-navbar-items class=\"d-flex d-lg-none\">\n <rlb-fab size=\"sm\" outline toggle=\"offcanvas\" toggle-target=\"mobileMenuOffcanvas\">\n <i class=\"bi bi-three-dots-vertical\"></i>\n </rlb-fab>\n\n <rlb-offcanvas\n #mobileOffcanvas\n id=\"mobileMenuOffcanvas\"\n [placement]=\"'end'\"\n (statusChange)=\"onMobileMenuStatusChange($event)\"\n >\n <rlb-offcanvas-header class=\"border-bottom\">\n <h5 rlb-offcanvas-title class=\"fw-bold mb-0\">Menu</h5>\n </rlb-offcanvas-header>\n\n <rlb-offcanvas-body class=\"p-0 overflow-x-hidden\">\n\n <!-- Mobile Apps Grid -->\n @if ((navbarHasApps$ | async) && apps.length > 1) {\n <div class=\"border-bottom pb-2\">\n <rlb-app-dropdown-selector\n mode=\"mobile\"\n [apps]=\"apps\"\n [isAuth]=\"isAuth$ | async\"\n (appSelected)=\"selectApp($event, 'app')\"\n />\n </div>\n }\n\n <!-- Mobile Settings Carousel -->\n @if (((navbarHasLogin$ | async) && (isAuth$ | async)) || (navbarHasSettings$ | async)) {\n <div class=\"pt-2\">\n <rlb-settings-dropdown-selector\n mode=\"mobile\"\n #mobileSettingsMenu\n [apps]=\"apps\"\n [isAuth]=\"isAuth$ | async\"\n [navbarHasLogin]=\"navbarHasLogin$ | async\"\n [navbarHasSettings]=\"navbarHasSettings$ | async\"\n (appSelected)=\"selectApp($event, 'settings')\"\n />\n </div>\n }\n\n </rlb-offcanvas-body>\n </rlb-offcanvas>\n </div>\n\n <rlb-navbar-items>\n @for (navComponent of navLeftItems$ | async; track navComponent) {\n <ng-container ngProjectAs=\"rlb-navbar-item\">\n <ng-container *ngComponentOutlet=\"navComponent | leftComponent\"></ng-container>\n </ng-container>\n }\n </rlb-navbar-items>\n\n <rlb-navbar-items class=\"ms-auto align-items-center\">\n @for (navComponent of navRightItems$ | async; track navComponent) {\n <ng-container ngProjectAs=\"rlb-navbar-item\">\n <ng-container *ngComponentOutlet=\"navComponent | rightComponent\"></ng-container>\n </ng-container>\n }\n @if ((separatorVisible$ | async)) {\n <rlb-navbar-separator />\n }\n\n <ng-container ngProjectAs=\"rlb-navbar-item\">\n @if ((navbarLayout$ | async) == 'default') {\n @if ((navbarHasLogin$ | async) && !(isAuth$ | async)) {\n <rlb-navbar-item (click)=\"loginNav($event)\">\n <span tooltip-placement=\"bottom\" [tooltip]=\"('core.account.login') |translate\">\n <i class=\" bi bi-box-arrow-in-left\"></i>\n </span>\n <span class=\"ms-1 d-lg-none\">{{'core.account.login' | translate}}</span>\n </rlb-navbar-item>\n }\n\n @if ( (navbarHasLogin$ | async) && (isAuth$ | async)) {\n <rlb-navbar-item [router-link]=\"'/profile'\">\n <span tooltip-placement=\"bottom\" [tooltip]=\"('core.account.title') |translate\">\n <i class=\"bi bi-person\"></i>\n </span>\n <span class=\"ms-1 d-lg-none\">{{'core.account.title' | translate}}</span>\n </rlb-navbar-item>\n }\n\n @if (navbarHasSettings$ | async) {\n <rlb-navbar-item [router-link]=\"'/settings'\">\n <span tooltip-placement=\"bottom\" [tooltip]=\"('core.settings.title') |translate\">\n <i class=\"bi bi-gear\"></i>\n </span>\n <span class=\"ms-1 d-lg-none\">{{'core.settings.title' | translate}}</span>\n </rlb-navbar-item>\n }\n\n @if ((navbarHasApps$ | async) && apps.length > 1) {\n <rlb-navbar-item [router-link]=\"'/apps'\">\n <span tooltip-placement=\"bottom\" [tooltip]=\"('core.apps.button') |translate\">\n <i class=\"bi bi-grid-3x3-gap-fill\"></i>\n </span>\n <span class=\"ms-1 d-lg-none\">{{'core.apps.button' | translate}}</span>\n </rlb-navbar-item>\n }\n\n } @else if ((navbarLayout$ | async) == 'dropdown') {\n <!-- MODERN DROPDOWN MODE -->\n\n <!--Unauthenticated Login -->\n @if ((navbarHasLogin$ | async) && !(isAuth$ | async)) {\n <rlb-navbar-item (click)=\"loginNav($event)\">\n <span tooltip-placement=\"bottom\" [tooltip]=\"('core.account.login') | translate\">\n <i class=\"bi bi-box-arrow-in-left fs-5\"></i>\n </span>\n <span class=\"ms-1 d-lg-none\">{{ 'core.account.login' | translate }}</span>\n </rlb-navbar-item>\n }\n\n <!-- Profile & Settings Account Card -->\n @if (((navbarHasLogin$ | async) && (isAuth$ | async)) || (navbarHasSettings$ | async)) {\n <rlb-settings-dropdown-selector\n [apps]=\"apps\"\n [isAuth]=\"isAuth$ | async\"\n [navbarHasLogin]=\"navbarHasLogin$ | async\"\n [navbarHasSettings]=\"navbarHasSettings$ | async\"\n (appSelected)=\"selectApp($event, 'settings')\"\n />\n }\n\n <!-- Apps Launcher -->\n @if ((navbarHasApps$ | async) && apps.length > 1) {\n <rlb-app-dropdown-selector\n [apps]=\"apps\"\n [isAuth]=\"isAuth$ | async\"\n (appSelected)=\"selectApp($event, 'app')\"\n />\n }\n }\n </ng-container>\n </rlb-navbar-items>\n </rlb-navbar>\n }\n <div class=\"rlb-main-wrapper\">\n @if ((sidebarVisible$ | async)) {\n <rlb-sidebar [dark]=\"theme === 'dark'\" id=\"sidebar\" class=\"rlb-sidebar\">\n @for (item of (sidebarItems$ | async); track $index) {\n <rlb-sidebar-item\n *roles=\"item.action\"\n [icon]=\"item.icon\" [link]=\"item.url\"\n [title]=\"item.title\" [label]=\"item.label\"\n [badgeCounter]=\"item.badgeCounter\"\n (click)=\"onSideBarItemClick(item)\"\n >\n {{item.label}}\n @for (subitem of item.items || []; track $index) {\n <rlb-sidebar-item\n [icon]=\"subitem.icon\"\n [link]=\"subitem.url\"\n [title]=\"subitem.title\"\n [label]=\"subitem.label\"\n [badgeCounter]=\"subitem.badgeCounter\"\n (click)=\"onSideBarItemClick(subitem)\"\n >\n {{subitem.label}}\n </rlb-sidebar-item>\n }\n </rlb-sidebar-item>\n }\n </rlb-sidebar>\n }\n <div class=\"rlb-content\">\n <ng-content></ng-content>\n </div>\n </div>\n</div>\n\n@if (modalContainerId) {\n <rlb-modal-container [id]=\"modalContainerId\" />\n}\n\n@if (toastContainerIds) {\n @if (toastContainerIds.constructor.name === 'Array') {\n @for (toastContainerId of toastContainerIds | asMulti; track toastContainerId) {\n <rlb-toast-container [id]=\"toastContainerId\" />\n }\n } @else {\n <rlb-toast-container class=\"position-fixed bottom-0 end-0 p-3\" [id]=\"toastContainerIds | asSingle\" />\n }\n}\n", styles: [".separator{border-left:1px solid;padding:0 2px}\n"], dependencies: [{ kind: "directive", type: i1$6.NgComponentOutlet, selector: "[ngComponentOutlet]", inputs: ["ngComponentOutlet", "ngComponentOutletInputs", "ngComponentOutletInjector", "ngComponentOutletEnvironmentInjector", "ngComponentOutletContent", "ngComponentOutletNgModule"], exportAs: ["ngComponentOutlet"] }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i2$1.InputComponent, selector: "rlb-input", inputs: ["disabled", "readonly", "before-text", "placeholder", "type", "size", "name", "max", "min", "step", "date-type", "timezone", "id", "extValidation", "enable-validation"] }, { kind: "component", type: i2$1.InputGroupComponent, selector: "rlb-input-group", inputs: ["text", "validate", "size"] }, { kind: "component", type: i2$1.ButtonComponent, selector: "button[rlb-button], a[rlb-button]", inputs: ["color", "size", "disabled", "outline", "isLink"] }, { kind: "component", type: i2$1.RlbFabComponent, selector: "rlb-fab", inputs: ["color", "size", "disabled", "outline", "position"] }, { kind: "directive", type: i2$1.TooltipDirective, selector: "[tooltip]", inputs: ["tooltip", "tooltip-placement", "tooltip-class", "tooltip-html"] }, { kind: "directive", type: i2$1.NavbarBrandDirective, selector: "[rlb-navbar-brand]" }, { kind: "directive", type: i2$1.NavbarCustomItemsDirective, selector: "[rlb-custom-navbar-items]" }, { kind: "component", type: i2$1.NavbarComponent, selector: "rlb-navbar", inputs: ["dark", "showSideBarToggler", "color", "placement", "expand", "class", "enable-dropdown-toggler"] }, { kind: "component", type: i2$1.NavbarFormComponent, selector: "rlb-navbar-form", inputs: ["role", "class"] }, { kind: "component", type: i2$1.NavbarItemsComponent, selector: "rlb-navbar-items", inputs: ["scroll", "class"], outputs: ["click"] }, { kind: "component", type: i2$1.NavbarItemComponent, selector: "rlb-navbar-item", inputs: ["disabled", "router-link", "class"], outputs: ["click"] }, { kind: "component", type: i2$1.NavbarSeparatorComponent, selector: "rlb-navbar-separator", inputs: ["class"] }, { kind: "component", type: i2$1.OffcanvasComponent, selector: "rlb-offcanvas", inputs: ["id", "body-scroll", "scroll-backup", "close-manual", "placement", "responsive"], outputs: ["statusChange"] }, { kind: "component", type: i2$1.OffcanvasHeaderComponent, selector: "rlb-offcanvas-header", inputs: ["offcanvasId"] }, { kind: "component", type: i2$1.OffcanvasBodyComponent, selector: "rlb-offcanvas-body" }, { kind: "directive", type: i2$1.ToggleDirective, selector: " button[toggle], a[toggle], rlb-navbar-item[toggle], rlb-button-toolbar[toggle], rlb-fab[toggle],", inputs: ["toggle", "toggle-target", "collapsed", "auto-close"] }, { kind: "component", type: i2$1.SidebarComponent, selector: "rlb-sidebar", inputs: ["dark", "rounded"] }, { kind: "component", type: i2$1.SidebarItemComponent, selector: "rlb-sidebar-item", inputs: ["title", "icon", "label", "link", "badgeCounter"], outputs: ["click"] }, { kind: "component", type: i2$1.ModalContainerComponent, selector: "rlb-modal-container", inputs: ["id"] }, { kind: "component", type: i2$1.ToastContainerComponent, selector: "rlb-toast-container", inputs: ["id"] }, { kind: "component", type: SettingsDropdownSelectorComponent, selector: "rlb-settings-dropdown-selector", inputs: ["mode", "apps", "navbarHasSettings", "navbarHasLogin", "isAuth"], outputs: ["appSelected"] }, { kind: "component", type: AppDropdownSelectorComponent, selector: "rlb-app-dropdown-selector", inputs: ["mode", "apps", "isAuth"], outputs: ["appSelected"] }, { kind: "directive", type: RlbRole, selector: "[roles]", inputs: ["roles"] }, { kind: "pipe", type: i1$6.AsyncPipe, name: "async" }, { kind: "pipe", type: i1$3.TranslatePipe, name: "translate" }, { kind: "pipe", type: AsMultiPipe, name: "asMulti" }, { kind: "pipe", type: AsSinglePipe, name: "asSingle" }, { kind: "pipe", type: LeftComponentPipe, name: "leftComponent" }, { kind: "pipe", type: RightComponentPipe, name: "rightComponent" }] }); }
2282
2282
  }
2283
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: AppTemplateComponent, decorators: [{
2283
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: AppTemplateComponent, decorators: [{
2284
2284
  type: Component,
2285
2285
  args: [{ selector: 'rlb-app-template', standalone: false, template: "<div class=\"rlb-app\">\n @if (navVisible$ | async) {\n <rlb-navbar [dark]=\"theme === 'dark'\" [showSideBarToggler]=\"(sidebarVisible$ | async)\" expand=\"lg\" class=\"border-bottom py-1 rlb-navbar\">\n @if (navHeader$ | async; as header) {\n <a rlb-navbar-brand href=\"#\">\n\n @if (header.type === 'text') {\n {{ header.text }}\n }\n\n @if (header.type === 'image') {\n <img\n [src]=\"header.src\"\n [alt]=\"header.alt ?? 'Brand'\"\n [height]=\"header.height ?? 40\"\n />\n }\n </a>\n }\n @if (navSearchVisible$ | async) {\n <rlb-navbar-form>\n <rlb-input-group class=\"my-1 mx-3\" validate>\n <rlb-input type=\"search\" class=\"search-input\" placeholder=\"Search\" [(ngModel)]=\"navSearchText\"\n (keyup.enter)=\"setNavbarSearchText(navSearchText)\" name=\"search\" size=\"small\">\n <button after rlb-button outline type=\"submit\" (click)=\"setNavbarSearchText(navSearchText)\" size=\"sm\">\n <i class=\"bi bi-search\"></i>\n </button>\n </rlb-input>\n </rlb-input-group>\n </rlb-navbar-form>\n }\n\n <!-- MOBILE VIEWS -->\n <div rlb-custom-navbar-items class=\"d-flex d-lg-none\">\n <rlb-fab size=\"sm\" outline toggle=\"offcanvas\" toggle-target=\"mobileMenuOffcanvas\">\n <i class=\"bi bi-three-dots-vertical\"></i>\n </rlb-fab>\n\n <rlb-offcanvas\n #mobileOffcanvas\n id=\"mobileMenuOffcanvas\"\n [placement]=\"'end'\"\n (statusChange)=\"onMobileMenuStatusChange($event)\"\n >\n <rlb-offcanvas-header class=\"border-bottom\">\n <h5 rlb-offcanvas-title class=\"fw-bold mb-0\">Menu</h5>\n </rlb-offcanvas-header>\n\n <rlb-offcanvas-body class=\"p-0 overflow-x-hidden\">\n\n <!-- Mobile Apps Grid -->\n @if ((navbarHasApps$ | async) && apps.length > 1) {\n <div class=\"border-bottom pb-2\">\n <rlb-app-dropdown-selector\n mode=\"mobile\"\n [apps]=\"apps\"\n [isAuth]=\"isAuth$ | async\"\n (appSelected)=\"selectApp($event, 'app')\"\n />\n </div>\n }\n\n <!-- Mobile Settings Carousel -->\n @if (((navbarHasLogin$ | async) && (isAuth$ | async)) || (navbarHasSettings$ | async)) {\n <div class=\"pt-2\">\n <rlb-settings-dropdown-selector\n mode=\"mobile\"\n #mobileSettingsMenu\n [apps]=\"apps\"\n [isAuth]=\"isAuth$ | async\"\n [navbarHasLogin]=\"navbarHasLogin$ | async\"\n [navbarHasSettings]=\"navbarHasSettings$ | async\"\n (appSelected)=\"selectApp($event, 'settings')\"\n />\n </div>\n }\n\n </rlb-offcanvas-body>\n </rlb-offcanvas>\n </div>\n\n <rlb-navbar-items>\n @for (navComponent of navLeftItems$ | async; track navComponent) {\n <ng-container ngProjectAs=\"rlb-navbar-item\">\n <ng-container *ngComponentOutlet=\"navComponent | leftComponent\"></ng-container>\n </ng-container>\n }\n </rlb-navbar-items>\n\n <rlb-navbar-items class=\"ms-auto align-items-center\">\n @for (navComponent of navRightItems$ | async; track navComponent) {\n <ng-container ngProjectAs=\"rlb-navbar-item\">\n <ng-container *ngComponentOutlet=\"navComponent | rightComponent\"></ng-container>\n </ng-container>\n }\n @if ((separatorVisible$ | async)) {\n <rlb-navbar-separator />\n }\n\n <ng-container ngProjectAs=\"rlb-navbar-item\">\n @if ((navbarLayout$ | async) == 'default') {\n @if ((navbarHasLogin$ | async) && !(isAuth$ | async)) {\n <rlb-navbar-item (click)=\"loginNav($event)\">\n <span tooltip-placement=\"bottom\" [tooltip]=\"('core.account.login') |translate\">\n <i class=\" bi bi-box-arrow-in-left\"></i>\n </span>\n <span class=\"ms-1 d-lg-none\">{{'core.account.login' | translate}}</span>\n </rlb-navbar-item>\n }\n\n @if ( (navbarHasLogin$ | async) && (isAuth$ | async)) {\n <rlb-navbar-item [router-link]=\"'/profile'\">\n <span tooltip-placement=\"bottom\" [tooltip]=\"('core.account.title') |translate\">\n <i class=\"bi bi-person\"></i>\n </span>\n <span class=\"ms-1 d-lg-none\">{{'core.account.title' | translate}}</span>\n </rlb-navbar-item>\n }\n\n @if (navbarHasSettings$ | async) {\n <rlb-navbar-item [router-link]=\"'/settings'\">\n <span tooltip-placement=\"bottom\" [tooltip]=\"('core.settings.title') |translate\">\n <i class=\"bi bi-gear\"></i>\n </span>\n <span class=\"ms-1 d-lg-none\">{{'core.settings.title' | translate}}</span>\n </rlb-navbar-item>\n }\n\n @if ((navbarHasApps$ | async) && apps.length > 1) {\n <rlb-navbar-item [router-link]=\"'/apps'\">\n <span tooltip-placement=\"bottom\" [tooltip]=\"('core.apps.button') |translate\">\n <i class=\"bi bi-grid-3x3-gap-fill\"></i>\n </span>\n <span class=\"ms-1 d-lg-none\">{{'core.apps.button' | translate}}</span>\n </rlb-navbar-item>\n }\n\n } @else if ((navbarLayout$ | async) == 'dropdown') {\n <!-- MODERN DROPDOWN MODE -->\n\n <!--Unauthenticated Login -->\n @if ((navbarHasLogin$ | async) && !(isAuth$ | async)) {\n <rlb-navbar-item (click)=\"loginNav($event)\">\n <span tooltip-placement=\"bottom\" [tooltip]=\"('core.account.login') | translate\">\n <i class=\"bi bi-box-arrow-in-left fs-5\"></i>\n </span>\n <span class=\"ms-1 d-lg-none\">{{ 'core.account.login' | translate }}</span>\n </rlb-navbar-item>\n }\n\n <!-- Profile & Settings Account Card -->\n @if (((navbarHasLogin$ | async) && (isAuth$ | async)) || (navbarHasSettings$ | async)) {\n <rlb-settings-dropdown-selector\n [apps]=\"apps\"\n [isAuth]=\"isAuth$ | async\"\n [navbarHasLogin]=\"navbarHasLogin$ | async\"\n [navbarHasSettings]=\"navbarHasSettings$ | async\"\n (appSelected)=\"selectApp($event, 'settings')\"\n />\n }\n\n <!-- Apps Launcher -->\n @if ((navbarHasApps$ | async) && apps.length > 1) {\n <rlb-app-dropdown-selector\n [apps]=\"apps\"\n [isAuth]=\"isAuth$ | async\"\n (appSelected)=\"selectApp($event, 'app')\"\n />\n }\n }\n </ng-container>\n </rlb-navbar-items>\n </rlb-navbar>\n }\n <div class=\"rlb-main-wrapper\">\n @if ((sidebarVisible$ | async)) {\n <rlb-sidebar [dark]=\"theme === 'dark'\" id=\"sidebar\" class=\"rlb-sidebar\">\n @for (item of (sidebarItems$ | async); track $index) {\n <rlb-sidebar-item\n *roles=\"item.action\"\n [icon]=\"item.icon\" [link]=\"item.url\"\n [title]=\"item.title\" [label]=\"item.label\"\n [badgeCounter]=\"item.badgeCounter\"\n (click)=\"onSideBarItemClick(item)\"\n >\n {{item.label}}\n @for (subitem of item.items || []; track $index) {\n <rlb-sidebar-item\n [icon]=\"subitem.icon\"\n [link]=\"subitem.url\"\n [title]=\"subitem.title\"\n [label]=\"subitem.label\"\n [badgeCounter]=\"subitem.badgeCounter\"\n (click)=\"onSideBarItemClick(subitem)\"\n >\n {{subitem.label}}\n </rlb-sidebar-item>\n }\n </rlb-sidebar-item>\n }\n </rlb-sidebar>\n }\n <div class=\"rlb-content\">\n <ng-content></ng-content>\n </div>\n </div>\n</div>\n\n@if (modalContainerId) {\n <rlb-modal-container [id]=\"modalContainerId\" />\n}\n\n@if (toastContainerIds) {\n @if (toastContainerIds.constructor.name === 'Array') {\n @for (toastContainerId of toastContainerIds | asMulti; track toastContainerId) {\n <rlb-toast-container [id]=\"toastContainerId\" />\n }\n } @else {\n <rlb-toast-container class=\"position-fixed bottom-0 end-0 p-3\" [id]=\"toastContainerIds | asSingle\" />\n }\n}\n", styles: [".separator{border-left:1px solid;padding:0 2px}\n"] }]
2286
2286
  }], ctorParameters: () => [{ type: undefined, decorators: [{
@@ -2309,10 +2309,10 @@ class BaseComponent {
2309
2309
  }
2310
2310
  }
2311
2311
  ngOnInit() { }
2312
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: BaseComponent, deps: [{ token: i1$7.BreakpointObserver }, { token: PLATFORM_ID }], target: i0.ɵɵFactoryTarget.Component }); }
2313
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.4", type: BaseComponent, isStandalone: false, selector: "rlb-base-template", inputs: { breadcrumb: "breadcrumb", title: "title", subtitle: "subtitle" }, ngImport: i0, template: "<div class=\" mb-3\">\n @if (!(isHandset$ | async)) {\n <div class=\"container-fluid\">\n <div class=\"row mt-1\">\n <div class=\"col-xl-8 col-lg-10 col-md-12 col-sm-12 col-xs-12 mx-auto\">\n <div class=\"row\">\n <div class=\"col-12 pb-0\">\n @if (breadcrumb) {\n <rlb-breadcrumb [items]=\"breadcrumb\"></rlb-breadcrumb>\n }\n <h1 class=\"pt-5 pb-0 text-center\">\n {{title}}\n </h1>\n </div>\n </div>\n @if (subtitle) {\n <div class=\"row\">\n <div class=\"col-12 pb-12\">\n <span class=\"d-block text-h6 text-center\">\n {{subtitle}}\n </span>\n </div>\n </div>\n }\n <ng-container [ngTemplateOutlet]=\"all\"></ng-container>\n <ng-container [ngTemplateOutlet]=\"default\"></ng-container>\n </div>\n </div>\n </div>\n } @else {\n <!--old ng-template #mobileMode-->\n <div class=\"row\">\n <div class=\"col-12 pb-0\">\n <h1 class=\"pt-5 pb-0 text-center\">\n {{title}}\n </h1>\n </div>\n </div>\n @if (subtitle) {\n <div class=\"row\">\n <div class=\"col-12 pb-7\">\n <div class=\"d-block text-h6 text-center\">\n {{subtitle}}\n </div>\n </div>\n </div>\n }\n <ng-container [ngTemplateOutlet]=\"all\"></ng-container>\n <ng-container [ngTemplateOutlet]=\"mobile\"></ng-container>\n }\n</div>\n\n<ng-template #all>\n <ng-content select=\"[all]\"></ng-content>\n</ng-template>\n\n<ng-template #default>\n <ng-content select=\"[default]\"></ng-content>\n</ng-template>\n\n<ng-template #mobile>\n <ng-content select=\"[mobile]\"></ng-content>\n</ng-template>\n", styles: [""], dependencies: [{ kind: "directive", type: i1$6.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i2$1.BreadcrumbComponent, selector: "rlb-breadcrumb", inputs: ["divider", "items", "cssClasses"] }, { kind: "pipe", type: i1$6.AsyncPipe, name: "async" }] }); }
2312
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: BaseComponent, deps: [{ token: i1$7.BreakpointObserver }, { token: PLATFORM_ID }], target: i0.ɵɵFactoryTarget.Component }); }
2313
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.5", type: BaseComponent, isStandalone: false, selector: "rlb-base-template", inputs: { breadcrumb: "breadcrumb", title: "title", subtitle: "subtitle" }, ngImport: i0, template: "<div class=\" mb-3\">\n @if (!(isHandset$ | async)) {\n <div class=\"container-fluid\">\n <div class=\"row mt-1\">\n <div class=\"col-xl-8 col-lg-10 col-md-12 col-sm-12 col-xs-12 mx-auto\">\n <div class=\"row\">\n <div class=\"col-12 pb-0\">\n @if (breadcrumb) {\n <rlb-breadcrumb [items]=\"breadcrumb\"></rlb-breadcrumb>\n }\n <h1 class=\"pt-5 pb-0 text-center\">\n {{title}}\n </h1>\n </div>\n </div>\n @if (subtitle) {\n <div class=\"row\">\n <div class=\"col-12 pb-12\">\n <span class=\"d-block text-h6 text-center\">\n {{subtitle}}\n </span>\n </div>\n </div>\n }\n <ng-container [ngTemplateOutlet]=\"all\"></ng-container>\n <ng-container [ngTemplateOutlet]=\"default\"></ng-container>\n </div>\n </div>\n </div>\n } @else {\n <!--old ng-template #mobileMode-->\n <div class=\"row\">\n <div class=\"col-12 pb-0\">\n <h1 class=\"pt-5 pb-0 text-center\">\n {{title}}\n </h1>\n </div>\n </div>\n @if (subtitle) {\n <div class=\"row\">\n <div class=\"col-12 pb-7\">\n <div class=\"d-block text-h6 text-center\">\n {{subtitle}}\n </div>\n </div>\n </div>\n }\n <ng-container [ngTemplateOutlet]=\"all\"></ng-container>\n <ng-container [ngTemplateOutlet]=\"mobile\"></ng-container>\n }\n</div>\n\n<ng-template #all>\n <ng-content select=\"[all]\"></ng-content>\n</ng-template>\n\n<ng-template #default>\n <ng-content select=\"[default]\"></ng-content>\n</ng-template>\n\n<ng-template #mobile>\n <ng-content select=\"[mobile]\"></ng-content>\n</ng-template>\n", styles: [""], dependencies: [{ kind: "directive", type: i1$6.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i2$1.BreadcrumbComponent, selector: "rlb-breadcrumb", inputs: ["divider", "items", "cssClasses"] }, { kind: "pipe", type: i1$6.AsyncPipe, name: "async" }] }); }
2314
2314
  }
2315
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: BaseComponent, decorators: [{
2315
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: BaseComponent, decorators: [{
2316
2316
  type: Component,
2317
2317
  args: [{ selector: 'rlb-base-template', standalone: false, template: "<div class=\" mb-3\">\n @if (!(isHandset$ | async)) {\n <div class=\"container-fluid\">\n <div class=\"row mt-1\">\n <div class=\"col-xl-8 col-lg-10 col-md-12 col-sm-12 col-xs-12 mx-auto\">\n <div class=\"row\">\n <div class=\"col-12 pb-0\">\n @if (breadcrumb) {\n <rlb-breadcrumb [items]=\"breadcrumb\"></rlb-breadcrumb>\n }\n <h1 class=\"pt-5 pb-0 text-center\">\n {{title}}\n </h1>\n </div>\n </div>\n @if (subtitle) {\n <div class=\"row\">\n <div class=\"col-12 pb-12\">\n <span class=\"d-block text-h6 text-center\">\n {{subtitle}}\n </span>\n </div>\n </div>\n }\n <ng-container [ngTemplateOutlet]=\"all\"></ng-container>\n <ng-container [ngTemplateOutlet]=\"default\"></ng-container>\n </div>\n </div>\n </div>\n } @else {\n <!--old ng-template #mobileMode-->\n <div class=\"row\">\n <div class=\"col-12 pb-0\">\n <h1 class=\"pt-5 pb-0 text-center\">\n {{title}}\n </h1>\n </div>\n </div>\n @if (subtitle) {\n <div class=\"row\">\n <div class=\"col-12 pb-7\">\n <div class=\"d-block text-h6 text-center\">\n {{subtitle}}\n </div>\n </div>\n </div>\n }\n <ng-container [ngTemplateOutlet]=\"all\"></ng-container>\n <ng-container [ngTemplateOutlet]=\"mobile\"></ng-container>\n }\n</div>\n\n<ng-template #all>\n <ng-content select=\"[all]\"></ng-content>\n</ng-template>\n\n<ng-template #default>\n <ng-content select=\"[default]\"></ng-content>\n</ng-template>\n\n<ng-template #mobile>\n <ng-content select=\"[mobile]\"></ng-content>\n</ng-template>\n" }]
2318
2318
  }], ctorParameters: () => [{ type: i1$7.BreakpointObserver }, { type: Object, decorators: [{
@@ -2341,10 +2341,10 @@ class ContentComponent {
2341
2341
  }
2342
2342
  }
2343
2343
  ngOnInit() { }
2344
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: ContentComponent, deps: [{ token: i1$7.BreakpointObserver }, { token: PLATFORM_ID }], target: i0.ɵɵFactoryTarget.Component }); }
2345
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.4", type: ContentComponent, isStandalone: false, selector: "rlb-content-template", ngImport: i0, template: "<div class=\" mb-3\">\n @if (!(isHandset$ | async)) {\n <div class=\"container-fluid\">\n <div class=\"row mt-1\">\n <div class=\"mx-auto col-sm-12 col-md-8 col-lg-9 col-xl-8\">\n <ng-container [ngTemplateOutlet]=\"all\"></ng-container>\n <ng-container [ngTemplateOutlet]=\"default\"></ng-container>\n </div>\n </div>\n </div>\n } @else {\n <ng-container [ngTemplateOutlet]=\"all\"></ng-container>\n <ng-container [ngTemplateOutlet]=\"mobile\"></ng-container>\n }\n</div>\n\n<ng-template #all>\n <ng-content select=\"[all]\"></ng-content>\n</ng-template>\n\n<ng-template #default>\n <ng-content select=\"[default]\"></ng-content>\n</ng-template>\n\n<ng-template #mobile>\n <ng-content select=\"[mobile]\"></ng-content>\n</ng-template>", styles: [""], dependencies: [{ kind: "directive", type: i1$6.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "pipe", type: i1$6.AsyncPipe, name: "async" }] }); }
2344
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: ContentComponent, deps: [{ token: i1$7.BreakpointObserver }, { token: PLATFORM_ID }], target: i0.ɵɵFactoryTarget.Component }); }
2345
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.5", type: ContentComponent, isStandalone: false, selector: "rlb-content-template", ngImport: i0, template: "<div class=\" mb-3\">\n @if (!(isHandset$ | async)) {\n <div class=\"container-fluid\">\n <div class=\"row mt-1\">\n <div class=\"mx-auto col-sm-12 col-md-8 col-lg-9 col-xl-8\">\n <ng-container [ngTemplateOutlet]=\"all\"></ng-container>\n <ng-container [ngTemplateOutlet]=\"default\"></ng-container>\n </div>\n </div>\n </div>\n } @else {\n <ng-container [ngTemplateOutlet]=\"all\"></ng-container>\n <ng-container [ngTemplateOutlet]=\"mobile\"></ng-container>\n }\n</div>\n\n<ng-template #all>\n <ng-content select=\"[all]\"></ng-content>\n</ng-template>\n\n<ng-template #default>\n <ng-content select=\"[default]\"></ng-content>\n</ng-template>\n\n<ng-template #mobile>\n <ng-content select=\"[mobile]\"></ng-content>\n</ng-template>", styles: [""], dependencies: [{ kind: "directive", type: i1$6.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "pipe", type: i1$6.AsyncPipe, name: "async" }] }); }
2346
2346
  }
2347
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: ContentComponent, decorators: [{
2347
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: ContentComponent, decorators: [{
2348
2348
  type: Component,
2349
2349
  args: [{ selector: 'rlb-content-template', standalone: false, template: "<div class=\" mb-3\">\n @if (!(isHandset$ | async)) {\n <div class=\"container-fluid\">\n <div class=\"row mt-1\">\n <div class=\"mx-auto col-sm-12 col-md-8 col-lg-9 col-xl-8\">\n <ng-container [ngTemplateOutlet]=\"all\"></ng-container>\n <ng-container [ngTemplateOutlet]=\"default\"></ng-container>\n </div>\n </div>\n </div>\n } @else {\n <ng-container [ngTemplateOutlet]=\"all\"></ng-container>\n <ng-container [ngTemplateOutlet]=\"mobile\"></ng-container>\n }\n</div>\n\n<ng-template #all>\n <ng-content select=\"[all]\"></ng-content>\n</ng-template>\n\n<ng-template #default>\n <ng-content select=\"[default]\"></ng-content>\n</ng-template>\n\n<ng-template #mobile>\n <ng-content select=\"[mobile]\"></ng-content>\n</ng-template>" }]
2350
2350
  }], ctorParameters: () => [{ type: i1$7.BreakpointObserver }, { type: Object, decorators: [{
@@ -2361,10 +2361,10 @@ class TruncatePipe {
2361
2361
  }
2362
2362
  return value.length > limit ? value.slice(0, limit) + ellipsis : value;
2363
2363
  }
2364
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: TruncatePipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
2365
- static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "21.2.4", ngImport: i0, type: TruncatePipe, isStandalone: false, name: "truncate" }); }
2364
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: TruncatePipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
2365
+ static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "21.2.5", ngImport: i0, type: TruncatePipe, isStandalone: false, name: "truncate" }); }
2366
2366
  }
2367
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: TruncatePipe, decorators: [{
2367
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: TruncatePipe, decorators: [{
2368
2368
  type: Pipe,
2369
2369
  args: [{
2370
2370
  name: 'truncate',
@@ -2393,10 +2393,10 @@ class AutolinkPipe {
2393
2393
  return '' + space + link;
2394
2394
  });
2395
2395
  }
2396
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: AutolinkPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
2397
- static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "21.2.4", ngImport: i0, type: AutolinkPipe, isStandalone: false, name: "autolink" }); }
2396
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: AutolinkPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
2397
+ static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "21.2.5", ngImport: i0, type: AutolinkPipe, isStandalone: false, name: "autolink" }); }
2398
2398
  }
2399
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: AutolinkPipe, decorators: [{
2399
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: AutolinkPipe, decorators: [{
2400
2400
  type: Pipe,
2401
2401
  args: [{
2402
2402
  name: 'autolink',
@@ -2459,10 +2459,10 @@ class AppContainerComponent {
2459
2459
  this.swUpdateSubscription = this.pwaUpdaterService.checkWithDialog().subscribe();
2460
2460
  }
2461
2461
  }
2462
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: AppContainerComponent, deps: [{ token: RLB_CFG_ENV }, { token: i1$1.Store }, { token: i2.Router }, { token: AppStorageService }, { token: PwaUpdaterService }, { token: AppsService }, { token: AppLoggerService }], target: i0.ɵɵFactoryTarget.Component }); }
2463
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.4", type: AppContainerComponent, isStandalone: false, selector: "rlb-app-container", inputs: { modalContainerId: ["modal-container-id", "modalContainerId"], toastContainerIds: ["toast-container-ids", "toastContainerIds"] }, ngImport: i0, template: "@if ((template$ | async) === 'app') {\n <rlb-app-template>\n <router-outlet />\n </rlb-app-template>\n}\n@if ((template$ | async) === 'basic') {\n <router-outlet />\n}\n\n\n@if (modalContainerId) {\n <rlb-modal-container [id]=\"modalContainerId\" />\n}\n\n@if (toastContainerIds) {\n @if (toastContainerIds.constructor.name === 'Array') {\n @for (toastContainerId of toastContainerIds | asMulti; track toastContainerId) {\n <rlb-toast-container [id]=\"toastContainerId\" />\n }\n } @else {\n <rlb-toast-container class=\"position-fixed bottom-0 end-0 p-3\" [id]=\"toastContainerIds | asSingle\" />\n }\n}", dependencies: [{ kind: "component", type: i2$1.ModalContainerComponent, selector: "rlb-modal-container", inputs: ["id"] }, { kind: "component", type: i2$1.ToastContainerComponent, selector: "rlb-toast-container", inputs: ["id"] }, { kind: "directive", type: i2.RouterOutlet, selector: "router-outlet", inputs: ["name", "routerOutletData"], outputs: ["activate", "deactivate", "attach", "detach"], exportAs: ["outlet"] }, { kind: "component", type: AppTemplateComponent, selector: "rlb-app-template", inputs: ["modal-container-id", "toast-container-ids"] }, { kind: "pipe", type: i1$6.AsyncPipe, name: "async" }, { kind: "pipe", type: AsMultiPipe, name: "asMulti" }, { kind: "pipe", type: AsSinglePipe, name: "asSingle" }] }); }
2462
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: AppContainerComponent, deps: [{ token: RLB_CFG_ENV }, { token: i1$1.Store }, { token: i2.Router }, { token: AppStorageService }, { token: PwaUpdaterService }, { token: AppsService }, { token: AppLoggerService }], target: i0.ɵɵFactoryTarget.Component }); }
2463
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.5", type: AppContainerComponent, isStandalone: false, selector: "rlb-app-container", inputs: { modalContainerId: ["modal-container-id", "modalContainerId"], toastContainerIds: ["toast-container-ids", "toastContainerIds"] }, ngImport: i0, template: "@if ((template$ | async) === 'app') {\n <rlb-app-template>\n <router-outlet />\n </rlb-app-template>\n}\n@if ((template$ | async) === 'basic') {\n <router-outlet />\n}\n\n\n@if (modalContainerId) {\n <rlb-modal-container [id]=\"modalContainerId\" />\n}\n\n@if (toastContainerIds) {\n @if (toastContainerIds.constructor.name === 'Array') {\n @for (toastContainerId of toastContainerIds | asMulti; track toastContainerId) {\n <rlb-toast-container [id]=\"toastContainerId\" />\n }\n } @else {\n <rlb-toast-container class=\"position-fixed bottom-0 end-0 p-3\" [id]=\"toastContainerIds | asSingle\" />\n }\n}", dependencies: [{ kind: "component", type: i2$1.ModalContainerComponent, selector: "rlb-modal-container", inputs: ["id"] }, { kind: "component", type: i2$1.ToastContainerComponent, selector: "rlb-toast-container", inputs: ["id"] }, { kind: "directive", type: i2.RouterOutlet, selector: "router-outlet", inputs: ["name", "routerOutletData"], outputs: ["activate", "deactivate", "attach", "detach"], exportAs: ["outlet"] }, { kind: "component", type: AppTemplateComponent, selector: "rlb-app-template", inputs: ["modal-container-id", "toast-container-ids"] }, { kind: "pipe", type: i1$6.AsyncPipe, name: "async" }, { kind: "pipe", type: AsMultiPipe, name: "asMulti" }, { kind: "pipe", type: AsSinglePipe, name: "asSingle" }] }); }
2464
2464
  }
2465
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: AppContainerComponent, decorators: [{
2465
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: AppContainerComponent, decorators: [{
2466
2466
  type: Component,
2467
2467
  args: [{ selector: 'rlb-app-container', standalone: false, template: "@if ((template$ | async) === 'app') {\n <rlb-app-template>\n <router-outlet />\n </rlb-app-template>\n}\n@if ((template$ | async) === 'basic') {\n <router-outlet />\n}\n\n\n@if (modalContainerId) {\n <rlb-modal-container [id]=\"modalContainerId\" />\n}\n\n@if (toastContainerIds) {\n @if (toastContainerIds.constructor.name === 'Array') {\n @for (toastContainerId of toastContainerIds | asMulti; track toastContainerId) {\n <rlb-toast-container [id]=\"toastContainerId\" />\n }\n } @else {\n <rlb-toast-container class=\"position-fixed bottom-0 end-0 p-3\" [id]=\"toastContainerIds | asSingle\" />\n }\n}" }]
2468
2468
  }], ctorParameters: () => [{ type: undefined, decorators: [{
@@ -2477,8 +2477,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.4", ngImpor
2477
2477
  }] } });
2478
2478
 
2479
2479
  class RlbAppModule {
2480
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: RlbAppModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
2481
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.2.4", ngImport: i0, type: RlbAppModule, declarations: [
2480
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: RlbAppModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
2481
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.2.5", ngImport: i0, type: RlbAppModule, declarations: [
2482
2482
  // pages
2483
2483
  CmsContentComponent,
2484
2484
  CookiesComponent,
@@ -2530,7 +2530,7 @@ class RlbAppModule {
2530
2530
  FormsModule,
2531
2531
  // directives
2532
2532
  RlbRole] }); }
2533
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: RlbAppModule, imports: [CommonModule,
2533
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: RlbAppModule, imports: [CommonModule,
2534
2534
  FormsModule,
2535
2535
  ReactiveFormsModule,
2536
2536
  TranslateModule,
@@ -2542,7 +2542,7 @@ class RlbAppModule {
2542
2542
  RouterModule,
2543
2543
  FormsModule] }); }
2544
2544
  }
2545
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: RlbAppModule, decorators: [{
2545
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: RlbAppModule, decorators: [{
2546
2546
  type: NgModule,
2547
2547
  args: [{
2548
2548
  declarations: [
@@ -2615,8 +2615,8 @@ class ErrorModalComponent {
2615
2615
  ngOnInit() {
2616
2616
  console.log(this.data());
2617
2617
  }
2618
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: ErrorModalComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
2619
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "21.2.4", type: ErrorModalComponent, isStandalone: true, selector: "ng-component", inputs: { data: { classPropertyName: "data", publicName: "data", isSignal: true, isRequired: true, transformFunction: null }, valid: { classPropertyName: "valid", publicName: "valid", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { valid: "validChange" }, hostDirectives: [{ directive: i2$1.ModalDirective, inputs: ["id", "id", "data-instance", "data-instance", "data-options", "data-options"] }], ngImport: i0, template: `
2618
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: ErrorModalComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
2619
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "21.2.5", type: ErrorModalComponent, isStandalone: true, selector: "ng-component", inputs: { data: { classPropertyName: "data", publicName: "data", isSignal: true, isRequired: true, transformFunction: null }, valid: { classPropertyName: "valid", publicName: "valid", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { valid: "validChange" }, hostDirectives: [{ directive: i2$1.ModalDirective, inputs: ["id", "id", "data-instance", "data-instance", "data-options", "data-options"] }], ngImport: i0, template: `
2620
2620
  <div class="modal-header">
2621
2621
  <h5 class="modal-title">{{ data().title }}</h5>
2622
2622
  <button
@@ -2640,7 +2640,7 @@ class ErrorModalComponent {
2640
2640
  </div>
2641
2641
  `, isInline: true, dependencies: [{ kind: "ngmodule", type: RlbAppModule }] }); }
2642
2642
  }
2643
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: ErrorModalComponent, decorators: [{
2643
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: ErrorModalComponent, decorators: [{
2644
2644
  type: Component,
2645
2645
  args: [{
2646
2646
  imports: [RlbAppModule],
@@ -2685,8 +2685,8 @@ class ModalAppsComponent {
2685
2685
  appSelected(app) {
2686
2686
  this.result = app;
2687
2687
  }
2688
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: ModalAppsComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
2689
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.4", type: ModalAppsComponent, isStandalone: true, selector: "ng-component", inputs: { data: { classPropertyName: "data", publicName: "data", isSignal: true, isRequired: true, transformFunction: null }, valid: { classPropertyName: "valid", publicName: "valid", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { valid: "validChange" }, hostDirectives: [{ directive: i2$1.ModalDirective, inputs: ["id", "id", "data-instance", "data-instance", "data-options", "data-options"] }], ngImport: i0, template: `
2688
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: ModalAppsComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
2689
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.5", type: ModalAppsComponent, isStandalone: true, selector: "ng-component", inputs: { data: { classPropertyName: "data", publicName: "data", isSignal: true, isRequired: true, transformFunction: null }, valid: { classPropertyName: "valid", publicName: "valid", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { valid: "validChange" }, hostDirectives: [{ directive: i2$1.ModalDirective, inputs: ["id", "id", "data-instance", "data-instance", "data-options", "data-options"] }], ngImport: i0, template: `
2690
2690
  <div class="modal-header">
2691
2691
  <h5 class="modal-title">{{ data().title }}</h5>
2692
2692
  <button
@@ -2722,7 +2722,7 @@ class ModalAppsComponent {
2722
2722
  </div>
2723
2723
  `, isInline: true, dependencies: [{ kind: "ngmodule", type: RlbAppModule }, { kind: "directive", type: i2$1.TooltipDirective, selector: "[tooltip]", inputs: ["tooltip", "tooltip-placement", "tooltip-class", "tooltip-html"] }, { kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1$6.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "pipe", type: i1$3.TranslatePipe, name: "translate" }] }); }
2724
2724
  }
2725
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: ModalAppsComponent, decorators: [{
2725
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: ModalAppsComponent, decorators: [{
2726
2726
  type: Component,
2727
2727
  args: [{
2728
2728
  imports: [RlbAppModule, CommonModule],
@@ -2783,10 +2783,10 @@ class AppSelectorComponent {
2783
2783
  get auth$() {
2784
2784
  return this.authService.isAuthenticated$;
2785
2785
  }
2786
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: AppSelectorComponent, deps: [{ token: i1$6.Location }, { token: AppsService }, { token: AuthenticationService }], target: i0.ɵɵFactoryTarget.Component }); }
2787
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.4", type: AppSelectorComponent, isStandalone: true, selector: "rlb-app-selector", ngImport: i0, template: "<div class=\"container mt-2\">\n <div class=\"container text-center position-relative my-3\">\n <h3>{{ 'core.apps.title' | translate}}</h3>\n <i role=\"button\" class=\"bi bi-chevron-left position-absolute start-0 top-50 translate-middle-y cur\"\n style=\"font-size: 25px;font-weight: 600;\" (click)=\"backClicked()\"></i>\n </div>\n <rlb-list>\n @for (app of apps; track app.id) {\n <ng-container ngProjectAs=\"rlb-list-item-image\">\n @if (app.core) {\n <ng-container ngProjectAs=\"rlb-list-item-image\">\n <rlb-list-item-image [icon]=\"app.core.icon\" [avatar-size]=\"35\"\n [line-1]=\"(app.core.title | translate) + (app.data?.appName ? ' - ' + app.data?.appName : '')\"\n [disabled]=\"!app.enabled && (app.core.auth && !(auth$ | async))\" [line-2]=\"app.core.description | translate\"\n (click)=\"selectApp(app)\">\n </rlb-list-item-image>\n </ng-container>\n }\n </ng-container>\n }\n </rlb-list>\n</div>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: RlbAppModule }, { kind: "component", type: i2$1.ListComponent, selector: "rlb-list", inputs: ["disabled", "numbered", "flush", "horizontal"] }, { kind: "component", type: i2$1.ListItemImageComponent, selector: "rlb-list-item-image", inputs: ["active", "disabled", "counter-empty", "counter-pill", "counter-border", "avatar-size", "username", "line-1", "line-2", "avatar", "counter", "counter-color", "icon"] }, { kind: "ngmodule", type: CommonModule }, { kind: "pipe", type: i1$3.TranslatePipe, name: "translate" }, { kind: "pipe", type: i1$6.AsyncPipe, name: "async" }] }); }
2786
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: AppSelectorComponent, deps: [{ token: i1$6.Location }, { token: AppsService }, { token: AuthenticationService }], target: i0.ɵɵFactoryTarget.Component }); }
2787
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.5", type: AppSelectorComponent, isStandalone: true, selector: "rlb-app-selector", ngImport: i0, template: "<div class=\"container mt-2\">\n <div class=\"container text-center position-relative my-3\">\n <h3>{{ 'core.apps.title' | translate}}</h3>\n <i role=\"button\" class=\"bi bi-chevron-left position-absolute start-0 top-50 translate-middle-y cur\"\n style=\"font-size: 25px;font-weight: 600;\" (click)=\"backClicked()\"></i>\n </div>\n <rlb-list>\n @for (app of apps; track app.id) {\n <ng-container ngProjectAs=\"rlb-list-item-image\">\n @if (app.core) {\n <ng-container ngProjectAs=\"rlb-list-item-image\">\n <rlb-list-item-image [icon]=\"app.core.icon\" [avatar-size]=\"35\"\n [line-1]=\"(app.core.title | translate) + (app.data?.appName ? ' - ' + app.data?.appName : '')\"\n [disabled]=\"!app.enabled && (app.core.auth && !(auth$ | async))\" [line-2]=\"app.core.description | translate\"\n (click)=\"selectApp(app)\">\n </rlb-list-item-image>\n </ng-container>\n }\n </ng-container>\n }\n </rlb-list>\n</div>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: RlbAppModule }, { kind: "component", type: i2$1.ListComponent, selector: "rlb-list", inputs: ["disabled", "numbered", "flush", "horizontal"] }, { kind: "component", type: i2$1.ListItemImageComponent, selector: "rlb-list-item-image", inputs: ["active", "disabled", "counter-empty", "counter-pill", "counter-border", "avatar-size", "username", "line-1", "line-2", "avatar", "counter", "counter-color", "icon"] }, { kind: "ngmodule", type: CommonModule }, { kind: "pipe", type: i1$3.TranslatePipe, name: "translate" }, { kind: "pipe", type: i1$6.AsyncPipe, name: "async" }] }); }
2788
2788
  }
2789
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: AppSelectorComponent, decorators: [{
2789
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: AppSelectorComponent, decorators: [{
2790
2790
  type: Component,
2791
2791
  args: [{ selector: 'rlb-app-selector', imports: [RlbAppModule, CommonModule], template: "<div class=\"container mt-2\">\n <div class=\"container text-center position-relative my-3\">\n <h3>{{ 'core.apps.title' | translate}}</h3>\n <i role=\"button\" class=\"bi bi-chevron-left position-absolute start-0 top-50 translate-middle-y cur\"\n style=\"font-size: 25px;font-weight: 600;\" (click)=\"backClicked()\"></i>\n </div>\n <rlb-list>\n @for (app of apps; track app.id) {\n <ng-container ngProjectAs=\"rlb-list-item-image\">\n @if (app.core) {\n <ng-container ngProjectAs=\"rlb-list-item-image\">\n <rlb-list-item-image [icon]=\"app.core.icon\" [avatar-size]=\"35\"\n [line-1]=\"(app.core.title | translate) + (app.data?.appName ? ' - ' + app.data?.appName : '')\"\n [disabled]=\"!app.enabled && (app.core.auth && !(auth$ | async))\" [line-2]=\"app.core.description | translate\"\n (click)=\"selectApp(app)\">\n </rlb-list-item-image>\n </ng-container>\n }\n </ng-container>\n }\n </rlb-list>\n</div>\n" }]
2792
2792
  }], ctorParameters: () => [{ type: i1$6.Location }, { type: AppsService }, { type: AuthenticationService }] });
@@ -2969,10 +2969,10 @@ class OauthPasswordService {
2969
2969
  }, r.expires_in * 1000 - 60000);
2970
2970
  }
2971
2971
  }
2972
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: OauthPasswordService, deps: [{ token: i1$2.HttpClient }, { token: AuthenticationService }, { token: AppLoggerService }], target: i0.ɵɵFactoryTarget.Injectable }); }
2973
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: OauthPasswordService, providedIn: 'root' }); }
2972
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: OauthPasswordService, deps: [{ token: i1$2.HttpClient }, { token: AuthenticationService }, { token: AppLoggerService }], target: i0.ɵɵFactoryTarget.Injectable }); }
2973
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: OauthPasswordService, providedIn: 'root' }); }
2974
2974
  }
2975
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: OauthPasswordService, decorators: [{
2975
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: OauthPasswordService, decorators: [{
2976
2976
  type: Injectable,
2977
2977
  args: [{
2978
2978
  providedIn: 'root'
@@ -3059,10 +3059,10 @@ class KeycloakProfileService {
3059
3059
  }
3060
3060
  });
3061
3061
  }
3062
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: KeycloakProfileService, deps: [{ token: i1$2.HttpClient }, { token: AuthenticationService }, { token: ErrorManagementService }, { token: i1$5.OidcSecurityService }], target: i0.ɵɵFactoryTarget.Injectable }); }
3063
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: KeycloakProfileService, providedIn: 'root' }); }
3062
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: KeycloakProfileService, deps: [{ token: i1$2.HttpClient }, { token: AuthenticationService }, { token: ErrorManagementService }, { token: i1$5.OidcSecurityService }], target: i0.ɵɵFactoryTarget.Injectable }); }
3063
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: KeycloakProfileService, providedIn: 'root' }); }
3064
3064
  }
3065
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: KeycloakProfileService, decorators: [{
3065
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: KeycloakProfileService, decorators: [{
3066
3066
  type: Injectable,
3067
3067
  args: [{
3068
3068
  providedIn: 'root',
@@ -3126,10 +3126,10 @@ class UserAccountComponent {
3126
3126
  configureOTP() {
3127
3127
  this.keycloakProfileService.configureOTP();
3128
3128
  }
3129
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: UserAccountComponent, deps: [{ token: i1$6.Location }, { token: i1$1.Store }, { token: KeycloakProfileService }, { token: i2$1.ModalService }, { token: LanguageService }, { token: AuthenticationService }, { token: i2.Router }], target: i0.ɵɵFactoryTarget.Component }); }
3130
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.4", type: UserAccountComponent, isStandalone: true, selector: "rlb-user-account", ngImport: i0, template: "<div class=\"container mt-2 mb-5\">\n <div class=\"container text-center position-relative my-3\">\n <h3>{{ 'core.account.title' | translate}}</h3>\n <i role=\"button\" class=\"bi bi-chevron-left position-absolute start-0 top-50 translate-middle-y\"\n style=\"font-size: 25px;font-weight: 600;\" (click)=\"backClicked()\"></i>\n <button rlb-button outline size=\"sm\" class=\"position-absolute end-0 top-50 translate-middle-y\"\n (click)=\"updateProfile()\">\n <i class=\"bi bi-floppy\"></i>\n </button>\n </div>\n <rlb-list class=\"settings\">\n <rlb-list-item class=\"settings-item\">\n <div class=\"d-flex justify-content-between\">\n <div class=\"settings-text\">\n <h6 class=\"mt-1\">{{ 'core.account.username' | translate}}</h6>\n </div>\n <div class=\"settings-control\">\n @if (keyCloakUser) {\n <rlb-input size=\"small\" type=\"text\" [(ngModel)]=\"keyCloakUser.username\" disabled />\n }\n </div>\n </div>\n </rlb-list-item>\n <rlb-list-item class=\"settings-item\">\n <div class=\"d-flex justify-content-between\">\n <div class=\"settings-text\">\n <h6 class=\"mt-1\">{{ 'core.account.email' | translate}}</h6>\n </div>\n <div class=\"settings-control\">\n @if (keyCloakUser) {\n <rlb-input size=\"small\" type=\"text\" [(ngModel)]=\"keyCloakUser.email\" />\n }\n @if (!keyCloakUser) {\n <rlb-input size=\"small\" type=\"text\" readonly />\n }\n </div>\n </div>\n </rlb-list-item>\n <rlb-list-item class=\"settings-item\">\n <div class=\"d-flex justify-content-between\">\n <div class=\"settings-text\">\n <h6 class=\"mt-1\">{{ 'core.account.firstName' | translate}}</h6>\n </div>\n <div class=\"settings-control\">\n @if (keyCloakUser) {\n <rlb-input size=\"small\" type=\"text\" [(ngModel)]=\"keyCloakUser.firstName\" />\n }\n @if (!keyCloakUser) {\n <rlb-input size=\"small\" type=\"text\" readonly />\n }\n </div>\n </div>\n </rlb-list-item>\n <rlb-list-item class=\"settings-item\">\n <div class=\"d-flex justify-content-between\">\n <div class=\"settings-text\">\n <h6 class=\"mt-1\">{{ 'core.account.lastName' | translate}}</h6>\n </div>\n <div class=\"settings-control\">\n @if (keyCloakUser) {\n <rlb-input size=\"small\" type=\"text\" [(ngModel)]=\"keyCloakUser.lastName\" />\n }\n @if (!keyCloakUser) {\n <rlb-input size=\"small\" type=\"text\" readonly />\n }\n </div>\n </div>\n </rlb-list-item>\n <rlb-list-item class=\"settings-item\">\n <div class=\"d-flex justify-content-between\">\n <div class=\"settings-text\">\n <h6 class=\"mt-1\">{{ 'core.account.logout' | translate}}</h6>\n </div>\n <div class=\"settings-control\">\n <button size=\"sm\" rlb-button (click)=\"logout()\" class=\"w-100\">\n <i class=\"bi bi-box-arrow-right\"></i>\n {{ 'core.account.logout' | translate}}</button>\n </div>\n </div>\n </rlb-list-item>\n </rlb-list>\n @if (keyCloakUser) {\n <div class=\"container text-center position-relative mt-5 mb-2\">\n <h3>{{ 'core.account.credentials.title' | translate}}</h3>\n </div>\n @for (type of keycloakCredentials; track type) {\n <div class=\"container position-relative my-3\">\n <h6>{{ ('core.account.credentials.'+type?.type) | translate }}</h6>\n @if (type.type === 'otp') {\n <button rlb-button size=\"sm\"\n class=\"position-absolute end-0 top-50 translate-middle-y\" (click)=\"configureOTP()\">\n {{ 'core.account.credentials.addOTP' | translate}}\n </button>\n }\n </div>\n <rlb-list class=\"settings mb-5\">\n @for (cred of type.userCredentialMetadatas; track cred.credential.id) {\n <rlb-list-item class=\"settings-item\">\n <div class=\"row\">\n <div class=\"col-12\">\n <dl class=\"row signed-in-device-grid\">\n <div class=\"col-md-1\">\n <i class=\"bi bi-key\" style=\"font-size: 35px;\"></i>\n </div>\n <div class=\"col-md-5\">\n <dt>\n <span class=\"text-muted\">\n {{ 'core.account.credentials.name' | translate }}\n </span>\n </dt>\n <dd>{{cred.credential.userLabel || cred.credential.type}}</dd>\n </div>\n <div class=\"col-md-4\">\n <dt>\n <span class=\"text-muted\">\n {{'core.account.credentials.created' | translate}}\n </span>\n </dt>\n <dd>{{cred.credential.createdDate | date:'dd:MM:yyyy HH:mm' }}</dd>\n </div>\n <div class=\"col-md-2\">\n <dt><span class=\"text-muted\">{{'core.account.credentials.actions' |\n translate}}</span></dt>\n <dd>\n @if (type.removeable) {\n <button size=\"sm\" rlb-button class=\"w-100\" color=\"danger\"\n (click)=\"removeCredential(type.type, cred.credential.id)\">\n <i class=\"bi bi-trash\"></i>\n {{ 'core.account.credentials.delete' | translate}}\n </button>\n }\n @if (!type.removeable) {\n <button size=\"sm\" rlb-button class=\"w-100\" outline\n (click)=\"updatePassword()\">\n <i class=\"bi bi-trash\"></i>\n {{ 'core.account.credentials.update' | translate}}\n </button>\n }\n </dd>\n </div>\n </dl>\n </div>\n </div>\n </rlb-list-item>\n }\n @if (type.userCredentialMetadatas.length === 0) {\n <rlb-list-item>\n <div class=\"d-flex justify-content-center\">\n <div class=\"settings-text\">\n <h6 class=\"mt-1\">{{ 'core.account.credentials.noCredentials' | translate}}</h6>\n </div>\n </div>\n </rlb-list-item>\n }\n </rlb-list>\n }\n <div class=\"container text-center position-relative mt-5 mb-3\">\n <h3>{{ 'core.account.session.title' | translate}}</h3>\n </div>\n <rlb-list class=\"settings\">\n @for (d of keyCloakDevices; track d.id) {\n <rlb-list-item class=\"settings-item\">\n <div class=\"row mb-2\">\n <div class=\"col-1\">\n <i class=\"bi bi-laptop\" style=\"font-size: 35px;\"></i>\n </div>\n <div class=\"col-11\">\n <span class=\"session-title\">{{d.os}} {{d.osVersion}} - {{d.browser}}</span>\n @if (d.current) {\n <span class=\"badge bg-success ms-3\">\n <span class=\"badge-content\">\n {{ 'core.account.session.current' | translate}}\n </span>\n </span>\n }\n </div>\n </div>\n <div class=\"row\">\n <div class=\"col-12\">\n <dl class=\"row signed-in-device-grid\">\n <div class=\" col-md-1\">\n </div>\n <div class=\" col-md-2\">\n <dt><span class=\"text-muted\">{{ 'core.account.session.ip' | translate }}</span>\n </dt>\n <dd>{{d.ipAddress}}</dd>\n </div>\n <div class=\"col-md-2\">\n <dt>\n <span class=\"text-muted\">\n {{'core.account.session.lastAccess' | translate}}\n </span>\n </dt>\n <dd>{{d.lastAccess*1000 | date:'dd/MM/yyyy - HH:mm'}}</dd>\n </div>\n <div class=\"col-md-2\">\n <dt><span class=\"text-muted\">{{'core.account.session.applications' |\n translate}}</span></dt>\n <dd>{{d.clientslist }} </dd>\n </div>\n <div class=\"col-md-2\">\n <dt><span class=\"text-muted\">{{'core.account.session.started' |\n translate}}</span></dt>\n <dd>{{d.started*1000 | date:'dd/MM/yyyy - HH:mm'}}</dd>\n </div>\n <div class=\"col-md-2\">\n <dt><span class=\"text-muted\">{{'core.account.session.expires' |\n translate}}</span></dt>\n <dd>{{d.expires*1000 | date:'dd/MM/yyyy - HH:mm'}}</dd>\n </div>\n </dl>\n </div>\n </div>\n </rlb-list-item>\n }\n </rlb-list>\n}\n</div>\n", styles: [".settings .settings-item .settings-control{width:40%}\n"], dependencies: [{ kind: "ngmodule", type: RlbAppModule }, { kind: "component", type: i2$1.InputComponent, selector: "rlb-input", inputs: ["disabled", "readonly", "before-text", "placeholder", "type", "size", "name", "max", "min", "step", "date-type", "timezone", "id", "extValidation", "enable-validation"] }, { kind: "component", type: i2$1.ButtonComponent, selector: "button[rlb-button], a[rlb-button]", inputs: ["color", "size", "disabled", "outline", "isLink"] }, { kind: "component", type: i2$1.ListComponent, selector: "rlb-list", inputs: ["disabled", "numbered", "flush", "horizontal"] }, { kind: "component", type: i2$1.ListItemComponent, selector: "rlb-list-item", inputs: ["active", "disabled", "action"] }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: CommonModule }, { kind: "pipe", type: i1$3.TranslatePipe, name: "translate" }, { kind: "pipe", type: i1$6.DatePipe, name: "date" }] }); }
3129
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: UserAccountComponent, deps: [{ token: i1$6.Location }, { token: i1$1.Store }, { token: KeycloakProfileService }, { token: i2$1.ModalService }, { token: LanguageService }, { token: AuthenticationService }, { token: i2.Router }], target: i0.ɵɵFactoryTarget.Component }); }
3130
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.5", type: UserAccountComponent, isStandalone: true, selector: "rlb-user-account", ngImport: i0, template: "<div class=\"container mt-2 mb-5\">\n <div class=\"container text-center position-relative my-3\">\n <h3>{{ 'core.account.title' | translate}}</h3>\n <i role=\"button\" class=\"bi bi-chevron-left position-absolute start-0 top-50 translate-middle-y\"\n style=\"font-size: 25px;font-weight: 600;\" (click)=\"backClicked()\"></i>\n <button rlb-button outline size=\"sm\" class=\"position-absolute end-0 top-50 translate-middle-y\"\n (click)=\"updateProfile()\">\n <i class=\"bi bi-floppy\"></i>\n </button>\n </div>\n <rlb-list class=\"settings\">\n <rlb-list-item class=\"settings-item\">\n <div class=\"d-flex justify-content-between\">\n <div class=\"settings-text\">\n <h6 class=\"mt-1\">{{ 'core.account.username' | translate}}</h6>\n </div>\n <div class=\"settings-control\">\n @if (keyCloakUser) {\n <rlb-input size=\"small\" type=\"text\" [(ngModel)]=\"keyCloakUser.username\" disabled />\n }\n </div>\n </div>\n </rlb-list-item>\n <rlb-list-item class=\"settings-item\">\n <div class=\"d-flex justify-content-between\">\n <div class=\"settings-text\">\n <h6 class=\"mt-1\">{{ 'core.account.email' | translate}}</h6>\n </div>\n <div class=\"settings-control\">\n @if (keyCloakUser) {\n <rlb-input size=\"small\" type=\"text\" [(ngModel)]=\"keyCloakUser.email\" />\n }\n @if (!keyCloakUser) {\n <rlb-input size=\"small\" type=\"text\" readonly />\n }\n </div>\n </div>\n </rlb-list-item>\n <rlb-list-item class=\"settings-item\">\n <div class=\"d-flex justify-content-between\">\n <div class=\"settings-text\">\n <h6 class=\"mt-1\">{{ 'core.account.firstName' | translate}}</h6>\n </div>\n <div class=\"settings-control\">\n @if (keyCloakUser) {\n <rlb-input size=\"small\" type=\"text\" [(ngModel)]=\"keyCloakUser.firstName\" />\n }\n @if (!keyCloakUser) {\n <rlb-input size=\"small\" type=\"text\" readonly />\n }\n </div>\n </div>\n </rlb-list-item>\n <rlb-list-item class=\"settings-item\">\n <div class=\"d-flex justify-content-between\">\n <div class=\"settings-text\">\n <h6 class=\"mt-1\">{{ 'core.account.lastName' | translate}}</h6>\n </div>\n <div class=\"settings-control\">\n @if (keyCloakUser) {\n <rlb-input size=\"small\" type=\"text\" [(ngModel)]=\"keyCloakUser.lastName\" />\n }\n @if (!keyCloakUser) {\n <rlb-input size=\"small\" type=\"text\" readonly />\n }\n </div>\n </div>\n </rlb-list-item>\n <rlb-list-item class=\"settings-item\">\n <div class=\"d-flex justify-content-between\">\n <div class=\"settings-text\">\n <h6 class=\"mt-1\">{{ 'core.account.logout' | translate}}</h6>\n </div>\n <div class=\"settings-control\">\n <button size=\"sm\" rlb-button (click)=\"logout()\" class=\"w-100\">\n <i class=\"bi bi-box-arrow-right\"></i>\n {{ 'core.account.logout' | translate}}</button>\n </div>\n </div>\n </rlb-list-item>\n </rlb-list>\n @if (keyCloakUser) {\n <div class=\"container text-center position-relative mt-5 mb-2\">\n <h3>{{ 'core.account.credentials.title' | translate}}</h3>\n </div>\n @for (type of keycloakCredentials; track type) {\n <div class=\"container position-relative my-3\">\n <h6>{{ ('core.account.credentials.'+type?.type) | translate }}</h6>\n @if (type.type === 'otp') {\n <button rlb-button size=\"sm\"\n class=\"position-absolute end-0 top-50 translate-middle-y\" (click)=\"configureOTP()\">\n {{ 'core.account.credentials.addOTP' | translate}}\n </button>\n }\n </div>\n <rlb-list class=\"settings mb-5\">\n @for (cred of type.userCredentialMetadatas; track cred.credential.id) {\n <rlb-list-item class=\"settings-item\">\n <div class=\"row\">\n <div class=\"col-12\">\n <dl class=\"row signed-in-device-grid\">\n <div class=\"col-md-1\">\n <i class=\"bi bi-key\" style=\"font-size: 35px;\"></i>\n </div>\n <div class=\"col-md-5\">\n <dt>\n <span class=\"text-muted\">\n {{ 'core.account.credentials.name' | translate }}\n </span>\n </dt>\n <dd>{{cred.credential.userLabel || cred.credential.type}}</dd>\n </div>\n <div class=\"col-md-4\">\n <dt>\n <span class=\"text-muted\">\n {{'core.account.credentials.created' | translate}}\n </span>\n </dt>\n <dd>{{cred.credential.createdDate | date:'dd:MM:yyyy HH:mm' }}</dd>\n </div>\n <div class=\"col-md-2\">\n <dt><span class=\"text-muted\">{{'core.account.credentials.actions' |\n translate}}</span></dt>\n <dd>\n @if (type.removeable) {\n <button size=\"sm\" rlb-button class=\"w-100\" color=\"danger\"\n (click)=\"removeCredential(type.type, cred.credential.id)\">\n <i class=\"bi bi-trash\"></i>\n {{ 'core.account.credentials.delete' | translate}}\n </button>\n }\n @if (!type.removeable) {\n <button size=\"sm\" rlb-button class=\"w-100\" outline\n (click)=\"updatePassword()\">\n <i class=\"bi bi-trash\"></i>\n {{ 'core.account.credentials.update' | translate}}\n </button>\n }\n </dd>\n </div>\n </dl>\n </div>\n </div>\n </rlb-list-item>\n }\n @if (type.userCredentialMetadatas.length === 0) {\n <rlb-list-item>\n <div class=\"d-flex justify-content-center\">\n <div class=\"settings-text\">\n <h6 class=\"mt-1\">{{ 'core.account.credentials.noCredentials' | translate}}</h6>\n </div>\n </div>\n </rlb-list-item>\n }\n </rlb-list>\n }\n <div class=\"container text-center position-relative mt-5 mb-3\">\n <h3>{{ 'core.account.session.title' | translate}}</h3>\n </div>\n <rlb-list class=\"settings\">\n @for (d of keyCloakDevices; track d.id) {\n <rlb-list-item class=\"settings-item\">\n <div class=\"row mb-2\">\n <div class=\"col-1\">\n <i class=\"bi bi-laptop\" style=\"font-size: 35px;\"></i>\n </div>\n <div class=\"col-11\">\n <span class=\"session-title\">{{d.os}} {{d.osVersion}} - {{d.browser}}</span>\n @if (d.current) {\n <span class=\"badge bg-success ms-3\">\n <span class=\"badge-content\">\n {{ 'core.account.session.current' | translate}}\n </span>\n </span>\n }\n </div>\n </div>\n <div class=\"row\">\n <div class=\"col-12\">\n <dl class=\"row signed-in-device-grid\">\n <div class=\" col-md-1\">\n </div>\n <div class=\" col-md-2\">\n <dt><span class=\"text-muted\">{{ 'core.account.session.ip' | translate }}</span>\n </dt>\n <dd>{{d.ipAddress}}</dd>\n </div>\n <div class=\"col-md-2\">\n <dt>\n <span class=\"text-muted\">\n {{'core.account.session.lastAccess' | translate}}\n </span>\n </dt>\n <dd>{{d.lastAccess*1000 | date:'dd/MM/yyyy - HH:mm'}}</dd>\n </div>\n <div class=\"col-md-2\">\n <dt><span class=\"text-muted\">{{'core.account.session.applications' |\n translate}}</span></dt>\n <dd>{{d.clientslist }} </dd>\n </div>\n <div class=\"col-md-2\">\n <dt><span class=\"text-muted\">{{'core.account.session.started' |\n translate}}</span></dt>\n <dd>{{d.started*1000 | date:'dd/MM/yyyy - HH:mm'}}</dd>\n </div>\n <div class=\"col-md-2\">\n <dt><span class=\"text-muted\">{{'core.account.session.expires' |\n translate}}</span></dt>\n <dd>{{d.expires*1000 | date:'dd/MM/yyyy - HH:mm'}}</dd>\n </div>\n </dl>\n </div>\n </div>\n </rlb-list-item>\n }\n </rlb-list>\n}\n</div>\n", styles: [".settings .settings-item .settings-control{width:40%}\n"], dependencies: [{ kind: "ngmodule", type: RlbAppModule }, { kind: "component", type: i2$1.InputComponent, selector: "rlb-input", inputs: ["disabled", "readonly", "before-text", "placeholder", "type", "size", "name", "max", "min", "step", "date-type", "timezone", "id", "extValidation", "enable-validation"] }, { kind: "component", type: i2$1.ButtonComponent, selector: "button[rlb-button], a[rlb-button]", inputs: ["color", "size", "disabled", "outline", "isLink"] }, { kind: "component", type: i2$1.ListComponent, selector: "rlb-list", inputs: ["disabled", "numbered", "flush", "horizontal"] }, { kind: "component", type: i2$1.ListItemComponent, selector: "rlb-list-item", inputs: ["active", "disabled", "action"] }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: CommonModule }, { kind: "pipe", type: i1$3.TranslatePipe, name: "translate" }, { kind: "pipe", type: i1$6.DatePipe, name: "date" }] }); }
3131
3131
  }
3132
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: UserAccountComponent, decorators: [{
3132
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: UserAccountComponent, decorators: [{
3133
3133
  type: Component,
3134
3134
  args: [{ selector: 'rlb-user-account', imports: [RlbAppModule, CommonModule], template: "<div class=\"container mt-2 mb-5\">\n <div class=\"container text-center position-relative my-3\">\n <h3>{{ 'core.account.title' | translate}}</h3>\n <i role=\"button\" class=\"bi bi-chevron-left position-absolute start-0 top-50 translate-middle-y\"\n style=\"font-size: 25px;font-weight: 600;\" (click)=\"backClicked()\"></i>\n <button rlb-button outline size=\"sm\" class=\"position-absolute end-0 top-50 translate-middle-y\"\n (click)=\"updateProfile()\">\n <i class=\"bi bi-floppy\"></i>\n </button>\n </div>\n <rlb-list class=\"settings\">\n <rlb-list-item class=\"settings-item\">\n <div class=\"d-flex justify-content-between\">\n <div class=\"settings-text\">\n <h6 class=\"mt-1\">{{ 'core.account.username' | translate}}</h6>\n </div>\n <div class=\"settings-control\">\n @if (keyCloakUser) {\n <rlb-input size=\"small\" type=\"text\" [(ngModel)]=\"keyCloakUser.username\" disabled />\n }\n </div>\n </div>\n </rlb-list-item>\n <rlb-list-item class=\"settings-item\">\n <div class=\"d-flex justify-content-between\">\n <div class=\"settings-text\">\n <h6 class=\"mt-1\">{{ 'core.account.email' | translate}}</h6>\n </div>\n <div class=\"settings-control\">\n @if (keyCloakUser) {\n <rlb-input size=\"small\" type=\"text\" [(ngModel)]=\"keyCloakUser.email\" />\n }\n @if (!keyCloakUser) {\n <rlb-input size=\"small\" type=\"text\" readonly />\n }\n </div>\n </div>\n </rlb-list-item>\n <rlb-list-item class=\"settings-item\">\n <div class=\"d-flex justify-content-between\">\n <div class=\"settings-text\">\n <h6 class=\"mt-1\">{{ 'core.account.firstName' | translate}}</h6>\n </div>\n <div class=\"settings-control\">\n @if (keyCloakUser) {\n <rlb-input size=\"small\" type=\"text\" [(ngModel)]=\"keyCloakUser.firstName\" />\n }\n @if (!keyCloakUser) {\n <rlb-input size=\"small\" type=\"text\" readonly />\n }\n </div>\n </div>\n </rlb-list-item>\n <rlb-list-item class=\"settings-item\">\n <div class=\"d-flex justify-content-between\">\n <div class=\"settings-text\">\n <h6 class=\"mt-1\">{{ 'core.account.lastName' | translate}}</h6>\n </div>\n <div class=\"settings-control\">\n @if (keyCloakUser) {\n <rlb-input size=\"small\" type=\"text\" [(ngModel)]=\"keyCloakUser.lastName\" />\n }\n @if (!keyCloakUser) {\n <rlb-input size=\"small\" type=\"text\" readonly />\n }\n </div>\n </div>\n </rlb-list-item>\n <rlb-list-item class=\"settings-item\">\n <div class=\"d-flex justify-content-between\">\n <div class=\"settings-text\">\n <h6 class=\"mt-1\">{{ 'core.account.logout' | translate}}</h6>\n </div>\n <div class=\"settings-control\">\n <button size=\"sm\" rlb-button (click)=\"logout()\" class=\"w-100\">\n <i class=\"bi bi-box-arrow-right\"></i>\n {{ 'core.account.logout' | translate}}</button>\n </div>\n </div>\n </rlb-list-item>\n </rlb-list>\n @if (keyCloakUser) {\n <div class=\"container text-center position-relative mt-5 mb-2\">\n <h3>{{ 'core.account.credentials.title' | translate}}</h3>\n </div>\n @for (type of keycloakCredentials; track type) {\n <div class=\"container position-relative my-3\">\n <h6>{{ ('core.account.credentials.'+type?.type) | translate }}</h6>\n @if (type.type === 'otp') {\n <button rlb-button size=\"sm\"\n class=\"position-absolute end-0 top-50 translate-middle-y\" (click)=\"configureOTP()\">\n {{ 'core.account.credentials.addOTP' | translate}}\n </button>\n }\n </div>\n <rlb-list class=\"settings mb-5\">\n @for (cred of type.userCredentialMetadatas; track cred.credential.id) {\n <rlb-list-item class=\"settings-item\">\n <div class=\"row\">\n <div class=\"col-12\">\n <dl class=\"row signed-in-device-grid\">\n <div class=\"col-md-1\">\n <i class=\"bi bi-key\" style=\"font-size: 35px;\"></i>\n </div>\n <div class=\"col-md-5\">\n <dt>\n <span class=\"text-muted\">\n {{ 'core.account.credentials.name' | translate }}\n </span>\n </dt>\n <dd>{{cred.credential.userLabel || cred.credential.type}}</dd>\n </div>\n <div class=\"col-md-4\">\n <dt>\n <span class=\"text-muted\">\n {{'core.account.credentials.created' | translate}}\n </span>\n </dt>\n <dd>{{cred.credential.createdDate | date:'dd:MM:yyyy HH:mm' }}</dd>\n </div>\n <div class=\"col-md-2\">\n <dt><span class=\"text-muted\">{{'core.account.credentials.actions' |\n translate}}</span></dt>\n <dd>\n @if (type.removeable) {\n <button size=\"sm\" rlb-button class=\"w-100\" color=\"danger\"\n (click)=\"removeCredential(type.type, cred.credential.id)\">\n <i class=\"bi bi-trash\"></i>\n {{ 'core.account.credentials.delete' | translate}}\n </button>\n }\n @if (!type.removeable) {\n <button size=\"sm\" rlb-button class=\"w-100\" outline\n (click)=\"updatePassword()\">\n <i class=\"bi bi-trash\"></i>\n {{ 'core.account.credentials.update' | translate}}\n </button>\n }\n </dd>\n </div>\n </dl>\n </div>\n </div>\n </rlb-list-item>\n }\n @if (type.userCredentialMetadatas.length === 0) {\n <rlb-list-item>\n <div class=\"d-flex justify-content-center\">\n <div class=\"settings-text\">\n <h6 class=\"mt-1\">{{ 'core.account.credentials.noCredentials' | translate}}</h6>\n </div>\n </div>\n </rlb-list-item>\n }\n </rlb-list>\n }\n <div class=\"container text-center position-relative mt-5 mb-3\">\n <h3>{{ 'core.account.session.title' | translate}}</h3>\n </div>\n <rlb-list class=\"settings\">\n @for (d of keyCloakDevices; track d.id) {\n <rlb-list-item class=\"settings-item\">\n <div class=\"row mb-2\">\n <div class=\"col-1\">\n <i class=\"bi bi-laptop\" style=\"font-size: 35px;\"></i>\n </div>\n <div class=\"col-11\">\n <span class=\"session-title\">{{d.os}} {{d.osVersion}} - {{d.browser}}</span>\n @if (d.current) {\n <span class=\"badge bg-success ms-3\">\n <span class=\"badge-content\">\n {{ 'core.account.session.current' | translate}}\n </span>\n </span>\n }\n </div>\n </div>\n <div class=\"row\">\n <div class=\"col-12\">\n <dl class=\"row signed-in-device-grid\">\n <div class=\" col-md-1\">\n </div>\n <div class=\" col-md-2\">\n <dt><span class=\"text-muted\">{{ 'core.account.session.ip' | translate }}</span>\n </dt>\n <dd>{{d.ipAddress}}</dd>\n </div>\n <div class=\"col-md-2\">\n <dt>\n <span class=\"text-muted\">\n {{'core.account.session.lastAccess' | translate}}\n </span>\n </dt>\n <dd>{{d.lastAccess*1000 | date:'dd/MM/yyyy - HH:mm'}}</dd>\n </div>\n <div class=\"col-md-2\">\n <dt><span class=\"text-muted\">{{'core.account.session.applications' |\n translate}}</span></dt>\n <dd>{{d.clientslist }} </dd>\n </div>\n <div class=\"col-md-2\">\n <dt><span class=\"text-muted\">{{'core.account.session.started' |\n translate}}</span></dt>\n <dd>{{d.started*1000 | date:'dd/MM/yyyy - HH:mm'}}</dd>\n </div>\n <div class=\"col-md-2\">\n <dt><span class=\"text-muted\">{{'core.account.session.expires' |\n translate}}</span></dt>\n <dd>{{d.expires*1000 | date:'dd/MM/yyyy - HH:mm'}}</dd>\n </div>\n </dl>\n </div>\n </div>\n </rlb-list-item>\n }\n </rlb-list>\n}\n</div>\n", styles: [".settings .settings-item .settings-control{width:40%}\n"] }]
3135
3135
  }], ctorParameters: () => [{ type: i1$6.Location }, { type: i1$1.Store }, { type: KeycloakProfileService }, { type: i2$1.ModalService }, { type: LanguageService }, { type: AuthenticationService }, { type: i2.Router }] });
@@ -3176,10 +3176,10 @@ class SettingsCoreComponent {
3176
3176
  ok: this.languageService.translate('ok'),
3177
3177
  });
3178
3178
  }
3179
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: SettingsCoreComponent, deps: [{ token: i1$6.Location }, { token: i2$1.ToastService }, { token: LanguageService }, { token: i1$1.Store }], target: i0.ɵɵFactoryTarget.Component }); }
3180
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.4", type: SettingsCoreComponent, isStandalone: true, selector: "rlb-settings-core", ngImport: i0, template: "<div class=\"container mt-2\">\n <div class=\"container text-center position-relative my-3\">\n <h3>{{ 'core.settings.generalTitle' | translate}}</h3>\n <i role=\"button\" class=\"bi bi-chevron-left position-absolute start-0 top-50 translate-middle-y\"\n (click)=\"backClicked()\" style=\"font-size: 25px;font-weight: 600;\"></i>\n </div>\n <rlb-list class=\"settings\">\n <rlb-list-item class=\"settings-item\">\n <div class=\"d-flex justify-content-between\">\n <div class=\"settings-text\">\n <h6 class=\"mt-1\">{{ 'core.settings.generalTheme' | translate}}</h6>\n </div>\n <div class=\"settings-control\">\n <rlb-switch size=\"small\" [(ngModel)]=\"darkMode\" class=\"mt-2\" />\n </div>\n </div>\n </rlb-list-item>\n <rlb-list-item class=\"settings-item\">\n <div class=\"d-flex justify-content-between\">\n <div class=\"settings-text\">\n <h6 class=\"mt-1\">{{ 'core.settings.generalLanguage' | translate}}</h6>\n </div>\n <div class=\"settings-control\">\n <rlb-select size=\"small\" [(ngModel)]=\"currentLanguage\">\n @for (l of languages; track l.value) {\n <rlb-option [value]=\"l.value\">{{l.label}}</rlb-option>\n }\n </rlb-select>\n </div>\n </div>\n </rlb-list-item>\n </rlb-list>\n</div>\n", styles: [".settings .settings-item .settings-control{width:40%}.settings .settings-item .settings-control ::ng-deep rlb-switch .form-check{display:block;margin-left:auto}\n"], dependencies: [{ kind: "ngmodule", type: RlbAppModule }, { kind: "component", type: i2$1.SwitchComponent, selector: "rlb-switch", inputs: ["disabled", "readonly", "size", "id"] }, { kind: "component", type: i2$1.SelectComponent, selector: "rlb-select", inputs: ["placeholder", "size", "disabled", "readonly", "multiple", "display", "id", "enable-validation"] }, { kind: "component", type: i2$1.OptionComponent, selector: "rlb-option", inputs: ["value", "disabled"] }, { kind: "component", type: i2$1.ListComponent, selector: "rlb-list", inputs: ["disabled", "numbered", "flush", "horizontal"] }, { kind: "component", type: i2$1.ListItemComponent, selector: "rlb-list-item", inputs: ["active", "disabled", "action"] }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "pipe", type: i1$3.TranslatePipe, name: "translate" }] }); }
3179
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: SettingsCoreComponent, deps: [{ token: i1$6.Location }, { token: i2$1.ToastService }, { token: LanguageService }, { token: i1$1.Store }], target: i0.ɵɵFactoryTarget.Component }); }
3180
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.5", type: SettingsCoreComponent, isStandalone: true, selector: "rlb-settings-core", ngImport: i0, template: "<div class=\"container mt-2\">\n <div class=\"container text-center position-relative my-3\">\n <h3>{{ 'core.settings.generalTitle' | translate}}</h3>\n <i role=\"button\" class=\"bi bi-chevron-left position-absolute start-0 top-50 translate-middle-y\"\n (click)=\"backClicked()\" style=\"font-size: 25px;font-weight: 600;\"></i>\n </div>\n <rlb-list class=\"settings\">\n <rlb-list-item class=\"settings-item\">\n <div class=\"d-flex justify-content-between\">\n <div class=\"settings-text\">\n <h6 class=\"mt-1\">{{ 'core.settings.generalTheme' | translate}}</h6>\n </div>\n <div class=\"settings-control\">\n <rlb-switch size=\"small\" [(ngModel)]=\"darkMode\" class=\"mt-2\" />\n </div>\n </div>\n </rlb-list-item>\n <rlb-list-item class=\"settings-item\">\n <div class=\"d-flex justify-content-between\">\n <div class=\"settings-text\">\n <h6 class=\"mt-1\">{{ 'core.settings.generalLanguage' | translate}}</h6>\n </div>\n <div class=\"settings-control\">\n <rlb-select size=\"small\" [(ngModel)]=\"currentLanguage\">\n @for (l of languages; track l.value) {\n <rlb-option [value]=\"l.value\">{{l.label}}</rlb-option>\n }\n </rlb-select>\n </div>\n </div>\n </rlb-list-item>\n </rlb-list>\n</div>\n", styles: [".settings .settings-item .settings-control{width:40%}.settings .settings-item .settings-control ::ng-deep rlb-switch .form-check{display:block;margin-left:auto}\n"], dependencies: [{ kind: "ngmodule", type: RlbAppModule }, { kind: "component", type: i2$1.SwitchComponent, selector: "rlb-switch", inputs: ["disabled", "readonly", "size", "id"] }, { kind: "component", type: i2$1.SelectComponent, selector: "rlb-select", inputs: ["placeholder", "size", "disabled", "readonly", "multiple", "display", "id", "enable-validation"] }, { kind: "component", type: i2$1.OptionComponent, selector: "rlb-option", inputs: ["value", "disabled"] }, { kind: "component", type: i2$1.ListComponent, selector: "rlb-list", inputs: ["disabled", "numbered", "flush", "horizontal"] }, { kind: "component", type: i2$1.ListItemComponent, selector: "rlb-list-item", inputs: ["active", "disabled", "action"] }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "pipe", type: i1$3.TranslatePipe, name: "translate" }] }); }
3181
3181
  }
3182
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: SettingsCoreComponent, decorators: [{
3182
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: SettingsCoreComponent, decorators: [{
3183
3183
  type: Component,
3184
3184
  args: [{ selector: 'rlb-settings-core', imports: [RlbAppModule], template: "<div class=\"container mt-2\">\n <div class=\"container text-center position-relative my-3\">\n <h3>{{ 'core.settings.generalTitle' | translate}}</h3>\n <i role=\"button\" class=\"bi bi-chevron-left position-absolute start-0 top-50 translate-middle-y\"\n (click)=\"backClicked()\" style=\"font-size: 25px;font-weight: 600;\"></i>\n </div>\n <rlb-list class=\"settings\">\n <rlb-list-item class=\"settings-item\">\n <div class=\"d-flex justify-content-between\">\n <div class=\"settings-text\">\n <h6 class=\"mt-1\">{{ 'core.settings.generalTheme' | translate}}</h6>\n </div>\n <div class=\"settings-control\">\n <rlb-switch size=\"small\" [(ngModel)]=\"darkMode\" class=\"mt-2\" />\n </div>\n </div>\n </rlb-list-item>\n <rlb-list-item class=\"settings-item\">\n <div class=\"d-flex justify-content-between\">\n <div class=\"settings-text\">\n <h6 class=\"mt-1\">{{ 'core.settings.generalLanguage' | translate}}</h6>\n </div>\n <div class=\"settings-control\">\n <rlb-select size=\"small\" [(ngModel)]=\"currentLanguage\">\n @for (l of languages; track l.value) {\n <rlb-option [value]=\"l.value\">{{l.label}}</rlb-option>\n }\n </rlb-select>\n </div>\n </div>\n </rlb-list-item>\n </rlb-list>\n</div>\n", styles: [".settings .settings-item .settings-control{width:40%}.settings .settings-item .settings-control ::ng-deep rlb-switch .form-check{display:block;margin-left:auto}\n"] }]
3185
3185
  }], ctorParameters: () => [{ type: i1$6.Location }, { type: i2$1.ToastService }, { type: LanguageService }, { type: i1$1.Store }] });
@@ -3206,10 +3206,10 @@ class SettingsListComponent {
3206
3206
  get auth$() {
3207
3207
  return this.authService.isAuthenticated$;
3208
3208
  }
3209
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: SettingsListComponent, deps: [{ token: i1$6.Location }, { token: AppsService }, { token: AuthenticationService }, { token: RLB_CFG_PAGES, optional: true }], target: i0.ɵɵFactoryTarget.Component }); }
3210
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.4", type: SettingsListComponent, isStandalone: true, selector: "rlb-settings-list", ngImport: i0, template: "<div class=\"container mt-2\">\n <div class=\"container text-center position-relative my-3\">\n <h3>{{ 'core.settings.title' | translate}}</h3>\n <i role=\"button\" class=\"bi bi-chevron-left position-absolute start-0 top-50 translate-middle-y\"\n (click)=\"backClicked()\" style=\"font-size: 25px;font-weight: 600;\"></i>\n </div>\n <rlb-list>\n <rlb-list-item-image icon=\"bi bi-gear\" [avatar-size]=\"35\" [line-1]=\" 'core.settings.generalTitle' | translate\"\n [routerLink]=\"'/settings/general'\" [line-2]=\" 'core.settings.generalDescription' | translate\">\n </rlb-list-item-image>\n @for (app of apps; track app.id) {\n <ng-container ngProjectAs=\"rlb-list-item-image\">\n @if (app.settings) {\n <ng-container ngProjectAs=\"rlb-list-item-image\">\n <rlb-list-item-image [icon]=\"app.settings.icon\" [avatar-size]=\"35\"\n [line-1]=\"(app.settings.title | translate) + (app.data?.appName ? ' - ' + app.data?.appName : '')\"\n [disabled]=\"!app.enabled && (app.settings.auth && !(auth$ | async))\"\n [line-2]=\"app.settings.description | translate\" (click)=\"selectApp(app)\">\n </rlb-list-item-image>\n </ng-container>\n }\n </ng-container>\n }\n </rlb-list>\n\n @if (pages?.['status']?.path || pages?.['logger']?.path) {\n <rlb-list class=\"mt-5\">\n @if (pages?.['status']?.path) {\n <rlb-list-item-image icon=\"bi bi-check2-circle\" [avatar-size]=\"18\"\n [line-1]=\"'core.settings.status' | translate\" [routerLink]=\"'/status'\">\n </rlb-list-item-image>\n }\n @if (pages?.['logger']?.path) {\n <rlb-list-item-image icon=\"bi bi-file-text\" [avatar-size]=\"18\"\n [line-1]=\"'core.settings.logger' | translate\" [routerLink]=\"'/logger'\">\n </rlb-list-item-image>\n }\n </rlb-list>\n }\n\n @if (pages?.['privacy']?.path || pages?.['cookies']?.path || pages?.['terms']?.path || pages?.['support']?.path) {\n <rlb-list class=\"mt-4\"\n >\n @if (pages?.['privacy']?.path) {\n <rlb-list-item-image icon=\"bi bi-shield-check\" [avatar-size]=\"18\"\n [line-1]=\"'core.settings.privacy' | translate\" [routerLink]=\"'/privacy'\">\n </rlb-list-item-image>\n }\n @if (pages?.['cookies']?.path) {\n <rlb-list-item-image icon=\"bi bi bi-cookie\" [avatar-size]=\"18\"\n [line-1]=\"'core.settings.cookies' | translate\" [routerLink]=\"'/cookies'\">\n </rlb-list-item-image>\n }\n @if (pages?.['terms']?.path) {\n <rlb-list-item-image icon=\"bi bi-vector-pen\" [avatar-size]=\"18\"\n [line-1]=\"'core.settings.legal' | translate\" [routerLink]=\"'/terms'\">\n </rlb-list-item-image>\n }\n @if (pages?.['support']?.path) {\n <rlb-list-item-image icon=\"bi bi-chat-quote\" [avatar-size]=\"18\"\n [line-1]=\" 'core.settings.support' | translate\" [routerLink]=\"'/support'\">\n </rlb-list-item-image>\n }\n </rlb-list>\n }\n</div>\n", styles: [".settings .settings-item .settings-control{width:40%}\n"], dependencies: [{ kind: "ngmodule", type: RlbAppModule }, { kind: "component", type: i2$1.ListComponent, selector: "rlb-list", inputs: ["disabled", "numbered", "flush", "horizontal"] }, { kind: "component", type: i2$1.ListItemImageComponent, selector: "rlb-list-item-image", inputs: ["active", "disabled", "counter-empty", "counter-pill", "counter-border", "avatar-size", "username", "line-1", "line-2", "avatar", "counter", "counter-color", "icon"] }, { kind: "directive", type: i2.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "ngmodule", type: CommonModule }, { kind: "pipe", type: i1$3.TranslatePipe, name: "translate" }, { kind: "pipe", type: i1$6.AsyncPipe, name: "async" }] }); }
3209
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: SettingsListComponent, deps: [{ token: i1$6.Location }, { token: AppsService }, { token: AuthenticationService }, { token: RLB_CFG_PAGES, optional: true }], target: i0.ɵɵFactoryTarget.Component }); }
3210
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.5", type: SettingsListComponent, isStandalone: true, selector: "rlb-settings-list", ngImport: i0, template: "<div class=\"container mt-2\">\n <div class=\"container text-center position-relative my-3\">\n <h3>{{ 'core.settings.title' | translate}}</h3>\n <i role=\"button\" class=\"bi bi-chevron-left position-absolute start-0 top-50 translate-middle-y\"\n (click)=\"backClicked()\" style=\"font-size: 25px;font-weight: 600;\"></i>\n </div>\n <rlb-list>\n <rlb-list-item-image icon=\"bi bi-gear\" [avatar-size]=\"35\" [line-1]=\" 'core.settings.generalTitle' | translate\"\n [routerLink]=\"'/settings/general'\" [line-2]=\" 'core.settings.generalDescription' | translate\">\n </rlb-list-item-image>\n @for (app of apps; track app.id) {\n <ng-container ngProjectAs=\"rlb-list-item-image\">\n @if (app.settings) {\n <ng-container ngProjectAs=\"rlb-list-item-image\">\n <rlb-list-item-image [icon]=\"app.settings.icon\" [avatar-size]=\"35\"\n [line-1]=\"(app.settings.title | translate) + (app.data?.appName ? ' - ' + app.data?.appName : '')\"\n [disabled]=\"!app.enabled && (app.settings.auth && !(auth$ | async))\"\n [line-2]=\"app.settings.description | translate\" (click)=\"selectApp(app)\">\n </rlb-list-item-image>\n </ng-container>\n }\n </ng-container>\n }\n </rlb-list>\n\n @if (pages?.['status']?.path || pages?.['logger']?.path) {\n <rlb-list class=\"mt-5\">\n @if (pages?.['status']?.path) {\n <rlb-list-item-image icon=\"bi bi-check2-circle\" [avatar-size]=\"18\"\n [line-1]=\"'core.settings.status' | translate\" [routerLink]=\"'/status'\">\n </rlb-list-item-image>\n }\n @if (pages?.['logger']?.path) {\n <rlb-list-item-image icon=\"bi bi-file-text\" [avatar-size]=\"18\"\n [line-1]=\"'core.settings.logger' | translate\" [routerLink]=\"'/logger'\">\n </rlb-list-item-image>\n }\n </rlb-list>\n }\n\n @if (pages?.['privacy']?.path || pages?.['cookies']?.path || pages?.['terms']?.path || pages?.['support']?.path) {\n <rlb-list class=\"mt-4\"\n >\n @if (pages?.['privacy']?.path) {\n <rlb-list-item-image icon=\"bi bi-shield-check\" [avatar-size]=\"18\"\n [line-1]=\"'core.settings.privacy' | translate\" [routerLink]=\"'/privacy'\">\n </rlb-list-item-image>\n }\n @if (pages?.['cookies']?.path) {\n <rlb-list-item-image icon=\"bi bi bi-cookie\" [avatar-size]=\"18\"\n [line-1]=\"'core.settings.cookies' | translate\" [routerLink]=\"'/cookies'\">\n </rlb-list-item-image>\n }\n @if (pages?.['terms']?.path) {\n <rlb-list-item-image icon=\"bi bi-vector-pen\" [avatar-size]=\"18\"\n [line-1]=\"'core.settings.legal' | translate\" [routerLink]=\"'/terms'\">\n </rlb-list-item-image>\n }\n @if (pages?.['support']?.path) {\n <rlb-list-item-image icon=\"bi bi-chat-quote\" [avatar-size]=\"18\"\n [line-1]=\" 'core.settings.support' | translate\" [routerLink]=\"'/support'\">\n </rlb-list-item-image>\n }\n </rlb-list>\n }\n</div>\n", styles: [".settings .settings-item .settings-control{width:40%}\n"], dependencies: [{ kind: "ngmodule", type: RlbAppModule }, { kind: "component", type: i2$1.ListComponent, selector: "rlb-list", inputs: ["disabled", "numbered", "flush", "horizontal"] }, { kind: "component", type: i2$1.ListItemImageComponent, selector: "rlb-list-item-image", inputs: ["active", "disabled", "counter-empty", "counter-pill", "counter-border", "avatar-size", "username", "line-1", "line-2", "avatar", "counter", "counter-color", "icon"] }, { kind: "directive", type: i2.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "ngmodule", type: CommonModule }, { kind: "pipe", type: i1$3.TranslatePipe, name: "translate" }, { kind: "pipe", type: i1$6.AsyncPipe, name: "async" }] }); }
3211
3211
  }
3212
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: SettingsListComponent, decorators: [{
3212
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: SettingsListComponent, decorators: [{
3213
3213
  type: Component,
3214
3214
  args: [{ selector: 'rlb-settings-list', imports: [RlbAppModule, CommonModule], template: "<div class=\"container mt-2\">\n <div class=\"container text-center position-relative my-3\">\n <h3>{{ 'core.settings.title' | translate}}</h3>\n <i role=\"button\" class=\"bi bi-chevron-left position-absolute start-0 top-50 translate-middle-y\"\n (click)=\"backClicked()\" style=\"font-size: 25px;font-weight: 600;\"></i>\n </div>\n <rlb-list>\n <rlb-list-item-image icon=\"bi bi-gear\" [avatar-size]=\"35\" [line-1]=\" 'core.settings.generalTitle' | translate\"\n [routerLink]=\"'/settings/general'\" [line-2]=\" 'core.settings.generalDescription' | translate\">\n </rlb-list-item-image>\n @for (app of apps; track app.id) {\n <ng-container ngProjectAs=\"rlb-list-item-image\">\n @if (app.settings) {\n <ng-container ngProjectAs=\"rlb-list-item-image\">\n <rlb-list-item-image [icon]=\"app.settings.icon\" [avatar-size]=\"35\"\n [line-1]=\"(app.settings.title | translate) + (app.data?.appName ? ' - ' + app.data?.appName : '')\"\n [disabled]=\"!app.enabled && (app.settings.auth && !(auth$ | async))\"\n [line-2]=\"app.settings.description | translate\" (click)=\"selectApp(app)\">\n </rlb-list-item-image>\n </ng-container>\n }\n </ng-container>\n }\n </rlb-list>\n\n @if (pages?.['status']?.path || pages?.['logger']?.path) {\n <rlb-list class=\"mt-5\">\n @if (pages?.['status']?.path) {\n <rlb-list-item-image icon=\"bi bi-check2-circle\" [avatar-size]=\"18\"\n [line-1]=\"'core.settings.status' | translate\" [routerLink]=\"'/status'\">\n </rlb-list-item-image>\n }\n @if (pages?.['logger']?.path) {\n <rlb-list-item-image icon=\"bi bi-file-text\" [avatar-size]=\"18\"\n [line-1]=\"'core.settings.logger' | translate\" [routerLink]=\"'/logger'\">\n </rlb-list-item-image>\n }\n </rlb-list>\n }\n\n @if (pages?.['privacy']?.path || pages?.['cookies']?.path || pages?.['terms']?.path || pages?.['support']?.path) {\n <rlb-list class=\"mt-4\"\n >\n @if (pages?.['privacy']?.path) {\n <rlb-list-item-image icon=\"bi bi-shield-check\" [avatar-size]=\"18\"\n [line-1]=\"'core.settings.privacy' | translate\" [routerLink]=\"'/privacy'\">\n </rlb-list-item-image>\n }\n @if (pages?.['cookies']?.path) {\n <rlb-list-item-image icon=\"bi bi bi-cookie\" [avatar-size]=\"18\"\n [line-1]=\"'core.settings.cookies' | translate\" [routerLink]=\"'/cookies'\">\n </rlb-list-item-image>\n }\n @if (pages?.['terms']?.path) {\n <rlb-list-item-image icon=\"bi bi-vector-pen\" [avatar-size]=\"18\"\n [line-1]=\"'core.settings.legal' | translate\" [routerLink]=\"'/terms'\">\n </rlb-list-item-image>\n }\n @if (pages?.['support']?.path) {\n <rlb-list-item-image icon=\"bi bi-chat-quote\" [avatar-size]=\"18\"\n [line-1]=\" 'core.settings.support' | translate\" [routerLink]=\"'/support'\">\n </rlb-list-item-image>\n }\n </rlb-list>\n }\n</div>\n", styles: [".settings .settings-item .settings-control{width:40%}\n"] }]
3215
3215
  }], ctorParameters: () => [{ type: i1$6.Location }, { type: AppsService }, { type: AuthenticationService }, { type: undefined, decorators: [{
@@ -3294,10 +3294,10 @@ class AppContextEffects {
3294
3294
  }
3295
3295
  }
3296
3296
  }
3297
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: AppContextEffects, deps: [{ token: i1$8.Actions }, { token: LanguageService }, { token: i0.RendererFactory2 }, { token: AppStorageService }, { token: i1$1.Store }, { token: i2.Router }, { token: AppLoggerService }, { token: RLB_APPS, optional: true }], target: i0.ɵɵFactoryTarget.Injectable }); }
3298
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: AppContextEffects }); }
3297
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: AppContextEffects, deps: [{ token: i1$8.Actions }, { token: LanguageService }, { token: i0.RendererFactory2 }, { token: AppStorageService }, { token: i1$1.Store }, { token: i2.Router }, { token: AppLoggerService }, { token: RLB_APPS, optional: true }], target: i0.ɵɵFactoryTarget.Injectable }); }
3298
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: AppContextEffects }); }
3299
3299
  }
3300
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: AppContextEffects, decorators: [{
3300
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: AppContextEffects, decorators: [{
3301
3301
  type: Injectable
3302
3302
  }], ctorParameters: () => [{ type: i1$8.Actions }, { type: LanguageService }, { type: i0.RendererFactory2 }, { type: AppStorageService }, { type: i1$1.Store }, { type: i2.Router }, { type: AppLoggerService }, { type: undefined, decorators: [{
3303
3303
  type: Inject,
@@ -3349,10 +3349,10 @@ class AuthEffects {
3349
3349
  this.logger = this.loggerService.for(this.constructor.name);
3350
3350
  this.logger.log(`Initialized AuthEffects}`);
3351
3351
  }
3352
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: AuthEffects, deps: [{ token: i1$8.Actions }, { token: AuthenticationService }, { token: AppLoggerService }, { token: RLB_CFG_AUTH, optional: true }], target: i0.ɵɵFactoryTarget.Injectable }); }
3353
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: AuthEffects }); }
3352
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: AuthEffects, deps: [{ token: i1$8.Actions }, { token: AuthenticationService }, { token: AppLoggerService }, { token: RLB_CFG_AUTH, optional: true }], target: i0.ɵɵFactoryTarget.Injectable }); }
3353
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: AuthEffects }); }
3354
3354
  }
3355
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: AuthEffects, decorators: [{
3355
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: AuthEffects, decorators: [{
3356
3356
  type: Injectable
3357
3357
  }], ctorParameters: () => [{ type: i1$8.Actions }, { type: AuthenticationService }, { type: AppLoggerService }, { type: undefined, decorators: [{
3358
3358
  type: Inject,
@@ -3407,8 +3407,8 @@ class ToastComponent {
3407
3407
  this.data = input.required(...(ngDevMode ? [{ debugName: "data" }] : /* istanbul ignore next */ []));
3408
3408
  this.valid = true;
3409
3409
  }
3410
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: ToastComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
3411
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.4", type: ToastComponent, isStandalone: true, selector: "ng-component", inputs: { data: { classPropertyName: "data", publicName: "data", isSignal: true, isRequired: true, transformFunction: null } }, hostDirectives: [{ directive: i2$1.ToastDirective, inputs: ["id", "id", "data-instance", "data-instance", "data-options", "data-options"] }], ngImport: i0, template: `
3410
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: ToastComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
3411
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.5", type: ToastComponent, isStandalone: true, selector: "ng-component", inputs: { data: { classPropertyName: "data", publicName: "data", isSignal: true, isRequired: true, transformFunction: null } }, hostDirectives: [{ directive: i2$1.ToastDirective, inputs: ["id", "id", "data-instance", "data-instance", "data-options", "data-options"] }], ngImport: i0, template: `
3412
3412
  <div class="toast-header">
3413
3413
  <strong class="me-auto">
3414
3414
  <svg
@@ -3441,7 +3441,7 @@ class ToastComponent {
3441
3441
  <div class="toast-body">{{ data().content }}</div>
3442
3442
  `, isInline: true, dependencies: [{ kind: "ngmodule", type: RlbAppModule }] }); }
3443
3443
  }
3444
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: ToastComponent, decorators: [{
3444
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: ToastComponent, decorators: [{
3445
3445
  type: Component,
3446
3446
  args: [{
3447
3447
  imports: [RlbAppModule],