@kolektor/nucleus-material 0.1.130-pre.1 → 0.1.207

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -2,6 +2,27 @@
2
2
 
3
3
  This library was generated with [Nx](https://nx.dev).
4
4
 
5
+ ## Overview
6
+
7
+ The Nucleus Material is a collection of Angular Material UI components designed to enhance the user interface of Angular applications. It includes the following elements:
8
+
9
+ - `NucDialogService` for opening and displaying custom nucleus dialogs.
10
+ - `*nucLoadedContent` structural directive: Manages the display of content based on observable state. It handles loading and error messages, actual content, and provides an option to retry failed requests.
11
+ - `NucSnackbarService`: for displaying different snackbars based on the passed configuration. It supports various types including info, warning, danger, success, and progress.
12
+ - `nucSwipe` attribute directive: An enhancement of the Angular Material Tab Group, it supports swipe gestures on touch devices for better navigation between tabs.
13
+ - `nuc-user-avatar` component: Displays the passed user picture, or generates one from the user’s name and surname.
14
+
15
+ These components provide a comprehensive set of tools for building interactive and responsive Angular applications.
16
+
17
+ ## Peer dependencies
18
+
19
+ The library has the following peer dependencies:
20
+ - `@angular/common`
21
+ - `@angular/core`
22
+ - `@angular/material`
23
+ - `rxjs`
24
+ - `hammerjs`
25
+
5
26
  ## Running unit tests
6
27
 
7
28
  Run `nx test nucleus-material` to execute the unit tests.
@@ -1,17 +1,16 @@
1
1
  /* eslint-disable @typescript-eslint/no-explicit-any */
2
- import { ComponentFactoryResolver, Directive, Input, TemplateRef, ViewContainerRef, } from '@angular/core';
2
+ import { Directive, Input, TemplateRef, ViewContainerRef } from '@angular/core';
3
3
  import { NucLoadedContentComponent } from './loaded-content-component';
4
4
  import { LoadingState } from './loading-state';
5
5
  import * as i0 from "@angular/core";
6
6
  // eslint-disable-next-line @angular-eslint/directive-selector
7
7
  export class NucLoadedContentDirective {
8
- constructor(_viewContainer, templateRef, _componentResolver) {
8
+ constructor(_viewContainer, templateRef) {
9
9
  this._viewContainer = _viewContainer;
10
10
  this.templateRef = templateRef;
11
- this._componentResolver = _componentResolver;
12
11
  this._errorTemplateRef = null;
13
12
  this._inProgressTemplateRef = null;
14
- this._completedTemplateRef = templateRef;
13
+ this._completedTemplateRef = this.templateRef;
15
14
  }
16
15
  set nucLoadedContent(state) {
17
16
  // add some error handling if state is null, etc.
@@ -39,8 +38,7 @@ export class NucLoadedContentDirective {
39
38
  }
40
39
  _updateView() {
41
40
  if (this._component == null) {
42
- const fac = this._componentResolver.resolveComponentFactory(NucLoadedContentComponent);
43
- this._component = this._viewContainer.createComponent(fac);
41
+ this._component = this._viewContainer.createComponent(NucLoadedContentComponent);
44
42
  }
45
43
  this._component.instance.state = this._state;
46
44
  this._component.instance.completedTemplate = this._completedTemplateRef;
@@ -51,13 +49,13 @@ export class NucLoadedContentDirective {
51
49
  this._component.instance.errorTemplate = this._errorTemplateRef;
52
50
  }
53
51
  }
54
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: NucLoadedContentDirective, deps: [{ token: i0.ViewContainerRef }, { token: i0.TemplateRef }, { token: i0.ComponentFactoryResolver }], target: i0.ɵɵFactoryTarget.Directive }); }
52
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: NucLoadedContentDirective, deps: [{ token: i0.ViewContainerRef }, { token: i0.TemplateRef }], target: i0.ɵɵFactoryTarget.Directive }); }
55
53
  static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: NucLoadedContentDirective, selector: "[nucLoadedContent]", inputs: { nucLoadedContent: "nucLoadedContent", errorTemplate: ["nucLoadedContentError", "errorTemplate"], inProgressTemplate: ["nucLoadedContentInProgress", "inProgressTemplate"], inProgressMessage: ["nucLoadedContentInProgressMessage", "inProgressMessage"], errorMessage: ["nucLoadedContentErrorMessage", "errorMessage"], showRetry: ["nucLoadedContentShowRetry", "showRetry"] }, ngImport: i0 }); }
56
54
  }
57
55
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: NucLoadedContentDirective, decorators: [{
58
56
  type: Directive,
59
57
  args: [{ selector: '[nucLoadedContent]' }]
60
- }], ctorParameters: function () { return [{ type: i0.ViewContainerRef }, { type: i0.TemplateRef }, { type: i0.ComponentFactoryResolver }]; }, propDecorators: { nucLoadedContent: [{
58
+ }], ctorParameters: function () { return [{ type: i0.ViewContainerRef }, { type: i0.TemplateRef }]; }, propDecorators: { nucLoadedContent: [{
61
59
  type: Input
62
60
  }], errorTemplate: [{
63
61
  type: Input,
@@ -75,4 +73,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
75
73
  type: Input,
76
74
  args: ['nucLoadedContentShowRetry']
77
75
  }] } });
78
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9hZGVkLWNvbnRlbnQtZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9uZy9udWNsZXVzL251Y2xldXMtbWF0ZXJpYWwvc3JjL2xpYi9sb2FkZWQtY29udGVudC9sb2FkZWQtY29udGVudC1kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsdURBQXVEO0FBQ3ZELE9BQU8sRUFDTCx3QkFBd0IsRUFFeEIsU0FBUyxFQUNULEtBQUssRUFDTCxXQUFXLEVBQ1gsZ0JBQWdCLEdBQ2pCLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ3ZFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQzs7QUFFL0MsOERBQThEO0FBRTlELE1BQU0sT0FBTyx5QkFBeUI7SUFPcEMsWUFDVSxjQUFnQyxFQUNoQyxXQUE2QixFQUM3QixrQkFBNEM7UUFGNUMsbUJBQWMsR0FBZCxjQUFjLENBQWtCO1FBQ2hDLGdCQUFXLEdBQVgsV0FBVyxDQUFrQjtRQUM3Qix1QkFBa0IsR0FBbEIsa0JBQWtCLENBQTBCO1FBUDlDLHNCQUFpQixHQUE0QixJQUFJLENBQUM7UUFDbEQsMkJBQXNCLEdBQTRCLElBQUksQ0FBQztRQVE3RCxJQUFJLENBQUMscUJBQXFCLEdBQUcsV0FBVyxDQUFDO0lBQzNDLENBQUM7SUFFRCxJQUNJLGdCQUFnQixDQUFDLEtBQW1CO1FBQ3RDLGlEQUFpRDtRQUNqRCxJQUFJLENBQUMsTUFBTSxHQUFHLEtBQUssQ0FBQztRQUNwQixJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7SUFDckIsQ0FBQztJQUVELDJEQUEyRDtJQUMzRCxJQUNJLGFBQWEsQ0FBQyxXQUFvQztRQUNwRCxJQUFJLENBQUMsaUJBQWlCLEdBQUcsV0FBVyxDQUFDO1FBQ3JDLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUNyQixDQUFDO0lBRUQsMkRBQTJEO0lBQzNELElBQ0ksa0JBQWtCLENBQUMsV0FBb0M7UUFDekQsSUFBSSxDQUFDLHNCQUFzQixHQUFHLFdBQVcsQ0FBQztRQUMxQyxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7SUFDckIsQ0FBQztJQUVELElBQ0ksaUJBQWlCLENBQUMsaUJBQXlCO1FBQzdDLElBQUksQ0FBQyxVQUFVLENBQUMsUUFBUSxDQUFDLGlCQUFpQixHQUFHLGlCQUFpQixDQUFDO0lBQ2pFLENBQUM7SUFFRCxJQUNJLFlBQVksQ0FBQyxZQUFvQjtRQUNuQyxJQUFJLENBQUMsVUFBVSxDQUFDLFFBQVEsQ0FBQyxZQUFZLEdBQUcsWUFBWSxDQUFDO0lBQ3ZELENBQUM7SUFFRCxJQUNJLFNBQVMsQ0FBQyxTQUFrQjtRQUM5QixJQUFJLENBQUMsVUFBVSxDQUFDLFFBQVEsQ0FBQyxTQUFTLEdBQUcsU0FBUyxDQUFDO0lBQ2pELENBQUM7SUFFTyxXQUFXO1FBQ2pCLElBQUksSUFBSSxDQUFDLFVBQVUsSUFBSSxJQUFJLEVBQUU7WUFDM0IsTUFBTSxHQUFHLEdBQUcsSUFBSSxDQUFDLGtCQUFrQixDQUFDLHVCQUF1QixDQUN6RCx5QkFBeUIsQ0FDMUIsQ0FBQztZQUNGLElBQUksQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQyxlQUFlLENBQUMsR0FBRyxDQUFDLENBQUM7U0FDNUQ7UUFFRCxJQUFJLENBQUMsVUFBVSxDQUFDLFFBQVEsQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQztRQUM3QyxJQUFJLENBQUMsVUFBVSxDQUFDLFFBQVEsQ0FBQyxpQkFBaUIsR0FBRyxJQUFJLENBQUMscUJBQXFCLENBQUM7UUFFeEUsSUFBSSxJQUFJLENBQUMsc0JBQXNCLEVBQUU7WUFDL0IsSUFBSSxDQUFDLFVBQVUsQ0FBQyxRQUFRLENBQUMsa0JBQWtCLEdBQUcsSUFBSSxDQUFDLHNCQUFzQixDQUFDO1NBQzNFO1FBRUQsSUFBSSxJQUFJLENBQUMsaUJBQWlCLEVBQUU7WUFDMUIsSUFBSSxDQUFDLFVBQVUsQ0FBQyxRQUFRLENBQUMsYUFBYSxHQUFHLElBQUksQ0FBQyxpQkFBaUIsQ0FBQztTQUNqRTtJQUNILENBQUM7K0dBckVVLHlCQUF5QjttR0FBekIseUJBQXlCOzs0RkFBekIseUJBQXlCO2tCQURyQyxTQUFTO21CQUFDLEVBQUUsUUFBUSxFQUFFLG9CQUFvQixFQUFFO3dLQWlCdkMsZ0JBQWdCO3NCQURuQixLQUFLO2dCQVNGLGFBQWE7c0JBRGhCLEtBQUs7dUJBQUMsdUJBQXVCO2dCQVExQixrQkFBa0I7c0JBRHJCLEtBQUs7dUJBQUMsNEJBQTRCO2dCQU8vQixpQkFBaUI7c0JBRHBCLEtBQUs7dUJBQUMsbUNBQW1DO2dCQU10QyxZQUFZO3NCQURmLEtBQUs7dUJBQUMsOEJBQThCO2dCQU1qQyxTQUFTO3NCQURaLEtBQUs7dUJBQUMsMkJBQTJCIiwic291cmNlc0NvbnRlbnQiOlsiLyogZXNsaW50LWRpc2FibGUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWV4cGxpY2l0LWFueSAqL1xuaW1wb3J0IHtcbiAgQ29tcG9uZW50RmFjdG9yeVJlc29sdmVyLFxuICBDb21wb25lbnRSZWYsXG4gIERpcmVjdGl2ZSxcbiAgSW5wdXQsXG4gIFRlbXBsYXRlUmVmLFxuICBWaWV3Q29udGFpbmVyUmVmLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE51Y0xvYWRlZENvbnRlbnRDb21wb25lbnQgfSBmcm9tICcuL2xvYWRlZC1jb250ZW50LWNvbXBvbmVudCc7XG5pbXBvcnQgeyBMb2FkaW5nU3RhdGUgfSBmcm9tICcuL2xvYWRpbmctc3RhdGUnO1xuXG4vLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L2RpcmVjdGl2ZS1zZWxlY3RvclxuQERpcmVjdGl2ZSh7IHNlbGVjdG9yOiAnW251Y0xvYWRlZENvbnRlbnRdJyB9KVxuZXhwb3J0IGNsYXNzIE51Y0xvYWRlZENvbnRlbnREaXJlY3RpdmUge1xuICBwcml2YXRlIF9zdGF0ZTogTG9hZGluZ1N0YXRlO1xuICBwcml2YXRlIF9jb21wbGV0ZWRUZW1wbGF0ZVJlZjogVGVtcGxhdGVSZWY8YW55PjtcbiAgcHJpdmF0ZSBfZXJyb3JUZW1wbGF0ZVJlZjogVGVtcGxhdGVSZWY8YW55PiB8IG51bGwgPSBudWxsO1xuICBwcml2YXRlIF9pblByb2dyZXNzVGVtcGxhdGVSZWY6IFRlbXBsYXRlUmVmPGFueT4gfCBudWxsID0gbnVsbDtcbiAgcHJpdmF0ZSBfY29tcG9uZW50OiBDb21wb25lbnRSZWY8TnVjTG9hZGVkQ29udGVudENvbXBvbmVudD47XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBfdmlld0NvbnRhaW5lcjogVmlld0NvbnRhaW5lclJlZixcbiAgICBwcml2YXRlIHRlbXBsYXRlUmVmOiBUZW1wbGF0ZVJlZjxhbnk+LFxuICAgIHByaXZhdGUgX2NvbXBvbmVudFJlc29sdmVyOiBDb21wb25lbnRGYWN0b3J5UmVzb2x2ZXJcbiAgKSB7XG4gICAgdGhpcy5fY29tcGxldGVkVGVtcGxhdGVSZWYgPSB0ZW1wbGF0ZVJlZjtcbiAgfVxuXG4gIEBJbnB1dCgpXG4gIHNldCBudWNMb2FkZWRDb250ZW50KHN0YXRlOiBMb2FkaW5nU3RhdGUpIHtcbiAgICAvLyBhZGQgc29tZSBlcnJvciBoYW5kbGluZyBpZiBzdGF0ZSBpcyBudWxsLCBldGMuXG4gICAgdGhpcy5fc3RhdGUgPSBzdGF0ZTtcbiAgICB0aGlzLl91cGRhdGVWaWV3KCk7XG4gIH1cblxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0LXJlbmFtZVxuICBASW5wdXQoJ251Y0xvYWRlZENvbnRlbnRFcnJvcicpXG4gIHNldCBlcnJvclRlbXBsYXRlKHRlbXBsYXRlUmVmOiBUZW1wbGF0ZVJlZjxhbnk+IHwgbnVsbCkge1xuICAgIHRoaXMuX2Vycm9yVGVtcGxhdGVSZWYgPSB0ZW1wbGF0ZVJlZjtcbiAgICB0aGlzLl91cGRhdGVWaWV3KCk7XG4gIH1cblxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0LXJlbmFtZVxuICBASW5wdXQoJ251Y0xvYWRlZENvbnRlbnRJblByb2dyZXNzJylcbiAgc2V0IGluUHJvZ3Jlc3NUZW1wbGF0ZSh0ZW1wbGF0ZVJlZjogVGVtcGxhdGVSZWY8YW55PiB8IG51bGwpIHtcbiAgICB0aGlzLl9pblByb2dyZXNzVGVtcGxhdGVSZWYgPSB0ZW1wbGF0ZVJlZjtcbiAgICB0aGlzLl91cGRhdGVWaWV3KCk7XG4gIH1cblxuICBASW5wdXQoJ251Y0xvYWRlZENvbnRlbnRJblByb2dyZXNzTWVzc2FnZScpXG4gIHNldCBpblByb2dyZXNzTWVzc2FnZShpblByb2dyZXNzTWVzc2FnZTogc3RyaW5nKSB7XG4gICAgdGhpcy5fY29tcG9uZW50Lmluc3RhbmNlLmluUHJvZ3Jlc3NNZXNzYWdlID0gaW5Qcm9ncmVzc01lc3NhZ2U7XG4gIH1cblxuICBASW5wdXQoJ251Y0xvYWRlZENvbnRlbnRFcnJvck1lc3NhZ2UnKVxuICBzZXQgZXJyb3JNZXNzYWdlKGVycm9yTWVzc2FnZTogc3RyaW5nKSB7XG4gICAgdGhpcy5fY29tcG9uZW50Lmluc3RhbmNlLmVycm9yTWVzc2FnZSA9IGVycm9yTWVzc2FnZTtcbiAgfVxuXG4gIEBJbnB1dCgnbnVjTG9hZGVkQ29udGVudFNob3dSZXRyeScpXG4gIHNldCBzaG93UmV0cnkoc2hvd1JldHJ5OiBib29sZWFuKSB7XG4gICAgdGhpcy5fY29tcG9uZW50Lmluc3RhbmNlLnNob3dSZXRyeSA9IHNob3dSZXRyeTtcbiAgfVxuXG4gIHByaXZhdGUgX3VwZGF0ZVZpZXcoKSB7XG4gICAgaWYgKHRoaXMuX2NvbXBvbmVudCA9PSBudWxsKSB7XG4gICAgICBjb25zdCBmYWMgPSB0aGlzLl9jb21wb25lbnRSZXNvbHZlci5yZXNvbHZlQ29tcG9uZW50RmFjdG9yeShcbiAgICAgICAgTnVjTG9hZGVkQ29udGVudENvbXBvbmVudFxuICAgICAgKTtcbiAgICAgIHRoaXMuX2NvbXBvbmVudCA9IHRoaXMuX3ZpZXdDb250YWluZXIuY3JlYXRlQ29tcG9uZW50KGZhYyk7XG4gICAgfVxuXG4gICAgdGhpcy5fY29tcG9uZW50Lmluc3RhbmNlLnN0YXRlID0gdGhpcy5fc3RhdGU7XG4gICAgdGhpcy5fY29tcG9uZW50Lmluc3RhbmNlLmNvbXBsZXRlZFRlbXBsYXRlID0gdGhpcy5fY29tcGxldGVkVGVtcGxhdGVSZWY7XG5cbiAgICBpZiAodGhpcy5faW5Qcm9ncmVzc1RlbXBsYXRlUmVmKSB7XG4gICAgICB0aGlzLl9jb21wb25lbnQuaW5zdGFuY2UuaW5Qcm9ncmVzc1RlbXBsYXRlID0gdGhpcy5faW5Qcm9ncmVzc1RlbXBsYXRlUmVmO1xuICAgIH1cblxuICAgIGlmICh0aGlzLl9lcnJvclRlbXBsYXRlUmVmKSB7XG4gICAgICB0aGlzLl9jb21wb25lbnQuaW5zdGFuY2UuZXJyb3JUZW1wbGF0ZSA9IHRoaXMuX2Vycm9yVGVtcGxhdGVSZWY7XG4gICAgfVxuICB9XG59XG4iXX0=
76
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9hZGVkLWNvbnRlbnQtZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9uZy9udWNsZXVzL251Y2xldXMtbWF0ZXJpYWwvc3JjL2xpYi9sb2FkZWQtY29udGVudC9sb2FkZWQtY29udGVudC1kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsdURBQXVEO0FBQ3ZELE9BQU8sRUFFTCxTQUFTLEVBQ1QsS0FBSyxFQUNMLFdBQVcsRUFDWCxnQkFBZ0IsRUFDakIsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDdkUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDOztBQUUvQyw4REFBOEQ7QUFFOUQsTUFBTSxPQUFPLHlCQUF5QjtJQU9wQyxZQUNVLGNBQWdDLEVBQ2hDLFdBQTZCO1FBRDdCLG1CQUFjLEdBQWQsY0FBYyxDQUFrQjtRQUNoQyxnQkFBVyxHQUFYLFdBQVcsQ0FBa0I7UUFOL0Isc0JBQWlCLEdBQTRCLElBQUksQ0FBQztRQUNsRCwyQkFBc0IsR0FBNEIsSUFBSSxDQUFDO1FBTzdELElBQUksQ0FBQyxxQkFBcUIsR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDO0lBQ2hELENBQUM7SUFFRCxJQUNJLGdCQUFnQixDQUFDLEtBQW1CO1FBQ3RDLGlEQUFpRDtRQUNqRCxJQUFJLENBQUMsTUFBTSxHQUFHLEtBQUssQ0FBQztRQUNwQixJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7SUFDckIsQ0FBQztJQUVELDJEQUEyRDtJQUMzRCxJQUNJLGFBQWEsQ0FBQyxXQUFvQztRQUNwRCxJQUFJLENBQUMsaUJBQWlCLEdBQUcsV0FBVyxDQUFDO1FBQ3JDLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUNyQixDQUFDO0lBRUQsMkRBQTJEO0lBQzNELElBQ0ksa0JBQWtCLENBQUMsV0FBb0M7UUFDekQsSUFBSSxDQUFDLHNCQUFzQixHQUFHLFdBQVcsQ0FBQztRQUMxQyxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7SUFDckIsQ0FBQztJQUVELElBQ0ksaUJBQWlCLENBQUMsaUJBQXlCO1FBQzdDLElBQUksQ0FBQyxVQUFVLENBQUMsUUFBUSxDQUFDLGlCQUFpQixHQUFHLGlCQUFpQixDQUFDO0lBQ2pFLENBQUM7SUFFRCxJQUNJLFlBQVksQ0FBQyxZQUFvQjtRQUNuQyxJQUFJLENBQUMsVUFBVSxDQUFDLFFBQVEsQ0FBQyxZQUFZLEdBQUcsWUFBWSxDQUFDO0lBQ3ZELENBQUM7SUFFRCxJQUNJLFNBQVMsQ0FBQyxTQUFrQjtRQUM5QixJQUFJLENBQUMsVUFBVSxDQUFDLFFBQVEsQ0FBQyxTQUFTLEdBQUcsU0FBUyxDQUFDO0lBQ2pELENBQUM7SUFFTyxXQUFXO1FBQ2pCLElBQUksSUFBSSxDQUFDLFVBQVUsSUFBSSxJQUFJLEVBQUU7WUFDM0IsSUFBSSxDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDLGVBQWUsQ0FBQyx5QkFBeUIsQ0FBQyxDQUFDO1NBQ2xGO1FBRUQsSUFBSSxDQUFDLFVBQVUsQ0FBQyxRQUFRLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUM7UUFDN0MsSUFBSSxDQUFDLFVBQVUsQ0FBQyxRQUFRLENBQUMsaUJBQWlCLEdBQUcsSUFBSSxDQUFDLHFCQUFxQixDQUFDO1FBRXhFLElBQUksSUFBSSxDQUFDLHNCQUFzQixFQUFFO1lBQy9CLElBQUksQ0FBQyxVQUFVLENBQUMsUUFBUSxDQUFDLGtCQUFrQixHQUFHLElBQUksQ0FBQyxzQkFBc0IsQ0FBQztTQUMzRTtRQUVELElBQUksSUFBSSxDQUFDLGlCQUFpQixFQUFFO1lBQzFCLElBQUksQ0FBQyxVQUFVLENBQUMsUUFBUSxDQUFDLGFBQWEsR0FBRyxJQUFJLENBQUMsaUJBQWlCLENBQUM7U0FDakU7SUFDSCxDQUFDOytHQWpFVSx5QkFBeUI7bUdBQXpCLHlCQUF5Qjs7NEZBQXpCLHlCQUF5QjtrQkFEckMsU0FBUzttQkFBQyxFQUFFLFFBQVEsRUFBRSxvQkFBb0IsRUFBRTtpSUFnQnZDLGdCQUFnQjtzQkFEbkIsS0FBSztnQkFTRixhQUFhO3NCQURoQixLQUFLO3VCQUFDLHVCQUF1QjtnQkFRMUIsa0JBQWtCO3NCQURyQixLQUFLO3VCQUFDLDRCQUE0QjtnQkFPL0IsaUJBQWlCO3NCQURwQixLQUFLO3VCQUFDLG1DQUFtQztnQkFNdEMsWUFBWTtzQkFEZixLQUFLO3VCQUFDLDhCQUE4QjtnQkFNakMsU0FBUztzQkFEWixLQUFLO3VCQUFDLDJCQUEyQiIsInNvdXJjZXNDb250ZW50IjpbIi8qIGVzbGludC1kaXNhYmxlIEB0eXBlc2NyaXB0LWVzbGludC9uby1leHBsaWNpdC1hbnkgKi9cbmltcG9ydCB7XG4gIENvbXBvbmVudFJlZixcbiAgRGlyZWN0aXZlLFxuICBJbnB1dCxcbiAgVGVtcGxhdGVSZWYsXG4gIFZpZXdDb250YWluZXJSZWZcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBOdWNMb2FkZWRDb250ZW50Q29tcG9uZW50IH0gZnJvbSAnLi9sb2FkZWQtY29udGVudC1jb21wb25lbnQnO1xuaW1wb3J0IHsgTG9hZGluZ1N0YXRlIH0gZnJvbSAnLi9sb2FkaW5nLXN0YXRlJztcblxuLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9kaXJlY3RpdmUtc2VsZWN0b3JcbkBEaXJlY3RpdmUoeyBzZWxlY3RvcjogJ1tudWNMb2FkZWRDb250ZW50XScgfSlcbmV4cG9ydCBjbGFzcyBOdWNMb2FkZWRDb250ZW50RGlyZWN0aXZlIHtcbiAgcHJpdmF0ZSBfc3RhdGU6IExvYWRpbmdTdGF0ZTtcbiAgcHJpdmF0ZSBfY29tcGxldGVkVGVtcGxhdGVSZWY6IFRlbXBsYXRlUmVmPGFueT47XG4gIHByaXZhdGUgX2Vycm9yVGVtcGxhdGVSZWY6IFRlbXBsYXRlUmVmPGFueT4gfCBudWxsID0gbnVsbDtcbiAgcHJpdmF0ZSBfaW5Qcm9ncmVzc1RlbXBsYXRlUmVmOiBUZW1wbGF0ZVJlZjxhbnk+IHwgbnVsbCA9IG51bGw7XG4gIHByaXZhdGUgX2NvbXBvbmVudDogQ29tcG9uZW50UmVmPE51Y0xvYWRlZENvbnRlbnRDb21wb25lbnQ+O1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgX3ZpZXdDb250YWluZXI6IFZpZXdDb250YWluZXJSZWYsXG4gICAgcHJpdmF0ZSB0ZW1wbGF0ZVJlZjogVGVtcGxhdGVSZWY8YW55PlxuICApIHtcbiAgICB0aGlzLl9jb21wbGV0ZWRUZW1wbGF0ZVJlZiA9IHRoaXMudGVtcGxhdGVSZWY7XG4gIH1cblxuICBASW5wdXQoKVxuICBzZXQgbnVjTG9hZGVkQ29udGVudChzdGF0ZTogTG9hZGluZ1N0YXRlKSB7XG4gICAgLy8gYWRkIHNvbWUgZXJyb3IgaGFuZGxpbmcgaWYgc3RhdGUgaXMgbnVsbCwgZXRjLlxuICAgIHRoaXMuX3N0YXRlID0gc3RhdGU7XG4gICAgdGhpcy5fdXBkYXRlVmlldygpO1xuICB9XG5cbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dC1yZW5hbWVcbiAgQElucHV0KCdudWNMb2FkZWRDb250ZW50RXJyb3InKVxuICBzZXQgZXJyb3JUZW1wbGF0ZSh0ZW1wbGF0ZVJlZjogVGVtcGxhdGVSZWY8YW55PiB8IG51bGwpIHtcbiAgICB0aGlzLl9lcnJvclRlbXBsYXRlUmVmID0gdGVtcGxhdGVSZWY7XG4gICAgdGhpcy5fdXBkYXRlVmlldygpO1xuICB9XG5cbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dC1yZW5hbWVcbiAgQElucHV0KCdudWNMb2FkZWRDb250ZW50SW5Qcm9ncmVzcycpXG4gIHNldCBpblByb2dyZXNzVGVtcGxhdGUodGVtcGxhdGVSZWY6IFRlbXBsYXRlUmVmPGFueT4gfCBudWxsKSB7XG4gICAgdGhpcy5faW5Qcm9ncmVzc1RlbXBsYXRlUmVmID0gdGVtcGxhdGVSZWY7XG4gICAgdGhpcy5fdXBkYXRlVmlldygpO1xuICB9XG5cbiAgQElucHV0KCdudWNMb2FkZWRDb250ZW50SW5Qcm9ncmVzc01lc3NhZ2UnKVxuICBzZXQgaW5Qcm9ncmVzc01lc3NhZ2UoaW5Qcm9ncmVzc01lc3NhZ2U6IHN0cmluZykge1xuICAgIHRoaXMuX2NvbXBvbmVudC5pbnN0YW5jZS5pblByb2dyZXNzTWVzc2FnZSA9IGluUHJvZ3Jlc3NNZXNzYWdlO1xuICB9XG5cbiAgQElucHV0KCdudWNMb2FkZWRDb250ZW50RXJyb3JNZXNzYWdlJylcbiAgc2V0IGVycm9yTWVzc2FnZShlcnJvck1lc3NhZ2U6IHN0cmluZykge1xuICAgIHRoaXMuX2NvbXBvbmVudC5pbnN0YW5jZS5lcnJvck1lc3NhZ2UgPSBlcnJvck1lc3NhZ2U7XG4gIH1cblxuICBASW5wdXQoJ251Y0xvYWRlZENvbnRlbnRTaG93UmV0cnknKVxuICBzZXQgc2hvd1JldHJ5KHNob3dSZXRyeTogYm9vbGVhbikge1xuICAgIHRoaXMuX2NvbXBvbmVudC5pbnN0YW5jZS5zaG93UmV0cnkgPSBzaG93UmV0cnk7XG4gIH1cblxuICBwcml2YXRlIF91cGRhdGVWaWV3KCkge1xuICAgIGlmICh0aGlzLl9jb21wb25lbnQgPT0gbnVsbCkge1xuICAgICAgdGhpcy5fY29tcG9uZW50ID0gdGhpcy5fdmlld0NvbnRhaW5lci5jcmVhdGVDb21wb25lbnQoTnVjTG9hZGVkQ29udGVudENvbXBvbmVudCk7XG4gICAgfVxuXG4gICAgdGhpcy5fY29tcG9uZW50Lmluc3RhbmNlLnN0YXRlID0gdGhpcy5fc3RhdGU7XG4gICAgdGhpcy5fY29tcG9uZW50Lmluc3RhbmNlLmNvbXBsZXRlZFRlbXBsYXRlID0gdGhpcy5fY29tcGxldGVkVGVtcGxhdGVSZWY7XG5cbiAgICBpZiAodGhpcy5faW5Qcm9ncmVzc1RlbXBsYXRlUmVmKSB7XG4gICAgICB0aGlzLl9jb21wb25lbnQuaW5zdGFuY2UuaW5Qcm9ncmVzc1RlbXBsYXRlID0gdGhpcy5faW5Qcm9ncmVzc1RlbXBsYXRlUmVmO1xuICAgIH1cblxuICAgIGlmICh0aGlzLl9lcnJvclRlbXBsYXRlUmVmKSB7XG4gICAgICB0aGlzLl9jb21wb25lbnQuaW5zdGFuY2UuZXJyb3JUZW1wbGF0ZSA9IHRoaXMuX2Vycm9yVGVtcGxhdGVSZWY7XG4gICAgfVxuICB9XG59XG4iXX0=
@@ -35,11 +35,11 @@ export class NucUserAvatarComponent {
35
35
  return `hsl(${hue},${saturation}%,${lightness}%)`;
36
36
  }
37
37
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: NucUserAvatarComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
38
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: NucUserAvatarComponent, selector: "nuc-user-avatar", inputs: { name: "name", image: "image", size: "size", background: "background" }, ngImport: i0, template: "<ng-container *ngIf=\"image\">\n <div class=\"user-avatar size-{{size}}\">\n <img src=\"{{image}}\" />\n </div>\n</ng-container>\n\n<ng-container *ngIf=\"!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</ng-container>\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;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.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] }); }
38
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: NucUserAvatarComponent, selector: "nuc-user-avatar", inputs: { name: "name", image: "image", size: "size", background: "background" }, ngImport: i0, template: "<div *ngIf=\"image\" class=\"user-avatar size-{{size}}\">\n <img src=\"{{image}}\" />\n</div>\n\n<div\n *ngIf=\"!image\"\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", 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;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.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] }); }
39
39
  }
40
40
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: NucUserAvatarComponent, decorators: [{
41
41
  type: Component,
42
- args: [{ selector: 'nuc-user-avatar', template: "<ng-container *ngIf=\"image\">\n <div class=\"user-avatar size-{{size}}\">\n <img src=\"{{image}}\" />\n </div>\n</ng-container>\n\n<ng-container *ngIf=\"!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</ng-container>\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;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"] }]
42
+ args: [{ selector: 'nuc-user-avatar', template: "<div *ngIf=\"image\" class=\"user-avatar size-{{size}}\">\n <img src=\"{{image}}\" />\n</div>\n\n<div\n *ngIf=\"!image\"\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", 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;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"] }]
43
43
  }], propDecorators: { name: [{
44
44
  type: Input
45
45
  }], image: [{
@@ -49,4 +49,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
49
49
  }], background: [{
50
50
  type: Input
51
51
  }] } });
52
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlci1hdmF0YXItY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9uZy9udWNsZXVzL251Y2xldXMtbWF0ZXJpYWwvc3JjL2xpYi91c2VyLWF2YXRhci91c2VyLWF2YXRhci1jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL25nL251Y2xldXMvbnVjbGV1cy1tYXRlcmlhbC9zcmMvbGliL3VzZXItYXZhdGFyL3VzZXItYXZhdGFyLWNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7QUFVakQsTUFBTSxPQUFPLHNCQUFzQjtJQU5uQztRQVNXLFNBQUksR0FBZSxRQUFRLENBQUM7UUFDNUIsZUFBVSxHQUFlLEtBQUssQ0FBQztLQXFDekM7SUFuQ0MsZUFBZTtRQUNiLE1BQU0sU0FBUyxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQ3ZDLE9BQU8sQ0FDTCxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLFdBQVcsRUFBRTtZQUNwQyxFQUFFO1lBQ0YsU0FBUyxDQUFDLFNBQVMsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLFdBQVcsRUFBRSxDQUN4RCxDQUFDO0lBQ0osQ0FBQztJQUVELFlBQVk7UUFDVixJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVUsRUFBRTtZQUNwQixPQUFPLE9BQU8sQ0FBQyxJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQztTQUNsQztRQUVELElBQUksSUFBSSxHQUFHLENBQUMsQ0FBQztRQUNiLEtBQUssSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDLEVBQUUsRUFBRTtZQUN6Qzs7Ozs7OztlQU9HO1lBQ0gsc0NBQXNDO1lBQ3RDLElBQUksR0FBRyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFJLElBQUksRUFBRSxDQUFDLEdBQUcsSUFBSSxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUM7U0FDOUQ7UUFFRCxNQUFNLEdBQUcsR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLElBQUksR0FBRyxHQUFHLENBQUMsQ0FBQztRQUVqQyxNQUFNLFNBQVMsR0FBRyxJQUFJLENBQUM7UUFDdkIsTUFBTSxVQUFVLEdBQUcsSUFBSSxDQUFDO1FBRXhCLE9BQU8sT0FBTyxHQUFHLElBQUksVUFBVSxLQUFLLFNBQVMsSUFBSSxDQUFDO0lBQ3BELENBQUM7K0dBeENVLHNCQUFzQjttR0FBdEIsc0JBQXNCLHlJQ1ZuQyxzYUFlQTs7NEZETGEsc0JBQXNCO2tCQU5sQyxTQUFTOytCQUVFLGlCQUFpQjs4QkFLbEIsSUFBSTtzQkFBWixLQUFLO2dCQUNHLEtBQUs7c0JBQWIsS0FBSztnQkFDRyxJQUFJO3NCQUFaLEtBQUs7Z0JBQ0csVUFBVTtzQkFBbEIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmV4cG9ydCB0eXBlIEF2YXRhclNpemUgPSAnc21hbGwnIHwgJ21lZGl1bScgfCAnbGFyZ2UnIHwgJ3hsYXJnZSc7XG5leHBvcnQgdHlwZSBCYWNrZ3JvdW5kID0gdHJ1ZSB8IGZhbHNlO1xuXG5AQ29tcG9uZW50KHtcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9jb21wb25lbnQtc2VsZWN0b3JcbiAgc2VsZWN0b3I6ICdudWMtdXNlci1hdmF0YXInLFxuICB0ZW1wbGF0ZVVybDogJy4vdXNlci1hdmF0YXItY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi91c2VyLWF2YXRhci1jb21wb25lbnQuc2NzcyddLFxufSlcbmV4cG9ydCBjbGFzcyBOdWNVc2VyQXZhdGFyQ29tcG9uZW50IHtcbiAgQElucHV0KCkgbmFtZTogc3RyaW5nO1xuICBASW5wdXQoKSBpbWFnZTogc3RyaW5nO1xuICBASW5wdXQoKSBzaXplOiBBdmF0YXJTaXplID0gJ21lZGl1bSc7XG4gIEBJbnB1dCgpIGJhY2tncm91bmQ6IEJhY2tncm91bmQgPSBmYWxzZTtcblxuICBnZXRVc2VySW5pdGlhbHMoKSB7XG4gICAgY29uc3QgbmFtZVBhcnRzID0gdGhpcy5uYW1lLnNwbGl0KCcgJyk7XG4gICAgcmV0dXJuIChcbiAgICAgIG5hbWVQYXJ0c1swXS5jaGFyQXQoMCkudG9VcHBlckNhc2UoKSArXG4gICAgICAnJyArXG4gICAgICBuYW1lUGFydHNbbmFtZVBhcnRzLmxlbmd0aCAtIDFdLmNoYXJBdCgwKS50b1VwcGVyQ2FzZSgpXG4gICAgKTtcbiAgfVxuXG4gIGdldEhzbFN0cmluZygpOiBzdHJpbmcge1xuICAgIGlmICghdGhpcy5iYWNrZ3JvdW5kKSB7XG4gICAgICByZXR1cm4gYGhzbCgkezB9LCR7MH0lLCR7MTAwfSUpYDtcbiAgICB9XG5cbiAgICBsZXQgaGFzaCA9IDA7XG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCB0aGlzLm5hbWUubGVuZ3RoOyBpKyspIHtcbiAgICAgIC8qXG4gICAgICAgKiBKYXZhc2NyaXB0IHVzZXMgZG91YmxlIHByZWNpc2lvbiBmbG9hdGluZy1wb2ludCBmb3JtYXQgZm9yIGFsbCBudW1lcmljYWwgZGF0YXR5cGVzLlxuICAgICAgICogRXhjZXB0IHdoZW4gdXNpbmcgYml0d2lzZSBvcGVyYXRpb25zLCB3aGVyZSBvcGVyYXRvcnMgYXJlIGNvbnZlcnRlZCB0byAzMi1iaXQgc2lnbmVkIGludGVnZXJzLlxuICAgICAgICogUmVzdWx0IG9mIGJpdHdpc2Ugb3BlcmF0aW9ucyBhcmUgdGhlbiBjb252ZXJ0ZWQgYmFjayB0byBkb3VibGUgcHJlY2lzaW9uIGZsb2F0aW5nLXBvaW50IGZvcm1hdC5cbiAgICAgICAqXG4gICAgICAgKiBXZSBtYWtlIGEgYml0d2lzZSBPUiBvcGVyYXRpb24gYmV0d2VlbiB0aGUgbmV3IGhhc2ggYW5kIDAuXG4gICAgICAgKiBUaGlzIGtlZXBzIG9ubHkgdGhlIGxvd2VyIDMyIGJpdHMgaW4gdGhlIG5ldyBoYXNoIHZhbHVlLlxuICAgICAgICovXG4gICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tYml0d2lzZVxuICAgICAgaGFzaCA9ICh0aGlzLm5hbWUuY2hhckNvZGVBdChpKSArICgoaGFzaCA8PCAxNSkgLSBoYXNoKSkgfCAwO1xuICAgIH1cblxuICAgIGNvbnN0IGh1ZSA9IE1hdGguYWJzKGhhc2ggJSAzNjApO1xuXG4gICAgY29uc3QgbGlnaHRuZXNzID0gNDkuMjtcbiAgICBjb25zdCBzYXR1cmF0aW9uID0gNDIuNjtcblxuICAgIHJldHVybiBgaHNsKCR7aHVlfSwke3NhdHVyYXRpb259JSwke2xpZ2h0bmVzc30lKWA7XG4gIH1cbn1cbiIsIjxuZy1jb250YWluZXIgKm5nSWY9XCJpbWFnZVwiPlxuICA8ZGl2IGNsYXNzPVwidXNlci1hdmF0YXIgc2l6ZS17e3NpemV9fVwiPlxuICAgIDxpbWcgc3JjPVwie3tpbWFnZX19XCIgLz5cbiAgPC9kaXY+XG48L25nLWNvbnRhaW5lcj5cblxuPG5nLWNvbnRhaW5lciAqbmdJZj1cIiFpbWFnZVwiPlxuICA8ZGl2XG4gICAgY2xhc3M9XCJ1c2VyLWF2YXRhciBzaXplLXt7c2l6ZX19IHVuc2VsZWN0YWJsZVwiXG4gICAgW3N0eWxlLmJhY2tncm91bmQtY29sb3JdPVwiZ2V0SHNsU3RyaW5nKClcIlxuICAgIFtuZ0NsYXNzXT1cInsnd2hpdGUtdGV4dCc6IGJhY2tncm91bmQsICdibGFjay10ZXh0IGJvcmRlcic6ICFiYWNrZ3JvdW5kfVwiXG4gID5cbiAgICB7e2dldFVzZXJJbml0aWFscygpfX1cbiAgPC9kaXY+XG48L25nLWNvbnRhaW5lcj5cbiJdfQ==
52
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlci1hdmF0YXItY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9uZy9udWNsZXVzL251Y2xldXMtbWF0ZXJpYWwvc3JjL2xpYi91c2VyLWF2YXRhci91c2VyLWF2YXRhci1jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL25nL251Y2xldXMvbnVjbGV1cy1tYXRlcmlhbC9zcmMvbGliL3VzZXItYXZhdGFyL3VzZXItYXZhdGFyLWNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7QUFVakQsTUFBTSxPQUFPLHNCQUFzQjtJQU5uQztRQVNXLFNBQUksR0FBZSxRQUFRLENBQUM7UUFDNUIsZUFBVSxHQUFlLEtBQUssQ0FBQztLQXFDekM7SUFuQ0MsZUFBZTtRQUNiLE1BQU0sU0FBUyxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQ3ZDLE9BQU8sQ0FDTCxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLFdBQVcsRUFBRTtZQUNwQyxFQUFFO1lBQ0YsU0FBUyxDQUFDLFNBQVMsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLFdBQVcsRUFBRSxDQUN4RCxDQUFDO0lBQ0osQ0FBQztJQUVELFlBQVk7UUFDVixJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVUsRUFBRTtZQUNwQixPQUFPLE9BQU8sQ0FBQyxJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQztTQUNsQztRQUVELElBQUksSUFBSSxHQUFHLENBQUMsQ0FBQztRQUNiLEtBQUssSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDLEVBQUUsRUFBRTtZQUN6Qzs7Ozs7OztlQU9HO1lBQ0gsc0NBQXNDO1lBQ3RDLElBQUksR0FBRyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFJLElBQUksRUFBRSxDQUFDLEdBQUcsSUFBSSxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUM7U0FDOUQ7UUFFRCxNQUFNLEdBQUcsR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLElBQUksR0FBRyxHQUFHLENBQUMsQ0FBQztRQUVqQyxNQUFNLFNBQVMsR0FBRyxJQUFJLENBQUM7UUFDdkIsTUFBTSxVQUFVLEdBQUcsSUFBSSxDQUFDO1FBRXhCLE9BQU8sT0FBTyxHQUFHLElBQUksVUFBVSxLQUFLLFNBQVMsSUFBSSxDQUFDO0lBQ3BELENBQUM7K0dBeENVLHNCQUFzQjttR0FBdEIsc0JBQXNCLHlJQ1ZuQyxtVkFZQTs7NEZERmEsc0JBQXNCO2tCQU5sQyxTQUFTOytCQUVFLGlCQUFpQjs4QkFLbEIsSUFBSTtzQkFBWixLQUFLO2dCQUNHLEtBQUs7c0JBQWIsS0FBSztnQkFDRyxJQUFJO3NCQUFaLEtBQUs7Z0JBQ0csVUFBVTtzQkFBbEIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmV4cG9ydCB0eXBlIEF2YXRhclNpemUgPSAnc21hbGwnIHwgJ21lZGl1bScgfCAnbGFyZ2UnIHwgJ3hsYXJnZSc7XG5leHBvcnQgdHlwZSBCYWNrZ3JvdW5kID0gdHJ1ZSB8IGZhbHNlO1xuXG5AQ29tcG9uZW50KHtcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9jb21wb25lbnQtc2VsZWN0b3JcbiAgc2VsZWN0b3I6ICdudWMtdXNlci1hdmF0YXInLFxuICB0ZW1wbGF0ZVVybDogJy4vdXNlci1hdmF0YXItY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi91c2VyLWF2YXRhci1jb21wb25lbnQuc2NzcyddLFxufSlcbmV4cG9ydCBjbGFzcyBOdWNVc2VyQXZhdGFyQ29tcG9uZW50IHtcbiAgQElucHV0KCkgbmFtZTogc3RyaW5nO1xuICBASW5wdXQoKSBpbWFnZTogc3RyaW5nO1xuICBASW5wdXQoKSBzaXplOiBBdmF0YXJTaXplID0gJ21lZGl1bSc7XG4gIEBJbnB1dCgpIGJhY2tncm91bmQ6IEJhY2tncm91bmQgPSBmYWxzZTtcblxuICBnZXRVc2VySW5pdGlhbHMoKSB7XG4gICAgY29uc3QgbmFtZVBhcnRzID0gdGhpcy5uYW1lLnNwbGl0KCcgJyk7XG4gICAgcmV0dXJuIChcbiAgICAgIG5hbWVQYXJ0c1swXS5jaGFyQXQoMCkudG9VcHBlckNhc2UoKSArXG4gICAgICAnJyArXG4gICAgICBuYW1lUGFydHNbbmFtZVBhcnRzLmxlbmd0aCAtIDFdLmNoYXJBdCgwKS50b1VwcGVyQ2FzZSgpXG4gICAgKTtcbiAgfVxuXG4gIGdldEhzbFN0cmluZygpOiBzdHJpbmcge1xuICAgIGlmICghdGhpcy5iYWNrZ3JvdW5kKSB7XG4gICAgICByZXR1cm4gYGhzbCgkezB9LCR7MH0lLCR7MTAwfSUpYDtcbiAgICB9XG5cbiAgICBsZXQgaGFzaCA9IDA7XG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCB0aGlzLm5hbWUubGVuZ3RoOyBpKyspIHtcbiAgICAgIC8qXG4gICAgICAgKiBKYXZhc2NyaXB0IHVzZXMgZG91YmxlIHByZWNpc2lvbiBmbG9hdGluZy1wb2ludCBmb3JtYXQgZm9yIGFsbCBudW1lcmljYWwgZGF0YXR5cGVzLlxuICAgICAgICogRXhjZXB0IHdoZW4gdXNpbmcgYml0d2lzZSBvcGVyYXRpb25zLCB3aGVyZSBvcGVyYXRvcnMgYXJlIGNvbnZlcnRlZCB0byAzMi1iaXQgc2lnbmVkIGludGVnZXJzLlxuICAgICAgICogUmVzdWx0IG9mIGJpdHdpc2Ugb3BlcmF0aW9ucyBhcmUgdGhlbiBjb252ZXJ0ZWQgYmFjayB0byBkb3VibGUgcHJlY2lzaW9uIGZsb2F0aW5nLXBvaW50IGZvcm1hdC5cbiAgICAgICAqXG4gICAgICAgKiBXZSBtYWtlIGEgYml0d2lzZSBPUiBvcGVyYXRpb24gYmV0d2VlbiB0aGUgbmV3IGhhc2ggYW5kIDAuXG4gICAgICAgKiBUaGlzIGtlZXBzIG9ubHkgdGhlIGxvd2VyIDMyIGJpdHMgaW4gdGhlIG5ldyBoYXNoIHZhbHVlLlxuICAgICAgICovXG4gICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tYml0d2lzZVxuICAgICAgaGFzaCA9ICh0aGlzLm5hbWUuY2hhckNvZGVBdChpKSArICgoaGFzaCA8PCAxNSkgLSBoYXNoKSkgfCAwO1xuICAgIH1cblxuICAgIGNvbnN0IGh1ZSA9IE1hdGguYWJzKGhhc2ggJSAzNjApO1xuXG4gICAgY29uc3QgbGlnaHRuZXNzID0gNDkuMjtcbiAgICBjb25zdCBzYXR1cmF0aW9uID0gNDIuNjtcblxuICAgIHJldHVybiBgaHNsKCR7aHVlfSwke3NhdHVyYXRpb259JSwke2xpZ2h0bmVzc30lKWA7XG4gIH1cbn1cbiIsIjxkaXYgKm5nSWY9XCJpbWFnZVwiIGNsYXNzPVwidXNlci1hdmF0YXIgc2l6ZS17e3NpemV9fVwiPlxuICA8aW1nIHNyYz1cInt7aW1hZ2V9fVwiIC8+XG48L2Rpdj5cblxuPGRpdlxuICAqbmdJZj1cIiFpbWFnZVwiXG4gIGNsYXNzPVwidXNlci1hdmF0YXIgc2l6ZS17e3NpemV9fSB1bnNlbGVjdGFibGVcIlxuICBbc3R5bGUuYmFja2dyb3VuZC1jb2xvcl09XCJnZXRIc2xTdHJpbmcoKVwiXG4gIFtuZ0NsYXNzXT1cInsnd2hpdGUtdGV4dCc6IGJhY2tncm91bmQsICdibGFjay10ZXh0IGJvcmRlcic6ICFiYWNrZ3JvdW5kfVwiXG4+XG4gIHt7Z2V0VXNlckluaXRpYWxzKCl9fVxuPC9kaXY+XG4iXX0=
@@ -267,13 +267,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
267
267
  /* eslint-disable @typescript-eslint/no-explicit-any */
268
268
  // eslint-disable-next-line @angular-eslint/directive-selector
269
269
  class NucLoadedContentDirective {
270
- constructor(_viewContainer, templateRef, _componentResolver) {
270
+ constructor(_viewContainer, templateRef) {
271
271
  this._viewContainer = _viewContainer;
272
272
  this.templateRef = templateRef;
273
- this._componentResolver = _componentResolver;
274
273
  this._errorTemplateRef = null;
275
274
  this._inProgressTemplateRef = null;
276
- this._completedTemplateRef = templateRef;
275
+ this._completedTemplateRef = this.templateRef;
277
276
  }
278
277
  set nucLoadedContent(state) {
279
278
  // add some error handling if state is null, etc.
@@ -301,8 +300,7 @@ class NucLoadedContentDirective {
301
300
  }
302
301
  _updateView() {
303
302
  if (this._component == null) {
304
- const fac = this._componentResolver.resolveComponentFactory(NucLoadedContentComponent);
305
- this._component = this._viewContainer.createComponent(fac);
303
+ this._component = this._viewContainer.createComponent(NucLoadedContentComponent);
306
304
  }
307
305
  this._component.instance.state = this._state;
308
306
  this._component.instance.completedTemplate = this._completedTemplateRef;
@@ -313,13 +311,13 @@ class NucLoadedContentDirective {
313
311
  this._component.instance.errorTemplate = this._errorTemplateRef;
314
312
  }
315
313
  }
316
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: NucLoadedContentDirective, deps: [{ token: i0.ViewContainerRef }, { token: i0.TemplateRef }, { token: i0.ComponentFactoryResolver }], target: i0.ɵɵFactoryTarget.Directive }); }
314
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: NucLoadedContentDirective, deps: [{ token: i0.ViewContainerRef }, { token: i0.TemplateRef }], target: i0.ɵɵFactoryTarget.Directive }); }
317
315
  static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: NucLoadedContentDirective, selector: "[nucLoadedContent]", inputs: { nucLoadedContent: "nucLoadedContent", errorTemplate: ["nucLoadedContentError", "errorTemplate"], inProgressTemplate: ["nucLoadedContentInProgress", "inProgressTemplate"], inProgressMessage: ["nucLoadedContentInProgressMessage", "inProgressMessage"], errorMessage: ["nucLoadedContentErrorMessage", "errorMessage"], showRetry: ["nucLoadedContentShowRetry", "showRetry"] }, ngImport: i0 }); }
318
316
  }
319
317
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: NucLoadedContentDirective, decorators: [{
320
318
  type: Directive,
321
319
  args: [{ selector: '[nucLoadedContent]' }]
322
- }], ctorParameters: function () { return [{ type: i0.ViewContainerRef }, { type: i0.TemplateRef }, { type: i0.ComponentFactoryResolver }]; }, propDecorators: { nucLoadedContent: [{
320
+ }], ctorParameters: function () { return [{ type: i0.ViewContainerRef }, { type: i0.TemplateRef }]; }, propDecorators: { nucLoadedContent: [{
323
321
  type: Input
324
322
  }], errorTemplate: [{
325
323
  type: Input,
@@ -559,11 +557,11 @@ class NucUserAvatarComponent {
559
557
  return `hsl(${hue},${saturation}%,${lightness}%)`;
560
558
  }
561
559
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: NucUserAvatarComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
562
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: NucUserAvatarComponent, selector: "nuc-user-avatar", inputs: { name: "name", image: "image", size: "size", background: "background" }, ngImport: i0, template: "<ng-container *ngIf=\"image\">\n <div class=\"user-avatar size-{{size}}\">\n <img src=\"{{image}}\" />\n </div>\n</ng-container>\n\n<ng-container *ngIf=\"!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</ng-container>\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;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"] }, { kind: "directive", type: i1$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] }); }
560
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: NucUserAvatarComponent, selector: "nuc-user-avatar", inputs: { name: "name", image: "image", size: "size", background: "background" }, ngImport: i0, template: "<div *ngIf=\"image\" class=\"user-avatar size-{{size}}\">\n <img src=\"{{image}}\" />\n</div>\n\n<div\n *ngIf=\"!image\"\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", 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;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"] }, { kind: "directive", type: i1$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] }); }
563
561
  }
564
562
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: NucUserAvatarComponent, decorators: [{
565
563
  type: Component,
566
- args: [{ selector: 'nuc-user-avatar', template: "<ng-container *ngIf=\"image\">\n <div class=\"user-avatar size-{{size}}\">\n <img src=\"{{image}}\" />\n </div>\n</ng-container>\n\n<ng-container *ngIf=\"!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</ng-container>\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;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"] }]
564
+ args: [{ selector: 'nuc-user-avatar', template: "<div *ngIf=\"image\" class=\"user-avatar size-{{size}}\">\n <img src=\"{{image}}\" />\n</div>\n\n<div\n *ngIf=\"!image\"\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", 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;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"] }]
567
565
  }], propDecorators: { name: [{
568
566
  type: Input
569
567
  }], image: [{
@@ -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})\nexport class NucDialogComponent {\n constructor(\n public dialogRef: MatDialogRef<NucDialogComponent>,\n @Inject(MAT_DIALOG_DATA) public dialogData: NucDialogData\n ) {}\n}\n","<ng-container *ngIf=\"dialogData\">\n <h2 mat-dialog-title *ngIf=\"dialogData.title\">\n {{ dialogData.title }}\n </h2>\n <mat-dialog-content>{{ dialogData.message }}</mat-dialog-content>\n <mat-dialog-actions>\n <ng-container *ngFor=\"let action of dialogData.actions\">\n <button\n color=\"{{ action.color || 'primary' }}\"\n *ngIf=\"action.value === undefined\"\n mat-button\n mat-dialog-close\n >\n {{ action.text }}\n </button>\n <button\n color=\"{{ action.color || 'primary' }}\"\n *ngIf=\"action.value !== undefined\"\n mat-button\n [mat-dialog-close]=\"action.value\"\n >\n {{ action.text }}\n </button>\n </ng-container>\n </mat-dialog-actions>\n</ng-container>\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})\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","<ng-container *ngIf=\"completed\">\n <ng-container *ngTemplateOutlet=\"completedTemplate\"></ng-container>\n</ng-container>\n\n<div class=\"indicators-container\" *ngIf=\"inProgress || failed\">\n <ng-container *ngIf=\"inProgress\">\n <ng-container\n *ngTemplateOutlet=\"inProgressTemplate ? inProgressTemplate: defaultInProgressTemplate\"\n ></ng-container>\n </ng-container>\n <ng-container *ngIf=\"failed\">\n <ng-container\n *ngTemplateOutlet=\"errorTemplate ? errorTemplate: defaultErrorTemplate\"\n ></ng-container>\n </ng-container>\n</div>\n\n<ng-template #defaultInProgressTemplate>\n <div class=\"spinner\">\n <mat-spinner [diameter]=\"45\"></mat-spinner>\n </div>\n <p>{{message}}</p>\n</ng-template>\n\n<ng-template #defaultErrorTemplate>\n <div>\n <p class=\"message\">\n <span>{{message}}</span>\n <mat-icon\n *ngIf=\"state.errorDetails && !errorDetailsVisible\"\n class=\"info-button\"\n color=\"warn\"\n (click)=\"showErrorDetails()\"\n >info</mat-icon\n >\n </p>\n\n <p *ngIf=\"errorDetailsVisible\" class=\"error-details mat-small\">\n {{state.errorDetails}}\n </p>\n\n <p *ngIf=\"showRetryButton\">\n <button mat-mini-fab color=\"primary\" (click)=\"state.retry()\">\n <mat-icon>refresh</mat-icon>\n </button>\n </p>\n </div>\n</ng-template>\n","/* eslint-disable @typescript-eslint/no-explicit-any */\nimport {\n ComponentFactoryResolver,\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// eslint-disable-next-line @angular-eslint/directive-selector\n@Directive({ selector: '[nucLoadedContent]' })\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 private _componentResolver: ComponentFactoryResolver\n ) {\n this._completedTemplateRef = 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) {\n this._component.instance.inProgressMessage = inProgressMessage;\n }\n\n @Input('nucLoadedContentErrorMessage')\n set errorMessage(errorMessage: string) {\n this._component.instance.errorMessage = errorMessage;\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 const fac = this._componentResolver.resolveComponentFactory(\n NucLoadedContentComponent\n );\n this._component = this._viewContainer.createComponent(fac);\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// eslint-disable-next-line @angular-eslint/directive-selector\n@Directive({ selector: '[nucSwipe]' })\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 } 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 // eslint-disable-next-line @angular-eslint/no-host-metadata-property\n host: {\n class: 'mat-simple-snackbar',\n },\n})\nexport class ProgressSnackbarComponent implements AfterViewInit {\n constructor(\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","<div class=\"mat-simple-snack-bar-content 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","/* eslint-disable @typescript-eslint/no-explicit-any */\nimport { Injectable, NgZone } from '@angular/core';\nimport {\n MatSnackBar,\n MatSnackBarConfig,\n MatSnackBarRef,\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, private zone: NgZone) {}\n\n public openSnackbar(\n type: NucSnackbarType,\n message: string,\n action: string | undefined,\n duration: number\n ) {\n let ref: MatSnackBarRef<any> | undefined;\n\n this.zone.run(() => {\n const panelClass = `${type}-snackbar`;\n\n if (type === NucSnackbarType.Progress) {\n this.matSnackBar.openFromComponent(ProgressSnackbarComponent, {\n duration,\n panelClass,\n data: {\n message,\n },\n });\n } else {\n this.matSnackBar.open(message, action, {\n duration,\n panelClass,\n });\n }\n });\n\n return ref as MatSnackBarRef<any>; //TODO: this is not OK, ref might not be available to consumer of the method\n }\n\n public openSnackbarWithConfig(\n message: string,\n action: string | undefined,\n config: MatSnackBarConfig\n ) {\n let ref: MatSnackBarRef<any> | undefined;\n\n this.zone.run(() => {\n ref = this.matSnackBar.open(message, action, config);\n });\n return ref as MatSnackBarRef<any>; //TODO: this is not OK, ref might not be available to consumer of the method\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';\n\n@NgModule({\n declarations: [ProgressSnackbarComponent],\n imports: [CommonModule, MatSnackBarModule, MatProgressSpinnerModule],\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})\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","<ng-container *ngIf=\"image\">\n <div class=\"user-avatar size-{{size}}\">\n <img src=\"{{image}}\" />\n </div>\n</ng-container>\n\n<ng-container *ngIf=\"!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</ng-container>\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":";;;;;;;;;;;;;;;;;;MAUa,kBAAkB,CAAA;IAC7B,WACS,CAAA,SAA2C,EAClB,UAAyB,EAAA;QADlD,IAAS,CAAA,SAAA,GAAT,SAAS,CAAkC;QAClB,IAAU,CAAA,UAAA,GAAV,UAAU,CAAe;KACvD;AAJO,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,EAAA;AAHd,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,kBAAkB,kDCV/B,qxBA0BA,EAAA,MAAA,EAAA,CAAA,wIAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,OAAA,EAAA,QAAA,EAAA,kBAAA,EAAA,MAAA,EAAA,CAAA,SAAA,EAAA,cAAA,EAAA,eAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,IAAA,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,UAAA,CAAA,EAAA,EAAA,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,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,SAAA,EAAA,QAAA,EAAA,6GAAA,EAAA,MAAA,EAAA,CAAA,UAAA,EAAA,eAAA,EAAA,OAAA,CAAA,EAAA,QAAA,EAAA,CAAA,WAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,EAAA;;4FDhBa,kBAAkB,EAAA,UAAA,EAAA,CAAA;kBAN9B,SAAS;+BAEE,YAAY,EAAA,QAAA,EAAA,qxBAAA,EAAA,MAAA,EAAA,CAAA,wIAAA,CAAA,EAAA,CAAA;;0BAOnB,MAAM;2BAAC,eAAe,CAAA;;;MELd,gBAAgB,CAAA;AAC3B,IAAA,WAAA,CAAoB,UAAqB,EAAA;QAArB,IAAU,CAAA,UAAA,GAAV,UAAU,CAAW;KAAI;AAE7C;;;;;;AAMG;AACI,IAAA,MAAM,IAAI,CACf,UAAyB,EACzB,YAA8B;;;QAG9B,IAAI,UAAU,CAAC,OAAO,IAAI,UAAU,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE;AACvD,YAAA,IAAI,YAAY,EAAE;AAChB,gBAAA,YAAY,CAAC,IAAI,GAAG,UAAU,CAAC;AAChC,aAAA;AAAM,iBAAA;AACL,gBAAA,YAAY,GAAG,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC;AACrC,aAAA;YACD,OAAO,MAAM,IAAI,CAAC,UAAU;AACzB,iBAAA,IAAI,CAAC,kBAAkB,EAAE,YAAY,CAAC;AACtC,iBAAA,YAAY,EAAE;AACd,iBAAA,SAAS,EAAE,CAAC;AAChB,SAAA;AAAM,aAAA;AACL,YAAA,OAAO,CAAC,KAAK,CACX,8DAA8D,CAC/D,CAAC;AACH,SAAA;KACF;+GA9BU,gBAAgB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,SAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA,EAAA;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,EAAA;;4FAEP,gBAAgB,EAAA,UAAA,EAAA,CAAA;kBAH5B,UAAU;AAAC,YAAA,IAAA,EAAA,CAAA;AACV,oBAAA,UAAU,EAAE,MAAM;AACnB,iBAAA,CAAA;;;MCGY,eAAe,CAAA;+GAAf,eAAe,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA,EAAA;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,EAAA;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,EAFhB,OAAA,EAAA,CAAA,YAAY,EAAE,eAAe,EAAE,eAAe,CAAA,EAAA,CAAA,CAAA,EAAA;;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,CAAA;;;ICUW,SAOX;AAPD,CAAA,UAAY,QAAQ,EAAA;;AAElB,IAAA,QAAA,CAAA,SAAA,CAAA,GAAA,SAAmB,CAAA;;AAEnB,IAAA,QAAA,CAAA,QAAA,CAAA,GAAA,QAAiB,CAAA;;AAEjB,IAAA,QAAA,CAAA,MAAA,CAAA,GAAA,MAAa,CAAA;AACf,CAAC,EAPW,QAAQ,KAAR,QAAQ,GAOnB,EAAA,CAAA,CAAA;;ICtBW,cAKX;AALD,CAAA,UAAY,aAAa,EAAA;AACvB,IAAA,aAAA,CAAA,aAAA,CAAA,WAAA,CAAA,GAAA,CAAA,CAAA,GAAA,WAAS,CAAA;AACT,IAAA,aAAA,CAAA,aAAA,CAAA,YAAA,CAAA,GAAA,CAAA,CAAA,GAAA,YAAU,CAAA;AACV,IAAA,aAAA,CAAA,aAAA,CAAA,QAAA,CAAA,GAAA,CAAA,CAAA,GAAA,QAAM,CAAA;AACN,IAAA,aAAA,CAAA,aAAA,CAAA,WAAA,CAAA,GAAA,CAAA,CAAA,GAAA,WAAS,CAAA;AACX,CAAC,EALW,aAAa,KAAb,aAAa,GAKxB,EAAA,CAAA,CAAA,CAAA;MAEY,YAAY,CAAA;AAAzB,IAAA,WAAA,GAAA;AACU,QAAA,IAAA,CAAA,OAAO,GAAkB,aAAa,CAAC,SAAS,CAAC;KAiL1D;AArKC,IAAA,IAAI,MAAM,GAAA;QACR,OAAO,IAAI,CAAC,OAAO,CAAC;KACrB;AAED,IAAA,IAAI,OAAO,GAAA;QACT,OAAO,IAAI,CAAC,QAAQ,CAAC;KACtB;AAED,IAAA,IAAI,YAAY,GAAA;QACd,OAAO,IAAI,CAAC,aAAa,CAAC;KAC3B;AAEM,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,CAAC;KACH;IAEM,eAAe,CACpB,UAAyB,EACzB,OAAe,EACf,cAAoC,EACpC,aAAkD,EAClD,gBAA6B,EAAA;AAE7B,QAAA,IAAI,CAAC,eAAe,GAAG,OAAO,CAAC;AAC/B,QAAA,OAAO,IAAI,CAAC,KAAK,CACf,IAAI,EACJ,OAAO,EACP,UAAU,EACV,cAAc,EACd,aAAa,EACb,gBAAgB,CACjB,CAAC;KACH;AAEM,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,CAAC;KACH;IAEM,iBAAiB,CACtB,UAAyB,EACzB,OAAe,EACf,cAAoC,EACpC,aAAkD,EAClD,gBAA6B,EAAA;AAE7B,QAAA,IAAI,CAAC,eAAe,GAAG,OAAO,CAAC;AAC/B,QAAA,OAAO,IAAI,CAAC,KAAK,CACf,KAAK,EACL,OAAO,EACP,UAAU,EACV,cAAc,EACd,aAAa,EACb,gBAAgB,CACjB,CAAC;KACH;IAEM,KAAK,GAAA;QACV,IAAI,IAAI,CAAC,iBAAiB,EAAE;AAC1B,YAAA,IAAI,CAAC,iBAAiB,CAAC,WAAW,EAAE,CAAC;AACtC,SAAA;AACD,QAAA,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;QACzC,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,CAAC;QACH,OAAO,IAAI,CAAC,iBAAiB,CAAC;KAC/B;AAEM,IAAA,aAAa,CAAC,OAAgB,EAAA;AACnC,QAAA,IAAI,CAAC,OAAO,GAAG,aAAa,CAAC,UAAU,CAAC;AACxC,QAAA,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC;KACzB;IAEM,YAAY,GAAA;AACjB,QAAA,IAAI,CAAC,OAAO,GAAG,aAAa,CAAC,SAAS,CAAC;KACxC;IAEM,SAAS,CAAC,OAAgB,EAAE,KAAc,EAAA;AAC/C,QAAA,IAAI,CAAC,OAAO,GAAG,aAAa,CAAC,MAAM,CAAC;AACpC,QAAA,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC;AACxB,QAAA,IAAI,CAAC,aAAa,GAAG,KAAK,CAAC;KAC5B;IAEO,KAAK,CACX,oBAA6B,EAC7B,eAAmC,EACnC,UAAyB,EACzB,cAAoC,EACpC,aAAkD,EAClD,gBAA6B,EAAA;QAE7B,IAAI,IAAI,CAAC,iBAAiB,EAAE;AAC1B,YAAA,IAAI,CAAC,iBAAiB,CAAC,WAAW,EAAE,CAAC;AACtC,SAAA;AAED,QAAA,IAAI,CAAC,aAAa,CAAC,eAAe,CAAC,CAAC;AACpC,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,CAAC;AAC3B,iBAAA;gBACD,IAAI,CAAC,YAAY,EAAE,CAAC;aACrB;AACD,YAAA,KAAK,EAAE,CAAC,GAAG,KAAI;AACb,gBAAA,IAAI,CAAC,SAAS,CAAC,SAAS,EAAE,YAAY,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,CAAC;aAC9D;AACF,SAAA,CAAC,CACH,CAAC;AAEF,QAAA,IAAI,oBAAoB,EAAE;AACxB,YAAA,IAAI,CAAC,eAAe,GAAG,GAAG,CAAC;AAC3B,YAAA,IAAI,CAAC,eAAe,GAAG,cAAc,CAAC;AACtC,YAAA,IAAI,CAAC,cAAc,GAAG,aAAa,CAAC;AACpC,YAAA,IAAI,CAAC,iBAAiB,GAAG,gBAAgB,CAAC;AAC3C,SAAA;AAED,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,CAAC;QACH,OAAO,IAAI,CAAC,iBAAiB,CAAC;KAC/B;;IAGM,OAAO,eAAe,CAAC,KAAU,EAAA;;;;;AAMtC,QAAA,MAAM,OAAO,GAAG,KAAK,EAAE,KAAK,CAAC;AAC7B,QAAA,IAAI,OAAO,EAAE,KAAK,IAAI,OAAO,EAAE,MAAM,EAAE;YACrC,OAAO,CAAA,EAAG,OAAO,CAAC,KAAK,KAAK,OAAO,CAAC,MAAM,CAAA,CAAE,CAAC;AAC9C,SAAA;AAAM,aAAA;AACL,YAAA,OAAO,OAAO,EAAE,KAAK,IAAI,OAAO,EAAE,MAAM,IAAI,KAAK,CAAC,OAAO,IAAI,KAAK,CAAC;AACpE,SAAA;KACF;AACF;;AC7LD;MAUa,yBAAyB,CAAA;AANtC,IAAA,WAAA,GAAA;QAOU,IAAoB,CAAA,oBAAA,GAAG,KAAK,CAAC;QAkB9B,IAAY,CAAA,YAAA,GAAG,yCAAyC,CAAC;QAGzD,IAAS,CAAA,SAAA,GAAG,IAAI,CAAC;AA0CzB,KAAA;AAxCC,IAAA,IAAW,OAAO,GAAA;AAChB,QAAA,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,IAAI,IAAI,EAAE;AAC9B,YAAA,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC;AAC3B,SAAA;AAAM,aAAA;YACL,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,KAAK,aAAa,CAAC,MAAM,EAAE;gBAC9C,OAAO,IAAI,CAAC,YAAY,CAAC;AAC1B,aAAA;iBAAM,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,KAAK,aAAa,CAAC,UAAU,EAAE;gBACzD,OAAO,IAAI,CAAC,iBAAiB,CAAC;AAC/B,aAAA;AACF,SAAA;AACD,QAAA,OAAO,IAAI,CAAC;KACb;AAED,IAAA,IAAW,eAAe,GAAA;QACxB,OAAO,IAAI,CAAC,SAAS,CAAC;KACvB;AAED,IAAA,IAAW,UAAU,GAAA;QACnB,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,KAAK,aAAa,CAAC,UAAU,CAAC;AAClE,QAAA,IAAI,UAAU,EAAE;AACd,YAAA,IAAI,CAAC,oBAAoB,GAAG,KAAK,CAAC;AACnC,SAAA;AACD,QAAA,OAAO,UAAU,CAAC;KACnB;AAED,IAAA,IAAW,MAAM,GAAA;QACf,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,KAAK,aAAa,CAAC,MAAM,CAAC;KACnD;AAED,IAAA,IAAW,SAAS,GAAA;QAClB,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,KAAK,aAAa,CAAC,SAAS,CAAC;KACtD;AAED,IAAA,IAAW,mBAAmB,GAAA;QAC5B,OAAO,IAAI,CAAC,oBAAoB,CAAC;KAClC;IAEM,gBAAgB,GAAA;AACrB,QAAA,IAAI,CAAC,oBAAoB,GAAG,IAAI,CAAC;KAClC;+GA/DU,yBAAyB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;AAAzB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,yBAAyB,gTCVtC,62CAgDA,EAAA,MAAA,EAAA,CAAA,4SAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,IAAA,CAAA,IAAA,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,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,sBAAA,EAAA,MAAA,EAAA,CAAA,UAAA,EAAA,eAAA,EAAA,OAAA,CAAA,EAAA,QAAA,EAAA,CAAA,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,EAAA;;4FDtCa,yBAAyB,EAAA,UAAA,EAAA,CAAA;kBANrC,SAAS;+BAEE,8BAA8B,EAAA,QAAA,EAAA,62CAAA,EAAA,MAAA,EAAA,CAAA,4SAAA,CAAA,EAAA,CAAA;8BAQxC,iBAAiB,EAAA,CAAA;sBADhB,KAAK;gBAIN,aAAa,EAAA,CAAA;sBADZ,KAAK;gBAIN,kBAAkB,EAAA,CAAA;sBADjB,KAAK;gBAIC,KAAK,EAAA,CAAA;sBADX,KAAK;gBAIC,iBAAiB,EAAA,CAAA;sBADvB,KAAK;gBAIC,YAAY,EAAA,CAAA;sBADlB,KAAK;gBAIC,SAAS,EAAA,CAAA;sBADf,KAAK;;;AE/BR;AAYA;MAEa,yBAAyB,CAAA;AAOpC,IAAA,WAAA,CACU,cAAgC,EAChC,WAA6B,EAC7B,kBAA4C,EAAA;QAF5C,IAAc,CAAA,cAAA,GAAd,cAAc,CAAkB;QAChC,IAAW,CAAA,WAAA,GAAX,WAAW,CAAkB;QAC7B,IAAkB,CAAA,kBAAA,GAAlB,kBAAkB,CAA0B;QAP9C,IAAiB,CAAA,iBAAA,GAA4B,IAAI,CAAC;QAClD,IAAsB,CAAA,sBAAA,GAA4B,IAAI,CAAC;AAQ7D,QAAA,IAAI,CAAC,qBAAqB,GAAG,WAAW,CAAC;KAC1C;IAED,IACI,gBAAgB,CAAC,KAAmB,EAAA;;AAEtC,QAAA,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;QACpB,IAAI,CAAC,WAAW,EAAE,CAAC;KACpB;;IAGD,IACI,aAAa,CAAC,WAAoC,EAAA;AACpD,QAAA,IAAI,CAAC,iBAAiB,GAAG,WAAW,CAAC;QACrC,IAAI,CAAC,WAAW,EAAE,CAAC;KACpB;;IAGD,IACI,kBAAkB,CAAC,WAAoC,EAAA;AACzD,QAAA,IAAI,CAAC,sBAAsB,GAAG,WAAW,CAAC;QAC1C,IAAI,CAAC,WAAW,EAAE,CAAC;KACpB;IAED,IACI,iBAAiB,CAAC,iBAAyB,EAAA;QAC7C,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,iBAAiB,GAAG,iBAAiB,CAAC;KAChE;IAED,IACI,YAAY,CAAC,YAAoB,EAAA;QACnC,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,YAAY,GAAG,YAAY,CAAC;KACtD;IAED,IACI,SAAS,CAAC,SAAkB,EAAA;QAC9B,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,SAAS,GAAG,SAAS,CAAC;KAChD;IAEO,WAAW,GAAA;AACjB,QAAA,IAAI,IAAI,CAAC,UAAU,IAAI,IAAI,EAAE;YAC3B,MAAM,GAAG,GAAG,IAAI,CAAC,kBAAkB,CAAC,uBAAuB,CACzD,yBAAyB,CAC1B,CAAC;YACF,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,cAAc,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC;AAC5D,SAAA;QAED,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC;QAC7C,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,iBAAiB,GAAG,IAAI,CAAC,qBAAqB,CAAC;QAExE,IAAI,IAAI,CAAC,sBAAsB,EAAE;YAC/B,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,kBAAkB,GAAG,IAAI,CAAC,sBAAsB,CAAC;AAC3E,SAAA;QAED,IAAI,IAAI,CAAC,iBAAiB,EAAE;YAC1B,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,aAAa,GAAG,IAAI,CAAC,iBAAiB,CAAC;AACjE,SAAA;KACF;+GArEU,yBAAyB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,gBAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,WAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,wBAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;mGAAzB,yBAAyB,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,EAAA;;4FAAzB,yBAAyB,EAAA,UAAA,EAAA,CAAA;kBADrC,SAAS;mBAAC,EAAE,QAAQ,EAAE,oBAAoB,EAAE,CAAA;wKAiBvC,gBAAgB,EAAA,CAAA;sBADnB,KAAK;gBASF,aAAa,EAAA,CAAA;sBADhB,KAAK;uBAAC,uBAAuB,CAAA;gBAQ1B,kBAAkB,EAAA,CAAA;sBADrB,KAAK;uBAAC,4BAA4B,CAAA;gBAO/B,iBAAiB,EAAA,CAAA;sBADpB,KAAK;uBAAC,mCAAmC,CAAA;gBAMtC,YAAY,EAAA,CAAA;sBADf,KAAK;uBAAC,8BAA8B,CAAA;gBAMjC,SAAS,EAAA,CAAA;sBADZ,KAAK;uBAAC,2BAA2B,CAAA;;;MC1CvB,sBAAsB,CAAA;+GAAtB,sBAAsB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA,EAAA;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,EATlB,YAAA,EAAA,CAAA,yBAAyB,EAAE,yBAAyB,aAEjE,YAAY;YACZ,wBAAwB;YACxB,eAAe;AACf,YAAA,aAAa,aAEL,yBAAyB,CAAA,EAAA,CAAA,CAAA,EAAA;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,EAAA;;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,CAAA;;;ACbD;MAEa,qBAAqB,CAAA;IAChC,WACU,CAAA,OAAgC,EAChC,QAAqB,EAAA;QADrB,IAAO,CAAA,OAAA,GAAP,OAAO,CAAyB;QAChC,IAAQ,CAAA,QAAA,GAAR,QAAQ,CAAa;KAC3B;IAEJ,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,CAAC;AAEH,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,CAAC;QAEF,QAAQ,CAAC,EAAE,CAAC,kBAAkB,EAAE,CAAC,KAAK,KAAI;YACxC,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,CAAC;gBACxD,MAAM,YAAY,GAAG,IAAI,CAAC,QAAQ,CAAC,aAAa,IAAI,CAAC,CAAC;gBACtD,IAAI,SAAS,GAAG,YAAY,CAAC;AAE7B,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,CAAC;4BACd,MAAM;AACP,yBAAA;AACF,qBAAA;AACF,iBAAA;AAAM,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,CAAC;4BACd,MAAM;AACP,yBAAA;AACF,qBAAA;AACF,iBAAA;AACD,gBAAA,IAAI,CAAC,QAAQ,CAAC,aAAa,GAAG,SAAS,CAAC;AACzC,aAAA;AACH,SAAC,CAAC,CAAC;KACJ;+GApDU,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,EAAA;mGAArB,qBAAqB,EAAA,QAAA,EAAA,YAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA,EAAA;;4FAArB,qBAAqB,EAAA,UAAA,EAAA,CAAA;kBADjC,SAAS;mBAAC,EAAE,QAAQ,EAAE,YAAY,EAAE,CAAA;;;MCIxB,kBAAkB,CAAA;+GAAlB,kBAAkB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA,EAAA;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,EAJd,YAAA,EAAA,CAAA,qBAAqB,CAC1B,EAAA,OAAA,EAAA,CAAA,YAAY,aACZ,qBAAqB,CAAA,EAAA,CAAA,CAAA,EAAA;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,EAAA;;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,CAAA;;;ICRW,gBAMX;AAND,CAAA,UAAY,eAAe,EAAA;AACzB,IAAA,eAAA,CAAA,MAAA,CAAA,GAAA,MAAa,CAAA;AACb,IAAA,eAAA,CAAA,SAAA,CAAA,GAAA,SAAmB,CAAA;AACnB,IAAA,eAAA,CAAA,QAAA,CAAA,GAAA,QAAiB,CAAA;AACjB,IAAA,eAAA,CAAA,SAAA,CAAA,GAAA,SAAmB,CAAA;AACnB,IAAA,eAAA,CAAA,UAAA,CAAA,GAAA,UAAqB,CAAA;AACvB,CAAC,EANW,eAAe,KAAf,eAAe,GAM1B,EAAA,CAAA,CAAA;;MCaY,yBAAyB,CAAA;AACpC,IAAA,WAAA;;AAEqC,IAAA,IAAS,EACpC,IAAgB,EAAA;QADW,IAAI,CAAA,IAAA,GAAJ,IAAI,CAAK;QACpC,IAAI,CAAA,IAAA,GAAJ,IAAI,CAAY;KACtB;IAEJ,eAAe,GAAA;AACb,QAAA,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC;QACxC,MAAM,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;QAC/C,MAAM,OAAO,GAAG,OAAO,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC;QAClD,MAAM,KAAK,GAAG,MAAM,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC;AACrD,QAAA,MAAM,CAAC,KAAK,CAAC,MAAM,GAAG,KAAK,CAAC;KAC7B;AAbU,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,kBAG1B,kBAAkB,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,UAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;AAHjB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,yBAAyB,8GCnBtC,4TAWA,EAAA,MAAA,EAAA,CAAA,EAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,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,CAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA,CAAA,EAAA;;4FDQa,yBAAyB,EAAA,UAAA,EAAA,CAAA;kBAVrC,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,uBAAuB,EAGlB,aAAA,EAAA,iBAAiB,CAAC,IAAI,EAE/B,IAAA,EAAA;AACJ,wBAAA,KAAK,EAAE,qBAAqB;AAC7B,qBAAA,EAAA,QAAA,EAAA,4TAAA,EAAA,CAAA;;0BAKE,MAAM;2BAAC,kBAAkB,CAAA;;;AEtB9B;MAaa,kBAAkB,CAAA;IAC7B,WAAoB,CAAA,WAAwB,EAAU,IAAY,EAAA;QAA9C,IAAW,CAAA,WAAA,GAAX,WAAW,CAAa;QAAU,IAAI,CAAA,IAAA,GAAJ,IAAI,CAAQ;KAAI;AAE/D,IAAA,YAAY,CACjB,IAAqB,EACrB,OAAe,EACf,MAA0B,EAC1B,QAAgB,EAAA;AAEhB,QAAA,IAAI,GAAoC,CAAC;AAEzC,QAAA,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,MAAK;AACjB,YAAA,MAAM,UAAU,GAAG,CAAG,EAAA,IAAI,WAAW,CAAC;AAEtC,YAAA,IAAI,IAAI,KAAK,eAAe,CAAC,QAAQ,EAAE;AACrC,gBAAA,IAAI,CAAC,WAAW,CAAC,iBAAiB,CAAC,yBAAyB,EAAE;oBAC5D,QAAQ;oBACR,UAAU;AACV,oBAAA,IAAI,EAAE;wBACJ,OAAO;AACR,qBAAA;AACF,iBAAA,CAAC,CAAC;AACJ,aAAA;AAAM,iBAAA;gBACL,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE;oBACrC,QAAQ;oBACR,UAAU;AACX,iBAAA,CAAC,CAAC;AACJ,aAAA;AACH,SAAC,CAAC,CAAC;QAEH,OAAO,GAA0B,CAAC;KACnC;AAEM,IAAA,sBAAsB,CAC3B,OAAe,EACf,MAA0B,EAC1B,MAAyB,EAAA;AAEzB,QAAA,IAAI,GAAoC,CAAC;AAEzC,QAAA,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,MAAK;AACjB,YAAA,GAAG,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;AACvD,SAAC,CAAC,CAAC;QACH,OAAO,GAA0B,CAAC;KACnC;+GA5CU,kBAAkB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAAA,IAAA,CAAA,WAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,MAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA,EAAA;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,EAAA;;4FAEP,kBAAkB,EAAA,UAAA,EAAA,CAAA;kBAH9B,UAAU;AAAC,YAAA,IAAA,EAAA,CAAA;AACV,oBAAA,UAAU,EAAE,MAAM;AACnB,iBAAA,CAAA;;;MCDY,iBAAiB,CAAA;+GAAjB,iBAAiB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA,EAAA;AAAjB,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,iBAJb,yBAAyB,CAAA,EAAA,OAAA,EAAA,CAC9B,YAAY,EAAE,iBAAiB,EAAE,wBAAwB,CAAA,EAAA,CAAA,CAAA,EAAA;AAGxD,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,EAHlB,OAAA,EAAA,CAAA,YAAY,EAAE,iBAAiB,EAAE,wBAAwB,CAAA,EAAA,CAAA,CAAA,EAAA;;4FAGxD,iBAAiB,EAAA,UAAA,EAAA,CAAA;kBAL7B,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;oBACR,YAAY,EAAE,CAAC,yBAAyB,CAAC;AACzC,oBAAA,OAAO,EAAE,CAAC,YAAY,EAAE,iBAAiB,EAAE,wBAAwB,CAAC;AACpE,oBAAA,OAAO,EAAE,EAAE;AACZ,iBAAA,CAAA;;;MCAY,sBAAsB,CAAA;AANnC,IAAA,WAAA,GAAA;QASW,IAAI,CAAA,IAAA,GAAe,QAAQ,CAAC;QAC5B,IAAU,CAAA,UAAA,GAAe,KAAK,CAAC;AAqCzC,KAAA;IAnCC,eAAe,GAAA;QACb,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;AACvC,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,EACvD;KACH;IAED,YAAY,GAAA;AACV,QAAA,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE;AACpB,YAAA,OAAO,OAAO,CAAC,CAAA,CAAA,EAAI,CAAC,CAAK,EAAA,EAAA,GAAG,IAAI,CAAC;AAClC,SAAA;QAED,IAAI,IAAI,GAAG,CAAC,CAAC;AACb,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,CAAC;AAC9D,SAAA;QAED,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,GAAG,GAAG,CAAC,CAAC;QAEjC,MAAM,SAAS,GAAG,IAAI,CAAC;QACvB,MAAM,UAAU,GAAG,IAAI,CAAC;AAExB,QAAA,OAAO,OAAO,GAAG,CAAA,CAAA,EAAI,UAAU,CAAK,EAAA,EAAA,SAAS,IAAI,CAAC;KACnD;+GAxCU,sBAAsB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;AAAtB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,sBAAsB,yICVnC,saAeA,EAAA,MAAA,EAAA,CAAA,qqBAAA,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,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,IAAA,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,UAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,EAAA;;4FDLa,sBAAsB,EAAA,UAAA,EAAA,CAAA;kBANlC,SAAS;+BAEE,iBAAiB,EAAA,QAAA,EAAA,saAAA,EAAA,MAAA,EAAA,CAAA,qqBAAA,CAAA,EAAA,CAAA;8BAKlB,IAAI,EAAA,CAAA;sBAAZ,KAAK;gBACG,KAAK,EAAA,CAAA;sBAAb,KAAK;gBACG,IAAI,EAAA,CAAA;sBAAZ,KAAK;gBACG,UAAU,EAAA,CAAA;sBAAlB,KAAK;;;MELK,mBAAmB,CAAA;+GAAnB,mBAAmB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA,EAAA;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,EAJf,YAAA,EAAA,CAAA,sBAAsB,CAC3B,EAAA,OAAA,EAAA,CAAA,YAAY,aACZ,sBAAsB,CAAA,EAAA,CAAA,CAAA,EAAA;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,EAAA;;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,CAAA;;;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})\nexport class NucDialogComponent {\n constructor(\n public dialogRef: MatDialogRef<NucDialogComponent>,\n @Inject(MAT_DIALOG_DATA) public dialogData: NucDialogData\n ) {}\n}\n","<ng-container *ngIf=\"dialogData\">\n <h2 mat-dialog-title *ngIf=\"dialogData.title\">\n {{ dialogData.title }}\n </h2>\n <mat-dialog-content>{{ dialogData.message }}</mat-dialog-content>\n <mat-dialog-actions>\n <ng-container *ngFor=\"let action of dialogData.actions\">\n <button\n color=\"{{ action.color || 'primary' }}\"\n *ngIf=\"action.value === undefined\"\n mat-button\n mat-dialog-close\n >\n {{ action.text }}\n </button>\n <button\n color=\"{{ action.color || 'primary' }}\"\n *ngIf=\"action.value !== undefined\"\n mat-button\n [mat-dialog-close]=\"action.value\"\n >\n {{ action.text }}\n </button>\n </ng-container>\n </mat-dialog-actions>\n</ng-container>\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})\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","<ng-container *ngIf=\"completed\">\n <ng-container *ngTemplateOutlet=\"completedTemplate\"></ng-container>\n</ng-container>\n\n<div class=\"indicators-container\" *ngIf=\"inProgress || failed\">\n <ng-container *ngIf=\"inProgress\">\n <ng-container\n *ngTemplateOutlet=\"inProgressTemplate ? inProgressTemplate: defaultInProgressTemplate\"\n ></ng-container>\n </ng-container>\n <ng-container *ngIf=\"failed\">\n <ng-container\n *ngTemplateOutlet=\"errorTemplate ? errorTemplate: defaultErrorTemplate\"\n ></ng-container>\n </ng-container>\n</div>\n\n<ng-template #defaultInProgressTemplate>\n <div class=\"spinner\">\n <mat-spinner [diameter]=\"45\"></mat-spinner>\n </div>\n <p>{{message}}</p>\n</ng-template>\n\n<ng-template #defaultErrorTemplate>\n <div>\n <p class=\"message\">\n <span>{{message}}</span>\n <mat-icon\n *ngIf=\"state.errorDetails && !errorDetailsVisible\"\n class=\"info-button\"\n color=\"warn\"\n (click)=\"showErrorDetails()\"\n >info</mat-icon\n >\n </p>\n\n <p *ngIf=\"errorDetailsVisible\" class=\"error-details mat-small\">\n {{state.errorDetails}}\n </p>\n\n <p *ngIf=\"showRetryButton\">\n <button mat-mini-fab color=\"primary\" (click)=\"state.retry()\">\n <mat-icon>refresh</mat-icon>\n </button>\n </p>\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// eslint-disable-next-line @angular-eslint/directive-selector\n@Directive({ selector: '[nucLoadedContent]' })\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) {\n this._component.instance.inProgressMessage = inProgressMessage;\n }\n\n @Input('nucLoadedContentErrorMessage')\n set errorMessage(errorMessage: string) {\n this._component.instance.errorMessage = errorMessage;\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// eslint-disable-next-line @angular-eslint/directive-selector\n@Directive({ selector: '[nucSwipe]' })\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 } 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 // eslint-disable-next-line @angular-eslint/no-host-metadata-property\n host: {\n class: 'mat-simple-snackbar',\n },\n})\nexport class ProgressSnackbarComponent implements AfterViewInit {\n constructor(\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","<div class=\"mat-simple-snack-bar-content 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","/* eslint-disable @typescript-eslint/no-explicit-any */\nimport { Injectable, NgZone } from '@angular/core';\nimport {\n MatSnackBar,\n MatSnackBarConfig,\n MatSnackBarRef,\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, private zone: NgZone) {}\n\n public openSnackbar(\n type: NucSnackbarType,\n message: string,\n action: string | undefined,\n duration: number\n ) {\n let ref: MatSnackBarRef<any> | undefined;\n\n this.zone.run(() => {\n const panelClass = `${type}-snackbar`;\n\n if (type === NucSnackbarType.Progress) {\n this.matSnackBar.openFromComponent(ProgressSnackbarComponent, {\n duration,\n panelClass,\n data: {\n message,\n },\n });\n } else {\n this.matSnackBar.open(message, action, {\n duration,\n panelClass,\n });\n }\n });\n\n return ref as MatSnackBarRef<any>; //TODO: this is not OK, ref might not be available to consumer of the method\n }\n\n public openSnackbarWithConfig(\n message: string,\n action: string | undefined,\n config: MatSnackBarConfig\n ) {\n let ref: MatSnackBarRef<any> | undefined;\n\n this.zone.run(() => {\n ref = this.matSnackBar.open(message, action, config);\n });\n return ref as MatSnackBarRef<any>; //TODO: this is not OK, ref might not be available to consumer of the method\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';\n\n@NgModule({\n declarations: [ProgressSnackbarComponent],\n imports: [CommonModule, MatSnackBarModule, MatProgressSpinnerModule],\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})\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","<div *ngIf=\"image\" class=\"user-avatar size-{{size}}\">\n <img src=\"{{image}}\" />\n</div>\n\n<div\n *ngIf=\"!image\"\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","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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"}
@@ -1,16 +1,15 @@
1
- import { ComponentFactoryResolver, TemplateRef, ViewContainerRef } from '@angular/core';
1
+ import { TemplateRef, ViewContainerRef } from '@angular/core';
2
2
  import { LoadingState } from './loading-state';
3
3
  import * as i0 from "@angular/core";
4
4
  export declare class NucLoadedContentDirective {
5
5
  private _viewContainer;
6
6
  private templateRef;
7
- private _componentResolver;
8
7
  private _state;
9
8
  private _completedTemplateRef;
10
9
  private _errorTemplateRef;
11
10
  private _inProgressTemplateRef;
12
11
  private _component;
13
- constructor(_viewContainer: ViewContainerRef, templateRef: TemplateRef<any>, _componentResolver: ComponentFactoryResolver);
12
+ constructor(_viewContainer: ViewContainerRef, templateRef: TemplateRef<any>);
14
13
  set nucLoadedContent(state: LoadingState);
15
14
  set errorTemplate(templateRef: TemplateRef<any> | null);
16
15
  set inProgressTemplate(templateRef: TemplateRef<any> | null);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@kolektor/nucleus-material",
3
- "version": "0.1.130-pre.1",
3
+ "version": "0.1.207",
4
4
  "peerDependencies": {
5
5
  "@angular/common": "^16.0.0",
6
6
  "@angular/core": "^16.0.0",