@recursyve/nice-ui-kit.v2 13.1.0-beta.91 → 13.2.0-beta.101

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (49) hide show
  1. package/_index.scss +0 -1
  2. package/esm2020/lib/api/nice.api.mjs +2 -1
  3. package/esm2020/lib/components/alert/alert.component.mjs +22 -10
  4. package/esm2020/lib/components/alert/alert.types.mjs +1 -1
  5. package/esm2020/lib/components/async-typeahead/async-typeahead.component.mjs +9 -5
  6. package/esm2020/lib/components/base-form/base-form.component.mjs +20 -5
  7. package/esm2020/lib/components/form-error/control-status.directive.mjs +21 -14
  8. package/esm2020/lib/components/navigation/vertical/vertical.component.mjs +8 -6
  9. package/esm2020/lib/components/sweet-alert/sweet-alert.component.mjs +3 -3
  10. package/esm2020/lib/components/toast/toast.component.mjs +1 -1
  11. package/esm2020/lib/directives/chip-async-typeahead/chip-async-typeahead.directive.mjs +39 -0
  12. package/esm2020/lib/directives/chip-async-typeahead/index.mjs +2 -0
  13. package/esm2020/lib/directives/chip-async-typeahead/public-api.mjs +2 -0
  14. package/esm2020/lib/directives/chip-list/chip-list-items/chip-list-item-label.directive.mjs +14 -0
  15. package/esm2020/lib/directives/chip-list/chip-list-items/chip-list-items.component.mjs +32 -0
  16. package/esm2020/lib/directives/chip-list/chip-list.directive.mjs +101 -0
  17. package/esm2020/lib/directives/chip-list/chip-list.module.mjs +21 -0
  18. package/esm2020/lib/directives/chip-list/index.mjs +2 -0
  19. package/esm2020/lib/directives/chip-list/public-api.mjs +5 -0
  20. package/esm2020/lib/directives/public-api.mjs +3 -1
  21. package/fesm2015/recursyve-nice-ui-kit.v2.mjs +246 -39
  22. package/fesm2015/recursyve-nice-ui-kit.v2.mjs.map +1 -1
  23. package/fesm2020/recursyve-nice-ui-kit.v2.mjs +251 -37
  24. package/fesm2020/recursyve-nice-ui-kit.v2.mjs.map +1 -1
  25. package/lib/api/nice.api.d.ts +1 -0
  26. package/lib/components/alert/alert.component.d.ts +3 -2
  27. package/lib/components/alert/alert.types.d.ts +1 -0
  28. package/lib/components/async-typeahead/async-typeahead.component.d.ts +3 -2
  29. package/lib/components/base-form/base-form.component.d.ts +4 -3
  30. package/lib/components/form-error/control-status.directive.d.ts +2 -3
  31. package/lib/components/navigation/vertical/vertical.component.d.ts +2 -2
  32. package/lib/directives/chip-async-typeahead/chip-async-typeahead.directive.d.ts +14 -0
  33. package/lib/directives/chip-async-typeahead/index.d.ts +1 -0
  34. package/lib/directives/chip-async-typeahead/public-api.d.ts +1 -0
  35. package/lib/directives/chip-list/chip-list-items/chip-list-item-label.directive.d.ts +8 -0
  36. package/lib/directives/chip-list/chip-list-items/chip-list-items.component.d.ts +14 -0
  37. package/lib/directives/chip-list/chip-list.directive.d.ts +27 -0
  38. package/lib/directives/chip-list/chip-list.module.d.ts +11 -0
  39. package/lib/directives/chip-list/index.d.ts +1 -0
  40. package/lib/directives/chip-list/public-api.d.ts +4 -0
  41. package/lib/directives/public-api.d.ts +2 -0
  42. package/package.json +1 -1
  43. package/src/lib/components/chip-list/chip-list.theme.scss +14 -0
  44. package/src/lib/components/chip-list/components/item-list/item-list.theme.scss +37 -0
  45. package/src/lib/directives/chip-list/chip-list-items/chip-list-items.theme.scss +35 -0
  46. package/src/lib/nice.theme.scss +5 -0
  47. package/styles/tailwind.scss +77 -74
  48. package/tailwind/plugins/theming.js +1 -1
  49. package/src/lib/nice.tailwind.scss +0 -94
@@ -2,7 +2,7 @@ import * as i1$7 from '@angular/animations';
2
2
  import { animation, style, animate, trigger, transition, useAnimation, state, keyframes } from '@angular/animations';
3
3
  import { HttpContextToken, HttpResponse, HttpContext, HttpParams } from '@angular/common/http';
4
4
  import * as i0 from '@angular/core';
5
- import { Injectable, NgModule, EventEmitter, Component, ViewEncapsulation, ChangeDetectionStrategy, Input, Output, HostBinding, InjectionToken, Directive, HostListener, forwardRef, Optional, Inject, ViewChild, ViewChildren, Self, Pipe, ElementRef, PLATFORM_ID, TemplateRef, ContentChildren, SkipSelf } from '@angular/core';
5
+ import { Injectable, NgModule, EventEmitter, Component, ViewEncapsulation, ChangeDetectionStrategy, Input, Output, HostBinding, InjectionToken, Directive, HostListener, forwardRef, Optional, Inject, ViewChild, ViewChildren, Self, Pipe, ElementRef, PLATFORM_ID, TemplateRef, ContentChildren, ContentChild, SkipSelf } from '@angular/core';
6
6
  import { plainToInstance } from 'class-transformer';
7
7
  import { map, filter, takeUntil, tap, take, debounceTime as debounceTime$1, delay, switchMap } from 'rxjs/operators';
8
8
  import { __rest, __awaiter } from 'tslib';
@@ -658,6 +658,7 @@ function mixinNiceApi(base) {
658
658
  throw this.exceptionFactory.transform(error);
659
659
  }
660
660
  transformOptions(options) {
661
+ var _a;
661
662
  if (!options) {
662
663
  return options;
663
664
  }
@@ -666,7 +667,7 @@ function mixinNiceApi(base) {
666
667
  if (type) {
667
668
  context.set(TRANSFORM_TYPE, type);
668
669
  }
669
- return Object.assign(Object.assign({}, values), { context });
670
+ return Object.assign(Object.assign({}, values), { responseType: (_a = values.responseType) !== null && _a !== void 0 ? _a : "json", context });
670
671
  }
671
672
  constructor(...args) {
672
673
  super(...args);
@@ -794,14 +795,7 @@ class NiceAlertComponent {
794
795
  * Host binding for component classes
795
796
  */
796
797
  get classList() {
797
- return {
798
- "nice-alert-appearance-border": this.appearance === "border",
799
- "nice-alert-appearance-fill": this.appearance === "fill",
800
- "nice-alert-appearance-outline": this.appearance === "outline",
801
- "nice-alert-appearance-soft": this.appearance === "soft",
802
- "nice-alert-dismissed": this.dismissed,
803
- "nice-alert-dismissible": this.dismissible,
804
- "nice-alert-show-icon": this.showIcon,
798
+ let types = {
805
799
  "nice-alert-type-primary": this.type === "primary",
806
800
  "nice-alert-type-accent": this.type === "accent",
807
801
  "nice-alert-type-warn": this.type === "warn",
@@ -811,6 +805,14 @@ class NiceAlertComponent {
811
805
  "nice-alert-type-warning": this.type === "warning",
812
806
  "nice-alert-type-error": this.type === "error"
813
807
  };
808
+ if (this.color) {
809
+ types = {
810
+ "nice-alert-type-primary": this.color === "primary",
811
+ "nice-alert-type-accent": this.color === "accent",
812
+ "nice-alert-type-warn": this.color === "warn"
813
+ };
814
+ }
815
+ return Object.assign({ "nice-alert-appearance-border": this.appearance === "border", "nice-alert-appearance-fill": this.appearance === "fill", "nice-alert-appearance-outline": this.appearance === "outline", "nice-alert-appearance-soft": this.appearance === "soft", "nice-alert-dismissed": this.dismissed, "nice-alert-dismissible": this.dismissible, "nice-alert-show-icon": this.showIcon }, types);
814
816
  }
815
817
  // -----------------------------------------------------------------------------------------------------
816
818
  // @ Lifecycle hooks
@@ -919,7 +921,7 @@ class NiceAlertComponent {
919
921
  }
920
922
  }
921
923
  NiceAlertComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: NiceAlertComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: NiceAlertService }, { token: NiceUtilsService }], target: i0.ɵɵFactoryTarget.Component });
922
- NiceAlertComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.3", type: NiceAlertComponent, selector: "nice-alert", inputs: { appearance: "appearance", dismissed: "dismissed", dismissible: "dismissible", disableAnimation: "disableAnimation", name: "name", showIcon: "showIcon", type: "type" }, outputs: { dismissedChanged: "dismissedChanged" }, host: { properties: { "class": "this.classList" } }, exportAs: ["niceAlert"], usesOnChanges: true, ngImport: i0, template: "<div\n class=\"nice-alert-container\"\n *ngIf=\"!dismissible || dismissible && !dismissed\"\n [@fadeIn]=\"!dismissed && !disableAnimation\"\n [@fadeOut]=\"!dismissed && !disableAnimation\">\n\n <!-- Border -->\n <div\n class=\"nice-alert-border\"\n *ngIf=\"appearance === 'border'\"></div>\n\n <!-- Icon -->\n <div\n class=\"nice-alert-icon\"\n *ngIf=\"showIcon\">\n\n <!-- Custom icon -->\n <div class=\"nice-alert-custom-icon\">\n <ng-content select=\"[niceAlertIcon]\"></ng-content>\n </div>\n\n <!-- Default icons -->\n <div class=\"nice-alert-default-icon\">\n\n <mat-icon\n *ngIf=\"type === 'primary'\"\n [svgIcon]=\"'heroicons_solid:check-circle'\"></mat-icon>\n\n <mat-icon\n *ngIf=\"type === 'accent'\"\n [svgIcon]=\"'heroicons_solid:check-circle'\"></mat-icon>\n\n <mat-icon\n *ngIf=\"type === 'warn'\"\n [svgIcon]=\"'heroicons_solid:x-circle'\"></mat-icon>\n\n <mat-icon\n *ngIf=\"type === 'basic'\"\n [svgIcon]=\"'heroicons_solid:check-circle'\"></mat-icon>\n\n <mat-icon\n *ngIf=\"type === 'info'\"\n [svgIcon]=\"'heroicons_solid:information-circle'\"></mat-icon>\n\n <mat-icon\n *ngIf=\"type === 'success'\"\n [svgIcon]=\"'heroicons_solid:check-circle'\"></mat-icon>\n\n <mat-icon\n *ngIf=\"type === 'warning'\"\n [svgIcon]=\"'heroicons_solid:exclamation'\"></mat-icon>\n\n <mat-icon\n *ngIf=\"type === 'error'\"\n [svgIcon]=\"'heroicons_solid:x-circle'\"></mat-icon>\n\n </div>\n\n </div>\n\n <!-- Content -->\n <div class=\"nice-alert-content\">\n\n <div class=\"nice-alert-title\">\n <ng-content select=\"[niceAlertTitle]\"></ng-content>\n </div>\n\n <div class=\"nice-alert-message\">\n <ng-content></ng-content>\n </div>\n\n </div>\n\n <!-- Dismiss button -->\n <button\n class=\"nice-alert-dismiss-button\"\n mat-icon-button\n (click)=\"dismiss()\">\n <mat-icon [svgIcon]=\"'heroicons_solid:x'\"></mat-icon>\n </button>\n\n</div>\n", components: [{ type: i3.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { type: i2.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }], directives: [{ type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], animations: niceAnimations, changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
924
+ NiceAlertComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.3", type: NiceAlertComponent, selector: "nice-alert", inputs: { appearance: "appearance", dismissed: "dismissed", dismissible: "dismissible", disableAnimation: "disableAnimation", name: "name", showIcon: "showIcon", type: "type", color: "color" }, outputs: { dismissedChanged: "dismissedChanged" }, host: { properties: { "class": "this.classList" } }, exportAs: ["niceAlert"], usesOnChanges: true, ngImport: i0, template: "<div\n class=\"nice-alert-container\"\n *ngIf=\"!dismissible || dismissible && !dismissed\"\n [@fadeIn]=\"!dismissed && !disableAnimation\"\n [@fadeOut]=\"!dismissed && !disableAnimation\">\n\n <!-- Border -->\n <div\n class=\"nice-alert-border\"\n *ngIf=\"appearance === 'border'\"></div>\n\n <!-- Icon -->\n <div\n class=\"nice-alert-icon\"\n *ngIf=\"showIcon\">\n\n <!-- Custom icon -->\n <div class=\"nice-alert-custom-icon\">\n <ng-content select=\"[niceAlertIcon]\"></ng-content>\n </div>\n\n <!-- Default icons -->\n <div class=\"nice-alert-default-icon\">\n\n <mat-icon\n *ngIf=\"type === 'primary'\"\n [svgIcon]=\"'heroicons_solid:check-circle'\"></mat-icon>\n\n <mat-icon\n *ngIf=\"type === 'accent'\"\n [svgIcon]=\"'heroicons_solid:check-circle'\"></mat-icon>\n\n <mat-icon\n *ngIf=\"type === 'warn'\"\n [svgIcon]=\"'heroicons_solid:x-circle'\"></mat-icon>\n\n <mat-icon\n *ngIf=\"type === 'basic'\"\n [svgIcon]=\"'heroicons_solid:check-circle'\"></mat-icon>\n\n <mat-icon\n *ngIf=\"type === 'info'\"\n [svgIcon]=\"'heroicons_solid:information-circle'\"></mat-icon>\n\n <mat-icon\n *ngIf=\"type === 'success'\"\n [svgIcon]=\"'heroicons_solid:check-circle'\"></mat-icon>\n\n <mat-icon\n *ngIf=\"type === 'warning'\"\n [svgIcon]=\"'heroicons_solid:exclamation'\"></mat-icon>\n\n <mat-icon\n *ngIf=\"type === 'error'\"\n [svgIcon]=\"'heroicons_solid:x-circle'\"></mat-icon>\n\n </div>\n\n </div>\n\n <!-- Content -->\n <div class=\"nice-alert-content\">\n\n <div class=\"nice-alert-title\">\n <ng-content select=\"[niceAlertTitle]\"></ng-content>\n </div>\n\n <div class=\"nice-alert-message\">\n <ng-content></ng-content>\n </div>\n\n </div>\n\n <!-- Dismiss button -->\n <button\n class=\"nice-alert-dismiss-button\"\n mat-icon-button\n (click)=\"dismiss()\">\n <mat-icon [svgIcon]=\"'heroicons_solid:x'\"></mat-icon>\n </button>\n\n</div>\n", components: [{ type: i3.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { type: i2.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }], directives: [{ type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], animations: niceAnimations, changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
923
925
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: NiceAlertComponent, decorators: [{
924
926
  type: Component,
925
927
  args: [{ selector: "nice-alert", encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, animations: niceAnimations, exportAs: "niceAlert", template: "<div\n class=\"nice-alert-container\"\n *ngIf=\"!dismissible || dismissible && !dismissed\"\n [@fadeIn]=\"!dismissed && !disableAnimation\"\n [@fadeOut]=\"!dismissed && !disableAnimation\">\n\n <!-- Border -->\n <div\n class=\"nice-alert-border\"\n *ngIf=\"appearance === 'border'\"></div>\n\n <!-- Icon -->\n <div\n class=\"nice-alert-icon\"\n *ngIf=\"showIcon\">\n\n <!-- Custom icon -->\n <div class=\"nice-alert-custom-icon\">\n <ng-content select=\"[niceAlertIcon]\"></ng-content>\n </div>\n\n <!-- Default icons -->\n <div class=\"nice-alert-default-icon\">\n\n <mat-icon\n *ngIf=\"type === 'primary'\"\n [svgIcon]=\"'heroicons_solid:check-circle'\"></mat-icon>\n\n <mat-icon\n *ngIf=\"type === 'accent'\"\n [svgIcon]=\"'heroicons_solid:check-circle'\"></mat-icon>\n\n <mat-icon\n *ngIf=\"type === 'warn'\"\n [svgIcon]=\"'heroicons_solid:x-circle'\"></mat-icon>\n\n <mat-icon\n *ngIf=\"type === 'basic'\"\n [svgIcon]=\"'heroicons_solid:check-circle'\"></mat-icon>\n\n <mat-icon\n *ngIf=\"type === 'info'\"\n [svgIcon]=\"'heroicons_solid:information-circle'\"></mat-icon>\n\n <mat-icon\n *ngIf=\"type === 'success'\"\n [svgIcon]=\"'heroicons_solid:check-circle'\"></mat-icon>\n\n <mat-icon\n *ngIf=\"type === 'warning'\"\n [svgIcon]=\"'heroicons_solid:exclamation'\"></mat-icon>\n\n <mat-icon\n *ngIf=\"type === 'error'\"\n [svgIcon]=\"'heroicons_solid:x-circle'\"></mat-icon>\n\n </div>\n\n </div>\n\n <!-- Content -->\n <div class=\"nice-alert-content\">\n\n <div class=\"nice-alert-title\">\n <ng-content select=\"[niceAlertTitle]\"></ng-content>\n </div>\n\n <div class=\"nice-alert-message\">\n <ng-content></ng-content>\n </div>\n\n </div>\n\n <!-- Dismiss button -->\n <button\n class=\"nice-alert-dismiss-button\"\n mat-icon-button\n (click)=\"dismiss()\">\n <mat-icon [svgIcon]=\"'heroicons_solid:x'\"></mat-icon>\n </button>\n\n</div>\n" }]
@@ -937,6 +939,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImpor
937
939
  type: Input
938
940
  }], type: [{
939
941
  type: Input
942
+ }], color: [{
943
+ type: Input
940
944
  }], dismissedChanged: [{
941
945
  type: Output
942
946
  }], classList: [{
@@ -2767,6 +2771,7 @@ class NiceAsyncTypeaheadComponent extends _BaseAsyncTypeaheadComponent {
2767
2771
  this.allowNotFoundItems = false;
2768
2772
  this.panelClass = [];
2769
2773
  this.bindValue = "id";
2774
+ this.selected = new EventEmitter();
2770
2775
  this._disabled = false;
2771
2776
  this.id = uuid.v4();
2772
2777
  this.describedBy = "";
@@ -2813,6 +2818,7 @@ class NiceAsyncTypeaheadComponent extends _BaseAsyncTypeaheadComponent {
2813
2818
  this._value = value;
2814
2819
  this.propagate(value);
2815
2820
  this.stateChanges.next();
2821
+ this.selected.emit(value);
2816
2822
  }
2817
2823
  }
2818
2824
  get value() {
@@ -3060,13 +3066,13 @@ class NiceAsyncTypeaheadComponent extends _BaseAsyncTypeaheadComponent {
3060
3066
  }
3061
3067
  }
3062
3068
  NiceAsyncTypeaheadComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: NiceAsyncTypeaheadComponent, deps: [{ token: i1$2.NgControl, optional: true, self: true }, { token: i1$2.NgForm, optional: true }, { token: i1$2.FormGroupDirective, optional: true }, { token: i2$2.ErrorStateMatcher }, { token: i0.NgZone }, { token: i0.ChangeDetectorRef }, { token: NiceAsyncTypeaheadService }], target: i0.ɵɵFactoryTarget.Component });
3063
- NiceAsyncTypeaheadComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.3", type: NiceAsyncTypeaheadComponent, selector: "nice-async-typeahead", inputs: { resource: "resource", searchOptions: "searchOptions", preloadResource: "preloadResource", allowNotFoundItems: "allowNotFoundItems", panelClass: "panelClass", bindValue: "bindValue", bindLabel: "bindLabel", placeholder: "placeholder", emptyPlaceholder: "emptyPlaceholder", optionTemplate: "optionTemplate", filterFn: "filterFn", labelFormatFn: "labelFormatFn", disabled: "disabled", value: "value", required: "required" }, host: { properties: { "class.floating": "this.shouldLabelFloat", "id": "this.id", "attr.aria-describedby": "this.describedBy" } }, providers: [
3069
+ NiceAsyncTypeaheadComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.3", type: NiceAsyncTypeaheadComponent, selector: "nice-async-typeahead", inputs: { resource: "resource", searchOptions: "searchOptions", preloadResource: "preloadResource", allowNotFoundItems: "allowNotFoundItems", panelClass: "panelClass", bindValue: "bindValue", bindLabel: "bindLabel", placeholder: "placeholder", emptyPlaceholder: "emptyPlaceholder", optionTemplate: "optionTemplate", filterFn: "filterFn", labelFormatFn: "labelFormatFn", disabled: "disabled", value: "value", required: "required" }, outputs: { selected: "selected" }, host: { properties: { "class.floating": "this.shouldLabelFloat", "id": "this.id", "attr.aria-describedby": "this.describedBy" } }, providers: [
3064
3070
  {
3065
3071
  provide: MatFormFieldControl,
3066
3072
  useExisting: NiceAsyncTypeaheadComponent
3067
3073
  },
3068
3074
  NiceAsyncTypeaheadService
3069
- ], viewQueries: [{ propertyName: "input", first: true, predicate: ["searchInput"], descendants: true, static: true }, { propertyName: "options", predicate: MatOption, descendants: true }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<ng-container *ngIf=\"{ loading: service.loading$ | async, loadingPage: service.loadingPage$ | async, values: service.filteredItems$ | async } as ctx\">\n <div class=\"flex\" *ngIf=\"!disabled; else disable\">\n <input\n #searchInput\n matInput\n class=\"flex-auto\"\n type=\"text\"\n name=\"mat-autocomplete\"\n [disabled]=\"$any(disabled)\"\n [placeholder]=\"placeholder\"\n [formControl]=\"searchControl\"\n [matAutocomplete]=\"auto\"\n [required]=\"$any(required)\"\n (focus)=\"focusChanged(true)\"\n />\n <mat-icon *ngIf=\"value && !ctx.loading\" matSuffix class=\"close-button secondary-text\" (click)=\"onRemove($event)\">\n close\n </mat-icon>\n\n <mat-spinner class=\"self-center\" [diameter]=\"16\" *ngIf=\"ctx.loading\"></mat-spinner>\n </div>\n <mat-autocomplete\n #auto=\"matAutocomplete\"\n [panelWidth]=\"panelWidth\"\n [class]=\"panelClass\"\n (optionActivated)=\"onOptionActivated($event)\"\n (optionSelected)=\"onOptionSelected($event)\"\n (closed)=\"updateState(false)\"\n (opened)=\"updateState(true)\"\n (optionsScroll)=\"onEndScroll()\"\n autoActiveFirstOption\n >\n <mat-progress-bar *ngIf=\"open && ctx.loading\" mode=\"indeterminate\" color=\"primary\"></mat-progress-bar>\n <mat-option *ngFor=\"let option of ctx.values\" [value]=\"option\">\n <ng-container\n *ngIf=\"optionTemplate; else format\"\n [ngTemplateOutlet]=\"optionTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: option }\">\n </ng-container>\n <ng-template #format>\n {{ formatLabel(option) }}\n </ng-template>\n </mat-option>\n <mat-option *ngIf=\"!ctx.values?.length && !allowNotFoundItems\" disabled>\n <ng-container *ngIf=\"emptyPlaceholder; else defaultEmptyPlaceholder\">\n {{ emptyPlaceholder }}\n </ng-container>\n <ng-template #defaultEmptyPlaceholder>\n {{ \"components.typeahead.no_item_found\" | translate }}\n </ng-template>\n </mat-option>\n <mat-option *ngIf=\"!ctx.values?.length && allowNotFoundItems\" id=\"new-value-option\" [value]=\"searchControl.value\">\n <span class=\"italic\">{{ searchControl.value }}</span>\n </mat-option>\n <mat-progress-bar *ngIf=\"open && ctx.loadingPage\" mode=\"indeterminate\" color=\"primary\"></mat-progress-bar>\n </mat-autocomplete>\n</ng-container>\n\n<ng-template #disable>\n <input\n matInput\n class=\"disabled-input\"\n type=\"text\"\n [disabled]=\"true\"\n [placeholder]=\"placeholder\"\n [formControl]=\"searchControl\"\n [required]=\"$any(required)\"\n />\n</ng-template>\n", styles: ["nice-async-typeahead{width:100%}nice-async-typeahead .close-button{flex:1 1 18px;cursor:pointer;min-height:18px!important;min-width:18px!important;height:18px!important;width:18px!important;font-size:18px!important;align-self:center}nice-async-typeahead .disabled-input{flex:1 1 95%}nice-async-typeahead .arrow-container{display:flex;bottom:7px;align-self:flex-end;position:relative;text-align:center;-webkit-user-select:none;user-select:none}nice-async-typeahead .arrow{border-left:5px solid transparent;border-right:5px solid transparent;border-top:5px solid;margin:0 4px;color:#0000008a}.italic{font-style:italic}\n"], components: [{ type: i3.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { type: i4$1.MatSpinner, selector: "mat-spinner", inputs: ["color"] }, { type: i1$1.MatAutocomplete, selector: "mat-autocomplete", inputs: ["disableRipple"], exportAs: ["matAutocomplete"] }, { type: i6.MatProgressBar, selector: "mat-progress-bar", inputs: ["color", "value", "bufferValue", "mode"], outputs: ["animationEnd"], exportAs: ["matProgressBar"] }, { type: i2$2.MatOption, selector: "mat-option", exportAs: ["matOption"] }], directives: [{ type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i9.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { type: i1$2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { type: i1$1.MatAutocompleteTrigger, selector: "input[matAutocomplete], textarea[matAutocomplete]", exportAs: ["matAutocompleteTrigger"] }, { type: i1$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i1$2.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { type: i1$2.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { type: i10.MatSuffix, selector: "[matSuffix]" }, { type: OptionsScrollDirective, selector: "mat-autocomplete[optionsScroll]", inputs: ["thresholdPercent"], outputs: ["optionsScroll"] }, { type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i4.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }], pipes: { "async": i4.AsyncPipe, "translate": i1.TranslatePipe }, encapsulation: i0.ViewEncapsulation.None });
3075
+ ], viewQueries: [{ propertyName: "input", first: true, predicate: ["searchInput"], descendants: true }, { propertyName: "options", predicate: MatOption, descendants: true }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<ng-container *ngIf=\"{ loading: service.loading$ | async, loadingPage: service.loadingPage$ | async, values: service.filteredItems$ | async } as ctx\">\n <div class=\"flex\" *ngIf=\"!disabled; else disable\">\n <input\n #searchInput\n matInput\n class=\"flex-auto\"\n type=\"text\"\n name=\"mat-autocomplete\"\n [disabled]=\"$any(disabled)\"\n [placeholder]=\"placeholder\"\n [formControl]=\"searchControl\"\n [matAutocomplete]=\"auto\"\n [required]=\"$any(required)\"\n (focus)=\"focusChanged(true)\"\n />\n <mat-icon *ngIf=\"value && !ctx.loading\" matSuffix class=\"close-button secondary-text\" (click)=\"onRemove($event)\">\n close\n </mat-icon>\n\n <mat-spinner class=\"self-center\" [diameter]=\"16\" *ngIf=\"ctx.loading\"></mat-spinner>\n </div>\n <mat-autocomplete\n #auto=\"matAutocomplete\"\n [panelWidth]=\"panelWidth\"\n [class]=\"panelClass\"\n (optionActivated)=\"onOptionActivated($event)\"\n (optionSelected)=\"onOptionSelected($event)\"\n (closed)=\"updateState(false)\"\n (opened)=\"updateState(true)\"\n (optionsScroll)=\"onEndScroll()\"\n autoActiveFirstOption\n >\n <mat-progress-bar *ngIf=\"open && ctx.loading\" mode=\"indeterminate\" color=\"primary\"></mat-progress-bar>\n <mat-option *ngFor=\"let option of ctx.values\" [value]=\"option\">\n <ng-container\n *ngIf=\"optionTemplate; else format\"\n [ngTemplateOutlet]=\"optionTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: option }\">\n </ng-container>\n <ng-template #format>\n {{ formatLabel(option) }}\n </ng-template>\n </mat-option>\n <mat-option *ngIf=\"!ctx.values?.length && !allowNotFoundItems\" disabled>\n <ng-container *ngIf=\"emptyPlaceholder; else defaultEmptyPlaceholder\">\n {{ emptyPlaceholder }}\n </ng-container>\n <ng-template #defaultEmptyPlaceholder>\n {{ \"components.typeahead.no_item_found\" | translate }}\n </ng-template>\n </mat-option>\n <mat-option *ngIf=\"!ctx.values?.length && allowNotFoundItems\" id=\"new-value-option\" [value]=\"searchControl.value\">\n <span class=\"italic\">{{ searchControl.value }}</span>\n </mat-option>\n <mat-progress-bar *ngIf=\"open && ctx.loadingPage\" mode=\"indeterminate\" color=\"primary\"></mat-progress-bar>\n </mat-autocomplete>\n</ng-container>\n\n<ng-template #disable>\n <input\n matInput\n class=\"disabled-input\"\n type=\"text\"\n [disabled]=\"true\"\n [placeholder]=\"placeholder\"\n [formControl]=\"searchControl\"\n [required]=\"$any(required)\"\n />\n</ng-template>\n", styles: ["nice-async-typeahead{width:100%}nice-async-typeahead .close-button{flex:1 1 18px;cursor:pointer;min-height:18px!important;min-width:18px!important;height:18px!important;width:18px!important;font-size:18px!important;align-self:center}nice-async-typeahead .disabled-input{flex:1 1 95%}nice-async-typeahead .arrow-container{display:flex;bottom:7px;align-self:flex-end;position:relative;text-align:center;-webkit-user-select:none;user-select:none}nice-async-typeahead .arrow{border-left:5px solid transparent;border-right:5px solid transparent;border-top:5px solid;margin:0 4px;color:#0000008a}.italic{font-style:italic}\n"], components: [{ type: i3.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { type: i4$1.MatSpinner, selector: "mat-spinner", inputs: ["color"] }, { type: i1$1.MatAutocomplete, selector: "mat-autocomplete", inputs: ["disableRipple"], exportAs: ["matAutocomplete"] }, { type: i6.MatProgressBar, selector: "mat-progress-bar", inputs: ["color", "value", "bufferValue", "mode"], outputs: ["animationEnd"], exportAs: ["matProgressBar"] }, { type: i2$2.MatOption, selector: "mat-option", exportAs: ["matOption"] }], directives: [{ type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i9.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { type: i1$2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { type: i1$1.MatAutocompleteTrigger, selector: "input[matAutocomplete], textarea[matAutocomplete]", exportAs: ["matAutocompleteTrigger"] }, { type: i1$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i1$2.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { type: i1$2.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { type: i10.MatSuffix, selector: "[matSuffix]" }, { type: OptionsScrollDirective, selector: "mat-autocomplete[optionsScroll]", inputs: ["thresholdPercent"], outputs: ["optionsScroll"] }, { type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i4.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }], pipes: { "async": i4.AsyncPipe, "translate": i1.TranslatePipe }, encapsulation: i0.ViewEncapsulation.None });
3070
3076
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: NiceAsyncTypeaheadComponent, decorators: [{
3071
3077
  type: Component,
3072
3078
  args: [{ selector: "nice-async-typeahead", encapsulation: ViewEncapsulation.None, providers: [
@@ -3088,7 +3094,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImpor
3088
3094
  }] }, { type: i2$2.ErrorStateMatcher }, { type: i0.NgZone }, { type: i0.ChangeDetectorRef }, { type: NiceAsyncTypeaheadService }];
3089
3095
  }, propDecorators: { input: [{
3090
3096
  type: ViewChild,
3091
- args: ["searchInput", { static: true }]
3097
+ args: ["searchInput"]
3092
3098
  }], options: [{
3093
3099
  type: ViewChildren,
3094
3100
  args: [MatOption]
@@ -3114,6 +3120,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImpor
3114
3120
  type: Input
3115
3121
  }], filterFn: [{
3116
3122
  type: Input
3123
+ }], selected: [{
3124
+ type: Output
3117
3125
  }], labelFormatFn: [{
3118
3126
  type: Input
3119
3127
  }], disabled: [{
@@ -3191,16 +3199,25 @@ class NiceBaseFormComponent {
3191
3199
  this.loading = false;
3192
3200
  // tslint:disable-next-line:no-output-native
3193
3201
  this.submit = new EventEmitter();
3202
+ this.unsubscribeAll$ = new Subject();
3194
3203
  this.propagate = () => { };
3195
3204
  }
3205
+ onChange(event) {
3206
+ if (event) {
3207
+ if (event.code === KeyboardCodes.Enter) {
3208
+ this.clickSubmit();
3209
+ }
3210
+ }
3211
+ }
3196
3212
  ngOnInit() {
3197
- this.valueChangeSub$ = this.formGroup.valueChanges.subscribe(() => {
3213
+ this.formGroup.valueChanges.pipe(takeUntil(this.unsubscribeAll$)).subscribe(() => {
3198
3214
  this.onValueChange(this.formGroup.getRawValue());
3199
3215
  });
3200
3216
  }
3201
3217
  ngOnDestroy() {
3202
- var _a;
3203
- (_a = this.valueChangeSub$) === null || _a === void 0 ? void 0 : _a.unsubscribe();
3218
+ var _a, _b;
3219
+ (_a = this.unsubscribeAll$) === null || _a === void 0 ? void 0 : _a.next();
3220
+ (_b = this.unsubscribeAll$) === null || _b === void 0 ? void 0 : _b.complete();
3204
3221
  }
3205
3222
  registerOnChange(fn) {
3206
3223
  this.propagate = fn;
@@ -3253,7 +3270,7 @@ class NiceBaseFormComponent {
3253
3270
  }
3254
3271
  }
3255
3272
  NiceBaseFormComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: NiceBaseFormComponent, deps: [{ token: i1$3.GeneratedFormGroup }], target: i0.ɵɵFactoryTarget.Component });
3256
- NiceBaseFormComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.3", type: NiceBaseFormComponent, selector: "ng-component", inputs: { loading: "loading" }, outputs: { submit: "submit" }, viewQueries: [{ propertyName: "stepper", first: true, predicate: CdkStepper, descendants: true }], ngImport: i0, template: ``, isInline: true });
3273
+ NiceBaseFormComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.3", type: NiceBaseFormComponent, selector: "ng-component", inputs: { loading: "loading" }, outputs: { submit: "submit" }, host: { listeners: { "keyup": "onChange($event)" } }, viewQueries: [{ propertyName: "stepper", first: true, predicate: CdkStepper, descendants: true }], ngImport: i0, template: ``, isInline: true });
3257
3274
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: NiceBaseFormComponent, decorators: [{
3258
3275
  type: Component,
3259
3276
  args: [{
@@ -3266,6 +3283,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImpor
3266
3283
  type: Input
3267
3284
  }], submit: [{
3268
3285
  type: Output
3286
+ }], onChange: [{
3287
+ type: HostListener,
3288
+ args: ["keyup", ["$event"]]
3269
3289
  }] } });
3270
3290
 
3271
3291
  class NiceFormSubmitDirective {
@@ -4344,10 +4364,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImpor
4344
4364
  }] } });
4345
4365
 
4346
4366
  class NiceControlStatusDirective {
4347
- constructor(el, vcr, resolver, formField, translateService) {
4367
+ constructor(el, vcr, formField, translateService) {
4348
4368
  this.el = el;
4349
4369
  this.vcr = vcr;
4350
- this.resolver = resolver;
4351
4370
  this.formField = formField;
4352
4371
  this.translateService = translateService;
4353
4372
  }
@@ -4364,7 +4383,7 @@ class NiceControlStatusDirective {
4364
4383
  if (this.control.errors.hasOwnProperty(error)) {
4365
4384
  if (this.control.errors[error]) {
4366
4385
  let lastErrorKey = error;
4367
- const param = {};
4386
+ let param;
4368
4387
  if (error === "pattern") {
4369
4388
  lastErrorKey = this.control.errors[error].requiredPattern;
4370
4389
  }
@@ -4372,15 +4391,24 @@ class NiceControlStatusDirective {
4372
4391
  lastErrorKey = this.control.errors[error].requiredMask;
4373
4392
  }
4374
4393
  if (error === "minlength" || error === "maxlength") {
4375
- param.value = this.control.errors[error].requiredLength;
4394
+ param = {
4395
+ value: this.control.errors[error].requiredLength
4396
+ };
4376
4397
  }
4377
4398
  if (error === "min") {
4378
- param.min = this.control.errors[error].min;
4379
- param.actual = this.control.errors[error].actual;
4399
+ param = {
4400
+ min: this.control.errors[error].min,
4401
+ actual: this.control.errors[error].actual
4402
+ };
4380
4403
  }
4381
4404
  if (error === "max") {
4382
- param.max = this.control.errors[error].max;
4383
- param.actual = this.control.errors[error].actual;
4405
+ param = {
4406
+ min: this.control.errors[error].max,
4407
+ actual: this.control.errors[error].actual
4408
+ };
4409
+ }
4410
+ if (typeof this.control.errors[error] === "object" && !param) {
4411
+ param = this.control.errors[error];
4384
4412
  }
4385
4413
  this.setError(this.translateService.instant(`errors.${lastErrorKey}`, param));
4386
4414
  break;
@@ -4394,8 +4422,7 @@ class NiceControlStatusDirective {
4394
4422
  }
4395
4423
  setError(text) {
4396
4424
  if (!this.ref) {
4397
- const factory = this.resolver.resolveComponentFactory(NiceFormErrorComponent);
4398
- this.ref = this.vcr.createComponent(factory);
4425
+ this.ref = this.vcr.createComponent(NiceFormErrorComponent);
4399
4426
  this.el.nativeElement
4400
4427
  .getElementsByClassName("mat-form-field-wrapper")
4401
4428
  .item(0)
@@ -4406,12 +4433,12 @@ class NiceControlStatusDirective {
4406
4433
  this.ref.instance.error = text;
4407
4434
  }
4408
4435
  }
4409
- NiceControlStatusDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: NiceControlStatusDirective, deps: [{ token: i0.ElementRef }, { token: i0.ViewContainerRef }, { token: i0.ComponentFactoryResolver }, { token: i10.MatFormField }, { token: i1.TranslateService }], target: i0.ɵɵFactoryTarget.Directive });
4436
+ NiceControlStatusDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: NiceControlStatusDirective, deps: [{ token: i0.ElementRef }, { token: i0.ViewContainerRef }, { token: i10.MatFormField }, { token: i1.TranslateService }], target: i0.ɵɵFactoryTarget.Directive });
4410
4437
  NiceControlStatusDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.0.3", type: NiceControlStatusDirective, selector: "[niceControlStatus]", ngImport: i0 });
4411
4438
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: NiceControlStatusDirective, decorators: [{
4412
4439
  type: Directive,
4413
4440
  args: [{ selector: "[niceControlStatus]" }]
4414
- }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.ViewContainerRef }, { type: i0.ComponentFactoryResolver }, { type: i10.MatFormField }, { type: i1.TranslateService }]; } });
4441
+ }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.ViewContainerRef }, { type: i10.MatFormField }, { type: i1.TranslateService }]; } });
4415
4442
 
4416
4443
  class NiceFormErrorModule {
4417
4444
  }
@@ -7557,7 +7584,6 @@ class NiceVerticalNavigationComponent extends NiceNavigationComponent {
7557
7584
  this._router = _router;
7558
7585
  this._scrollStrategyOptions = _scrollStrategyOptions;
7559
7586
  this._animationsEnabled = false;
7560
- this._hovered = false;
7561
7587
  this._scrollStrategy = this._scrollStrategyOptions.block();
7562
7588
  this.name = this._niceUtilsService.randomId();
7563
7589
  this.appearance = "default";
@@ -7565,6 +7591,7 @@ class NiceVerticalNavigationComponent extends NiceNavigationComponent {
7565
7591
  this.inner = false;
7566
7592
  this.mode = "side";
7567
7593
  this.opened = true;
7594
+ this.hovered = false;
7568
7595
  this.position = "left";
7569
7596
  this.transparentOverlay = false;
7570
7597
  this.appearanceChanged = new EventEmitter();
@@ -7598,7 +7625,7 @@ class NiceVerticalNavigationComponent extends NiceNavigationComponent {
7598
7625
  return {
7599
7626
  "nice-vertical-navigation-animations-enabled": this._animationsEnabled,
7600
7627
  [`nice-vertical-navigation-appearance-${this.appearance}`]: true,
7601
- "nice-vertical-navigation-hover": this._hovered,
7628
+ "nice-vertical-navigation-hover": this.hovered,
7602
7629
  "nice-vertical-navigation-inner": this.inner,
7603
7630
  "nice-vertical-navigation-mode-over": this.mode === "over",
7604
7631
  "nice-vertical-navigation-mode-side": this.mode === "side",
@@ -7996,7 +8023,7 @@ class NiceVerticalNavigationComponent extends NiceNavigationComponent {
7996
8023
  // Enable the animations
7997
8024
  this._enableAnimations();
7998
8025
  // Set the hovered
7999
- this._hovered = true;
8026
+ this.hovered = true;
8000
8027
  }
8001
8028
  /**
8002
8029
  * On mouseleave
@@ -8005,7 +8032,7 @@ class NiceVerticalNavigationComponent extends NiceNavigationComponent {
8005
8032
  // Enable the animations
8006
8033
  this._enableAnimations();
8007
8034
  // Set the hovered
8008
- this._hovered = false;
8035
+ this.hovered = false;
8009
8036
  }
8010
8037
  /**
8011
8038
  * Open/close the navigation
@@ -8033,7 +8060,7 @@ class NiceVerticalNavigationComponent extends NiceNavigationComponent {
8033
8060
  }
8034
8061
  }
8035
8062
  NiceVerticalNavigationComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: NiceVerticalNavigationComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: NiceNavigationService }, { token: NiceUtilsService }, { token: i1$7.AnimationBuilder }, { token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i1$6.Router }, { token: i1$4.ScrollStrategyOptions }], target: i0.ɵɵFactoryTarget.Component });
8036
- NiceVerticalNavigationComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.3", type: NiceVerticalNavigationComponent, selector: "nice-vertical-navigation", inputs: { name: "name", appearance: "appearance", autoCollapse: "autoCollapse", inner: "inner", mode: "mode", opened: "opened", position: "position", transparentOverlay: "transparentOverlay", navigation: "navigation" }, outputs: { appearanceChanged: "appearanceChanged", modeChanged: "modeChanged", openedChanged: "openedChanged", positionChanged: "positionChanged" }, host: { listeners: { "mouseenter": "_onMouseenter()", "mouseleave": "_onMouseleave()" }, properties: { "class": "this.classList", "style": "this.styleList" } }, viewQueries: [{ propertyName: "_navigationContentEl", first: true, predicate: ["navigationContent"], descendants: true }, { propertyName: "niceScrollbarDirectives", predicate: NiceScrollbarDirective, descendants: true }], exportAs: ["niceVerticalNavigation"], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<div class=\"nice-vertical-navigation-wrapper\">\n <!-- Header -->\n <div class=\"nice-vertical-navigation-header\">\n <ng-content select=\"[niceVerticalNavigationHeader]\"></ng-content>\n </div>\n\n <!-- Content -->\n <div\n class=\"nice-vertical-navigation-content\"\n niceScrollbar\n [niceScrollbarOptions]=\"{ wheelPropagation: inner, suppressScrollX: true }\"\n #navigationContent\n >\n <!-- Content header -->\n <div class=\"nice-vertical-navigation-content-header\">\n <ng-content select=\"[niceVerticalNavigationContentHeader]\"></ng-content>\n </div>\n\n <!-- Items -->\n <div *ngFor=\"let item of navigation; trackBy: trackByFn\" [@.disabled]=\"!animateNextNavChange\" @slideInRight>\n <!-- Skip the hidden items -->\n <ng-container *ngIf=\"(item.hidden && !item.hidden(item)) || !item.hidden\">\n <!-- Aside -->\n <nice-vertical-navigation-aside-item\n *ngIf=\"item.type === 'aside'\"\n [item]=\"item\"\n [name]=\"name\"\n [activeItemId]=\"activeAsideItemId\"\n [autoCollapse]=\"autoCollapse\"\n [skipChildren]=\"true\"\n (click)=\"toggleAside(item)\"\n ></nice-vertical-navigation-aside-item>\n\n <!-- Basic -->\n <nice-vertical-navigation-basic-item\n *ngIf=\"item.type === 'basic'\"\n [item]=\"item\"\n [name]=\"name\"\n ></nice-vertical-navigation-basic-item>\n\n <!-- Collapsable -->\n <nice-vertical-navigation-collapsable-item\n *ngIf=\"item.type === 'collapsable'\"\n [item]=\"item\"\n [name]=\"name\"\n [autoCollapse]=\"autoCollapse\"\n ></nice-vertical-navigation-collapsable-item>\n\n <!-- Divider -->\n <nice-vertical-navigation-divider-item\n *ngIf=\"item.type === 'divider'\"\n [item]=\"item\"\n [name]=\"name\"\n ></nice-vertical-navigation-divider-item>\n\n <!-- Group -->\n <nice-vertical-navigation-group-item\n *ngIf=\"item.type === 'group'\"\n [item]=\"item\"\n [name]=\"name\"\n [autoCollapse]=\"autoCollapse\"\n ></nice-vertical-navigation-group-item>\n\n <!-- Spacer -->\n <nice-vertical-navigation-spacer-item\n *ngIf=\"item.type === 'spacer'\"\n [item]=\"item\"\n [name]=\"name\"\n ></nice-vertical-navigation-spacer-item>\n </ng-container>\n </div>\n\n <!-- Content footer -->\n <div class=\"nice-vertical-navigation-content-footer\">\n <ng-content select=\"[niceVerticalNavigationContentFooter]\"></ng-content>\n </div>\n\n </div>\n\n <!-- Footer -->\n <div class=\"nice-vertical-navigation-footer\">\n <ng-content select=\"[niceVerticalNavigationFooter]\"></ng-content>\n </div>\n</div>\n\n<!-- Aside -->\n<div\n class=\"nice-vertical-navigation-aside-wrapper\"\n *ngIf=\"activeAsideItemId\"\n niceScrollbar\n [niceScrollbarOptions]=\"{ wheelPropagation: false, suppressScrollX: true }\"\n [@fadeInLeft]=\"position === 'left'\"\n [@fadeInRight]=\"position === 'right'\"\n [@fadeOutLeft]=\"position === 'left'\"\n [@fadeOutRight]=\"position === 'right'\"\n>\n\n <!-- Items -->\n <ng-container *ngFor=\"let item of navigation; trackBy: trackByFn\">\n <!-- Skip the hidden items -->\n <ng-container *ngIf=\"(item.hidden && !item.hidden(item)) || !item.hidden\">\n <!-- Aside -->\n <nice-vertical-navigation-aside-item\n *ngIf=\"item.type === 'aside' && item.id === activeAsideItemId\"\n [item]=\"item\"\n [name]=\"name\"\n [autoCollapse]=\"autoCollapse\"\n ></nice-vertical-navigation-aside-item>\n </ng-container>\n </ng-container>\n</div>\n", components: [{ type: NiceVerticalNavigationAsideItemComponent, selector: "nice-vertical-navigation-aside-item", inputs: ["activeItemId", "autoCollapse", "item", "name", "skipChildren"] }, { type: NiceVerticalNavigationBasicItemComponent, selector: "nice-vertical-navigation-basic-item", inputs: ["item", "name"] }, { type: NiceVerticalNavigationCollapsableItemComponent, selector: "nice-vertical-navigation-collapsable-item", inputs: ["autoCollapse", "item", "name"] }, { type: NiceVerticalNavigationDividerItemComponent, selector: "nice-vertical-navigation-divider-item", inputs: ["item", "name"] }, { type: NiceVerticalNavigationGroupItemComponent, selector: "nice-vertical-navigation-group-item", inputs: ["autoCollapse", "item", "name"] }, { type: NiceVerticalNavigationSpacerItemComponent, selector: "nice-vertical-navigation-spacer-item", inputs: ["item", "name"] }], directives: [{ type: NiceScrollbarDirective, selector: "[niceScrollbar]", inputs: ["niceScrollbar", "niceScrollbarOptions"], exportAs: ["niceScrollbar"] }, { type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], animations: niceAnimations, changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
8063
+ NiceVerticalNavigationComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.3", type: NiceVerticalNavigationComponent, selector: "nice-vertical-navigation", inputs: { name: "name", appearance: "appearance", autoCollapse: "autoCollapse", inner: "inner", mode: "mode", opened: "opened", hovered: "hovered", position: "position", transparentOverlay: "transparentOverlay", navigation: "navigation" }, outputs: { appearanceChanged: "appearanceChanged", modeChanged: "modeChanged", openedChanged: "openedChanged", positionChanged: "positionChanged" }, host: { listeners: { "mouseenter": "_onMouseenter()", "mouseleave": "_onMouseleave()" }, properties: { "class": "this.classList", "style": "this.styleList" } }, viewQueries: [{ propertyName: "_navigationContentEl", first: true, predicate: ["navigationContent"], descendants: true }, { propertyName: "niceScrollbarDirectives", predicate: NiceScrollbarDirective, descendants: true }], exportAs: ["niceVerticalNavigation"], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<div class=\"nice-vertical-navigation-wrapper\">\n <!-- Header -->\n <div class=\"nice-vertical-navigation-header\">\n <ng-content select=\"[niceVerticalNavigationHeader]\"></ng-content>\n </div>\n\n <!-- Content -->\n <div\n class=\"nice-vertical-navigation-content\"\n niceScrollbar\n [niceScrollbarOptions]=\"{ wheelPropagation: inner, suppressScrollX: true }\"\n #navigationContent\n >\n <!-- Content header -->\n <div class=\"nice-vertical-navigation-content-header\">\n <ng-content select=\"[niceVerticalNavigationContentHeader]\"></ng-content>\n </div>\n\n <!-- Items -->\n <div *ngFor=\"let item of navigation; trackBy: trackByFn\" [@.disabled]=\"!animateNextNavChange\" @slideInRight>\n <!-- Skip the hidden items -->\n <ng-container *ngIf=\"(item.hidden && !item.hidden(item)) || !item.hidden\">\n <!-- Aside -->\n <nice-vertical-navigation-aside-item\n *ngIf=\"item.type === 'aside'\"\n [item]=\"item\"\n [name]=\"name\"\n [activeItemId]=\"activeAsideItemId\"\n [autoCollapse]=\"autoCollapse\"\n [skipChildren]=\"true\"\n (click)=\"toggleAside(item)\"\n ></nice-vertical-navigation-aside-item>\n\n <!-- Basic -->\n <nice-vertical-navigation-basic-item\n *ngIf=\"item.type === 'basic'\"\n [item]=\"item\"\n [name]=\"name\"\n ></nice-vertical-navigation-basic-item>\n\n <!-- Collapsable -->\n <nice-vertical-navigation-collapsable-item\n *ngIf=\"item.type === 'collapsable'\"\n [item]=\"item\"\n [name]=\"name\"\n [autoCollapse]=\"autoCollapse\"\n ></nice-vertical-navigation-collapsable-item>\n\n <!-- Divider -->\n <nice-vertical-navigation-divider-item\n *ngIf=\"item.type === 'divider'\"\n [item]=\"item\"\n [name]=\"name\"\n ></nice-vertical-navigation-divider-item>\n\n <!-- Group -->\n <nice-vertical-navigation-group-item\n *ngIf=\"item.type === 'group'\"\n [item]=\"item\"\n [name]=\"name\"\n [autoCollapse]=\"autoCollapse\"\n ></nice-vertical-navigation-group-item>\n\n <!-- Spacer -->\n <nice-vertical-navigation-spacer-item\n *ngIf=\"item.type === 'spacer'\"\n [item]=\"item\"\n [name]=\"name\"\n ></nice-vertical-navigation-spacer-item>\n </ng-container>\n </div>\n\n <!-- Content footer -->\n <div class=\"nice-vertical-navigation-content-footer\">\n <ng-content select=\"[niceVerticalNavigationContentFooter]\"></ng-content>\n </div>\n\n </div>\n\n <!-- Footer -->\n <div class=\"nice-vertical-navigation-footer\">\n <ng-content select=\"[niceVerticalNavigationFooter]\"></ng-content>\n </div>\n</div>\n\n<!-- Aside -->\n<div\n class=\"nice-vertical-navigation-aside-wrapper\"\n *ngIf=\"activeAsideItemId\"\n niceScrollbar\n [niceScrollbarOptions]=\"{ wheelPropagation: false, suppressScrollX: true }\"\n [@fadeInLeft]=\"position === 'left'\"\n [@fadeInRight]=\"position === 'right'\"\n [@fadeOutLeft]=\"position === 'left'\"\n [@fadeOutRight]=\"position === 'right'\"\n>\n\n <!-- Items -->\n <ng-container *ngFor=\"let item of navigation; trackBy: trackByFn\">\n <!-- Skip the hidden items -->\n <ng-container *ngIf=\"(item.hidden && !item.hidden(item)) || !item.hidden\">\n <!-- Aside -->\n <nice-vertical-navigation-aside-item\n *ngIf=\"item.type === 'aside' && item.id === activeAsideItemId\"\n [item]=\"item\"\n [name]=\"name\"\n [autoCollapse]=\"autoCollapse\"\n ></nice-vertical-navigation-aside-item>\n </ng-container>\n </ng-container>\n</div>\n", components: [{ type: NiceVerticalNavigationAsideItemComponent, selector: "nice-vertical-navigation-aside-item", inputs: ["activeItemId", "autoCollapse", "item", "name", "skipChildren"] }, { type: NiceVerticalNavigationBasicItemComponent, selector: "nice-vertical-navigation-basic-item", inputs: ["item", "name"] }, { type: NiceVerticalNavigationCollapsableItemComponent, selector: "nice-vertical-navigation-collapsable-item", inputs: ["autoCollapse", "item", "name"] }, { type: NiceVerticalNavigationDividerItemComponent, selector: "nice-vertical-navigation-divider-item", inputs: ["item", "name"] }, { type: NiceVerticalNavigationGroupItemComponent, selector: "nice-vertical-navigation-group-item", inputs: ["autoCollapse", "item", "name"] }, { type: NiceVerticalNavigationSpacerItemComponent, selector: "nice-vertical-navigation-spacer-item", inputs: ["item", "name"] }], directives: [{ type: NiceScrollbarDirective, selector: "[niceScrollbar]", inputs: ["niceScrollbar", "niceScrollbarOptions"], exportAs: ["niceScrollbar"] }, { type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], animations: niceAnimations, changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
8037
8064
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: NiceVerticalNavigationComponent, decorators: [{
8038
8065
  type: Component,
8039
8066
  args: [{ selector: "nice-vertical-navigation", animations: niceAnimations, encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, exportAs: "niceVerticalNavigation", template: "<div class=\"nice-vertical-navigation-wrapper\">\n <!-- Header -->\n <div class=\"nice-vertical-navigation-header\">\n <ng-content select=\"[niceVerticalNavigationHeader]\"></ng-content>\n </div>\n\n <!-- Content -->\n <div\n class=\"nice-vertical-navigation-content\"\n niceScrollbar\n [niceScrollbarOptions]=\"{ wheelPropagation: inner, suppressScrollX: true }\"\n #navigationContent\n >\n <!-- Content header -->\n <div class=\"nice-vertical-navigation-content-header\">\n <ng-content select=\"[niceVerticalNavigationContentHeader]\"></ng-content>\n </div>\n\n <!-- Items -->\n <div *ngFor=\"let item of navigation; trackBy: trackByFn\" [@.disabled]=\"!animateNextNavChange\" @slideInRight>\n <!-- Skip the hidden items -->\n <ng-container *ngIf=\"(item.hidden && !item.hidden(item)) || !item.hidden\">\n <!-- Aside -->\n <nice-vertical-navigation-aside-item\n *ngIf=\"item.type === 'aside'\"\n [item]=\"item\"\n [name]=\"name\"\n [activeItemId]=\"activeAsideItemId\"\n [autoCollapse]=\"autoCollapse\"\n [skipChildren]=\"true\"\n (click)=\"toggleAside(item)\"\n ></nice-vertical-navigation-aside-item>\n\n <!-- Basic -->\n <nice-vertical-navigation-basic-item\n *ngIf=\"item.type === 'basic'\"\n [item]=\"item\"\n [name]=\"name\"\n ></nice-vertical-navigation-basic-item>\n\n <!-- Collapsable -->\n <nice-vertical-navigation-collapsable-item\n *ngIf=\"item.type === 'collapsable'\"\n [item]=\"item\"\n [name]=\"name\"\n [autoCollapse]=\"autoCollapse\"\n ></nice-vertical-navigation-collapsable-item>\n\n <!-- Divider -->\n <nice-vertical-navigation-divider-item\n *ngIf=\"item.type === 'divider'\"\n [item]=\"item\"\n [name]=\"name\"\n ></nice-vertical-navigation-divider-item>\n\n <!-- Group -->\n <nice-vertical-navigation-group-item\n *ngIf=\"item.type === 'group'\"\n [item]=\"item\"\n [name]=\"name\"\n [autoCollapse]=\"autoCollapse\"\n ></nice-vertical-navigation-group-item>\n\n <!-- Spacer -->\n <nice-vertical-navigation-spacer-item\n *ngIf=\"item.type === 'spacer'\"\n [item]=\"item\"\n [name]=\"name\"\n ></nice-vertical-navigation-spacer-item>\n </ng-container>\n </div>\n\n <!-- Content footer -->\n <div class=\"nice-vertical-navigation-content-footer\">\n <ng-content select=\"[niceVerticalNavigationContentFooter]\"></ng-content>\n </div>\n\n </div>\n\n <!-- Footer -->\n <div class=\"nice-vertical-navigation-footer\">\n <ng-content select=\"[niceVerticalNavigationFooter]\"></ng-content>\n </div>\n</div>\n\n<!-- Aside -->\n<div\n class=\"nice-vertical-navigation-aside-wrapper\"\n *ngIf=\"activeAsideItemId\"\n niceScrollbar\n [niceScrollbarOptions]=\"{ wheelPropagation: false, suppressScrollX: true }\"\n [@fadeInLeft]=\"position === 'left'\"\n [@fadeInRight]=\"position === 'right'\"\n [@fadeOutLeft]=\"position === 'left'\"\n [@fadeOutRight]=\"position === 'right'\"\n>\n\n <!-- Items -->\n <ng-container *ngFor=\"let item of navigation; trackBy: trackByFn\">\n <!-- Skip the hidden items -->\n <ng-container *ngIf=\"(item.hidden && !item.hidden(item)) || !item.hidden\">\n <!-- Aside -->\n <nice-vertical-navigation-aside-item\n *ngIf=\"item.type === 'aside' && item.id === activeAsideItemId\"\n [item]=\"item\"\n [name]=\"name\"\n [autoCollapse]=\"autoCollapse\"\n ></nice-vertical-navigation-aside-item>\n </ng-container>\n </ng-container>\n</div>\n" }]
@@ -8049,6 +8076,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImpor
8049
8076
  type: Input
8050
8077
  }], opened: [{
8051
8078
  type: Input
8079
+ }], hovered: [{
8080
+ type: Input
8052
8081
  }], position: [{
8053
8082
  type: Input
8054
8083
  }], transparentOverlay: [{
@@ -8300,10 +8329,10 @@ class NiceSweetAlertComponent {
8300
8329
  }
8301
8330
  }
8302
8331
  NiceSweetAlertComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: NiceSweetAlertComponent, deps: [{ token: MAT_DIALOG_DATA }, { token: i1$b.MatDialogRef }], target: i0.ɵɵFactoryTarget.Component });
8303
- NiceSweetAlertComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.3", type: NiceSweetAlertComponent, selector: "nice-alert", ngImport: i0, template: "<mat-dialog-content class=\"mat-typography mb-12 text-center\">\n <nice-lottie\n [options]=\"lottieConfig\"\n [width]=\"250\"\n (animCreated)=\"handleAnimation($event)\"\n ></nice-lottie>\n <h2 class=\"mt-8\">{{ alertConfig?.title }}</h2>\n {{ alertConfig?.message }}\n</mat-dialog-content>\n<mat-dialog-actions align=\"end\">\n <ng-container *ngFor=\"let button of alertConfig.buttons; let i = index\">\n <button mat-raised-button class=\"mr-4\" [ngClass]=\"getConfirmButtonClass()\" *ngIf=\"i === 0\" (click)=\"confirm()\">\n {{ button }}\n </button>\n <button mat-button (click)=\"close()\" *ngIf=\"i !== 0\">{{ button }}</button>\n </ng-container>\n</mat-dialog-actions>\n", styles: [".nice-alert-modal{width:500px}\n"], components: [{ type: NiceLottieComponent, selector: "nice-lottie", inputs: ["options", "width", "height"], outputs: ["animCreated"] }, { type: i2.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }], directives: [{ type: i1$b.MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }, { type: i1$b.MatDialogActions, selector: "[mat-dialog-actions], mat-dialog-actions, [matDialogActions]" }, { type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i4.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }], encapsulation: i0.ViewEncapsulation.None });
8332
+ NiceSweetAlertComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.3", type: NiceSweetAlertComponent, selector: "nice-alert", ngImport: i0, template: "<mat-dialog-content class=\"mat-typography mb-12 text-center\">\n <nice-lottie\n [options]=\"lottieConfig\"\n [width]=\"250\"\n (animCreated)=\"handleAnimation($event)\"\n ></nice-lottie>\n <h2 class=\"mt-8\">{{ alertConfig?.title }}</h2>\n <span [innerHTML]=\"alertConfig?.message\"></span>\n</mat-dialog-content>\n<mat-dialog-actions align=\"end\">\n <ng-container *ngFor=\"let button of alertConfig.buttons; let i = index\">\n <button mat-raised-button class=\"mr-4\" [ngClass]=\"getConfirmButtonClass()\" *ngIf=\"i === 0\" (click)=\"confirm()\">\n {{ button }}\n </button>\n <button mat-button (click)=\"close()\" *ngIf=\"i !== 0\">{{ button }}</button>\n </ng-container>\n</mat-dialog-actions>\n", styles: [".nice-alert-modal{width:500px}\n"], components: [{ type: NiceLottieComponent, selector: "nice-lottie", inputs: ["options", "width", "height"], outputs: ["animCreated"] }, { type: i2.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }], directives: [{ type: i1$b.MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }, { type: i1$b.MatDialogActions, selector: "[mat-dialog-actions], mat-dialog-actions, [matDialogActions]" }, { type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i4.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }], encapsulation: i0.ViewEncapsulation.None });
8304
8333
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: NiceSweetAlertComponent, decorators: [{
8305
8334
  type: Component,
8306
- args: [{ selector: "nice-alert", encapsulation: ViewEncapsulation.None, template: "<mat-dialog-content class=\"mat-typography mb-12 text-center\">\n <nice-lottie\n [options]=\"lottieConfig\"\n [width]=\"250\"\n (animCreated)=\"handleAnimation($event)\"\n ></nice-lottie>\n <h2 class=\"mt-8\">{{ alertConfig?.title }}</h2>\n {{ alertConfig?.message }}\n</mat-dialog-content>\n<mat-dialog-actions align=\"end\">\n <ng-container *ngFor=\"let button of alertConfig.buttons; let i = index\">\n <button mat-raised-button class=\"mr-4\" [ngClass]=\"getConfirmButtonClass()\" *ngIf=\"i === 0\" (click)=\"confirm()\">\n {{ button }}\n </button>\n <button mat-button (click)=\"close()\" *ngIf=\"i !== 0\">{{ button }}</button>\n </ng-container>\n</mat-dialog-actions>\n", styles: [".nice-alert-modal{width:500px}\n"] }]
8335
+ args: [{ selector: "nice-alert", encapsulation: ViewEncapsulation.None, template: "<mat-dialog-content class=\"mat-typography mb-12 text-center\">\n <nice-lottie\n [options]=\"lottieConfig\"\n [width]=\"250\"\n (animCreated)=\"handleAnimation($event)\"\n ></nice-lottie>\n <h2 class=\"mt-8\">{{ alertConfig?.title }}</h2>\n <span [innerHTML]=\"alertConfig?.message\"></span>\n</mat-dialog-content>\n<mat-dialog-actions align=\"end\">\n <ng-container *ngFor=\"let button of alertConfig.buttons; let i = index\">\n <button mat-raised-button class=\"mr-4\" [ngClass]=\"getConfirmButtonClass()\" *ngIf=\"i === 0\" (click)=\"confirm()\">\n {{ button }}\n </button>\n <button mat-button (click)=\"close()\" *ngIf=\"i !== 0\">{{ button }}</button>\n </ng-container>\n</mat-dialog-actions>\n", styles: [".nice-alert-modal{width:500px}\n"] }]
8307
8336
  }], ctorParameters: function () {
8308
8337
  return [{ type: undefined, decorators: [{
8309
8338
  type: Inject,
@@ -8420,7 +8449,7 @@ class NiceToastComponent {
8420
8449
  }
8421
8450
  }
8422
8451
  NiceToastComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: NiceToastComponent, deps: [{ token: MAT_SNACK_BAR_DATA }, { token: i1$c.MatSnackBarRef }], target: i0.ɵɵFactoryTarget.Component });
8423
- NiceToastComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.3", type: NiceToastComponent, selector: "nice-toast", ngImport: i0, template: "<nice-alert disableAnimation [type]=\"data.type\" [appearance]=\"data.appearance || 'outline'\" (click)=\"dismiss()\">\n <span niceAlertTitle *ngIf=\"data.title\">{{ data.title }}</span>\n <span [innerHtml]=\"data.message\" *ngIf=\"data.message\"></span>\n</nice-alert>\n", styles: [".message-box{background-color:transparent!important;box-shadow:none!important}\n"], components: [{ type: NiceAlertComponent, selector: "nice-alert", inputs: ["appearance", "dismissed", "dismissible", "disableAnimation", "name", "showIcon", "type"], outputs: ["dismissedChanged"], exportAs: ["niceAlert"] }], directives: [{ type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], encapsulation: i0.ViewEncapsulation.None });
8452
+ NiceToastComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.3", type: NiceToastComponent, selector: "nice-toast", ngImport: i0, template: "<nice-alert disableAnimation [type]=\"data.type\" [appearance]=\"data.appearance || 'outline'\" (click)=\"dismiss()\">\n <span niceAlertTitle *ngIf=\"data.title\">{{ data.title }}</span>\n <span [innerHtml]=\"data.message\" *ngIf=\"data.message\"></span>\n</nice-alert>\n", styles: [".message-box{background-color:transparent!important;box-shadow:none!important}\n"], components: [{ type: NiceAlertComponent, selector: "nice-alert", inputs: ["appearance", "dismissed", "dismissible", "disableAnimation", "name", "showIcon", "type", "color"], outputs: ["dismissedChanged"], exportAs: ["niceAlert"] }], directives: [{ type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], encapsulation: i0.ViewEncapsulation.None });
8424
8453
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: NiceToastComponent, decorators: [{
8425
8454
  type: Component,
8426
8455
  args: [{ selector: "nice-toast", encapsulation: ViewEncapsulation.None, template: "<nice-alert disableAnimation [type]=\"data.type\" [appearance]=\"data.appearance || 'outline'\" (click)=\"dismiss()\">\n <span niceAlertTitle *ngIf=\"data.title\">{{ data.title }}</span>\n <span [innerHtml]=\"data.message\" *ngIf=\"data.message\"></span>\n</nice-alert>\n", styles: [".message-box{background-color:transparent!important;box-shadow:none!important}\n"] }]
@@ -8847,6 +8876,184 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImpor
8847
8876
  }]
8848
8877
  }] });
8849
8878
 
8879
+ class NiceChipAsyncTypeaheadDirective {
8880
+ constructor(typeahead, elementRef) {
8881
+ this.typeahead = typeahead;
8882
+ this.elementRef = elementRef;
8883
+ this.niceChipAsyncTypeaheadTokenEnd = new EventEmitter();
8884
+ this.unsubscribeAll$ = new Subject();
8885
+ }
8886
+ ngOnInit() {
8887
+ this.typeahead.selected
8888
+ .pipe(takeUntil(this.unsubscribeAll$), filter((selected) => selected))
8889
+ .subscribe((_) => {
8890
+ this.niceChipAsyncTypeaheadTokenEnd.emit(this.typeahead.getActive());
8891
+ this.typeahead.writeValue(null);
8892
+ });
8893
+ this.elementRef.nativeElement.classList.add("nice-chip-async-typeahead");
8894
+ }
8895
+ ngOnDestroy() {
8896
+ this.unsubscribeAll$.next(null);
8897
+ this.unsubscribeAll$.complete();
8898
+ }
8899
+ }
8900
+ NiceChipAsyncTypeaheadDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: NiceChipAsyncTypeaheadDirective, deps: [{ token: NiceAsyncTypeaheadComponent }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
8901
+ NiceChipAsyncTypeaheadDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.0.3", type: NiceChipAsyncTypeaheadDirective, selector: "[niceChipAsyncTypeahead]", outputs: { niceChipAsyncTypeaheadTokenEnd: "niceChipAsyncTypeaheadTokenEnd" }, exportAs: ["niceChipAsyncTypeahead"], ngImport: i0 });
8902
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: NiceChipAsyncTypeaheadDirective, decorators: [{
8903
+ type: Directive,
8904
+ args: [{
8905
+ selector: "[niceChipAsyncTypeahead]",
8906
+ exportAs: "niceChipAsyncTypeahead",
8907
+ }]
8908
+ }], ctorParameters: function () { return [{ type: NiceAsyncTypeaheadComponent }, { type: i0.ElementRef }]; }, propDecorators: { niceChipAsyncTypeaheadTokenEnd: [{
8909
+ type: Output
8910
+ }] } });
8911
+
8912
+ class ChipListItemLabelDirective {
8913
+ constructor(template) {
8914
+ this.template = template;
8915
+ }
8916
+ }
8917
+ ChipListItemLabelDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: ChipListItemLabelDirective, deps: [{ token: i0.TemplateRef }], target: i0.ɵɵFactoryTarget.Directive });
8918
+ ChipListItemLabelDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.0.3", type: ChipListItemLabelDirective, selector: "[niceChipListItemLabel]", ngImport: i0 });
8919
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: ChipListItemLabelDirective, decorators: [{
8920
+ type: Directive,
8921
+ args: [{ selector: "[niceChipListItemLabel]" }]
8922
+ }], ctorParameters: function () { return [{ type: i0.TemplateRef }]; } });
8923
+
8924
+ class NiceChipListItemsComponent {
8925
+ constructor() {
8926
+ this.color = "primary";
8927
+ this.removeChip = new EventEmitter();
8928
+ this.defaultColor = "primary";
8929
+ }
8930
+ remove(index) {
8931
+ this.removeChip.next(index);
8932
+ }
8933
+ }
8934
+ NiceChipListItemsComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: NiceChipListItemsComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
8935
+ NiceChipListItemsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.3", type: NiceChipListItemsComponent, selector: "nice-chip-list-items", inputs: { color: "color", items$: "items$" }, outputs: { removeChip: "removeChip" }, queries: [{ propertyName: "itemLabel", first: true, predicate: ChipListItemLabelDirective, descendants: true, read: TemplateRef }], ngImport: i0, template: "<div class=\"nice-items-row\" *ngIf=\"(items$ | async)?.length\">\n <div\n class=\"nice-chip\"\n *ngFor=\"let value of items$ | async; let i = index\"\n [ngClass]=\"color\"\n >\n <span *ngIf=\"!itemLabel\">{{ value }}</span>\n <ng-container *ngIf=\"itemLabel\">\n <ng-container *ngTemplateOutlet=\"itemLabel; context: { $implicit: value }\"></ng-container>\n </ng-container>\n <button (click)=\"remove(i)\">\n <mat-icon class=\"close-icon\">cancel</mat-icon>\n </button>\n </div>\n</div>\n", components: [{ type: i3.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }], directives: [{ type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i4.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i4.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }], pipes: { "async": i4.AsyncPipe }, changeDetection: i0.ChangeDetectionStrategy.OnPush });
8936
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: NiceChipListItemsComponent, decorators: [{
8937
+ type: Component,
8938
+ args: [{ selector: "nice-chip-list-items", changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"nice-items-row\" *ngIf=\"(items$ | async)?.length\">\n <div\n class=\"nice-chip\"\n *ngFor=\"let value of items$ | async; let i = index\"\n [ngClass]=\"color\"\n >\n <span *ngIf=\"!itemLabel\">{{ value }}</span>\n <ng-container *ngIf=\"itemLabel\">\n <ng-container *ngTemplateOutlet=\"itemLabel; context: { $implicit: value }\"></ng-container>\n </ng-container>\n <button (click)=\"remove(i)\">\n <mat-icon class=\"close-icon\">cancel</mat-icon>\n </button>\n </div>\n</div>\n" }]
8939
+ }], propDecorators: { itemLabel: [{
8940
+ type: ContentChild,
8941
+ args: [ChipListItemLabelDirective, { read: TemplateRef }]
8942
+ }], color: [{
8943
+ type: Input
8944
+ }], removeChip: [{
8945
+ type: Output
8946
+ }], items$: [{
8947
+ type: Input
8948
+ }] } });
8949
+
8950
+ class NiceChipListDirective {
8951
+ constructor(asyncTypeahead, ngControl, elementRef) {
8952
+ this.asyncTypeahead = asyncTypeahead;
8953
+ this.ngControl = ngControl;
8954
+ this.elementRef = elementRef;
8955
+ this.unsubscribeAll$ = new Subject();
8956
+ this.values$ = new BehaviorSubject([]);
8957
+ this._values = [];
8958
+ this.propagateChanges = (value) => { };
8959
+ if (this.ngControl) {
8960
+ this.ngControl.valueAccessor = this;
8961
+ }
8962
+ }
8963
+ get values() {
8964
+ return this._values;
8965
+ }
8966
+ onKeyDown(event) {
8967
+ if (this.asyncTypeahead) {
8968
+ return;
8969
+ }
8970
+ if (event.code === KeyboardCodes.Enter) {
8971
+ if (!this.elementRef.nativeElement.validity.valid) {
8972
+ return;
8973
+ }
8974
+ this.addValue(this.elementRef.nativeElement.value);
8975
+ this.elementRef.nativeElement.value = "";
8976
+ return;
8977
+ }
8978
+ }
8979
+ ngOnInit() {
8980
+ if (this.asyncTypeahead) {
8981
+ this.setupAsyncTypeahead();
8982
+ }
8983
+ if (this.elementRef.nativeElement.parentElement.classList.contains("mat-form-field-infix")) {
8984
+ this.elementRef.nativeElement.parentElement.style.alignItems = "flex-start";
8985
+ this.elementRef.nativeElement.parentElement.style.flexDirection = "column-reverse";
8986
+ }
8987
+ }
8988
+ ngOnChanges(changes) {
8989
+ if ("withItemList" in changes) {
8990
+ this.withItemList.items$ = this.values$;
8991
+ this.withItemList.removeChip.pipe(takeUntil(this.unsubscribeAll$)).subscribe(x => {
8992
+ this._values.splice(x, 1);
8993
+ this.propagateChanges(this._values);
8994
+ this.values$.next(this._values);
8995
+ });
8996
+ }
8997
+ }
8998
+ writeValue(obj) {
8999
+ this._values = obj !== null && obj !== void 0 ? obj : [];
9000
+ this.values$.next(this._values);
9001
+ }
9002
+ registerOnChange(fn) {
9003
+ this.propagateChanges = fn;
9004
+ }
9005
+ registerOnTouched(fn) { }
9006
+ setupAsyncTypeahead() {
9007
+ this.asyncTypeahead.selected
9008
+ .pipe(takeUntil(this.unsubscribeAll$), filter((selected) => selected))
9009
+ .subscribe((_) => {
9010
+ this.addValue(this.asyncTypeahead.getActive());
9011
+ this.asyncTypeahead.writeValue(null);
9012
+ });
9013
+ }
9014
+ addValue(value) {
9015
+ if (this._values.includes(value)) {
9016
+ return;
9017
+ }
9018
+ this._values.push(value);
9019
+ this.propagateChanges(this._values);
9020
+ this.values$.next(this._values);
9021
+ }
9022
+ }
9023
+ NiceChipListDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: NiceChipListDirective, deps: [{ token: NiceAsyncTypeaheadComponent, optional: true }, { token: i1$2.NgControl, optional: true }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
9024
+ NiceChipListDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.0.3", type: NiceChipListDirective, selector: "input[niceChipList], nice-async-typeahead[niceChipList]", inputs: { withItemList: "withItemList" }, host: { listeners: { "keydown": "onKeyDown($event)" } }, usesOnChanges: true, ngImport: i0 });
9025
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: NiceChipListDirective, decorators: [{
9026
+ type: Directive,
9027
+ args: [{
9028
+ selector: "input[niceChipList], nice-async-typeahead[niceChipList]"
9029
+ }]
9030
+ }], ctorParameters: function () {
9031
+ return [{ type: NiceAsyncTypeaheadComponent, decorators: [{
9032
+ type: Optional
9033
+ }] }, { type: i1$2.NgControl, decorators: [{
9034
+ type: Optional
9035
+ }] }, { type: i0.ElementRef }];
9036
+ }, propDecorators: { withItemList: [{
9037
+ type: Input
9038
+ }], onKeyDown: [{
9039
+ type: HostListener,
9040
+ args: ["keydown", ["$event"]]
9041
+ }] } });
9042
+
9043
+ class NiceChipListDirectiveModule {
9044
+ }
9045
+ NiceChipListDirectiveModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: NiceChipListDirectiveModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
9046
+ NiceChipListDirectiveModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: NiceChipListDirectiveModule, declarations: [NiceChipListDirective, NiceChipListItemsComponent, ChipListItemLabelDirective], imports: [CommonModule, MatIconModule], exports: [NiceChipListDirective, NiceChipListItemsComponent, ChipListItemLabelDirective] });
9047
+ NiceChipListDirectiveModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: NiceChipListDirectiveModule, imports: [[CommonModule, MatIconModule]] });
9048
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: NiceChipListDirectiveModule, decorators: [{
9049
+ type: NgModule,
9050
+ args: [{
9051
+ imports: [CommonModule, MatIconModule],
9052
+ declarations: [NiceChipListDirective, NiceChipListItemsComponent, ChipListItemLabelDirective],
9053
+ exports: [NiceChipListDirective, NiceChipListItemsComponent, ChipListItemLabelDirective]
9054
+ }]
9055
+ }] });
9056
+
8850
9057
  class NiceImageErrorPlaceholderDirective {
8851
9058
  constructor(elementRef, viewContainerRef) {
8852
9059
  this.elementRef = elementRef;
@@ -9697,5 +9904,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImpor
9697
9904
  * Generated bundle index. Do not edit.
9698
9905
  */
9699
9906
 
9700
- export { ArrayUtils, BooleanPipe, CapitalizeFirstLetterPipe, CarouselComponent, CaseUtils, CeilPipe, ColorsUtils, DateUtils, DefaultExportBottomSheetService, EntriesPipe, ExportBottomSheetComponent, ExportBottomSheetService, FileUtils, FindByKeyPipe, FirstLetterPipe, FloorPipe, FontAwesomeUtils, FormDataUtils, HttpStatusCodes, ImgCropperConfig, ImgCropperError, ImgResolution, JoinPipe, KeyboardCodes, LinkPipe, LocalizedBooleanPipe, LocalizedCurrencyPipe, LocalizedDateOnlyPipe, LocalizedDatePipe, MinutesToTimePipe, ModalMode, NiceAlertComponent, NiceAlertModule, NiceAlertService, NiceApiException, NiceAssetsCarouselComponent, NiceAssetsCarouselModule, NiceAsyncTypeaheadComponent, NiceAsyncTypeaheadModule, NiceAsyncTypeaheadProvider, NiceAutofocusDirective, NiceAutofocusDirectiveModule, NiceAutogrowDirective, NiceAutogrowModule, NiceBaseForm, NiceBaseFormComponent, NiceBaseFormModule, NiceCardComponent, NiceCardModule, NiceCarouselModule, NiceClickStopPropagationDirective, NiceConfigModule, NiceConfigService, NiceControlStatusDirective, NiceCropperAreaComponent, NiceDrawerComponent, NiceDrawerModule, NiceDrawerService, NiceDropzoneDirective, NiceDropzoneModule, NiceExportBottomSheetModule, NiceFormErrorComponent, NiceFormErrorModule, NiceFormSubmitDirective, NiceHorizontalNavigationBasicItemComponent, NiceHorizontalNavigationBranchItemComponent, NiceHorizontalNavigationComponent, NiceHorizontalNavigationDividerItemComponent, NiceHorizontalNavigationSpacerItemComponent, NiceHorizontalStepperComponent, NiceHorizontalStepperModule, NiceHttpExceptionFactory, NiceImageCropperComponent, NiceImageCropperModule, NiceImageErrorPlaceholderDirective, NiceImageErrorPlaceholderDirectiveModule, NiceLayoutComponent, NiceLayoutModule, NiceLoadingDirective, NiceLoadingSpinnerComponent, NiceLoadingSpinnerModule, NiceLottieComponent, NiceLottieModule, NiceMaterialModule, NiceMaterialStyleDirective, NiceMediaWatcherModule, NiceMediaWatcherService, NiceModalOnClickDirective, NiceModalOpenerDirective, NiceModule, NiceNavigationComponent, NiceNavigationModule, NiceNavigationService, NicePipesModule, NicePreventCloseWindowDirective, NiceRoundedStyleDirective, NiceScrollResetDirective, NiceScrollResetModule, NiceScrollbarDirective, NiceScrollbarModule, NiceSearchBarComponent, NiceSearchBarModule, NiceSplashScreenModule, NiceSplashScreenService, NiceStepComponent, NiceStopPropagationModule, NiceSweetAlertComponent, NiceSweetAlertModule, NiceSweetAlertService, NiceToastComponent, NiceToastModule, NiceToastService, NiceToggleButtonGroupModule, NiceTransformResponseInterceptor, NiceTypeaheadComponent, NiceTypeaheadModule, NiceTypeaheadNewValue, NiceUtilsModule, NiceUtilsService, NiceVerticalNavigationAsideItemComponent, NiceVerticalNavigationBasicItemComponent, NiceVerticalNavigationCollapsableItemComponent, NiceVerticalNavigationComponent, NiceVerticalNavigationDividerItemComponent, NiceVerticalNavigationGroupItemComponent, NiceVerticalNavigationSpacerItemComponent, NiceWindowDirectiveModule, NumberToOrdinalIndicatorPipe, NumberUtils, ObjectUtils, OptionsScrollDirective, PadPipe, PhonePipe, PictureModalComponent, PictureModalService, PostalCodePipe, PromiseUtils, QueryParamsUtils, RangePipe, RegexUtils, RoundPipe, SanitizeBypassPipe, SecondsToTimePipe, TRANSFORM_TYPE, ToggleButtonComponent, ToggleButtonGroupComponent, TypeUtils, UrlUtils, _normalizeDegrees, isNotNullOrUndefined, isNullOrUndefined, mergeDeep, mixinNiceApi, niceAnimations, round };
9907
+ export { ArrayUtils, BooleanPipe, CapitalizeFirstLetterPipe, CarouselComponent, CaseUtils, CeilPipe, ChipListItemLabelDirective, ColorsUtils, DateUtils, DefaultExportBottomSheetService, EntriesPipe, ExportBottomSheetComponent, ExportBottomSheetService, FileUtils, FindByKeyPipe, FirstLetterPipe, FloorPipe, FontAwesomeUtils, FormDataUtils, HttpStatusCodes, ImgCropperConfig, ImgCropperError, ImgResolution, JoinPipe, KeyboardCodes, LinkPipe, LocalizedBooleanPipe, LocalizedCurrencyPipe, LocalizedDateOnlyPipe, LocalizedDatePipe, MinutesToTimePipe, ModalMode, NiceAlertComponent, NiceAlertModule, NiceAlertService, NiceApiException, NiceAssetsCarouselComponent, NiceAssetsCarouselModule, NiceAsyncTypeaheadComponent, NiceAsyncTypeaheadModule, NiceAsyncTypeaheadProvider, NiceAutofocusDirective, NiceAutofocusDirectiveModule, NiceAutogrowDirective, NiceAutogrowModule, NiceBaseForm, NiceBaseFormComponent, NiceBaseFormModule, NiceCardComponent, NiceCardModule, NiceCarouselModule, NiceChipAsyncTypeaheadDirective, NiceChipListDirective, NiceChipListDirectiveModule, NiceChipListItemsComponent, NiceClickStopPropagationDirective, NiceConfigModule, NiceConfigService, NiceControlStatusDirective, NiceCropperAreaComponent, NiceDrawerComponent, NiceDrawerModule, NiceDrawerService, NiceDropzoneDirective, NiceDropzoneModule, NiceExportBottomSheetModule, NiceFormErrorComponent, NiceFormErrorModule, NiceFormSubmitDirective, NiceHorizontalNavigationBasicItemComponent, NiceHorizontalNavigationBranchItemComponent, NiceHorizontalNavigationComponent, NiceHorizontalNavigationDividerItemComponent, NiceHorizontalNavigationSpacerItemComponent, NiceHorizontalStepperComponent, NiceHorizontalStepperModule, NiceHttpExceptionFactory, NiceImageCropperComponent, NiceImageCropperModule, NiceImageErrorPlaceholderDirective, NiceImageErrorPlaceholderDirectiveModule, NiceLayoutComponent, NiceLayoutModule, NiceLoadingDirective, NiceLoadingSpinnerComponent, NiceLoadingSpinnerModule, NiceLottieComponent, NiceLottieModule, NiceMaterialModule, NiceMaterialStyleDirective, NiceMediaWatcherModule, NiceMediaWatcherService, NiceModalOnClickDirective, NiceModalOpenerDirective, NiceModule, NiceNavigationComponent, NiceNavigationModule, NiceNavigationService, NicePipesModule, NicePreventCloseWindowDirective, NiceRoundedStyleDirective, NiceScrollResetDirective, NiceScrollResetModule, NiceScrollbarDirective, NiceScrollbarModule, NiceSearchBarComponent, NiceSearchBarModule, NiceSplashScreenModule, NiceSplashScreenService, NiceStepComponent, NiceStopPropagationModule, NiceSweetAlertComponent, NiceSweetAlertModule, NiceSweetAlertService, NiceToastComponent, NiceToastModule, NiceToastService, NiceToggleButtonGroupModule, NiceTransformResponseInterceptor, NiceTypeaheadComponent, NiceTypeaheadModule, NiceTypeaheadNewValue, NiceUtilsModule, NiceUtilsService, NiceVerticalNavigationAsideItemComponent, NiceVerticalNavigationBasicItemComponent, NiceVerticalNavigationCollapsableItemComponent, NiceVerticalNavigationComponent, NiceVerticalNavigationDividerItemComponent, NiceVerticalNavigationGroupItemComponent, NiceVerticalNavigationSpacerItemComponent, NiceWindowDirectiveModule, NumberToOrdinalIndicatorPipe, NumberUtils, ObjectUtils, OptionsScrollDirective, PadPipe, PhonePipe, PictureModalComponent, PictureModalService, PostalCodePipe, PromiseUtils, QueryParamsUtils, RangePipe, RegexUtils, RoundPipe, SanitizeBypassPipe, SecondsToTimePipe, TRANSFORM_TYPE, ToggleButtonComponent, ToggleButtonGroupComponent, TypeUtils, UrlUtils, _normalizeDegrees, isNotNullOrUndefined, isNullOrUndefined, mergeDeep, mixinNiceApi, niceAnimations, round };
9701
9908
  //# sourceMappingURL=recursyve-nice-ui-kit.v2.mjs.map