@wolkabout/commons 0.3.5 → 0.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/fesm2022/wolkabout-commons.mjs +395 -362
- package/fesm2022/wolkabout-commons.mjs.map +1 -1
- package/package.json +10 -10
- package/types/wolkabout-commons.d.ts +22 -3
|
@@ -52,7 +52,7 @@ import * as i4$5 from '@angular/material/tabs';
|
|
|
52
52
|
import { MatTabsModule } from '@angular/material/tabs';
|
|
53
53
|
import { DragDropModule } from '@angular/cdk/drag-drop';
|
|
54
54
|
import * as i0 from '@angular/core';
|
|
55
|
-
import { NgModule, InjectionToken, inject, Injectable, DOCUMENT, Inject, Input, Directive, forwardRef, HostListener, PLATFORM_ID, Pipe, signal, TemplateRef, ViewChild, ContentChild, Optional, Self, Component, input, computed, untracked, viewChild, afterNextRender, effect, output, afterRenderEffect, contentChild } from '@angular/core';
|
|
55
|
+
import { NgModule, InjectionToken, inject, Injectable, DOCUMENT, Inject, Input, Directive, forwardRef, HostListener, PLATFORM_ID, Pipe, signal, TemplateRef, ViewChild, ContentChild, Optional, Self, Component, input, computed, untracked, viewChild, afterNextRender, effect, output, afterRenderEffect, contentChild, ChangeDetectionStrategy } from '@angular/core';
|
|
56
56
|
import { BehaviorSubject, catchError, of, switchMap, EMPTY, tap, filter, map, combineLatestWith, take, from, concatMap, first, forkJoin, distinctUntilChanged, fromEvent, withLatestFrom, shareReplay, merge, Subject, takeUntil, combineLatest } from 'rxjs';
|
|
57
57
|
import { jwtDecode } from 'jwt-decode';
|
|
58
58
|
import { loadRemoteModule } from '@angular-architects/native-federation';
|
|
@@ -115,8 +115,8 @@ const shared = [
|
|
|
115
115
|
DragDropModule
|
|
116
116
|
];
|
|
117
117
|
class SharedModule {
|
|
118
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.
|
|
119
|
-
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.2.
|
|
118
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.13", ngImport: i0, type: SharedModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
119
|
+
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.2.13", ngImport: i0, type: SharedModule, imports: [MatButtonModule,
|
|
120
120
|
MatCheckboxModule,
|
|
121
121
|
MatToolbarModule,
|
|
122
122
|
MatMenuModule,
|
|
@@ -183,7 +183,7 @@ class SharedModule {
|
|
|
183
183
|
RouterOutlet,
|
|
184
184
|
RouterLinkActive,
|
|
185
185
|
DragDropModule] });
|
|
186
|
-
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.2.
|
|
186
|
+
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.2.13", ngImport: i0, type: SharedModule, imports: [MatButtonModule,
|
|
187
187
|
MatCheckboxModule,
|
|
188
188
|
MatToolbarModule,
|
|
189
189
|
MatMenuModule,
|
|
@@ -245,7 +245,7 @@ class SharedModule {
|
|
|
245
245
|
CommonModule,
|
|
246
246
|
DragDropModule] });
|
|
247
247
|
}
|
|
248
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.
|
|
248
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.13", ngImport: i0, type: SharedModule, decorators: [{
|
|
249
249
|
type: NgModule,
|
|
250
250
|
args: [{
|
|
251
251
|
imports: shared,
|
|
@@ -413,10 +413,10 @@ class AuthenticationService {
|
|
|
413
413
|
const payload = jwtDecode(token);
|
|
414
414
|
return payload[claim];
|
|
415
415
|
}
|
|
416
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.
|
|
417
|
-
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.
|
|
416
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.13", ngImport: i0, type: AuthenticationService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
417
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.13", ngImport: i0, type: AuthenticationService, providedIn: 'root' });
|
|
418
418
|
}
|
|
419
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.
|
|
419
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.13", ngImport: i0, type: AuthenticationService, decorators: [{
|
|
420
420
|
type: Injectable,
|
|
421
421
|
args: [{
|
|
422
422
|
providedIn: 'root'
|
|
@@ -455,10 +455,10 @@ class PermissionsService {
|
|
|
455
455
|
const everythingInFeature = moduleFeaturePermission[0] + '.' + moduleFeaturePermission[1] + '.*';
|
|
456
456
|
return allPermissions.some((grantedPermission) => grantedPermission === '*' || grantedPermission === everythingInModule || grantedPermission === everythingInFeature || grantedPermission === permission);
|
|
457
457
|
}
|
|
458
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.
|
|
459
|
-
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.
|
|
458
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.13", ngImport: i0, type: PermissionsService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
459
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.13", ngImport: i0, type: PermissionsService, providedIn: 'root' });
|
|
460
460
|
}
|
|
461
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.
|
|
461
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.13", ngImport: i0, type: PermissionsService, decorators: [{
|
|
462
462
|
type: Injectable,
|
|
463
463
|
args: [{
|
|
464
464
|
providedIn: 'root'
|
|
@@ -550,10 +550,10 @@ class AssetManager {
|
|
|
550
550
|
setAssetLocation(featureSet, host) {
|
|
551
551
|
this.assetLocations[featureSet] = host;
|
|
552
552
|
}
|
|
553
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.
|
|
554
|
-
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.
|
|
553
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.13", ngImport: i0, type: AssetManager, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
554
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.13", ngImport: i0, type: AssetManager, providedIn: 'root' });
|
|
555
555
|
}
|
|
556
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.
|
|
556
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.13", ngImport: i0, type: AssetManager, decorators: [{
|
|
557
557
|
type: Injectable,
|
|
558
558
|
args: [{
|
|
559
559
|
providedIn: 'root'
|
|
@@ -566,10 +566,10 @@ class IconRegistryService {
|
|
|
566
566
|
registerIcon(name, path) {
|
|
567
567
|
this.matIconRegistry.addSvgIcon(name, this.domSanitizer.bypassSecurityTrustResourceUrl(path));
|
|
568
568
|
}
|
|
569
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.
|
|
570
|
-
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.
|
|
569
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.13", ngImport: i0, type: IconRegistryService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
570
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.13", ngImport: i0, type: IconRegistryService, providedIn: 'root' });
|
|
571
571
|
}
|
|
572
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.
|
|
572
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.13", ngImport: i0, type: IconRegistryService, decorators: [{
|
|
573
573
|
type: Injectable,
|
|
574
574
|
args: [{ providedIn: 'root' }]
|
|
575
575
|
}] });
|
|
@@ -618,10 +618,10 @@ class FeatureRegistry {
|
|
|
618
618
|
get features$() {
|
|
619
619
|
return this._features$.asObservable();
|
|
620
620
|
}
|
|
621
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.
|
|
622
|
-
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.
|
|
621
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.13", ngImport: i0, type: FeatureRegistry, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
622
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.13", ngImport: i0, type: FeatureRegistry, providedIn: 'root' });
|
|
623
623
|
}
|
|
624
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.
|
|
624
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.13", ngImport: i0, type: FeatureRegistry, decorators: [{
|
|
625
625
|
type: Injectable,
|
|
626
626
|
args: [{ providedIn: 'root' }]
|
|
627
627
|
}] });
|
|
@@ -666,10 +666,10 @@ class MapsLoaderService {
|
|
|
666
666
|
}
|
|
667
667
|
});
|
|
668
668
|
}
|
|
669
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.
|
|
670
|
-
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.
|
|
669
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.13", ngImport: i0, type: MapsLoaderService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
670
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.13", ngImport: i0, type: MapsLoaderService, providedIn: 'root' });
|
|
671
671
|
}
|
|
672
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.
|
|
672
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.13", ngImport: i0, type: MapsLoaderService, decorators: [{
|
|
673
673
|
type: Injectable,
|
|
674
674
|
args: [{ providedIn: 'root' }]
|
|
675
675
|
}], ctorParameters: () => [] });
|
|
@@ -702,10 +702,10 @@ class NotificationService {
|
|
|
702
702
|
showNotification(panelClass, message, duration) {
|
|
703
703
|
this.snackBar.open(message, '', { duration, panelClass });
|
|
704
704
|
}
|
|
705
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.
|
|
706
|
-
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.
|
|
705
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.13", ngImport: i0, type: NotificationService, deps: [{ token: i1.MatSnackBar }, { token: i1$1.TranslateService }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
706
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.13", ngImport: i0, type: NotificationService, providedIn: 'root' });
|
|
707
707
|
}
|
|
708
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.
|
|
708
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.13", ngImport: i0, type: NotificationService, decorators: [{
|
|
709
709
|
type: Injectable,
|
|
710
710
|
args: [{ providedIn: 'root' }]
|
|
711
711
|
}], ctorParameters: () => [{ type: i1.MatSnackBar }, { type: i1$1.TranslateService }] });
|
|
@@ -1512,10 +1512,10 @@ class TenantPropertiesService {
|
|
|
1512
1512
|
setTimeZone(timeZone) {
|
|
1513
1513
|
this.timezone = timeZone;
|
|
1514
1514
|
}
|
|
1515
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.
|
|
1516
|
-
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.
|
|
1515
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.13", ngImport: i0, type: TenantPropertiesService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
1516
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.13", ngImport: i0, type: TenantPropertiesService, providedIn: 'root' });
|
|
1517
1517
|
}
|
|
1518
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.
|
|
1518
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.13", ngImport: i0, type: TenantPropertiesService, decorators: [{
|
|
1519
1519
|
type: Injectable,
|
|
1520
1520
|
args: [{
|
|
1521
1521
|
providedIn: 'root'
|
|
@@ -2465,10 +2465,10 @@ class ThemeService {
|
|
|
2465
2465
|
value: hex,
|
|
2466
2466
|
};
|
|
2467
2467
|
}
|
|
2468
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.
|
|
2469
|
-
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.
|
|
2468
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.13", ngImport: i0, type: ThemeService, deps: [{ token: DOCUMENT }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
2469
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.13", ngImport: i0, type: ThemeService, providedIn: 'root' });
|
|
2470
2470
|
}
|
|
2471
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.
|
|
2471
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.13", ngImport: i0, type: ThemeService, decorators: [{
|
|
2472
2472
|
type: Injectable,
|
|
2473
2473
|
args: [{
|
|
2474
2474
|
providedIn: 'root'
|
|
@@ -2509,10 +2509,10 @@ class FullscreenService {
|
|
|
2509
2509
|
this._fullScreenEnabled$.next(!this._fullScreenEnabled$.value);
|
|
2510
2510
|
this._fullScreenEnabled$.value ? document.documentElement.requestFullscreen() : document.exitFullscreen();
|
|
2511
2511
|
}
|
|
2512
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.
|
|
2513
|
-
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.
|
|
2512
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.13", ngImport: i0, type: FullscreenService, deps: [{ token: i1$2.Router }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
2513
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.13", ngImport: i0, type: FullscreenService, providedIn: 'root' });
|
|
2514
2514
|
}
|
|
2515
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.
|
|
2515
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.13", ngImport: i0, type: FullscreenService, decorators: [{
|
|
2516
2516
|
type: Injectable,
|
|
2517
2517
|
args: [{
|
|
2518
2518
|
providedIn: 'root',
|
|
@@ -2550,10 +2550,10 @@ class NavigationPersistenceService {
|
|
|
2550
2550
|
this.registeredKeys.forEach(key => localStorage.removeItem(key));
|
|
2551
2551
|
this.registeredKeys.clear();
|
|
2552
2552
|
}
|
|
2553
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.
|
|
2554
|
-
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.
|
|
2553
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.13", ngImport: i0, type: NavigationPersistenceService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
2554
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.13", ngImport: i0, type: NavigationPersistenceService, providedIn: 'root' });
|
|
2555
2555
|
}
|
|
2556
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.
|
|
2556
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.13", ngImport: i0, type: NavigationPersistenceService, decorators: [{
|
|
2557
2557
|
type: Injectable,
|
|
2558
2558
|
args: [{
|
|
2559
2559
|
providedIn: 'root'
|
|
@@ -2573,10 +2573,10 @@ class LoadingIndicatorDirective {
|
|
|
2573
2573
|
constructor(element) {
|
|
2574
2574
|
this.element = element;
|
|
2575
2575
|
}
|
|
2576
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.
|
|
2577
|
-
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.
|
|
2576
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.13", ngImport: i0, type: LoadingIndicatorDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
|
|
2577
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.13", type: LoadingIndicatorDirective, isStandalone: true, selector: "[appLoadingIndicator]", inputs: { appLoadingShimmer: ["appLoadingIndicator", "appLoadingShimmer"] }, ngImport: i0 });
|
|
2578
2578
|
}
|
|
2579
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.
|
|
2579
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.13", ngImport: i0, type: LoadingIndicatorDirective, decorators: [{
|
|
2580
2580
|
type: Directive,
|
|
2581
2581
|
args: [{
|
|
2582
2582
|
selector: '[appLoadingIndicator]',
|
|
@@ -2681,8 +2681,8 @@ class LocalizedNumericInputDirective {
|
|
|
2681
2681
|
//final format
|
|
2682
2682
|
return sign + parsedInt + (parsedDec || endsInDecMark ? '.' : '') + parsedDec;
|
|
2683
2683
|
}
|
|
2684
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.
|
|
2685
|
-
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.
|
|
2684
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.13", ngImport: i0, type: LocalizedNumericInputDirective, deps: [{ token: i0.ElementRef }, { token: TenantPropertiesService }], target: i0.ɵɵFactoryTarget.Directive });
|
|
2685
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.13", type: LocalizedNumericInputDirective, isStandalone: true, selector: "input[wolkaboutLocalizedNumericInput]", host: { listeners: { "input": "input($event.target.value)", "blur": "onBlur()", "focus": "onFocus()" } }, providers: [
|
|
2686
2686
|
{ provide: MAT_INPUT_VALUE_ACCESSOR, useExisting: LocalizedNumericInputDirective },
|
|
2687
2687
|
{
|
|
2688
2688
|
provide: NG_VALUE_ACCESSOR,
|
|
@@ -2691,7 +2691,7 @@ class LocalizedNumericInputDirective {
|
|
|
2691
2691
|
},
|
|
2692
2692
|
], ngImport: i0 });
|
|
2693
2693
|
}
|
|
2694
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.
|
|
2694
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.13", ngImport: i0, type: LocalizedNumericInputDirective, decorators: [{
|
|
2695
2695
|
type: Directive,
|
|
2696
2696
|
args: [{
|
|
2697
2697
|
selector: 'input[wolkaboutLocalizedNumericInput]',
|
|
@@ -2804,10 +2804,10 @@ class MessageTooltipDirective {
|
|
|
2804
2804
|
clearTimeout(this.showTimeout);
|
|
2805
2805
|
this.overlayRef?.dispose();
|
|
2806
2806
|
}
|
|
2807
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.
|
|
2808
|
-
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.
|
|
2807
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.13", ngImport: i0, type: MessageTooltipDirective, deps: [{ token: i1$3.Overlay }, { token: i0.ElementRef }, { token: i0.ViewContainerRef }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Directive });
|
|
2808
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.13", type: MessageTooltipDirective, isStandalone: true, selector: "[appMessageTooltip]", inputs: { tooltipTemplate: ["appMessageTooltip", "tooltipTemplate"] }, host: { listeners: { "mouseenter": "show()", "mouseleave": "hide()" } }, ngImport: i0 });
|
|
2809
2809
|
}
|
|
2810
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.
|
|
2810
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.13", ngImport: i0, type: MessageTooltipDirective, decorators: [{
|
|
2811
2811
|
type: Directive,
|
|
2812
2812
|
args: [{
|
|
2813
2813
|
selector: '[appMessageTooltip]',
|
|
@@ -2847,10 +2847,10 @@ class OverflowClassDirective {
|
|
|
2847
2847
|
}
|
|
2848
2848
|
});
|
|
2849
2849
|
}
|
|
2850
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.
|
|
2851
|
-
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.
|
|
2850
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.13", ngImport: i0, type: OverflowClassDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
|
|
2851
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.13", type: OverflowClassDirective, isStandalone: true, selector: "[overflowClass]", inputs: { overflowClass: "overflowClass" }, ngImport: i0 });
|
|
2852
2852
|
}
|
|
2853
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.
|
|
2853
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.13", ngImport: i0, type: OverflowClassDirective, decorators: [{
|
|
2854
2854
|
type: Directive,
|
|
2855
2855
|
args: [{
|
|
2856
2856
|
selector: '[overflowClass]',
|
|
@@ -2883,10 +2883,10 @@ class RequiresAllGlobalOrAssetPermissionsDirective {
|
|
|
2883
2883
|
this.viewContainer = viewContainer;
|
|
2884
2884
|
this.permissions = permissions;
|
|
2885
2885
|
}
|
|
2886
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.
|
|
2887
|
-
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.
|
|
2886
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.13", ngImport: i0, type: RequiresAllGlobalOrAssetPermissionsDirective, deps: [{ token: i0.TemplateRef }, { token: i0.ViewContainerRef }, { token: PermissionsService }], target: i0.ɵɵFactoryTarget.Directive });
|
|
2887
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.13", type: RequiresAllGlobalOrAssetPermissionsDirective, isStandalone: true, selector: "[appRequiresAllGlobalOrAssetPermissions]", inputs: { appRequiresAllGlobalOrAssetPermissions: "appRequiresAllGlobalOrAssetPermissions" }, ngImport: i0 });
|
|
2888
2888
|
}
|
|
2889
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.
|
|
2889
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.13", ngImport: i0, type: RequiresAllGlobalOrAssetPermissionsDirective, decorators: [{
|
|
2890
2890
|
type: Directive,
|
|
2891
2891
|
args: [{
|
|
2892
2892
|
selector: '[appRequiresAllGlobalOrAssetPermissions]'
|
|
@@ -2918,10 +2918,10 @@ class RequiresAllPermissionDirective {
|
|
|
2918
2918
|
this.viewContainer = viewContainer;
|
|
2919
2919
|
this.permissions = permissions;
|
|
2920
2920
|
}
|
|
2921
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.
|
|
2922
|
-
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.
|
|
2921
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.13", ngImport: i0, type: RequiresAllPermissionDirective, deps: [{ token: i0.TemplateRef }, { token: i0.ViewContainerRef }, { token: PermissionsService }], target: i0.ɵɵFactoryTarget.Directive });
|
|
2922
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.13", type: RequiresAllPermissionDirective, isStandalone: true, selector: "[appRequiresAllPermissions]", inputs: { appRequiresAllPermissions: "appRequiresAllPermissions" }, ngImport: i0 });
|
|
2923
2923
|
}
|
|
2924
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.
|
|
2924
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.13", ngImport: i0, type: RequiresAllPermissionDirective, decorators: [{
|
|
2925
2925
|
type: Directive,
|
|
2926
2926
|
args: [{
|
|
2927
2927
|
selector: '[appRequiresAllPermissions]'
|
|
@@ -2953,10 +2953,10 @@ class RequiresGlobalOrAsserPermissionDirective {
|
|
|
2953
2953
|
this.viewContainer = viewContainer;
|
|
2954
2954
|
this.permissions = permissions;
|
|
2955
2955
|
}
|
|
2956
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.
|
|
2957
|
-
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.
|
|
2956
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.13", ngImport: i0, type: RequiresGlobalOrAsserPermissionDirective, deps: [{ token: i0.TemplateRef }, { token: i0.ViewContainerRef }, { token: PermissionsService }], target: i0.ɵɵFactoryTarget.Directive });
|
|
2957
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.13", type: RequiresGlobalOrAsserPermissionDirective, isStandalone: true, selector: "[appRequiresGlobalOrAssetPermission]", inputs: { appRequiresGlobalOrAssetPermission: "appRequiresGlobalOrAssetPermission" }, ngImport: i0 });
|
|
2958
2958
|
}
|
|
2959
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.
|
|
2959
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.13", ngImport: i0, type: RequiresGlobalOrAsserPermissionDirective, decorators: [{
|
|
2960
2960
|
type: Directive,
|
|
2961
2961
|
args: [{
|
|
2962
2962
|
selector: '[appRequiresGlobalOrAssetPermission]'
|
|
@@ -2990,10 +2990,10 @@ class RequiresPermissionDirective {
|
|
|
2990
2990
|
this.viewContainer = viewContainer;
|
|
2991
2991
|
this.permissions = permissions;
|
|
2992
2992
|
}
|
|
2993
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.
|
|
2994
|
-
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.
|
|
2993
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.13", ngImport: i0, type: RequiresPermissionDirective, deps: [{ token: i0.TemplateRef }, { token: i0.ViewContainerRef }, { token: PermissionsService }], target: i0.ɵɵFactoryTarget.Directive });
|
|
2994
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.13", type: RequiresPermissionDirective, isStandalone: true, selector: "[appRequiresPermission]", inputs: { appRequiresPermission: "appRequiresPermission" }, ngImport: i0 });
|
|
2995
2995
|
}
|
|
2996
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.
|
|
2996
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.13", ngImport: i0, type: RequiresPermissionDirective, decorators: [{
|
|
2997
2997
|
type: Directive,
|
|
2998
2998
|
args: [{
|
|
2999
2999
|
selector: '[appRequiresPermission]'
|
|
@@ -3024,10 +3024,10 @@ class ScrollIntoViewDirective {
|
|
|
3024
3024
|
this.elementRef.nativeElement.scrollIntoView({ behavior: 'smooth', block: 'center' });
|
|
3025
3025
|
}
|
|
3026
3026
|
}
|
|
3027
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.
|
|
3028
|
-
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.
|
|
3027
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.13", ngImport: i0, type: ScrollIntoViewDirective, deps: [{ token: PLATFORM_ID }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
|
|
3028
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.13", type: ScrollIntoViewDirective, isStandalone: true, selector: "[appScrollIntoView]", inputs: { appScrollIntoView: "appScrollIntoView" }, usesOnChanges: true, ngImport: i0 });
|
|
3029
3029
|
}
|
|
3030
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.
|
|
3030
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.13", ngImport: i0, type: ScrollIntoViewDirective, decorators: [{
|
|
3031
3031
|
type: Directive,
|
|
3032
3032
|
args: [{
|
|
3033
3033
|
selector: '[appScrollIntoView]',
|
|
@@ -3071,10 +3071,10 @@ class DurationPipe {
|
|
|
3071
3071
|
transform(totalSeconds) {
|
|
3072
3072
|
return formatDuration(totalSeconds);
|
|
3073
3073
|
}
|
|
3074
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.
|
|
3075
|
-
static ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "21.2.
|
|
3074
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.13", ngImport: i0, type: DurationPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
|
|
3075
|
+
static ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "21.2.13", ngImport: i0, type: DurationPipe, isStandalone: true, name: "duration" });
|
|
3076
3076
|
}
|
|
3077
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.
|
|
3077
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.13", ngImport: i0, type: DurationPipe, decorators: [{
|
|
3078
3078
|
type: Pipe,
|
|
3079
3079
|
args: [{
|
|
3080
3080
|
name: 'duration',
|
|
@@ -3106,10 +3106,10 @@ class LocalizedNumberPipe {
|
|
|
3106
3106
|
};
|
|
3107
3107
|
return new Intl.NumberFormat(defaultedLocale, options).format(value);
|
|
3108
3108
|
}
|
|
3109
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.
|
|
3110
|
-
static ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "21.2.
|
|
3109
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.13", ngImport: i0, type: LocalizedNumberPipe, deps: [{ token: TenantPropertiesService }], target: i0.ɵɵFactoryTarget.Pipe });
|
|
3110
|
+
static ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "21.2.13", ngImport: i0, type: LocalizedNumberPipe, isStandalone: true, name: "localizedNumber" });
|
|
3111
3111
|
}
|
|
3112
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.
|
|
3112
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.13", ngImport: i0, type: LocalizedNumberPipe, decorators: [{
|
|
3113
3113
|
type: Pipe,
|
|
3114
3114
|
args: [{
|
|
3115
3115
|
name: 'localizedNumber',
|
|
@@ -3136,10 +3136,10 @@ class SimpleDateTimePipe {
|
|
|
3136
3136
|
const formattedDateTime = date + ' ' + time;
|
|
3137
3137
|
return showTimeZone ? `${formattedDateTime} ${zone}` : formattedDateTime;
|
|
3138
3138
|
}
|
|
3139
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.
|
|
3140
|
-
static ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "21.2.
|
|
3139
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.13", ngImport: i0, type: SimpleDateTimePipe, deps: [{ token: TenantPropertiesService }], target: i0.ɵɵFactoryTarget.Pipe });
|
|
3140
|
+
static ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "21.2.13", ngImport: i0, type: SimpleDateTimePipe, isStandalone: true, name: "simpleDateTime" });
|
|
3141
3141
|
}
|
|
3142
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.
|
|
3142
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.13", ngImport: i0, type: SimpleDateTimePipe, decorators: [{
|
|
3143
3143
|
type: Pipe,
|
|
3144
3144
|
args: [{
|
|
3145
3145
|
name: 'simpleDateTime',
|
|
@@ -3163,10 +3163,10 @@ class SimpleDatePipe {
|
|
|
3163
3163
|
const zone = dateTime.offsetNameShort;
|
|
3164
3164
|
return showTimeZone ? `${date} ${zone}` : date;
|
|
3165
3165
|
}
|
|
3166
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.
|
|
3167
|
-
static ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "21.2.
|
|
3166
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.13", ngImport: i0, type: SimpleDatePipe, deps: [{ token: TenantPropertiesService }], target: i0.ɵɵFactoryTarget.Pipe });
|
|
3167
|
+
static ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "21.2.13", ngImport: i0, type: SimpleDatePipe, isStandalone: true, name: "simpleDate" });
|
|
3168
3168
|
}
|
|
3169
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.
|
|
3169
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.13", ngImport: i0, type: SimpleDatePipe, decorators: [{
|
|
3170
3170
|
type: Pipe,
|
|
3171
3171
|
args: [{
|
|
3172
3172
|
name: 'simpleDate',
|
|
@@ -3190,10 +3190,10 @@ class SimpleTimePipe {
|
|
|
3190
3190
|
const zone = dateTime.offsetNameShort;
|
|
3191
3191
|
return showTimeZone ? `${time} ${zone}` : time;
|
|
3192
3192
|
}
|
|
3193
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.
|
|
3194
|
-
static ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "21.2.
|
|
3193
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.13", ngImport: i0, type: SimpleTimePipe, deps: [{ token: TenantPropertiesService }], target: i0.ɵɵFactoryTarget.Pipe });
|
|
3194
|
+
static ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "21.2.13", ngImport: i0, type: SimpleTimePipe, isStandalone: true, name: "simpleTime" });
|
|
3195
3195
|
}
|
|
3196
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.
|
|
3196
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.13", ngImport: i0, type: SimpleTimePipe, decorators: [{
|
|
3197
3197
|
type: Pipe,
|
|
3198
3198
|
args: [{
|
|
3199
3199
|
name: 'simpleTime',
|
|
@@ -3223,10 +3223,10 @@ class SortPipe {
|
|
|
3223
3223
|
});
|
|
3224
3224
|
return array;
|
|
3225
3225
|
}
|
|
3226
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.
|
|
3227
|
-
static ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "21.2.
|
|
3226
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.13", ngImport: i0, type: SortPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
|
|
3227
|
+
static ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "21.2.13", ngImport: i0, type: SortPipe, isStandalone: true, name: "sort" });
|
|
3228
3228
|
}
|
|
3229
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.
|
|
3229
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.13", ngImport: i0, type: SortPipe, decorators: [{
|
|
3230
3230
|
type: Pipe,
|
|
3231
3231
|
args: [{
|
|
3232
3232
|
name: 'sort',
|
|
@@ -3473,10 +3473,10 @@ class MissingTranslationHelper {
|
|
|
3473
3473
|
handle(params) {
|
|
3474
3474
|
return params.interpolateParams ? params.interpolateParams.default || params.key : params.key;
|
|
3475
3475
|
}
|
|
3476
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.
|
|
3477
|
-
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.
|
|
3476
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.13", ngImport: i0, type: MissingTranslationHelper, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
3477
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.13", ngImport: i0, type: MissingTranslationHelper });
|
|
3478
3478
|
}
|
|
3479
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.
|
|
3479
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.13", ngImport: i0, type: MissingTranslationHelper, decorators: [{
|
|
3480
3480
|
type: Injectable
|
|
3481
3481
|
}] });
|
|
3482
3482
|
|
|
@@ -4225,7 +4225,7 @@ class AutocompleteComponent {
|
|
|
4225
4225
|
autocompleteTrigger;
|
|
4226
4226
|
Object = Object;
|
|
4227
4227
|
disabled = false;
|
|
4228
|
-
hasValue = signal(false, ...(ngDevMode ? [{ debugName: "hasValue" }] : []));
|
|
4228
|
+
hasValue = signal(false, ...(ngDevMode ? [{ debugName: "hasValue" }] : /* istanbul ignore next */ []));
|
|
4229
4229
|
formControl = new FormControl('', { nonNullable: true });
|
|
4230
4230
|
data$ = this.formControl.valueChanges.pipe(startWith(''), // Autoload
|
|
4231
4231
|
filter((value) => typeof value === 'string'), switchMap((value) => this.dataFunction(value)), shareReplay(1));
|
|
@@ -4307,10 +4307,10 @@ class AutocompleteComponent {
|
|
|
4307
4307
|
document.removeEventListener('wheel', this.scrollEvent, true);
|
|
4308
4308
|
document.removeEventListener('touchmove', this.scrollEvent, true);
|
|
4309
4309
|
}
|
|
4310
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.
|
|
4311
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.
|
|
4310
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.13", ngImport: i0, type: AutocompleteComponent, deps: [{ token: i5.NgControl, optional: true, self: true }], target: i0.ɵɵFactoryTarget.Component });
|
|
4311
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.13", type: AutocompleteComponent, isStandalone: true, selector: "app-autocomplete", inputs: { name: "name", dataFunction: "dataFunction", displayFunction: "displayFunction", outlineBackground: "outlineBackground", hideRequiredMarker: "hideRequiredMarker" }, queries: [{ propertyName: "dropdownTemplate", first: true, predicate: TemplateRef, descendants: true }], viewQueries: [{ propertyName: "autocompleteTrigger", first: true, predicate: MatAutocompleteTrigger, descendants: true }], ngImport: i0, template: "<ng-container>\r\n <div class=\"w-full\">\r\n <mat-form-field [ngClass]=\"{ 'outline-background': outlineBackground }\" class=\"w-full\" [hideRequiredMarker]=\"hideRequiredMarker\">\r\n <mat-label>\r\n <span>{{ name | translate }}</span>\r\n </mat-label>\r\n <input matInput #autoCompleteInput [ngClass]=\"{'cursor-text' : !hasValue(), 'cursor-default' : hasValue()}\" [formControl]=\"formControl\" [readonly]=\"hasValue()\" [placeholder]=\"name | translate\" autocomplete=\"off\"\r\n [matAutocomplete]=\"auto\" (blur)=\"onTouched($event)\" [attr.data-test]=\"name + 'SearchInput'\"/>\r\n @if (!disabled) {\r\n <button matSuffix mat-icon-button *ngIf=\"formControl.value\" (click)=\"clear()\" type='button'>\r\n <mat-icon class=\"text-mat-sys-on-error-container\">clear</mat-icon>\r\n </button>\r\n }\r\n @for (error of getErrors(); track error) {\r\n <mat-error>{{ 'COMMON.ERROR_VALIDATION_' + error | translate }}</mat-error>\r\n }\r\n </mat-form-field>\r\n </div>\r\n <mat-autocomplete #auto=\"matAutocomplete\" [class]=\"'autocomplete-panel'\" [displayWith]=\"displayFunction\">\r\n @if (loading$ | async) {\r\n <mat-option>\r\n <div>{{ 'Loading...' }}</div>\r\n <mat-progress-bar mode=\"indeterminate\"></mat-progress-bar>\r\n </mat-option>\r\n } @else {\r\n <mat-option *ngFor=\"let item of data$ | async; let i = index\" [value]=\"item\" class=\"autocomplete-option\" [attr.data-test]=\"name + 'SearchItem' + (i + 1)\">\r\n <ng-container [ngTemplateOutlet]=\"dropdownTemplate ? dropdownTemplate : defaultTemplate\" [ngTemplateOutletContext]=\"{ item }\"></ng-container>\r\n <ng-template #defaultTemplate>{{ displayFunction(item) }}</ng-template>\r\n </mat-option>\r\n }\r\n </mat-autocomplete>\r\n</ng-container>\r\n", styles: [".mat-option-hidden{display:none}.autocomplete-option{height:fit-content}.autocomplete-option.autocomplete-option__active,.autocomplete-option.autocomplete-option__active:hover{background-color:var(--color-primary-50)}.autocomplete-info{height:30px;font-size:14px}.autocomplete-info.secondary{font-size:12px;height:25px}.autocomplete-info .autocomplete-item{text-overflow:ellipsis;overflow:hidden}\n"], dependencies: [{ kind: "ngmodule", type: SharedModule }, { kind: "component", type: i1$4.MatIconButton, selector: "button[mat-icon-button], a[mat-icon-button], button[matIconButton], a[matIconButton]", exportAs: ["matButton", "matAnchor"] }, { kind: "component", type: i2.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i2.MatLabel, selector: "mat-label" }, { kind: "directive", type: i2.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "directive", type: i2.MatSuffix, selector: "[matSuffix], [matIconSuffix], [matTextSuffix]", inputs: ["matTextSuffix"] }, { kind: "component", type: i4.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i4$1.MatOption, selector: "mat-option", inputs: ["value", "id", "disabled"], outputs: ["onSelectionChange"], exportAs: ["matOption"] }, { kind: "directive", type: i4$2.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly", "disabledInteractive"], exportAs: ["matInput"] }, { kind: "component", type: i7.MatProgressBar, selector: "mat-progress-bar", inputs: ["color", "value", "bufferValue", "mode"], outputs: ["animationEnd"], exportAs: ["matProgressBar"] }, { kind: "component", type: i8.MatAutocomplete, selector: "mat-autocomplete", inputs: ["aria-label", "aria-labelledby", "displayWith", "autoActiveFirstOption", "autoSelectActiveOption", "requireSelection", "panelWidth", "disableRipple", "class", "hideSingleSelectionIndicator"], outputs: ["optionSelected", "opened", "closed", "optionActivated"], exportAs: ["matAutocomplete"] }, { kind: "directive", type: i8.MatAutocompleteTrigger, selector: "input[matAutocomplete], textarea[matAutocomplete]", inputs: ["matAutocomplete", "matAutocompletePosition", "matAutocompleteConnectedTo", "autocomplete", "matAutocompleteDisabled"], exportAs: ["matAutocompleteTrigger"] }, { kind: "directive", type: i5.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i5.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i5.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "directive", type: i6.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i6.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i6.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i6.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "pipe", type: i1$1.TranslatePipe, name: "translate" }, { kind: "pipe", type: i6.AsyncPipe, name: "async" }] });
|
|
4312
4312
|
}
|
|
4313
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.
|
|
4313
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.13", ngImport: i0, type: AutocompleteComponent, decorators: [{
|
|
4314
4314
|
type: Component,
|
|
4315
4315
|
args: [{ selector: 'app-autocomplete', imports: [SharedModule], template: "<ng-container>\r\n <div class=\"w-full\">\r\n <mat-form-field [ngClass]=\"{ 'outline-background': outlineBackground }\" class=\"w-full\" [hideRequiredMarker]=\"hideRequiredMarker\">\r\n <mat-label>\r\n <span>{{ name | translate }}</span>\r\n </mat-label>\r\n <input matInput #autoCompleteInput [ngClass]=\"{'cursor-text' : !hasValue(), 'cursor-default' : hasValue()}\" [formControl]=\"formControl\" [readonly]=\"hasValue()\" [placeholder]=\"name | translate\" autocomplete=\"off\"\r\n [matAutocomplete]=\"auto\" (blur)=\"onTouched($event)\" [attr.data-test]=\"name + 'SearchInput'\"/>\r\n @if (!disabled) {\r\n <button matSuffix mat-icon-button *ngIf=\"formControl.value\" (click)=\"clear()\" type='button'>\r\n <mat-icon class=\"text-mat-sys-on-error-container\">clear</mat-icon>\r\n </button>\r\n }\r\n @for (error of getErrors(); track error) {\r\n <mat-error>{{ 'COMMON.ERROR_VALIDATION_' + error | translate }}</mat-error>\r\n }\r\n </mat-form-field>\r\n </div>\r\n <mat-autocomplete #auto=\"matAutocomplete\" [class]=\"'autocomplete-panel'\" [displayWith]=\"displayFunction\">\r\n @if (loading$ | async) {\r\n <mat-option>\r\n <div>{{ 'Loading...' }}</div>\r\n <mat-progress-bar mode=\"indeterminate\"></mat-progress-bar>\r\n </mat-option>\r\n } @else {\r\n <mat-option *ngFor=\"let item of data$ | async; let i = index\" [value]=\"item\" class=\"autocomplete-option\" [attr.data-test]=\"name + 'SearchItem' + (i + 1)\">\r\n <ng-container [ngTemplateOutlet]=\"dropdownTemplate ? dropdownTemplate : defaultTemplate\" [ngTemplateOutletContext]=\"{ item }\"></ng-container>\r\n <ng-template #defaultTemplate>{{ displayFunction(item) }}</ng-template>\r\n </mat-option>\r\n }\r\n </mat-autocomplete>\r\n</ng-container>\r\n", styles: [".mat-option-hidden{display:none}.autocomplete-option{height:fit-content}.autocomplete-option.autocomplete-option__active,.autocomplete-option.autocomplete-option__active:hover{background-color:var(--color-primary-50)}.autocomplete-info{height:30px;font-size:14px}.autocomplete-info.secondary{font-size:12px;height:25px}.autocomplete-info .autocomplete-item{text-overflow:ellipsis;overflow:hidden}\n"] }]
|
|
4316
4316
|
}], ctorParameters: () => [{ type: i5.NgControl, decorators: [{
|
|
@@ -4423,10 +4423,10 @@ class AutocompleteChipsComponent {
|
|
|
4423
4423
|
document.removeEventListener('wheel', this.scrollEvent, true);
|
|
4424
4424
|
document.removeEventListener('touchmove', this.scrollEvent, true);
|
|
4425
4425
|
}
|
|
4426
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.
|
|
4427
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.
|
|
4426
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.13", ngImport: i0, type: AutocompleteChipsComponent, deps: [{ token: i5.NgControl, optional: true, self: true }], target: i0.ɵɵFactoryTarget.Component });
|
|
4427
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.13", type: AutocompleteChipsComponent, isStandalone: true, selector: "app-autocomplete-chips", inputs: { name: "name", dataFunction: "dataFunction", displayFunction: "displayFunction", outlineBackground: "outlineBackground" }, queries: [{ propertyName: "dropdownTemplate", first: true, predicate: TemplateRef, descendants: true }], viewQueries: [{ propertyName: "autocompleteTrigger", first: true, predicate: MatAutocompleteTrigger, descendants: true }, { propertyName: "inputRef", first: true, predicate: ["autoCompleteInput"], descendants: true }], ngImport: i0, template: "<div class=\"w-full\" [ngClass]=\"{'required' : !!getErrors().length && !formControl.untouched && !(items$ | async)?.length}\">\r\n <mat-form-field [ngClass]=\"{ 'outline-background': outlineBackground }\" class=\"w-full\">\r\n <mat-label>\r\n <span>{{ name | translate }}</span>\r\n </mat-label>\r\n <mat-chip-grid #chipGrid>\r\n <mat-chip-row *ngFor=\"let item of items$ | async as items; let i = index\"\r\n [removable]=\"!disabled\"\r\n (removed)=\"removeItem(i, items)\">\r\n {{ displayFunction(item) }}\r\n <mat-icon class=\"text-mat-sys-on-error-container\" matChipRemove *ngIf=\"!disabled\">cancel</mat-icon>\r\n </mat-chip-row>\r\n <input matInput\r\n #autoCompleteInput\r\n [placeholder]=\"name | translate\"\r\n autocomplete=\"off\"\r\n [formControl]=\"formControl\"\r\n [matAutocomplete]=\"auto\"\r\n [matChipInputFor]=\"chipGrid\"\r\n (blur)=\"onTouched($event)\"/>\r\n </mat-chip-grid>\r\n </mat-form-field>\r\n\r\n @for (error of getErrors(); track error) {\r\n @if (!formControl.untouched && !(items$ | async)?.length) {\r\n <mat-error class=\"ml-4 mt-[-2px] text-xs\">{{ 'COMMON.ERROR_VALIDATION_' + error | translate }}</mat-error>\r\n }\r\n }\r\n</div>\r\n<mat-autocomplete #auto=\"matAutocomplete\" [class]=\"'autocomplete-panel'\" (optionSelected)=\"addItem($event)\">\r\n @if (loading$ | async) {\r\n <mat-option>\r\n <div>{{ 'Loading...' }}</div>\r\n <mat-progress-bar mode=\"indeterminate\"></mat-progress-bar>\r\n </mat-option>\r\n } @else {\r\n <ng-container *ngFor=\"let item of data$ | async; let i = index\">\r\n @if (shouldShowOption(item, (items$ | async) ?? [])) {\r\n <mat-option\r\n [value]=\"item\"\r\n class=\"autocomplete-option\"\r\n [attr.data-test]=\"name + 'SearchItem' + (i + 1)\">\r\n <ng-container [ngTemplateOutlet]=\"dropdownTemplate ? dropdownTemplate : defaultTemplate\"\r\n [ngTemplateOutletContext]=\"{ item }\"></ng-container>\r\n <ng-template #defaultTemplate>{{ displayFunction(item) }}</ng-template>\r\n </mat-option>\r\n }\r\n </ng-container>\r\n }\r\n</mat-autocomplete>\r\n", styles: [".mat-option-hidden{display:none}.autocomplete-option{height:fit-content}.autocomplete-option.autocomplete-option__active,.autocomplete-option.autocomplete-option__active:hover{background-color:var(--color-primary-50)}.autocomplete-info{height:30px;font-size:14px}.autocomplete-info.secondary{font-size:12px;height:25px}.autocomplete-info .autocomplete-item{text-overflow:ellipsis;overflow:hidden}\n"], dependencies: [{ kind: "ngmodule", type: SharedModule }, { kind: "component", type: i2.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i2.MatLabel, selector: "mat-label" }, { kind: "directive", type: i2.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "component", type: i4.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i4$1.MatOption, selector: "mat-option", inputs: ["value", "id", "disabled"], outputs: ["onSelectionChange"], exportAs: ["matOption"] }, { kind: "directive", type: i4$2.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly", "disabledInteractive"], exportAs: ["matInput"] }, { kind: "component", type: i7.MatProgressBar, selector: "mat-progress-bar", inputs: ["color", "value", "bufferValue", "mode"], outputs: ["animationEnd"], exportAs: ["matProgressBar"] }, { kind: "component", type: i8.MatAutocomplete, selector: "mat-autocomplete", inputs: ["aria-label", "aria-labelledby", "displayWith", "autoActiveFirstOption", "autoSelectActiveOption", "requireSelection", "panelWidth", "disableRipple", "class", "hideSingleSelectionIndicator"], outputs: ["optionSelected", "opened", "closed", "optionActivated"], exportAs: ["matAutocomplete"] }, { kind: "directive", type: i8.MatAutocompleteTrigger, selector: "input[matAutocomplete], textarea[matAutocomplete]", inputs: ["matAutocomplete", "matAutocompletePosition", "matAutocompleteConnectedTo", "autocomplete", "matAutocompleteDisabled"], exportAs: ["matAutocompleteTrigger"] }, { kind: "component", type: i8$1.MatChipGrid, selector: "mat-chip-grid", inputs: ["disabled", "placeholder", "required", "value", "errorStateMatcher"], outputs: ["change", "valueChange"] }, { kind: "directive", type: i8$1.MatChipInput, selector: "input[matChipInputFor]", inputs: ["matChipInputFor", "matChipInputAddOnBlur", "matChipInputSeparatorKeyCodes", "placeholder", "id", "disabled", "readonly", "matChipInputDisabledInteractive"], outputs: ["matChipInputTokenEnd"], exportAs: ["matChipInput", "matChipInputFor"] }, { kind: "directive", type: i8$1.MatChipRemove, selector: "[matChipRemove]" }, { kind: "component", type: i8$1.MatChipRow, selector: "mat-chip-row, [mat-chip-row], mat-basic-chip-row, [mat-basic-chip-row]", inputs: ["editable"], outputs: ["edited"] }, { kind: "directive", type: i5.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i5.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i5.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "directive", type: i6.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i6.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i6.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i6.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "pipe", type: i1$1.TranslatePipe, name: "translate" }, { kind: "pipe", type: i6.AsyncPipe, name: "async" }] });
|
|
4428
4428
|
}
|
|
4429
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.
|
|
4429
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.13", ngImport: i0, type: AutocompleteChipsComponent, decorators: [{
|
|
4430
4430
|
type: Component,
|
|
4431
4431
|
args: [{ selector: 'app-autocomplete-chips', imports: [SharedModule], template: "<div class=\"w-full\" [ngClass]=\"{'required' : !!getErrors().length && !formControl.untouched && !(items$ | async)?.length}\">\r\n <mat-form-field [ngClass]=\"{ 'outline-background': outlineBackground }\" class=\"w-full\">\r\n <mat-label>\r\n <span>{{ name | translate }}</span>\r\n </mat-label>\r\n <mat-chip-grid #chipGrid>\r\n <mat-chip-row *ngFor=\"let item of items$ | async as items; let i = index\"\r\n [removable]=\"!disabled\"\r\n (removed)=\"removeItem(i, items)\">\r\n {{ displayFunction(item) }}\r\n <mat-icon class=\"text-mat-sys-on-error-container\" matChipRemove *ngIf=\"!disabled\">cancel</mat-icon>\r\n </mat-chip-row>\r\n <input matInput\r\n #autoCompleteInput\r\n [placeholder]=\"name | translate\"\r\n autocomplete=\"off\"\r\n [formControl]=\"formControl\"\r\n [matAutocomplete]=\"auto\"\r\n [matChipInputFor]=\"chipGrid\"\r\n (blur)=\"onTouched($event)\"/>\r\n </mat-chip-grid>\r\n </mat-form-field>\r\n\r\n @for (error of getErrors(); track error) {\r\n @if (!formControl.untouched && !(items$ | async)?.length) {\r\n <mat-error class=\"ml-4 mt-[-2px] text-xs\">{{ 'COMMON.ERROR_VALIDATION_' + error | translate }}</mat-error>\r\n }\r\n }\r\n</div>\r\n<mat-autocomplete #auto=\"matAutocomplete\" [class]=\"'autocomplete-panel'\" (optionSelected)=\"addItem($event)\">\r\n @if (loading$ | async) {\r\n <mat-option>\r\n <div>{{ 'Loading...' }}</div>\r\n <mat-progress-bar mode=\"indeterminate\"></mat-progress-bar>\r\n </mat-option>\r\n } @else {\r\n <ng-container *ngFor=\"let item of data$ | async; let i = index\">\r\n @if (shouldShowOption(item, (items$ | async) ?? [])) {\r\n <mat-option\r\n [value]=\"item\"\r\n class=\"autocomplete-option\"\r\n [attr.data-test]=\"name + 'SearchItem' + (i + 1)\">\r\n <ng-container [ngTemplateOutlet]=\"dropdownTemplate ? dropdownTemplate : defaultTemplate\"\r\n [ngTemplateOutletContext]=\"{ item }\"></ng-container>\r\n <ng-template #defaultTemplate>{{ displayFunction(item) }}</ng-template>\r\n </mat-option>\r\n }\r\n </ng-container>\r\n }\r\n</mat-autocomplete>\r\n", styles: [".mat-option-hidden{display:none}.autocomplete-option{height:fit-content}.autocomplete-option.autocomplete-option__active,.autocomplete-option.autocomplete-option__active:hover{background-color:var(--color-primary-50)}.autocomplete-info{height:30px;font-size:14px}.autocomplete-info.secondary{font-size:12px;height:25px}.autocomplete-info .autocomplete-item{text-overflow:ellipsis;overflow:hidden}\n"] }]
|
|
4432
4432
|
}], ctorParameters: () => [{ type: i5.NgControl, decorators: [{
|
|
@@ -4456,9 +4456,9 @@ class BasicTimeSeriesGraphComponent {
|
|
|
4456
4456
|
timeFormatter;
|
|
4457
4457
|
themeService = inject(ThemeService);
|
|
4458
4458
|
chartTheme = toSignal(this.themeService.chartTheme$);
|
|
4459
|
-
timeSeries = input.required(...(ngDevMode ? [{ debugName: "timeSeries" }] : []));
|
|
4460
|
-
desiredTimeFrame = input(...(ngDevMode ? [undefined, { debugName: "desiredTimeFrame" }] : []));
|
|
4461
|
-
primaryColor = input(...(ngDevMode ? [undefined, { debugName: "primaryColor" }] : []));
|
|
4459
|
+
timeSeries = input.required(...(ngDevMode ? [{ debugName: "timeSeries" }] : /* istanbul ignore next */ []));
|
|
4460
|
+
desiredTimeFrame = input(...(ngDevMode ? [undefined, { debugName: "desiredTimeFrame" }] : /* istanbul ignore next */ []));
|
|
4461
|
+
primaryColor = input(...(ngDevMode ? [undefined, { debugName: "primaryColor" }] : /* istanbul ignore next */ []));
|
|
4462
4462
|
graphOptions = computed(() => {
|
|
4463
4463
|
const timeSeries = this.timeSeries();
|
|
4464
4464
|
const dataZoom = untracked(this.dataZoom);
|
|
@@ -4513,8 +4513,8 @@ class BasicTimeSeriesGraphComponent {
|
|
|
4513
4513
|
}
|
|
4514
4514
|
]
|
|
4515
4515
|
};
|
|
4516
|
-
}, ...(ngDevMode ? [{ debugName: "graphOptions" }] : []));
|
|
4517
|
-
dataZoom = signal(null, ...(ngDevMode ? [{ debugName: "dataZoom" }] : []));
|
|
4516
|
+
}, ...(ngDevMode ? [{ debugName: "graphOptions" }] : /* istanbul ignore next */ []));
|
|
4517
|
+
dataZoom = signal(null, ...(ngDevMode ? [{ debugName: "dataZoom" }] : /* istanbul ignore next */ []));
|
|
4518
4518
|
constructor(timeFormatter) {
|
|
4519
4519
|
this.timeFormatter = timeFormatter;
|
|
4520
4520
|
}
|
|
@@ -4524,22 +4524,22 @@ class BasicTimeSeriesGraphComponent {
|
|
|
4524
4524
|
end: event.batch?.[0]?.end
|
|
4525
4525
|
});
|
|
4526
4526
|
}
|
|
4527
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.
|
|
4528
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "21.2.
|
|
4527
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.13", ngImport: i0, type: BasicTimeSeriesGraphComponent, deps: [{ token: SimpleDateTimePipe }], target: i0.ɵɵFactoryTarget.Component });
|
|
4528
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "21.2.13", type: BasicTimeSeriesGraphComponent, isStandalone: true, selector: "app-basic-time-series-graph", inputs: { timeSeries: { classPropertyName: "timeSeries", publicName: "timeSeries", isSignal: true, isRequired: true, transformFunction: null }, desiredTimeFrame: { classPropertyName: "desiredTimeFrame", publicName: "desiredTimeFrame", isSignal: true, isRequired: false, transformFunction: null }, primaryColor: { classPropertyName: "primaryColor", publicName: "primaryColor", isSignal: true, isRequired: false, transformFunction: null } }, providers: [SimpleDatePipe, SimpleDateTimePipe], ngImport: i0, template: "<div echarts [options]=\"graphOptions()\" (chartDataZoom)=\"chartZoom($event)\" [theme]=\"chartTheme()!\" class=\"w-full h-full\"></div>\r\n", styles: [""], dependencies: [{ kind: "directive", type: NgxEchartsDirective, selector: "echarts, [echarts]", inputs: ["options", "theme", "initOpts", "merge", "autoResize", "loading", "loadingType", "loadingOpts"], outputs: ["chartInit", "optionsError", "chartClick", "chartDblClick", "chartMouseDown", "chartMouseMove", "chartMouseUp", "chartMouseOver", "chartMouseOut", "chartGlobalOut", "chartContextMenu", "chartHighlight", "chartDownplay", "chartSelectChanged", "chartLegendSelectChanged", "chartLegendSelected", "chartLegendUnselected", "chartLegendLegendSelectAll", "chartLegendLegendInverseSelect", "chartLegendScroll", "chartDataZoom", "chartDataRangeSelected", "chartGraphRoam", "chartGeoRoam", "chartTreeRoam", "chartTimelineChanged", "chartTimelinePlayChanged", "chartRestore", "chartDataViewChanged", "chartMagicTypeChanged", "chartGeoSelectChanged", "chartGeoSelected", "chartGeoUnselected", "chartAxisAreaSelected", "chartBrush", "chartBrushEnd", "chartBrushSelected", "chartGlobalCursorTaken", "chartRendered", "chartFinished"], exportAs: ["echarts"] }] });
|
|
4529
4529
|
}
|
|
4530
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.
|
|
4530
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.13", ngImport: i0, type: BasicTimeSeriesGraphComponent, decorators: [{
|
|
4531
4531
|
type: Component,
|
|
4532
4532
|
args: [{ selector: 'app-basic-time-series-graph', imports: [NgxEchartsDirective], providers: [SimpleDatePipe, SimpleDateTimePipe], template: "<div echarts [options]=\"graphOptions()\" (chartDataZoom)=\"chartZoom($event)\" [theme]=\"chartTheme()!\" class=\"w-full h-full\"></div>\r\n" }]
|
|
4533
4533
|
}], ctorParameters: () => [{ type: SimpleDateTimePipe }], propDecorators: { timeSeries: [{ type: i0.Input, args: [{ isSignal: true, alias: "timeSeries", required: true }] }], desiredTimeFrame: [{ type: i0.Input, args: [{ isSignal: true, alias: "desiredTimeFrame", required: false }] }], primaryColor: [{ type: i0.Input, args: [{ isSignal: true, alias: "primaryColor", required: false }] }] } });
|
|
4534
4534
|
|
|
4535
4535
|
class CardLabeledValueComponent {
|
|
4536
4536
|
permissionService = inject(PermissionsService);
|
|
4537
|
-
permissions = input(...(ngDevMode ? [undefined, { debugName: "permissions" }] : []));
|
|
4538
|
-
useAssetPermissions = input(false, ...(ngDevMode ? [{ debugName: "useAssetPermissions" }] : []));
|
|
4539
|
-
label = input.required(...(ngDevMode ? [{ debugName: "label" }] : []));
|
|
4540
|
-
icon = input('edit', ...(ngDevMode ? [{ debugName: "icon" }] : []));
|
|
4541
|
-
tooltip = input(...(ngDevMode ? [undefined, { debugName: "tooltip" }] : []));
|
|
4542
|
-
editFunction = input(...(ngDevMode ? [undefined, { debugName: "editFunction" }] : []));
|
|
4537
|
+
permissions = input(...(ngDevMode ? [undefined, { debugName: "permissions" }] : /* istanbul ignore next */ []));
|
|
4538
|
+
useAssetPermissions = input(false, ...(ngDevMode ? [{ debugName: "useAssetPermissions" }] : /* istanbul ignore next */ []));
|
|
4539
|
+
label = input.required(...(ngDevMode ? [{ debugName: "label" }] : /* istanbul ignore next */ []));
|
|
4540
|
+
icon = input('edit', ...(ngDevMode ? [{ debugName: "icon" }] : /* istanbul ignore next */ []));
|
|
4541
|
+
tooltip = input(...(ngDevMode ? [undefined, { debugName: "tooltip" }] : /* istanbul ignore next */ []));
|
|
4542
|
+
editFunction = input(...(ngDevMode ? [undefined, { debugName: "editFunction" }] : /* istanbul ignore next */ []));
|
|
4543
4543
|
permissionFunction = computed(() => {
|
|
4544
4544
|
const requiredPermissions = this.permissions();
|
|
4545
4545
|
if (!requiredPermissions) {
|
|
@@ -4548,12 +4548,12 @@ class CardLabeledValueComponent {
|
|
|
4548
4548
|
return this.useAssetPermissions()
|
|
4549
4549
|
? this.permissionService.hasAnyGlobalOrAssetPermission(requiredPermissions)
|
|
4550
4550
|
: this.permissionService.hasAnyPermission(requiredPermissions);
|
|
4551
|
-
}, ...(ngDevMode ? [{ debugName: "permissionFunction" }] : []));
|
|
4551
|
+
}, ...(ngDevMode ? [{ debugName: "permissionFunction" }] : /* istanbul ignore next */ []));
|
|
4552
4552
|
hasPermission = toSignal(toObservable(this.permissionFunction).pipe(switchMap(obs => obs)), { initialValue: false });
|
|
4553
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.
|
|
4554
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.
|
|
4553
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.13", ngImport: i0, type: CardLabeledValueComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
4554
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.13", type: CardLabeledValueComponent, isStandalone: true, selector: "app-card-labeled-value", inputs: { permissions: { classPropertyName: "permissions", publicName: "permissions", isSignal: true, isRequired: false, transformFunction: null }, useAssetPermissions: { classPropertyName: "useAssetPermissions", publicName: "useAssetPermissions", isSignal: true, isRequired: false, transformFunction: null }, label: { classPropertyName: "label", publicName: "label", isSignal: true, isRequired: true, transformFunction: null }, icon: { classPropertyName: "icon", publicName: "icon", isSignal: true, isRequired: false, transformFunction: null }, tooltip: { classPropertyName: "tooltip", publicName: "tooltip", isSignal: true, isRequired: false, transformFunction: null }, editFunction: { classPropertyName: "editFunction", publicName: "editFunction", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: "<mat-card\r\n [ngClass]=\"{'cursor-pointer hover:bg-hover-color': editFunction() && hasPermission() }\"\r\n [matTooltipDisabled]=\"!hasPermission()\" (click)=\"editFunction() && hasPermission() ? editFunction()!() : null\"\r\n [matTooltip]=\"tooltip() | translate\"\r\n matTooltipPosition=\"above\"\r\n>\r\n <div class=\"flex items-center justify-between p-4 gap-x-4 h-full\">\r\n <div class=\"flex flex-col w-full h-full overflow-hidden\">\r\n <div class=\"font-semibold shrink-0\">{{ label() | translate }}</div>\r\n <div class=\"text-mat-sys-primary flex items-center grow\">\r\n <ng-content/>\r\n </div>\r\n </div>\r\n @if (editFunction() && hasPermission()) {\r\n <button mat-icon-button [ngClass]=\"icon() === 'delete' ? 'text-mat-sys-on-error-container' : 'text-mat-sys-primary'\" (click)=\"editFunction()!(); $event.stopPropagation()\">\r\n <mat-icon>{{ icon() }}</mat-icon>\r\n </button>\r\n }\r\n </div>\r\n</mat-card>\r\n", styles: ["mat-card{height:100%;min-height:5.5rem}\n"], dependencies: [{ kind: "ngmodule", type: SharedModule }, { kind: "component", type: i1$4.MatIconButton, selector: "button[mat-icon-button], a[mat-icon-button], button[matIconButton], a[matIconButton]", exportAs: ["matButton", "matAnchor"] }, { kind: "directive", type: i3.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }, { kind: "component", type: i4.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i4$3.MatCard, selector: "mat-card", inputs: ["appearance"], exportAs: ["matCard"] }, { kind: "directive", type: i6.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "pipe", type: i1$1.TranslatePipe, name: "translate" }] });
|
|
4555
4555
|
}
|
|
4556
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.
|
|
4556
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.13", ngImport: i0, type: CardLabeledValueComponent, decorators: [{
|
|
4557
4557
|
type: Component,
|
|
4558
4558
|
args: [{ selector: 'app-card-labeled-value', imports: [SharedModule], template: "<mat-card\r\n [ngClass]=\"{'cursor-pointer hover:bg-hover-color': editFunction() && hasPermission() }\"\r\n [matTooltipDisabled]=\"!hasPermission()\" (click)=\"editFunction() && hasPermission() ? editFunction()!() : null\"\r\n [matTooltip]=\"tooltip() | translate\"\r\n matTooltipPosition=\"above\"\r\n>\r\n <div class=\"flex items-center justify-between p-4 gap-x-4 h-full\">\r\n <div class=\"flex flex-col w-full h-full overflow-hidden\">\r\n <div class=\"font-semibold shrink-0\">{{ label() | translate }}</div>\r\n <div class=\"text-mat-sys-primary flex items-center grow\">\r\n <ng-content/>\r\n </div>\r\n </div>\r\n @if (editFunction() && hasPermission()) {\r\n <button mat-icon-button [ngClass]=\"icon() === 'delete' ? 'text-mat-sys-on-error-container' : 'text-mat-sys-primary'\" (click)=\"editFunction()!(); $event.stopPropagation()\">\r\n <mat-icon>{{ icon() }}</mat-icon>\r\n </button>\r\n }\r\n </div>\r\n</mat-card>\r\n", styles: ["mat-card{height:100%;min-height:5.5rem}\n"] }]
|
|
4559
4559
|
}], propDecorators: { permissions: [{ type: i0.Input, args: [{ isSignal: true, alias: "permissions", required: false }] }], useAssetPermissions: [{ type: i0.Input, args: [{ isSignal: true, alias: "useAssetPermissions", required: false }] }], label: [{ type: i0.Input, args: [{ isSignal: true, alias: "label", required: true }] }], icon: [{ type: i0.Input, args: [{ isSignal: true, alias: "icon", required: false }] }], tooltip: [{ type: i0.Input, args: [{ isSignal: true, alias: "tooltip", required: false }] }], editFunction: [{ type: i0.Input, args: [{ isSignal: true, alias: "editFunction", required: false }] }] } });
|
|
@@ -4568,10 +4568,10 @@ class ConfirmationDialogComponent {
|
|
|
4568
4568
|
confirm() {
|
|
4569
4569
|
this.dialog.close(true);
|
|
4570
4570
|
}
|
|
4571
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.
|
|
4572
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.
|
|
4571
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.13", ngImport: i0, type: ConfirmationDialogComponent, deps: [{ token: MAT_DIALOG_DATA }, { token: i1$5.MatDialogRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
4572
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.13", type: ConfirmationDialogComponent, isStandalone: true, selector: "app-confirmation-dialog", ngImport: i0, template: "<div class=\"flex flex-col flex-auto gap-y-8 p-4 content\">\r\n <div class=\"text-lg\">{{ 'COMMON.CONFIRMATION_DIALOG_TITLE' | translate }}</div>\r\n <div class=\"flex flex-col flex-auto gap-y-4\">\r\n <div class=\"flex flex-col flex-auto gap-y-4 max-h-96 overflow-hidden\">\r\n <div class=\"whitespace-pre-line\">{{ data.message | translate:data.parameters }}</div>\r\n </div>\r\n </div>\r\n <div class=\"flex flex-row flex-auto gap-x-2 justify-end\">\r\n <button mat-button mat-dialog-close>{{ 'COMMON.CANCEL' | translate }}</button>\r\n <button [ngClass]=\"{'destructive-flat-button': data.deleteDialog}\" mat-flat-button\r\n (click)=\"confirm()\">{{ data.actionButtonLabel ? (data.actionButtonLabel! | translate) : (data.deleteDialog ? ('COMMON.DELETE' | translate) : ('COMMON.CONFIRMATION_DIALOG_CONFIRM' | translate)) }}\r\n </button>\r\n </div>\r\n</div>\r\n", styles: [".content{max-width:var(--medium-dialog-width)}\n"], dependencies: [{ kind: "ngmodule", type: SharedModule }, { kind: "component", type: i1$4.MatButton, selector: " button[matButton], a[matButton], button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button], a[mat-button], a[mat-raised-button], a[mat-flat-button], a[mat-stroked-button] ", inputs: ["matButton"], exportAs: ["matButton", "matAnchor"] }, { kind: "directive", type: i1$5.MatDialogClose, selector: "[mat-dialog-close], [matDialogClose]", inputs: ["aria-label", "type", "mat-dialog-close", "matDialogClose"], exportAs: ["matDialogClose"] }, { kind: "directive", type: i6.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "pipe", type: i1$1.TranslatePipe, name: "translate" }] });
|
|
4573
4573
|
}
|
|
4574
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.
|
|
4574
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.13", ngImport: i0, type: ConfirmationDialogComponent, decorators: [{
|
|
4575
4575
|
type: Component,
|
|
4576
4576
|
args: [{ selector: 'app-confirmation-dialog', imports: [SharedModule], template: "<div class=\"flex flex-col flex-auto gap-y-8 p-4 content\">\r\n <div class=\"text-lg\">{{ 'COMMON.CONFIRMATION_DIALOG_TITLE' | translate }}</div>\r\n <div class=\"flex flex-col flex-auto gap-y-4\">\r\n <div class=\"flex flex-col flex-auto gap-y-4 max-h-96 overflow-hidden\">\r\n <div class=\"whitespace-pre-line\">{{ data.message | translate:data.parameters }}</div>\r\n </div>\r\n </div>\r\n <div class=\"flex flex-row flex-auto gap-x-2 justify-end\">\r\n <button mat-button mat-dialog-close>{{ 'COMMON.CANCEL' | translate }}</button>\r\n <button [ngClass]=\"{'destructive-flat-button': data.deleteDialog}\" mat-flat-button\r\n (click)=\"confirm()\">{{ data.actionButtonLabel ? (data.actionButtonLabel! | translate) : (data.deleteDialog ? ('COMMON.DELETE' | translate) : ('COMMON.CONFIRMATION_DIALOG_CONFIRM' | translate)) }}\r\n </button>\r\n </div>\r\n</div>\r\n", styles: [".content{max-width:var(--medium-dialog-width)}\n"] }]
|
|
4577
4577
|
}], ctorParameters: () => [{ type: undefined, decorators: [{
|
|
@@ -4608,12 +4608,12 @@ class PeriodErrorStateMatcher {
|
|
|
4608
4608
|
class DateRangeInputComponent {
|
|
4609
4609
|
destroyRef;
|
|
4610
4610
|
tenantPropertiesService;
|
|
4611
|
-
availableDateOptions = input([RelativeTimePeriod.TODAY, RelativeTimePeriod.YESTERDAY, RelativeTimePeriod.LAST_7_DAYS, RelativeTimePeriod.LAST_30_DAYS], ...(ngDevMode ? [{ debugName: "availableDateOptions" }] : []));
|
|
4612
|
-
translationPrefix = input(...(ngDevMode ? [undefined, { debugName: "translationPrefix" }] : []));
|
|
4613
|
-
allowCustomTimespan = input(true, ...(ngDevMode ? [{ debugName: "allowCustomTimespan" }] : []));
|
|
4614
|
-
isInForm = input(true, ...(ngDevMode ? [{ debugName: "isInForm" }] : []));
|
|
4615
|
-
datePicker = viewChild('picker', ...(ngDevMode ? [{ debugName: "datePicker" }] : []));
|
|
4616
|
-
validators = input([], ...(ngDevMode ? [{ debugName: "validators" }] : []));
|
|
4611
|
+
availableDateOptions = input([RelativeTimePeriod.TODAY, RelativeTimePeriod.YESTERDAY, RelativeTimePeriod.LAST_7_DAYS, RelativeTimePeriod.LAST_30_DAYS], ...(ngDevMode ? [{ debugName: "availableDateOptions" }] : /* istanbul ignore next */ []));
|
|
4612
|
+
translationPrefix = input(...(ngDevMode ? [undefined, { debugName: "translationPrefix" }] : /* istanbul ignore next */ []));
|
|
4613
|
+
allowCustomTimespan = input(true, ...(ngDevMode ? [{ debugName: "allowCustomTimespan" }] : /* istanbul ignore next */ []));
|
|
4614
|
+
isInForm = input(true, ...(ngDevMode ? [{ debugName: "isInForm" }] : /* istanbul ignore next */ []));
|
|
4615
|
+
datePicker = viewChild('picker', ...(ngDevMode ? [{ debugName: "datePicker" }] : /* istanbul ignore next */ []));
|
|
4616
|
+
validators = input([], ...(ngDevMode ? [{ debugName: "validators" }] : /* istanbul ignore next */ []));
|
|
4617
4617
|
validateForm = (form) => {
|
|
4618
4618
|
const { periodOption, from, to } = form.value;
|
|
4619
4619
|
if (periodOption === CUSTOM_PERIOD) {
|
|
@@ -4722,8 +4722,8 @@ class DateRangeInputComponent {
|
|
|
4722
4722
|
};
|
|
4723
4723
|
}
|
|
4724
4724
|
}
|
|
4725
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.
|
|
4726
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.
|
|
4725
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.13", ngImport: i0, type: DateRangeInputComponent, deps: [{ token: i0.DestroyRef }, { token: TenantPropertiesService }], target: i0.ɵɵFactoryTarget.Component });
|
|
4726
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.13", type: DateRangeInputComponent, isStandalone: true, selector: "app-date-range-input", inputs: { availableDateOptions: { classPropertyName: "availableDateOptions", publicName: "availableDateOptions", isSignal: true, isRequired: false, transformFunction: null }, translationPrefix: { classPropertyName: "translationPrefix", publicName: "translationPrefix", isSignal: true, isRequired: false, transformFunction: null }, allowCustomTimespan: { classPropertyName: "allowCustomTimespan", publicName: "allowCustomTimespan", isSignal: true, isRequired: false, transformFunction: null }, isInForm: { classPropertyName: "isInForm", publicName: "isInForm", isSignal: true, isRequired: false, transformFunction: null }, validators: { classPropertyName: "validators", publicName: "validators", isSignal: true, isRequired: false, transformFunction: null } }, providers: [
|
|
4727
4727
|
{
|
|
4728
4728
|
provide: NG_VALUE_ACCESSOR,
|
|
4729
4729
|
useExisting: forwardRef(() => DateRangeInputComponent),
|
|
@@ -4736,7 +4736,7 @@ class DateRangeInputComponent {
|
|
|
4736
4736
|
}
|
|
4737
4737
|
], viewQueries: [{ propertyName: "datePicker", first: true, predicate: ["picker"], descendants: true, isSignal: true }], ngImport: i0, template: "<div class=\"w-full flex flex-col\" [formGroup]=\"dateRangeForm\">\r\n @if (isInForm()) {\r\n <mat-form-field class=\"flex\">\r\n <mat-label>{{ (translationPrefix() ? translationPrefix() + '_LABEL' : 'COMMON.DATE_RANGE_LABEL') | translate }}</mat-label>\r\n <mat-select (blur)=\"onTouched($event)\" formControlName=\"periodOption\" (selectionChange)=\"onTimeRangeChanged($event)\" [errorStateMatcher]=\"periodErrorStateMatcher\" panelClass=\"date-range-panel\">\r\n @for (periodOption of availableDateOptions(); track $index) {\r\n <mat-option [value]=\"periodOption\">{{ 'COMMON.RELATIVE_TIME_PERIOD_' + periodOption | translate }}</mat-option>\r\n }\r\n @if (allowCustomTimespan()) {\r\n <mat-option [value]=\"CUSTOM_PERIOD\">\r\n <div class=\"flex flex-row gap-x-4\">\r\n @if (dateRangeForm.get('from')?.value) {\r\n <div class=\"flex flex-row\">\r\n <span class=\"whitespace-nowrap h-fit\">{{ dateRangeForm.get('from')?.value?.toMillis() | simpleDate : undefined: false }}</span>\r\n <span class=\"whitespace-nowrap h-fit\"> - </span>\r\n <span class=\"whitespace-nowrap h-fit\">{{ dateRangeForm.get('to')?.value?.toMillis() | simpleDate : undefined: false }}</span>\r\n </div>\r\n } @else {\r\n <div>{{ 'COMMON.RELATIVE_TIME_PERIOD_CUSTOM' | translate }}</div>\r\n }\r\n </div>\r\n </mat-option>\r\n }\r\n </mat-select>\r\n <mat-date-range-input [rangePicker]=\"picker\" style=\"visibility: hidden; width: 0; height: 0;\">\r\n <input (blur)=\"onTouched($event)\" matStartDate formControlName=\"from\">\r\n <input (blur)=\"onTouched($event)\" matEndDate formControlName=\"to\"/>\r\n </mat-date-range-input>\r\n <mat-date-range-picker #picker (closed)=\"emitValueChange()\"></mat-date-range-picker>\r\n @if (dateRangeForm.get('periodOption')?.value === CUSTOM_PERIOD) {\r\n <mat-datepicker-toggle matSuffix [for]=\"picker\"></mat-datepicker-toggle>\r\n }\r\n @if (dateRangeForm.touched && dateRangeForm.hasError('required')) {\r\n <mat-error>\r\n {{ 'COMMON.ERROR_VALIDATION_REQUIRED' | translate }}\r\n </mat-error>\r\n }\r\n @if (dateRangeForm.touched && dateRangeForm.hasError('incompletePeriod')) {\r\n {{ 'COMMON.ERROR_VALIDATION_REQUIRED' | translate }}\r\n }\r\n </mat-form-field>\r\n } @else {\r\n <div class=\"flex\">\r\n <mat-select class=\"date-range-flat-picker-select\" (blur)=\"onTouched($event)\" formControlName=\"periodOption\" (selectionChange)=\"onTimeRangeChanged($event)\" [errorStateMatcher]=\"periodErrorStateMatcher\" panelClass=\"date-range-panel\">\r\n @for (periodOption of availableDateOptions(); track $index) {\r\n <mat-option [value]=\"periodOption\">{{ 'COMMON.RELATIVE_TIME_PERIOD_' + periodOption | translate }}</mat-option>\r\n }\r\n @if (allowCustomTimespan()) {\r\n <mat-option [value]=\"CUSTOM_PERIOD\">\r\n <div class=\"flex flex-row gap-x-4\">\r\n @if (dateRangeForm.get('from')?.value) {\r\n <div class=\"flex flex-row\">\r\n <span class=\"whitespace-nowrap h-fit\">{{ dateRangeForm.get('from')?.value?.toMillis() | simpleDate : undefined: false }}</span>\r\n <span class=\"whitespace-nowrap h-fit\"> - </span>\r\n <span class=\"whitespace-nowrap h-fit\">{{ dateRangeForm.get('to')?.value?.toMillis() | simpleDate : undefined: false }}</span>\r\n </div>\r\n } @else {\r\n <div>{{ 'COMMON.RELATIVE_TIME_PERIOD_CUSTOM' | translate }}</div>\r\n }\r\n </div>\r\n </mat-option>\r\n }\r\n </mat-select>\r\n <mat-date-range-input [rangePicker]=\"picker\" style=\"visibility: hidden; width: 0; height: 0;\">\r\n <input (blur)=\"onTouched($event)\" matStartDate formControlName=\"from\">\r\n <input (blur)=\"onTouched($event)\" matEndDate formControlName=\"to\"/>\r\n </mat-date-range-input>\r\n <mat-date-range-picker #picker (closed)=\"emitValueChange()\"></mat-date-range-picker>\r\n @if (dateRangeForm.get('periodOption')?.value === CUSTOM_PERIOD) {\r\n <mat-datepicker-toggle matSuffix [for]=\"picker\" class=\"date-range-flat-picker-toggle\"></mat-datepicker-toggle>\r\n }\r\n </div>\r\n }\r\n</div>\r\n", styles: [":host{display:block}\n"], dependencies: [{ kind: "ngmodule", type: SharedModule }, { kind: "component", type: i2.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i2.MatLabel, selector: "mat-label" }, { kind: "directive", type: i2.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "directive", type: i2.MatSuffix, selector: "[matSuffix], [matIconSuffix], [matTextSuffix]", inputs: ["matTextSuffix"] }, { kind: "component", type: i4$1.MatSelect, selector: "mat-select", inputs: ["aria-describedby", "panelClass", "disabled", "disableRipple", "tabIndex", "hideSingleSelectionIndicator", "placeholder", "required", "multiple", "disableOptionCentering", "compareWith", "value", "aria-label", "aria-labelledby", "errorStateMatcher", "typeaheadDebounceInterval", "sortComparator", "id", "panelWidth", "canSelectNullableOptions"], outputs: ["openedChange", "opened", "closed", "selectionChange", "valueChange"], exportAs: ["matSelect"] }, { kind: "component", type: i4$1.MatOption, selector: "mat-option", inputs: ["value", "id", "disabled"], outputs: ["onSelectionChange"], exportAs: ["matOption"] }, { kind: "component", type: i4$4.MatDatepickerToggle, selector: "mat-datepicker-toggle", inputs: ["for", "tabIndex", "aria-label", "disabled", "disableRipple"], exportAs: ["matDatepickerToggle"] }, { kind: "component", type: i4$4.MatDateRangeInput, selector: "mat-date-range-input", inputs: ["rangePicker", "required", "dateFilter", "min", "max", "disabled", "separator", "comparisonStart", "comparisonEnd"], exportAs: ["matDateRangeInput"] }, { kind: "directive", type: i4$4.MatStartDate, selector: "input[matStartDate]", outputs: ["dateChange", "dateInput"] }, { kind: "directive", type: i4$4.MatEndDate, selector: "input[matEndDate]", outputs: ["dateChange", "dateInput"] }, { kind: "component", type: i4$4.MatDateRangePicker, selector: "mat-date-range-picker", exportAs: ["matDateRangePicker"] }, { kind: "directive", type: i5.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i5.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i5.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],[formArray],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i5.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i5.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "pipe", type: i1$1.TranslatePipe, name: "translate" }, { kind: "pipe", type: SimpleDatePipe, name: "simpleDate" }] });
|
|
4738
4738
|
}
|
|
4739
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.
|
|
4739
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.13", ngImport: i0, type: DateRangeInputComponent, decorators: [{
|
|
4740
4740
|
type: Component,
|
|
4741
4741
|
args: [{ selector: 'app-date-range-input', imports: [SharedModule, SimpleDatePipe], providers: [
|
|
4742
4742
|
{
|
|
@@ -4756,9 +4756,9 @@ class DateTimeFormFieldComponent {
|
|
|
4756
4756
|
translate;
|
|
4757
4757
|
dateLabel;
|
|
4758
4758
|
timeLabel;
|
|
4759
|
-
validators = input(...(ngDevMode ? [undefined, { debugName: "validators" }] : []));
|
|
4760
|
-
showErrorInTooltip = input(false, ...(ngDevMode ? [{ debugName: "showErrorInTooltip" }] : []));
|
|
4761
|
-
timezone = input(null, ...(ngDevMode ? [{ debugName: "timezone" }] : []));
|
|
4759
|
+
validators = input(...(ngDevMode ? [undefined, { debugName: "validators" }] : /* istanbul ignore next */ []));
|
|
4760
|
+
showErrorInTooltip = input(false, ...(ngDevMode ? [{ debugName: "showErrorInTooltip" }] : /* istanbul ignore next */ []));
|
|
4761
|
+
timezone = input(null, ...(ngDevMode ? [{ debugName: "timezone" }] : /* istanbul ignore next */ []));
|
|
4762
4762
|
tenantProperties = inject(TenantPropertiesService);
|
|
4763
4763
|
formGroup = new FormGroup({
|
|
4764
4764
|
date: new FormControl(null),
|
|
@@ -4853,8 +4853,8 @@ class DateTimeFormFieldComponent {
|
|
|
4853
4853
|
this.onTimeInputChange.next(value);
|
|
4854
4854
|
}
|
|
4855
4855
|
}
|
|
4856
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.
|
|
4857
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.
|
|
4856
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.13", ngImport: i0, type: DateTimeFormFieldComponent, deps: [{ token: i1$1.TranslateService }], target: i0.ɵɵFactoryTarget.Component });
|
|
4857
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.13", type: DateTimeFormFieldComponent, isStandalone: true, selector: "app-date-time-form-field", inputs: { dateLabel: { classPropertyName: "dateLabel", publicName: "dateLabel", isSignal: false, isRequired: false, transformFunction: null }, timeLabel: { classPropertyName: "timeLabel", publicName: "timeLabel", isSignal: false, isRequired: false, transformFunction: null }, validators: { classPropertyName: "validators", publicName: "validators", isSignal: true, isRequired: false, transformFunction: null }, showErrorInTooltip: { classPropertyName: "showErrorInTooltip", publicName: "showErrorInTooltip", isSignal: true, isRequired: false, transformFunction: null }, timezone: { classPropertyName: "timezone", publicName: "timezone", isSignal: true, isRequired: false, transformFunction: null } }, providers: [
|
|
4858
4858
|
{
|
|
4859
4859
|
provide: NG_VALUE_ACCESSOR,
|
|
4860
4860
|
useExisting: forwardRef(() => DateTimeFormFieldComponent),
|
|
@@ -4867,7 +4867,7 @@ class DateTimeFormFieldComponent {
|
|
|
4867
4867
|
}
|
|
4868
4868
|
], ngImport: i0, template: "<ng-container [formGroup]=\"formGroup\">\r\n <div class=\"flex flex-col gap-y-4\">\r\n <mat-form-field [matTooltip]=\"getDateErrorTooltip()\" [matTooltipDisabled]=\"!showErrorInTooltip()\">\r\n <mat-label>{{ (dateLabel ?? 'COMMON.DATE') | translate }}</mat-label>\r\n <input [matDatepicker]=\"picker\" formControlName=\"date\" matInput>\r\n <mat-datepicker-toggle [for]=\"picker\" matIconSuffix></mat-datepicker-toggle>\r\n <mat-datepicker #picker></mat-datepicker>\r\n @for (error of getDateErrors(); track error) {\r\n <mat-error *ngIf=\"!showErrorInTooltip()\" class=\"text-[12px]\">{{ 'COMMON.ERROR_VALIDATION_' + error | translate }}</mat-error>\r\n }\r\n </mat-form-field>\r\n <mat-form-field [matTooltip]=\"getTimeErrorTooltip()\" [matTooltipDisabled]=\"!showErrorInTooltip()\">\r\n <mat-label>{{ (timeLabel ?? 'COMMON.TIME') | translate }}</mat-label>\r\n <input [format]=\"24\" [ngxMatTimepicker]=\"pickerA\" formControlName=\"time\" matInput (input)=\"onInputChange($event)\"/>\r\n <mat-icon (click)=\"pickerA.open()\" matSuffix> watch_later</mat-icon>\r\n <ngx-mat-timepicker #pickerA></ngx-mat-timepicker>\r\n @for (error of getTimeErrors(); track error) {\r\n <mat-error *ngIf=\"!showErrorInTooltip()\" class=\"text-[12px]\">{{ 'COMMON.ERROR_VALIDATION_' + error | translate }}</mat-error>\r\n }\r\n </mat-form-field>\r\n </div>\r\n</ng-container>\r\n", styles: [""], dependencies: [{ kind: "ngmodule", type: SharedModule }, { kind: "component", type: i2.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i2.MatLabel, selector: "mat-label" }, { kind: "directive", type: i2.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "directive", type: i2.MatSuffix, selector: "[matSuffix], [matIconSuffix], [matTextSuffix]", inputs: ["matTextSuffix"] }, { kind: "directive", type: i3.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }, { kind: "component", type: i4.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: i4$2.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly", "disabledInteractive"], exportAs: ["matInput"] }, { kind: "component", type: i4$4.MatDatepicker, selector: "mat-datepicker", exportAs: ["matDatepicker"] }, { kind: "directive", type: i4$4.MatDatepickerInput, selector: "input[matDatepicker]", inputs: ["matDatepicker", "min", "max", "matDatepickerFilter"], exportAs: ["matDatepickerInput"] }, { kind: "component", type: i4$4.MatDatepickerToggle, selector: "mat-datepicker-toggle", inputs: ["for", "tabIndex", "aria-label", "disabled", "disableRipple"], exportAs: ["matDatepickerToggle"] }, { kind: "directive", type: i5.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i5.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i5.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],[formArray],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i5.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i5.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "directive", type: i6.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: NgxMatTimepickerDirective, selector: "[ngxMatTimepicker]", inputs: ["format", "max", "min", "ngxMatTimepicker", "value", "disableClick", "disabled"] }, { kind: "component", type: NgxMatTimepickerComponent, selector: "ngx-mat-timepicker", inputs: ["appendToInput", "color", "dottedMinutesInGap", "enableKeyboardInput", "format", "minutesGap", "cancelBtnTmpl", "confirmBtnTmpl", "defaultTime", "disableAnimation", "editableHintTmpl", "hoursOnly", "isEsc", "max", "min", "preventOverlayClick", "timepickerClass"], outputs: ["closed", "hourSelected", "opened", "timeChanged", "timeSet"] }, { kind: "pipe", type: i1$1.TranslatePipe, name: "translate" }] });
|
|
4869
4869
|
}
|
|
4870
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.
|
|
4870
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.13", ngImport: i0, type: DateTimeFormFieldComponent, decorators: [{
|
|
4871
4871
|
type: Component,
|
|
4872
4872
|
args: [{ selector: 'app-date-time-form-field', imports: [SharedModule, NgxMatTimepickerDirective, NgxMatTimepickerComponent], providers: [
|
|
4873
4873
|
{
|
|
@@ -4894,8 +4894,8 @@ class DragDropFileUploadComponent {
|
|
|
4894
4894
|
accept = '.*';
|
|
4895
4895
|
multiple = false;
|
|
4896
4896
|
prompt = 'COMMON.DRAG_DROP_PROMPT';
|
|
4897
|
-
highlight = signal(false, ...(ngDevMode ? [{ debugName: "highlight" }] : []));
|
|
4898
|
-
disabled = signal(false, ...(ngDevMode ? [{ debugName: "disabled" }] : []));
|
|
4897
|
+
highlight = signal(false, ...(ngDevMode ? [{ debugName: "highlight" }] : /* istanbul ignore next */ []));
|
|
4898
|
+
disabled = signal(false, ...(ngDevMode ? [{ debugName: "disabled" }] : /* istanbul ignore next */ []));
|
|
4899
4899
|
files$ = new BehaviorSubject(null);
|
|
4900
4900
|
TRUNCATE_NAME_LIMIT = 24;
|
|
4901
4901
|
destroy$ = new Subject();
|
|
@@ -5008,10 +5008,10 @@ class DragDropFileUploadComponent {
|
|
|
5008
5008
|
this.destroy$.next();
|
|
5009
5009
|
this.destroy$.complete();
|
|
5010
5010
|
}
|
|
5011
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.
|
|
5012
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.
|
|
5011
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.13", ngImport: i0, type: DragDropFileUploadComponent, deps: [{ token: i5.NgControl, optional: true, self: true }], target: i0.ɵɵFactoryTarget.Component });
|
|
5012
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.13", type: DragDropFileUploadComponent, isStandalone: true, selector: "application-drag-drop-file-upload", inputs: { accept: "accept", multiple: "multiple", prompt: "prompt" }, viewQueries: [{ propertyName: "dragDropZone", first: true, predicate: ["dragDropZone"], descendants: true }, { propertyName: "fileInput", first: true, predicate: ["fileInput"], descendants: true }], ngImport: i0, template: "<div #dragDropZone class=\"drag-drop-zone flex flex-col items-center justify-center\" [ngClass]=\"{ highlight: highlight(), disabled: disabled() }\">\r\n @if (files$ | async; as files) {\r\n @if (files.length > 0) {\r\n <div class=\"flex flex-col flex-wrap items-center justify-center\">\r\n @for (file of files; track $index) {\r\n <div class=\"name-wrapper flex flex-row items-center justify-center gap-2\">\r\n <mat-icon>description</mat-icon>\r\n <span [matTooltipDisabled]=\"file.name.length < TRUNCATE_NAME_LIMIT\" [matTooltip]=\"file.name\">{{ getFileName(file.name) }}</span>\r\n <mat-icon class=\"delete-button text-mat-sys-on-error-container\" (click)=\"deleteFile($event, $index)\">delete</mat-icon>\r\n </div>\r\n }\r\n </div>\r\n } @else {\r\n <span>{{ prompt | translate }}</span>\r\n }\r\n } @else {\r\n <span>{{ prompt | translate }}</span>\r\n }\r\n @if (controlDir.control?.errors && controlDir.control?.touched) {\r\n <mat-error>{{ getErrorForTranslation(controlDir.control?.errors).key | translate: getErrorForTranslation(controlDir.control?.errors).params }}</mat-error>\r\n }\r\n</div>\r\n<input #fileInput type=\"file\" [attr.multiple]=\"multiple ? true : null\" [attr.accept]=\"accept === '.*' ? '*' : accept\" (change)=\"onFileAdded($event)\"/>\r\n", styles: [":host{display:block;position:relative}input[type=file]{display:none}.drag-drop-zone{min-height:100px;min-width:250px;border:1px dashed var(--neutral-variant-color-60);cursor:pointer;border-radius:5px}.drag-drop-zone.highlight{background-color:var(--mat-sys-primary-container);border:1px solid var(--mat-sys-on-primary-container)}.drag-drop-zone.disabled{opacity:.5;pointer-events:none;cursor:no-drop}.drag-drop-zone .name-wrapper{cursor:auto}.drag-drop-zone .delete-button{cursor:pointer}\n"], dependencies: [{ kind: "ngmodule", type: SharedModule }, { kind: "directive", type: i2.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "directive", type: i3.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }, { kind: "component", type: i4.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: i6.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "pipe", type: i1$1.TranslatePipe, name: "translate" }, { kind: "pipe", type: i6.AsyncPipe, name: "async" }] });
|
|
5013
5013
|
}
|
|
5014
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.
|
|
5014
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.13", ngImport: i0, type: DragDropFileUploadComponent, decorators: [{
|
|
5015
5015
|
type: Component,
|
|
5016
5016
|
args: [{ selector: 'application-drag-drop-file-upload', imports: [SharedModule], template: "<div #dragDropZone class=\"drag-drop-zone flex flex-col items-center justify-center\" [ngClass]=\"{ highlight: highlight(), disabled: disabled() }\">\r\n @if (files$ | async; as files) {\r\n @if (files.length > 0) {\r\n <div class=\"flex flex-col flex-wrap items-center justify-center\">\r\n @for (file of files; track $index) {\r\n <div class=\"name-wrapper flex flex-row items-center justify-center gap-2\">\r\n <mat-icon>description</mat-icon>\r\n <span [matTooltipDisabled]=\"file.name.length < TRUNCATE_NAME_LIMIT\" [matTooltip]=\"file.name\">{{ getFileName(file.name) }}</span>\r\n <mat-icon class=\"delete-button text-mat-sys-on-error-container\" (click)=\"deleteFile($event, $index)\">delete</mat-icon>\r\n </div>\r\n }\r\n </div>\r\n } @else {\r\n <span>{{ prompt | translate }}</span>\r\n }\r\n } @else {\r\n <span>{{ prompt | translate }}</span>\r\n }\r\n @if (controlDir.control?.errors && controlDir.control?.touched) {\r\n <mat-error>{{ getErrorForTranslation(controlDir.control?.errors).key | translate: getErrorForTranslation(controlDir.control?.errors).params }}</mat-error>\r\n }\r\n</div>\r\n<input #fileInput type=\"file\" [attr.multiple]=\"multiple ? true : null\" [attr.accept]=\"accept === '.*' ? '*' : accept\" (change)=\"onFileAdded($event)\"/>\r\n", styles: [":host{display:block;position:relative}input[type=file]{display:none}.drag-drop-zone{min-height:100px;min-width:250px;border:1px dashed var(--neutral-variant-color-60);cursor:pointer;border-radius:5px}.drag-drop-zone.highlight{background-color:var(--mat-sys-primary-container);border:1px solid var(--mat-sys-on-primary-container)}.drag-drop-zone.disabled{opacity:.5;pointer-events:none;cursor:no-drop}.drag-drop-zone .name-wrapper{cursor:auto}.drag-drop-zone .delete-button{cursor:pointer}\n"] }]
|
|
5017
5017
|
}], ctorParameters: () => [{ type: i5.NgControl, decorators: [{
|
|
@@ -5033,16 +5033,16 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.0", ngImpor
|
|
|
5033
5033
|
}] } });
|
|
5034
5034
|
|
|
5035
5035
|
class ZoomControlsComponent {
|
|
5036
|
-
zoomPercentage = input.required(...(ngDevMode ? [{ debugName: "zoomPercentage" }] : []));
|
|
5037
|
-
canZoomIn = input.required(...(ngDevMode ? [{ debugName: "canZoomIn" }] : []));
|
|
5038
|
-
canZoomOut = input.required(...(ngDevMode ? [{ debugName: "canZoomOut" }] : []));
|
|
5036
|
+
zoomPercentage = input.required(...(ngDevMode ? [{ debugName: "zoomPercentage" }] : /* istanbul ignore next */ []));
|
|
5037
|
+
canZoomIn = input.required(...(ngDevMode ? [{ debugName: "canZoomIn" }] : /* istanbul ignore next */ []));
|
|
5038
|
+
canZoomOut = input.required(...(ngDevMode ? [{ debugName: "canZoomOut" }] : /* istanbul ignore next */ []));
|
|
5039
5039
|
zoomIn = output();
|
|
5040
5040
|
zoomOut = output();
|
|
5041
5041
|
reset = output();
|
|
5042
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.
|
|
5043
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "21.2.
|
|
5042
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.13", ngImport: i0, type: ZoomControlsComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
5043
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "21.2.13", type: ZoomControlsComponent, isStandalone: true, selector: "app-zoom-controls", inputs: { zoomPercentage: { classPropertyName: "zoomPercentage", publicName: "zoomPercentage", isSignal: true, isRequired: true, transformFunction: null }, canZoomIn: { classPropertyName: "canZoomIn", publicName: "canZoomIn", isSignal: true, isRequired: true, transformFunction: null }, canZoomOut: { classPropertyName: "canZoomOut", publicName: "canZoomOut", isSignal: true, isRequired: true, transformFunction: null } }, outputs: { zoomIn: "zoomIn", zoomOut: "zoomOut", reset: "reset" }, ngImport: i0, template: "<div class=\"control-group\">\r\n <button class=\"icon-btn\"\r\n type=\"button\"\r\n (click)=\"zoomOut.emit()\"\r\n [disabled]=\"!canZoomOut()\"\r\n [class.disabled]=\"!canZoomOut()\"\r\n [matTooltip]=\"'COMMON.ZOOM_OUT' | translate\">\r\n <mat-icon>zoom_out</mat-icon>\r\n </button>\r\n <span class=\"zoom-level\"\r\n (click)=\"reset.emit()\"\r\n [matTooltip]=\"'COMMON.ZOOM_RESET' | translate\">{{ zoomPercentage() }}%</span>\r\n <button class=\"icon-btn\"\r\n type=\"button\"\r\n (click)=\"zoomIn.emit()\"\r\n [disabled]=\"!canZoomIn()\"\r\n [class.disabled]=\"!canZoomIn()\"\r\n [matTooltip]=\"'COMMON.ZOOM_IN' | translate\">\r\n <mat-icon>zoom_in</mat-icon>\r\n </button>\r\n</div>\r\n<ng-content></ng-content>\r\n", styles: [":host{display:flex;align-items:center;justify-content:center;gap:12px;background-color:transparent;position:absolute;bottom:0;left:50%;transform:translate(-50%);z-index:1;padding:12px 20px 16px}.control-group{display:flex;align-items:center;gap:4px;background:var(--mat-sys-surface-container);border:1px solid var(--mat-sys-outline-variant);border-radius:10px;padding:4px;box-shadow:0 2px 8px #0000001f}.zoom-level{min-width:44px;text-align:center;color:var(--mat-sys-on-surface);font-size:13px;font-weight:500;cursor:pointer;padding:4px;border-radius:16px;transition:background-color .2s}.zoom-level:hover{background-color:var(--mat-sys-surface-container-high)}.icon-btn{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border:none;border-radius:50%;background-color:transparent;color:var(--mat-sys-on-surface-variant);cursor:pointer;transition:all .2s ease}.icon-btn:hover:not(.disabled){background-color:var(--mat-sys-surface-container-high);color:var(--mat-sys-on-surface)}.icon-btn.disabled{opacity:.4;cursor:not-allowed}\n"], dependencies: [{ kind: "ngmodule", type: SharedModule }, { kind: "directive", type: i3.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }, { kind: "component", type: i4.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "pipe", type: i1$1.TranslatePipe, name: "translate" }] });
|
|
5044
5044
|
}
|
|
5045
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.
|
|
5045
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.13", ngImport: i0, type: ZoomControlsComponent, decorators: [{
|
|
5046
5046
|
type: Component,
|
|
5047
5047
|
args: [{ selector: 'app-zoom-controls', imports: [SharedModule], template: "<div class=\"control-group\">\r\n <button class=\"icon-btn\"\r\n type=\"button\"\r\n (click)=\"zoomOut.emit()\"\r\n [disabled]=\"!canZoomOut()\"\r\n [class.disabled]=\"!canZoomOut()\"\r\n [matTooltip]=\"'COMMON.ZOOM_OUT' | translate\">\r\n <mat-icon>zoom_out</mat-icon>\r\n </button>\r\n <span class=\"zoom-level\"\r\n (click)=\"reset.emit()\"\r\n [matTooltip]=\"'COMMON.ZOOM_RESET' | translate\">{{ zoomPercentage() }}%</span>\r\n <button class=\"icon-btn\"\r\n type=\"button\"\r\n (click)=\"zoomIn.emit()\"\r\n [disabled]=\"!canZoomIn()\"\r\n [class.disabled]=\"!canZoomIn()\"\r\n [matTooltip]=\"'COMMON.ZOOM_IN' | translate\">\r\n <mat-icon>zoom_in</mat-icon>\r\n </button>\r\n</div>\r\n<ng-content></ng-content>\r\n", styles: [":host{display:flex;align-items:center;justify-content:center;gap:12px;background-color:transparent;position:absolute;bottom:0;left:50%;transform:translate(-50%);z-index:1;padding:12px 20px 16px}.control-group{display:flex;align-items:center;gap:4px;background:var(--mat-sys-surface-container);border:1px solid var(--mat-sys-outline-variant);border-radius:10px;padding:4px;box-shadow:0 2px 8px #0000001f}.zoom-level{min-width:44px;text-align:center;color:var(--mat-sys-on-surface);font-size:13px;font-weight:500;cursor:pointer;padding:4px;border-radius:16px;transition:background-color .2s}.zoom-level:hover{background-color:var(--mat-sys-surface-container-high)}.icon-btn{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border:none;border-radius:50%;background-color:transparent;color:var(--mat-sys-on-surface-variant);cursor:pointer;transition:all .2s ease}.icon-btn:hover:not(.disabled){background-color:var(--mat-sys-surface-container-high);color:var(--mat-sys-on-surface)}.icon-btn.disabled{opacity:.4;cursor:not-allowed}\n"] }]
|
|
5048
5048
|
}], propDecorators: { zoomPercentage: [{ type: i0.Input, args: [{ isSignal: true, alias: "zoomPercentage", required: true }] }], canZoomIn: [{ type: i0.Input, args: [{ isSignal: true, alias: "canZoomIn", required: true }] }], canZoomOut: [{ type: i0.Input, args: [{ isSignal: true, alias: "canZoomOut", required: true }] }], zoomIn: [{ type: i0.Output, args: ["zoomIn"] }], zoomOut: [{ type: i0.Output, args: ["zoomOut"] }], reset: [{ type: i0.Output, args: ["reset"] }] } });
|
|
@@ -5052,15 +5052,15 @@ class GoogleMapComponent {
|
|
|
5052
5052
|
simpleDateTimePipe;
|
|
5053
5053
|
ZOOM_BASE = 4;
|
|
5054
5054
|
map = viewChild.required(GoogleMap);
|
|
5055
|
-
googleMapId = input.required(...(ngDevMode ? [{ debugName: "googleMapId" }] : []));
|
|
5056
|
-
darkTheme = input.required(...(ngDevMode ? [{ debugName: "darkTheme" }] : []));
|
|
5057
|
-
items = input.required(...(ngDevMode ? [{ debugName: "items" }] : []));
|
|
5058
|
-
pinColor = input.required(...(ngDevMode ? [{ debugName: "pinColor" }] : []));
|
|
5055
|
+
googleMapId = input.required(...(ngDevMode ? [{ debugName: "googleMapId" }] : /* istanbul ignore next */ []));
|
|
5056
|
+
darkTheme = input.required(...(ngDevMode ? [{ debugName: "darkTheme" }] : /* istanbul ignore next */ []));
|
|
5057
|
+
items = input.required(...(ngDevMode ? [{ debugName: "items" }] : /* istanbul ignore next */ []));
|
|
5058
|
+
pinColor = input.required(...(ngDevMode ? [{ debugName: "pinColor" }] : /* istanbul ignore next */ []));
|
|
5059
5059
|
markerClicked = output();
|
|
5060
|
-
zoom = signal(4, ...(ngDevMode ? [{ debugName: "zoom" }] : []));
|
|
5061
|
-
canZoomIn = computed(() => this.zoom() < 22, ...(ngDevMode ? [{ debugName: "canZoomIn" }] : []));
|
|
5062
|
-
canZoomOut = computed(() => this.zoom() > 2, ...(ngDevMode ? [{ debugName: "canZoomOut" }] : []));
|
|
5063
|
-
zoomPercentage = computed(() => Math.round(this.zoom() / this.ZOOM_BASE * 100), ...(ngDevMode ? [{ debugName: "zoomPercentage" }] : []));
|
|
5060
|
+
zoom = signal(4, ...(ngDevMode ? [{ debugName: "zoom" }] : /* istanbul ignore next */ []));
|
|
5061
|
+
canZoomIn = computed(() => this.zoom() < 22, ...(ngDevMode ? [{ debugName: "canZoomIn" }] : /* istanbul ignore next */ []));
|
|
5062
|
+
canZoomOut = computed(() => this.zoom() > 2, ...(ngDevMode ? [{ debugName: "canZoomOut" }] : /* istanbul ignore next */ []));
|
|
5063
|
+
zoomPercentage = computed(() => Math.round(this.zoom() / this.ZOOM_BASE * 100), ...(ngDevMode ? [{ debugName: "zoomPercentage" }] : /* istanbul ignore next */ []));
|
|
5064
5064
|
mapOptions = computed(() => {
|
|
5065
5065
|
return {
|
|
5066
5066
|
mapId: this.googleMapId(),
|
|
@@ -5081,7 +5081,7 @@ class GoogleMapComponent {
|
|
|
5081
5081
|
},
|
|
5082
5082
|
disableDefaultUI: true
|
|
5083
5083
|
};
|
|
5084
|
-
}, ...(ngDevMode ? [{ debugName: "mapOptions" }] : []));
|
|
5084
|
+
}, ...(ngDevMode ? [{ debugName: "mapOptions" }] : /* istanbul ignore next */ []));
|
|
5085
5085
|
clusterer = computed(() => {
|
|
5086
5086
|
const renderer = {
|
|
5087
5087
|
render: ({ count, position }) => {
|
|
@@ -5100,11 +5100,11 @@ class GoogleMapComponent {
|
|
|
5100
5100
|
}
|
|
5101
5101
|
};
|
|
5102
5102
|
return new MarkerClusterer({ markers: [], map: this.map().googleMap, renderer: renderer, algorithmOptions: { maxZoom: 21 } });
|
|
5103
|
-
}, ...(ngDevMode ? [{ debugName: "clusterer" }] : []));
|
|
5103
|
+
}, ...(ngDevMode ? [{ debugName: "clusterer" }] : /* istanbul ignore next */ []));
|
|
5104
5104
|
markers = computed(() => {
|
|
5105
5105
|
const itemsWithJitter = this.addJitter(this.items());
|
|
5106
5106
|
return itemsWithJitter.map((mapItem) => this.createMarker(mapItem));
|
|
5107
|
-
}, ...(ngDevMode ? [{ debugName: "markers" }] : []));
|
|
5107
|
+
}, ...(ngDevMode ? [{ debugName: "markers" }] : /* istanbul ignore next */ []));
|
|
5108
5108
|
mapBounds = new google.maps.LatLngBounds();
|
|
5109
5109
|
constructor(translateService, simpleDateTimePipe) {
|
|
5110
5110
|
this.translateService = translateService;
|
|
@@ -5237,10 +5237,10 @@ class GoogleMapComponent {
|
|
|
5237
5237
|
});
|
|
5238
5238
|
return result;
|
|
5239
5239
|
}
|
|
5240
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.
|
|
5241
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "21.2.
|
|
5240
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.13", ngImport: i0, type: GoogleMapComponent, deps: [{ token: i1$1.TranslateService }, { token: SimpleDateTimePipe }], target: i0.ɵɵFactoryTarget.Component });
|
|
5241
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "21.2.13", type: GoogleMapComponent, isStandalone: true, selector: "app-google-map", inputs: { googleMapId: { classPropertyName: "googleMapId", publicName: "googleMapId", isSignal: true, isRequired: true, transformFunction: null }, darkTheme: { classPropertyName: "darkTheme", publicName: "darkTheme", isSignal: true, isRequired: true, transformFunction: null }, items: { classPropertyName: "items", publicName: "items", isSignal: true, isRequired: true, transformFunction: null }, pinColor: { classPropertyName: "pinColor", publicName: "pinColor", isSignal: true, isRequired: true, transformFunction: null } }, outputs: { markerClicked: "markerClicked" }, providers: [SimpleDateTimePipe], viewQueries: [{ propertyName: "map", first: true, predicate: GoogleMap, descendants: true, isSignal: true }], ngImport: i0, template: "<div class=\"map-wrapper\">\r\n <google-map height=\"100%\" width=\"100%\" [options]=\"mapOptions()\" [zoom]=\"zoom()\" (zoomChanged)=\"syncZoom()\" class=\"map-full\"/>\r\n <app-zoom-controls\r\n style=\"z-index: 200\"\r\n [zoomPercentage]=\"zoomPercentage()\"\r\n [canZoomIn]=\"canZoomIn()\"\r\n [canZoomOut]=\"canZoomOut()\"\r\n (zoomIn)=\"changeZoom(+1)\"\r\n (zoomOut)=\"changeZoom(-1)\"\r\n (reset)=\"fitToMarkers()\"\r\n ></app-zoom-controls>\r\n</div>\r\n", styles: [".map-wrapper{position:relative;display:flex;width:100%;height:100%}.map-full{width:100%;height:100%}\n"], dependencies: [{ kind: "component", type: GoogleMap, selector: "google-map", inputs: ["height", "width", "mapId", "mapTypeId", "center", "zoom", "options"], outputs: ["mapInitialized", "authFailure", "boundsChanged", "centerChanged", "mapClick", "mapDblclick", "mapDrag", "mapDragend", "mapDragstart", "headingChanged", "idle", "maptypeidChanged", "mapMousemove", "mapMouseout", "mapMouseover", "projectionChanged", "mapRightclick", "tilesloaded", "tiltChanged", "zoomChanged"], exportAs: ["googleMap"] }, { kind: "ngmodule", type: SharedModule }, { kind: "component", type: ZoomControlsComponent, selector: "app-zoom-controls", inputs: ["zoomPercentage", "canZoomIn", "canZoomOut"], outputs: ["zoomIn", "zoomOut", "reset"] }] });
|
|
5242
5242
|
}
|
|
5243
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.
|
|
5243
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.13", ngImport: i0, type: GoogleMapComponent, decorators: [{
|
|
5244
5244
|
type: Component,
|
|
5245
5245
|
args: [{ selector: 'app-google-map', imports: [GoogleMap, SharedModule, ZoomControlsComponent], providers: [SimpleDateTimePipe], template: "<div class=\"map-wrapper\">\r\n <google-map height=\"100%\" width=\"100%\" [options]=\"mapOptions()\" [zoom]=\"zoom()\" (zoomChanged)=\"syncZoom()\" class=\"map-full\"/>\r\n <app-zoom-controls\r\n style=\"z-index: 200\"\r\n [zoomPercentage]=\"zoomPercentage()\"\r\n [canZoomIn]=\"canZoomIn()\"\r\n [canZoomOut]=\"canZoomOut()\"\r\n (zoomIn)=\"changeZoom(+1)\"\r\n (zoomOut)=\"changeZoom(-1)\"\r\n (reset)=\"fitToMarkers()\"\r\n ></app-zoom-controls>\r\n</div>\r\n", styles: [".map-wrapper{position:relative;display:flex;width:100%;height:100%}.map-full{width:100%;height:100%}\n"] }]
|
|
5246
5246
|
}], ctorParameters: () => [{ type: i1$1.TranslateService }, { type: SimpleDateTimePipe }], propDecorators: { map: [{ type: i0.ViewChild, args: [i0.forwardRef(() => GoogleMap), { isSignal: true }] }], googleMapId: [{ type: i0.Input, args: [{ isSignal: true, alias: "googleMapId", required: true }] }], darkTheme: [{ type: i0.Input, args: [{ isSignal: true, alias: "darkTheme", required: true }] }], items: [{ type: i0.Input, args: [{ isSignal: true, alias: "items", required: true }] }], pinColor: [{ type: i0.Input, args: [{ isSignal: true, alias: "pinColor", required: true }] }], markerClicked: [{ type: i0.Output, args: ["markerClicked"] }] } });
|
|
@@ -5249,7 +5249,7 @@ class ImagePreviewComponent {
|
|
|
5249
5249
|
data;
|
|
5250
5250
|
image;
|
|
5251
5251
|
svgElement;
|
|
5252
|
-
dimensionStyles = signal({}, ...(ngDevMode ? [{ debugName: "dimensionStyles" }] : []));
|
|
5252
|
+
dimensionStyles = signal({}, ...(ngDevMode ? [{ debugName: "dimensionStyles" }] : /* istanbul ignore next */ []));
|
|
5253
5253
|
constructor(data) {
|
|
5254
5254
|
this.data = data;
|
|
5255
5255
|
afterNextRender(() => {
|
|
@@ -5280,10 +5280,10 @@ class ImagePreviewComponent {
|
|
|
5280
5280
|
isHtml(image) {
|
|
5281
5281
|
return image !== null && image.constructor.name === 'SafeHtmlImpl';
|
|
5282
5282
|
}
|
|
5283
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.
|
|
5284
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.
|
|
5283
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.13", ngImport: i0, type: ImagePreviewComponent, deps: [{ token: MAT_DIALOG_DATA }], target: i0.ɵɵFactoryTarget.Component });
|
|
5284
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.13", type: ImagePreviewComponent, isStandalone: true, selector: "app-image-preview", viewQueries: [{ propertyName: "image", first: true, predicate: ["imageElement"], descendants: true }, { propertyName: "svgElement", first: true, predicate: ["svgElement"], descendants: true }], ngImport: i0, template: "<div class=\"relative overflow-hidden image-wrapper flex flex-col items-center justify-center\" [ngStyle]=\"dimensionStyles() ? dimensionStyles() : {'opacity': '0'}\">\r\n <mat-icon class=\"absolute top-4 right-4 hover:cursor-pointer text-mat-sys-on-error-container\" matDialogClose>close</mat-icon>\r\n @if (!isHtml(data.image)) {\r\n <img #imageElement [attr.src]=\"data.image\" alt=\"ImagePreview\"/>\r\n } @else {\r\n <div #svgElement class=\"p-4\" [innerHTML]=\"data.image\"></div>\r\n }\r\n</div>\r\n", styles: [".image-wrapper{min-height:124px;min-width:124px}\n"], dependencies: [{ kind: "ngmodule", type: SharedModule }, { kind: "component", type: i4.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: i1$5.MatDialogClose, selector: "[mat-dialog-close], [matDialogClose]", inputs: ["aria-label", "type", "mat-dialog-close", "matDialogClose"], exportAs: ["matDialogClose"] }, { kind: "directive", type: i6.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }] });
|
|
5285
5285
|
}
|
|
5286
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.
|
|
5286
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.13", ngImport: i0, type: ImagePreviewComponent, decorators: [{
|
|
5287
5287
|
type: Component,
|
|
5288
5288
|
args: [{ selector: 'app-image-preview', imports: [SharedModule], template: "<div class=\"relative overflow-hidden image-wrapper flex flex-col items-center justify-center\" [ngStyle]=\"dimensionStyles() ? dimensionStyles() : {'opacity': '0'}\">\r\n <mat-icon class=\"absolute top-4 right-4 hover:cursor-pointer text-mat-sys-on-error-container\" matDialogClose>close</mat-icon>\r\n @if (!isHtml(data.image)) {\r\n <img #imageElement [attr.src]=\"data.image\" alt=\"ImagePreview\"/>\r\n } @else {\r\n <div #svgElement class=\"p-4\" [innerHTML]=\"data.image\"></div>\r\n }\r\n</div>\r\n", styles: [".image-wrapper{min-height:124px;min-width:124px}\n"] }]
|
|
5289
5289
|
}], ctorParameters: () => [{ type: undefined, decorators: [{
|
|
@@ -5300,14 +5300,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.0", ngImpor
|
|
|
5300
5300
|
class ImageDisplayComponent {
|
|
5301
5301
|
sanitizer = inject(DomSanitizer);
|
|
5302
5302
|
dialog = inject(MatDialog);
|
|
5303
|
-
value = input.required(...(ngDevMode ? [{ debugName: "value" }] : []));
|
|
5303
|
+
value = input.required(...(ngDevMode ? [{ debugName: "value" }] : /* istanbul ignore next */ []));
|
|
5304
5304
|
imageUrl = computed(() => {
|
|
5305
5305
|
const value = this.value();
|
|
5306
5306
|
if (!value) {
|
|
5307
5307
|
return of(null);
|
|
5308
5308
|
}
|
|
5309
5309
|
return this.sanitizer.bypassSecurityTrustUrl(value);
|
|
5310
|
-
}, ...(ngDevMode ? [{ debugName: "imageUrl" }] : []));
|
|
5310
|
+
}, ...(ngDevMode ? [{ debugName: "imageUrl" }] : /* istanbul ignore next */ []));
|
|
5311
5311
|
isHtml(image) {
|
|
5312
5312
|
// Constructor name is different when built for production, have to check property
|
|
5313
5313
|
return image !== null && (image['changingThisBreaksApplicationSecurity']?.startsWith('<?xml') || image['changingThisBreaksApplicationSecurity']?.startsWith('<svg'));
|
|
@@ -5319,29 +5319,29 @@ class ImageDisplayComponent {
|
|
|
5319
5319
|
},
|
|
5320
5320
|
});
|
|
5321
5321
|
}
|
|
5322
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.
|
|
5323
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.
|
|
5322
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.13", ngImport: i0, type: ImageDisplayComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
5323
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.13", type: ImageDisplayComponent, isStandalone: true, selector: "app-image-display", inputs: { value: { classPropertyName: "value", publicName: "value", isSignal: true, isRequired: true, transformFunction: null } }, ngImport: i0, template: "@if (imageUrl(); as image) {\r\n @if (isHtml(image)) {\r\n <div (click)=\"openImage(image)\" [innerHTML]=\"image\" class=\"max-h-full h-full w-full object-contain block mt-1 hover:cursor-pointer\"></div>\r\n } @else {\r\n <img (click)=\"openImage(image)\" [attr.src]=\"image\" class=\"max-h-full h-full w-full object-contain block mt-1 hover:cursor-pointer\" alt=\"\"/>\r\n }\r\n}\r\n", styles: [""] });
|
|
5324
5324
|
}
|
|
5325
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.
|
|
5325
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.13", ngImport: i0, type: ImageDisplayComponent, decorators: [{
|
|
5326
5326
|
type: Component,
|
|
5327
5327
|
args: [{ selector: 'app-image-display', imports: [], template: "@if (imageUrl(); as image) {\r\n @if (isHtml(image)) {\r\n <div (click)=\"openImage(image)\" [innerHTML]=\"image\" class=\"max-h-full h-full w-full object-contain block mt-1 hover:cursor-pointer\"></div>\r\n } @else {\r\n <img (click)=\"openImage(image)\" [attr.src]=\"image\" class=\"max-h-full h-full w-full object-contain block mt-1 hover:cursor-pointer\" alt=\"\"/>\r\n }\r\n}\r\n" }]
|
|
5328
5328
|
}], propDecorators: { value: [{ type: i0.Input, args: [{ isSignal: true, alias: "value", required: true }] }] } });
|
|
5329
5329
|
|
|
5330
5330
|
class LabeledValueComponent {
|
|
5331
|
-
name = input.required(...(ngDevMode ? [{ debugName: "name" }] : []));
|
|
5332
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.
|
|
5333
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "21.2.
|
|
5331
|
+
name = input.required(...(ngDevMode ? [{ debugName: "name" }] : /* istanbul ignore next */ []));
|
|
5332
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.13", ngImport: i0, type: LabeledValueComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
5333
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "21.2.13", type: LabeledValueComponent, isStandalone: true, selector: "app-labeled-value", inputs: { name: { classPropertyName: "name", publicName: "name", isSignal: true, isRequired: true, transformFunction: null } }, ngImport: i0, template: "<div class=\"flex flex-row gap-x-2 items-center\">\r\n <div class=\"font-bold\">{{ name() | translate }}:</div>\r\n <div class=\"flex flex-row items-center gap-x-2\">\r\n <ng-content/>\r\n </div>\r\n</div>\r\n", styles: [""], dependencies: [{ kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i1$1.TranslatePipe, name: "translate" }] });
|
|
5334
5334
|
}
|
|
5335
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.
|
|
5335
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.13", ngImport: i0, type: LabeledValueComponent, decorators: [{
|
|
5336
5336
|
type: Component,
|
|
5337
5337
|
args: [{ selector: 'app-labeled-value', imports: [TranslateModule], template: "<div class=\"flex flex-row gap-x-2 items-center\">\r\n <div class=\"font-bold\">{{ name() | translate }}:</div>\r\n <div class=\"flex flex-row items-center gap-x-2\">\r\n <ng-content/>\r\n </div>\r\n</div>\r\n" }]
|
|
5338
5338
|
}], propDecorators: { name: [{ type: i0.Input, args: [{ isSignal: true, alias: "name", required: true }] }] } });
|
|
5339
5339
|
|
|
5340
5340
|
class LoadedIconComponent {
|
|
5341
5341
|
sanitizer;
|
|
5342
|
-
iconRequest = input.required(...(ngDevMode ? [{ debugName: "iconRequest" }] : []));
|
|
5343
|
-
defaultIcon = input.required(...(ngDevMode ? [{ debugName: "defaultIcon" }] : []));
|
|
5344
|
-
size = input.required(...(ngDevMode ? [{ debugName: "size" }] : []));
|
|
5342
|
+
iconRequest = input.required(...(ngDevMode ? [{ debugName: "iconRequest" }] : /* istanbul ignore next */ []));
|
|
5343
|
+
defaultIcon = input.required(...(ngDevMode ? [{ debugName: "defaultIcon" }] : /* istanbul ignore next */ []));
|
|
5344
|
+
size = input.required(...(ngDevMode ? [{ debugName: "size" }] : /* istanbul ignore next */ []));
|
|
5345
5345
|
icon = computed(() => {
|
|
5346
5346
|
return this.iconRequest().pipe(switchMap(response => {
|
|
5347
5347
|
if (!response) {
|
|
@@ -5359,7 +5359,7 @@ class LoadedIconComponent {
|
|
|
5359
5359
|
}), catchError(() => {
|
|
5360
5360
|
return of(null);
|
|
5361
5361
|
}));
|
|
5362
|
-
}, ...(ngDevMode ? [{ debugName: "icon" }] : []));
|
|
5362
|
+
}, ...(ngDevMode ? [{ debugName: "icon" }] : /* istanbul ignore next */ []));
|
|
5363
5363
|
isSvgIcon() {
|
|
5364
5364
|
const defaultIcon = this.defaultIcon();
|
|
5365
5365
|
return typeof defaultIcon !== 'string' && Object.hasOwn(defaultIcon, 'id') ? defaultIcon : null;
|
|
@@ -5367,16 +5367,16 @@ class LoadedIconComponent {
|
|
|
5367
5367
|
constructor(sanitizer) {
|
|
5368
5368
|
this.sanitizer = sanitizer;
|
|
5369
5369
|
}
|
|
5370
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.
|
|
5371
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.
|
|
5370
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.13", ngImport: i0, type: LoadedIconComponent, deps: [{ token: i1$6.DomSanitizer }], target: i0.ɵɵFactoryTarget.Component });
|
|
5371
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.13", type: LoadedIconComponent, isStandalone: true, selector: "app-loaded-icon", inputs: { iconRequest: { classPropertyName: "iconRequest", publicName: "iconRequest", isSignal: true, isRequired: true, transformFunction: null }, defaultIcon: { classPropertyName: "defaultIcon", publicName: "defaultIcon", isSignal: true, isRequired: true, transformFunction: null }, size: { classPropertyName: "size", publicName: "size", isSignal: true, isRequired: true, transformFunction: null } }, ngImport: i0, template: "<div [style.height.px]=\"size()\" [style.width.px]=\"size()\">\r\n @if (icon() | async; as icon) {\r\n <div [innerHTML]=\"icon\"></div>\r\n } @else {\r\n @if (isSvgIcon(); as icon) {\r\n <mat-icon [svgIcon]=\"icon.id\"></mat-icon>\r\n } @else {\r\n <mat-icon>{{ defaultIcon() }}</mat-icon>\r\n }\r\n }\r\n</div>\r\n", styles: [""], dependencies: [{ kind: "ngmodule", type: SharedModule }, { kind: "component", type: i4.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "pipe", type: i6.AsyncPipe, name: "async" }] });
|
|
5372
5372
|
}
|
|
5373
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.
|
|
5373
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.13", ngImport: i0, type: LoadedIconComponent, decorators: [{
|
|
5374
5374
|
type: Component,
|
|
5375
5375
|
args: [{ selector: 'app-loaded-icon', imports: [SharedModule], template: "<div [style.height.px]=\"size()\" [style.width.px]=\"size()\">\r\n @if (icon() | async; as icon) {\r\n <div [innerHTML]=\"icon\"></div>\r\n } @else {\r\n @if (isSvgIcon(); as icon) {\r\n <mat-icon [svgIcon]=\"icon.id\"></mat-icon>\r\n } @else {\r\n <mat-icon>{{ defaultIcon() }}</mat-icon>\r\n }\r\n }\r\n</div>\r\n" }]
|
|
5376
5376
|
}], ctorParameters: () => [{ type: i1$6.DomSanitizer }], propDecorators: { iconRequest: [{ type: i0.Input, args: [{ isSignal: true, alias: "iconRequest", required: true }] }], defaultIcon: [{ type: i0.Input, args: [{ isSignal: true, alias: "defaultIcon", required: true }] }], size: [{ type: i0.Input, args: [{ isSignal: true, alias: "size", required: true }] }] } });
|
|
5377
5377
|
|
|
5378
5378
|
class IconComponent {
|
|
5379
|
-
icon = input.required(...(ngDevMode ? [{ debugName: "icon" }] : []));
|
|
5379
|
+
icon = input.required(...(ngDevMode ? [{ debugName: "icon" }] : /* istanbul ignore next */ []));
|
|
5380
5380
|
isAsyncIcon() {
|
|
5381
5381
|
const icon = this.icon();
|
|
5382
5382
|
return !!icon && typeof icon === 'object' && !Object.hasOwn(icon, 'id') ? icon : null;
|
|
@@ -5385,10 +5385,10 @@ class IconComponent {
|
|
|
5385
5385
|
const icon = this.icon();
|
|
5386
5386
|
return !!icon && typeof icon === 'object' && Object.hasOwn(icon, 'id') ? icon : null;
|
|
5387
5387
|
}
|
|
5388
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.
|
|
5389
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.
|
|
5388
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.13", ngImport: i0, type: IconComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
5389
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.13", type: IconComponent, isStandalone: true, selector: "app-icon", inputs: { icon: { classPropertyName: "icon", publicName: "icon", isSignal: true, isRequired: true, transformFunction: null } }, ngImport: i0, template: "<div class=\"shrink-0 h-6\">\r\n @if (isAsyncIcon(); as loadedIcon) {\r\n <app-loaded-icon [iconRequest]=\"loadedIcon.data\" [defaultIcon]=\"loadedIcon.defaultIcon\" [size]=\"24\"/>\r\n }\r\n @if (isSvgIcon(); as svgIcon) {\r\n <mat-icon [svgIcon]=\"svgIcon.id\"></mat-icon>\r\n }\r\n @if (typeof icon() === 'string') {\r\n <mat-icon>{{ icon() }}</mat-icon>\r\n }\r\n @if (typeof icon() === 'number') {\r\n <span class=\"flex items-center justify-center shrink-0 min-w-5 h-5 px-1.5 rounded-full text-[11px] bg-mat-sys-primary text-mat-sys-on-primary\">{{ icon() }}</span>\r\n }\r\n</div>\r\n", styles: [""], dependencies: [{ kind: "ngmodule", type: SharedModule }, { kind: "component", type: i4.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: LoadedIconComponent, selector: "app-loaded-icon", inputs: ["iconRequest", "defaultIcon", "size"] }] });
|
|
5390
5390
|
}
|
|
5391
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.
|
|
5391
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.13", ngImport: i0, type: IconComponent, decorators: [{
|
|
5392
5392
|
type: Component,
|
|
5393
5393
|
args: [{ selector: 'app-icon', imports: [
|
|
5394
5394
|
SharedModule, LoadedIconComponent, MatIcon
|
|
@@ -5398,16 +5398,16 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.0", ngImpor
|
|
|
5398
5398
|
class LocalSortTableComponent {
|
|
5399
5399
|
tenantPropertiesService;
|
|
5400
5400
|
translateService;
|
|
5401
|
-
columns = input.required(...(ngDevMode ? [{ debugName: "columns" }] : []));
|
|
5402
|
-
data = input.required(...(ngDevMode ? [{ debugName: "data" }] : []));
|
|
5403
|
-
translationPrefix = input('COMMON.', ...(ngDevMode ? [{ debugName: "translationPrefix" }] : []));
|
|
5404
|
-
loading = input(false, ...(ngDevMode ? [{ debugName: "loading" }] : []));
|
|
5405
|
-
noValuesMessage = input('', ...(ngDevMode ? [{ debugName: "noValuesMessage" }] : []));
|
|
5401
|
+
columns = input.required(...(ngDevMode ? [{ debugName: "columns" }] : /* istanbul ignore next */ []));
|
|
5402
|
+
data = input.required(...(ngDevMode ? [{ debugName: "data" }] : /* istanbul ignore next */ []));
|
|
5403
|
+
translationPrefix = input('COMMON.', ...(ngDevMode ? [{ debugName: "translationPrefix" }] : /* istanbul ignore next */ []));
|
|
5404
|
+
loading = input(false, ...(ngDevMode ? [{ debugName: "loading" }] : /* istanbul ignore next */ []));
|
|
5405
|
+
noValuesMessage = input('', ...(ngDevMode ? [{ debugName: "noValuesMessage" }] : /* istanbul ignore next */ []));
|
|
5406
5406
|
itemSelected = output();
|
|
5407
5407
|
sortDirection = 'asc';
|
|
5408
5408
|
sortField;
|
|
5409
|
-
displayData = signal(null, ...(ngDevMode ? [{ debugName: "displayData" }] : []));
|
|
5410
|
-
sorting = signal(false, ...(ngDevMode ? [{ debugName: "sorting" }] : []));
|
|
5409
|
+
displayData = signal(null, ...(ngDevMode ? [{ debugName: "displayData" }] : /* istanbul ignore next */ []));
|
|
5410
|
+
sorting = signal(false, ...(ngDevMode ? [{ debugName: "sorting" }] : /* istanbul ignore next */ []));
|
|
5411
5411
|
constructor(tenantPropertiesService, translateService) {
|
|
5412
5412
|
this.tenantPropertiesService = tenantPropertiesService;
|
|
5413
5413
|
this.translateService = translateService;
|
|
@@ -5451,10 +5451,10 @@ class LocalSortTableComponent {
|
|
|
5451
5451
|
this.sorting.set(false);
|
|
5452
5452
|
}
|
|
5453
5453
|
}
|
|
5454
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.
|
|
5455
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.
|
|
5454
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.13", ngImport: i0, type: LocalSortTableComponent, deps: [{ token: TenantPropertiesService }, { token: i1$1.TranslateService }], target: i0.ɵɵFactoryTarget.Component });
|
|
5455
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.13", type: LocalSortTableComponent, isStandalone: true, selector: "app-local-sort-table", inputs: { columns: { classPropertyName: "columns", publicName: "columns", isSignal: true, isRequired: true, transformFunction: null }, data: { classPropertyName: "data", publicName: "data", isSignal: true, isRequired: true, transformFunction: null }, translationPrefix: { classPropertyName: "translationPrefix", publicName: "translationPrefix", isSignal: true, isRequired: false, transformFunction: null }, loading: { classPropertyName: "loading", publicName: "loading", isSignal: true, isRequired: false, transformFunction: null }, noValuesMessage: { classPropertyName: "noValuesMessage", publicName: "noValuesMessage", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { itemSelected: "itemSelected" }, ngImport: i0, template: "<table>\r\n <thead>\r\n <tr>\r\n @for (column of columns(); track column.name) {\r\n <th class=\"!font-medium truncate\" [ngClass]=\"{'sort-field': column.shouldSort, 'cursor-pointer': column.shouldSort}\" (click)=\"column.shouldSort ? sort(column.name) : undefined\">\r\n <div class=\"flex flex-row items-center gap-x-2\">\r\n {{ (translationPrefix().toUpperCase() +column.name.toUpperCase()) | translate }}\r\n @if (column.shouldSort) {\r\n <mat-icon>{{ sortDirection === 'asc' ? 'arrow_upward' : 'arrow_downward' }}</mat-icon>\r\n }\r\n </div>\r\n </th>\r\n }\r\n </tr>\r\n </thead>\r\n <tbody>\r\n @if (loading()) {\r\n <div class=\"w-full h-full flex flex-col justify-center items-center\">\r\n <mat-spinner diameter=\"30\"></mat-spinner>\r\n </div>\r\n } @else {\r\n @if (displayData(); as displayData){\r\n @if (!noValuesMessage()) {\r\n @if (!sorting()) {\r\n <cdk-virtual-scroll-viewport [itemSize]=\"56\" class=\"viewport\">\r\n <tr *cdkVirtualFor=\"let element of displayData\" (click)=\"itemSelected.emit(element)\">\r\n @for (column of columns(); track column.name) {\r\n <td class=\"cursor-pointer truncate\">\r\n <span [matTooltip]=\"column.shouldTranslateValue ? ((translationPrefix() + element[column.name]) | translate) : element[column.name]\">\r\n {{ column.shouldTranslateValue ? ((translationPrefix() + element[column.name]) | translate) : element[column.name] }}\r\n </span>\r\n }\r\n </tr>\r\n </cdk-virtual-scroll-viewport>\r\n }\r\n } @else {\r\n <div class=\"w-full h-full flex flex-col justify-center items-center\">\r\n <span>{{ noValuesMessage() | translate }}</span>\r\n </div>\r\n }\r\n }\r\n }\r\n </tbody>\r\n</table>\r\n", styles: [":host{display:block;overflow:hidden;height:100%;width:100%}table{height:100%;width:100%;display:block}table thead{height:56px}table tbody{display:block;height:calc(100% - 56px);width:100%;overflow:hidden}table tbody tr:hover{background-color:var(--mat-sys-primary-container);color:var(--mat-sys-on-primary-container)}table th,table td{padding-left:1rem;text-align:left;vertical-align:middle;border-bottom:1px solid var(--mat-sys-outline-variant)}tr{height:56px;display:table;table-layout:fixed;width:100%}.viewport{display:block;width:100%;height:100%;overflow:auto}.sort-field mat-icon{font-size:18px;line-height:18px;height:18px;width:18px;opacity:0;transition:all ease-in .2s}.sort-field:hover mat-icon{opacity:1}\n"], dependencies: [{ kind: "directive", type: CdkFixedSizeVirtualScroll, selector: "cdk-virtual-scroll-viewport[itemSize]", inputs: ["itemSize", "minBufferPx", "maxBufferPx"] }, { kind: "directive", type: CdkVirtualForOf, selector: "[cdkVirtualFor][cdkVirtualForOf]", inputs: ["cdkVirtualForOf", "cdkVirtualForTrackBy", "cdkVirtualForTemplate", "cdkVirtualForTemplateCacheSize"] }, { kind: "component", type: CdkVirtualScrollViewport, selector: "cdk-virtual-scroll-viewport", inputs: ["orientation", "appendOnly"], outputs: ["scrolledIndexChange"] }, { kind: "ngmodule", type: SharedModule }, { kind: "directive", type: i3.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }, { kind: "component", type: i4.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i5$1.MatProgressSpinner, selector: "mat-progress-spinner, mat-spinner", inputs: ["color", "mode", "value", "diameter", "strokeWidth"], exportAs: ["matProgressSpinner"] }, { kind: "directive", type: i6.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "pipe", type: i1$1.TranslatePipe, name: "translate" }] });
|
|
5456
5456
|
}
|
|
5457
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.
|
|
5457
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.13", ngImport: i0, type: LocalSortTableComponent, decorators: [{
|
|
5458
5458
|
type: Component,
|
|
5459
5459
|
args: [{ selector: 'app-local-sort-table', imports: [
|
|
5460
5460
|
CdkFixedSizeVirtualScroll,
|
|
@@ -5466,7 +5466,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.0", ngImpor
|
|
|
5466
5466
|
}], ctorParameters: () => [{ type: TenantPropertiesService }, { type: i1$1.TranslateService }], propDecorators: { columns: [{ type: i0.Input, args: [{ isSignal: true, alias: "columns", required: true }] }], data: [{ type: i0.Input, args: [{ isSignal: true, alias: "data", required: true }] }], translationPrefix: [{ type: i0.Input, args: [{ isSignal: true, alias: "translationPrefix", required: false }] }], loading: [{ type: i0.Input, args: [{ isSignal: true, alias: "loading", required: false }] }], noValuesMessage: [{ type: i0.Input, args: [{ isSignal: true, alias: "noValuesMessage", required: false }] }], itemSelected: [{ type: i0.Output, args: ["itemSelected"] }] } });
|
|
5467
5467
|
|
|
5468
5468
|
class MasterDetailsViewComponent {
|
|
5469
|
-
displayRatio = input('wide', ...(ngDevMode ? [{ debugName: "displayRatio" }] : []));
|
|
5469
|
+
displayRatio = input('wide', ...(ngDevMode ? [{ debugName: "displayRatio" }] : /* istanbul ignore next */ []));
|
|
5470
5470
|
width = computed(() => {
|
|
5471
5471
|
switch (this.displayRatio()) {
|
|
5472
5472
|
case 'full':
|
|
@@ -5482,11 +5482,11 @@ class MasterDetailsViewComponent {
|
|
|
5482
5482
|
default:
|
|
5483
5483
|
throw Error('Too deep!');
|
|
5484
5484
|
}
|
|
5485
|
-
}, ...(ngDevMode ? [{ debugName: "width" }] : []));
|
|
5486
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.
|
|
5487
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "21.2.
|
|
5485
|
+
}, ...(ngDevMode ? [{ debugName: "width" }] : /* istanbul ignore next */ []));
|
|
5486
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.13", ngImport: i0, type: MasterDetailsViewComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
5487
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "21.2.13", type: MasterDetailsViewComponent, isStandalone: true, selector: "app-master-details-view", inputs: { displayRatio: { classPropertyName: "displayRatio", publicName: "displayRatio", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: "<div class=\"flex h-full w-full min-w-full min-h-full pt-2 overflow-hidden bg-base-color-50\">\r\n <div class=\"pr-4 flex shrink-0 grow-0\" [style.width]=\"width()\" [style.max-width]=\"width()\">\r\n <ng-content select=\"[app-master]\"/>\r\n </div>\r\n <mat-divider [vertical]=\"true\"/>\r\n <div class=\"pl-4 flex shrink grow overflow-hidden\">\r\n <ng-content select=\"[app-details]\"/>\r\n </div>\r\n</div>\r\n", styles: [":host{display:block;width:100%;height:100%;overflow:hidden}\n"], dependencies: [{ kind: "ngmodule", type: SharedModule }, { kind: "component", type: i1$7.MatDivider, selector: "mat-divider", inputs: ["vertical", "inset"] }] });
|
|
5488
5488
|
}
|
|
5489
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.
|
|
5489
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.13", ngImport: i0, type: MasterDetailsViewComponent, decorators: [{
|
|
5490
5490
|
type: Component,
|
|
5491
5491
|
args: [{ selector: 'app-master-details-view', imports: [SharedModule], template: "<div class=\"flex h-full w-full min-w-full min-h-full pt-2 overflow-hidden bg-base-color-50\">\r\n <div class=\"pr-4 flex shrink-0 grow-0\" [style.width]=\"width()\" [style.max-width]=\"width()\">\r\n <ng-content select=\"[app-master]\"/>\r\n </div>\r\n <mat-divider [vertical]=\"true\"/>\r\n <div class=\"pl-4 flex shrink grow overflow-hidden\">\r\n <ng-content select=\"[app-details]\"/>\r\n </div>\r\n</div>\r\n", styles: [":host{display:block;width:100%;height:100%;overflow:hidden}\n"] }]
|
|
5492
5492
|
}], propDecorators: { displayRatio: [{ type: i0.Input, args: [{ isSignal: true, alias: "displayRatio", required: false }] }] } });
|
|
@@ -5519,17 +5519,17 @@ class NestedListViewComponent {
|
|
|
5519
5519
|
this.itemsSelected.emit([]);
|
|
5520
5520
|
}
|
|
5521
5521
|
}
|
|
5522
|
-
dataSource = input.required(...(ngDevMode ? [{ debugName: "dataSource" }] : []));
|
|
5523
|
-
dataControl = input.required(...(ngDevMode ? [{ debugName: "dataControl" }] : []));
|
|
5524
|
-
width = input('quarter', ...(ngDevMode ? [{ debugName: "width" }] : []));
|
|
5525
|
-
disableThresholdId = input(null, ...(ngDevMode ? [{ debugName: "disableThresholdId" }] : []));
|
|
5526
|
-
isColoredInput = input(false, ...(ngDevMode ? [{ debugName: "isColoredInput" }] : []));
|
|
5527
|
-
searchActions = input([], ...(ngDevMode ? [{ debugName: "searchActions" }] : []));
|
|
5528
|
-
defaultSearchAction = computed(() => this.searchActions().find((action) => !!action.defaultAction), ...(ngDevMode ? [{ debugName: "defaultSearchAction" }] : []));
|
|
5529
|
-
otherSearchActions = computed(() => this.searchActions().filter((action) => !action.defaultAction), ...(ngDevMode ? [{ debugName: "otherSearchActions" }] : []));
|
|
5530
|
-
enableMultiSelect = input(false, ...(ngDevMode ? [{ debugName: "enableMultiSelect" }] : []));
|
|
5531
|
-
ctrlPressed = signal(false, ...(ngDevMode ? [{ debugName: "ctrlPressed" }] : []));
|
|
5532
|
-
shiftPressed = signal(false, ...(ngDevMode ? [{ debugName: "shiftPressed" }] : []));
|
|
5522
|
+
dataSource = input.required(...(ngDevMode ? [{ debugName: "dataSource" }] : /* istanbul ignore next */ []));
|
|
5523
|
+
dataControl = input.required(...(ngDevMode ? [{ debugName: "dataControl" }] : /* istanbul ignore next */ []));
|
|
5524
|
+
width = input('quarter', ...(ngDevMode ? [{ debugName: "width" }] : /* istanbul ignore next */ []));
|
|
5525
|
+
disableThresholdId = input(null, ...(ngDevMode ? [{ debugName: "disableThresholdId" }] : /* istanbul ignore next */ []));
|
|
5526
|
+
isColoredInput = input(false, ...(ngDevMode ? [{ debugName: "isColoredInput" }] : /* istanbul ignore next */ []));
|
|
5527
|
+
searchActions = input([], ...(ngDevMode ? [{ debugName: "searchActions" }] : /* istanbul ignore next */ []));
|
|
5528
|
+
defaultSearchAction = computed(() => this.searchActions().find((action) => !!action.defaultAction), ...(ngDevMode ? [{ debugName: "defaultSearchAction" }] : /* istanbul ignore next */ []));
|
|
5529
|
+
otherSearchActions = computed(() => this.searchActions().filter((action) => !action.defaultAction), ...(ngDevMode ? [{ debugName: "otherSearchActions" }] : /* istanbul ignore next */ []));
|
|
5530
|
+
enableMultiSelect = input(false, ...(ngDevMode ? [{ debugName: "enableMultiSelect" }] : /* istanbul ignore next */ []));
|
|
5531
|
+
ctrlPressed = signal(false, ...(ngDevMode ? [{ debugName: "ctrlPressed" }] : /* istanbul ignore next */ []));
|
|
5532
|
+
shiftPressed = signal(false, ...(ngDevMode ? [{ debugName: "shiftPressed" }] : /* istanbul ignore next */ []));
|
|
5533
5533
|
widthClass = computed(() => {
|
|
5534
5534
|
switch (this.width()) {
|
|
5535
5535
|
case 'full':
|
|
@@ -5541,37 +5541,37 @@ class NestedListViewComponent {
|
|
|
5541
5541
|
case 'half':
|
|
5542
5542
|
return 'w-1/2';
|
|
5543
5543
|
}
|
|
5544
|
-
}, ...(ngDevMode ? [{ debugName: "widthClass" }] : []));
|
|
5545
|
-
selectionConfirmationAction = input(() => of(true), ...(ngDevMode ? [{ debugName: "selectionConfirmationAction" }] : []));
|
|
5546
|
-
loadingBreadcrumbs = signal(true, ...(ngDevMode ? [{ debugName: "loadingBreadcrumbs" }] : []));
|
|
5547
|
-
loadingChildren = signal(true, ...(ngDevMode ? [{ debugName: "loadingChildren" }] : []));
|
|
5548
|
-
selectedItem = signal(null, ...(ngDevMode ? [{ debugName: "selectedItem" }] : []));
|
|
5549
|
-
selectedItems = signal([], ...(ngDevMode ? [{ debugName: "selectedItems" }] : []));
|
|
5550
|
-
hideSearch = input(false, ...(ngDevMode ? [{ debugName: "hideSearch" }] : []));
|
|
5544
|
+
}, ...(ngDevMode ? [{ debugName: "widthClass" }] : /* istanbul ignore next */ []));
|
|
5545
|
+
selectionConfirmationAction = input(() => of(true), ...(ngDevMode ? [{ debugName: "selectionConfirmationAction" }] : /* istanbul ignore next */ []));
|
|
5546
|
+
loadingBreadcrumbs = signal(true, ...(ngDevMode ? [{ debugName: "loadingBreadcrumbs" }] : /* istanbul ignore next */ []));
|
|
5547
|
+
loadingChildren = signal(true, ...(ngDevMode ? [{ debugName: "loadingChildren" }] : /* istanbul ignore next */ []));
|
|
5548
|
+
selectedItem = signal(null, ...(ngDevMode ? [{ debugName: "selectedItem" }] : /* istanbul ignore next */ []));
|
|
5549
|
+
selectedItems = signal([], ...(ngDevMode ? [{ debugName: "selectedItems" }] : /* istanbul ignore next */ []));
|
|
5550
|
+
hideSearch = input(false, ...(ngDevMode ? [{ debugName: "hideSearch" }] : /* istanbul ignore next */ []));
|
|
5551
5551
|
nameSearchControl = new FormControl('');
|
|
5552
5552
|
searchTerm = toSignal(this.nameSearchControl.valueChanges.pipe(startWith(this.nameSearchControl.getRawValue())));
|
|
5553
|
-
breadcrumbs = signal([], ...(ngDevMode ? [{ debugName: "breadcrumbs" }] : []));
|
|
5554
|
-
roots = signal([], ...(ngDevMode ? [{ debugName: "roots" }] : []));
|
|
5555
|
-
hasMultipleRoots = signal(false, ...(ngDevMode ? [{ debugName: "hasMultipleRoots" }] : []));
|
|
5556
|
-
rootButtonText = input('COMMON.BACK_TO_ROOTS_BUTTON_TEXT', ...(ngDevMode ? [{ debugName: "rootButtonText" }] : []));
|
|
5557
|
-
enableDrag = input(false, ...(ngDevMode ? [{ debugName: "enableDrag" }] : []));
|
|
5558
|
-
isDragging = signal(false, ...(ngDevMode ? [{ debugName: "isDragging" }] : []));
|
|
5553
|
+
breadcrumbs = signal([], ...(ngDevMode ? [{ debugName: "breadcrumbs" }] : /* istanbul ignore next */ []));
|
|
5554
|
+
roots = signal([], ...(ngDevMode ? [{ debugName: "roots" }] : /* istanbul ignore next */ []));
|
|
5555
|
+
hasMultipleRoots = signal(false, ...(ngDevMode ? [{ debugName: "hasMultipleRoots" }] : /* istanbul ignore next */ []));
|
|
5556
|
+
rootButtonText = input('COMMON.BACK_TO_ROOTS_BUTTON_TEXT', ...(ngDevMode ? [{ debugName: "rootButtonText" }] : /* istanbul ignore next */ []));
|
|
5557
|
+
enableDrag = input(false, ...(ngDevMode ? [{ debugName: "enableDrag" }] : /* istanbul ignore next */ []));
|
|
5558
|
+
isDragging = signal(false, ...(ngDevMode ? [{ debugName: "isDragging" }] : /* istanbul ignore next */ []));
|
|
5559
5559
|
dragging = output();
|
|
5560
|
-
children = signal([], ...(ngDevMode ? [{ debugName: "children" }] : []));
|
|
5560
|
+
children = signal([], ...(ngDevMode ? [{ debugName: "children" }] : /* istanbul ignore next */ []));
|
|
5561
5561
|
filteredChildren = computed(() => {
|
|
5562
5562
|
const searchTerm = this.searchTerm();
|
|
5563
5563
|
if (!searchTerm) {
|
|
5564
5564
|
return this.children();
|
|
5565
5565
|
}
|
|
5566
5566
|
return this.children().filter(item => item.name.toLowerCase().includes(searchTerm.toLowerCase()));
|
|
5567
|
-
}, ...(ngDevMode ? [{ debugName: "filteredChildren" }] : []));
|
|
5567
|
+
}, ...(ngDevMode ? [{ debugName: "filteredChildren" }] : /* istanbul ignore next */ []));
|
|
5568
5568
|
allSelectableItems = computed(() => {
|
|
5569
5569
|
return this.filteredChildren().filter(item => !item.bulkSelectDisabled);
|
|
5570
|
-
}, ...(ngDevMode ? [{ debugName: "allSelectableItems" }] : []));
|
|
5570
|
+
}, ...(ngDevMode ? [{ debugName: "allSelectableItems" }] : /* istanbul ignore next */ []));
|
|
5571
5571
|
itemSelected = output();
|
|
5572
5572
|
itemsSelected = output();
|
|
5573
|
-
countsMap = signal(new Map(), ...(ngDevMode ? [{ debugName: "countsMap" }] : []));
|
|
5574
|
-
currentScopes = signal(null, ...(ngDevMode ? [{ debugName: "currentScopes" }] : []));
|
|
5573
|
+
countsMap = signal(new Map(), ...(ngDevMode ? [{ debugName: "countsMap" }] : /* istanbul ignore next */ []));
|
|
5574
|
+
currentScopes = signal(null, ...(ngDevMode ? [{ debugName: "currentScopes" }] : /* istanbul ignore next */ []));
|
|
5575
5575
|
constructor(destroyRef) {
|
|
5576
5576
|
this.destroyRef = destroyRef;
|
|
5577
5577
|
effect(() => {
|
|
@@ -5833,10 +5833,10 @@ class NestedListViewComponent {
|
|
|
5833
5833
|
this.breadcrumbs.update(items => items.map(item => item.id === guid ? { ...item, rightNumber } : item));
|
|
5834
5834
|
this.children.update(items => items.map(item => item.id === guid ? { ...item, rightNumber } : item));
|
|
5835
5835
|
}
|
|
5836
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.
|
|
5837
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.0", type: NestedListViewComponent, isStandalone: true, selector: "app-nested-list-view", inputs: { dataSource: { classPropertyName: "dataSource", publicName: "dataSource", isSignal: true, isRequired: true, transformFunction: null }, dataControl: { classPropertyName: "dataControl", publicName: "dataControl", isSignal: true, isRequired: true, transformFunction: null }, width: { classPropertyName: "width", publicName: "width", isSignal: true, isRequired: false, transformFunction: null }, disableThresholdId: { classPropertyName: "disableThresholdId", publicName: "disableThresholdId", isSignal: true, isRequired: false, transformFunction: null }, isColoredInput: { classPropertyName: "isColoredInput", publicName: "isColoredInput", isSignal: true, isRequired: false, transformFunction: null }, searchActions: { classPropertyName: "searchActions", publicName: "searchActions", isSignal: true, isRequired: false, transformFunction: null }, enableMultiSelect: { classPropertyName: "enableMultiSelect", publicName: "enableMultiSelect", isSignal: true, isRequired: false, transformFunction: null }, selectionConfirmationAction: { classPropertyName: "selectionConfirmationAction", publicName: "selectionConfirmationAction", isSignal: true, isRequired: false, transformFunction: null }, hideSearch: { classPropertyName: "hideSearch", publicName: "hideSearch", isSignal: true, isRequired: false, transformFunction: null }, rootButtonText: { classPropertyName: "rootButtonText", publicName: "rootButtonText", isSignal: true, isRequired: false, transformFunction: null }, enableDrag: { classPropertyName: "enableDrag", publicName: "enableDrag", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { dragging: "dragging", itemSelected: "itemSelected", itemsSelected: "itemsSelected" }, host: { listeners: { "window:keydown": "onKeyDown($event)", "window:keyup": "onKeyUp($event)" } }, ngImport: i0, template: "<div class=\"container flex h-full w-full min-w-full min-h-full relative overflow-hidden\">\r\n <div [ngClass]=\"widthClass()\" class=\"master flex shrink-0 grow-0 min-w-0\">\r\n\r\n <!-- LISTING -->\r\n <div class=\"w-full h-full flex flex-col gap-y-2 relative\" [ngClass]=\"hideSearch() ? 'pt-2' : 'pt-1'\">\r\n\r\n <!-- HEADER -->\r\n <div class=\"flex w-full flex-row gap-x-2\">\r\n\r\n <!-- SEARCH -->\r\n @if (!hideSearch()) {\r\n <div class=\"flex shrink grow flex-row pt-1 gap-x-2 overflow-hidden\">\r\n <mat-form-field class=\"flex grow shrink small-input search-control\" (keydown.shift)=\"$event.stopPropagation()\" (keydown.enter)=\"defaultSearchAction()?.action({parent: this.selectedItem()?.data, control: this.nameSearchControl})\" [ngClass]=\"{'colored-input': isColoredInput()}\">\r\n <mat-label>{{ 'COMMON.SEARCH_IMMEDIATE_CHILDREN' | translate }}</mat-label>\r\n <input matInput type=\"text\" [formControl]=\"nameSearchControl\">\r\n <mat-icon matSuffix>search</mat-icon>\r\n </mat-form-field>\r\n @if (defaultSearchAction(); as defaultAction) {\r\n <div [matTooltip]=\"defaultAction.disabledTooltip ? (defaultAction.disabledTooltip | translate) : ''\" [matTooltipDisabled]=\"defaultAction.disableCondition ? !defaultAction.disableCondition({control: nameSearchControl}) : true\">\r\n <button mat-mini-fab [disabled]=\"defaultAction.disableCondition ? defaultAction.disableCondition({control: nameSearchControl}) : false\" (click)=\"defaultAction.action({parent: this.selectedItem()?.data, control: this.nameSearchControl})\" [matTooltip]=\"defaultAction.name | translate\">\r\n <mat-icon [svgIcon]=\"defaultAction.icon.id\"/>\r\n </button>\r\n </div>\r\n }\r\n @for (action of otherSearchActions(); track $index) {\r\n @if (action.condition() | async) {\r\n <div [matTooltip]=\"action.disabledTooltip ? (action.disabledTooltip | translate) : ''\" [matTooltipDisabled]=\"action.disableCondition ? !action.disableCondition() : true\">\r\n <button mat-mini-fab [disabled]=\"action.disableCondition ? action.disableCondition() : false\" (click)=\"action.action()\" [matTooltip]=\"action.name | translate\">\r\n <mat-icon [svgIcon]=\"action.icon.id\"/>\r\n </button>\r\n </div>\r\n }\r\n }\r\n </div>\r\n }\r\n </div>\r\n\r\n <!-- LIST -->\r\n <div class=\"flex flex-col w-full h-full relative overflow-hidden\">\r\n\r\n <!-- BREADCRUMBS -->\r\n <div class=\"max-h-[50%] overflow-auto shrink-0\" [overflowClass]=\"'pr-4'\">\r\n @if (!loadingBreadcrumbs()) {\r\n @if (breadcrumbs(); as items) {\r\n <div class=\"flex flex-col w-full overflow-x-hidden\">\r\n @for (item of items; let i = $index; track i) {\r\n @if (selectedItem() && hasMultipleRoots() && i === 0) {\r\n <mat-card (click)=\"resetNavigation()\" class=\"mb-2 cursor-pointer regular-item hover:bg-hover-color\" [ngClass]=\"disableThresholdId() ? 'bg-disabled-color opacity-50 hover:cursor-auto pointer-events-none disabled-item' : ''\">\r\n <div class=\"px-3 flex flex-row items-center gap-x-2 item-card\">\r\n <div class=\"shrink-0 h-6\">\r\n <mat-icon>arrow_upward</mat-icon>\r\n </div>\r\n <span class=\"text-mat-sys-on-surface\">{{ rootButtonText() | translate: {default: rootButtonText()} }}</span>\r\n </div>\r\n </mat-card>\r\n }\r\n <mat-card class=\"mb-2 cursor-pointer\" (click)=\"selectBreadcrumb(item)\"\r\n [dndDraggable]=\"item.data\" [dndDisableDragIf]=\"!enableDrag() || !!shouldDisableBreadcrumbClick(item)\" (dndStart)=\"dragStart($event, item.data)\" (dndEnd)=\"isDragging.set(false)\"\r\n [ngClass]=\"[isBreadcrumbSelected(item) ? 'selected-item' : 'regular-item hover:bg-hover-color', selectedItems().length ? 'opacity-50' : '', shouldDisableBreadcrumbClick(item) ? 'bg-disabled-color opacity-50 hover:cursor-auto pointer-events-none disabled-item' : '']\"\r\n [appScrollIntoView]=\"isBreadcrumbSelected(item)\" [matTooltip]=\"item.name\" matTooltipPosition=\"right\">\r\n <div class=\"px-3 flex flex-row items-center justify-between gap-x-2 item-card\">\r\n <div class=\"flex flex-row grow items-center gap-x-2 overflow-hidden\">\r\n @if (item.icon; as icon) {\r\n <app-icon [icon]=\"icon\"/>\r\n }\r\n <span [ngClass]=\"[isBreadcrumbSelected(item) ? 'text-mat-sys-surface-container' : 'text-mat-sys-on-surface']\" class=\"truncate\">{{ item.name }}</span>\r\n </div>\r\n @if (item.rightNumber && item.rightNumber > 0) {\r\n <span class=\"flex items-center justify-center shrink-0 min-w-5 h-5 px-1.5 rounded-full text-[11px] font-semibold\" [ngClass]=\"isBreadcrumbSelected(item) ? 'bg-transparent text-mat-sys-surface-container' : 'bg-mat-sys-primary text-mat-sys-on-primary'\">{{ item.rightNumber }}</span>\r\n } @else if (enableDrag() && !shouldDisableBreadcrumbClick(item)) {\r\n <mat-icon>drag_indicator</mat-icon>\r\n }\r\n </div>\r\n </mat-card>\r\n }\r\n </div>\r\n }\r\n }\r\n </div>\r\n\r\n <mat-divider class=\"w-full pb-2\"/>\r\n\r\n <!-- CHILDREN -->\r\n @if (selectedItem()) {\r\n <div class=\"flex-1 overflow-auto min-h-0\" [overflowClass]=\"'pr-4'\">\r\n @if (!loadingChildren()) {\r\n @if (filteredChildren(); as items) {\r\n @if (items.length) {\r\n <div class=\"flex flex-col w-full overflow-y-auto overflow-x-hidden\">\r\n @for (item of items; track $index) {\r\n <mat-card class=\"mb-2 cursor-pointer\" [ngClass]=\"[isChildSelected(item) ? 'selected-item' : 'regular-item hover:bg-hover-color', shiftPressed() ? 'no-select-item' : '', (ctrlPressed() || shiftPressed()) && item.bulkSelectDisabled ? 'bg-disabled-color opacity-50 hover:cursor-auto disabled-item' : '']\" (click)=\"selectChild(item)\" [matTooltip]=\"(ctrlPressed() || shiftPressed()) && item.bulkSelectDisabled && item.bulkSelectDisabledTooltip ? (item.bulkSelectDisabledTooltip | translate) : item.name\" matTooltipPosition=\"right\"\r\n [dndDraggable]=\"item.data\" [dndDisableDragIf]=\"!enableDrag()\" (dndStart)=\"dragStart($event, item.data)\" (dndEnd)=\"isDragging.set(false)\">\r\n <div class=\"px-3 flex flex-row items-center justify-between gap-x-2 item-card\">\r\n <div class=\"flex flex-row grow items-center gap-x-2 overflow-hidden\">\r\n @if (item.icon; as icon) {\r\n <app-icon [icon]=\"icon\"/>\r\n }\r\n <span [ngClass]=\"isChildSelected(item) ? 'text-mat-sys-surface-container' : 'text-mat-sys-on-surface'\" class=\"truncate\">{{ item.name }}</span>\r\n </div>\r\n @if (item.rightNumber && item.rightNumber > 0) {\r\n <span class=\"flex items-center justify-center shrink-0 min-w-5 h-5 px-1.5 rounded-full text-[11px] font-semibold\" [ngClass]=\"isChildSelected(item) ? 'bg-transparent text-mat-sys-surface-container' : 'bg-mat-sys-primary text-mat-sys-on-primary'\">{{ item.rightNumber }}</span>\r\n } @else if (enableDrag()) {\r\n <mat-icon>drag_indicator</mat-icon>\r\n }\r\n </div>\r\n </mat-card>\r\n }\r\n </div>\r\n } @else {\r\n <div class=\"flex flex-col grow justify-center items-center\">\r\n <ng-content select=\"[app-no-items-message]\"/>\r\n </div>\r\n }\r\n }\r\n } @else {\r\n <div class=\"flex flex-col grow justify-center items-center\">\r\n <mat-spinner diameter=\"30\"></mat-spinner>\r\n </div>\r\n }\r\n </div>\r\n }\r\n\r\n <!-- ACTIONS (bottom right of the listing) -->\r\n <div class=\"absolute bottom-0 right-0 z-10\">\r\n <ng-content select=\"[app-actions]\"/>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n </div>\r\n\r\n @if (width() !== 'full') {\r\n <mat-divider [vertical]=\"true\" class=\"relative top-2\"/>\r\n\r\n <!-- DETAILS -->\r\n <div class=\"details flex shrink grow overflow-hidden pt-2\">\r\n @if (!selectedItems().length) {\r\n <ng-content select=\"[app-details]\"/>\r\n } @else {\r\n <div class=\"h-full w-full flex flex-col items-center justify-center relative\">\r\n <div class=\"flex flex-col items-center justify-center\">\r\n <mat-checkbox class=\"w-full\"\r\n [checked]=\"selectedItems().length === allSelectableItems().length\"\r\n (change)=\"toggleSelectAll()\">\r\n {{ 'COMMON.SELECT_ALL' | translate }}\r\n </mat-checkbox>\r\n <mat-divider class=\"w-full !mb-2 !mt-2\"></mat-divider>\r\n <span>{{ 'COMMON.NUMBER_OF_ITEMS_SELECTED' | translate: {numberOfItems: selectedItems().length} }} </span>\r\n </div>\r\n <div class=\"absolute bottom-0 right-0\">\r\n <ng-content select=\"[app-bulk-actions]\"/>\r\n </div>\r\n </div>\r\n }\r\n </div>\r\n }\r\n</div>\r\n", styles: [":host{display:block;height:100%;width:100%;overflow:hidden}mat-card,.item-card{height:40px!important}.container{background-color:var(--base-color-50)}.container .master{padding-right:16px}.container .details{padding-left:16px}.selected-item{background:var(--mat-sys-primary);fill:var(--mat-sys-on-primary);color:var(--mat-sys-on-primary)}.regular-item{fill:var(--mat-sys-primary);color:var(--mat-sys-primary)}.disabled-item{color:unset}.disabled-item:hover{background-color:var(--neutral-variant-color-60)!important}.disabled-item span{color:unset!important}.no-select-item{user-select:none;-webkit-user-select:none}\n"], dependencies: [{ kind: "ngmodule", type: SharedModule }, { kind: "component", type: i1$4.MatMiniFabButton, selector: "button[mat-mini-fab], a[mat-mini-fab], button[matMiniFab], a[matMiniFab]", exportAs: ["matButton", "matAnchor"] }, { kind: "component", type: i2$1.MatCheckbox, selector: "mat-checkbox", inputs: ["aria-label", "aria-labelledby", "aria-describedby", "aria-expanded", "aria-controls", "aria-owns", "id", "required", "labelPosition", "name", "value", "disableRipple", "tabIndex", "color", "disabledInteractive", "checked", "disabled", "indeterminate"], outputs: ["change", "indeterminateChange"], exportAs: ["matCheckbox"] }, { kind: "component", type: i2.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i2.MatLabel, selector: "mat-label" }, { kind: "directive", type: i2.MatSuffix, selector: "[matSuffix], [matIconSuffix], [matTextSuffix]", inputs: ["matTextSuffix"] }, { kind: "directive", type: i3.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }, { kind: "component", type: i4.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i4$3.MatCard, selector: "mat-card", inputs: ["appearance"], exportAs: ["matCard"] }, { kind: "component", type: i1$7.MatDivider, selector: "mat-divider", inputs: ["vertical", "inset"] }, { kind: "directive", type: i4$2.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly", "disabledInteractive"], exportAs: ["matInput"] }, { kind: "component", type: i5$1.MatProgressSpinner, selector: "mat-progress-spinner, mat-spinner", inputs: ["color", "mode", "value", "diameter", "strokeWidth"], exportAs: ["matProgressSpinner"] }, { kind: "directive", type: i5.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i5.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i5.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "directive", type: i6.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: ScrollIntoViewDirective, selector: "[appScrollIntoView]", inputs: ["appScrollIntoView"] }, { kind: "directive", type: OverflowClassDirective, selector: "[overflowClass]", inputs: ["overflowClass"] }, { kind: "directive", type: DndDraggableDirective, selector: "[dndDraggable]", inputs: ["dndDraggable", "dndEffectAllowed", "dndType", "dndDraggingClass", "dndDraggingSourceClass", "dndDraggableDisabledClass", "dndDragImageOffsetFunction", "dndDisableIf", "dndDisableDragIf"], outputs: ["dndStart", "dndDrag", "dndEnd", "dndMoved", "dndCopied", "dndLinked", "dndCanceled"] }, { kind: "component", type: IconComponent, selector: "app-icon", inputs: ["icon"] }, { kind: "pipe", type: i1$1.TranslatePipe, name: "translate" }, { kind: "pipe", type: i6.AsyncPipe, name: "async" }] });
|
|
5836
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.13", ngImport: i0, type: NestedListViewComponent, deps: [{ token: i0.DestroyRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
5837
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.13", type: NestedListViewComponent, isStandalone: true, selector: "app-nested-list-view", inputs: { dataSource: { classPropertyName: "dataSource", publicName: "dataSource", isSignal: true, isRequired: true, transformFunction: null }, dataControl: { classPropertyName: "dataControl", publicName: "dataControl", isSignal: true, isRequired: true, transformFunction: null }, width: { classPropertyName: "width", publicName: "width", isSignal: true, isRequired: false, transformFunction: null }, disableThresholdId: { classPropertyName: "disableThresholdId", publicName: "disableThresholdId", isSignal: true, isRequired: false, transformFunction: null }, isColoredInput: { classPropertyName: "isColoredInput", publicName: "isColoredInput", isSignal: true, isRequired: false, transformFunction: null }, searchActions: { classPropertyName: "searchActions", publicName: "searchActions", isSignal: true, isRequired: false, transformFunction: null }, enableMultiSelect: { classPropertyName: "enableMultiSelect", publicName: "enableMultiSelect", isSignal: true, isRequired: false, transformFunction: null }, selectionConfirmationAction: { classPropertyName: "selectionConfirmationAction", publicName: "selectionConfirmationAction", isSignal: true, isRequired: false, transformFunction: null }, hideSearch: { classPropertyName: "hideSearch", publicName: "hideSearch", isSignal: true, isRequired: false, transformFunction: null }, rootButtonText: { classPropertyName: "rootButtonText", publicName: "rootButtonText", isSignal: true, isRequired: false, transformFunction: null }, enableDrag: { classPropertyName: "enableDrag", publicName: "enableDrag", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { dragging: "dragging", itemSelected: "itemSelected", itemsSelected: "itemsSelected" }, host: { listeners: { "window:keydown": "onKeyDown($event)", "window:keyup": "onKeyUp($event)" } }, ngImport: i0, template: "<div class=\"container flex h-full w-full min-w-full min-h-full relative overflow-hidden\">\r\n <div [ngClass]=\"widthClass()\" class=\"master flex shrink-0 grow-0 min-w-0\">\r\n\r\n <!-- LISTING -->\r\n <div class=\"w-full h-full flex flex-col gap-y-2 relative\" [ngClass]=\"hideSearch() ? 'pt-2' : 'pt-1'\">\r\n\r\n <!-- HEADER -->\r\n <div class=\"flex w-full flex-row gap-x-2\">\r\n\r\n <!-- SEARCH -->\r\n @if (!hideSearch()) {\r\n <div class=\"flex shrink grow flex-row pt-1 gap-x-2 overflow-hidden\">\r\n <mat-form-field class=\"flex grow shrink small-input search-control\" (keydown.shift)=\"$event.stopPropagation()\" (keydown.enter)=\"defaultSearchAction()?.action({parent: this.selectedItem()?.data, control: this.nameSearchControl})\" [ngClass]=\"{'colored-input': isColoredInput()}\">\r\n <mat-label>{{ 'COMMON.SEARCH_IMMEDIATE_CHILDREN' | translate }}</mat-label>\r\n <input matInput type=\"text\" [formControl]=\"nameSearchControl\">\r\n <mat-icon matSuffix>search</mat-icon>\r\n </mat-form-field>\r\n @if (defaultSearchAction(); as defaultAction) {\r\n <div [matTooltip]=\"defaultAction.disabledTooltip ? (defaultAction.disabledTooltip | translate) : ''\" [matTooltipDisabled]=\"defaultAction.disableCondition ? !defaultAction.disableCondition({control: nameSearchControl}) : true\">\r\n <button mat-mini-fab [disabled]=\"defaultAction.disableCondition ? defaultAction.disableCondition({control: nameSearchControl}) : false\" (click)=\"defaultAction.action({parent: this.selectedItem()?.data, control: this.nameSearchControl})\" [matTooltip]=\"defaultAction.name | translate\">\r\n <mat-icon [svgIcon]=\"defaultAction.icon.id\"/>\r\n </button>\r\n </div>\r\n }\r\n @for (action of otherSearchActions(); track $index) {\r\n @if (action.condition() | async) {\r\n <div [matTooltip]=\"action.disabledTooltip ? (action.disabledTooltip | translate) : ''\" [matTooltipDisabled]=\"action.disableCondition ? !action.disableCondition() : true\">\r\n <button mat-mini-fab [disabled]=\"action.disableCondition ? action.disableCondition() : false\" (click)=\"action.action()\" [matTooltip]=\"action.name | translate\">\r\n <mat-icon [svgIcon]=\"action.icon.id\"/>\r\n </button>\r\n </div>\r\n }\r\n }\r\n </div>\r\n }\r\n </div>\r\n\r\n <!-- LIST -->\r\n <div class=\"flex flex-col w-full h-full relative overflow-hidden\">\r\n\r\n <!-- BREADCRUMBS -->\r\n <div class=\"max-h-[50%] overflow-auto shrink-0\" [overflowClass]=\"'pr-4'\">\r\n @if (!loadingBreadcrumbs()) {\r\n @if (breadcrumbs(); as items) {\r\n <div class=\"flex flex-col w-full overflow-x-hidden\">\r\n @for (item of items; let i = $index; track i) {\r\n @if (selectedItem() && hasMultipleRoots() && i === 0) {\r\n <mat-card (click)=\"resetNavigation()\" class=\"mb-2 cursor-pointer regular-item hover:bg-hover-color\" [ngClass]=\"disableThresholdId() ? 'bg-disabled-color opacity-50 hover:cursor-auto pointer-events-none disabled-item' : ''\">\r\n <div class=\"px-3 flex flex-row items-center gap-x-2 item-card\">\r\n <div class=\"shrink-0 h-6\">\r\n <mat-icon>arrow_upward</mat-icon>\r\n </div>\r\n <span class=\"text-mat-sys-on-surface\">{{ rootButtonText() | translate: {default: rootButtonText()} }}</span>\r\n </div>\r\n </mat-card>\r\n }\r\n <mat-card class=\"mb-2 cursor-pointer\" (click)=\"selectBreadcrumb(item)\"\r\n [dndDraggable]=\"item.data\" [dndDisableDragIf]=\"!enableDrag() || !!shouldDisableBreadcrumbClick(item)\" (dndStart)=\"dragStart($event, item.data)\" (dndEnd)=\"isDragging.set(false)\"\r\n [ngClass]=\"[isBreadcrumbSelected(item) ? 'selected-item' : 'regular-item hover:bg-hover-color', selectedItems().length ? 'opacity-50' : '', shouldDisableBreadcrumbClick(item) ? 'bg-disabled-color opacity-50 hover:cursor-auto pointer-events-none disabled-item' : '']\"\r\n [appScrollIntoView]=\"isBreadcrumbSelected(item)\" [matTooltip]=\"item.name\" matTooltipPosition=\"right\">\r\n <div class=\"px-3 flex flex-row items-center justify-between gap-x-2 item-card\">\r\n <div class=\"flex flex-row grow items-center gap-x-2 overflow-hidden\">\r\n @if (item.icon; as icon) {\r\n <app-icon [icon]=\"icon\"/>\r\n }\r\n <span [ngClass]=\"[isBreadcrumbSelected(item) ? 'text-mat-sys-surface-container' : 'text-mat-sys-on-surface']\" class=\"truncate\">{{ item.name }}</span>\r\n </div>\r\n @if (item.rightNumber && item.rightNumber > 0) {\r\n <span class=\"flex items-center justify-center shrink-0 min-w-5 h-5 px-1.5 rounded-full text-[11px] font-semibold\" [ngClass]=\"isBreadcrumbSelected(item) ? 'bg-transparent text-mat-sys-surface-container' : 'bg-mat-sys-primary text-mat-sys-on-primary'\">{{ item.rightNumber }}</span>\r\n } @else if (enableDrag() && !shouldDisableBreadcrumbClick(item)) {\r\n <mat-icon>drag_indicator</mat-icon>\r\n }\r\n </div>\r\n </mat-card>\r\n }\r\n </div>\r\n }\r\n }\r\n </div>\r\n\r\n <mat-divider class=\"w-full pb-2\"/>\r\n\r\n <!-- CHILDREN -->\r\n @if (selectedItem()) {\r\n <div class=\"flex-1 overflow-auto min-h-0\" [overflowClass]=\"'pr-4'\">\r\n @if (!loadingChildren()) {\r\n @if (filteredChildren(); as items) {\r\n @if (items.length) {\r\n <div class=\"flex flex-col w-full overflow-y-auto overflow-x-hidden\">\r\n @for (item of items; track $index) {\r\n <mat-card class=\"mb-2 cursor-pointer\" [ngClass]=\"[isChildSelected(item) ? 'selected-item' : 'regular-item hover:bg-hover-color', shiftPressed() ? 'no-select-item' : '', (ctrlPressed() || shiftPressed()) && item.bulkSelectDisabled ? 'bg-disabled-color opacity-50 hover:cursor-auto disabled-item' : '']\" (click)=\"selectChild(item)\" [matTooltip]=\"(ctrlPressed() || shiftPressed()) && item.bulkSelectDisabled && item.bulkSelectDisabledTooltip ? (item.bulkSelectDisabledTooltip | translate) : item.name\" matTooltipPosition=\"right\"\r\n [dndDraggable]=\"item.data\" [dndDisableDragIf]=\"!enableDrag()\" (dndStart)=\"dragStart($event, item.data)\" (dndEnd)=\"isDragging.set(false)\">\r\n <div class=\"px-3 flex flex-row items-center justify-between gap-x-2 item-card\">\r\n <div class=\"flex flex-row grow items-center gap-x-2 overflow-hidden\">\r\n @if (item.icon; as icon) {\r\n <app-icon [icon]=\"icon\"/>\r\n }\r\n <span [ngClass]=\"isChildSelected(item) ? 'text-mat-sys-surface-container' : 'text-mat-sys-on-surface'\" class=\"truncate\">{{ item.name }}</span>\r\n </div>\r\n @if (item.rightNumber && item.rightNumber > 0) {\r\n <span class=\"flex items-center justify-center shrink-0 min-w-5 h-5 px-1.5 rounded-full text-[11px] font-semibold\" [ngClass]=\"isChildSelected(item) ? 'bg-transparent text-mat-sys-surface-container' : 'bg-mat-sys-primary text-mat-sys-on-primary'\">{{ item.rightNumber }}</span>\r\n } @else if (enableDrag()) {\r\n <mat-icon>drag_indicator</mat-icon>\r\n }\r\n </div>\r\n </mat-card>\r\n }\r\n </div>\r\n } @else {\r\n <div class=\"flex flex-col grow justify-center items-center\">\r\n <ng-content select=\"[app-no-items-message]\"/>\r\n </div>\r\n }\r\n }\r\n } @else {\r\n <div class=\"flex flex-col grow justify-center items-center\">\r\n <mat-spinner diameter=\"30\"></mat-spinner>\r\n </div>\r\n }\r\n </div>\r\n }\r\n\r\n <!-- ACTIONS (bottom right of the listing) -->\r\n <div class=\"absolute bottom-0 right-0 z-10\">\r\n <ng-content select=\"[app-actions]\"/>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n </div>\r\n\r\n @if (width() !== 'full') {\r\n <mat-divider [vertical]=\"true\" class=\"relative top-2\"/>\r\n\r\n <!-- DETAILS -->\r\n <div class=\"details flex shrink grow overflow-hidden pt-2\">\r\n @if (!selectedItems().length) {\r\n <ng-content select=\"[app-details]\"/>\r\n } @else {\r\n <div class=\"h-full w-full flex flex-col items-center justify-center relative\">\r\n <div class=\"flex flex-col items-center justify-center\">\r\n <mat-checkbox class=\"w-full\"\r\n [checked]=\"selectedItems().length === allSelectableItems().length\"\r\n (change)=\"toggleSelectAll()\">\r\n {{ 'COMMON.SELECT_ALL' | translate }}\r\n </mat-checkbox>\r\n <mat-divider class=\"w-full !mb-2 !mt-2\"></mat-divider>\r\n <span>{{ 'COMMON.NUMBER_OF_ITEMS_SELECTED' | translate: {numberOfItems: selectedItems().length} }} </span>\r\n </div>\r\n <div class=\"absolute bottom-0 right-0\">\r\n <ng-content select=\"[app-bulk-actions]\"/>\r\n </div>\r\n </div>\r\n }\r\n </div>\r\n }\r\n</div>\r\n", styles: [":host{display:block;height:100%;width:100%;overflow:hidden}mat-card,.item-card{height:40px!important}.container{background-color:var(--base-color-50)}.container .master{padding-right:16px}.container .details{padding-left:16px}.selected-item{background:var(--mat-sys-primary);fill:var(--mat-sys-on-primary);color:var(--mat-sys-on-primary)}.regular-item{fill:var(--mat-sys-primary);color:var(--mat-sys-primary)}.disabled-item{color:unset}.disabled-item:hover{background-color:var(--neutral-variant-color-60)!important}.disabled-item span{color:unset!important}.no-select-item{user-select:none;-webkit-user-select:none}\n"], dependencies: [{ kind: "ngmodule", type: SharedModule }, { kind: "component", type: i1$4.MatMiniFabButton, selector: "button[mat-mini-fab], a[mat-mini-fab], button[matMiniFab], a[matMiniFab]", exportAs: ["matButton", "matAnchor"] }, { kind: "component", type: i2$1.MatCheckbox, selector: "mat-checkbox", inputs: ["aria-label", "aria-labelledby", "aria-describedby", "aria-expanded", "aria-controls", "aria-owns", "id", "required", "labelPosition", "name", "value", "disableRipple", "tabIndex", "color", "disabledInteractive", "checked", "disabled", "indeterminate"], outputs: ["change", "indeterminateChange"], exportAs: ["matCheckbox"] }, { kind: "component", type: i2.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i2.MatLabel, selector: "mat-label" }, { kind: "directive", type: i2.MatSuffix, selector: "[matSuffix], [matIconSuffix], [matTextSuffix]", inputs: ["matTextSuffix"] }, { kind: "directive", type: i3.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }, { kind: "component", type: i4.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i4$3.MatCard, selector: "mat-card", inputs: ["appearance"], exportAs: ["matCard"] }, { kind: "component", type: i1$7.MatDivider, selector: "mat-divider", inputs: ["vertical", "inset"] }, { kind: "directive", type: i4$2.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly", "disabledInteractive"], exportAs: ["matInput"] }, { kind: "component", type: i5$1.MatProgressSpinner, selector: "mat-progress-spinner, mat-spinner", inputs: ["color", "mode", "value", "diameter", "strokeWidth"], exportAs: ["matProgressSpinner"] }, { kind: "directive", type: i5.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i5.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i5.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "directive", type: i6.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: ScrollIntoViewDirective, selector: "[appScrollIntoView]", inputs: ["appScrollIntoView"] }, { kind: "directive", type: OverflowClassDirective, selector: "[overflowClass]", inputs: ["overflowClass"] }, { kind: "directive", type: DndDraggableDirective, selector: "[dndDraggable]", inputs: ["dndDraggable", "dndEffectAllowed", "dndType", "dndDraggingClass", "dndDraggingSourceClass", "dndDraggableDisabledClass", "dndDragImageOffsetFunction", "dndDisableIf", "dndDisableDragIf"], outputs: ["dndStart", "dndDrag", "dndEnd", "dndMoved", "dndCopied", "dndLinked", "dndCanceled"] }, { kind: "component", type: IconComponent, selector: "app-icon", inputs: ["icon"] }, { kind: "pipe", type: i1$1.TranslatePipe, name: "translate" }, { kind: "pipe", type: i6.AsyncPipe, name: "async" }] });
|
|
5838
5838
|
}
|
|
5839
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.
|
|
5839
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.13", ngImport: i0, type: NestedListViewComponent, decorators: [{
|
|
5840
5840
|
type: Component,
|
|
5841
5841
|
args: [{ selector: 'app-nested-list-view', imports: [SharedModule, ScrollIntoViewDirective, OverflowClassDirective, DndDraggableDirective, IconComponent], template: "<div class=\"container flex h-full w-full min-w-full min-h-full relative overflow-hidden\">\r\n <div [ngClass]=\"widthClass()\" class=\"master flex shrink-0 grow-0 min-w-0\">\r\n\r\n <!-- LISTING -->\r\n <div class=\"w-full h-full flex flex-col gap-y-2 relative\" [ngClass]=\"hideSearch() ? 'pt-2' : 'pt-1'\">\r\n\r\n <!-- HEADER -->\r\n <div class=\"flex w-full flex-row gap-x-2\">\r\n\r\n <!-- SEARCH -->\r\n @if (!hideSearch()) {\r\n <div class=\"flex shrink grow flex-row pt-1 gap-x-2 overflow-hidden\">\r\n <mat-form-field class=\"flex grow shrink small-input search-control\" (keydown.shift)=\"$event.stopPropagation()\" (keydown.enter)=\"defaultSearchAction()?.action({parent: this.selectedItem()?.data, control: this.nameSearchControl})\" [ngClass]=\"{'colored-input': isColoredInput()}\">\r\n <mat-label>{{ 'COMMON.SEARCH_IMMEDIATE_CHILDREN' | translate }}</mat-label>\r\n <input matInput type=\"text\" [formControl]=\"nameSearchControl\">\r\n <mat-icon matSuffix>search</mat-icon>\r\n </mat-form-field>\r\n @if (defaultSearchAction(); as defaultAction) {\r\n <div [matTooltip]=\"defaultAction.disabledTooltip ? (defaultAction.disabledTooltip | translate) : ''\" [matTooltipDisabled]=\"defaultAction.disableCondition ? !defaultAction.disableCondition({control: nameSearchControl}) : true\">\r\n <button mat-mini-fab [disabled]=\"defaultAction.disableCondition ? defaultAction.disableCondition({control: nameSearchControl}) : false\" (click)=\"defaultAction.action({parent: this.selectedItem()?.data, control: this.nameSearchControl})\" [matTooltip]=\"defaultAction.name | translate\">\r\n <mat-icon [svgIcon]=\"defaultAction.icon.id\"/>\r\n </button>\r\n </div>\r\n }\r\n @for (action of otherSearchActions(); track $index) {\r\n @if (action.condition() | async) {\r\n <div [matTooltip]=\"action.disabledTooltip ? (action.disabledTooltip | translate) : ''\" [matTooltipDisabled]=\"action.disableCondition ? !action.disableCondition() : true\">\r\n <button mat-mini-fab [disabled]=\"action.disableCondition ? action.disableCondition() : false\" (click)=\"action.action()\" [matTooltip]=\"action.name | translate\">\r\n <mat-icon [svgIcon]=\"action.icon.id\"/>\r\n </button>\r\n </div>\r\n }\r\n }\r\n </div>\r\n }\r\n </div>\r\n\r\n <!-- LIST -->\r\n <div class=\"flex flex-col w-full h-full relative overflow-hidden\">\r\n\r\n <!-- BREADCRUMBS -->\r\n <div class=\"max-h-[50%] overflow-auto shrink-0\" [overflowClass]=\"'pr-4'\">\r\n @if (!loadingBreadcrumbs()) {\r\n @if (breadcrumbs(); as items) {\r\n <div class=\"flex flex-col w-full overflow-x-hidden\">\r\n @for (item of items; let i = $index; track i) {\r\n @if (selectedItem() && hasMultipleRoots() && i === 0) {\r\n <mat-card (click)=\"resetNavigation()\" class=\"mb-2 cursor-pointer regular-item hover:bg-hover-color\" [ngClass]=\"disableThresholdId() ? 'bg-disabled-color opacity-50 hover:cursor-auto pointer-events-none disabled-item' : ''\">\r\n <div class=\"px-3 flex flex-row items-center gap-x-2 item-card\">\r\n <div class=\"shrink-0 h-6\">\r\n <mat-icon>arrow_upward</mat-icon>\r\n </div>\r\n <span class=\"text-mat-sys-on-surface\">{{ rootButtonText() | translate: {default: rootButtonText()} }}</span>\r\n </div>\r\n </mat-card>\r\n }\r\n <mat-card class=\"mb-2 cursor-pointer\" (click)=\"selectBreadcrumb(item)\"\r\n [dndDraggable]=\"item.data\" [dndDisableDragIf]=\"!enableDrag() || !!shouldDisableBreadcrumbClick(item)\" (dndStart)=\"dragStart($event, item.data)\" (dndEnd)=\"isDragging.set(false)\"\r\n [ngClass]=\"[isBreadcrumbSelected(item) ? 'selected-item' : 'regular-item hover:bg-hover-color', selectedItems().length ? 'opacity-50' : '', shouldDisableBreadcrumbClick(item) ? 'bg-disabled-color opacity-50 hover:cursor-auto pointer-events-none disabled-item' : '']\"\r\n [appScrollIntoView]=\"isBreadcrumbSelected(item)\" [matTooltip]=\"item.name\" matTooltipPosition=\"right\">\r\n <div class=\"px-3 flex flex-row items-center justify-between gap-x-2 item-card\">\r\n <div class=\"flex flex-row grow items-center gap-x-2 overflow-hidden\">\r\n @if (item.icon; as icon) {\r\n <app-icon [icon]=\"icon\"/>\r\n }\r\n <span [ngClass]=\"[isBreadcrumbSelected(item) ? 'text-mat-sys-surface-container' : 'text-mat-sys-on-surface']\" class=\"truncate\">{{ item.name }}</span>\r\n </div>\r\n @if (item.rightNumber && item.rightNumber > 0) {\r\n <span class=\"flex items-center justify-center shrink-0 min-w-5 h-5 px-1.5 rounded-full text-[11px] font-semibold\" [ngClass]=\"isBreadcrumbSelected(item) ? 'bg-transparent text-mat-sys-surface-container' : 'bg-mat-sys-primary text-mat-sys-on-primary'\">{{ item.rightNumber }}</span>\r\n } @else if (enableDrag() && !shouldDisableBreadcrumbClick(item)) {\r\n <mat-icon>drag_indicator</mat-icon>\r\n }\r\n </div>\r\n </mat-card>\r\n }\r\n </div>\r\n }\r\n }\r\n </div>\r\n\r\n <mat-divider class=\"w-full pb-2\"/>\r\n\r\n <!-- CHILDREN -->\r\n @if (selectedItem()) {\r\n <div class=\"flex-1 overflow-auto min-h-0\" [overflowClass]=\"'pr-4'\">\r\n @if (!loadingChildren()) {\r\n @if (filteredChildren(); as items) {\r\n @if (items.length) {\r\n <div class=\"flex flex-col w-full overflow-y-auto overflow-x-hidden\">\r\n @for (item of items; track $index) {\r\n <mat-card class=\"mb-2 cursor-pointer\" [ngClass]=\"[isChildSelected(item) ? 'selected-item' : 'regular-item hover:bg-hover-color', shiftPressed() ? 'no-select-item' : '', (ctrlPressed() || shiftPressed()) && item.bulkSelectDisabled ? 'bg-disabled-color opacity-50 hover:cursor-auto disabled-item' : '']\" (click)=\"selectChild(item)\" [matTooltip]=\"(ctrlPressed() || shiftPressed()) && item.bulkSelectDisabled && item.bulkSelectDisabledTooltip ? (item.bulkSelectDisabledTooltip | translate) : item.name\" matTooltipPosition=\"right\"\r\n [dndDraggable]=\"item.data\" [dndDisableDragIf]=\"!enableDrag()\" (dndStart)=\"dragStart($event, item.data)\" (dndEnd)=\"isDragging.set(false)\">\r\n <div class=\"px-3 flex flex-row items-center justify-between gap-x-2 item-card\">\r\n <div class=\"flex flex-row grow items-center gap-x-2 overflow-hidden\">\r\n @if (item.icon; as icon) {\r\n <app-icon [icon]=\"icon\"/>\r\n }\r\n <span [ngClass]=\"isChildSelected(item) ? 'text-mat-sys-surface-container' : 'text-mat-sys-on-surface'\" class=\"truncate\">{{ item.name }}</span>\r\n </div>\r\n @if (item.rightNumber && item.rightNumber > 0) {\r\n <span class=\"flex items-center justify-center shrink-0 min-w-5 h-5 px-1.5 rounded-full text-[11px] font-semibold\" [ngClass]=\"isChildSelected(item) ? 'bg-transparent text-mat-sys-surface-container' : 'bg-mat-sys-primary text-mat-sys-on-primary'\">{{ item.rightNumber }}</span>\r\n } @else if (enableDrag()) {\r\n <mat-icon>drag_indicator</mat-icon>\r\n }\r\n </div>\r\n </mat-card>\r\n }\r\n </div>\r\n } @else {\r\n <div class=\"flex flex-col grow justify-center items-center\">\r\n <ng-content select=\"[app-no-items-message]\"/>\r\n </div>\r\n }\r\n }\r\n } @else {\r\n <div class=\"flex flex-col grow justify-center items-center\">\r\n <mat-spinner diameter=\"30\"></mat-spinner>\r\n </div>\r\n }\r\n </div>\r\n }\r\n\r\n <!-- ACTIONS (bottom right of the listing) -->\r\n <div class=\"absolute bottom-0 right-0 z-10\">\r\n <ng-content select=\"[app-actions]\"/>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n </div>\r\n\r\n @if (width() !== 'full') {\r\n <mat-divider [vertical]=\"true\" class=\"relative top-2\"/>\r\n\r\n <!-- DETAILS -->\r\n <div class=\"details flex shrink grow overflow-hidden pt-2\">\r\n @if (!selectedItems().length) {\r\n <ng-content select=\"[app-details]\"/>\r\n } @else {\r\n <div class=\"h-full w-full flex flex-col items-center justify-center relative\">\r\n <div class=\"flex flex-col items-center justify-center\">\r\n <mat-checkbox class=\"w-full\"\r\n [checked]=\"selectedItems().length === allSelectableItems().length\"\r\n (change)=\"toggleSelectAll()\">\r\n {{ 'COMMON.SELECT_ALL' | translate }}\r\n </mat-checkbox>\r\n <mat-divider class=\"w-full !mb-2 !mt-2\"></mat-divider>\r\n <span>{{ 'COMMON.NUMBER_OF_ITEMS_SELECTED' | translate: {numberOfItems: selectedItems().length} }} </span>\r\n </div>\r\n <div class=\"absolute bottom-0 right-0\">\r\n <ng-content select=\"[app-bulk-actions]\"/>\r\n </div>\r\n </div>\r\n }\r\n </div>\r\n }\r\n</div>\r\n", styles: [":host{display:block;height:100%;width:100%;overflow:hidden}mat-card,.item-card{height:40px!important}.container{background-color:var(--base-color-50)}.container .master{padding-right:16px}.container .details{padding-left:16px}.selected-item{background:var(--mat-sys-primary);fill:var(--mat-sys-on-primary);color:var(--mat-sys-on-primary)}.regular-item{fill:var(--mat-sys-primary);color:var(--mat-sys-primary)}.disabled-item{color:unset}.disabled-item:hover{background-color:var(--neutral-variant-color-60)!important}.disabled-item span{color:unset!important}.no-select-item{user-select:none;-webkit-user-select:none}\n"] }]
|
|
5842
5842
|
}], ctorParameters: () => [{ type: i0.DestroyRef }], propDecorators: { onKeyDown: [{
|
|
@@ -5941,21 +5941,21 @@ class NestedListDataSource {
|
|
|
5941
5941
|
|
|
5942
5942
|
class PdfViewerComponent {
|
|
5943
5943
|
sanitizer;
|
|
5944
|
-
value = input.required(...(ngDevMode ? [{ debugName: "value" }] : []));
|
|
5944
|
+
value = input.required(...(ngDevMode ? [{ debugName: "value" }] : /* istanbul ignore next */ []));
|
|
5945
5945
|
safeSrc = computed(() => {
|
|
5946
5946
|
const url = this.value();
|
|
5947
5947
|
if (!url)
|
|
5948
5948
|
return null;
|
|
5949
5949
|
const urlWithParams = `${url}#zoom=page-width&view=FitH`;
|
|
5950
5950
|
return this.sanitizer.bypassSecurityTrustResourceUrl(urlWithParams);
|
|
5951
|
-
}, ...(ngDevMode ? [{ debugName: "safeSrc" }] : []));
|
|
5951
|
+
}, ...(ngDevMode ? [{ debugName: "safeSrc" }] : /* istanbul ignore next */ []));
|
|
5952
5952
|
constructor(sanitizer) {
|
|
5953
5953
|
this.sanitizer = sanitizer;
|
|
5954
5954
|
}
|
|
5955
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.
|
|
5956
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.
|
|
5955
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.13", ngImport: i0, type: PdfViewerComponent, deps: [{ token: i1$6.DomSanitizer }], target: i0.ɵɵFactoryTarget.Component });
|
|
5956
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.13", type: PdfViewerComponent, isStandalone: true, selector: "app-pdf-viewer", inputs: { value: { classPropertyName: "value", publicName: "value", isSignal: true, isRequired: true, transformFunction: null } }, ngImport: i0, template: "@if (safeSrc()) {\r\n <iframe [src]=\"safeSrc()\" frameborder=\"0\" class=\"w-full h-full\"></iframe>\r\n}", styles: [""] });
|
|
5957
5957
|
}
|
|
5958
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.
|
|
5958
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.13", ngImport: i0, type: PdfViewerComponent, decorators: [{
|
|
5959
5959
|
type: Component,
|
|
5960
5960
|
args: [{ selector: 'app-pdf-viewer', imports: [], template: "@if (safeSrc()) {\r\n <iframe [src]=\"safeSrc()\" frameborder=\"0\" class=\"w-full h-full\"></iframe>\r\n}" }]
|
|
5961
5961
|
}], ctorParameters: () => [{ type: i1$6.DomSanitizer }], propDecorators: { value: [{ type: i0.Input, args: [{ isSignal: true, alias: "value", required: true }] }] } });
|
|
@@ -5988,41 +5988,41 @@ class StandardListViewComponent {
|
|
|
5988
5988
|
this.itemSelected.emit(this.selectedItems()[0].data);
|
|
5989
5989
|
}
|
|
5990
5990
|
}
|
|
5991
|
-
dataSource = input.required(...(ngDevMode ? [{ debugName: "dataSource" }] : []));
|
|
5992
|
-
dataControl = input.required(...(ngDevMode ? [{ debugName: "dataControl" }] : []));
|
|
5993
|
-
position = input('outer', ...(ngDevMode ? [{ debugName: "position" }] : []));
|
|
5994
|
-
isColoredInput = input(false, ...(ngDevMode ? [{ debugName: "isColoredInput" }] : []));
|
|
5995
|
-
enableMultiSelect = input(false, ...(ngDevMode ? [{ debugName: "enableMultiSelect" }] : []));
|
|
5996
|
-
ctrlPressed = signal(false, ...(ngDevMode ? [{ debugName: "ctrlPressed" }] : []));
|
|
5997
|
-
shiftPressed = signal(false, ...(ngDevMode ? [{ debugName: "shiftPressed" }] : []));
|
|
5998
|
-
loadingData = signal(true, ...(ngDevMode ? [{ debugName: "loadingData" }] : []));
|
|
5999
|
-
loadingPage = signal(false, ...(ngDevMode ? [{ debugName: "loadingPage" }] : []));
|
|
6000
|
-
selectedItems = signal([], ...(ngDevMode ? [{ debugName: "selectedItems" }] : []));
|
|
6001
|
-
hideSearch = input(false, ...(ngDevMode ? [{ debugName: "hideSearch" }] : []));
|
|
6002
|
-
hideDetails = input(false, ...(ngDevMode ? [{ debugName: "hideDetails" }] : []));
|
|
6003
|
-
hidePadding = input(false, ...(ngDevMode ? [{ debugName: "hidePadding" }] : [])); // TODO Remove, but the component should have innate outer padding :(
|
|
5991
|
+
dataSource = input.required(...(ngDevMode ? [{ debugName: "dataSource" }] : /* istanbul ignore next */ []));
|
|
5992
|
+
dataControl = input.required(...(ngDevMode ? [{ debugName: "dataControl" }] : /* istanbul ignore next */ []));
|
|
5993
|
+
position = input('outer', ...(ngDevMode ? [{ debugName: "position" }] : /* istanbul ignore next */ []));
|
|
5994
|
+
isColoredInput = input(false, ...(ngDevMode ? [{ debugName: "isColoredInput" }] : /* istanbul ignore next */ []));
|
|
5995
|
+
enableMultiSelect = input(false, ...(ngDevMode ? [{ debugName: "enableMultiSelect" }] : /* istanbul ignore next */ []));
|
|
5996
|
+
ctrlPressed = signal(false, ...(ngDevMode ? [{ debugName: "ctrlPressed" }] : /* istanbul ignore next */ []));
|
|
5997
|
+
shiftPressed = signal(false, ...(ngDevMode ? [{ debugName: "shiftPressed" }] : /* istanbul ignore next */ []));
|
|
5998
|
+
loadingData = signal(true, ...(ngDevMode ? [{ debugName: "loadingData" }] : /* istanbul ignore next */ []));
|
|
5999
|
+
loadingPage = signal(false, ...(ngDevMode ? [{ debugName: "loadingPage" }] : /* istanbul ignore next */ []));
|
|
6000
|
+
selectedItems = signal([], ...(ngDevMode ? [{ debugName: "selectedItems" }] : /* istanbul ignore next */ []));
|
|
6001
|
+
hideSearch = input(false, ...(ngDevMode ? [{ debugName: "hideSearch" }] : /* istanbul ignore next */ []));
|
|
6002
|
+
hideDetails = input(false, ...(ngDevMode ? [{ debugName: "hideDetails" }] : /* istanbul ignore next */ []));
|
|
6003
|
+
hidePadding = input(false, ...(ngDevMode ? [{ debugName: "hidePadding" }] : /* istanbul ignore next */ [])); // TODO Remove, but the component should have innate outer padding :(
|
|
6004
6004
|
width = computed(() => {
|
|
6005
6005
|
if (this.hideDetails()) {
|
|
6006
6006
|
return 'w-full';
|
|
6007
6007
|
}
|
|
6008
6008
|
return this.position() === 'outer' ? 'basis-1/4' : 'basis-1/3';
|
|
6009
|
-
}, ...(ngDevMode ? [{ debugName: "width" }] : []));
|
|
6009
|
+
}, ...(ngDevMode ? [{ debugName: "width" }] : /* istanbul ignore next */ []));
|
|
6010
6010
|
nameSearchControl = new FormControl('');
|
|
6011
6011
|
searchTerm = toSignal(this.nameSearchControl.valueChanges.pipe(startWith(this.nameSearchControl.getRawValue())));
|
|
6012
|
-
items = signal([], ...(ngDevMode ? [{ debugName: "items" }] : []));
|
|
6012
|
+
items = signal([], ...(ngDevMode ? [{ debugName: "items" }] : /* istanbul ignore next */ []));
|
|
6013
6013
|
filteredItems = computed(() => {
|
|
6014
6014
|
const searchTerm = this.searchTerm();
|
|
6015
6015
|
if (!searchTerm) {
|
|
6016
6016
|
return this.items();
|
|
6017
6017
|
}
|
|
6018
6018
|
return this.items().filter(item => item.name.toLowerCase().includes(searchTerm.toLowerCase()));
|
|
6019
|
-
}, ...(ngDevMode ? [{ debugName: "filteredItems" }] : []));
|
|
6019
|
+
}, ...(ngDevMode ? [{ debugName: "filteredItems" }] : /* istanbul ignore next */ []));
|
|
6020
6020
|
allSelectableItems = computed(() => {
|
|
6021
6021
|
return this.filteredItems().filter(item => !item.bulkSelectDisabled);
|
|
6022
|
-
}, ...(ngDevMode ? [{ debugName: "allSelectableItems" }] : []));
|
|
6022
|
+
}, ...(ngDevMode ? [{ debugName: "allSelectableItems" }] : /* istanbul ignore next */ []));
|
|
6023
6023
|
itemSelected = output();
|
|
6024
6024
|
itemsSelected = output();
|
|
6025
|
-
itemTemplate = contentChild('standardListItemTemplate', ...(ngDevMode ? [{ debugName: "itemTemplate" }] : []));
|
|
6025
|
+
itemTemplate = contentChild('standardListItemTemplate', ...(ngDevMode ? [{ debugName: "itemTemplate" }] : /* istanbul ignore next */ []));
|
|
6026
6026
|
constructor(destroyRef) {
|
|
6027
6027
|
afterNextRender(() => {
|
|
6028
6028
|
const dataSource = this.dataSource();
|
|
@@ -6198,10 +6198,10 @@ class StandardListViewComponent {
|
|
|
6198
6198
|
this.loadingPage.set(false);
|
|
6199
6199
|
});
|
|
6200
6200
|
}
|
|
6201
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.
|
|
6202
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.0", type: StandardListViewComponent, isStandalone: true, selector: "app-standard-list-view", inputs: { dataSource: { classPropertyName: "dataSource", publicName: "dataSource", isSignal: true, isRequired: true, transformFunction: null }, dataControl: { classPropertyName: "dataControl", publicName: "dataControl", isSignal: true, isRequired: true, transformFunction: null }, position: { classPropertyName: "position", publicName: "position", isSignal: true, isRequired: false, transformFunction: null }, isColoredInput: { classPropertyName: "isColoredInput", publicName: "isColoredInput", isSignal: true, isRequired: false, transformFunction: null }, enableMultiSelect: { classPropertyName: "enableMultiSelect", publicName: "enableMultiSelect", isSignal: true, isRequired: false, transformFunction: null }, hideSearch: { classPropertyName: "hideSearch", publicName: "hideSearch", isSignal: true, isRequired: false, transformFunction: null }, hideDetails: { classPropertyName: "hideDetails", publicName: "hideDetails", isSignal: true, isRequired: false, transformFunction: null }, hidePadding: { classPropertyName: "hidePadding", publicName: "hidePadding", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { itemSelected: "itemSelected", itemsSelected: "itemsSelected" }, host: { listeners: { "window:keydown": "onKeyDown($event)", "window:keyup": "onKeyUp($event)" } }, queries: [{ propertyName: "itemTemplate", first: true, predicate: ["standardListItemTemplate"], descendants: true, isSignal: true }], ngImport: i0, template: "<div class=\"container flex h-full w-full min-w-full min-h-full relative overflow-hidden {{hidePadding() ? 'pt-0' : 'pt-2'}}\">\r\n <div [ngClass]=\"width()\" class=\"master flex shrink-0 grow-0 min-w-0\">\r\n\r\n <!-- LISTING -->\r\n <div class=\"w-full h-full flex flex-col gap-y-2 relative\">\r\n\r\n <!-- SEARCH -->\r\n @if (!hideSearch()) {\r\n <mat-form-field class=\"w-full small-input\" (keydown.shift)=\"$event.stopPropagation()\" [ngClass]=\"{'colored-input': isColoredInput()}\">\r\n <mat-label>{{ 'COMMON.SEARCH' | translate }}</mat-label>\r\n <input matInput type=\"text\" [formControl]=\"nameSearchControl\">\r\n <mat-icon matSuffix>search</mat-icon>\r\n </mat-form-field>\r\n }\r\n\r\n <!-- LIST -->\r\n <div class=\"flex flex-col w-full h-full relative overflow-hidden\">\r\n @if (!loadingData()) {\r\n @if (filteredItems(); as items) {\r\n @if (items.length) {\r\n <div class=\"flex flex-col w-full grow shrink overflow-y-auto overflow-x-hidden\" [overflowClass]=\"'pr-4'\">\r\n @for (item of items; track $index) {\r\n <ng-container [ngTemplateOutlet]=\"itemTemplate() || defaultTemplate\" [ngTemplateOutletContext]=\"{$implicit: item, selectedItems: selectedItems(), selectItems: selectItems.bind(this) , isSelected: isSelected.bind(this), ctrlPressed: ctrlPressed(), shiftPressed: shiftPressed()}\"/>\r\n\r\n <!--DEFAULT TEMPLATE-->\r\n <ng-template #defaultTemplate>\r\n <mat-card class=\"mb-2 cursor-pointer\" (click)=\"selectItems(item)\"\r\n [ngClass]=\"[isSelected(item) ? 'selected-item' : 'regular-item hover:bg-hover-color', shiftPressed() ? 'no-select-item' : '', (ctrlPressed() || shiftPressed()) && item.bulkSelectDisabled ? 'bg-disabled-color opacity-50 hover:cursor-auto disabled-item' : '']\"\r\n [appScrollIntoView]=\"selectedItems().length > 1 ? false : isSelected(item)\"\r\n [matTooltip]=\"(ctrlPressed() || shiftPressed()) && item.bulkSelectDisabled && item.bulkSelectDisabledTooltip ? (item.bulkSelectDisabledTooltip | translate) : item.name\" matTooltipPosition=\"right\">\r\n <div class=\"px-3 flex flex-row items-center gap-x-2 item-card\">\r\n @if (item.icon; as icon) {\r\n <app-icon [icon]=\"icon\"/>\r\n }\r\n <span [ngClass]=\"isSelected(item) ? 'text-mat-sys-surface-container' : 'text-mat-sys-on-surface'\" class=\"truncate flex-1\">{{ item.name }}</span>\r\n @if (item.rightIcon; as icon) {\r\n <app-icon [icon]=\"icon\"/>\r\n }\r\n </div>\r\n </mat-card>\r\n </ng-template>\r\n }\r\n\r\n <!-- Load more -->\r\n @if (this.dataSource().isPaged && !this.dataSource().isLastPage) {\r\n <mat-card class=\"mb-2 cursor-pointer regular-item hover:bg-hover-color\" (click)=\"loadMore()\">\r\n <div class=\"px-3 flex flex-row justify-center items-center gap-x-2 item-card\">\r\n @if (loadingPage()) {\r\n <mat-spinner diameter=\"30\"></mat-spinner>\r\n } @else {\r\n <span class=\"text-mat-sys-on-surface\">{{ 'COMMON.LOAD_MORE' | translate }}</span>\r\n }\r\n </div>\r\n </mat-card>\r\n }\r\n </div>\r\n } @else {\r\n <div class=\"flex flex-col grow justify-center items-center\">\r\n <ng-content select=\"[app-no-items-message]\"></ng-content>\r\n </div>\r\n }\r\n }\r\n } @else {\r\n <div class=\"flex flex-col grow justify-center items-center\">\r\n <mat-spinner diameter=\"30\"></mat-spinner>\r\n </div>\r\n }\r\n\r\n <!-- ACTIONS (bottom right of the listing) -->\r\n <div class=\"absolute bottom-0 right-0 z-10\">\r\n <ng-content select=\"[app-actions]\"/>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n </div>\r\n\r\n @if (!hideDetails()) {\r\n <mat-divider [vertical]=\"true\"/>\r\n\r\n <!-- DETAILS -->\r\n <div class=\"details flex shrink grow overflow-hidden\">\r\n @if (selectedItems().length <= 1) {\r\n <ng-content select=\"[app-details]\"/>\r\n } @else {\r\n <div class=\"h-full w-full flex flex-col items-center justify-center relative\">\r\n <div class=\"flex flex-col items-center justify-center\">\r\n <mat-checkbox class=\"w-full\"\r\n [checked]=\"selectedItems().length === allSelectableItems().length\"\r\n (change)=\"toggleSelectAll()\">\r\n {{ 'COMMON.SELECT_ALL' | translate }}\r\n </mat-checkbox>\r\n <mat-divider class=\"w-full !mb-2 !mt-2\"></mat-divider>\r\n <span>{{ 'COMMON.NUMBER_OF_ITEMS_SELECTED' | translate: {numberOfItems: selectedItems().length} }} </span>\r\n </div>\r\n <div class=\"absolute bottom-0 right-0\">\r\n <ng-content select=\"[app-bulk-actions]\"/>\r\n </div>\r\n </div>\r\n }\r\n </div>\r\n }\r\n</div>\r\n", styles: [":host{display:block;height:100%;width:100%;overflow:hidden}mat-card,.item-card{height:40px!important}.container{background-color:var(--base-color-50)}.container .master{padding-right:16px}.container .details{padding-left:16px}.selected-item{background:var(--mat-sys-primary);fill:var(--mat-sys-on-primary);color:var(--mat-sys-on-primary)}.regular-item{fill:var(--mat-sys-primary);color:var(--mat-sys-primary)}.disabled-item{color:unset}.disabled-item:hover{background-color:var(--neutral-variant-color-60)!important}.disabled-item span{color:unset!important}.no-select-item{user-select:none;-webkit-user-select:none}\n"], dependencies: [{ kind: "ngmodule", type: SharedModule }, { kind: "component", type: i2$1.MatCheckbox, selector: "mat-checkbox", inputs: ["aria-label", "aria-labelledby", "aria-describedby", "aria-expanded", "aria-controls", "aria-owns", "id", "required", "labelPosition", "name", "value", "disableRipple", "tabIndex", "color", "disabledInteractive", "checked", "disabled", "indeterminate"], outputs: ["change", "indeterminateChange"], exportAs: ["matCheckbox"] }, { kind: "component", type: i2.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i2.MatLabel, selector: "mat-label" }, { kind: "directive", type: i2.MatSuffix, selector: "[matSuffix], [matIconSuffix], [matTextSuffix]", inputs: ["matTextSuffix"] }, { kind: "directive", type: i3.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }, { kind: "component", type: i4.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i4$3.MatCard, selector: "mat-card", inputs: ["appearance"], exportAs: ["matCard"] }, { kind: "component", type: i1$7.MatDivider, selector: "mat-divider", inputs: ["vertical", "inset"] }, { kind: "directive", type: i4$2.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly", "disabledInteractive"], exportAs: ["matInput"] }, { kind: "component", type: i5$1.MatProgressSpinner, selector: "mat-progress-spinner, mat-spinner", inputs: ["color", "mode", "value", "diameter", "strokeWidth"], exportAs: ["matProgressSpinner"] }, { kind: "directive", type: i5.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i5.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i5.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "directive", type: i6.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i6.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: OverflowClassDirective, selector: "[overflowClass]", inputs: ["overflowClass"] }, { kind: "directive", type: ScrollIntoViewDirective, selector: "[appScrollIntoView]", inputs: ["appScrollIntoView"] }, { kind: "component", type: IconComponent, selector: "app-icon", inputs: ["icon"] }, { kind: "pipe", type: i1$1.TranslatePipe, name: "translate" }] });
|
|
6201
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.13", ngImport: i0, type: StandardListViewComponent, deps: [{ token: i0.DestroyRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
6202
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.13", type: StandardListViewComponent, isStandalone: true, selector: "app-standard-list-view", inputs: { dataSource: { classPropertyName: "dataSource", publicName: "dataSource", isSignal: true, isRequired: true, transformFunction: null }, dataControl: { classPropertyName: "dataControl", publicName: "dataControl", isSignal: true, isRequired: true, transformFunction: null }, position: { classPropertyName: "position", publicName: "position", isSignal: true, isRequired: false, transformFunction: null }, isColoredInput: { classPropertyName: "isColoredInput", publicName: "isColoredInput", isSignal: true, isRequired: false, transformFunction: null }, enableMultiSelect: { classPropertyName: "enableMultiSelect", publicName: "enableMultiSelect", isSignal: true, isRequired: false, transformFunction: null }, hideSearch: { classPropertyName: "hideSearch", publicName: "hideSearch", isSignal: true, isRequired: false, transformFunction: null }, hideDetails: { classPropertyName: "hideDetails", publicName: "hideDetails", isSignal: true, isRequired: false, transformFunction: null }, hidePadding: { classPropertyName: "hidePadding", publicName: "hidePadding", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { itemSelected: "itemSelected", itemsSelected: "itemsSelected" }, host: { listeners: { "window:keydown": "onKeyDown($event)", "window:keyup": "onKeyUp($event)" } }, queries: [{ propertyName: "itemTemplate", first: true, predicate: ["standardListItemTemplate"], descendants: true, isSignal: true }], ngImport: i0, template: "<div class=\"container flex h-full w-full min-w-full min-h-full relative overflow-hidden {{hidePadding() ? 'pt-0' : 'pt-2'}}\">\r\n <div [ngClass]=\"width()\" class=\"master flex shrink-0 grow-0 min-w-0\">\r\n\r\n <!-- LISTING -->\r\n <div class=\"w-full h-full flex flex-col gap-y-2 relative\">\r\n\r\n <!-- SEARCH -->\r\n @if (!hideSearch()) {\r\n <mat-form-field class=\"w-full small-input\" (keydown.shift)=\"$event.stopPropagation()\" [ngClass]=\"{'colored-input': isColoredInput()}\">\r\n <mat-label>{{ 'COMMON.SEARCH' | translate }}</mat-label>\r\n <input matInput type=\"text\" [formControl]=\"nameSearchControl\">\r\n <mat-icon matSuffix>search</mat-icon>\r\n </mat-form-field>\r\n }\r\n\r\n <!-- LIST -->\r\n <div class=\"flex flex-col w-full h-full relative overflow-hidden\">\r\n @if (!loadingData()) {\r\n @if (filteredItems(); as items) {\r\n @if (items.length) {\r\n <div class=\"flex flex-col w-full grow shrink overflow-y-auto overflow-x-hidden\" [overflowClass]=\"'pr-4'\">\r\n @for (item of items; track $index) {\r\n <ng-container [ngTemplateOutlet]=\"itemTemplate() || defaultTemplate\" [ngTemplateOutletContext]=\"{$implicit: item, selectedItems: selectedItems(), selectItems: selectItems.bind(this) , isSelected: isSelected.bind(this), ctrlPressed: ctrlPressed(), shiftPressed: shiftPressed()}\"/>\r\n\r\n <!--DEFAULT TEMPLATE-->\r\n <ng-template #defaultTemplate>\r\n <mat-card class=\"mb-2 cursor-pointer\" (click)=\"selectItems(item)\"\r\n [ngClass]=\"[isSelected(item) ? 'selected-item' : 'regular-item hover:bg-hover-color', shiftPressed() ? 'no-select-item' : '', (ctrlPressed() || shiftPressed()) && item.bulkSelectDisabled ? 'bg-disabled-color opacity-50 hover:cursor-auto disabled-item' : '']\"\r\n [appScrollIntoView]=\"selectedItems().length > 1 ? false : isSelected(item)\"\r\n [matTooltip]=\"(ctrlPressed() || shiftPressed()) && item.bulkSelectDisabled && item.bulkSelectDisabledTooltip ? (item.bulkSelectDisabledTooltip | translate) : item.name\" matTooltipPosition=\"right\">\r\n <div class=\"px-3 flex flex-row items-center gap-x-2 item-card\">\r\n @if (item.icon; as icon) {\r\n <app-icon [icon]=\"icon\"/>\r\n }\r\n <span [ngClass]=\"isSelected(item) ? 'text-mat-sys-surface-container' : 'text-mat-sys-on-surface'\" class=\"truncate flex-1\">{{ item.name }}</span>\r\n @if (item.rightIcon; as icon) {\r\n <app-icon [icon]=\"icon\"/>\r\n }\r\n </div>\r\n </mat-card>\r\n </ng-template>\r\n }\r\n\r\n <!-- Load more -->\r\n @if (this.dataSource().isPaged && !this.dataSource().isLastPage) {\r\n <mat-card class=\"mb-2 cursor-pointer regular-item hover:bg-hover-color\" (click)=\"loadMore()\">\r\n <div class=\"px-3 flex flex-row justify-center items-center gap-x-2 item-card\">\r\n @if (loadingPage()) {\r\n <mat-spinner diameter=\"30\"></mat-spinner>\r\n } @else {\r\n <span class=\"text-mat-sys-on-surface\">{{ 'COMMON.LOAD_MORE' | translate }}</span>\r\n }\r\n </div>\r\n </mat-card>\r\n }\r\n </div>\r\n } @else {\r\n <div class=\"flex flex-col grow justify-center items-center\">\r\n <ng-content select=\"[app-no-items-message]\"></ng-content>\r\n </div>\r\n }\r\n }\r\n } @else {\r\n <div class=\"flex flex-col grow justify-center items-center\">\r\n <mat-spinner diameter=\"30\"></mat-spinner>\r\n </div>\r\n }\r\n\r\n <!-- ACTIONS (bottom right of the listing) -->\r\n <div class=\"absolute bottom-0 right-0 z-10\">\r\n <ng-content select=\"[app-actions]\"/>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n </div>\r\n\r\n @if (!hideDetails()) {\r\n <mat-divider [vertical]=\"true\"/>\r\n\r\n <!-- DETAILS -->\r\n <div class=\"details flex shrink grow overflow-hidden\">\r\n @if (selectedItems().length <= 1) {\r\n <ng-content select=\"[app-details]\"/>\r\n } @else {\r\n <div class=\"h-full w-full flex flex-col items-center justify-center relative\">\r\n <div class=\"flex flex-col items-center justify-center\">\r\n <mat-checkbox class=\"w-full\"\r\n [checked]=\"selectedItems().length === allSelectableItems().length\"\r\n (change)=\"toggleSelectAll()\">\r\n {{ 'COMMON.SELECT_ALL' | translate }}\r\n </mat-checkbox>\r\n <mat-divider class=\"w-full !mb-2 !mt-2\"></mat-divider>\r\n <span>{{ 'COMMON.NUMBER_OF_ITEMS_SELECTED' | translate: {numberOfItems: selectedItems().length} }} </span>\r\n </div>\r\n <div class=\"absolute bottom-0 right-0\">\r\n <ng-content select=\"[app-bulk-actions]\"/>\r\n </div>\r\n </div>\r\n }\r\n </div>\r\n }\r\n</div>\r\n", styles: [":host{display:block;height:100%;width:100%;overflow:hidden}mat-card,.item-card{height:40px!important}.container{background-color:var(--base-color-50)}.container .master{padding-right:16px}.container .details{padding-left:16px}.selected-item{background:var(--mat-sys-primary);fill:var(--mat-sys-on-primary);color:var(--mat-sys-on-primary)}.regular-item{fill:var(--mat-sys-primary);color:var(--mat-sys-primary)}.disabled-item{color:unset}.disabled-item:hover{background-color:var(--neutral-variant-color-60)!important}.disabled-item span{color:unset!important}.no-select-item{user-select:none;-webkit-user-select:none}\n"], dependencies: [{ kind: "ngmodule", type: SharedModule }, { kind: "component", type: i2$1.MatCheckbox, selector: "mat-checkbox", inputs: ["aria-label", "aria-labelledby", "aria-describedby", "aria-expanded", "aria-controls", "aria-owns", "id", "required", "labelPosition", "name", "value", "disableRipple", "tabIndex", "color", "disabledInteractive", "checked", "disabled", "indeterminate"], outputs: ["change", "indeterminateChange"], exportAs: ["matCheckbox"] }, { kind: "component", type: i2.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i2.MatLabel, selector: "mat-label" }, { kind: "directive", type: i2.MatSuffix, selector: "[matSuffix], [matIconSuffix], [matTextSuffix]", inputs: ["matTextSuffix"] }, { kind: "directive", type: i3.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }, { kind: "component", type: i4.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i4$3.MatCard, selector: "mat-card", inputs: ["appearance"], exportAs: ["matCard"] }, { kind: "component", type: i1$7.MatDivider, selector: "mat-divider", inputs: ["vertical", "inset"] }, { kind: "directive", type: i4$2.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly", "disabledInteractive"], exportAs: ["matInput"] }, { kind: "component", type: i5$1.MatProgressSpinner, selector: "mat-progress-spinner, mat-spinner", inputs: ["color", "mode", "value", "diameter", "strokeWidth"], exportAs: ["matProgressSpinner"] }, { kind: "directive", type: i5.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i5.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i5.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "directive", type: i6.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i6.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: OverflowClassDirective, selector: "[overflowClass]", inputs: ["overflowClass"] }, { kind: "directive", type: ScrollIntoViewDirective, selector: "[appScrollIntoView]", inputs: ["appScrollIntoView"] }, { kind: "component", type: IconComponent, selector: "app-icon", inputs: ["icon"] }, { kind: "pipe", type: i1$1.TranslatePipe, name: "translate" }] });
|
|
6203
6203
|
}
|
|
6204
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.
|
|
6204
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.13", ngImport: i0, type: StandardListViewComponent, decorators: [{
|
|
6205
6205
|
type: Component,
|
|
6206
6206
|
args: [{ selector: 'app-standard-list-view', imports: [SharedModule, OverflowClassDirective, ScrollIntoViewDirective, IconComponent], template: "<div class=\"container flex h-full w-full min-w-full min-h-full relative overflow-hidden {{hidePadding() ? 'pt-0' : 'pt-2'}}\">\r\n <div [ngClass]=\"width()\" class=\"master flex shrink-0 grow-0 min-w-0\">\r\n\r\n <!-- LISTING -->\r\n <div class=\"w-full h-full flex flex-col gap-y-2 relative\">\r\n\r\n <!-- SEARCH -->\r\n @if (!hideSearch()) {\r\n <mat-form-field class=\"w-full small-input\" (keydown.shift)=\"$event.stopPropagation()\" [ngClass]=\"{'colored-input': isColoredInput()}\">\r\n <mat-label>{{ 'COMMON.SEARCH' | translate }}</mat-label>\r\n <input matInput type=\"text\" [formControl]=\"nameSearchControl\">\r\n <mat-icon matSuffix>search</mat-icon>\r\n </mat-form-field>\r\n }\r\n\r\n <!-- LIST -->\r\n <div class=\"flex flex-col w-full h-full relative overflow-hidden\">\r\n @if (!loadingData()) {\r\n @if (filteredItems(); as items) {\r\n @if (items.length) {\r\n <div class=\"flex flex-col w-full grow shrink overflow-y-auto overflow-x-hidden\" [overflowClass]=\"'pr-4'\">\r\n @for (item of items; track $index) {\r\n <ng-container [ngTemplateOutlet]=\"itemTemplate() || defaultTemplate\" [ngTemplateOutletContext]=\"{$implicit: item, selectedItems: selectedItems(), selectItems: selectItems.bind(this) , isSelected: isSelected.bind(this), ctrlPressed: ctrlPressed(), shiftPressed: shiftPressed()}\"/>\r\n\r\n <!--DEFAULT TEMPLATE-->\r\n <ng-template #defaultTemplate>\r\n <mat-card class=\"mb-2 cursor-pointer\" (click)=\"selectItems(item)\"\r\n [ngClass]=\"[isSelected(item) ? 'selected-item' : 'regular-item hover:bg-hover-color', shiftPressed() ? 'no-select-item' : '', (ctrlPressed() || shiftPressed()) && item.bulkSelectDisabled ? 'bg-disabled-color opacity-50 hover:cursor-auto disabled-item' : '']\"\r\n [appScrollIntoView]=\"selectedItems().length > 1 ? false : isSelected(item)\"\r\n [matTooltip]=\"(ctrlPressed() || shiftPressed()) && item.bulkSelectDisabled && item.bulkSelectDisabledTooltip ? (item.bulkSelectDisabledTooltip | translate) : item.name\" matTooltipPosition=\"right\">\r\n <div class=\"px-3 flex flex-row items-center gap-x-2 item-card\">\r\n @if (item.icon; as icon) {\r\n <app-icon [icon]=\"icon\"/>\r\n }\r\n <span [ngClass]=\"isSelected(item) ? 'text-mat-sys-surface-container' : 'text-mat-sys-on-surface'\" class=\"truncate flex-1\">{{ item.name }}</span>\r\n @if (item.rightIcon; as icon) {\r\n <app-icon [icon]=\"icon\"/>\r\n }\r\n </div>\r\n </mat-card>\r\n </ng-template>\r\n }\r\n\r\n <!-- Load more -->\r\n @if (this.dataSource().isPaged && !this.dataSource().isLastPage) {\r\n <mat-card class=\"mb-2 cursor-pointer regular-item hover:bg-hover-color\" (click)=\"loadMore()\">\r\n <div class=\"px-3 flex flex-row justify-center items-center gap-x-2 item-card\">\r\n @if (loadingPage()) {\r\n <mat-spinner diameter=\"30\"></mat-spinner>\r\n } @else {\r\n <span class=\"text-mat-sys-on-surface\">{{ 'COMMON.LOAD_MORE' | translate }}</span>\r\n }\r\n </div>\r\n </mat-card>\r\n }\r\n </div>\r\n } @else {\r\n <div class=\"flex flex-col grow justify-center items-center\">\r\n <ng-content select=\"[app-no-items-message]\"></ng-content>\r\n </div>\r\n }\r\n }\r\n } @else {\r\n <div class=\"flex flex-col grow justify-center items-center\">\r\n <mat-spinner diameter=\"30\"></mat-spinner>\r\n </div>\r\n }\r\n\r\n <!-- ACTIONS (bottom right of the listing) -->\r\n <div class=\"absolute bottom-0 right-0 z-10\">\r\n <ng-content select=\"[app-actions]\"/>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n </div>\r\n\r\n @if (!hideDetails()) {\r\n <mat-divider [vertical]=\"true\"/>\r\n\r\n <!-- DETAILS -->\r\n <div class=\"details flex shrink grow overflow-hidden\">\r\n @if (selectedItems().length <= 1) {\r\n <ng-content select=\"[app-details]\"/>\r\n } @else {\r\n <div class=\"h-full w-full flex flex-col items-center justify-center relative\">\r\n <div class=\"flex flex-col items-center justify-center\">\r\n <mat-checkbox class=\"w-full\"\r\n [checked]=\"selectedItems().length === allSelectableItems().length\"\r\n (change)=\"toggleSelectAll()\">\r\n {{ 'COMMON.SELECT_ALL' | translate }}\r\n </mat-checkbox>\r\n <mat-divider class=\"w-full !mb-2 !mt-2\"></mat-divider>\r\n <span>{{ 'COMMON.NUMBER_OF_ITEMS_SELECTED' | translate: {numberOfItems: selectedItems().length} }} </span>\r\n </div>\r\n <div class=\"absolute bottom-0 right-0\">\r\n <ng-content select=\"[app-bulk-actions]\"/>\r\n </div>\r\n </div>\r\n }\r\n </div>\r\n }\r\n</div>\r\n", styles: [":host{display:block;height:100%;width:100%;overflow:hidden}mat-card,.item-card{height:40px!important}.container{background-color:var(--base-color-50)}.container .master{padding-right:16px}.container .details{padding-left:16px}.selected-item{background:var(--mat-sys-primary);fill:var(--mat-sys-on-primary);color:var(--mat-sys-on-primary)}.regular-item{fill:var(--mat-sys-primary);color:var(--mat-sys-primary)}.disabled-item{color:unset}.disabled-item:hover{background-color:var(--neutral-variant-color-60)!important}.disabled-item span{color:unset!important}.no-select-item{user-select:none;-webkit-user-select:none}\n"] }]
|
|
6207
6207
|
}], ctorParameters: () => [{ type: i0.DestroyRef }], propDecorators: { onKeyDown: [{
|
|
@@ -6296,10 +6296,10 @@ class TabulatedChipViewComponent {
|
|
|
6296
6296
|
router;
|
|
6297
6297
|
route;
|
|
6298
6298
|
navigationPersistenceService;
|
|
6299
|
-
tabs = input.required(...(ngDevMode ? [{ debugName: "tabs" }] : []));
|
|
6300
|
-
queryParamHandling = input('replace', ...(ngDevMode ? [{ debugName: "queryParamHandling" }] : []));
|
|
6301
|
-
saveLastActiveTab = input(false, ...(ngDevMode ? [{ debugName: "saveLastActiveTab" }] : []));
|
|
6302
|
-
navBarLayoutClasses = input('', ...(ngDevMode ? [{ debugName: "navBarLayoutClasses" }] : []));
|
|
6299
|
+
tabs = input.required(...(ngDevMode ? [{ debugName: "tabs" }] : /* istanbul ignore next */ []));
|
|
6300
|
+
queryParamHandling = input('replace', ...(ngDevMode ? [{ debugName: "queryParamHandling" }] : /* istanbul ignore next */ []));
|
|
6301
|
+
saveLastActiveTab = input(false, ...(ngDevMode ? [{ debugName: "saveLastActiveTab" }] : /* istanbul ignore next */ []));
|
|
6302
|
+
navBarLayoutClasses = input('', ...(ngDevMode ? [{ debugName: "navBarLayoutClasses" }] : /* istanbul ignore next */ []));
|
|
6303
6303
|
constructor(router, route, navigationPersistenceService) {
|
|
6304
6304
|
this.router = router;
|
|
6305
6305
|
this.route = route;
|
|
@@ -6316,10 +6316,10 @@ class TabulatedChipViewComponent {
|
|
|
6316
6316
|
this.router.navigate([route], { relativeTo: this.route, queryParamsHandling: this.queryParamHandling() });
|
|
6317
6317
|
}
|
|
6318
6318
|
}
|
|
6319
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.
|
|
6320
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.
|
|
6319
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.13", ngImport: i0, type: TabulatedChipViewComponent, deps: [{ token: i1$2.Router }, { token: i1$2.ActivatedRoute }, { token: NavigationPersistenceService }], target: i0.ɵɵFactoryTarget.Component });
|
|
6320
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.13", type: TabulatedChipViewComponent, isStandalone: true, selector: "app-tabulated-chip-view", inputs: { tabs: { classPropertyName: "tabs", publicName: "tabs", isSignal: true, isRequired: true, transformFunction: null }, queryParamHandling: { classPropertyName: "queryParamHandling", publicName: "queryParamHandling", isSignal: true, isRequired: false, transformFunction: null }, saveLastActiveTab: { classPropertyName: "saveLastActiveTab", publicName: "saveLastActiveTab", isSignal: true, isRequired: false, transformFunction: null }, navBarLayoutClasses: { classPropertyName: "navBarLayoutClasses", publicName: "navBarLayoutClasses", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: "<div class=\"flex flex-auto flex-col overflow-hidden tabulated-view-container\">\r\n <nav mat-tab-nav-bar [mat-stretch-tabs]=\"false\" [tabPanel]=\"tabPanel\" class=\"navigation\" [ngClass]=\"navBarLayoutClasses()\">\r\n @for (tab of tabs(); track $index) {\r\n @if (!tab.condition || (tab.condition | async)) {\r\n <div\r\n mat-tab-link\r\n [active]=\"isActive(tab.route)\"\r\n (click)=\"navigate(tab.route)\"\r\n [matTooltip]=\"tab.tooltip ? (tab.tooltip | translate) : null\"\r\n [ngClass]=\"{ 'bg-mat-sys-primary': isActive(tab.route), 'active': isActive(tab.route) }\"\r\n class=\"rounded mr-2 navigation-tab\"\r\n [attr.data-test]=\"tab.name + '_tab'\"\r\n >\r\n @if (tab.icon) {\r\n <mat-icon>{{ tab.icon }}</mat-icon>\r\n }\r\n <span [ngClass]=\"isActive(tab.route) ?'text-mat-sys-surface-container' : 'text-mat-sys-primary'\">{{ tab.name | translate }}</span>\r\n </div>\r\n }\r\n }\r\n </nav>\r\n <mat-tab-nav-panel #tabPanel class=\"flex flex-auto flex-col overflow-hidden\">\r\n <router-outlet/>\r\n </mat-tab-nav-panel>\r\n</div>\r\n", styles: [":host{display:flex;height:100%;width:100%;max-height:100%;max-width:100%;box-sizing:border-box;--mat-tab-active-indicator-color: transparent;--mat-tab-active-focus-indicator-color: transparent;--mat-tab-active-hover-indicator-color: transparent;--mat-tab-active-ripple-color: transparent;--mat-tab-inactive-ripple-color: transparent;--mat-tab-disabled-ripple-color: transparent;--mat-tab-active-indicator-height: 0;--mat-tab-divider-height: 0px;--mat-tab-container-height: 40px}.navigation{max-width:100%}.navigation-tab{border:1px solid var(--mat-sys-outline-variant);border-radius:10px;padding:0 1rem;height:2.5rem;box-sizing:border-box}.navigation-tab.active{border:none}.navigation-tab:hover{box-shadow:inset 0 0 0 200px #fff3}.navigation-tab:hover mat-icon,.navigation-tab:hover span{opacity:.8}:host-context(.alt-theme) .navigation-tab:hover{box-shadow:inset 0 0 0 200px #0003}:host-context(.alt-theme) .navigation-tab:hover mat-icon,:host-context(.alt-theme) .navigation-tab:hover span{opacity:.6}\n"], dependencies: [{ kind: "ngmodule", type: SharedModule }, { kind: "directive", type: i3.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }, { kind: "component", type: i4$5.MatTabNav, selector: "[mat-tab-nav-bar]", inputs: ["fitInkBarToContent", "mat-stretch-tabs", "animationDuration", "backgroundColor", "disableRipple", "color", "tabPanel"], exportAs: ["matTabNavBar", "matTabNav"] }, { kind: "component", type: i4$5.MatTabNavPanel, selector: "mat-tab-nav-panel", inputs: ["id"], exportAs: ["matTabNavPanel"] }, { kind: "component", type: i4$5.MatTabLink, selector: "[mat-tab-link], [matTabLink]", inputs: ["active", "disabled", "disableRipple", "tabIndex", "id"], exportAs: ["matTabLink"] }, { kind: "component", type: i4.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: i6.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1$2.RouterOutlet, selector: "router-outlet", inputs: ["name", "routerOutletData"], outputs: ["activate", "deactivate", "attach", "detach"], exportAs: ["outlet"] }, { kind: "pipe", type: i1$1.TranslatePipe, name: "translate" }, { kind: "pipe", type: i6.AsyncPipe, name: "async" }] });
|
|
6321
6321
|
}
|
|
6322
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.
|
|
6322
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.13", ngImport: i0, type: TabulatedChipViewComponent, decorators: [{
|
|
6323
6323
|
type: Component,
|
|
6324
6324
|
args: [{ selector: 'app-tabulated-chip-view', imports: [SharedModule], template: "<div class=\"flex flex-auto flex-col overflow-hidden tabulated-view-container\">\r\n <nav mat-tab-nav-bar [mat-stretch-tabs]=\"false\" [tabPanel]=\"tabPanel\" class=\"navigation\" [ngClass]=\"navBarLayoutClasses()\">\r\n @for (tab of tabs(); track $index) {\r\n @if (!tab.condition || (tab.condition | async)) {\r\n <div\r\n mat-tab-link\r\n [active]=\"isActive(tab.route)\"\r\n (click)=\"navigate(tab.route)\"\r\n [matTooltip]=\"tab.tooltip ? (tab.tooltip | translate) : null\"\r\n [ngClass]=\"{ 'bg-mat-sys-primary': isActive(tab.route), 'active': isActive(tab.route) }\"\r\n class=\"rounded mr-2 navigation-tab\"\r\n [attr.data-test]=\"tab.name + '_tab'\"\r\n >\r\n @if (tab.icon) {\r\n <mat-icon>{{ tab.icon }}</mat-icon>\r\n }\r\n <span [ngClass]=\"isActive(tab.route) ?'text-mat-sys-surface-container' : 'text-mat-sys-primary'\">{{ tab.name | translate }}</span>\r\n </div>\r\n }\r\n }\r\n </nav>\r\n <mat-tab-nav-panel #tabPanel class=\"flex flex-auto flex-col overflow-hidden\">\r\n <router-outlet/>\r\n </mat-tab-nav-panel>\r\n</div>\r\n", styles: [":host{display:flex;height:100%;width:100%;max-height:100%;max-width:100%;box-sizing:border-box;--mat-tab-active-indicator-color: transparent;--mat-tab-active-focus-indicator-color: transparent;--mat-tab-active-hover-indicator-color: transparent;--mat-tab-active-ripple-color: transparent;--mat-tab-inactive-ripple-color: transparent;--mat-tab-disabled-ripple-color: transparent;--mat-tab-active-indicator-height: 0;--mat-tab-divider-height: 0px;--mat-tab-container-height: 40px}.navigation{max-width:100%}.navigation-tab{border:1px solid var(--mat-sys-outline-variant);border-radius:10px;padding:0 1rem;height:2.5rem;box-sizing:border-box}.navigation-tab.active{border:none}.navigation-tab:hover{box-shadow:inset 0 0 0 200px #fff3}.navigation-tab:hover mat-icon,.navigation-tab:hover span{opacity:.8}:host-context(.alt-theme) .navigation-tab:hover{box-shadow:inset 0 0 0 200px #0003}:host-context(.alt-theme) .navigation-tab:hover mat-icon,:host-context(.alt-theme) .navigation-tab:hover span{opacity:.6}\n"] }]
|
|
6325
6325
|
}], ctorParameters: () => [{ type: i1$2.Router }, { type: i1$2.ActivatedRoute }, { type: NavigationPersistenceService }], propDecorators: { tabs: [{ type: i0.Input, args: [{ isSignal: true, alias: "tabs", required: true }] }], queryParamHandling: [{ type: i0.Input, args: [{ isSignal: true, alias: "queryParamHandling", required: false }] }], saveLastActiveTab: [{ type: i0.Input, args: [{ isSignal: true, alias: "saveLastActiveTab", required: false }] }], navBarLayoutClasses: [{ type: i0.Input, args: [{ isSignal: true, alias: "navBarLayoutClasses", required: false }] }] } });
|
|
@@ -6347,10 +6347,10 @@ class TabulatedViewComponent {
|
|
|
6347
6347
|
this.router.navigate([route], { relativeTo: this.route, queryParamsHandling: this.queryParamHandling });
|
|
6348
6348
|
}
|
|
6349
6349
|
}
|
|
6350
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.
|
|
6351
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.
|
|
6350
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.13", ngImport: i0, type: TabulatedViewComponent, deps: [{ token: i1$2.Router }, { token: i1$2.ActivatedRoute }, { token: NavigationPersistenceService }], target: i0.ɵɵFactoryTarget.Component });
|
|
6351
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.13", type: TabulatedViewComponent, isStandalone: true, selector: "app-tabulated-view", inputs: { tabs: "tabs", queryParamHandling: "queryParamHandling", saveLastActiveTab: "saveLastActiveTab" }, ngImport: i0, template: "<div class=\"flex flex-auto flex-col overflow-hidden\">\r\n <nav mat-tab-nav-bar [mat-stretch-tabs]=\"false\" [tabPanel]=\"tabPanel\" class=\"navigation\">\r\n <div\r\n *ngFor=\"let tab of tabs\"\r\n mat-tab-link\r\n [active]=\"isActive(tab.route)\"\r\n (click)=\"navigate(tab.route)\"\r\n [matTooltip]=\"tab.tooltip ? (tab.tooltip | translate) : null\"\r\n [attr.data-test]=\"tab.name + '_tab'\"\r\n >\r\n <mat-icon *ngIf=\"tab.icon\">\r\n {{ tab.icon }}\r\n </mat-icon>\r\n {{ tab.name | translate }}\r\n </div>\r\n </nav>\r\n <mat-tab-nav-panel #tabPanel class=\"flex flex-auto flex-col overflow-hidden\">\r\n <router-outlet></router-outlet>\r\n </mat-tab-nav-panel>\r\n</div>\r\n", styles: [":host{display:flex;height:100%;width:100%;max-height:100%;max-width:100%;box-sizing:border-box}.navigation{border-bottom:1px solid rgba(0,0,0,.12);max-width:100%}\n"], dependencies: [{ kind: "ngmodule", type: SharedModule }, { kind: "directive", type: i3.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }, { kind: "component", type: i4$5.MatTabNav, selector: "[mat-tab-nav-bar]", inputs: ["fitInkBarToContent", "mat-stretch-tabs", "animationDuration", "backgroundColor", "disableRipple", "color", "tabPanel"], exportAs: ["matTabNavBar", "matTabNav"] }, { kind: "component", type: i4$5.MatTabNavPanel, selector: "mat-tab-nav-panel", inputs: ["id"], exportAs: ["matTabNavPanel"] }, { kind: "component", type: i4$5.MatTabLink, selector: "[mat-tab-link], [matTabLink]", inputs: ["active", "disabled", "disableRipple", "tabIndex", "id"], exportAs: ["matTabLink"] }, { kind: "component", type: i4.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: i6.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i6.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1$2.RouterOutlet, selector: "router-outlet", inputs: ["name", "routerOutletData"], outputs: ["activate", "deactivate", "attach", "detach"], exportAs: ["outlet"] }, { kind: "pipe", type: i1$1.TranslatePipe, name: "translate" }] });
|
|
6352
6352
|
}
|
|
6353
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.
|
|
6353
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.13", ngImport: i0, type: TabulatedViewComponent, decorators: [{
|
|
6354
6354
|
type: Component,
|
|
6355
6355
|
args: [{ selector: 'app-tabulated-view', imports: [SharedModule], template: "<div class=\"flex flex-auto flex-col overflow-hidden\">\r\n <nav mat-tab-nav-bar [mat-stretch-tabs]=\"false\" [tabPanel]=\"tabPanel\" class=\"navigation\">\r\n <div\r\n *ngFor=\"let tab of tabs\"\r\n mat-tab-link\r\n [active]=\"isActive(tab.route)\"\r\n (click)=\"navigate(tab.route)\"\r\n [matTooltip]=\"tab.tooltip ? (tab.tooltip | translate) : null\"\r\n [attr.data-test]=\"tab.name + '_tab'\"\r\n >\r\n <mat-icon *ngIf=\"tab.icon\">\r\n {{ tab.icon }}\r\n </mat-icon>\r\n {{ tab.name | translate }}\r\n </div>\r\n </nav>\r\n <mat-tab-nav-panel #tabPanel class=\"flex flex-auto flex-col overflow-hidden\">\r\n <router-outlet></router-outlet>\r\n </mat-tab-nav-panel>\r\n</div>\r\n", styles: [":host{display:flex;height:100%;width:100%;max-height:100%;max-width:100%;box-sizing:border-box}.navigation{border-bottom:1px solid rgba(0,0,0,.12);max-width:100%}\n"] }]
|
|
6356
6356
|
}], ctorParameters: () => [{ type: i1$2.Router }, { type: i1$2.ActivatedRoute }, { type: NavigationPersistenceService }], propDecorators: { tabs: [{
|
|
@@ -6363,7 +6363,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.0", ngImpor
|
|
|
6363
6363
|
}] } });
|
|
6364
6364
|
|
|
6365
6365
|
class TreeNodeComponent {
|
|
6366
|
-
node = input.required(...(ngDevMode ? [{ debugName: "node" }] : []));
|
|
6366
|
+
node = input.required(...(ngDevMode ? [{ debugName: "node" }] : /* istanbul ignore next */ []));
|
|
6367
6367
|
nodeSelected = output();
|
|
6368
6368
|
toggle(node) {
|
|
6369
6369
|
node.open = !node.open;
|
|
@@ -6371,17 +6371,17 @@ class TreeNodeComponent {
|
|
|
6371
6371
|
selectNode(node) {
|
|
6372
6372
|
this.nodeSelected.emit(node);
|
|
6373
6373
|
}
|
|
6374
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.
|
|
6375
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.
|
|
6374
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.13", ngImport: i0, type: TreeNodeComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
6375
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.13", type: TreeNodeComponent, isStandalone: true, selector: "app-tree-node", inputs: { node: { classPropertyName: "node", publicName: "node", isSignal: true, isRequired: true, transformFunction: null } }, outputs: { nodeSelected: "nodeSelected" }, ngImport: i0, template: "<div class=\"w-full flex flex-col\">\r\n <!-- ROW -->\r\n <div class=\"w-full h-10 flex flex-row items-center\">\r\n\r\n <!-- ARROWS -->\r\n @if (node().canHaveChildren) {\r\n @if (node().open) {\r\n <button mat-icon-button class=\"scale-80\" (click)=\"toggle(node())\">\r\n <mat-icon>keyboard_arrow_down</mat-icon>\r\n </button>\r\n } @else {\r\n <button mat-icon-button class=\"scale-80\" [disabled]=\"!node().hasChildren\" (click)=\"toggle(node())\">\r\n <mat-icon>keyboard_arrow_right</mat-icon>\r\n </button>\r\n }\r\n } @else {\r\n <div class=\"w-12 h-12\"> </div>\r\n }\r\n\r\n <!-- ICON AND TEXT -->\r\n <div class=\"flex flex-row items-center cursor-pointer\" (click)=\"selectNode(node())\">\r\n <mat-icon [ngClass]=\"node().selected ? 'text-mat-sys-tertiary' : 'text-mat-sys-primary'\">{{ node().icon }}</mat-icon>\r\n <div class=\"pl-2\" [ngClass]=\"{ 'text-mat-sys-tertiary' : node().selected }\">{{ node().name }}</div>\r\n </div>\r\n </div>\r\n\r\n <!-- Children -->\r\n @if (node().open) {\r\n <div class=\"w-full flex flex-col pl-9\">\r\n @if (node().children | async; as children) {\r\n @for (child of children; track $index) {\r\n <app-tree-node [node]=\"child\" (nodeSelected)=\"selectNode($event)\"/>\r\n }\r\n }\r\n </div>\r\n }\r\n</div>\r\n", styles: [""], dependencies: [{ kind: "component", type: TreeNodeComponent, selector: "app-tree-node", inputs: ["node"], outputs: ["nodeSelected"] }, { kind: "ngmodule", type: SharedModule }, { kind: "component", type: i1$4.MatIconButton, selector: "button[mat-icon-button], a[mat-icon-button], button[matIconButton], a[matIconButton]", exportAs: ["matButton", "matAnchor"] }, { kind: "component", type: i4.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: i6.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "pipe", type: i6.AsyncPipe, name: "async" }] });
|
|
6376
6376
|
}
|
|
6377
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.
|
|
6377
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.13", ngImport: i0, type: TreeNodeComponent, decorators: [{
|
|
6378
6378
|
type: Component,
|
|
6379
6379
|
args: [{ selector: 'app-tree-node', imports: [SharedModule], template: "<div class=\"w-full flex flex-col\">\r\n <!-- ROW -->\r\n <div class=\"w-full h-10 flex flex-row items-center\">\r\n\r\n <!-- ARROWS -->\r\n @if (node().canHaveChildren) {\r\n @if (node().open) {\r\n <button mat-icon-button class=\"scale-80\" (click)=\"toggle(node())\">\r\n <mat-icon>keyboard_arrow_down</mat-icon>\r\n </button>\r\n } @else {\r\n <button mat-icon-button class=\"scale-80\" [disabled]=\"!node().hasChildren\" (click)=\"toggle(node())\">\r\n <mat-icon>keyboard_arrow_right</mat-icon>\r\n </button>\r\n }\r\n } @else {\r\n <div class=\"w-12 h-12\"> </div>\r\n }\r\n\r\n <!-- ICON AND TEXT -->\r\n <div class=\"flex flex-row items-center cursor-pointer\" (click)=\"selectNode(node())\">\r\n <mat-icon [ngClass]=\"node().selected ? 'text-mat-sys-tertiary' : 'text-mat-sys-primary'\">{{ node().icon }}</mat-icon>\r\n <div class=\"pl-2\" [ngClass]=\"{ 'text-mat-sys-tertiary' : node().selected }\">{{ node().name }}</div>\r\n </div>\r\n </div>\r\n\r\n <!-- Children -->\r\n @if (node().open) {\r\n <div class=\"w-full flex flex-col pl-9\">\r\n @if (node().children | async; as children) {\r\n @for (child of children; track $index) {\r\n <app-tree-node [node]=\"child\" (nodeSelected)=\"selectNode($event)\"/>\r\n }\r\n }\r\n </div>\r\n }\r\n</div>\r\n" }]
|
|
6380
6380
|
}], propDecorators: { node: [{ type: i0.Input, args: [{ isSignal: true, alias: "node", required: true }] }], nodeSelected: [{ type: i0.Output, args: ["nodeSelected"] }] } });
|
|
6381
6381
|
|
|
6382
6382
|
class TreeComponent {
|
|
6383
|
-
roots = input.required(...(ngDevMode ? [{ debugName: "roots" }] : []));
|
|
6384
|
-
guidPath = input.required(...(ngDevMode ? [{ debugName: "guidPath" }] : []));
|
|
6383
|
+
roots = input.required(...(ngDevMode ? [{ debugName: "roots" }] : /* istanbul ignore next */ []));
|
|
6384
|
+
guidPath = input.required(...(ngDevMode ? [{ debugName: "guidPath" }] : /* istanbul ignore next */ []));
|
|
6385
6385
|
nodeSelected = output();
|
|
6386
6386
|
selectedNode = null;
|
|
6387
6387
|
constructor() {
|
|
@@ -6425,19 +6425,19 @@ class TreeComponent {
|
|
|
6425
6425
|
this.selectedNode = node;
|
|
6426
6426
|
this.selectedNode.selected = true;
|
|
6427
6427
|
}
|
|
6428
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.
|
|
6429
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.
|
|
6428
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.13", ngImport: i0, type: TreeComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
6429
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.13", type: TreeComponent, isStandalone: true, selector: "app-tree", inputs: { roots: { classPropertyName: "roots", publicName: "roots", isSignal: true, isRequired: true, transformFunction: null }, guidPath: { classPropertyName: "guidPath", publicName: "guidPath", isSignal: true, isRequired: true, transformFunction: null } }, outputs: { nodeSelected: "nodeSelected" }, ngImport: i0, template: "<div class=\"h-full w-full flex flex-col\">\r\n @for (node of roots(); track $index) {\r\n <app-tree-node [node]=\"node\" (nodeSelected)=\"selectNode($event)\"/>\r\n }\r\n</div>\r\n", styles: [""], dependencies: [{ kind: "component", type: TreeNodeComponent, selector: "app-tree-node", inputs: ["node"], outputs: ["nodeSelected"] }] });
|
|
6430
6430
|
}
|
|
6431
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.
|
|
6431
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.13", ngImport: i0, type: TreeComponent, decorators: [{
|
|
6432
6432
|
type: Component,
|
|
6433
6433
|
args: [{ selector: 'app-tree', imports: [TreeNodeComponent], template: "<div class=\"h-full w-full flex flex-col\">\r\n @for (node of roots(); track $index) {\r\n <app-tree-node [node]=\"node\" (nodeSelected)=\"selectNode($event)\"/>\r\n }\r\n</div>\r\n" }]
|
|
6434
6434
|
}], ctorParameters: () => [], propDecorators: { roots: [{ type: i0.Input, args: [{ isSignal: true, alias: "roots", required: true }] }], guidPath: [{ type: i0.Input, args: [{ isSignal: true, alias: "guidPath", required: true }] }], nodeSelected: [{ type: i0.Output, args: ["nodeSelected"] }] } });
|
|
6435
6435
|
|
|
6436
6436
|
class ValueDisplayComponent {
|
|
6437
6437
|
DataType = DataType;
|
|
6438
|
-
value = input.required(...(ngDevMode ? [{ debugName: "value" }] : []));
|
|
6439
|
-
type = input.required(...(ngDevMode ? [{ debugName: "type" }] : []));
|
|
6440
|
-
unit = input(...(ngDevMode ? [undefined, { debugName: "unit" }] : []));
|
|
6438
|
+
value = input.required(...(ngDevMode ? [{ debugName: "value" }] : /* istanbul ignore next */ []));
|
|
6439
|
+
type = input.required(...(ngDevMode ? [{ debugName: "type" }] : /* istanbul ignore next */ []));
|
|
6440
|
+
unit = input(...(ngDevMode ? [undefined, { debugName: "unit" }] : /* istanbul ignore next */ []));
|
|
6441
6441
|
constructor() {
|
|
6442
6442
|
}
|
|
6443
6443
|
getNumber(epochTime) {
|
|
@@ -6446,21 +6446,21 @@ class ValueDisplayComponent {
|
|
|
6446
6446
|
getVectorValue(vector) {
|
|
6447
6447
|
return vector.replaceAll(',', ', ');
|
|
6448
6448
|
}
|
|
6449
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.
|
|
6450
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.
|
|
6449
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.13", ngImport: i0, type: ValueDisplayComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
6450
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.13", type: ValueDisplayComponent, isStandalone: true, selector: "app-value-display", inputs: { value: { classPropertyName: "value", publicName: "value", isSignal: true, isRequired: true, transformFunction: null }, type: { classPropertyName: "type", publicName: "type", isSignal: true, isRequired: true, transformFunction: null }, unit: { classPropertyName: "unit", publicName: "unit", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: "@if (value(); as value) {\r\n @switch (type()) {\r\n @case (DataType.BOOLEAN) {\r\n <mat-icon>{{ value === 'true' ? 'check' : 'close' }}</mat-icon>\r\n }\r\n @case (DataType.COLOR) {\r\n <div class=\"color-circle\" [style.background-color]=\"value\"></div>\r\n }\r\n @case (DataType.DATE) {\r\n <div class=\"truncate\" matTooltip=\"{{ getNumber(value) | simpleDateTime }}\">{{ getNumber(value) | simpleDateTime }}</div>\r\n }\r\n @case (DataType.DURATION) {\r\n {{ getNumber(value) | duration }}\r\n }\r\n @case (DataType.LINK) {\r\n <div class=\"truncate\" matTooltip=\"{{ value }}\">\r\n <a href=\"{{value}}\" target=\"_blank\" class=\"underline\">{{ value }}</a>\r\n </div>\r\n }\r\n @case (DataType.VECTOR) {\r\n <div class=\"truncate\" matTooltip=\"{{ getVectorValue(value) }}\">{{ getVectorValue(value) }}</div>\r\n }\r\n @case (DataType.NUMERIC){\r\n <div class=\"truncate\" matTooltip=\"{{ getNumber(value) }} {{ unit() }}\">{{getNumber(value) | localizedNumber}} {{ unit() }}</div>\r\n }\r\n @default {\r\n <div class=\"truncate\" matTooltip=\"{{ value }} {{ unit() }}\">{{ value }} {{ unit() }}</div>\r\n }\r\n }\r\n} @else {\r\n -\r\n}\r\n", styles: [".color-circle{width:1.5rem;height:1.5rem;margin-top:.25rem;border-radius:9999px}\n"], dependencies: [{ kind: "ngmodule", type: SharedModule }, { kind: "directive", type: i3.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }, { kind: "component", type: i4.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "pipe", type: DurationPipe, name: "duration" }, { kind: "pipe", type: SimpleDateTimePipe, name: "simpleDateTime" }, { kind: "pipe", type: LocalizedNumberPipe, name: "localizedNumber" }] });
|
|
6451
6451
|
}
|
|
6452
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.
|
|
6452
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.13", ngImport: i0, type: ValueDisplayComponent, decorators: [{
|
|
6453
6453
|
type: Component,
|
|
6454
6454
|
args: [{ selector: 'app-value-display', imports: [SharedModule, DurationPipe, SimpleDateTimePipe, LocalizedNumberPipe], template: "@if (value(); as value) {\r\n @switch (type()) {\r\n @case (DataType.BOOLEAN) {\r\n <mat-icon>{{ value === 'true' ? 'check' : 'close' }}</mat-icon>\r\n }\r\n @case (DataType.COLOR) {\r\n <div class=\"color-circle\" [style.background-color]=\"value\"></div>\r\n }\r\n @case (DataType.DATE) {\r\n <div class=\"truncate\" matTooltip=\"{{ getNumber(value) | simpleDateTime }}\">{{ getNumber(value) | simpleDateTime }}</div>\r\n }\r\n @case (DataType.DURATION) {\r\n {{ getNumber(value) | duration }}\r\n }\r\n @case (DataType.LINK) {\r\n <div class=\"truncate\" matTooltip=\"{{ value }}\">\r\n <a href=\"{{value}}\" target=\"_blank\" class=\"underline\">{{ value }}</a>\r\n </div>\r\n }\r\n @case (DataType.VECTOR) {\r\n <div class=\"truncate\" matTooltip=\"{{ getVectorValue(value) }}\">{{ getVectorValue(value) }}</div>\r\n }\r\n @case (DataType.NUMERIC){\r\n <div class=\"truncate\" matTooltip=\"{{ getNumber(value) }} {{ unit() }}\">{{getNumber(value) | localizedNumber}} {{ unit() }}</div>\r\n }\r\n @default {\r\n <div class=\"truncate\" matTooltip=\"{{ value }} {{ unit() }}\">{{ value }} {{ unit() }}</div>\r\n }\r\n }\r\n} @else {\r\n -\r\n}\r\n", styles: [".color-circle{width:1.5rem;height:1.5rem;margin-top:.25rem;border-radius:9999px}\n"] }]
|
|
6455
6455
|
}], ctorParameters: () => [], propDecorators: { value: [{ type: i0.Input, args: [{ isSignal: true, alias: "value", required: true }] }], type: [{ type: i0.Input, args: [{ isSignal: true, alias: "type", required: true }] }], unit: [{ type: i0.Input, args: [{ isSignal: true, alias: "unit", required: false }] }] } });
|
|
6456
6456
|
|
|
6457
6457
|
class ValueInputBooleanComponent {
|
|
6458
6458
|
translate;
|
|
6459
|
-
name = input('', ...(ngDevMode ? [{ debugName: "name" }] : []));
|
|
6459
|
+
name = input('', ...(ngDevMode ? [{ debugName: "name" }] : /* istanbul ignore next */ []));
|
|
6460
6460
|
formControl = new FormControl(false);
|
|
6461
6461
|
destroy$ = new Subject();
|
|
6462
|
-
validators = input(...(ngDevMode ? [undefined, { debugName: "validators" }] : []));
|
|
6463
|
-
showErrorInTooltip = input(false, ...(ngDevMode ? [{ debugName: "showErrorInTooltip" }] : []));
|
|
6462
|
+
validators = input(...(ngDevMode ? [undefined, { debugName: "validators" }] : /* istanbul ignore next */ []));
|
|
6463
|
+
showErrorInTooltip = input(false, ...(ngDevMode ? [{ debugName: "showErrorInTooltip" }] : /* istanbul ignore next */ []));
|
|
6464
6464
|
constructor(translate) {
|
|
6465
6465
|
this.translate = translate;
|
|
6466
6466
|
effect(() => {
|
|
@@ -6507,8 +6507,8 @@ class ValueInputBooleanComponent {
|
|
|
6507
6507
|
this.destroy$.next();
|
|
6508
6508
|
this.destroy$.complete();
|
|
6509
6509
|
}
|
|
6510
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.
|
|
6511
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.
|
|
6510
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.13", ngImport: i0, type: ValueInputBooleanComponent, deps: [{ token: i1$1.TranslateService }], target: i0.ɵɵFactoryTarget.Component });
|
|
6511
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.13", type: ValueInputBooleanComponent, isStandalone: true, selector: "app-value-input-boolean", inputs: { name: { classPropertyName: "name", publicName: "name", isSignal: true, isRequired: false, transformFunction: null }, validators: { classPropertyName: "validators", publicName: "validators", isSignal: true, isRequired: false, transformFunction: null }, showErrorInTooltip: { classPropertyName: "showErrorInTooltip", publicName: "showErrorInTooltip", isSignal: true, isRequired: false, transformFunction: null } }, providers: [
|
|
6512
6512
|
{
|
|
6513
6513
|
provide: NG_VALUE_ACCESSOR,
|
|
6514
6514
|
useExisting: forwardRef(() => ValueInputBooleanComponent),
|
|
@@ -6521,7 +6521,7 @@ class ValueInputBooleanComponent {
|
|
|
6521
6521
|
}
|
|
6522
6522
|
], ngImport: i0, template: "<mat-slide-toggle [formControl]=\"formControl\" (blur)=\"formControl.updateValueAndValidity({ emitEvent: false })\" [matTooltip]=\"getErrorTooltip()\" [matTooltipDisabled]=\"!showErrorInTooltip()\">\r\n <div class=\"flex flex-col ml-2\">\r\n <span class=\"text-xs font-light\"> {{ name() }} </span>\r\n <span>{{ formControl.value ? ('DATA_BROWSER.ATTRIBUTE_VALUE_ENABLED' | translate) : ('DATA_BROWSER.ATTRIBUTE_VALUE_DISABLED' | translate) }}</span>\r\n </div>\r\n</mat-slide-toggle>\r\n@for (error of getErrors(); track error) {\r\n <mat-error *ngIf=\"!showErrorInTooltip()\" class=\"ml-4 mt-[-8px] text-[12px]\">{{ 'COMMON.ERROR_VALIDATION_' + error | translate }}</mat-error>\r\n}\r\n", styles: [""], dependencies: [{ kind: "ngmodule", type: SharedModule }, { kind: "directive", type: i2.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "directive", type: i3.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }, { kind: "directive", type: i5.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i5.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "directive", type: i6.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: MatSlideToggle, selector: "mat-slide-toggle", inputs: ["name", "id", "labelPosition", "aria-label", "aria-labelledby", "aria-describedby", "required", "color", "disabled", "disableRipple", "tabIndex", "checked", "hideIcon", "disabledInteractive"], outputs: ["change", "toggleChange"], exportAs: ["matSlideToggle"] }, { kind: "pipe", type: i1$1.TranslatePipe, name: "translate" }] });
|
|
6523
6523
|
}
|
|
6524
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.
|
|
6524
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.13", ngImport: i0, type: ValueInputBooleanComponent, decorators: [{
|
|
6525
6525
|
type: Component,
|
|
6526
6526
|
args: [{ selector: 'app-value-input-boolean', imports: [SharedModule, MatSlideToggle], providers: [
|
|
6527
6527
|
{
|
|
@@ -6539,13 +6539,13 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.0", ngImpor
|
|
|
6539
6539
|
|
|
6540
6540
|
class ValueInputColorComponent {
|
|
6541
6541
|
translate;
|
|
6542
|
-
name = input('', ...(ngDevMode ? [{ debugName: "name" }] : []));
|
|
6542
|
+
name = input('', ...(ngDevMode ? [{ debugName: "name" }] : /* istanbul ignore next */ []));
|
|
6543
6543
|
colorPicker = viewChild.required('colorPicker');
|
|
6544
6544
|
showPicker = false;
|
|
6545
6545
|
formControl = new FormControl('');
|
|
6546
6546
|
destroy$ = new Subject();
|
|
6547
|
-
validators = input(...(ngDevMode ? [undefined, { debugName: "validators" }] : []));
|
|
6548
|
-
showErrorInTooltip = input(false, ...(ngDevMode ? [{ debugName: "showErrorInTooltip" }] : []));
|
|
6547
|
+
validators = input(...(ngDevMode ? [undefined, { debugName: "validators" }] : /* istanbul ignore next */ []));
|
|
6548
|
+
showErrorInTooltip = input(false, ...(ngDevMode ? [{ debugName: "showErrorInTooltip" }] : /* istanbul ignore next */ []));
|
|
6549
6549
|
onTouched = () => {
|
|
6550
6550
|
};
|
|
6551
6551
|
onValidatorChange;
|
|
@@ -6615,8 +6615,8 @@ class ValueInputColorComponent {
|
|
|
6615
6615
|
this.destroy$.next();
|
|
6616
6616
|
this.destroy$.complete();
|
|
6617
6617
|
}
|
|
6618
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.
|
|
6619
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.
|
|
6618
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.13", ngImport: i0, type: ValueInputColorComponent, deps: [{ token: i1$1.TranslateService }], target: i0.ɵɵFactoryTarget.Component });
|
|
6619
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.13", type: ValueInputColorComponent, isStandalone: true, selector: "app-value-input-color", inputs: { name: { classPropertyName: "name", publicName: "name", isSignal: true, isRequired: false, transformFunction: null }, validators: { classPropertyName: "validators", publicName: "validators", isSignal: true, isRequired: false, transformFunction: null }, showErrorInTooltip: { classPropertyName: "showErrorInTooltip", publicName: "showErrorInTooltip", isSignal: true, isRequired: false, transformFunction: null } }, providers: [
|
|
6620
6620
|
{
|
|
6621
6621
|
provide: NG_VALUE_ACCESSOR,
|
|
6622
6622
|
useExisting: forwardRef(() => ValueInputColorComponent),
|
|
@@ -6629,7 +6629,7 @@ class ValueInputColorComponent {
|
|
|
6629
6629
|
}
|
|
6630
6630
|
], viewQueries: [{ propertyName: "colorPicker", first: true, predicate: ["colorPicker"], descendants: true, isSignal: true }], ngImport: i0, template: "<mat-form-field class=\"w-full relative\" [matTooltip]=\"getErrorTooltip()\" [matTooltipDisabled]=\"!showErrorInTooltip()\">\r\n <mat-label>{{ name() }}</mat-label>\r\n <input matInput type=\"text\" [formControl]=\"formControl\" (blur)=\"formControl.updateValueAndValidity({ emitEvent: false })\" (click)=\"openColorPicker()\">\r\n <input type=\"color\" #colorPicker [value]=\"formControl.value\" (input)=\"onColorPickerChange($event)\" class=\"absolute opacity-0 right-55 top-full mt-1 z-10\" [class.hidden]=\"!showPicker\">\r\n <div class=\"w-5 h-5 rounded-full mr-4 cursor-pointer\" [style.background-color]=\"formControl.getRawValue()\" matSuffix (click)=\"openColorPicker()\"> </div>\r\n\r\n @for (error of getErrors(); track error) {\r\n <mat-error *ngIf=\"!showErrorInTooltip()\">{{ 'COMMON.ERROR_VALIDATION_' + error | translate :{max: formControl.getError('maxlength')?.requiredLength} }}</mat-error>\r\n }\r\n</mat-form-field>\r\n", styles: ["mat-form-field input[type=color]{width:auto;height:auto}:host{--color-picker-width: 250px}\n"], dependencies: [{ kind: "ngmodule", type: SharedModule }, { kind: "component", type: i2.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i2.MatLabel, selector: "mat-label" }, { kind: "directive", type: i2.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "directive", type: i2.MatSuffix, selector: "[matSuffix], [matIconSuffix], [matTextSuffix]", inputs: ["matTextSuffix"] }, { kind: "directive", type: i3.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }, { kind: "directive", type: i4$2.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly", "disabledInteractive"], exportAs: ["matInput"] }, { kind: "directive", type: i5.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i5.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i5.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "directive", type: i6.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: i1$1.TranslatePipe, name: "translate" }] });
|
|
6631
6631
|
}
|
|
6632
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.
|
|
6632
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.13", ngImport: i0, type: ValueInputColorComponent, decorators: [{
|
|
6633
6633
|
type: Component,
|
|
6634
6634
|
args: [{ selector: 'app-value-input-color', imports: [SharedModule], providers: [
|
|
6635
6635
|
{
|
|
@@ -6648,8 +6648,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.0", ngImpor
|
|
|
6648
6648
|
class ValueInputDateComponent {
|
|
6649
6649
|
formControl = new FormControl(null);
|
|
6650
6650
|
destroy$ = new Subject();
|
|
6651
|
-
validators = input(...(ngDevMode ? [undefined, { debugName: "validators" }] : []));
|
|
6652
|
-
showErrorInTooltip = input(false, ...(ngDevMode ? [{ debugName: "showErrorInTooltip" }] : []));
|
|
6651
|
+
validators = input(...(ngDevMode ? [undefined, { debugName: "validators" }] : /* istanbul ignore next */ []));
|
|
6652
|
+
showErrorInTooltip = input(false, ...(ngDevMode ? [{ debugName: "showErrorInTooltip" }] : /* istanbul ignore next */ []));
|
|
6653
6653
|
onTouched = () => {
|
|
6654
6654
|
};
|
|
6655
6655
|
onValidatorChange;
|
|
@@ -6698,8 +6698,8 @@ class ValueInputDateComponent {
|
|
|
6698
6698
|
this.destroy$.next();
|
|
6699
6699
|
this.destroy$.complete();
|
|
6700
6700
|
}
|
|
6701
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.
|
|
6702
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "21.2.
|
|
6701
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.13", ngImport: i0, type: ValueInputDateComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
6702
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "21.2.13", type: ValueInputDateComponent, isStandalone: true, selector: "app-value-input-date", inputs: { validators: { classPropertyName: "validators", publicName: "validators", isSignal: true, isRequired: false, transformFunction: null }, showErrorInTooltip: { classPropertyName: "showErrorInTooltip", publicName: "showErrorInTooltip", isSignal: true, isRequired: false, transformFunction: null } }, providers: [
|
|
6703
6703
|
{
|
|
6704
6704
|
provide: NG_VALUE_ACCESSOR,
|
|
6705
6705
|
useExisting: forwardRef(() => ValueInputDateComponent),
|
|
@@ -6712,7 +6712,7 @@ class ValueInputDateComponent {
|
|
|
6712
6712
|
}
|
|
6713
6713
|
], ngImport: i0, template: "<app-date-time-form-field [formControl]=\"formControl\" [validators]=\"validators()\" [showErrorInTooltip]=\"showErrorInTooltip()\" class=\"w-full\"></app-date-time-form-field>\r\n", styles: [""], dependencies: [{ kind: "ngmodule", type: SharedModule }, { kind: "directive", type: i5.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i5.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: DateTimeFormFieldComponent, selector: "app-date-time-form-field", inputs: ["dateLabel", "timeLabel", "validators", "showErrorInTooltip", "timezone"] }] });
|
|
6714
6714
|
}
|
|
6715
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.
|
|
6715
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.13", ngImport: i0, type: ValueInputDateComponent, decorators: [{
|
|
6716
6716
|
type: Component,
|
|
6717
6717
|
args: [{ selector: 'app-value-input-date', imports: [SharedModule, DateTimeFormFieldComponent], providers: [
|
|
6718
6718
|
{
|
|
@@ -6735,10 +6735,10 @@ class ValueInputEnumComponent {
|
|
|
6735
6735
|
};
|
|
6736
6736
|
onValidatorChange;
|
|
6737
6737
|
destroy$ = new Subject();
|
|
6738
|
-
options = input([], ...(ngDevMode ? [{ debugName: "options" }] : []));
|
|
6739
|
-
name = input('', ...(ngDevMode ? [{ debugName: "name" }] : []));
|
|
6740
|
-
validators = input(...(ngDevMode ? [undefined, { debugName: "validators" }] : []));
|
|
6741
|
-
showErrorInTooltip = input(false, ...(ngDevMode ? [{ debugName: "showErrorInTooltip" }] : []));
|
|
6738
|
+
options = input([], ...(ngDevMode ? [{ debugName: "options" }] : /* istanbul ignore next */ []));
|
|
6739
|
+
name = input('', ...(ngDevMode ? [{ debugName: "name" }] : /* istanbul ignore next */ []));
|
|
6740
|
+
validators = input(...(ngDevMode ? [undefined, { debugName: "validators" }] : /* istanbul ignore next */ []));
|
|
6741
|
+
showErrorInTooltip = input(false, ...(ngDevMode ? [{ debugName: "showErrorInTooltip" }] : /* istanbul ignore next */ []));
|
|
6742
6742
|
constructor(translate) {
|
|
6743
6743
|
this.translate = translate;
|
|
6744
6744
|
effect(() => {
|
|
@@ -6788,8 +6788,8 @@ class ValueInputEnumComponent {
|
|
|
6788
6788
|
this.destroy$.next();
|
|
6789
6789
|
this.destroy$.complete();
|
|
6790
6790
|
}
|
|
6791
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.
|
|
6792
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.
|
|
6791
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.13", ngImport: i0, type: ValueInputEnumComponent, deps: [{ token: i1$1.TranslateService }], target: i0.ɵɵFactoryTarget.Component });
|
|
6792
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.13", type: ValueInputEnumComponent, isStandalone: true, selector: "app-value-input-enum", inputs: { options: { classPropertyName: "options", publicName: "options", isSignal: true, isRequired: false, transformFunction: null }, name: { classPropertyName: "name", publicName: "name", isSignal: true, isRequired: false, transformFunction: null }, validators: { classPropertyName: "validators", publicName: "validators", isSignal: true, isRequired: false, transformFunction: null }, showErrorInTooltip: { classPropertyName: "showErrorInTooltip", publicName: "showErrorInTooltip", isSignal: true, isRequired: false, transformFunction: null } }, providers: [
|
|
6793
6793
|
{
|
|
6794
6794
|
provide: NG_VALUE_ACCESSOR,
|
|
6795
6795
|
useExisting: forwardRef(() => ValueInputEnumComponent),
|
|
@@ -6802,7 +6802,7 @@ class ValueInputEnumComponent {
|
|
|
6802
6802
|
}
|
|
6803
6803
|
], ngImport: i0, template: "<div class=\"w-full flex flex-col gap-y-2\" [matTooltip]=\"getErrorTooltip()\" [matTooltipDisabled]=\"!showErrorInTooltip()\">\r\n <mat-form-field appearance=\"outline\" class=\"w-full\">\r\n <mat-label>{{ name() }}</mat-label>\r\n <mat-select [formControl]=\"formControl\" (blur)=\"formControl.updateValueAndValidity({ emitEvent: false })\">\r\n @for (value of options(); track value) {\r\n <mat-option [value]=\"value\">{{ value }}</mat-option>\r\n }\r\n </mat-select>\r\n\r\n @for (error of getErrors(); track error) {\r\n <mat-error *ngIf=\"!showErrorInTooltip()\">{{ 'COMMON.ERROR_VALIDATION_' + error | translate :{max: formControl.getError('maxlength')?.requiredLength} }}</mat-error>\r\n }\r\n </mat-form-field>\r\n</div>\r\n", styles: [""], dependencies: [{ kind: "ngmodule", type: SharedModule }, { kind: "component", type: i2.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i2.MatLabel, selector: "mat-label" }, { kind: "directive", type: i2.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "directive", type: i3.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }, { kind: "component", type: i4$1.MatSelect, selector: "mat-select", inputs: ["aria-describedby", "panelClass", "disabled", "disableRipple", "tabIndex", "hideSingleSelectionIndicator", "placeholder", "required", "multiple", "disableOptionCentering", "compareWith", "value", "aria-label", "aria-labelledby", "errorStateMatcher", "typeaheadDebounceInterval", "sortComparator", "id", "panelWidth", "canSelectNullableOptions"], outputs: ["openedChange", "opened", "closed", "selectionChange", "valueChange"], exportAs: ["matSelect"] }, { kind: "component", type: i4$1.MatOption, selector: "mat-option", inputs: ["value", "id", "disabled"], outputs: ["onSelectionChange"], exportAs: ["matOption"] }, { kind: "directive", type: i5.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i5.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "directive", type: i6.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: i1$1.TranslatePipe, name: "translate" }] });
|
|
6804
6804
|
}
|
|
6805
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.
|
|
6805
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.13", ngImport: i0, type: ValueInputEnumComponent, decorators: [{
|
|
6806
6806
|
type: Component,
|
|
6807
6807
|
args: [{ selector: 'app-value-input-enum', imports: [SharedModule], providers: [
|
|
6808
6808
|
{
|
|
@@ -6822,8 +6822,8 @@ class ValueInputHexadecimalComponent {
|
|
|
6822
6822
|
translate;
|
|
6823
6823
|
formControl = new FormControl('');
|
|
6824
6824
|
destroy$ = new Subject();
|
|
6825
|
-
validators = input(...(ngDevMode ? [undefined, { debugName: "validators" }] : []));
|
|
6826
|
-
showErrorInTooltip = input(false, ...(ngDevMode ? [{ debugName: "showErrorInTooltip" }] : []));
|
|
6825
|
+
validators = input(...(ngDevMode ? [undefined, { debugName: "validators" }] : /* istanbul ignore next */ []));
|
|
6826
|
+
showErrorInTooltip = input(false, ...(ngDevMode ? [{ debugName: "showErrorInTooltip" }] : /* istanbul ignore next */ []));
|
|
6827
6827
|
constructor(translate) {
|
|
6828
6828
|
this.translate = translate;
|
|
6829
6829
|
effect(() => {
|
|
@@ -6881,8 +6881,8 @@ class ValueInputHexadecimalComponent {
|
|
|
6881
6881
|
this.destroy$.next();
|
|
6882
6882
|
this.destroy$.complete();
|
|
6883
6883
|
}
|
|
6884
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.
|
|
6885
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.
|
|
6884
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.13", ngImport: i0, type: ValueInputHexadecimalComponent, deps: [{ token: i1$1.TranslateService }], target: i0.ɵɵFactoryTarget.Component });
|
|
6885
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.13", type: ValueInputHexadecimalComponent, isStandalone: true, selector: "app-value-input-hexadecimal", inputs: { validators: { classPropertyName: "validators", publicName: "validators", isSignal: true, isRequired: false, transformFunction: null }, showErrorInTooltip: { classPropertyName: "showErrorInTooltip", publicName: "showErrorInTooltip", isSignal: true, isRequired: false, transformFunction: null } }, providers: [
|
|
6886
6886
|
{
|
|
6887
6887
|
provide: NG_VALUE_ACCESSOR,
|
|
6888
6888
|
useExisting: forwardRef(() => ValueInputHexadecimalComponent),
|
|
@@ -6895,7 +6895,7 @@ class ValueInputHexadecimalComponent {
|
|
|
6895
6895
|
}
|
|
6896
6896
|
], ngImport: i0, template: "<mat-form-field class=\"w-full\" [matTooltip]=\"getErrorTooltip()\" [matTooltipDisabled]=\"!showErrorInTooltip()\">\r\n <mat-label>{{ 'DATA_BROWSER.ATTRIBUTE_VALUE' | translate }}</mat-label>\r\n <input matInput type=\"text\" [formControl]=\"formControl\" (blur)=\"formControl.updateValueAndValidity({ emitEvent: false })\" autocomplete=\"off\"/>\r\n\r\n @for (error of getErrors(); track error) {\r\n <mat-error *ngIf=\"!showErrorInTooltip()\">{{ 'COMMON.ERROR_VALIDATION_' + error | translate :{max: formControl.getError('maxlength')?.requiredLength} }}</mat-error>\r\n }\r\n</mat-form-field>\r\n", styles: [""], dependencies: [{ kind: "ngmodule", type: SharedModule }, { kind: "component", type: i2.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i2.MatLabel, selector: "mat-label" }, { kind: "directive", type: i2.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "directive", type: i3.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }, { kind: "directive", type: i4$2.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly", "disabledInteractive"], exportAs: ["matInput"] }, { kind: "directive", type: i5.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i5.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i5.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "directive", type: i6.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: i1$1.TranslatePipe, name: "translate" }] });
|
|
6897
6897
|
}
|
|
6898
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.
|
|
6898
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.13", ngImport: i0, type: ValueInputHexadecimalComponent, decorators: [{
|
|
6899
6899
|
type: Component,
|
|
6900
6900
|
args: [{ selector: 'app-value-input-hexadecimal', imports: [SharedModule], providers: [
|
|
6901
6901
|
{
|
|
@@ -6915,8 +6915,8 @@ class ValueInputLinkComponent {
|
|
|
6915
6915
|
translate;
|
|
6916
6916
|
formControl = new FormControl('');
|
|
6917
6917
|
destroy$ = new Subject();
|
|
6918
|
-
validators = input(...(ngDevMode ? [undefined, { debugName: "validators" }] : []));
|
|
6919
|
-
showErrorInTooltip = input(false, ...(ngDevMode ? [{ debugName: "showErrorInTooltip" }] : []));
|
|
6918
|
+
validators = input(...(ngDevMode ? [undefined, { debugName: "validators" }] : /* istanbul ignore next */ []));
|
|
6919
|
+
showErrorInTooltip = input(false, ...(ngDevMode ? [{ debugName: "showErrorInTooltip" }] : /* istanbul ignore next */ []));
|
|
6920
6920
|
onTouched = () => {
|
|
6921
6921
|
};
|
|
6922
6922
|
onValidatorChange;
|
|
@@ -6975,8 +6975,8 @@ class ValueInputLinkComponent {
|
|
|
6975
6975
|
this.destroy$.next();
|
|
6976
6976
|
this.destroy$.complete();
|
|
6977
6977
|
}
|
|
6978
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.
|
|
6979
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.
|
|
6978
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.13", ngImport: i0, type: ValueInputLinkComponent, deps: [{ token: i1$1.TranslateService }], target: i0.ɵɵFactoryTarget.Component });
|
|
6979
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.13", type: ValueInputLinkComponent, isStandalone: true, selector: "app-value-input-link", inputs: { validators: { classPropertyName: "validators", publicName: "validators", isSignal: true, isRequired: false, transformFunction: null }, showErrorInTooltip: { classPropertyName: "showErrorInTooltip", publicName: "showErrorInTooltip", isSignal: true, isRequired: false, transformFunction: null } }, providers: [
|
|
6980
6980
|
{
|
|
6981
6981
|
provide: NG_VALUE_ACCESSOR,
|
|
6982
6982
|
useExisting: forwardRef(() => ValueInputLinkComponent),
|
|
@@ -6989,7 +6989,7 @@ class ValueInputLinkComponent {
|
|
|
6989
6989
|
}
|
|
6990
6990
|
], ngImport: i0, template: "<mat-form-field class=\"w-full\" [matTooltip]=\"getErrorTooltip()\" [matTooltipDisabled]=\"!showErrorInTooltip()\">\r\n <mat-label>{{ 'DATA_BROWSER.ATTRIBUTE_VALUE' | translate }}</mat-label>\r\n <input matInput type=\"text\" [formControl]=\"formControl\" (blur)=\"formControl.updateValueAndValidity({ emitEvent: false })\" autocomplete=\"off\"/>\r\n\r\n @for (error of getErrors(); track error) {\r\n <mat-error *ngIf=\"!showErrorInTooltip()\">{{ 'COMMON.ERROR_VALIDATION_' + error | translate :{max: formControl.getError('maxlength')?.requiredLength} }}</mat-error>\r\n }\r\n</mat-form-field>\r\n", styles: [""], dependencies: [{ kind: "ngmodule", type: SharedModule }, { kind: "component", type: i2.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i2.MatLabel, selector: "mat-label" }, { kind: "directive", type: i2.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "directive", type: i3.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }, { kind: "directive", type: i4$2.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly", "disabledInteractive"], exportAs: ["matInput"] }, { kind: "directive", type: i5.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i5.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i5.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "directive", type: i6.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: i1$1.TranslatePipe, name: "translate" }] });
|
|
6991
6991
|
}
|
|
6992
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.
|
|
6992
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.13", ngImport: i0, type: ValueInputLinkComponent, decorators: [{
|
|
6993
6993
|
type: Component,
|
|
6994
6994
|
args: [{ selector: 'app-value-input-link', imports: [SharedModule], providers: [
|
|
6995
6995
|
{
|
|
@@ -7012,8 +7012,8 @@ class ValueInputLocationComponent {
|
|
|
7012
7012
|
latitude: new FormControl(null),
|
|
7013
7013
|
longitude: new FormControl(null)
|
|
7014
7014
|
});
|
|
7015
|
-
validators = input(...(ngDevMode ? [undefined, { debugName: "validators" }] : []));
|
|
7016
|
-
showErrorInTooltip = input(false, ...(ngDevMode ? [{ debugName: "showErrorInTooltip" }] : []));
|
|
7015
|
+
validators = input(...(ngDevMode ? [undefined, { debugName: "validators" }] : /* istanbul ignore next */ []));
|
|
7016
|
+
showErrorInTooltip = input(false, ...(ngDevMode ? [{ debugName: "showErrorInTooltip" }] : /* istanbul ignore next */ []));
|
|
7017
7017
|
onTouched = () => {
|
|
7018
7018
|
};
|
|
7019
7019
|
onValidatorChange;
|
|
@@ -7085,8 +7085,8 @@ class ValueInputLocationComponent {
|
|
|
7085
7085
|
this.destroy$.next();
|
|
7086
7086
|
this.destroy$.complete();
|
|
7087
7087
|
}
|
|
7088
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.
|
|
7089
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.
|
|
7088
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.13", ngImport: i0, type: ValueInputLocationComponent, deps: [{ token: i1$1.TranslateService }], target: i0.ɵɵFactoryTarget.Component });
|
|
7089
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.13", type: ValueInputLocationComponent, isStandalone: true, selector: "app-value-input-location", inputs: { validators: { classPropertyName: "validators", publicName: "validators", isSignal: true, isRequired: false, transformFunction: null }, showErrorInTooltip: { classPropertyName: "showErrorInTooltip", publicName: "showErrorInTooltip", isSignal: true, isRequired: false, transformFunction: null } }, providers: [
|
|
7090
7090
|
{
|
|
7091
7091
|
provide: NG_VALUE_ACCESSOR,
|
|
7092
7092
|
useExisting: forwardRef(() => ValueInputLocationComponent),
|
|
@@ -7099,7 +7099,7 @@ class ValueInputLocationComponent {
|
|
|
7099
7099
|
}
|
|
7100
7100
|
], ngImport: i0, template: "<form [formGroup]=\"formGroup\">\r\n <div class=\"flex flex-col gap-y-1\">\r\n <div class=\"flex gap-4 w-full justify-between items-start\">\r\n <mat-form-field class=\"flex-1\" [matTooltip]=\"getErrorTooltip('latitude')\" [matTooltipDisabled]=\"!showErrorInTooltip()\">\r\n <mat-label>{{ 'DATA_BROWSER.ATTRIBUTE_LATITUDE' | translate }}</mat-label>\r\n <input matInput (paste)=\"handleLocationPaste($event, 'latitude')\" (blur)=\"this.formGroup.get('latitude')?.updateValueAndValidity({ emitEvent: false })\" formControlName=\"latitude\" type=\"number\" autocomplete=\"off\">\r\n\r\n @for (error of getErrors('latitude'); track error) {\r\n <mat-error *ngIf=\"!showErrorInTooltip()\">{{ 'COMMON.ERROR_VALIDATION_' + error | translate: {max: 90, min: -90} }}</mat-error>\r\n }\r\n </mat-form-field>\r\n\r\n <mat-form-field class=\"flex-1\" [matTooltip]=\"getErrorTooltip('longitude')\" [matTooltipDisabled]=\"!showErrorInTooltip()\">\r\n <mat-label>{{ 'DATA_BROWSER.ATTRIBUTE_LONGITUDE' | translate }}</mat-label>\r\n <input matInput (paste)=\"handleLocationPaste($event, 'longitude')\" (blur)=\"this.formGroup.get('longitude')?.updateValueAndValidity({ emitEvent: false })\" formControlName=\"longitude\" type=\"number\" autocomplete=\"off\">\r\n\r\n @for (error of getErrors('longitude'); track error) {\r\n <mat-error *ngIf=\"!showErrorInTooltip()\">{{ 'COMMON.ERROR_VALIDATION_' + error | translate: {max: 180, min: -180} }}</mat-error>\r\n }\r\n </mat-form-field>\r\n </div>\r\n </div>\r\n</form>\r\n", styles: [""], dependencies: [{ kind: "ngmodule", type: SharedModule }, { kind: "component", type: i2.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i2.MatLabel, selector: "mat-label" }, { kind: "directive", type: i2.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "directive", type: i3.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }, { kind: "directive", type: i4$2.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly", "disabledInteractive"], exportAs: ["matInput"] }, { kind: "directive", type: i5.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i5.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i5.NumberValueAccessor, selector: "input[type=number][formControlName],input[type=number][formControl],input[type=number][ngModel]" }, { kind: "directive", type: i5.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i5.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],[formArray],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i5.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i5.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "directive", type: i6.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: i1$1.TranslatePipe, name: "translate" }] });
|
|
7101
7101
|
}
|
|
7102
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.
|
|
7102
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.13", ngImport: i0, type: ValueInputLocationComponent, decorators: [{
|
|
7103
7103
|
type: Component,
|
|
7104
7104
|
args: [{ selector: 'app-value-input-location', imports: [SharedModule], providers: [
|
|
7105
7105
|
{
|
|
@@ -7119,9 +7119,9 @@ class ValueInputNumericComponent {
|
|
|
7119
7119
|
translate;
|
|
7120
7120
|
formControl = new FormControl(null);
|
|
7121
7121
|
destroy$ = new Subject();
|
|
7122
|
-
name = input('', ...(ngDevMode ? [{ debugName: "name" }] : []));
|
|
7123
|
-
validators = input(...(ngDevMode ? [undefined, { debugName: "validators" }] : []));
|
|
7124
|
-
showErrorInTooltip = input(false, ...(ngDevMode ? [{ debugName: "showErrorInTooltip" }] : []));
|
|
7122
|
+
name = input('', ...(ngDevMode ? [{ debugName: "name" }] : /* istanbul ignore next */ []));
|
|
7123
|
+
validators = input(...(ngDevMode ? [undefined, { debugName: "validators" }] : /* istanbul ignore next */ []));
|
|
7124
|
+
showErrorInTooltip = input(false, ...(ngDevMode ? [{ debugName: "showErrorInTooltip" }] : /* istanbul ignore next */ []));
|
|
7125
7125
|
onTouched = () => {
|
|
7126
7126
|
};
|
|
7127
7127
|
onValidatorChange;
|
|
@@ -7182,8 +7182,8 @@ class ValueInputNumericComponent {
|
|
|
7182
7182
|
this.destroy$.next();
|
|
7183
7183
|
this.destroy$.complete();
|
|
7184
7184
|
}
|
|
7185
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.
|
|
7186
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.
|
|
7185
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.13", ngImport: i0, type: ValueInputNumericComponent, deps: [{ token: i1$1.TranslateService }], target: i0.ɵɵFactoryTarget.Component });
|
|
7186
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.13", type: ValueInputNumericComponent, isStandalone: true, selector: "app-value-input-numeric", inputs: { name: { classPropertyName: "name", publicName: "name", isSignal: true, isRequired: false, transformFunction: null }, validators: { classPropertyName: "validators", publicName: "validators", isSignal: true, isRequired: false, transformFunction: null }, showErrorInTooltip: { classPropertyName: "showErrorInTooltip", publicName: "showErrorInTooltip", isSignal: true, isRequired: false, transformFunction: null } }, providers: [
|
|
7187
7187
|
{
|
|
7188
7188
|
provide: NG_VALUE_ACCESSOR,
|
|
7189
7189
|
useExisting: forwardRef(() => ValueInputNumericComponent),
|
|
@@ -7196,7 +7196,7 @@ class ValueInputNumericComponent {
|
|
|
7196
7196
|
}
|
|
7197
7197
|
], ngImport: i0, template: "<mat-form-field class=\"w-full\" [matTooltip]=\"getErrorTooltip()\" [matTooltipDisabled]=\"!showErrorInTooltip()\">\r\n <mat-label>{{ name() }}</mat-label>\r\n <input matInput type=\"text\" [formControl]=\"formControl\" (blur)=\"formControl.updateValueAndValidity({ emitEvent: false })\" autocomplete=\"off\" wolkaboutLocalizedNumericInput/>\r\n\r\n @for (error of getErrors(); track error) {\r\n <mat-error *ngIf=\"!showErrorInTooltip()\">{{ 'COMMON.ERROR_VALIDATION_' + error | translate :{max: formControl.getError('maxlength')?.requiredLength} }}</mat-error>\r\n }\r\n</mat-form-field>\r\n", styles: [""], dependencies: [{ kind: "ngmodule", type: SharedModule }, { kind: "component", type: i2.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i2.MatLabel, selector: "mat-label" }, { kind: "directive", type: i2.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "directive", type: i3.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }, { kind: "directive", type: i4$2.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly", "disabledInteractive"], exportAs: ["matInput"] }, { kind: "directive", type: i5.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i5.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i5.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "directive", type: i6.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: LocalizedNumericInputDirective, selector: "input[wolkaboutLocalizedNumericInput]" }, { kind: "pipe", type: i1$1.TranslatePipe, name: "translate" }] });
|
|
7198
7198
|
}
|
|
7199
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.
|
|
7199
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.13", ngImport: i0, type: ValueInputNumericComponent, decorators: [{
|
|
7200
7200
|
type: Component,
|
|
7201
7201
|
args: [{ selector: 'app-value-input-numeric', imports: [SharedModule, LocalizedNumericInputDirective], providers: [
|
|
7202
7202
|
{
|
|
@@ -7214,11 +7214,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.0", ngImpor
|
|
|
7214
7214
|
|
|
7215
7215
|
class ValueInputStringComponent {
|
|
7216
7216
|
translate;
|
|
7217
|
-
name = input('', ...(ngDevMode ? [{ debugName: "name" }] : []));
|
|
7217
|
+
name = input('', ...(ngDevMode ? [{ debugName: "name" }] : /* istanbul ignore next */ []));
|
|
7218
7218
|
formControl = new FormControl('');
|
|
7219
7219
|
destroy$ = new Subject();
|
|
7220
|
-
validators = input(...(ngDevMode ? [undefined, { debugName: "validators" }] : []));
|
|
7221
|
-
showErrorInTooltip = input(false, ...(ngDevMode ? [{ debugName: "showErrorInTooltip" }] : []));
|
|
7220
|
+
validators = input(...(ngDevMode ? [undefined, { debugName: "validators" }] : /* istanbul ignore next */ []));
|
|
7221
|
+
showErrorInTooltip = input(false, ...(ngDevMode ? [{ debugName: "showErrorInTooltip" }] : /* istanbul ignore next */ []));
|
|
7222
7222
|
onTouched = () => {
|
|
7223
7223
|
};
|
|
7224
7224
|
onValidatorChange;
|
|
@@ -7271,8 +7271,8 @@ class ValueInputStringComponent {
|
|
|
7271
7271
|
this.destroy$.next();
|
|
7272
7272
|
this.destroy$.complete();
|
|
7273
7273
|
}
|
|
7274
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.
|
|
7275
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.
|
|
7274
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.13", ngImport: i0, type: ValueInputStringComponent, deps: [{ token: i1$1.TranslateService }], target: i0.ɵɵFactoryTarget.Component });
|
|
7275
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.13", type: ValueInputStringComponent, isStandalone: true, selector: "app-value-input-string", inputs: { name: { classPropertyName: "name", publicName: "name", isSignal: true, isRequired: false, transformFunction: null }, validators: { classPropertyName: "validators", publicName: "validators", isSignal: true, isRequired: false, transformFunction: null }, showErrorInTooltip: { classPropertyName: "showErrorInTooltip", publicName: "showErrorInTooltip", isSignal: true, isRequired: false, transformFunction: null } }, providers: [
|
|
7276
7276
|
{
|
|
7277
7277
|
provide: NG_VALUE_ACCESSOR,
|
|
7278
7278
|
useExisting: forwardRef(() => ValueInputStringComponent),
|
|
@@ -7285,7 +7285,7 @@ class ValueInputStringComponent {
|
|
|
7285
7285
|
}
|
|
7286
7286
|
], ngImport: i0, template: "<mat-form-field class=\"w-full\" [matTooltip]=\"getErrorTooltip()\" [matTooltipDisabled]=\"!showErrorInTooltip()\">\r\n <mat-label>{{ name() }}</mat-label>\r\n <input matInput [type]=\"'text'\" [formControl]=\"formControl\" (blur)=\"formControl.updateValueAndValidity({ emitEvent: false })\" autocomplete=\"off\"/>\r\n @for (error of getErrors(); track error) {\r\n <mat-error *ngIf=\"!showErrorInTooltip()\">{{ 'COMMON.ERROR_VALIDATION_' + error | translate : {max: formControl.getError('maxlength')?.requiredLength} }}</mat-error>\r\n }\r\n</mat-form-field>\r\n", styles: [""], dependencies: [{ kind: "ngmodule", type: SharedModule }, { kind: "component", type: i2.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i2.MatLabel, selector: "mat-label" }, { kind: "directive", type: i2.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "directive", type: i3.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }, { kind: "directive", type: i4$2.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly", "disabledInteractive"], exportAs: ["matInput"] }, { kind: "directive", type: i5.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i5.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i5.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "directive", type: i6.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: i1$1.TranslatePipe, name: "translate" }] });
|
|
7287
7287
|
}
|
|
7288
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.
|
|
7288
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.13", ngImport: i0, type: ValueInputStringComponent, decorators: [{
|
|
7289
7289
|
type: Component,
|
|
7290
7290
|
args: [{ selector: 'app-value-input-string', imports: [SharedModule], providers: [
|
|
7291
7291
|
{
|
|
@@ -7305,10 +7305,10 @@ class ValueInputVectorComponent {
|
|
|
7305
7305
|
translate;
|
|
7306
7306
|
formControl = new FormControl('');
|
|
7307
7307
|
destroy$ = new Subject();
|
|
7308
|
-
options = input([], ...(ngDevMode ? [{ debugName: "options" }] : []));
|
|
7309
|
-
name = input('', ...(ngDevMode ? [{ debugName: "name" }] : []));
|
|
7310
|
-
showErrorInTooltip = input(false, ...(ngDevMode ? [{ debugName: "showErrorInTooltip" }] : []));
|
|
7311
|
-
validators = input(...(ngDevMode ? [undefined, { debugName: "validators" }] : []));
|
|
7308
|
+
options = input([], ...(ngDevMode ? [{ debugName: "options" }] : /* istanbul ignore next */ []));
|
|
7309
|
+
name = input('', ...(ngDevMode ? [{ debugName: "name" }] : /* istanbul ignore next */ []));
|
|
7310
|
+
showErrorInTooltip = input(false, ...(ngDevMode ? [{ debugName: "showErrorInTooltip" }] : /* istanbul ignore next */ []));
|
|
7311
|
+
validators = input(...(ngDevMode ? [undefined, { debugName: "validators" }] : /* istanbul ignore next */ []));
|
|
7312
7312
|
onTouched = () => {
|
|
7313
7313
|
};
|
|
7314
7314
|
onValidatorChange;
|
|
@@ -7380,8 +7380,8 @@ class ValueInputVectorComponent {
|
|
|
7380
7380
|
this.destroy$.next();
|
|
7381
7381
|
this.destroy$.complete();
|
|
7382
7382
|
}
|
|
7383
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.
|
|
7384
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.
|
|
7383
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.13", ngImport: i0, type: ValueInputVectorComponent, deps: [{ token: i1$1.TranslateService }], target: i0.ɵɵFactoryTarget.Component });
|
|
7384
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.13", type: ValueInputVectorComponent, isStandalone: true, selector: "app-value-input-vector", inputs: { options: { classPropertyName: "options", publicName: "options", isSignal: true, isRequired: false, transformFunction: null }, name: { classPropertyName: "name", publicName: "name", isSignal: true, isRequired: false, transformFunction: null }, showErrorInTooltip: { classPropertyName: "showErrorInTooltip", publicName: "showErrorInTooltip", isSignal: true, isRequired: false, transformFunction: null }, validators: { classPropertyName: "validators", publicName: "validators", isSignal: true, isRequired: false, transformFunction: null } }, providers: [
|
|
7385
7385
|
{
|
|
7386
7386
|
provide: NG_VALUE_ACCESSOR,
|
|
7387
7387
|
useExisting: forwardRef(() => ValueInputVectorComponent),
|
|
@@ -7394,7 +7394,7 @@ class ValueInputVectorComponent {
|
|
|
7394
7394
|
}
|
|
7395
7395
|
], ngImport: i0, template: "<div class=\"w-full flex flex-col gap-y-2\">\r\n <mat-form-field class=\"w-full\" [matTooltip]=\"getErrorTooltip()\" [matTooltipDisabled]=\"!showErrorInTooltip()\">\r\n <mat-label>{{ name() }} ({{ options()?.join(',') }})</mat-label>\r\n <input matInput [formControl]=\"formControl\" (blur)=\"formControl.updateValueAndValidity({ emitEvent: false })\" class=\"w-full\">\r\n\r\n @for (error of getErrors(); track error) {\r\n <mat-error *ngIf=\"!showErrorInTooltip()\">{{ 'COMMON.ERROR_VALIDATION_' + error | translate :{max: formControl.getError('maxlength')?.requiredLength} }}</mat-error>\r\n }\r\n </mat-form-field>\r\n</div>\r\n", styles: [""], dependencies: [{ kind: "ngmodule", type: SharedModule }, { kind: "component", type: i2.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i2.MatLabel, selector: "mat-label" }, { kind: "directive", type: i2.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "directive", type: i3.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }, { kind: "directive", type: i4$2.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly", "disabledInteractive"], exportAs: ["matInput"] }, { kind: "directive", type: i5.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i5.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i5.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "directive", type: i6.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: i1$1.TranslatePipe, name: "translate" }] });
|
|
7396
7396
|
}
|
|
7397
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.
|
|
7397
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.13", ngImport: i0, type: ValueInputVectorComponent, decorators: [{
|
|
7398
7398
|
type: Component,
|
|
7399
7399
|
args: [{ selector: 'app-value-input-vector', imports: [SharedModule], providers: [
|
|
7400
7400
|
{
|
|
@@ -7413,10 +7413,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.0", ngImpor
|
|
|
7413
7413
|
class ValueInputDurationComponent {
|
|
7414
7414
|
destroyRef;
|
|
7415
7415
|
translate;
|
|
7416
|
-
name = input('', ...(ngDevMode ? [{ debugName: "name" }] : []));
|
|
7416
|
+
name = input('', ...(ngDevMode ? [{ debugName: "name" }] : /* istanbul ignore next */ []));
|
|
7417
7417
|
formControl = new FormControl('');
|
|
7418
|
-
validators = input(...(ngDevMode ? [undefined, { debugName: "validators" }] : []));
|
|
7419
|
-
showErrorInTooltip = input(false, ...(ngDevMode ? [{ debugName: "showErrorInTooltip" }] : []));
|
|
7418
|
+
validators = input(...(ngDevMode ? [undefined, { debugName: "validators" }] : /* istanbul ignore next */ []));
|
|
7419
|
+
showErrorInTooltip = input(false, ...(ngDevMode ? [{ debugName: "showErrorInTooltip" }] : /* istanbul ignore next */ []));
|
|
7420
7420
|
durationValidator = (control) => {
|
|
7421
7421
|
const value = control.value;
|
|
7422
7422
|
if (value == null || value.trim() === '') {
|
|
@@ -7496,8 +7496,8 @@ class ValueInputDurationComponent {
|
|
|
7496
7496
|
})
|
|
7497
7497
|
.reduce((a, b) => a + b, 0);
|
|
7498
7498
|
}
|
|
7499
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.
|
|
7500
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.
|
|
7499
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.13", ngImport: i0, type: ValueInputDurationComponent, deps: [{ token: i0.DestroyRef }, { token: i1$1.TranslateService }], target: i0.ɵɵFactoryTarget.Component });
|
|
7500
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.13", type: ValueInputDurationComponent, isStandalone: true, selector: "app-value-input-duration", inputs: { name: { classPropertyName: "name", publicName: "name", isSignal: true, isRequired: false, transformFunction: null }, validators: { classPropertyName: "validators", publicName: "validators", isSignal: true, isRequired: false, transformFunction: null }, showErrorInTooltip: { classPropertyName: "showErrorInTooltip", publicName: "showErrorInTooltip", isSignal: true, isRequired: false, transformFunction: null } }, providers: [
|
|
7501
7501
|
{
|
|
7502
7502
|
provide: NG_VALUE_ACCESSOR,
|
|
7503
7503
|
useExisting: forwardRef(() => ValueInputDurationComponent),
|
|
@@ -7510,7 +7510,7 @@ class ValueInputDurationComponent {
|
|
|
7510
7510
|
}
|
|
7511
7511
|
], ngImport: i0, template: "<mat-form-field class=\"w-full\" [matTooltip]=\"getErrorTooltip()\" [matTooltipDisabled]=\"!showErrorInTooltip()\">\r\n <mat-label>{{ name() }}</mat-label>\r\n <input matInput [type]=\"'text'\" [formControl]=\"formControl\" (blur)=\"formControl.updateValueAndValidity({ emitEvent: false })\" autocomplete=\"off\"/>\r\n\r\n @for (error of getErrors(); track error) {\r\n <mat-error *ngIf=\"!showErrorInTooltip()\">{{ 'COMMON.ERROR_VALIDATION_' + error | translate :{max: formControl.getError('maxlength')?.requiredLength} }}</mat-error>\r\n }\r\n</mat-form-field>\r\n", styles: [""], dependencies: [{ kind: "ngmodule", type: SharedModule }, { kind: "component", type: i2.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i2.MatLabel, selector: "mat-label" }, { kind: "directive", type: i2.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "directive", type: i3.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }, { kind: "directive", type: i4$2.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly", "disabledInteractive"], exportAs: ["matInput"] }, { kind: "directive", type: i5.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i5.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i5.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "directive", type: i6.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: i1$1.TranslatePipe, name: "translate" }] });
|
|
7512
7512
|
}
|
|
7513
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.
|
|
7513
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.13", ngImport: i0, type: ValueInputDurationComponent, decorators: [{
|
|
7514
7514
|
type: Component,
|
|
7515
7515
|
args: [{ selector: 'app-value-input-duration', imports: [SharedModule], providers: [
|
|
7516
7516
|
{
|
|
@@ -7527,12 +7527,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.0", ngImpor
|
|
|
7527
7527
|
}], ctorParameters: () => [{ type: i0.DestroyRef }, { type: i1$1.TranslateService }], propDecorators: { name: [{ type: i0.Input, args: [{ isSignal: true, alias: "name", required: false }] }], validators: [{ type: i0.Input, args: [{ isSignal: true, alias: "validators", required: false }] }], showErrorInTooltip: [{ type: i0.Input, args: [{ isSignal: true, alias: "showErrorInTooltip", required: false }] }] } });
|
|
7528
7528
|
|
|
7529
7529
|
class ValueInputComponent {
|
|
7530
|
-
name = input.required(...(ngDevMode ? [{ debugName: "name" }] : []));
|
|
7531
|
-
dataType = input.required(...(ngDevMode ? [{ debugName: "dataType" }] : []));
|
|
7532
|
-
options = input(...(ngDevMode ? [undefined, { debugName: "options" }] : []));
|
|
7533
|
-
validationConditions = input(...(ngDevMode ? [undefined, { debugName: "validationConditions" }] : []));
|
|
7534
|
-
showErrorInTooltip = input(false, ...(ngDevMode ? [{ debugName: "showErrorInTooltip" }] : []));
|
|
7535
|
-
validators = signal([], ...(ngDevMode ? [{ debugName: "validators" }] : []));
|
|
7530
|
+
name = input.required(...(ngDevMode ? [{ debugName: "name" }] : /* istanbul ignore next */ []));
|
|
7531
|
+
dataType = input.required(...(ngDevMode ? [{ debugName: "dataType" }] : /* istanbul ignore next */ []));
|
|
7532
|
+
options = input(...(ngDevMode ? [undefined, { debugName: "options" }] : /* istanbul ignore next */ []));
|
|
7533
|
+
validationConditions = input(...(ngDevMode ? [undefined, { debugName: "validationConditions" }] : /* istanbul ignore next */ []));
|
|
7534
|
+
showErrorInTooltip = input(false, ...(ngDevMode ? [{ debugName: "showErrorInTooltip" }] : /* istanbul ignore next */ []));
|
|
7535
|
+
validators = signal([], ...(ngDevMode ? [{ debugName: "validators" }] : /* istanbul ignore next */ []));
|
|
7536
7536
|
formControl = new FormControl(null);
|
|
7537
7537
|
onValidatorChange;
|
|
7538
7538
|
constructor() {
|
|
@@ -7592,8 +7592,8 @@ class ValueInputComponent {
|
|
|
7592
7592
|
this.validators.set(validators);
|
|
7593
7593
|
}
|
|
7594
7594
|
DataType = DataType;
|
|
7595
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.
|
|
7596
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.
|
|
7595
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.13", ngImport: i0, type: ValueInputComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
7596
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.13", type: ValueInputComponent, isStandalone: true, selector: "app-value-input", inputs: { name: { classPropertyName: "name", publicName: "name", isSignal: true, isRequired: true, transformFunction: null }, dataType: { classPropertyName: "dataType", publicName: "dataType", isSignal: true, isRequired: true, transformFunction: null }, options: { classPropertyName: "options", publicName: "options", isSignal: true, isRequired: false, transformFunction: null }, validationConditions: { classPropertyName: "validationConditions", publicName: "validationConditions", isSignal: true, isRequired: false, transformFunction: null }, showErrorInTooltip: { classPropertyName: "showErrorInTooltip", publicName: "showErrorInTooltip", isSignal: true, isRequired: false, transformFunction: null } }, providers: [
|
|
7597
7597
|
{
|
|
7598
7598
|
provide: NG_VALUE_ACCESSOR,
|
|
7599
7599
|
useExisting: forwardRef(() => ValueInputComponent),
|
|
@@ -7606,7 +7606,7 @@ class ValueInputComponent {
|
|
|
7606
7606
|
}
|
|
7607
7607
|
], ngImport: i0, template: "@switch (dataType()) {\r\n @case (DataType.STRING) {\r\n <app-value-input-string [showErrorInTooltip]=\"showErrorInTooltip()\" [name]=\"name()\" [validators]=\"validators()\" [formControl]=\"formControl\"/>\r\n }\r\n @case (DataType.NUMERIC) {\r\n <app-value-input-numeric [showErrorInTooltip]=\"showErrorInTooltip()\" [name]=\"name()\" [validators]=\"validators()\" [formControl]=\"formControl\"/>\r\n }\r\n @case (DataType.BOOLEAN) {\r\n <app-value-input-boolean [showErrorInTooltip]=\"showErrorInTooltip()\" [name]=\"name()\" [validators]=\"validators()\" [formControl]=\"formControl\"/>\r\n }\r\n @case (DataType.HEXADECIMAL) {\r\n <app-value-input-hexadecimal [showErrorInTooltip]=\"showErrorInTooltip()\" [validators]=\"validators()\" [formControl]=\"formControl\"/>\r\n }\r\n @case (DataType.COLOR) {\r\n <app-value-input-color [showErrorInTooltip]=\"showErrorInTooltip()\" [name]=\"name()\" [validators]=\"validators()\" [formControl]=\"formControl\"/>\r\n }\r\n @case (DataType.LINK) {\r\n <app-value-input-link [showErrorInTooltip]=\"showErrorInTooltip()\" [validators]=\"validators()\" [formControl]=\"formControl\"/>\r\n }\r\n @case (DataType.DATE) {\r\n <app-value-input-date [showErrorInTooltip]=\"showErrorInTooltip()\" [validators]=\"validators()\" [formControl]=\"formControl\"/>\r\n }\r\n @case (DataType.DURATION) {\r\n <app-value-input-duration [showErrorInTooltip]=\"showErrorInTooltip()\" [name]=\"name()\" [validators]=\"validators()\" [formControl]=\"formControl\"/>\r\n }\r\n @case (DataType.LOCATION) {\r\n <app-value-input-location [showErrorInTooltip]=\"showErrorInTooltip()\" [validators]=\"validators()\" [formControl]=\"formControl\"/>\r\n }\r\n @case (DataType.VECTOR) {\r\n <app-value-input-vector [showErrorInTooltip]=\"showErrorInTooltip()\" [name]=\"name()\" [validators]=\"validators()\" [formControl]=\"formControl\" [options]=\"options()\"/>\r\n }\r\n @case (DataType.ENUM) {\r\n <app-value-input-enum [showErrorInTooltip]=\"showErrorInTooltip()\" [name]=\"name()\" [validators]=\"validators()\" [formControl]=\"formControl\" [options]=\"options()\"/>\r\n }\r\n}\r\n", styles: [""], dependencies: [{ kind: "ngmodule", type: SharedModule }, { kind: "directive", type: i5.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i5.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: ValueInputBooleanComponent, selector: "app-value-input-boolean", inputs: ["name", "validators", "showErrorInTooltip"] }, { kind: "component", type: ValueInputColorComponent, selector: "app-value-input-color", inputs: ["name", "validators", "showErrorInTooltip"] }, { kind: "component", type: ValueInputDateComponent, selector: "app-value-input-date", inputs: ["validators", "showErrorInTooltip"] }, { kind: "component", type: ValueInputEnumComponent, selector: "app-value-input-enum", inputs: ["options", "name", "validators", "showErrorInTooltip"] }, { kind: "component", type: ValueInputHexadecimalComponent, selector: "app-value-input-hexadecimal", inputs: ["validators", "showErrorInTooltip"] }, { kind: "component", type: ValueInputLinkComponent, selector: "app-value-input-link", inputs: ["validators", "showErrorInTooltip"] }, { kind: "component", type: ValueInputLocationComponent, selector: "app-value-input-location", inputs: ["validators", "showErrorInTooltip"] }, { kind: "component", type: ValueInputNumericComponent, selector: "app-value-input-numeric", inputs: ["name", "validators", "showErrorInTooltip"] }, { kind: "component", type: ValueInputStringComponent, selector: "app-value-input-string", inputs: ["name", "validators", "showErrorInTooltip"] }, { kind: "component", type: ValueInputVectorComponent, selector: "app-value-input-vector", inputs: ["options", "name", "showErrorInTooltip", "validators"] }, { kind: "component", type: ValueInputDurationComponent, selector: "app-value-input-duration", inputs: ["name", "validators", "showErrorInTooltip"] }] });
|
|
7608
7608
|
}
|
|
7609
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.
|
|
7609
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.13", ngImport: i0, type: ValueInputComponent, decorators: [{
|
|
7610
7610
|
type: Component,
|
|
7611
7611
|
args: [{ selector: 'app-value-input', imports: [SharedModule, ValueInputBooleanComponent, ValueInputColorComponent, ValueInputDateComponent, ValueInputEnumComponent, ValueInputHexadecimalComponent, ValueInputLinkComponent, ValueInputLocationComponent, ValueInputNumericComponent, ValueInputStringComponent, ValueInputVectorComponent, ValueInputDurationComponent], providers: [
|
|
7612
7612
|
{
|
|
@@ -7645,17 +7645,17 @@ class DoubleDrawerLayoutComponent {
|
|
|
7645
7645
|
}
|
|
7646
7646
|
}
|
|
7647
7647
|
timeout;
|
|
7648
|
-
hoverActive = signal(false, ...(ngDevMode ? [{ debugName: "hoverActive" }] : []));
|
|
7649
|
-
leftDrawerConfig = input.required(...(ngDevMode ? [{ debugName: "leftDrawerConfig" }] : []));
|
|
7650
|
-
rightDrawerConfig = input(...(ngDevMode ? [undefined, { debugName: "rightDrawerConfig" }] : []));
|
|
7651
|
-
backdropConfig = input.required(...(ngDevMode ? [{ debugName: "backdropConfig" }] : []));
|
|
7652
|
-
dialogConfig = input(...(ngDevMode ? [undefined, { debugName: "dialogConfig" }] : []));
|
|
7653
|
-
fullScreenConfig = input(...(ngDevMode ? [undefined, { debugName: "fullScreenConfig" }] : []));
|
|
7648
|
+
hoverActive = signal(false, ...(ngDevMode ? [{ debugName: "hoverActive" }] : /* istanbul ignore next */ []));
|
|
7649
|
+
leftDrawerConfig = input.required(...(ngDevMode ? [{ debugName: "leftDrawerConfig" }] : /* istanbul ignore next */ []));
|
|
7650
|
+
rightDrawerConfig = input(...(ngDevMode ? [undefined, { debugName: "rightDrawerConfig" }] : /* istanbul ignore next */ []));
|
|
7651
|
+
backdropConfig = input.required(...(ngDevMode ? [{ debugName: "backdropConfig" }] : /* istanbul ignore next */ []));
|
|
7652
|
+
dialogConfig = input(...(ngDevMode ? [undefined, { debugName: "dialogConfig" }] : /* istanbul ignore next */ []));
|
|
7653
|
+
fullScreenConfig = input(...(ngDevMode ? [undefined, { debugName: "fullScreenConfig" }] : /* istanbul ignore next */ []));
|
|
7654
7654
|
leftDrawerToggled = output();
|
|
7655
7655
|
rightDrawerToggled = output();
|
|
7656
|
-
isLeftDrawerOpen = signal(false, ...(ngDevMode ? [{ debugName: "isLeftDrawerOpen" }] : []));
|
|
7657
|
-
isRightDrawerOpen = signal(false, ...(ngDevMode ? [{ debugName: "isRightDrawerOpen" }] : []));
|
|
7658
|
-
showFullscreenButton = signal(false, ...(ngDevMode ? [{ debugName: "showFullscreenButton" }] : []));
|
|
7656
|
+
isLeftDrawerOpen = signal(false, ...(ngDevMode ? [{ debugName: "isLeftDrawerOpen" }] : /* istanbul ignore next */ []));
|
|
7657
|
+
isRightDrawerOpen = signal(false, ...(ngDevMode ? [{ debugName: "isRightDrawerOpen" }] : /* istanbul ignore next */ []));
|
|
7658
|
+
showFullscreenButton = signal(false, ...(ngDevMode ? [{ debugName: "showFullscreenButton" }] : /* istanbul ignore next */ []));
|
|
7659
7659
|
fullScreenEnabled = toSignal(this.fullscreenService.fullScreenEnabled$);
|
|
7660
7660
|
constructor() {
|
|
7661
7661
|
effect(() => {
|
|
@@ -7711,10 +7711,10 @@ class DoubleDrawerLayoutComponent {
|
|
|
7711
7711
|
onClose();
|
|
7712
7712
|
}
|
|
7713
7713
|
}
|
|
7714
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.
|
|
7715
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.
|
|
7714
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.13", ngImport: i0, type: DoubleDrawerLayoutComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
7715
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.13", type: DoubleDrawerLayoutComponent, isStandalone: true, selector: "app-double-drawer-layout", inputs: { leftDrawerConfig: { classPropertyName: "leftDrawerConfig", publicName: "leftDrawerConfig", isSignal: true, isRequired: true, transformFunction: null }, rightDrawerConfig: { classPropertyName: "rightDrawerConfig", publicName: "rightDrawerConfig", isSignal: true, isRequired: false, transformFunction: null }, backdropConfig: { classPropertyName: "backdropConfig", publicName: "backdropConfig", isSignal: true, isRequired: true, transformFunction: null }, dialogConfig: { classPropertyName: "dialogConfig", publicName: "dialogConfig", isSignal: true, isRequired: false, transformFunction: null }, fullScreenConfig: { classPropertyName: "fullScreenConfig", publicName: "fullScreenConfig", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { leftDrawerToggled: "leftDrawerToggled", rightDrawerToggled: "rightDrawerToggled" }, host: { listeners: { "window:mousemove": "onMouseMove()", "window:keydown": "onKeyDown($event)" } }, ngImport: i0, template: "<div class=\"w-full h-full relative\">\r\n <div class=\"absolute h-full drawer\" [ngClass]=\"{open : isLeftDrawerOpen()}\" [ngStyle]=\"{'width': isLeftDrawerOpen() ? leftDrawerConfig().width : '0px'}\">\r\n <button mat-flat-button class=\"drawer-toggle\"\r\n (click)=\"isLeftDrawerOpen.set(!isLeftDrawerOpen())\"\r\n [ngClass]=\"{\r\n 'destructive-flat-button': isLeftDrawerOpen(),\r\n 'drawer-toggle-name': leftDrawerConfig().title && !isLeftDrawerOpen()\r\n }\"\r\n [matTooltip]=\"isLeftDrawerOpen() ?\r\n ('COMMON.COLLAPSE_NAVIGATION' | translate) :\r\n leftDrawerConfig().title ?\r\n leftDrawerConfig().title :\r\n ('COMMON.EXPAND_NAVIGATION' | translate)\"\r\n matTooltipPosition=\"right\">\r\n @if (leftDrawerConfig().title && !isLeftDrawerOpen()) {\r\n <span>{{ leftDrawerConfig().title }}</span>\r\n } @else {\r\n <span class=\"block\"><mat-icon [ngClass]=\"{'toggle-icon-small': !isLeftDrawerOpen()}\" [svgIcon]=\"isLeftDrawerOpen() ? 'close' : 'arrow_right'\"></mat-icon></span>\r\n }\r\n </button>\r\n <div class=\"h-full w-full\" [ngClass]=\"{'overflow-hidden': !isLeftDrawerOpen()}\">\r\n <ng-content select=\"[left-drawer]\"></ng-content>\r\n </div>\r\n </div>\r\n <div class=\"h-full w-full content-wrapper\" [ngClass]=\"{'open': (isLeftDrawerOpen() || isRightDrawerOpen()) && backdropConfig().show}\">\r\n <div class=\"message-wrapper\" [ngClass]=\"{'show': backdropConfig().showMessage}\">\r\n <span>{{ backdropConfig().message | translate }}</span>\r\n </div>\r\n <div class=\"content-backdrop\" [ngClass]=\"{'transparent': backdropConfig().showTransparentBackdrop}\" (click)=\"backdropClick()\">\r\n </div>\r\n <div class=\"flex flex-col flex-auto gap-4 h-full w-full overflow-hidden relative\">\r\n @if (showFullscreenButton()) {\r\n <button mat-icon-button type=\"button\" class=\"absolute top-2 right-3 !z-10\" [ngClass]=\"!isLeftDrawerOpen() && !isRightDrawerOpen() ? '!block' : '!hidden' \" (mouseover)=\"mouseOver()\" (mouseout)=\"hoverActive.set(false)\"\r\n [matTooltip]=\"fullScreenEnabled() ? ('COMMON.EXIT_FULLSCREEN' | translate) : ('COMMON.ENTER_FULLSCREEN' | translate)\" (click)=\"fullscreenService.toggleFullScreen(); hoverActive.set(false)\" matTooltipPosition=\"left\">\r\n @if (fullScreenEnabled()) {\r\n <mat-icon>fullscreen_exit</mat-icon>\r\n } @else {\r\n <mat-icon>fullscreen</mat-icon>\r\n }\r\n </button>\r\n }\r\n <ng-content select=\"[details]\"></ng-content>\r\n </div>\r\n </div>\r\n <div class=\"absolute h-full drawer right\" [ngClass]=\"{open : isRightDrawerOpen()}\" [ngStyle]=\"{'width': isRightDrawerOpen() ? rightDrawerConfig()?.width : '0px'}\">\r\n <button mat-flat-button class=\"drawer-toggle\"\r\n (click)=\"toggleRightDrawer()\"\r\n [ngClass]=\"{'destructive-flat-button': isRightDrawerOpen()}\"\r\n [matTooltip]=\"isRightDrawerOpen() ? ('COMMON.COLLAPSE_NAVIGATION' | translate) : ('COMMON.EXPAND_NAVIGATION' | translate)\"\r\n matTooltipPosition=\"right\">\r\n <span class=\"block\"><mat-icon [svgIcon]=\"isRightDrawerOpen() ? 'close' : 'arrow_left'\"></mat-icon></span>\r\n </button>\r\n <div class=\"h-full w-full\" [ngClass]=\"{'overflow-hidden': !isRightDrawerOpen()}\">\r\n <ng-content select=\"[right-drawer]\"></ng-content>\r\n </div>\r\n </div>\r\n</div>\r\n", styles: [":host{display:flex;height:100%;width:100%;max-height:100%;max-width:100%;box-sizing:border-box}.drawer{z-index:10;width:0;max-width:calc(100% - 40px);transition:all .3s cubic-bezier(.4,0,.2,1) 0s;position:relative;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.drawer:after{content:\"\";display:block;width:100%;height:100%;opacity:.6;position:absolute;inset:0;background-color:var(--mat-sys-surface-container);z-index:-1}.drawer .drawer-toggle{position:absolute;bottom:16px;right:0;word-break:keep-all;white-space:nowrap;min-width:fit-content!important;width:fit-content!important;transform:translate(100%);border-radius:0 5px 5px 0!important;padding:0 10px}.drawer .drawer-toggle.drawer-toggle-name{max-width:300px!important;min-width:unset!important;overflow:hidden}.drawer .drawer-toggle.drawer-toggle-name span{display:block;max-width:280px;overflow:hidden;text-overflow:ellipsis}.drawer .drawer-toggle .toggle-icon-small{margin:0 6px;height:10px;width:10px}.drawer.right{right:0;top:0}.drawer.right .drawer-toggle{display:none;position:absolute;bottom:16px;left:0;transform:translate(-100%);border-radius:5px 0 0 5px!important}.drawer.right .drawer-toggle span{line-height:12px}.drawer.right .drawer-toggle span mat-icon{height:24px;width:24px}.drawer.open{border-right:1px solid var(--mat-sys-outline-variant)}.drawer.open.right .drawer-toggle{display:block}.drawer.open.right{border-right:unset;border-left:1px solid var(--mat-sys-outline-variant)}.drawer.open .drawer-toggle span{line-height:12px}.drawer.open .drawer-toggle span mat-icon{height:24px;width:24px}:host-context(.alt-theme) .drawer.after{background-color:var(--mat-sys-surface-container-lowest)}.content-wrapper{position:relative}.content-wrapper .content-backdrop{transition:all .3s cubic-bezier(.4,0,.2,1) 0s;width:100%;height:100%;position:absolute;top:0;left:0;opacity:0;z-index:-1;background-color:transparent}.content-wrapper .message-wrapper{transition:all .5s cubic-bezier(.4,0,.2,1) 0s;position:absolute;right:32px;top:24px;display:flex;flex-direction:column;justify-content:center;align-items:center;border-radius:10px;padding:0 1rem;height:2.5rem;box-sizing:border-box;background-color:var(--mat-sys-primary);color:var(--mat-sys-surface-container);opacity:0;z-index:-1}.content-wrapper .message-wrapper.show{opacity:1;z-index:4}.content-wrapper.open .content-backdrop{background-color:#000;opacity:.5;z-index:3}.content-wrapper.open .content-backdrop.transparent{background-color:transparent}\n"], dependencies: [{ kind: "ngmodule", type: SharedModule }, { kind: "component", type: i1$4.MatButton, selector: " button[matButton], a[matButton], button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button], a[mat-button], a[mat-raised-button], a[mat-flat-button], a[mat-stroked-button] ", inputs: ["matButton"], exportAs: ["matButton", "matAnchor"] }, { kind: "component", type: i1$4.MatIconButton, selector: "button[mat-icon-button], a[mat-icon-button], button[matIconButton], a[matIconButton]", exportAs: ["matButton", "matAnchor"] }, { kind: "directive", type: i3.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }, { kind: "component", type: i4.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: i6.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i6.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "pipe", type: i1$1.TranslatePipe, name: "translate" }] });
|
|
7716
7716
|
}
|
|
7717
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.
|
|
7717
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.13", ngImport: i0, type: DoubleDrawerLayoutComponent, decorators: [{
|
|
7718
7718
|
type: Component,
|
|
7719
7719
|
args: [{ selector: 'app-double-drawer-layout', imports: [
|
|
7720
7720
|
SharedModule
|
|
@@ -7727,11 +7727,44 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.0", ngImpor
|
|
|
7727
7727
|
args: ['window:keydown', ['$event']]
|
|
7728
7728
|
}], leftDrawerConfig: [{ type: i0.Input, args: [{ isSignal: true, alias: "leftDrawerConfig", required: true }] }], rightDrawerConfig: [{ type: i0.Input, args: [{ isSignal: true, alias: "rightDrawerConfig", required: false }] }], backdropConfig: [{ type: i0.Input, args: [{ isSignal: true, alias: "backdropConfig", required: true }] }], dialogConfig: [{ type: i0.Input, args: [{ isSignal: true, alias: "dialogConfig", required: false }] }], fullScreenConfig: [{ type: i0.Input, args: [{ isSignal: true, alias: "fullScreenConfig", required: false }] }], leftDrawerToggled: [{ type: i0.Output, args: ["leftDrawerToggled"] }], rightDrawerToggled: [{ type: i0.Output, args: ["rightDrawerToggled"] }] } });
|
|
7729
7729
|
|
|
7730
|
+
class BulkConfirmationDialogComponent {
|
|
7731
|
+
data;
|
|
7732
|
+
dialog;
|
|
7733
|
+
isDeleteMode = signal(true, ...(ngDevMode ? [{ debugName: "isDeleteMode" }] : /* istanbul ignore next */ []));
|
|
7734
|
+
action = signal('COMMON.DELETE_SELECTED', ...(ngDevMode ? [{ debugName: "action" }] : /* istanbul ignore next */ []));
|
|
7735
|
+
title = signal('COMMON.DELETE_SELECTED_TITLE', ...(ngDevMode ? [{ debugName: "title" }] : /* istanbul ignore next */ []));
|
|
7736
|
+
constructor(data, dialog) {
|
|
7737
|
+
this.data = data;
|
|
7738
|
+
this.dialog = dialog;
|
|
7739
|
+
if (data.isDeleteMode !== undefined) {
|
|
7740
|
+
this.isDeleteMode.set(data.isDeleteMode);
|
|
7741
|
+
}
|
|
7742
|
+
if (data.title) {
|
|
7743
|
+
this.title.set(data.title);
|
|
7744
|
+
}
|
|
7745
|
+
if (data.action) {
|
|
7746
|
+
this.action.set(data.action);
|
|
7747
|
+
}
|
|
7748
|
+
}
|
|
7749
|
+
confirm() {
|
|
7750
|
+
this.dialog.close(true);
|
|
7751
|
+
}
|
|
7752
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.13", ngImport: i0, type: BulkConfirmationDialogComponent, deps: [{ token: MAT_DIALOG_DATA }, { token: i1$5.MatDialogRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
7753
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.13", type: BulkConfirmationDialogComponent, isStandalone: true, selector: "app-delete-confirmation-dialog", ngImport: i0, template: "<div class=\"flex flex-col flex-auto gap-y-8 p-4 content\">\r\n <div class=\"text-lg\">{{ title() | translate: {entity: data.entity} }}</div>\r\n <div class=\"flex flex-col flex-auto gap-y-4\">\r\n <div class=\"flex flex-col flex-auto gap-y-4 max-h-96 overflow-hidden\">\r\n <div class=\"flex flex-col flex-auto gap-y-2\">\r\n <div>{{ 'COMMON.SELECTED_ITEMS' | translate: {entity: data.entity} }}</div>\r\n <mat-divider></mat-divider>\r\n </div>\r\n <div class=\"flex flex-col flex-auto gap-y-2 overflow-auto\">\r\n @for (item of data.items; track $index) {\r\n <div>{{ item }}</div>\r\n }\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"flex flex-row flex-auto gap-x-2 justify-end\">\r\n <button mat-button mat-dialog-close>{{ 'COMMON.CANCEL' | translate }}</button>\r\n <button [ngClass]=\" isDeleteMode() ? 'destructive-flat-button' : ''\" mat-flat-button\r\n (click)=\"confirm()\">{{ this.action() | translate: {count: data.items.length, entity: data.entity} }}\r\n </button>\r\n </div>\r\n</div>\r\n", styles: [".content{width:var(--medium-dialog-width)}\n"], dependencies: [{ kind: "ngmodule", type: SharedModule }, { kind: "component", type: i1$4.MatButton, selector: " button[matButton], a[matButton], button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button], a[mat-button], a[mat-raised-button], a[mat-flat-button], a[mat-stroked-button] ", inputs: ["matButton"], exportAs: ["matButton", "matAnchor"] }, { kind: "directive", type: i1$5.MatDialogClose, selector: "[mat-dialog-close], [matDialogClose]", inputs: ["aria-label", "type", "mat-dialog-close", "matDialogClose"], exportAs: ["matDialogClose"] }, { kind: "component", type: i1$7.MatDivider, selector: "mat-divider", inputs: ["vertical", "inset"] }, { kind: "directive", type: i6.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "pipe", type: i1$1.TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
7754
|
+
}
|
|
7755
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.13", ngImport: i0, type: BulkConfirmationDialogComponent, decorators: [{
|
|
7756
|
+
type: Component,
|
|
7757
|
+
args: [{ selector: 'app-delete-confirmation-dialog', imports: [SharedModule], changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"flex flex-col flex-auto gap-y-8 p-4 content\">\r\n <div class=\"text-lg\">{{ title() | translate: {entity: data.entity} }}</div>\r\n <div class=\"flex flex-col flex-auto gap-y-4\">\r\n <div class=\"flex flex-col flex-auto gap-y-4 max-h-96 overflow-hidden\">\r\n <div class=\"flex flex-col flex-auto gap-y-2\">\r\n <div>{{ 'COMMON.SELECTED_ITEMS' | translate: {entity: data.entity} }}</div>\r\n <mat-divider></mat-divider>\r\n </div>\r\n <div class=\"flex flex-col flex-auto gap-y-2 overflow-auto\">\r\n @for (item of data.items; track $index) {\r\n <div>{{ item }}</div>\r\n }\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"flex flex-row flex-auto gap-x-2 justify-end\">\r\n <button mat-button mat-dialog-close>{{ 'COMMON.CANCEL' | translate }}</button>\r\n <button [ngClass]=\" isDeleteMode() ? 'destructive-flat-button' : ''\" mat-flat-button\r\n (click)=\"confirm()\">{{ this.action() | translate: {count: data.items.length, entity: data.entity} }}\r\n </button>\r\n </div>\r\n</div>\r\n", styles: [".content{width:var(--medium-dialog-width)}\n"] }]
|
|
7758
|
+
}], ctorParameters: () => [{ type: undefined, decorators: [{
|
|
7759
|
+
type: Inject,
|
|
7760
|
+
args: [MAT_DIALOG_DATA]
|
|
7761
|
+
}] }, { type: i1$5.MatDialogRef }] });
|
|
7762
|
+
|
|
7730
7763
|
// Config
|
|
7731
7764
|
|
|
7732
7765
|
/**
|
|
7733
7766
|
* Generated bundle index. Do not edit.
|
|
7734
7767
|
*/
|
|
7735
7768
|
|
|
7736
|
-
export { AUTHENTICATION_CLIENT, AssetManager, AuthenticationService, AutocompleteChipsComponent, AutocompleteComponent, BasicTimeSeriesGraphComponent, COLORS, CUSTOM_PERIOD, CardLabeledValueComponent, ConfirmationDialogComponent, DEFAULT_LOCALE, DEFAULT_TIMEZONES, DEFAULT_TIME_ZONE, DataType, DateRangeInputComponent, DateTimeFormFieldComponent, DoubleDrawerLayoutComponent, DragDropFileUploadComponent, DurationPipe, FeatureRegistry, FullscreenService, GoogleMapComponent, IconComponent, IconRegistryService, ImageDisplayComponent, ImagePreviewComponent, LAST_ACTIVE_TAB_KEY, LOCALES, LabeledValueComponent, LoadedIconComponent, LoadingIndicatorDirective, LocalSortTableComponent, Locale, LocalizedNumberPipe, LocalizedNumericInputDirective, MILLISECONDS_IN_DAY, MapsLoaderService, MasterDetailsViewComponent, MessageTooltipDirective, MissingTranslationHelper, NavigationPersistenceService, NestedListDataControl, NestedListDataSource, NestedListViewComponent, NotificationService, OverflowClassDirective, PdfViewerComponent, PeriodErrorStateMatcher, PermissionsService, RELATIVE_TIME_PERIODS, RelativeTimePeriod, RequiresAllGlobalOrAssetPermissionsDirective, RequiresAllPermissionDirective, RequiresGlobalOrAsserPermissionDirective, RequiresPermissionDirective, ScrollIntoViewDirective, SharedModule, SimpleDatePipe, SimpleDateTimePipe, SimpleTimePipe, SortPipe, StandardListDataControl, StandardListDataSource, StandardListViewComponent, TIMEZONES, TabulatedChipViewComponent, TabulatedViewComponent, TenantPropertiesService, ThemeService, TreeComponent, TreeNodeComponent, USERS_TIME_ZONE, ValueDisplayComponent, ValueInputBooleanComponent, ValueInputColorComponent, ValueInputComponent, ValueInputDateComponent, ValueInputDurationComponent, ValueInputEnumComponent, ValueInputHexadecimalComponent, ValueInputLinkComponent, ValueInputLocationComponent, ValueInputNumericComponent, ValueInputStringComponent, ValueInputVectorComponent, ZoomControlsComponent, arrayToObject, chartThemeDark, chartThemeLight, daysAway, determineMagnitude, determineMinMaxValues, endOfPeriod, equalsByValue, externalUrlFormatValidator, fileOrExternalUrlRequired, fileSizeValidator, flatMap, flatten, format, formatDuration, generateRandomString, getDecimalPlaces, globalPermissionGuard, groupBy, hoursAway, isContextAccessible, lookUpPathPart, lookUpQueryParam, parseDateRangeInputPeriod, parseTimeInput, saveFile, scale, startOfMonth, startOfPeriod, startOfTheDay, startOfWeek, startOfYear, tenantHostUrlValidator, toDate, toEndOfMonth, toEndOfYear, toJsDate, toOffset, toStartOfMonth, toStartOfTheDay, toStartOfWeek, toStartOfYear, toTime, uniqueBy, uniqueFrom, validateAssetName, validateTypeAssetName };
|
|
7769
|
+
export { AUTHENTICATION_CLIENT, AssetManager, AuthenticationService, AutocompleteChipsComponent, AutocompleteComponent, BasicTimeSeriesGraphComponent, BulkConfirmationDialogComponent, COLORS, CUSTOM_PERIOD, CardLabeledValueComponent, ConfirmationDialogComponent, DEFAULT_LOCALE, DEFAULT_TIMEZONES, DEFAULT_TIME_ZONE, DataType, DateRangeInputComponent, DateTimeFormFieldComponent, DoubleDrawerLayoutComponent, DragDropFileUploadComponent, DurationPipe, FeatureRegistry, FullscreenService, GoogleMapComponent, IconComponent, IconRegistryService, ImageDisplayComponent, ImagePreviewComponent, LAST_ACTIVE_TAB_KEY, LOCALES, LabeledValueComponent, LoadedIconComponent, LoadingIndicatorDirective, LocalSortTableComponent, Locale, LocalizedNumberPipe, LocalizedNumericInputDirective, MILLISECONDS_IN_DAY, MapsLoaderService, MasterDetailsViewComponent, MessageTooltipDirective, MissingTranslationHelper, NavigationPersistenceService, NestedListDataControl, NestedListDataSource, NestedListViewComponent, NotificationService, OverflowClassDirective, PdfViewerComponent, PeriodErrorStateMatcher, PermissionsService, RELATIVE_TIME_PERIODS, RelativeTimePeriod, RequiresAllGlobalOrAssetPermissionsDirective, RequiresAllPermissionDirective, RequiresGlobalOrAsserPermissionDirective, RequiresPermissionDirective, ScrollIntoViewDirective, SharedModule, SimpleDatePipe, SimpleDateTimePipe, SimpleTimePipe, SortPipe, StandardListDataControl, StandardListDataSource, StandardListViewComponent, TIMEZONES, TabulatedChipViewComponent, TabulatedViewComponent, TenantPropertiesService, ThemeService, TreeComponent, TreeNodeComponent, USERS_TIME_ZONE, ValueDisplayComponent, ValueInputBooleanComponent, ValueInputColorComponent, ValueInputComponent, ValueInputDateComponent, ValueInputDurationComponent, ValueInputEnumComponent, ValueInputHexadecimalComponent, ValueInputLinkComponent, ValueInputLocationComponent, ValueInputNumericComponent, ValueInputStringComponent, ValueInputVectorComponent, ZoomControlsComponent, arrayToObject, chartThemeDark, chartThemeLight, daysAway, determineMagnitude, determineMinMaxValues, endOfPeriod, equalsByValue, externalUrlFormatValidator, fileOrExternalUrlRequired, fileSizeValidator, flatMap, flatten, format, formatDuration, generateRandomString, getDecimalPlaces, globalPermissionGuard, groupBy, hoursAway, isContextAccessible, lookUpPathPart, lookUpQueryParam, parseDateRangeInputPeriod, parseTimeInput, saveFile, scale, startOfMonth, startOfPeriod, startOfTheDay, startOfWeek, startOfYear, tenantHostUrlValidator, toDate, toEndOfMonth, toEndOfYear, toJsDate, toOffset, toStartOfMonth, toStartOfTheDay, toStartOfWeek, toStartOfYear, toTime, uniqueBy, uniqueFrom, validateAssetName, validateTypeAssetName };
|
|
7737
7770
|
//# sourceMappingURL=wolkabout-commons.mjs.map
|