@kolektor/nucleus-material 0.1.2192 → 0.1.2369
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.
|
@@ -21,10 +21,10 @@ class NucDialogComponent {
|
|
|
21
21
|
this.dialogRef = dialogRef;
|
|
22
22
|
this.dialogData = dialogData;
|
|
23
23
|
}
|
|
24
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
25
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "
|
|
24
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.2", ngImport: i0, type: NucDialogComponent, deps: [{ token: i1.MatDialogRef }, { token: MAT_DIALOG_DATA }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
25
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.1.2", type: NucDialogComponent, isStandalone: false, selector: "nuc-dialog", ngImport: i0, template: "@if (dialogData) {\n @if (dialogData.title) {\n <h2 mat-dialog-title>\n {{ dialogData.title }}\n </h2>\n }\n <mat-dialog-content>{{ dialogData.message }}</mat-dialog-content>\n <mat-dialog-actions>\n @for (action of dialogData.actions; track action) {\n @if (action.value === undefined) {\n <button\n color=\"{{ action.color || 'primary' }}\"\n mat-button\n mat-dialog-close\n >\n {{ action.text }}\n </button>\n }\n @if (action.value !== undefined) {\n <button\n color=\"{{ action.color || 'primary' }}\"\n mat-button\n [mat-dialog-close]=\"action.value\"\n >\n {{ action.text }}\n </button>\n }\n }\n </mat-dialog-actions>\n}\n", styles: ["mat-dialog-actions{justify-content:flex-end}mat-dialog-content{white-space:pre-wrap}button{text-transform:uppercase;font-weight:700}\n"], dependencies: [{ kind: "directive", type: i1.MatDialogClose, selector: "[mat-dialog-close], [matDialogClose]", inputs: ["aria-label", "type", "mat-dialog-close", "matDialogClose"], exportAs: ["matDialogClose"] }, { kind: "directive", type: i1.MatDialogTitle, selector: "[mat-dialog-title], [matDialogTitle]", inputs: ["id"], exportAs: ["matDialogTitle"] }, { kind: "directive", type: i1.MatDialogActions, selector: "[mat-dialog-actions], mat-dialog-actions, [matDialogActions]", inputs: ["align"] }, { kind: "directive", type: i1.MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }, { kind: "component", type: i3.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"] }] }); }
|
|
26
26
|
}
|
|
27
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
27
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.2", ngImport: i0, type: NucDialogComponent, decorators: [{
|
|
28
28
|
type: Component,
|
|
29
29
|
args: [{ selector: 'nuc-dialog', standalone: false, template: "@if (dialogData) {\n @if (dialogData.title) {\n <h2 mat-dialog-title>\n {{ dialogData.title }}\n </h2>\n }\n <mat-dialog-content>{{ dialogData.message }}</mat-dialog-content>\n <mat-dialog-actions>\n @for (action of dialogData.actions; track action) {\n @if (action.value === undefined) {\n <button\n color=\"{{ action.color || 'primary' }}\"\n mat-button\n mat-dialog-close\n >\n {{ action.text }}\n </button>\n }\n @if (action.value !== undefined) {\n <button\n color=\"{{ action.color || 'primary' }}\"\n mat-button\n [mat-dialog-close]=\"action.value\"\n >\n {{ action.text }}\n </button>\n }\n }\n </mat-dialog-actions>\n}\n", styles: ["mat-dialog-actions{justify-content:flex-end}mat-dialog-content{white-space:pre-wrap}button{text-transform:uppercase;font-weight:700}\n"] }]
|
|
30
30
|
}], ctorParameters: () => [{ type: i1.MatDialogRef }, { type: undefined, decorators: [{
|
|
@@ -62,10 +62,10 @@ class NucDialogService {
|
|
|
62
62
|
console.error('Nucleus.AppCore: NucDialogData requires at least one action.');
|
|
63
63
|
}
|
|
64
64
|
}
|
|
65
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
66
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
65
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.2", ngImport: i0, type: NucDialogService, deps: [{ token: i1.MatDialog }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
66
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.1.2", ngImport: i0, type: NucDialogService, providedIn: 'root' }); }
|
|
67
67
|
}
|
|
68
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
68
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.2", ngImport: i0, type: NucDialogService, decorators: [{
|
|
69
69
|
type: Injectable,
|
|
70
70
|
args: [{
|
|
71
71
|
providedIn: 'root',
|
|
@@ -73,11 +73,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.13", ngImpo
|
|
|
73
73
|
}], ctorParameters: () => [{ type: i1.MatDialog }] });
|
|
74
74
|
|
|
75
75
|
class NucDialogModule {
|
|
76
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
77
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "
|
|
78
|
-
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "
|
|
76
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.2", ngImport: i0, type: NucDialogModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
77
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.1.2", ngImport: i0, type: NucDialogModule, declarations: [NucDialogComponent], imports: [CommonModule, MatDialogModule, MatButtonModule] }); }
|
|
78
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.1.2", ngImport: i0, type: NucDialogModule, imports: [CommonModule, MatDialogModule, MatButtonModule] }); }
|
|
79
79
|
}
|
|
80
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
80
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.2", ngImport: i0, type: NucDialogModule, decorators: [{
|
|
81
81
|
type: NgModule,
|
|
82
82
|
args: [{
|
|
83
83
|
declarations: [NucDialogComponent],
|
|
@@ -242,10 +242,10 @@ class NucLoadedContentComponent {
|
|
|
242
242
|
showErrorDetails() {
|
|
243
243
|
this._errorDetailsVisible = true;
|
|
244
244
|
}
|
|
245
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
246
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "
|
|
245
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.2", ngImport: i0, type: NucLoadedContentComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
246
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.1.2", type: NucLoadedContentComponent, isStandalone: false, selector: "nuc-loaded-content-component", inputs: { completedTemplate: "completedTemplate", errorTemplate: "errorTemplate", inProgressTemplate: "inProgressTemplate", state: "state", inProgressMessage: "inProgressMessage", errorMessage: "errorMessage", showRetry: "showRetry" }, ngImport: i0, template: "@if (completed) {\n <ng-container *ngTemplateOutlet=\"completedTemplate\"></ng-container>\n}\n\n@if (inProgress || failed) {\n <div class=\"indicators-container\">\n @if (inProgress) {\n <ng-container\n *ngTemplateOutlet=\"inProgressTemplate ? inProgressTemplate : defaultInProgressTemplate\"\n ></ng-container>\n }\n @if (failed) {\n <ng-container\n *ngTemplateOutlet=\"errorTemplate ? errorTemplate: defaultErrorTemplate\"\n ></ng-container>\n }\n </div>\n}\n\n<ng-template #defaultInProgressTemplate>\n <div class=\"spinner\">\n <mat-spinner [diameter]=\"45\"></mat-spinner>\n </div>\n @if (message) {\n <p>{{message}}</p>\n }\n</ng-template>\n\n<ng-template #defaultErrorTemplate>\n <div>\n <p class=\"message\">\n <span>{{message}}</span>\n @if (state.errorDetails && !errorDetailsVisible) {\n <mat-icon\n class=\"info-button\"\n color=\"warn\"\n (click)=\"showErrorDetails()\"\n >info</mat-icon\n >\n }\n </p>\n\n @if (errorDetailsVisible) {\n <p class=\"error-details mat-small\">\n {{state.errorDetails}}\n </p>\n }\n\n @if (showRetryButton) {\n <p>\n <button mat-mini-fab color=\"primary\" (click)=\"state.retry()\">\n <mat-icon>refresh</mat-icon>\n </button>\n </p>\n }\n </div>\n </ng-template>\n", styles: [".indicators-container{text-align:center;margin:0 auto;padding-top:4rem}.error-details{margin-top:1rem}.spinner{display:flex;justify-content:center;align-items:center;margin-bottom:.5rem}.message{display:flex;justify-content:center;align-items:center}.info-button{cursor:pointer;margin-left:.5rem}\n"], dependencies: [{ kind: "directive", type: i1$1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i2.MatProgressSpinner, selector: "mat-progress-spinner, mat-spinner", inputs: ["color", "mode", "value", "diameter", "strokeWidth"], exportAs: ["matProgressSpinner"] }, { kind: "component", type: i3.MatMiniFabButton, selector: "button[mat-mini-fab], a[mat-mini-fab], button[matMiniFab], a[matMiniFab]", exportAs: ["matButton", "matAnchor"] }, { kind: "component", type: i4.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }] }); }
|
|
247
247
|
}
|
|
248
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
248
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.2", ngImport: i0, type: NucLoadedContentComponent, decorators: [{
|
|
249
249
|
type: Component,
|
|
250
250
|
args: [{ selector: 'nuc-loaded-content-component', standalone: false, template: "@if (completed) {\n <ng-container *ngTemplateOutlet=\"completedTemplate\"></ng-container>\n}\n\n@if (inProgress || failed) {\n <div class=\"indicators-container\">\n @if (inProgress) {\n <ng-container\n *ngTemplateOutlet=\"inProgressTemplate ? inProgressTemplate : defaultInProgressTemplate\"\n ></ng-container>\n }\n @if (failed) {\n <ng-container\n *ngTemplateOutlet=\"errorTemplate ? errorTemplate: defaultErrorTemplate\"\n ></ng-container>\n }\n </div>\n}\n\n<ng-template #defaultInProgressTemplate>\n <div class=\"spinner\">\n <mat-spinner [diameter]=\"45\"></mat-spinner>\n </div>\n @if (message) {\n <p>{{message}}</p>\n }\n</ng-template>\n\n<ng-template #defaultErrorTemplate>\n <div>\n <p class=\"message\">\n <span>{{message}}</span>\n @if (state.errorDetails && !errorDetailsVisible) {\n <mat-icon\n class=\"info-button\"\n color=\"warn\"\n (click)=\"showErrorDetails()\"\n >info</mat-icon\n >\n }\n </p>\n\n @if (errorDetailsVisible) {\n <p class=\"error-details mat-small\">\n {{state.errorDetails}}\n </p>\n }\n\n @if (showRetryButton) {\n <p>\n <button mat-mini-fab color=\"primary\" (click)=\"state.retry()\">\n <mat-icon>refresh</mat-icon>\n </button>\n </p>\n }\n </div>\n </ng-template>\n", styles: [".indicators-container{text-align:center;margin:0 auto;padding-top:4rem}.error-details{margin-top:1rem}.spinner{display:flex;justify-content:center;align-items:center;margin-bottom:.5rem}.message{display:flex;justify-content:center;align-items:center}.info-button{cursor:pointer;margin-left:.5rem}\n"] }]
|
|
251
251
|
}], propDecorators: { completedTemplate: [{
|
|
@@ -314,10 +314,10 @@ class NucLoadedContentDirective {
|
|
|
314
314
|
this._component.instance.errorTemplate = this._errorTemplateRef;
|
|
315
315
|
}
|
|
316
316
|
}
|
|
317
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
318
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "
|
|
317
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.2", ngImport: i0, type: NucLoadedContentDirective, deps: [{ token: i0.ViewContainerRef }, { token: i0.TemplateRef }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
318
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.1.2", type: NucLoadedContentDirective, isStandalone: false, selector: "[nucLoadedContent]", inputs: { nucLoadedContent: "nucLoadedContent", errorTemplate: ["nucLoadedContentError", "errorTemplate"], inProgressTemplate: ["nucLoadedContentInProgress", "inProgressTemplate"], inProgressMessage: ["nucLoadedContentInProgressMessage", "inProgressMessage"], errorMessage: ["nucLoadedContentErrorMessage", "errorMessage"], showRetry: ["nucLoadedContentShowRetry", "showRetry"] }, ngImport: i0 }); }
|
|
319
319
|
}
|
|
320
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
320
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.2", ngImport: i0, type: NucLoadedContentDirective, decorators: [{
|
|
321
321
|
type: Directive,
|
|
322
322
|
args: [{
|
|
323
323
|
// eslint-disable-next-line @angular-eslint/directive-selector
|
|
@@ -344,17 +344,17 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.13", ngImpo
|
|
|
344
344
|
}] } });
|
|
345
345
|
|
|
346
346
|
class NucLoadedContentModule {
|
|
347
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
348
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "
|
|
347
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.2", ngImport: i0, type: NucLoadedContentModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
348
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.1.2", ngImport: i0, type: NucLoadedContentModule, declarations: [NucLoadedContentDirective, NucLoadedContentComponent], imports: [CommonModule,
|
|
349
349
|
MatProgressSpinnerModule,
|
|
350
350
|
MatButtonModule,
|
|
351
351
|
MatIconModule], exports: [NucLoadedContentDirective] }); }
|
|
352
|
-
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "
|
|
352
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.1.2", ngImport: i0, type: NucLoadedContentModule, imports: [CommonModule,
|
|
353
353
|
MatProgressSpinnerModule,
|
|
354
354
|
MatButtonModule,
|
|
355
355
|
MatIconModule] }); }
|
|
356
356
|
}
|
|
357
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
357
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.2", ngImport: i0, type: NucLoadedContentModule, decorators: [{
|
|
358
358
|
type: NgModule,
|
|
359
359
|
args: [{
|
|
360
360
|
declarations: [NucLoadedContentDirective, NucLoadedContentComponent],
|
|
@@ -412,10 +412,10 @@ class NucSwipeTabsDirective {
|
|
|
412
412
|
}
|
|
413
413
|
});
|
|
414
414
|
}
|
|
415
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
416
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "
|
|
415
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.2", ngImport: i0, type: NucSwipeTabsDirective, deps: [{ token: i0.ElementRef }, { token: i1$2.MatTabGroup }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
416
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.1.2", type: NucSwipeTabsDirective, isStandalone: false, selector: "[nucSwipe]", ngImport: i0 }); }
|
|
417
417
|
}
|
|
418
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
418
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.2", ngImport: i0, type: NucSwipeTabsDirective, decorators: [{
|
|
419
419
|
type: Directive,
|
|
420
420
|
args: [{
|
|
421
421
|
// eslint-disable-next-line @angular-eslint/directive-selector
|
|
@@ -425,11 +425,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.13", ngImpo
|
|
|
425
425
|
}], ctorParameters: () => [{ type: i0.ElementRef }, { type: i1$2.MatTabGroup }] });
|
|
426
426
|
|
|
427
427
|
class NucSwipeTabsModule {
|
|
428
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
429
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "
|
|
430
|
-
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "
|
|
428
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.2", ngImport: i0, type: NucSwipeTabsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
429
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.1.2", ngImport: i0, type: NucSwipeTabsModule, declarations: [NucSwipeTabsDirective], imports: [CommonModule], exports: [NucSwipeTabsDirective] }); }
|
|
430
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.1.2", ngImport: i0, type: NucSwipeTabsModule, imports: [CommonModule] }); }
|
|
431
431
|
}
|
|
432
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
432
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.2", ngImport: i0, type: NucSwipeTabsModule, decorators: [{
|
|
433
433
|
type: NgModule,
|
|
434
434
|
args: [{
|
|
435
435
|
declarations: [NucSwipeTabsDirective],
|
|
@@ -465,10 +465,10 @@ class ProgressSnackbarComponent {
|
|
|
465
465
|
actionClicked() {
|
|
466
466
|
this.snackBar.dismissWithAction();
|
|
467
467
|
}
|
|
468
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
469
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "
|
|
468
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.2", ngImport: i0, type: ProgressSnackbarComponent, deps: [{ token: i1$3.MatSnackBarRef }, { token: MAT_SNACK_BAR_DATA }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
469
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.1.2", type: ProgressSnackbarComponent, isStandalone: false, selector: "lib-progress-snackbar", host: { classAttribute: "mat-simple-snackbar" }, ngImport: i0, template: "<div class=\"snackbar-container\" >\n <div class=\"mdc-snackbar__label message\">\n <mat-spinner\n style=\"vertical-align: middle; display: inline-flex; margin-right: 8px\"\n diameter=\"16\"\n strokeWidth=\"1.5\"\n mode=\"indeterminate\"\n class=\"spinner\"\n color=\"red\"\n ></mat-spinner>\n {{ data.message }}\n </div>\n @if (data.action) {\n <button matSnackBarAction mat-button (click)=\"actionClicked()\">{{data.action}}</button>\n }\n</div>\n", styles: [".snackbar-container{display:flex;align-items:center}\n"], dependencies: [{ kind: "directive", type: i1$3.MatSnackBarAction, selector: "[matSnackBarAction]" }, { kind: "component", type: i2.MatProgressSpinner, selector: "mat-progress-spinner, mat-spinner", inputs: ["color", "mode", "value", "diameter", "strokeWidth"], exportAs: ["matProgressSpinner"] }, { kind: "component", type: i3.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"] }], encapsulation: i0.ViewEncapsulation.None }); }
|
|
470
470
|
}
|
|
471
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
471
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.2", ngImport: i0, type: ProgressSnackbarComponent, decorators: [{
|
|
472
472
|
type: Component,
|
|
473
473
|
args: [{ selector: 'lib-progress-snackbar', encapsulation: ViewEncapsulation.None, host: {
|
|
474
474
|
class: 'mat-simple-snackbar',
|
|
@@ -507,10 +507,10 @@ class NucSnackbarService {
|
|
|
507
507
|
openSnackbarWithConfig(message, action, config) {
|
|
508
508
|
return this.matSnackBar.open(message, action, config);
|
|
509
509
|
}
|
|
510
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
511
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
510
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.2", ngImport: i0, type: NucSnackbarService, deps: [{ token: i1$3.MatSnackBar }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
511
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.1.2", ngImport: i0, type: NucSnackbarService, providedIn: 'root' }); }
|
|
512
512
|
}
|
|
513
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
513
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.2", ngImport: i0, type: NucSnackbarService, decorators: [{
|
|
514
514
|
type: Injectable,
|
|
515
515
|
args: [{
|
|
516
516
|
providedIn: 'root',
|
|
@@ -518,11 +518,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.13", ngImpo
|
|
|
518
518
|
}], ctorParameters: () => [{ type: i1$3.MatSnackBar }] });
|
|
519
519
|
|
|
520
520
|
class NucSnackbarModule {
|
|
521
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
522
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "
|
|
523
|
-
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "
|
|
521
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.2", ngImport: i0, type: NucSnackbarModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
522
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.1.2", ngImport: i0, type: NucSnackbarModule, declarations: [ProgressSnackbarComponent], imports: [CommonModule, MatSnackBarModule, MatProgressSpinnerModule, MatButtonModule] }); }
|
|
523
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.1.2", ngImport: i0, type: NucSnackbarModule, imports: [CommonModule, MatSnackBarModule, MatProgressSpinnerModule, MatButtonModule] }); }
|
|
524
524
|
}
|
|
525
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
525
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.2", ngImport: i0, type: NucSnackbarModule, decorators: [{
|
|
526
526
|
type: NgModule,
|
|
527
527
|
args: [{
|
|
528
528
|
declarations: [ProgressSnackbarComponent],
|
|
@@ -564,10 +564,10 @@ class NucUserAvatarComponent {
|
|
|
564
564
|
const saturation = 42.6;
|
|
565
565
|
return `hsl(${hue},${saturation}%,${lightness}%)`;
|
|
566
566
|
}
|
|
567
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
568
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "
|
|
567
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.2", ngImport: i0, type: NucUserAvatarComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
568
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.1.2", type: NucUserAvatarComponent, isStandalone: false, selector: "nuc-user-avatar", inputs: { name: "name", image: "image", size: "size", background: "background" }, ngImport: i0, template: "@if (image) {\n <div class=\"user-avatar size-{{size}}\">\n <img src=\"{{image}}\" />\n </div>\n}\n\n@if (!image) {\n <div\n class=\"user-avatar size-{{size}} unselectable\"\n [style.background-color]=\"getHslString()\"\n [ngClass]=\"{'white-text': background, 'black-text border': !background}\"\n >\n {{getUserInitials()}}\n </div>\n}\n", styles: [".user-avatar{display:flex;align-items:center;justify-content:center;border-radius:50%;position:relative;text-align:center;font-weight:400}.user-avatar img{object-fit:contain;width:inherit;height:inherit;border-radius:50%}.white-text{color:#fff}.black-text{color:#333}.unselectable{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.border{border:2px solid #333333}.user-avatar.size-small{height:24px;width:24px;font-size:.8em;line-height:24px}.user-avatar.size-medium{height:40px;width:40px;font-size:1.2em;line-height:40px}.user-avatar.size-large{height:64px;width:64px;font-size:2em;line-height:64px}.user-avatar.size-xlarge{height:90px;width:90px;font-size:3em;line-height:90px}\n"], dependencies: [{ kind: "directive", type: i1$1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }] }); }
|
|
569
569
|
}
|
|
570
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
570
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.2", ngImport: i0, type: NucUserAvatarComponent, decorators: [{
|
|
571
571
|
type: Component,
|
|
572
572
|
args: [{ selector: 'nuc-user-avatar', standalone: false, template: "@if (image) {\n <div class=\"user-avatar size-{{size}}\">\n <img src=\"{{image}}\" />\n </div>\n}\n\n@if (!image) {\n <div\n class=\"user-avatar size-{{size}} unselectable\"\n [style.background-color]=\"getHslString()\"\n [ngClass]=\"{'white-text': background, 'black-text border': !background}\"\n >\n {{getUserInitials()}}\n </div>\n}\n", styles: [".user-avatar{display:flex;align-items:center;justify-content:center;border-radius:50%;position:relative;text-align:center;font-weight:400}.user-avatar img{object-fit:contain;width:inherit;height:inherit;border-radius:50%}.white-text{color:#fff}.black-text{color:#333}.unselectable{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.border{border:2px solid #333333}.user-avatar.size-small{height:24px;width:24px;font-size:.8em;line-height:24px}.user-avatar.size-medium{height:40px;width:40px;font-size:1.2em;line-height:40px}.user-avatar.size-large{height:64px;width:64px;font-size:2em;line-height:64px}.user-avatar.size-xlarge{height:90px;width:90px;font-size:3em;line-height:90px}\n"] }]
|
|
573
573
|
}], propDecorators: { name: [{
|
|
@@ -581,11 +581,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.13", ngImpo
|
|
|
581
581
|
}] } });
|
|
582
582
|
|
|
583
583
|
class NucUserAvatarModule {
|
|
584
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
585
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "
|
|
586
|
-
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "
|
|
584
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.2", ngImport: i0, type: NucUserAvatarModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
585
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.1.2", ngImport: i0, type: NucUserAvatarModule, declarations: [NucUserAvatarComponent], imports: [CommonModule], exports: [NucUserAvatarComponent] }); }
|
|
586
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.1.2", ngImport: i0, type: NucUserAvatarModule, imports: [CommonModule] }); }
|
|
587
587
|
}
|
|
588
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
588
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.2", ngImport: i0, type: NucUserAvatarModule, decorators: [{
|
|
589
589
|
type: NgModule,
|
|
590
590
|
args: [{
|
|
591
591
|
declarations: [NucUserAvatarComponent],
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"kolektor-nucleus-material.mjs","sources":["../../../../../../libs/ng/nucleus/nucleus-material/src/lib/dialog/dialog.component.ts","../../../../../../libs/ng/nucleus/nucleus-material/src/lib/dialog/dialog.component.html","../../../../../../libs/ng/nucleus/nucleus-material/src/lib/dialog/dialog.service.ts","../../../../../../libs/ng/nucleus/nucleus-material/src/lib/dialog/dialog.module.ts","../../../../../../libs/ng/nucleus/nucleus-material/src/lib/dialog/models.ts","../../../../../../libs/ng/nucleus/nucleus-material/src/lib/loaded-content/loading-state.ts","../../../../../../libs/ng/nucleus/nucleus-material/src/lib/loaded-content/loaded-content-component.ts","../../../../../../libs/ng/nucleus/nucleus-material/src/lib/loaded-content/loaded-content-component.html","../../../../../../libs/ng/nucleus/nucleus-material/src/lib/loaded-content/loaded-content-directive.ts","../../../../../../libs/ng/nucleus/nucleus-material/src/lib/loaded-content/loaded-content-module.ts","../../../../../../libs/ng/nucleus/nucleus-material/src/lib/swipe-tabs/swipe-tabs-directive.ts","../../../../../../libs/ng/nucleus/nucleus-material/src/lib/swipe-tabs/swipe-tabs-module.ts","../../../../../../libs/ng/nucleus/nucleus-material/src/lib/snackbar/models.ts","../../../../../../libs/ng/nucleus/nucleus-material/src/lib/snackbar/progress-snackbar/progress-snackbar.component.ts","../../../../../../libs/ng/nucleus/nucleus-material/src/lib/snackbar/progress-snackbar/progress-snackbar.component.html","../../../../../../libs/ng/nucleus/nucleus-material/src/lib/snackbar/snackbar.service.ts","../../../../../../libs/ng/nucleus/nucleus-material/src/lib/snackbar/snackbar.module.ts","../../../../../../libs/ng/nucleus/nucleus-material/src/lib/user-avatar/user-avatar-component.ts","../../../../../../libs/ng/nucleus/nucleus-material/src/lib/user-avatar/user-avatar-component.html","../../../../../../libs/ng/nucleus/nucleus-material/src/lib/user-avatar/user-avatar-module.ts","../../../../../../libs/ng/nucleus/nucleus-material/src/index.ts","../../../../../../libs/ng/nucleus/nucleus-material/src/kolektor-nucleus-material.ts"],"sourcesContent":["import { Component, Inject } from '@angular/core';\nimport { MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';\nimport { NucDialogData } from './models';\n\n@Component({\n // eslint-disable-next-line @angular-eslint/component-selector\n selector: 'nuc-dialog',\n templateUrl: './dialog.component.html',\n styleUrls: ['./dialog.component.scss'],\n standalone: false\n})\nexport class NucDialogComponent {\n constructor(\n public dialogRef: MatDialogRef<NucDialogComponent>,\n @Inject(MAT_DIALOG_DATA) public dialogData: NucDialogData\n ) {}\n}\n","@if (dialogData) {\n @if (dialogData.title) {\n <h2 mat-dialog-title>\n {{ dialogData.title }}\n </h2>\n }\n <mat-dialog-content>{{ dialogData.message }}</mat-dialog-content>\n <mat-dialog-actions>\n @for (action of dialogData.actions; track action) {\n @if (action.value === undefined) {\n <button\n color=\"{{ action.color || 'primary' }}\"\n mat-button\n mat-dialog-close\n >\n {{ action.text }}\n </button>\n }\n @if (action.value !== undefined) {\n <button\n color=\"{{ action.color || 'primary' }}\"\n mat-button\n [mat-dialog-close]=\"action.value\"\n >\n {{ action.text }}\n </button>\n }\n }\n </mat-dialog-actions>\n}\n","import { Injectable } from '@angular/core';\nimport { MatDialog, MatDialogConfig } from '@angular/material/dialog';\nimport { NucDialogData } from './models';\nimport { NucDialogComponent } from './dialog.component';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class NucDialogService {\n constructor(private _matDialog: MatDialog) {}\n\n /**\n * Opens a NucDialog with content from dialogData.\n *\n * @param dialogData NucDialogData containing title, message and possible actions.\n * @param dialogConfig Extra configuration options. Data property is ignored, since it will be set to dialogData.\n * @returns a promise with value that was specified inside pressed Nucleus action.\n */\n public async open(\n dialogData: NucDialogData,\n dialogConfig?: MatDialogConfig\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n ): Promise<any> {\n if (dialogData.actions && dialogData.actions.length > 0) {\n if (dialogConfig) {\n dialogConfig.data = dialogData;\n } else {\n dialogConfig = { data: dialogData };\n }\n return await this._matDialog\n .open(NucDialogComponent, dialogConfig)\n .beforeClosed()\n .toPromise();\n } else {\n console.error(\n 'Nucleus.AppCore: NucDialogData requires at least one action.'\n );\n }\n }\n}\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { MatButtonModule } from '@angular/material/button';\nimport { MatDialogModule } from '@angular/material/dialog';\nimport { NucDialogComponent } from './dialog.component';\n\n@NgModule({\n declarations: [NucDialogComponent],\n imports: [CommonModule, MatDialogModule, MatButtonModule],\n})\nexport class NucDialogModule {}\n","export interface NucDialogData {\n /** Optional title for the dialog. */\n title?: string;\n /** Message for the dialog. */\n message: string;\n /** Action(s) (buttons) for the dialog. At least one is required. */\n actions: NucAction[];\n}\n\nexport interface NucAction {\n /** Text for the action (button). */\n text: string;\n /** Return value for the action (button). */\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n value?: any;\n /** Optional color of the action (button). */\n color?: NucColor;\n}\n\nexport enum NucColor {\n /** Primary color of the theme. */\n primary = 'primary',\n /** Accent color of the theme. */\n accent = 'accent',\n /** Warning color of the theme. */\n warn = 'warn',\n}\n","import { Observable, Subscription } from 'rxjs';\nimport { tap } from 'rxjs/operators';\nimport { HttpErrorResponse } from '@angular/common/http';\n\nexport enum LoadingStatus {\n completed,\n inProgress,\n failed,\n undefined,\n}\n\nexport class LoadingState {\n private _status: LoadingStatus = LoadingStatus.undefined;\n private _initialMessage: string;\n private _message?: string;\n private _errorDetails?: string;\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n private _resultFunction?: (result: any) => void;\n private _errorFunction?: (error: HttpErrorResponse) => void;\n private _completeFunction?: () => void;\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n private _loadObservable: Observable<any>;\n private _lastSubscription: Subscription;\n\n get status(): LoadingStatus {\n return this._status;\n }\n\n get message() {\n return this._message;\n }\n\n get errorDetails() {\n return this._errorDetails;\n }\n\n public load<T>(\n observable: Observable<T>,\n resultFunction?: (result: T) => void,\n errorFunction?: (error: HttpErrorResponse) => void,\n completeFunction?: () => void\n ) {\n return this._load(\n true,\n undefined,\n observable,\n resultFunction,\n errorFunction,\n completeFunction\n );\n }\n\n public loadWithMessage<T>(\n observable: Observable<T>,\n message: string,\n resultFunction?: (result: T) => void,\n errorFunction?: (error: HttpErrorResponse) => void,\n completeFunction?: () => void\n ): Subscription {\n this._initialMessage = message;\n return this._load(\n true,\n message,\n observable,\n resultFunction,\n errorFunction,\n completeFunction\n );\n }\n\n public invoke<T>(\n observable: Observable<T>,\n resultFunction?: (result: T) => void,\n errorFunction?: (error: HttpErrorResponse) => void,\n completeFunction?: () => void\n ): Subscription {\n return this._load(\n false,\n undefined,\n observable,\n resultFunction,\n errorFunction,\n completeFunction\n );\n }\n\n public invokeWithMessage<T>(\n observable: Observable<T>,\n message: string,\n resultFunction?: (result: T) => void,\n errorFunction?: (error: HttpErrorResponse) => void,\n completeFunction?: () => void\n ): Subscription {\n this._initialMessage = message;\n return this._load(\n false,\n message,\n observable,\n resultFunction,\n errorFunction,\n completeFunction\n );\n }\n\n public retry() {\n if (this._lastSubscription) {\n this._lastSubscription.unsubscribe();\n }\n this.setInProgress(this._initialMessage);\n this._lastSubscription = this._loadObservable.subscribe({\n next: this._resultFunction,\n error: this._errorFunction,\n complete: this._completeFunction,\n });\n return this._lastSubscription;\n }\n\n public setInProgress(message?: string) {\n this._status = LoadingStatus.inProgress;\n this._message = message;\n }\n\n public setCompleted() {\n this._status = LoadingStatus.completed;\n }\n\n public setFailed(message?: string, error?: string) {\n this._status = LoadingStatus.failed;\n this._message = message;\n this._errorDetails = error;\n }\n\n private _load<T>(\n saveAsLoadObservable: boolean,\n progressMessage: string | undefined,\n observable: Observable<T>,\n resultFunction?: (result: T) => void,\n errorFunction?: (error: HttpErrorResponse) => void,\n completeFunction?: () => void\n ): Subscription {\n if (this._lastSubscription) {\n this._lastSubscription.unsubscribe();\n }\n\n this.setInProgress(progressMessage);\n const obs = observable.pipe(\n tap({\n next: () => {\n if (!saveAsLoadObservable && this.message) {\n // if message was used one time we clear it\n this._message = undefined;\n }\n this.setCompleted();\n },\n error: (err) => {\n this.setFailed(undefined, LoadingState.getErrorDetails(err));\n },\n })\n );\n\n if (saveAsLoadObservable) {\n this._loadObservable = obs;\n this._resultFunction = resultFunction;\n this._errorFunction = errorFunction;\n this._completeFunction = completeFunction;\n }\n\n this._lastSubscription = obs.subscribe({\n next: resultFunction,\n error: errorFunction,\n complete: completeFunction,\n });\n return this._lastSubscription;\n }\n\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n public static getErrorDetails(error: any) {\n // this routine tries to get the best error details from:\n // - standard rfc7807 http error: https://datatracker.ietf.org/doc/html/rfc7807\n // - angular HttpError\n // - JS Error object\n\n const problem = error?.error;\n if (problem?.title && problem?.detail) {\n return `${problem.title}: ${problem.detail}`;\n } else {\n return problem?.title || problem?.detail || error.message || error;\n }\n }\n}\n","/* eslint-disable @typescript-eslint/no-explicit-any */\nimport { Component, Input, TemplateRef } from '@angular/core';\nimport { LoadingState, LoadingStatus } from './loading-state';\n\n@Component({\n // eslint-disable-next-line @angular-eslint/component-selector\n selector: 'nuc-loaded-content-component',\n templateUrl: './loaded-content-component.html',\n styleUrls: ['./loaded-content-component.scss'],\n standalone: false\n})\nexport class NucLoadedContentComponent {\n private _errorDetailsVisible = false;\n\n @Input()\n completedTemplate: TemplateRef<any>;\n\n @Input()\n errorTemplate: TemplateRef<any>;\n\n @Input()\n inProgressTemplate: TemplateRef<any>;\n\n @Input()\n public state: LoadingState;\n\n @Input()\n public inProgressMessage?: string;\n\n @Input()\n public errorMessage = 'We are having trouble loading the data.';\n\n @Input()\n public showRetry = true;\n\n public get message() {\n if (this.state.message != null) {\n return this.state.message;\n } else {\n if (this.state.status === LoadingStatus.failed) {\n return this.errorMessage;\n } else if (this.state.status === LoadingStatus.inProgress) {\n return this.inProgressMessage;\n }\n }\n return null;\n }\n\n public get showRetryButton() {\n return this.showRetry;\n }\n\n public get inProgress() {\n const inProgress = this.state.status === LoadingStatus.inProgress;\n if (inProgress) {\n this._errorDetailsVisible = false;\n }\n return inProgress;\n }\n\n public get failed() {\n return this.state.status === LoadingStatus.failed;\n }\n\n public get completed() {\n return this.state.status === LoadingStatus.completed;\n }\n\n public get errorDetailsVisible() {\n return this._errorDetailsVisible;\n }\n\n public showErrorDetails() {\n this._errorDetailsVisible = true;\n }\n}\n","@if (completed) {\n <ng-container *ngTemplateOutlet=\"completedTemplate\"></ng-container>\n}\n\n@if (inProgress || failed) {\n <div class=\"indicators-container\">\n @if (inProgress) {\n <ng-container\n *ngTemplateOutlet=\"inProgressTemplate ? inProgressTemplate : defaultInProgressTemplate\"\n ></ng-container>\n }\n @if (failed) {\n <ng-container\n *ngTemplateOutlet=\"errorTemplate ? errorTemplate: defaultErrorTemplate\"\n ></ng-container>\n }\n </div>\n}\n\n<ng-template #defaultInProgressTemplate>\n <div class=\"spinner\">\n <mat-spinner [diameter]=\"45\"></mat-spinner>\n </div>\n @if (message) {\n <p>{{message}}</p>\n }\n</ng-template>\n\n<ng-template #defaultErrorTemplate>\n <div>\n <p class=\"message\">\n <span>{{message}}</span>\n @if (state.errorDetails && !errorDetailsVisible) {\n <mat-icon\n class=\"info-button\"\n color=\"warn\"\n (click)=\"showErrorDetails()\"\n >info</mat-icon\n >\n }\n </p>\n\n @if (errorDetailsVisible) {\n <p class=\"error-details mat-small\">\n {{state.errorDetails}}\n </p>\n }\n\n @if (showRetryButton) {\n <p>\n <button mat-mini-fab color=\"primary\" (click)=\"state.retry()\">\n <mat-icon>refresh</mat-icon>\n </button>\n </p>\n }\n </div>\n </ng-template>\n","/* eslint-disable @typescript-eslint/no-explicit-any */\nimport {\n ComponentRef,\n Directive,\n Input,\n TemplateRef,\n ViewContainerRef\n} from '@angular/core';\nimport { NucLoadedContentComponent } from './loaded-content-component';\nimport { LoadingState } from './loading-state';\n\n@Directive({\n // eslint-disable-next-line @angular-eslint/directive-selector\n selector: '[nucLoadedContent]',\n standalone: false\n})\nexport class NucLoadedContentDirective {\n private _state: LoadingState;\n private _completedTemplateRef: TemplateRef<any>;\n private _errorTemplateRef: TemplateRef<any> | null = null;\n private _inProgressTemplateRef: TemplateRef<any> | null = null;\n private _component: ComponentRef<NucLoadedContentComponent>;\n\n constructor(\n private _viewContainer: ViewContainerRef,\n private templateRef: TemplateRef<any>\n ) {\n this._completedTemplateRef = this.templateRef;\n }\n\n @Input()\n set nucLoadedContent(state: LoadingState) {\n // add some error handling if state is null, etc.\n this._state = state;\n this._updateView();\n }\n\n // eslint-disable-next-line @angular-eslint/no-input-rename\n @Input('nucLoadedContentError')\n set errorTemplate(templateRef: TemplateRef<any> | null) {\n this._errorTemplateRef = templateRef;\n this._updateView();\n }\n\n // eslint-disable-next-line @angular-eslint/no-input-rename\n @Input('nucLoadedContentInProgress')\n set inProgressTemplate(templateRef: TemplateRef<any> | null) {\n this._inProgressTemplateRef = templateRef;\n this._updateView();\n }\n\n @Input('nucLoadedContentInProgressMessage')\n set inProgressMessage(inProgressMessage: string | null) {\n if (inProgressMessage) {\n this._component.instance.inProgressMessage = inProgressMessage;\n }\n }\n\n @Input('nucLoadedContentErrorMessage')\n set errorMessage(errorMessage: string | null) {\n if (errorMessage) {\n this._component.instance.errorMessage = errorMessage;\n }\n }\n\n @Input('nucLoadedContentShowRetry')\n set showRetry(showRetry: boolean) {\n this._component.instance.showRetry = showRetry;\n }\n\n private _updateView() {\n if (this._component == null) {\n this._component = this._viewContainer.createComponent(NucLoadedContentComponent);\n }\n\n this._component.instance.state = this._state;\n this._component.instance.completedTemplate = this._completedTemplateRef;\n\n if (this._inProgressTemplateRef) {\n this._component.instance.inProgressTemplate = this._inProgressTemplateRef;\n }\n\n if (this._errorTemplateRef) {\n this._component.instance.errorTemplate = this._errorTemplateRef;\n }\n }\n}\n","import { NgModule } from '@angular/core';\nimport { NucLoadedContentComponent } from './loaded-content-component';\nimport { MatButtonModule } from '@angular/material/button';\nimport { MatIconModule } from '@angular/material/icon';\nimport { MatProgressSpinnerModule } from '@angular/material/progress-spinner';\nimport { CommonModule } from '@angular/common';\nimport { NucLoadedContentDirective } from './loaded-content-directive';\n\n@NgModule({\n declarations: [NucLoadedContentDirective, NucLoadedContentComponent],\n imports: [\n CommonModule,\n MatProgressSpinnerModule,\n MatButtonModule,\n MatIconModule,\n ],\n exports: [NucLoadedContentDirective],\n})\nexport class NucLoadedContentModule {}\n","import { Directive, ElementRef, OnInit } from '@angular/core';\nimport { MatTabGroup } from '@angular/material/tabs';\nimport * as Hammer from 'hammerjs';\n\n\n@Directive({\n // eslint-disable-next-line @angular-eslint/directive-selector\n selector: '[nucSwipe]',\n standalone: false\n})\nexport class NucSwipeTabsDirective implements OnInit {\n constructor(\n private element: ElementRef<EventTarget>,\n private tabGroup: MatTabGroup\n ) {}\n\n ngOnInit() {\n const hammerJs = new Hammer.Manager(this.element.nativeElement, {\n inputClass: Hammer.TouchInput,\n });\n\n hammerJs.add(\n new Hammer.Pan({\n direction: Hammer.DIRECTION_HORIZONTAL,\n threshold: 30,\n })\n );\n\n hammerJs.on('panleft panright', (event) => {\n if (event.isFinal) {\n const tabs = this.tabGroup._tabs.map((x) => x.disabled);\n const currentIndex = this.tabGroup.selectedIndex ?? 0;\n let nextIndex = currentIndex;\n\n if (\n event.type === 'panright' &&\n event.direction === 4 &&\n currentIndex > 0\n ) {\n // if user pans right, go to the left\n for (let i = currentIndex - 1; i >= 0; i--) {\n if (!tabs[i]) {\n nextIndex = i;\n break;\n }\n }\n } else if (\n event.type === 'panleft' &&\n event.direction === 2 &&\n currentIndex < this.tabGroup._tabs.length - 1\n ) {\n // if user pans left, go to the right\n for (let i = currentIndex + 1; i < tabs.length; i++) {\n if (!tabs[i]) {\n nextIndex = i;\n break;\n }\n }\n }\n this.tabGroup.selectedIndex = nextIndex;\n }\n });\n }\n}\n","import { NgModule } from '@angular/core';\nimport { NucSwipeTabsDirective } from './swipe-tabs-directive';\nimport { CommonModule } from '@angular/common';\n\n@NgModule({\n declarations: [NucSwipeTabsDirective],\n imports: [CommonModule],\n exports: [NucSwipeTabsDirective],\n})\nexport class NucSwipeTabsModule {}\n","export enum NucSnackbarType {\n Info = 'info',\n Warning = 'warning',\n Danger = 'danger',\n Success = 'success',\n Progress = 'progress',\n}\n","import {\n AfterViewInit,\n Component,\n ElementRef,\n Inject,\n ViewEncapsulation,\n} from '@angular/core';\nimport { MAT_SNACK_BAR_DATA, MatSnackBar, MatSnackBarRef } from '@angular/material/snack-bar';\n\n@Component({\n selector: 'lib-progress-snackbar',\n templateUrl: './progress-snackbar.component.html',\n styleUrls: ['./progress-snackbar.component.scss'],\n encapsulation: ViewEncapsulation.None,\n host: {\n class: 'mat-simple-snackbar',\n },\n standalone: false\n})\nexport class ProgressSnackbarComponent implements AfterViewInit {\n constructor(\n private snackBar: MatSnackBarRef<MatSnackBar>,\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n @Inject(MAT_SNACK_BAR_DATA) public data: any,\n private elem: ElementRef\n ) { }\n\n ngAfterViewInit() {\n const element = this.elem.nativeElement;\n const circle = element.querySelector('circle');\n const message = element.querySelector('.message');\n const color = window.getComputedStyle(message).color;\n circle.style.stroke = color;\n }\n\n actionClicked() {\n this.snackBar.dismissWithAction();\n }\n}\n","<div class=\"snackbar-container\" >\n <div class=\"mdc-snackbar__label message\">\n <mat-spinner\n style=\"vertical-align: middle; display: inline-flex; margin-right: 8px\"\n diameter=\"16\"\n strokeWidth=\"1.5\"\n mode=\"indeterminate\"\n class=\"spinner\"\n color=\"red\"\n ></mat-spinner>\n {{ data.message }}\n </div>\n @if (data.action) {\n <button matSnackBarAction mat-button (click)=\"actionClicked()\">{{data.action}}</button>\n }\n</div>\n","import { Injectable } from '@angular/core';\nimport {\n MatSnackBar,\n MatSnackBarConfig,\n MatSnackBarRef,\n TextOnlySnackBar,\n} from '@angular/material/snack-bar';\nimport { NucSnackbarType } from './models';\nimport { ProgressSnackbarComponent } from './progress-snackbar/progress-snackbar.component';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class NucSnackbarService {\n constructor(private matSnackBar: MatSnackBar) { }\n\n public openSnackbar(\n type: NucSnackbarType,\n message: string,\n action: string | null | undefined,\n duration: number\n ): MatSnackBarRef<TextOnlySnackBar | ProgressSnackbarComponent> {\n action = action || undefined;\n let ref: MatSnackBarRef<TextOnlySnackBar | ProgressSnackbarComponent>;\n\n const panelClass = `${type}-snackbar`;\n\n if (type === NucSnackbarType.Progress) {\n ref = this.matSnackBar.openFromComponent(ProgressSnackbarComponent, {\n duration,\n panelClass,\n data: {\n message,\n action\n },\n });\n } else {\n ref = this.matSnackBar.open(message, action, {\n duration,\n panelClass,\n });\n }\n\n return ref;\n }\n\n public openSnackbarWithConfig(\n message: string,\n action: string | undefined,\n config: MatSnackBarConfig\n ): MatSnackBarRef<TextOnlySnackBar> {\n return this.matSnackBar.open(message, action, config);\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { MatSnackBarModule } from '@angular/material/snack-bar';\nimport { ProgressSnackbarComponent } from './progress-snackbar/progress-snackbar.component';\nimport { MatProgressSpinnerModule } from '@angular/material/progress-spinner';\nimport { MatButtonModule } from '@angular/material/button';\n\n@NgModule({\n declarations: [ProgressSnackbarComponent],\n imports: [CommonModule, MatSnackBarModule, MatProgressSpinnerModule, MatButtonModule],\n exports: [],\n})\nexport class NucSnackbarModule {}\n","import { Component, Input } from '@angular/core';\nexport type AvatarSize = 'small' | 'medium' | 'large' | 'xlarge';\nexport type Background = true | false;\n\n@Component({\n // eslint-disable-next-line @angular-eslint/component-selector\n selector: 'nuc-user-avatar',\n templateUrl: './user-avatar-component.html',\n styleUrls: ['./user-avatar-component.scss'],\n standalone: false\n})\nexport class NucUserAvatarComponent {\n @Input() name: string;\n @Input() image?: string;\n @Input() size: AvatarSize = 'medium';\n @Input() background: Background = false;\n\n getUserInitials() {\n const nameParts = this.name.split(' ');\n return (\n nameParts[0].charAt(0).toUpperCase() +\n '' +\n nameParts[nameParts.length - 1].charAt(0).toUpperCase()\n );\n }\n\n getHslString(): string {\n if (!this.background) {\n return `hsl(${0},${0}%,${100}%)`;\n }\n\n let hash = 0;\n for (let i = 0; i < this.name.length; i++) {\n /*\n * Javascript uses double precision floating-point format for all numerical datatypes.\n * Except when using bitwise operations, where operators are converted to 32-bit signed integers.\n * Result of bitwise operations are then converted back to double precision floating-point format.\n *\n * We make a bitwise OR operation between the new hash and 0.\n * This keeps only the lower 32 bits in the new hash value.\n */\n // eslint-disable-next-line no-bitwise\n hash = (this.name.charCodeAt(i) + ((hash << 15) - hash)) | 0;\n }\n\n const hue = Math.abs(hash % 360);\n\n const lightness = 49.2;\n const saturation = 42.6;\n\n return `hsl(${hue},${saturation}%,${lightness}%)`;\n }\n}\n","@if (image) {\n <div class=\"user-avatar size-{{size}}\">\n <img src=\"{{image}}\" />\n </div>\n}\n\n@if (!image) {\n <div\n class=\"user-avatar size-{{size}} unselectable\"\n [style.background-color]=\"getHslString()\"\n [ngClass]=\"{'white-text': background, 'black-text border': !background}\"\n >\n {{getUserInitials()}}\n </div>\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { NucUserAvatarComponent } from './user-avatar-component';\n\n@NgModule({\n declarations: [NucUserAvatarComponent],\n imports: [CommonModule],\n exports: [NucUserAvatarComponent],\n})\nexport class NucUserAvatarModule {}\n","// dialog\nexport * from './lib/dialog/dialog.service';\nexport * from './lib/dialog/dialog.module';\nexport * from './lib/dialog/models';\n\n// loaded-content\nexport * from './lib/loaded-content/loading-state';\nexport * from './lib/loaded-content/loaded-content-component';\nexport * from './lib/loaded-content/loaded-content-directive';\nexport * from './lib/loaded-content/loaded-content-module';\n\n// swipe-tabs\nexport * from './lib/swipe-tabs/swipe-tabs-directive';\nexport * from './lib/swipe-tabs/swipe-tabs-module';\n\n// dialog component\nexport * from './lib/dialog/dialog.service';\nexport * from './lib/dialog/dialog.module';\nexport * from './lib/dialog/models';\n\n// snackbar component\nexport * from './lib/snackbar/snackbar.service';\nexport * from './lib/snackbar/snackbar.module';\nexport * from './lib/snackbar/models';\n\n// user-avatar\nexport * from './lib/user-avatar/user-avatar-component';\nexport * from './lib/user-avatar/user-avatar-module';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i2","i1"],"mappings":";;;;;;;;;;;;;;;;;;MAWa,kBAAkB,CAAA;IAC7B,WAAA,CACS,SAA2C,EAClB,UAAyB,EAAA;QADlD,IAAA,CAAA,SAAS,GAAT,SAAS;QACgB,IAAA,CAAA,UAAU,GAAV,UAAU;IACzC;AAJQ,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,kBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,kBAAkB,8CAGnB,eAAe,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAHd,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,kBAAkB,uECX/B,uxBA8BA,EAAA,MAAA,EAAA,CAAA,wIAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,cAAA,EAAA,QAAA,EAAA,sCAAA,EAAA,MAAA,EAAA,CAAA,YAAA,EAAA,MAAA,EAAA,kBAAA,EAAA,gBAAA,CAAA,EAAA,QAAA,EAAA,CAAA,gBAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,cAAA,EAAA,QAAA,EAAA,sCAAA,EAAA,MAAA,EAAA,CAAA,IAAA,CAAA,EAAA,QAAA,EAAA,CAAA,gBAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,gBAAA,EAAA,QAAA,EAAA,8DAAA,EAAA,MAAA,EAAA,CAAA,OAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,gBAAA,EAAA,QAAA,EAAA,8DAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,EAAA,CAAA,SAAA,EAAA,QAAA,EAAA,iOAAA,EAAA,MAAA,EAAA,CAAA,WAAA,CAAA,EAAA,QAAA,EAAA,CAAA,WAAA,EAAA,WAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA;;4FDnBa,kBAAkB,EAAA,UAAA,EAAA,CAAA;kBAP9B,SAAS;AAEI,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,YAAY,cAGV,KAAK,EAAA,QAAA,EAAA,uxBAAA,EAAA,MAAA,EAAA,CAAA,wIAAA,CAAA,EAAA;;0BAKhB,MAAM;2BAAC,eAAe;;;MENd,gBAAgB,CAAA;AAC3B,IAAA,WAAA,CAAoB,UAAqB,EAAA;QAArB,IAAA,CAAA,UAAU,GAAV,UAAU;IAAc;AAE5C;;;;;;AAMG;AACI,IAAA,MAAM,IAAI,CACf,UAAyB,EACzB;;;AAGA,QAAA,IAAI,UAAU,CAAC,OAAO,IAAI,UAAU,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE;YACvD,IAAI,YAAY,EAAE;AAChB,gBAAA,YAAY,CAAC,IAAI,GAAG,UAAU;YAChC;iBAAO;AACL,gBAAA,YAAY,GAAG,EAAE,IAAI,EAAE,UAAU,EAAE;YACrC;YACA,OAAO,MAAM,IAAI,CAAC;AACf,iBAAA,IAAI,CAAC,kBAAkB,EAAE,YAAY;AACrC,iBAAA,YAAY;AACZ,iBAAA,SAAS,EAAE;QAChB;aAAO;AACL,YAAA,OAAO,CAAC,KAAK,CACX,8DAA8D,CAC/D;QACH;IACF;+GA9BW,gBAAgB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,SAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;AAAhB,IAAA,SAAA,IAAA,CAAA,KAAA,GAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,gBAAgB,cAFf,MAAM,EAAA,CAAA,CAAA;;4FAEP,gBAAgB,EAAA,UAAA,EAAA,CAAA;kBAH5B,UAAU;AAAC,YAAA,IAAA,EAAA,CAAA;AACV,oBAAA,UAAU,EAAE,MAAM;AACnB,iBAAA;;;MCGY,eAAe,CAAA;+GAAf,eAAe,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;AAAf,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,eAAe,iBAHX,kBAAkB,CAAA,EAAA,OAAA,EAAA,CACvB,YAAY,EAAE,eAAe,EAAE,eAAe,CAAA,EAAA,CAAA,CAAA;AAE7C,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,eAAe,EAAA,OAAA,EAAA,CAFhB,YAAY,EAAE,eAAe,EAAE,eAAe,CAAA,EAAA,CAAA,CAAA;;4FAE7C,eAAe,EAAA,UAAA,EAAA,CAAA;kBAJ3B,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;oBACR,YAAY,EAAE,CAAC,kBAAkB,CAAC;AAClC,oBAAA,OAAO,EAAE,CAAC,YAAY,EAAE,eAAe,EAAE,eAAe,CAAC;AAC1D,iBAAA;;;ICUW;AAAZ,CAAA,UAAY,QAAQ,EAAA;;AAElB,IAAA,QAAA,CAAA,SAAA,CAAA,GAAA,SAAmB;;AAEnB,IAAA,QAAA,CAAA,QAAA,CAAA,GAAA,QAAiB;;AAEjB,IAAA,QAAA,CAAA,MAAA,CAAA,GAAA,MAAa;AACf,CAAC,EAPW,QAAQ,KAAR,QAAQ,GAAA,EAAA,CAAA,CAAA;;ICfR;AAAZ,CAAA,UAAY,aAAa,EAAA;AACvB,IAAA,aAAA,CAAA,aAAA,CAAA,WAAA,CAAA,GAAA,CAAA,CAAA,GAAA,WAAS;AACT,IAAA,aAAA,CAAA,aAAA,CAAA,YAAA,CAAA,GAAA,CAAA,CAAA,GAAA,YAAU;AACV,IAAA,aAAA,CAAA,aAAA,CAAA,QAAA,CAAA,GAAA,CAAA,CAAA,GAAA,QAAM;AACN,IAAA,aAAA,CAAA,aAAA,CAAA,WAAA,CAAA,GAAA,CAAA,CAAA,GAAA,WAAS;AACX,CAAC,EALW,aAAa,KAAb,aAAa,GAAA,EAAA,CAAA,CAAA;MAOZ,YAAY,CAAA;AAAzB,IAAA,WAAA,GAAA;AACU,QAAA,IAAA,CAAA,OAAO,GAAkB,aAAa,CAAC,SAAS;IAiL1D;AArKE,IAAA,IAAI,MAAM,GAAA;QACR,OAAO,IAAI,CAAC,OAAO;IACrB;AAEA,IAAA,IAAI,OAAO,GAAA;QACT,OAAO,IAAI,CAAC,QAAQ;IACtB;AAEA,IAAA,IAAI,YAAY,GAAA;QACd,OAAO,IAAI,CAAC,aAAa;IAC3B;AAEO,IAAA,IAAI,CACT,UAAyB,EACzB,cAAoC,EACpC,aAAkD,EAClD,gBAA6B,EAAA;AAE7B,QAAA,OAAO,IAAI,CAAC,KAAK,CACf,IAAI,EACJ,SAAS,EACT,UAAU,EACV,cAAc,EACd,aAAa,EACb,gBAAgB,CACjB;IACH;IAEO,eAAe,CACpB,UAAyB,EACzB,OAAe,EACf,cAAoC,EACpC,aAAkD,EAClD,gBAA6B,EAAA;AAE7B,QAAA,IAAI,CAAC,eAAe,GAAG,OAAO;AAC9B,QAAA,OAAO,IAAI,CAAC,KAAK,CACf,IAAI,EACJ,OAAO,EACP,UAAU,EACV,cAAc,EACd,aAAa,EACb,gBAAgB,CACjB;IACH;AAEO,IAAA,MAAM,CACX,UAAyB,EACzB,cAAoC,EACpC,aAAkD,EAClD,gBAA6B,EAAA;AAE7B,QAAA,OAAO,IAAI,CAAC,KAAK,CACf,KAAK,EACL,SAAS,EACT,UAAU,EACV,cAAc,EACd,aAAa,EACb,gBAAgB,CACjB;IACH;IAEO,iBAAiB,CACtB,UAAyB,EACzB,OAAe,EACf,cAAoC,EACpC,aAAkD,EAClD,gBAA6B,EAAA;AAE7B,QAAA,IAAI,CAAC,eAAe,GAAG,OAAO;AAC9B,QAAA,OAAO,IAAI,CAAC,KAAK,CACf,KAAK,EACL,OAAO,EACP,UAAU,EACV,cAAc,EACd,aAAa,EACb,gBAAgB,CACjB;IACH;IAEO,KAAK,GAAA;AACV,QAAA,IAAI,IAAI,CAAC,iBAAiB,EAAE;AAC1B,YAAA,IAAI,CAAC,iBAAiB,CAAC,WAAW,EAAE;QACtC;AACA,QAAA,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,eAAe,CAAC;QACxC,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC;YACtD,IAAI,EAAE,IAAI,CAAC,eAAe;YAC1B,KAAK,EAAE,IAAI,CAAC,cAAc;YAC1B,QAAQ,EAAE,IAAI,CAAC,iBAAiB;AACjC,SAAA,CAAC;QACF,OAAO,IAAI,CAAC,iBAAiB;IAC/B;AAEO,IAAA,aAAa,CAAC,OAAgB,EAAA;AACnC,QAAA,IAAI,CAAC,OAAO,GAAG,aAAa,CAAC,UAAU;AACvC,QAAA,IAAI,CAAC,QAAQ,GAAG,OAAO;IACzB;IAEO,YAAY,GAAA;AACjB,QAAA,IAAI,CAAC,OAAO,GAAG,aAAa,CAAC,SAAS;IACxC;IAEO,SAAS,CAAC,OAAgB,EAAE,KAAc,EAAA;AAC/C,QAAA,IAAI,CAAC,OAAO,GAAG,aAAa,CAAC,MAAM;AACnC,QAAA,IAAI,CAAC,QAAQ,GAAG,OAAO;AACvB,QAAA,IAAI,CAAC,aAAa,GAAG,KAAK;IAC5B;IAEQ,KAAK,CACX,oBAA6B,EAC7B,eAAmC,EACnC,UAAyB,EACzB,cAAoC,EACpC,aAAkD,EAClD,gBAA6B,EAAA;AAE7B,QAAA,IAAI,IAAI,CAAC,iBAAiB,EAAE;AAC1B,YAAA,IAAI,CAAC,iBAAiB,CAAC,WAAW,EAAE;QACtC;AAEA,QAAA,IAAI,CAAC,aAAa,CAAC,eAAe,CAAC;AACnC,QAAA,MAAM,GAAG,GAAG,UAAU,CAAC,IAAI,CACzB,GAAG,CAAC;YACF,IAAI,EAAE,MAAK;AACT,gBAAA,IAAI,CAAC,oBAAoB,IAAI,IAAI,CAAC,OAAO,EAAE;;AAEzC,oBAAA,IAAI,CAAC,QAAQ,GAAG,SAAS;gBAC3B;gBACA,IAAI,CAAC,YAAY,EAAE;YACrB,CAAC;AACD,YAAA,KAAK,EAAE,CAAC,GAAG,KAAI;AACb,gBAAA,IAAI,CAAC,SAAS,CAAC,SAAS,EAAE,YAAY,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC;YAC9D,CAAC;AACF,SAAA,CAAC,CACH;QAED,IAAI,oBAAoB,EAAE;AACxB,YAAA,IAAI,CAAC,eAAe,GAAG,GAAG;AAC1B,YAAA,IAAI,CAAC,eAAe,GAAG,cAAc;AACrC,YAAA,IAAI,CAAC,cAAc,GAAG,aAAa;AACnC,YAAA,IAAI,CAAC,iBAAiB,GAAG,gBAAgB;QAC3C;AAEA,QAAA,IAAI,CAAC,iBAAiB,GAAG,GAAG,CAAC,SAAS,CAAC;AACrC,YAAA,IAAI,EAAE,cAAc;AACpB,YAAA,KAAK,EAAE,aAAa;AACpB,YAAA,QAAQ,EAAE,gBAAgB;AAC3B,SAAA,CAAC;QACF,OAAO,IAAI,CAAC,iBAAiB;IAC/B;;IAGO,OAAO,eAAe,CAAC,KAAU,EAAA;;;;;AAMtC,QAAA,MAAM,OAAO,GAAG,KAAK,EAAE,KAAK;QAC5B,IAAI,OAAO,EAAE,KAAK,IAAI,OAAO,EAAE,MAAM,EAAE;YACrC,OAAO,CAAA,EAAG,OAAO,CAAC,KAAK,KAAK,OAAO,CAAC,MAAM,CAAA,CAAE;QAC9C;aAAO;AACL,YAAA,OAAO,OAAO,EAAE,KAAK,IAAI,OAAO,EAAE,MAAM,IAAI,KAAK,CAAC,OAAO,IAAI,KAAK;QACpE;IACF;AACD;;AC7LD;MAWa,yBAAyB,CAAA;AAPtC,IAAA,WAAA,GAAA;QAQU,IAAA,CAAA,oBAAoB,GAAG,KAAK;QAkB7B,IAAA,CAAA,YAAY,GAAG,yCAAyC;QAGxD,IAAA,CAAA,SAAS,GAAG,IAAI;AA0CxB,IAAA;AAxCC,IAAA,IAAW,OAAO,GAAA;QAChB,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,IAAI,IAAI,EAAE;AAC9B,YAAA,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO;QAC3B;aAAO;YACL,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,KAAK,aAAa,CAAC,MAAM,EAAE;gBAC9C,OAAO,IAAI,CAAC,YAAY;YAC1B;iBAAO,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,KAAK,aAAa,CAAC,UAAU,EAAE;gBACzD,OAAO,IAAI,CAAC,iBAAiB;YAC/B;QACF;AACA,QAAA,OAAO,IAAI;IACb;AAEA,IAAA,IAAW,eAAe,GAAA;QACxB,OAAO,IAAI,CAAC,SAAS;IACvB;AAEA,IAAA,IAAW,UAAU,GAAA;QACnB,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,KAAK,aAAa,CAAC,UAAU;QACjE,IAAI,UAAU,EAAE;AACd,YAAA,IAAI,CAAC,oBAAoB,GAAG,KAAK;QACnC;AACA,QAAA,OAAO,UAAU;IACnB;AAEA,IAAA,IAAW,MAAM,GAAA;QACf,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,KAAK,aAAa,CAAC,MAAM;IACnD;AAEA,IAAA,IAAW,SAAS,GAAA;QAClB,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,KAAK,aAAa,CAAC,SAAS;IACtD;AAEA,IAAA,IAAW,mBAAmB,GAAA;QAC5B,OAAO,IAAI,CAAC,oBAAoB;IAClC;IAEO,gBAAgB,GAAA;AACrB,QAAA,IAAI,CAAC,oBAAoB,GAAG,IAAI;IAClC;+GA/DW,yBAAyB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAzB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,yBAAyB,qUCXtC,45CAyDA,EAAA,MAAA,EAAA,CAAA,4SAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,IAAA,CAAA,gBAAA,EAAA,QAAA,EAAA,oBAAA,EAAA,MAAA,EAAA,CAAA,yBAAA,EAAA,kBAAA,EAAA,0BAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,kBAAA,EAAA,QAAA,EAAA,mCAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,MAAA,EAAA,OAAA,EAAA,UAAA,EAAA,aAAA,CAAA,EAAA,QAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,gBAAA,EAAA,QAAA,EAAA,0EAAA,EAAA,QAAA,EAAA,CAAA,WAAA,EAAA,WAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,UAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,SAAA,EAAA,SAAA,EAAA,UAAA,CAAA,EAAA,QAAA,EAAA,CAAA,SAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA;;4FD9Ca,yBAAyB,EAAA,UAAA,EAAA,CAAA;kBAPrC,SAAS;AAEI,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,8BAA8B,cAG5B,KAAK,EAAA,QAAA,EAAA,45CAAA,EAAA,MAAA,EAAA,CAAA,4SAAA,CAAA,EAAA;;sBAKlB;;sBAGA;;sBAGA;;sBAGA;;sBAGA;;sBAGA;;sBAGA;;;AEhCH;MAgBa,yBAAyB,CAAA;IAOpC,WAAA,CACU,cAAgC,EAChC,WAA6B,EAAA;QAD7B,IAAA,CAAA,cAAc,GAAd,cAAc;QACd,IAAA,CAAA,WAAW,GAAX,WAAW;QANb,IAAA,CAAA,iBAAiB,GAA4B,IAAI;QACjD,IAAA,CAAA,sBAAsB,GAA4B,IAAI;AAO5D,QAAA,IAAI,CAAC,qBAAqB,GAAG,IAAI,CAAC,WAAW;IAC/C;IAEA,IACI,gBAAgB,CAAC,KAAmB,EAAA;;AAEtC,QAAA,IAAI,CAAC,MAAM,GAAG,KAAK;QACnB,IAAI,CAAC,WAAW,EAAE;IACpB;;IAGA,IACI,aAAa,CAAC,WAAoC,EAAA;AACpD,QAAA,IAAI,CAAC,iBAAiB,GAAG,WAAW;QACpC,IAAI,CAAC,WAAW,EAAE;IACpB;;IAGA,IACI,kBAAkB,CAAC,WAAoC,EAAA;AACzD,QAAA,IAAI,CAAC,sBAAsB,GAAG,WAAW;QACzC,IAAI,CAAC,WAAW,EAAE;IACpB;IAEA,IACI,iBAAiB,CAAC,iBAAgC,EAAA;QACpD,IAAI,iBAAiB,EAAE;YACrB,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,iBAAiB,GAAG,iBAAiB;QAChE;IACF;IAEA,IACI,YAAY,CAAC,YAA2B,EAAA;QAC1C,IAAI,YAAY,EAAE;YAChB,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,YAAY,GAAG,YAAY;QACtD;IACF;IAEA,IACI,SAAS,CAAC,SAAkB,EAAA;QAC9B,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,SAAS,GAAG,SAAS;IAChD;IAEQ,WAAW,GAAA;AACjB,QAAA,IAAI,IAAI,CAAC,UAAU,IAAI,IAAI,EAAE;YAC3B,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,cAAc,CAAC,eAAe,CAAC,yBAAyB,CAAC;QAClF;QAEA,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,KAAK,GAAG,IAAI,CAAC,MAAM;QAC5C,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,iBAAiB,GAAG,IAAI,CAAC,qBAAqB;AAEvE,QAAA,IAAI,IAAI,CAAC,sBAAsB,EAAE;YAC/B,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,kBAAkB,GAAG,IAAI,CAAC,sBAAsB;QAC3E;AAEA,QAAA,IAAI,IAAI,CAAC,iBAAiB,EAAE;YAC1B,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,aAAa,GAAG,IAAI,CAAC,iBAAiB;QACjE;IACF;+GArEW,yBAAyB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,gBAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,WAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;mGAAzB,yBAAyB,EAAA,YAAA,EAAA,KAAA,EAAA,QAAA,EAAA,oBAAA,EAAA,MAAA,EAAA,EAAA,gBAAA,EAAA,kBAAA,EAAA,aAAA,EAAA,CAAA,uBAAA,EAAA,eAAA,CAAA,EAAA,kBAAA,EAAA,CAAA,4BAAA,EAAA,oBAAA,CAAA,EAAA,iBAAA,EAAA,CAAA,mCAAA,EAAA,mBAAA,CAAA,EAAA,YAAA,EAAA,CAAA,8BAAA,EAAA,cAAA,CAAA,EAAA,SAAA,EAAA,CAAA,2BAAA,EAAA,WAAA,CAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;;4FAAzB,yBAAyB,EAAA,UAAA,EAAA,CAAA;kBALrC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;;AAEP,oBAAA,QAAQ,EAAE,oBAAoB;AAC9B,oBAAA,UAAU,EAAE;AACf,iBAAA;;sBAeE;;sBAQA,KAAK;uBAAC,uBAAuB;;sBAO7B,KAAK;uBAAC,4BAA4B;;sBAMlC,KAAK;uBAAC,mCAAmC;;sBAOzC,KAAK;uBAAC,8BAA8B;;sBAOpC,KAAK;uBAAC,2BAA2B;;;MC/CvB,sBAAsB,CAAA;+GAAtB,sBAAsB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;AAAtB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,sBAAsB,EAAA,YAAA,EAAA,CATlB,yBAAyB,EAAE,yBAAyB,aAEjE,YAAY;YACZ,wBAAwB;YACxB,eAAe;AACf,YAAA,aAAa,aAEL,yBAAyB,CAAA,EAAA,CAAA,CAAA;AAExB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,sBAAsB,YAP/B,YAAY;YACZ,wBAAwB;YACxB,eAAe;YACf,aAAa,CAAA,EAAA,CAAA,CAAA;;4FAIJ,sBAAsB,EAAA,UAAA,EAAA,CAAA;kBAVlC,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,YAAY,EAAE,CAAC,yBAAyB,EAAE,yBAAyB,CAAC;AACpE,oBAAA,OAAO,EAAE;wBACP,YAAY;wBACZ,wBAAwB;wBACxB,eAAe;wBACf,aAAa;AACd,qBAAA;oBACD,OAAO,EAAE,CAAC,yBAAyB,CAAC;AACrC,iBAAA;;;MCPY,qBAAqB,CAAA;IAChC,WAAA,CACU,OAAgC,EAChC,QAAqB,EAAA;QADrB,IAAA,CAAA,OAAO,GAAP,OAAO;QACP,IAAA,CAAA,QAAQ,GAAR,QAAQ;IACf;IAEH,QAAQ,GAAA;AACN,QAAA,MAAM,QAAQ,GAAG,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,aAAa,EAAE;YAC9D,UAAU,EAAE,MAAM,CAAC,UAAU;AAC9B,SAAA,CAAC;AAEF,QAAA,QAAQ,CAAC,GAAG,CACV,IAAI,MAAM,CAAC,GAAG,CAAC;YACb,SAAS,EAAE,MAAM,CAAC,oBAAoB;AACtC,YAAA,SAAS,EAAE,EAAE;AACd,SAAA,CAAC,CACH;QAED,QAAQ,CAAC,EAAE,CAAC,kBAAkB,EAAE,CAAC,KAAK,KAAI;AACxC,YAAA,IAAI,KAAK,CAAC,OAAO,EAAE;AACjB,gBAAA,MAAM,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC;gBACvD,MAAM,YAAY,GAAG,IAAI,CAAC,QAAQ,CAAC,aAAa,IAAI,CAAC;gBACrD,IAAI,SAAS,GAAG,YAAY;AAE5B,gBAAA,IACE,KAAK,CAAC,IAAI,KAAK,UAAU;oBACzB,KAAK,CAAC,SAAS,KAAK,CAAC;oBACrB,YAAY,GAAG,CAAC,EAChB;;AAEA,oBAAA,KAAK,IAAI,CAAC,GAAG,YAAY,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE;AAC1C,wBAAA,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE;4BACZ,SAAS,GAAG,CAAC;4BACb;wBACF;oBACF;gBACF;AAAO,qBAAA,IACL,KAAK,CAAC,IAAI,KAAK,SAAS;oBACxB,KAAK,CAAC,SAAS,KAAK,CAAC;oBACrB,YAAY,GAAG,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,EAC7C;;AAEA,oBAAA,KAAK,IAAI,CAAC,GAAG,YAAY,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;AACnD,wBAAA,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE;4BACZ,SAAS,GAAG,CAAC;4BACb;wBACF;oBACF;gBACF;AACA,gBAAA,IAAI,CAAC,QAAQ,CAAC,aAAa,GAAG,SAAS;YACzC;AACF,QAAA,CAAC,CAAC;IACJ;+GApDW,qBAAqB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,UAAA,EAAA,EAAA,EAAA,KAAA,EAAAA,IAAA,CAAA,WAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;mGAArB,qBAAqB,EAAA,YAAA,EAAA,KAAA,EAAA,QAAA,EAAA,YAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;;4FAArB,qBAAqB,EAAA,UAAA,EAAA,CAAA;kBALjC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;;AAEP,oBAAA,QAAQ,EAAE,YAAY;AACtB,oBAAA,UAAU,EAAE;AACf,iBAAA;;;MCAY,kBAAkB,CAAA;+GAAlB,kBAAkB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;AAAlB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,kBAAkB,EAAA,YAAA,EAAA,CAJd,qBAAqB,CAAA,EAAA,OAAA,EAAA,CAC1B,YAAY,aACZ,qBAAqB,CAAA,EAAA,CAAA,CAAA;AAEpB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,kBAAkB,YAHnB,YAAY,CAAA,EAAA,CAAA,CAAA;;4FAGX,kBAAkB,EAAA,UAAA,EAAA,CAAA;kBAL9B,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;oBACR,YAAY,EAAE,CAAC,qBAAqB,CAAC;oBACrC,OAAO,EAAE,CAAC,YAAY,CAAC;oBACvB,OAAO,EAAE,CAAC,qBAAqB,CAAC;AACjC,iBAAA;;;ICRW;AAAZ,CAAA,UAAY,eAAe,EAAA;AACzB,IAAA,eAAA,CAAA,MAAA,CAAA,GAAA,MAAa;AACb,IAAA,eAAA,CAAA,SAAA,CAAA,GAAA,SAAmB;AACnB,IAAA,eAAA,CAAA,QAAA,CAAA,GAAA,QAAiB;AACjB,IAAA,eAAA,CAAA,SAAA,CAAA,GAAA,SAAmB;AACnB,IAAA,eAAA,CAAA,UAAA,CAAA,GAAA,UAAqB;AACvB,CAAC,EANW,eAAe,KAAf,eAAe,GAAA,EAAA,CAAA,CAAA;;MCmBd,yBAAyB,CAAA;AACpC,IAAA,WAAA,CACU,QAAqC;;AAEV,IAAA,IAAS,EACpC,IAAgB,EAAA;QAHhB,IAAA,CAAA,QAAQ,GAAR,QAAQ;QAEmB,IAAA,CAAA,IAAI,GAAJ,IAAI;QAC/B,IAAA,CAAA,IAAI,GAAJ,IAAI;IACV;IAEJ,eAAe,GAAA;AACb,QAAA,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,aAAa;QACvC,MAAM,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC,QAAQ,CAAC;QAC9C,MAAM,OAAO,GAAG,OAAO,CAAC,aAAa,CAAC,UAAU,CAAC;QACjD,MAAM,KAAK,GAAG,MAAM,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC,KAAK;AACpD,QAAA,MAAM,CAAC,KAAK,CAAC,MAAM,GAAG,KAAK;IAC7B;IAEA,aAAa,GAAA;AACX,QAAA,IAAI,CAAC,QAAQ,CAAC,iBAAiB,EAAE;IACnC;AAlBW,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,kBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,yBAAyB,kDAI1B,kBAAkB,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,UAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAJjB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,yBAAyB,mICnBtC,ifAgBA,EAAA,MAAA,EAAA,CAAA,wDAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,iBAAA,EAAA,QAAA,EAAA,qBAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,kBAAA,EAAA,QAAA,EAAA,mCAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,MAAA,EAAA,OAAA,EAAA,UAAA,EAAA,aAAA,CAAA,EAAA,QAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,SAAA,EAAA,QAAA,EAAA,iOAAA,EAAA,MAAA,EAAA,CAAA,WAAA,CAAA,EAAA,QAAA,EAAA,CAAA,WAAA,EAAA,WAAA,CAAA,EAAA,CAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA,CAAA;;4FDGa,yBAAyB,EAAA,UAAA,EAAA,CAAA;kBAVrC,SAAS;AACI,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,uBAAuB,EAAA,aAAA,EAGlB,iBAAiB,CAAC,IAAI,EAAA,IAAA,EAC/B;AACF,wBAAA,KAAK,EAAE,qBAAqB;AAC/B,qBAAA,EAAA,UAAA,EACW,KAAK,EAAA,QAAA,EAAA,ifAAA,EAAA,MAAA,EAAA,CAAA,wDAAA,CAAA,EAAA;;0BAMhB,MAAM;2BAAC,kBAAkB;;;MEVjB,kBAAkB,CAAA;AAC7B,IAAA,WAAA,CAAoB,WAAwB,EAAA;QAAxB,IAAA,CAAA,WAAW,GAAX,WAAW;IAAiB;AAEzC,IAAA,YAAY,CACjB,IAAqB,EACrB,OAAe,EACf,MAAiC,EACjC,QAAgB,EAAA;AAEhB,QAAA,MAAM,GAAG,MAAM,IAAI,SAAS;AAC5B,QAAA,IAAI,GAAiE;AAErE,QAAA,MAAM,UAAU,GAAG,CAAA,EAAG,IAAI,WAAW;AAErC,QAAA,IAAI,IAAI,KAAK,eAAe,CAAC,QAAQ,EAAE;YACrC,GAAG,GAAG,IAAI,CAAC,WAAW,CAAC,iBAAiB,CAAC,yBAAyB,EAAE;gBAClE,QAAQ;gBACR,UAAU;AACV,gBAAA,IAAI,EAAE;oBACJ,OAAO;oBACP;AACD,iBAAA;AACF,aAAA,CAAC;QACJ;aAAO;YACL,GAAG,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE;gBAC3C,QAAQ;gBACR,UAAU;AACX,aAAA,CAAC;QACJ;AAEA,QAAA,OAAO,GAAG;IACZ;AAEO,IAAA,sBAAsB,CAC3B,OAAe,EACf,MAA0B,EAC1B,MAAyB,EAAA;AAEzB,QAAA,OAAO,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC;IACvD;+GAvCW,kBAAkB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAAA,IAAA,CAAA,WAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;AAAlB,IAAA,SAAA,IAAA,CAAA,KAAA,GAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,kBAAkB,cAFjB,MAAM,EAAA,CAAA,CAAA;;4FAEP,kBAAkB,EAAA,UAAA,EAAA,CAAA;kBAH9B,UAAU;AAAC,YAAA,IAAA,EAAA,CAAA;AACV,oBAAA,UAAU,EAAE,MAAM;AACnB,iBAAA;;;MCAY,iBAAiB,CAAA;+GAAjB,iBAAiB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;gHAAjB,iBAAiB,EAAA,YAAA,EAAA,CAJb,yBAAyB,CAAA,EAAA,OAAA,EAAA,CAC9B,YAAY,EAAE,iBAAiB,EAAE,wBAAwB,EAAE,eAAe,CAAA,EAAA,CAAA,CAAA;AAGzE,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,iBAAiB,YAHlB,YAAY,EAAE,iBAAiB,EAAE,wBAAwB,EAAE,eAAe,CAAA,EAAA,CAAA,CAAA;;4FAGzE,iBAAiB,EAAA,UAAA,EAAA,CAAA;kBAL7B,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;oBACR,YAAY,EAAE,CAAC,yBAAyB,CAAC;oBACzC,OAAO,EAAE,CAAC,YAAY,EAAE,iBAAiB,EAAE,wBAAwB,EAAE,eAAe,CAAC;AACrF,oBAAA,OAAO,EAAE,EAAE;AACZ,iBAAA;;;MCAY,sBAAsB,CAAA;AAPnC,IAAA,WAAA,GAAA;QAUW,IAAA,CAAA,IAAI,GAAe,QAAQ;QAC3B,IAAA,CAAA,UAAU,GAAe,KAAK;AAqCxC,IAAA;IAnCC,eAAe,GAAA;QACb,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC;AACtC,QAAA,QACE,SAAS,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE;YACpC,EAAE;AACF,YAAA,SAAS,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE;IAE3D;IAEA,YAAY,GAAA;AACV,QAAA,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE;AACpB,YAAA,OAAO,OAAO,CAAC,CAAA,CAAA,EAAI,CAAC,CAAA,EAAA,EAAK,GAAG,IAAI;QAClC;QAEA,IAAI,IAAI,GAAG,CAAC;AACZ,QAAA,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;AACzC;;;;;;;AAOG;;YAEH,IAAI,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,IAAI,EAAE,IAAI,IAAI,CAAC,IAAI,CAAC;QAC9D;QAEA,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,GAAG,GAAG,CAAC;QAEhC,MAAM,SAAS,GAAG,IAAI;QACtB,MAAM,UAAU,GAAG,IAAI;AAEvB,QAAA,OAAO,OAAO,GAAG,CAAA,CAAA,EAAI,UAAU,CAAA,EAAA,EAAK,SAAS,IAAI;IACnD;+GAxCW,sBAAsB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAtB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,sBAAsB,8JCXnC,0WAeA,EAAA,MAAA,EAAA,CAAA,gtBAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,OAAA,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,SAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA;;4FDJa,sBAAsB,EAAA,UAAA,EAAA,CAAA;kBAPlC,SAAS;AAEI,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,iBAAiB,cAGf,KAAK,EAAA,QAAA,EAAA,0WAAA,EAAA,MAAA,EAAA,CAAA,gtBAAA,CAAA,EAAA;;sBAGlB;;sBACA;;sBACA;;sBACA;;;MENU,mBAAmB,CAAA;+GAAnB,mBAAmB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;AAAnB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,mBAAmB,EAAA,YAAA,EAAA,CAJf,sBAAsB,CAAA,EAAA,OAAA,EAAA,CAC3B,YAAY,aACZ,sBAAsB,CAAA,EAAA,CAAA,CAAA;AAErB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,mBAAmB,YAHpB,YAAY,CAAA,EAAA,CAAA,CAAA;;4FAGX,mBAAmB,EAAA,UAAA,EAAA,CAAA;kBAL/B,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;oBACR,YAAY,EAAE,CAAC,sBAAsB,CAAC;oBACtC,OAAO,EAAE,CAAC,YAAY,CAAC;oBACvB,OAAO,EAAE,CAAC,sBAAsB,CAAC;AAClC,iBAAA;;;ACRD;;ACAA;;AAEG;;;;"}
|
|
1
|
+
{"version":3,"file":"kolektor-nucleus-material.mjs","sources":["../../../../../../libs/ng/nucleus/nucleus-material/src/lib/dialog/dialog.component.ts","../../../../../../libs/ng/nucleus/nucleus-material/src/lib/dialog/dialog.component.html","../../../../../../libs/ng/nucleus/nucleus-material/src/lib/dialog/dialog.service.ts","../../../../../../libs/ng/nucleus/nucleus-material/src/lib/dialog/dialog.module.ts","../../../../../../libs/ng/nucleus/nucleus-material/src/lib/dialog/models.ts","../../../../../../libs/ng/nucleus/nucleus-material/src/lib/loaded-content/loading-state.ts","../../../../../../libs/ng/nucleus/nucleus-material/src/lib/loaded-content/loaded-content-component.ts","../../../../../../libs/ng/nucleus/nucleus-material/src/lib/loaded-content/loaded-content-component.html","../../../../../../libs/ng/nucleus/nucleus-material/src/lib/loaded-content/loaded-content-directive.ts","../../../../../../libs/ng/nucleus/nucleus-material/src/lib/loaded-content/loaded-content-module.ts","../../../../../../libs/ng/nucleus/nucleus-material/src/lib/swipe-tabs/swipe-tabs-directive.ts","../../../../../../libs/ng/nucleus/nucleus-material/src/lib/swipe-tabs/swipe-tabs-module.ts","../../../../../../libs/ng/nucleus/nucleus-material/src/lib/snackbar/models.ts","../../../../../../libs/ng/nucleus/nucleus-material/src/lib/snackbar/progress-snackbar/progress-snackbar.component.ts","../../../../../../libs/ng/nucleus/nucleus-material/src/lib/snackbar/progress-snackbar/progress-snackbar.component.html","../../../../../../libs/ng/nucleus/nucleus-material/src/lib/snackbar/snackbar.service.ts","../../../../../../libs/ng/nucleus/nucleus-material/src/lib/snackbar/snackbar.module.ts","../../../../../../libs/ng/nucleus/nucleus-material/src/lib/user-avatar/user-avatar-component.ts","../../../../../../libs/ng/nucleus/nucleus-material/src/lib/user-avatar/user-avatar-component.html","../../../../../../libs/ng/nucleus/nucleus-material/src/lib/user-avatar/user-avatar-module.ts","../../../../../../libs/ng/nucleus/nucleus-material/src/index.ts","../../../../../../libs/ng/nucleus/nucleus-material/src/kolektor-nucleus-material.ts"],"sourcesContent":["import { Component, Inject } from '@angular/core';\nimport { MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';\nimport { NucDialogData } from './models';\n\n@Component({\n // eslint-disable-next-line @angular-eslint/component-selector\n selector: 'nuc-dialog',\n templateUrl: './dialog.component.html',\n styleUrls: ['./dialog.component.scss'],\n standalone: false\n})\nexport class NucDialogComponent {\n constructor(\n public dialogRef: MatDialogRef<NucDialogComponent>,\n @Inject(MAT_DIALOG_DATA) public dialogData: NucDialogData\n ) {}\n}\n","@if (dialogData) {\n @if (dialogData.title) {\n <h2 mat-dialog-title>\n {{ dialogData.title }}\n </h2>\n }\n <mat-dialog-content>{{ dialogData.message }}</mat-dialog-content>\n <mat-dialog-actions>\n @for (action of dialogData.actions; track action) {\n @if (action.value === undefined) {\n <button\n color=\"{{ action.color || 'primary' }}\"\n mat-button\n mat-dialog-close\n >\n {{ action.text }}\n </button>\n }\n @if (action.value !== undefined) {\n <button\n color=\"{{ action.color || 'primary' }}\"\n mat-button\n [mat-dialog-close]=\"action.value\"\n >\n {{ action.text }}\n </button>\n }\n }\n </mat-dialog-actions>\n}\n","import { Injectable } from '@angular/core';\nimport { MatDialog, MatDialogConfig } from '@angular/material/dialog';\nimport { NucDialogData } from './models';\nimport { NucDialogComponent } from './dialog.component';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class NucDialogService {\n constructor(private _matDialog: MatDialog) {}\n\n /**\n * Opens a NucDialog with content from dialogData.\n *\n * @param dialogData NucDialogData containing title, message and possible actions.\n * @param dialogConfig Extra configuration options. Data property is ignored, since it will be set to dialogData.\n * @returns a promise with value that was specified inside pressed Nucleus action.\n */\n public async open(\n dialogData: NucDialogData,\n dialogConfig?: MatDialogConfig\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n ): Promise<any> {\n if (dialogData.actions && dialogData.actions.length > 0) {\n if (dialogConfig) {\n dialogConfig.data = dialogData;\n } else {\n dialogConfig = { data: dialogData };\n }\n return await this._matDialog\n .open(NucDialogComponent, dialogConfig)\n .beforeClosed()\n .toPromise();\n } else {\n console.error(\n 'Nucleus.AppCore: NucDialogData requires at least one action.'\n );\n }\n }\n}\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { MatButtonModule } from '@angular/material/button';\nimport { MatDialogModule } from '@angular/material/dialog';\nimport { NucDialogComponent } from './dialog.component';\n\n@NgModule({\n declarations: [NucDialogComponent],\n imports: [CommonModule, MatDialogModule, MatButtonModule],\n})\nexport class NucDialogModule {}\n","export interface NucDialogData {\n /** Optional title for the dialog. */\n title?: string;\n /** Message for the dialog. */\n message: string;\n /** Action(s) (buttons) for the dialog. At least one is required. */\n actions: NucAction[];\n}\n\nexport interface NucAction {\n /** Text for the action (button). */\n text: string;\n /** Return value for the action (button). */\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n value?: any;\n /** Optional color of the action (button). */\n color?: NucColor;\n}\n\nexport enum NucColor {\n /** Primary color of the theme. */\n primary = 'primary',\n /** Accent color of the theme. */\n accent = 'accent',\n /** Warning color of the theme. */\n warn = 'warn',\n}\n","import { Observable, Subscription } from 'rxjs';\nimport { tap } from 'rxjs/operators';\nimport { HttpErrorResponse } from '@angular/common/http';\n\nexport enum LoadingStatus {\n completed,\n inProgress,\n failed,\n undefined,\n}\n\nexport class LoadingState {\n private _status: LoadingStatus = LoadingStatus.undefined;\n private _initialMessage: string;\n private _message?: string;\n private _errorDetails?: string;\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n private _resultFunction?: (result: any) => void;\n private _errorFunction?: (error: HttpErrorResponse) => void;\n private _completeFunction?: () => void;\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n private _loadObservable: Observable<any>;\n private _lastSubscription: Subscription;\n\n get status(): LoadingStatus {\n return this._status;\n }\n\n get message() {\n return this._message;\n }\n\n get errorDetails() {\n return this._errorDetails;\n }\n\n public load<T>(\n observable: Observable<T>,\n resultFunction?: (result: T) => void,\n errorFunction?: (error: HttpErrorResponse) => void,\n completeFunction?: () => void\n ) {\n return this._load(\n true,\n undefined,\n observable,\n resultFunction,\n errorFunction,\n completeFunction\n );\n }\n\n public loadWithMessage<T>(\n observable: Observable<T>,\n message: string,\n resultFunction?: (result: T) => void,\n errorFunction?: (error: HttpErrorResponse) => void,\n completeFunction?: () => void\n ): Subscription {\n this._initialMessage = message;\n return this._load(\n true,\n message,\n observable,\n resultFunction,\n errorFunction,\n completeFunction\n );\n }\n\n public invoke<T>(\n observable: Observable<T>,\n resultFunction?: (result: T) => void,\n errorFunction?: (error: HttpErrorResponse) => void,\n completeFunction?: () => void\n ): Subscription {\n return this._load(\n false,\n undefined,\n observable,\n resultFunction,\n errorFunction,\n completeFunction\n );\n }\n\n public invokeWithMessage<T>(\n observable: Observable<T>,\n message: string,\n resultFunction?: (result: T) => void,\n errorFunction?: (error: HttpErrorResponse) => void,\n completeFunction?: () => void\n ): Subscription {\n this._initialMessage = message;\n return this._load(\n false,\n message,\n observable,\n resultFunction,\n errorFunction,\n completeFunction\n );\n }\n\n public retry() {\n if (this._lastSubscription) {\n this._lastSubscription.unsubscribe();\n }\n this.setInProgress(this._initialMessage);\n this._lastSubscription = this._loadObservable.subscribe({\n next: this._resultFunction,\n error: this._errorFunction,\n complete: this._completeFunction,\n });\n return this._lastSubscription;\n }\n\n public setInProgress(message?: string) {\n this._status = LoadingStatus.inProgress;\n this._message = message;\n }\n\n public setCompleted() {\n this._status = LoadingStatus.completed;\n }\n\n public setFailed(message?: string, error?: string) {\n this._status = LoadingStatus.failed;\n this._message = message;\n this._errorDetails = error;\n }\n\n private _load<T>(\n saveAsLoadObservable: boolean,\n progressMessage: string | undefined,\n observable: Observable<T>,\n resultFunction?: (result: T) => void,\n errorFunction?: (error: HttpErrorResponse) => void,\n completeFunction?: () => void\n ): Subscription {\n if (this._lastSubscription) {\n this._lastSubscription.unsubscribe();\n }\n\n this.setInProgress(progressMessage);\n const obs = observable.pipe(\n tap({\n next: () => {\n if (!saveAsLoadObservable && this.message) {\n // if message was used one time we clear it\n this._message = undefined;\n }\n this.setCompleted();\n },\n error: (err) => {\n this.setFailed(undefined, LoadingState.getErrorDetails(err));\n },\n })\n );\n\n if (saveAsLoadObservable) {\n this._loadObservable = obs;\n this._resultFunction = resultFunction;\n this._errorFunction = errorFunction;\n this._completeFunction = completeFunction;\n }\n\n this._lastSubscription = obs.subscribe({\n next: resultFunction,\n error: errorFunction,\n complete: completeFunction,\n });\n return this._lastSubscription;\n }\n\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n public static getErrorDetails(error: any) {\n // this routine tries to get the best error details from:\n // - standard rfc7807 http error: https://datatracker.ietf.org/doc/html/rfc7807\n // - angular HttpError\n // - JS Error object\n\n const problem = error?.error;\n if (problem?.title && problem?.detail) {\n return `${problem.title}: ${problem.detail}`;\n } else {\n return problem?.title || problem?.detail || error.message || error;\n }\n }\n}\n","/* eslint-disable @typescript-eslint/no-explicit-any */\nimport { Component, Input, TemplateRef } from '@angular/core';\nimport { LoadingState, LoadingStatus } from './loading-state';\n\n@Component({\n // eslint-disable-next-line @angular-eslint/component-selector\n selector: 'nuc-loaded-content-component',\n templateUrl: './loaded-content-component.html',\n styleUrls: ['./loaded-content-component.scss'],\n standalone: false\n})\nexport class NucLoadedContentComponent {\n private _errorDetailsVisible = false;\n\n @Input()\n completedTemplate: TemplateRef<any>;\n\n @Input()\n errorTemplate: TemplateRef<any>;\n\n @Input()\n inProgressTemplate: TemplateRef<any>;\n\n @Input()\n public state: LoadingState;\n\n @Input()\n public inProgressMessage?: string;\n\n @Input()\n public errorMessage = 'We are having trouble loading the data.';\n\n @Input()\n public showRetry = true;\n\n public get message() {\n if (this.state.message != null) {\n return this.state.message;\n } else {\n if (this.state.status === LoadingStatus.failed) {\n return this.errorMessage;\n } else if (this.state.status === LoadingStatus.inProgress) {\n return this.inProgressMessage;\n }\n }\n return null;\n }\n\n public get showRetryButton() {\n return this.showRetry;\n }\n\n public get inProgress() {\n const inProgress = this.state.status === LoadingStatus.inProgress;\n if (inProgress) {\n this._errorDetailsVisible = false;\n }\n return inProgress;\n }\n\n public get failed() {\n return this.state.status === LoadingStatus.failed;\n }\n\n public get completed() {\n return this.state.status === LoadingStatus.completed;\n }\n\n public get errorDetailsVisible() {\n return this._errorDetailsVisible;\n }\n\n public showErrorDetails() {\n this._errorDetailsVisible = true;\n }\n}\n","@if (completed) {\n <ng-container *ngTemplateOutlet=\"completedTemplate\"></ng-container>\n}\n\n@if (inProgress || failed) {\n <div class=\"indicators-container\">\n @if (inProgress) {\n <ng-container\n *ngTemplateOutlet=\"inProgressTemplate ? inProgressTemplate : defaultInProgressTemplate\"\n ></ng-container>\n }\n @if (failed) {\n <ng-container\n *ngTemplateOutlet=\"errorTemplate ? errorTemplate: defaultErrorTemplate\"\n ></ng-container>\n }\n </div>\n}\n\n<ng-template #defaultInProgressTemplate>\n <div class=\"spinner\">\n <mat-spinner [diameter]=\"45\"></mat-spinner>\n </div>\n @if (message) {\n <p>{{message}}</p>\n }\n</ng-template>\n\n<ng-template #defaultErrorTemplate>\n <div>\n <p class=\"message\">\n <span>{{message}}</span>\n @if (state.errorDetails && !errorDetailsVisible) {\n <mat-icon\n class=\"info-button\"\n color=\"warn\"\n (click)=\"showErrorDetails()\"\n >info</mat-icon\n >\n }\n </p>\n\n @if (errorDetailsVisible) {\n <p class=\"error-details mat-small\">\n {{state.errorDetails}}\n </p>\n }\n\n @if (showRetryButton) {\n <p>\n <button mat-mini-fab color=\"primary\" (click)=\"state.retry()\">\n <mat-icon>refresh</mat-icon>\n </button>\n </p>\n }\n </div>\n </ng-template>\n","/* eslint-disable @typescript-eslint/no-explicit-any */\nimport {\n ComponentRef,\n Directive,\n Input,\n TemplateRef,\n ViewContainerRef\n} from '@angular/core';\nimport { NucLoadedContentComponent } from './loaded-content-component';\nimport { LoadingState } from './loading-state';\n\n@Directive({\n // eslint-disable-next-line @angular-eslint/directive-selector\n selector: '[nucLoadedContent]',\n standalone: false\n})\nexport class NucLoadedContentDirective {\n private _state: LoadingState;\n private _completedTemplateRef: TemplateRef<any>;\n private _errorTemplateRef: TemplateRef<any> | null = null;\n private _inProgressTemplateRef: TemplateRef<any> | null = null;\n private _component: ComponentRef<NucLoadedContentComponent>;\n\n constructor(\n private _viewContainer: ViewContainerRef,\n private templateRef: TemplateRef<any>\n ) {\n this._completedTemplateRef = this.templateRef;\n }\n\n @Input()\n set nucLoadedContent(state: LoadingState) {\n // add some error handling if state is null, etc.\n this._state = state;\n this._updateView();\n }\n\n // eslint-disable-next-line @angular-eslint/no-input-rename\n @Input('nucLoadedContentError')\n set errorTemplate(templateRef: TemplateRef<any> | null) {\n this._errorTemplateRef = templateRef;\n this._updateView();\n }\n\n // eslint-disable-next-line @angular-eslint/no-input-rename\n @Input('nucLoadedContentInProgress')\n set inProgressTemplate(templateRef: TemplateRef<any> | null) {\n this._inProgressTemplateRef = templateRef;\n this._updateView();\n }\n\n @Input('nucLoadedContentInProgressMessage')\n set inProgressMessage(inProgressMessage: string | null) {\n if (inProgressMessage) {\n this._component.instance.inProgressMessage = inProgressMessage;\n }\n }\n\n @Input('nucLoadedContentErrorMessage')\n set errorMessage(errorMessage: string | null) {\n if (errorMessage) {\n this._component.instance.errorMessage = errorMessage;\n }\n }\n\n @Input('nucLoadedContentShowRetry')\n set showRetry(showRetry: boolean) {\n this._component.instance.showRetry = showRetry;\n }\n\n private _updateView() {\n if (this._component == null) {\n this._component = this._viewContainer.createComponent(NucLoadedContentComponent);\n }\n\n this._component.instance.state = this._state;\n this._component.instance.completedTemplate = this._completedTemplateRef;\n\n if (this._inProgressTemplateRef) {\n this._component.instance.inProgressTemplate = this._inProgressTemplateRef;\n }\n\n if (this._errorTemplateRef) {\n this._component.instance.errorTemplate = this._errorTemplateRef;\n }\n }\n}\n","import { NgModule } from '@angular/core';\nimport { NucLoadedContentComponent } from './loaded-content-component';\nimport { MatButtonModule } from '@angular/material/button';\nimport { MatIconModule } from '@angular/material/icon';\nimport { MatProgressSpinnerModule } from '@angular/material/progress-spinner';\nimport { CommonModule } from '@angular/common';\nimport { NucLoadedContentDirective } from './loaded-content-directive';\n\n@NgModule({\n declarations: [NucLoadedContentDirective, NucLoadedContentComponent],\n imports: [\n CommonModule,\n MatProgressSpinnerModule,\n MatButtonModule,\n MatIconModule,\n ],\n exports: [NucLoadedContentDirective],\n})\nexport class NucLoadedContentModule {}\n","import { Directive, ElementRef, OnInit } from '@angular/core';\nimport { MatTabGroup } from '@angular/material/tabs';\nimport * as Hammer from 'hammerjs';\n\n\n@Directive({\n // eslint-disable-next-line @angular-eslint/directive-selector\n selector: '[nucSwipe]',\n standalone: false\n})\nexport class NucSwipeTabsDirective implements OnInit {\n constructor(\n private element: ElementRef<EventTarget>,\n private tabGroup: MatTabGroup\n ) {}\n\n ngOnInit() {\n const hammerJs = new Hammer.Manager(this.element.nativeElement, {\n inputClass: Hammer.TouchInput,\n });\n\n hammerJs.add(\n new Hammer.Pan({\n direction: Hammer.DIRECTION_HORIZONTAL,\n threshold: 30,\n })\n );\n\n hammerJs.on('panleft panright', (event) => {\n if (event.isFinal) {\n const tabs = this.tabGroup._tabs.map((x) => x.disabled);\n const currentIndex = this.tabGroup.selectedIndex ?? 0;\n let nextIndex = currentIndex;\n\n if (\n event.type === 'panright' &&\n event.direction === 4 &&\n currentIndex > 0\n ) {\n // if user pans right, go to the left\n for (let i = currentIndex - 1; i >= 0; i--) {\n if (!tabs[i]) {\n nextIndex = i;\n break;\n }\n }\n } else if (\n event.type === 'panleft' &&\n event.direction === 2 &&\n currentIndex < this.tabGroup._tabs.length - 1\n ) {\n // if user pans left, go to the right\n for (let i = currentIndex + 1; i < tabs.length; i++) {\n if (!tabs[i]) {\n nextIndex = i;\n break;\n }\n }\n }\n this.tabGroup.selectedIndex = nextIndex;\n }\n });\n }\n}\n","import { NgModule } from '@angular/core';\nimport { NucSwipeTabsDirective } from './swipe-tabs-directive';\nimport { CommonModule } from '@angular/common';\n\n@NgModule({\n declarations: [NucSwipeTabsDirective],\n imports: [CommonModule],\n exports: [NucSwipeTabsDirective],\n})\nexport class NucSwipeTabsModule {}\n","export enum NucSnackbarType {\n Info = 'info',\n Warning = 'warning',\n Danger = 'danger',\n Success = 'success',\n Progress = 'progress',\n}\n","import {\n AfterViewInit,\n Component,\n ElementRef,\n Inject,\n ViewEncapsulation,\n} from '@angular/core';\nimport { MAT_SNACK_BAR_DATA, MatSnackBar, MatSnackBarRef } from '@angular/material/snack-bar';\n\n@Component({\n selector: 'lib-progress-snackbar',\n templateUrl: './progress-snackbar.component.html',\n styleUrls: ['./progress-snackbar.component.scss'],\n encapsulation: ViewEncapsulation.None,\n host: {\n class: 'mat-simple-snackbar',\n },\n standalone: false\n})\nexport class ProgressSnackbarComponent implements AfterViewInit {\n constructor(\n private snackBar: MatSnackBarRef<MatSnackBar>,\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n @Inject(MAT_SNACK_BAR_DATA) public data: any,\n private elem: ElementRef\n ) { }\n\n ngAfterViewInit() {\n const element = this.elem.nativeElement;\n const circle = element.querySelector('circle');\n const message = element.querySelector('.message');\n const color = window.getComputedStyle(message).color;\n circle.style.stroke = color;\n }\n\n actionClicked() {\n this.snackBar.dismissWithAction();\n }\n}\n","<div class=\"snackbar-container\" >\n <div class=\"mdc-snackbar__label message\">\n <mat-spinner\n style=\"vertical-align: middle; display: inline-flex; margin-right: 8px\"\n diameter=\"16\"\n strokeWidth=\"1.5\"\n mode=\"indeterminate\"\n class=\"spinner\"\n color=\"red\"\n ></mat-spinner>\n {{ data.message }}\n </div>\n @if (data.action) {\n <button matSnackBarAction mat-button (click)=\"actionClicked()\">{{data.action}}</button>\n }\n</div>\n","import { Injectable } from '@angular/core';\nimport {\n MatSnackBar,\n MatSnackBarConfig,\n MatSnackBarRef,\n TextOnlySnackBar,\n} from '@angular/material/snack-bar';\nimport { NucSnackbarType } from './models';\nimport { ProgressSnackbarComponent } from './progress-snackbar/progress-snackbar.component';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class NucSnackbarService {\n constructor(private matSnackBar: MatSnackBar) { }\n\n public openSnackbar(\n type: NucSnackbarType,\n message: string,\n action: string | null | undefined,\n duration: number\n ): MatSnackBarRef<TextOnlySnackBar | ProgressSnackbarComponent> {\n action = action || undefined;\n let ref: MatSnackBarRef<TextOnlySnackBar | ProgressSnackbarComponent>;\n\n const panelClass = `${type}-snackbar`;\n\n if (type === NucSnackbarType.Progress) {\n ref = this.matSnackBar.openFromComponent(ProgressSnackbarComponent, {\n duration,\n panelClass,\n data: {\n message,\n action\n },\n });\n } else {\n ref = this.matSnackBar.open(message, action, {\n duration,\n panelClass,\n });\n }\n\n return ref;\n }\n\n public openSnackbarWithConfig(\n message: string,\n action: string | undefined,\n config: MatSnackBarConfig\n ): MatSnackBarRef<TextOnlySnackBar> {\n return this.matSnackBar.open(message, action, config);\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { MatSnackBarModule } from '@angular/material/snack-bar';\nimport { ProgressSnackbarComponent } from './progress-snackbar/progress-snackbar.component';\nimport { MatProgressSpinnerModule } from '@angular/material/progress-spinner';\nimport { MatButtonModule } from '@angular/material/button';\n\n@NgModule({\n declarations: [ProgressSnackbarComponent],\n imports: [CommonModule, MatSnackBarModule, MatProgressSpinnerModule, MatButtonModule],\n exports: [],\n})\nexport class NucSnackbarModule {}\n","import { Component, Input } from '@angular/core';\nexport type AvatarSize = 'small' | 'medium' | 'large' | 'xlarge';\nexport type Background = true | false;\n\n@Component({\n // eslint-disable-next-line @angular-eslint/component-selector\n selector: 'nuc-user-avatar',\n templateUrl: './user-avatar-component.html',\n styleUrls: ['./user-avatar-component.scss'],\n standalone: false\n})\nexport class NucUserAvatarComponent {\n @Input() name: string;\n @Input() image?: string;\n @Input() size: AvatarSize = 'medium';\n @Input() background: Background = false;\n\n getUserInitials() {\n const nameParts = this.name.split(' ');\n return (\n nameParts[0].charAt(0).toUpperCase() +\n '' +\n nameParts[nameParts.length - 1].charAt(0).toUpperCase()\n );\n }\n\n getHslString(): string {\n if (!this.background) {\n return `hsl(${0},${0}%,${100}%)`;\n }\n\n let hash = 0;\n for (let i = 0; i < this.name.length; i++) {\n /*\n * Javascript uses double precision floating-point format for all numerical datatypes.\n * Except when using bitwise operations, where operators are converted to 32-bit signed integers.\n * Result of bitwise operations are then converted back to double precision floating-point format.\n *\n * We make a bitwise OR operation between the new hash and 0.\n * This keeps only the lower 32 bits in the new hash value.\n */\n // eslint-disable-next-line no-bitwise\n hash = (this.name.charCodeAt(i) + ((hash << 15) - hash)) | 0;\n }\n\n const hue = Math.abs(hash % 360);\n\n const lightness = 49.2;\n const saturation = 42.6;\n\n return `hsl(${hue},${saturation}%,${lightness}%)`;\n }\n}\n","@if (image) {\n <div class=\"user-avatar size-{{size}}\">\n <img src=\"{{image}}\" />\n </div>\n}\n\n@if (!image) {\n <div\n class=\"user-avatar size-{{size}} unselectable\"\n [style.background-color]=\"getHslString()\"\n [ngClass]=\"{'white-text': background, 'black-text border': !background}\"\n >\n {{getUserInitials()}}\n </div>\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { NucUserAvatarComponent } from './user-avatar-component';\n\n@NgModule({\n declarations: [NucUserAvatarComponent],\n imports: [CommonModule],\n exports: [NucUserAvatarComponent],\n})\nexport class NucUserAvatarModule {}\n","// dialog\nexport * from './lib/dialog/dialog.service';\nexport * from './lib/dialog/dialog.module';\nexport * from './lib/dialog/models';\n\n// loaded-content\nexport * from './lib/loaded-content/loading-state';\nexport * from './lib/loaded-content/loaded-content-component';\nexport * from './lib/loaded-content/loaded-content-directive';\nexport * from './lib/loaded-content/loaded-content-module';\n\n// swipe-tabs\nexport * from './lib/swipe-tabs/swipe-tabs-directive';\nexport * from './lib/swipe-tabs/swipe-tabs-module';\n\n// dialog component\nexport * from './lib/dialog/dialog.service';\nexport * from './lib/dialog/dialog.module';\nexport * from './lib/dialog/models';\n\n// snackbar component\nexport * from './lib/snackbar/snackbar.service';\nexport * from './lib/snackbar/snackbar.module';\nexport * from './lib/snackbar/models';\n\n// user-avatar\nexport * from './lib/user-avatar/user-avatar-component';\nexport * from './lib/user-avatar/user-avatar-module';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i2","i1"],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,26 +1,26 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@kolektor/nucleus-material",
|
|
3
3
|
"peerDependencies": {
|
|
4
|
-
"@angular/common": "^
|
|
5
|
-
"@angular/core": "^
|
|
6
|
-
"@angular/material": "^
|
|
7
|
-
"rxjs": "
|
|
4
|
+
"@angular/common": "^21",
|
|
5
|
+
"@angular/core": "^21",
|
|
6
|
+
"@angular/material": "^21",
|
|
7
|
+
"rxjs": "^7",
|
|
8
8
|
"hammerjs": "^2.0.8"
|
|
9
9
|
},
|
|
10
10
|
"sideEffects": false,
|
|
11
11
|
"module": "fesm2022/kolektor-nucleus-material.mjs",
|
|
12
|
-
"typings": "
|
|
12
|
+
"typings": "types/kolektor-nucleus-material.d.ts",
|
|
13
13
|
"exports": {
|
|
14
14
|
"./package.json": {
|
|
15
15
|
"default": "./package.json"
|
|
16
16
|
},
|
|
17
17
|
".": {
|
|
18
|
-
"types": "./
|
|
18
|
+
"types": "./types/kolektor-nucleus-material.d.ts",
|
|
19
19
|
"default": "./fesm2022/kolektor-nucleus-material.mjs"
|
|
20
20
|
}
|
|
21
21
|
},
|
|
22
22
|
"dependencies": {
|
|
23
23
|
"tslib": "^2.3.0"
|
|
24
24
|
},
|
|
25
|
-
"version": "0.1.
|
|
25
|
+
"version": "0.1.2369"
|
|
26
26
|
}
|
|
@@ -0,0 +1,215 @@
|
|
|
1
|
+
import * as i3 from '@angular/material/dialog';
|
|
2
|
+
import { MatDialog, MatDialogConfig, MatDialogRef } from '@angular/material/dialog';
|
|
3
|
+
import * as i0 from '@angular/core';
|
|
4
|
+
import { TemplateRef, ViewContainerRef, OnInit, ElementRef, AfterViewInit } from '@angular/core';
|
|
5
|
+
import * as i2 from '@angular/common';
|
|
6
|
+
import * as i5 from '@angular/material/button';
|
|
7
|
+
import { Observable, Subscription } from 'rxjs';
|
|
8
|
+
import { HttpErrorResponse } from '@angular/common/http';
|
|
9
|
+
import * as i4 from '@angular/material/progress-spinner';
|
|
10
|
+
import * as i6 from '@angular/material/icon';
|
|
11
|
+
import { MatTabGroup } from '@angular/material/tabs';
|
|
12
|
+
import * as i3$1 from '@angular/material/snack-bar';
|
|
13
|
+
import { MatSnackBarRef, MatSnackBar, TextOnlySnackBar, MatSnackBarConfig } from '@angular/material/snack-bar';
|
|
14
|
+
|
|
15
|
+
interface NucDialogData {
|
|
16
|
+
/** Optional title for the dialog. */
|
|
17
|
+
title?: string;
|
|
18
|
+
/** Message for the dialog. */
|
|
19
|
+
message: string;
|
|
20
|
+
/** Action(s) (buttons) for the dialog. At least one is required. */
|
|
21
|
+
actions: NucAction[];
|
|
22
|
+
}
|
|
23
|
+
interface NucAction {
|
|
24
|
+
/** Text for the action (button). */
|
|
25
|
+
text: string;
|
|
26
|
+
/** Return value for the action (button). */
|
|
27
|
+
value?: any;
|
|
28
|
+
/** Optional color of the action (button). */
|
|
29
|
+
color?: NucColor;
|
|
30
|
+
}
|
|
31
|
+
declare enum NucColor {
|
|
32
|
+
/** Primary color of the theme. */
|
|
33
|
+
primary = "primary",
|
|
34
|
+
/** Accent color of the theme. */
|
|
35
|
+
accent = "accent",
|
|
36
|
+
/** Warning color of the theme. */
|
|
37
|
+
warn = "warn"
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
declare class NucDialogService {
|
|
41
|
+
private _matDialog;
|
|
42
|
+
constructor(_matDialog: MatDialog);
|
|
43
|
+
/**
|
|
44
|
+
* Opens a NucDialog with content from dialogData.
|
|
45
|
+
*
|
|
46
|
+
* @param dialogData NucDialogData containing title, message and possible actions.
|
|
47
|
+
* @param dialogConfig Extra configuration options. Data property is ignored, since it will be set to dialogData.
|
|
48
|
+
* @returns a promise with value that was specified inside pressed Nucleus action.
|
|
49
|
+
*/
|
|
50
|
+
open(dialogData: NucDialogData, dialogConfig?: MatDialogConfig): Promise<any>;
|
|
51
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<NucDialogService, never>;
|
|
52
|
+
static ɵprov: i0.ɵɵInjectableDeclaration<NucDialogService>;
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
declare class NucDialogComponent {
|
|
56
|
+
dialogRef: MatDialogRef<NucDialogComponent>;
|
|
57
|
+
dialogData: NucDialogData;
|
|
58
|
+
constructor(dialogRef: MatDialogRef<NucDialogComponent>, dialogData: NucDialogData);
|
|
59
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<NucDialogComponent, never>;
|
|
60
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<NucDialogComponent, "nuc-dialog", never, {}, {}, never, never, false, never>;
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
declare class NucDialogModule {
|
|
64
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<NucDialogModule, never>;
|
|
65
|
+
static ɵmod: i0.ɵɵNgModuleDeclaration<NucDialogModule, [typeof NucDialogComponent], [typeof i2.CommonModule, typeof i3.MatDialogModule, typeof i5.MatButtonModule], never>;
|
|
66
|
+
static ɵinj: i0.ɵɵInjectorDeclaration<NucDialogModule>;
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
declare enum LoadingStatus {
|
|
70
|
+
completed = 0,
|
|
71
|
+
inProgress = 1,
|
|
72
|
+
failed = 2,
|
|
73
|
+
undefined = 3
|
|
74
|
+
}
|
|
75
|
+
declare class LoadingState {
|
|
76
|
+
private _status;
|
|
77
|
+
private _initialMessage;
|
|
78
|
+
private _message?;
|
|
79
|
+
private _errorDetails?;
|
|
80
|
+
private _resultFunction?;
|
|
81
|
+
private _errorFunction?;
|
|
82
|
+
private _completeFunction?;
|
|
83
|
+
private _loadObservable;
|
|
84
|
+
private _lastSubscription;
|
|
85
|
+
get status(): LoadingStatus;
|
|
86
|
+
get message(): string | undefined;
|
|
87
|
+
get errorDetails(): string | undefined;
|
|
88
|
+
load<T>(observable: Observable<T>, resultFunction?: (result: T) => void, errorFunction?: (error: HttpErrorResponse) => void, completeFunction?: () => void): Subscription;
|
|
89
|
+
loadWithMessage<T>(observable: Observable<T>, message: string, resultFunction?: (result: T) => void, errorFunction?: (error: HttpErrorResponse) => void, completeFunction?: () => void): Subscription;
|
|
90
|
+
invoke<T>(observable: Observable<T>, resultFunction?: (result: T) => void, errorFunction?: (error: HttpErrorResponse) => void, completeFunction?: () => void): Subscription;
|
|
91
|
+
invokeWithMessage<T>(observable: Observable<T>, message: string, resultFunction?: (result: T) => void, errorFunction?: (error: HttpErrorResponse) => void, completeFunction?: () => void): Subscription;
|
|
92
|
+
retry(): Subscription;
|
|
93
|
+
setInProgress(message?: string): void;
|
|
94
|
+
setCompleted(): void;
|
|
95
|
+
setFailed(message?: string, error?: string): void;
|
|
96
|
+
private _load;
|
|
97
|
+
static getErrorDetails(error: any): any;
|
|
98
|
+
}
|
|
99
|
+
|
|
100
|
+
declare class NucLoadedContentComponent {
|
|
101
|
+
private _errorDetailsVisible;
|
|
102
|
+
completedTemplate: TemplateRef<any>;
|
|
103
|
+
errorTemplate: TemplateRef<any>;
|
|
104
|
+
inProgressTemplate: TemplateRef<any>;
|
|
105
|
+
state: LoadingState;
|
|
106
|
+
inProgressMessage?: string;
|
|
107
|
+
errorMessage: string;
|
|
108
|
+
showRetry: boolean;
|
|
109
|
+
get message(): string | null | undefined;
|
|
110
|
+
get showRetryButton(): boolean;
|
|
111
|
+
get inProgress(): boolean;
|
|
112
|
+
get failed(): boolean;
|
|
113
|
+
get completed(): boolean;
|
|
114
|
+
get errorDetailsVisible(): boolean;
|
|
115
|
+
showErrorDetails(): void;
|
|
116
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<NucLoadedContentComponent, never>;
|
|
117
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<NucLoadedContentComponent, "nuc-loaded-content-component", never, { "completedTemplate": { "alias": "completedTemplate"; "required": false; }; "errorTemplate": { "alias": "errorTemplate"; "required": false; }; "inProgressTemplate": { "alias": "inProgressTemplate"; "required": false; }; "state": { "alias": "state"; "required": false; }; "inProgressMessage": { "alias": "inProgressMessage"; "required": false; }; "errorMessage": { "alias": "errorMessage"; "required": false; }; "showRetry": { "alias": "showRetry"; "required": false; }; }, {}, never, never, false, never>;
|
|
118
|
+
}
|
|
119
|
+
|
|
120
|
+
declare class NucLoadedContentDirective {
|
|
121
|
+
private _viewContainer;
|
|
122
|
+
private templateRef;
|
|
123
|
+
private _state;
|
|
124
|
+
private _completedTemplateRef;
|
|
125
|
+
private _errorTemplateRef;
|
|
126
|
+
private _inProgressTemplateRef;
|
|
127
|
+
private _component;
|
|
128
|
+
constructor(_viewContainer: ViewContainerRef, templateRef: TemplateRef<any>);
|
|
129
|
+
set nucLoadedContent(state: LoadingState);
|
|
130
|
+
set errorTemplate(templateRef: TemplateRef<any> | null);
|
|
131
|
+
set inProgressTemplate(templateRef: TemplateRef<any> | null);
|
|
132
|
+
set inProgressMessage(inProgressMessage: string | null);
|
|
133
|
+
set errorMessage(errorMessage: string | null);
|
|
134
|
+
set showRetry(showRetry: boolean);
|
|
135
|
+
private _updateView;
|
|
136
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<NucLoadedContentDirective, never>;
|
|
137
|
+
static ɵdir: i0.ɵɵDirectiveDeclaration<NucLoadedContentDirective, "[nucLoadedContent]", never, { "nucLoadedContent": { "alias": "nucLoadedContent"; "required": false; }; "errorTemplate": { "alias": "nucLoadedContentError"; "required": false; }; "inProgressTemplate": { "alias": "nucLoadedContentInProgress"; "required": false; }; "inProgressMessage": { "alias": "nucLoadedContentInProgressMessage"; "required": false; }; "errorMessage": { "alias": "nucLoadedContentErrorMessage"; "required": false; }; "showRetry": { "alias": "nucLoadedContentShowRetry"; "required": false; }; }, {}, never, never, false, never>;
|
|
138
|
+
}
|
|
139
|
+
|
|
140
|
+
declare class NucLoadedContentModule {
|
|
141
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<NucLoadedContentModule, never>;
|
|
142
|
+
static ɵmod: i0.ɵɵNgModuleDeclaration<NucLoadedContentModule, [typeof NucLoadedContentDirective, typeof NucLoadedContentComponent], [typeof i2.CommonModule, typeof i4.MatProgressSpinnerModule, typeof i5.MatButtonModule, typeof i6.MatIconModule], [typeof NucLoadedContentDirective]>;
|
|
143
|
+
static ɵinj: i0.ɵɵInjectorDeclaration<NucLoadedContentModule>;
|
|
144
|
+
}
|
|
145
|
+
|
|
146
|
+
declare class NucSwipeTabsDirective implements OnInit {
|
|
147
|
+
private element;
|
|
148
|
+
private tabGroup;
|
|
149
|
+
constructor(element: ElementRef<EventTarget>, tabGroup: MatTabGroup);
|
|
150
|
+
ngOnInit(): void;
|
|
151
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<NucSwipeTabsDirective, never>;
|
|
152
|
+
static ɵdir: i0.ɵɵDirectiveDeclaration<NucSwipeTabsDirective, "[nucSwipe]", never, {}, {}, never, never, false, never>;
|
|
153
|
+
}
|
|
154
|
+
|
|
155
|
+
declare class NucSwipeTabsModule {
|
|
156
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<NucSwipeTabsModule, never>;
|
|
157
|
+
static ɵmod: i0.ɵɵNgModuleDeclaration<NucSwipeTabsModule, [typeof NucSwipeTabsDirective], [typeof i2.CommonModule], [typeof NucSwipeTabsDirective]>;
|
|
158
|
+
static ɵinj: i0.ɵɵInjectorDeclaration<NucSwipeTabsModule>;
|
|
159
|
+
}
|
|
160
|
+
|
|
161
|
+
declare enum NucSnackbarType {
|
|
162
|
+
Info = "info",
|
|
163
|
+
Warning = "warning",
|
|
164
|
+
Danger = "danger",
|
|
165
|
+
Success = "success",
|
|
166
|
+
Progress = "progress"
|
|
167
|
+
}
|
|
168
|
+
|
|
169
|
+
declare class ProgressSnackbarComponent implements AfterViewInit {
|
|
170
|
+
private snackBar;
|
|
171
|
+
data: any;
|
|
172
|
+
private elem;
|
|
173
|
+
constructor(snackBar: MatSnackBarRef<MatSnackBar>, data: any, elem: ElementRef);
|
|
174
|
+
ngAfterViewInit(): void;
|
|
175
|
+
actionClicked(): void;
|
|
176
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<ProgressSnackbarComponent, never>;
|
|
177
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<ProgressSnackbarComponent, "lib-progress-snackbar", never, {}, {}, never, never, false, never>;
|
|
178
|
+
}
|
|
179
|
+
|
|
180
|
+
declare class NucSnackbarService {
|
|
181
|
+
private matSnackBar;
|
|
182
|
+
constructor(matSnackBar: MatSnackBar);
|
|
183
|
+
openSnackbar(type: NucSnackbarType, message: string, action: string | null | undefined, duration: number): MatSnackBarRef<TextOnlySnackBar | ProgressSnackbarComponent>;
|
|
184
|
+
openSnackbarWithConfig(message: string, action: string | undefined, config: MatSnackBarConfig): MatSnackBarRef<TextOnlySnackBar>;
|
|
185
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<NucSnackbarService, never>;
|
|
186
|
+
static ɵprov: i0.ɵɵInjectableDeclaration<NucSnackbarService>;
|
|
187
|
+
}
|
|
188
|
+
|
|
189
|
+
declare class NucSnackbarModule {
|
|
190
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<NucSnackbarModule, never>;
|
|
191
|
+
static ɵmod: i0.ɵɵNgModuleDeclaration<NucSnackbarModule, [typeof ProgressSnackbarComponent], [typeof i2.CommonModule, typeof i3$1.MatSnackBarModule, typeof i4.MatProgressSpinnerModule, typeof i5.MatButtonModule], never>;
|
|
192
|
+
static ɵinj: i0.ɵɵInjectorDeclaration<NucSnackbarModule>;
|
|
193
|
+
}
|
|
194
|
+
|
|
195
|
+
type AvatarSize = 'small' | 'medium' | 'large' | 'xlarge';
|
|
196
|
+
type Background = true | false;
|
|
197
|
+
declare class NucUserAvatarComponent {
|
|
198
|
+
name: string;
|
|
199
|
+
image?: string;
|
|
200
|
+
size: AvatarSize;
|
|
201
|
+
background: Background;
|
|
202
|
+
getUserInitials(): string;
|
|
203
|
+
getHslString(): string;
|
|
204
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<NucUserAvatarComponent, never>;
|
|
205
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<NucUserAvatarComponent, "nuc-user-avatar", never, { "name": { "alias": "name"; "required": false; }; "image": { "alias": "image"; "required": false; }; "size": { "alias": "size"; "required": false; }; "background": { "alias": "background"; "required": false; }; }, {}, never, never, false, never>;
|
|
206
|
+
}
|
|
207
|
+
|
|
208
|
+
declare class NucUserAvatarModule {
|
|
209
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<NucUserAvatarModule, never>;
|
|
210
|
+
static ɵmod: i0.ɵɵNgModuleDeclaration<NucUserAvatarModule, [typeof NucUserAvatarComponent], [typeof i2.CommonModule], [typeof NucUserAvatarComponent]>;
|
|
211
|
+
static ɵinj: i0.ɵɵInjectorDeclaration<NucUserAvatarModule>;
|
|
212
|
+
}
|
|
213
|
+
|
|
214
|
+
export { LoadingState, LoadingStatus, NucColor, NucDialogModule, NucDialogService, NucLoadedContentComponent, NucLoadedContentDirective, NucLoadedContentModule, NucSnackbarModule, NucSnackbarService, NucSnackbarType, NucSwipeTabsDirective, NucSwipeTabsModule, NucUserAvatarComponent, NucUserAvatarModule };
|
|
215
|
+
export type { AvatarSize, Background, NucAction, NucDialogData };
|