ecabs-components 1.1.4 → 1.1.6

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 (96) hide show
  1. package/README.md +2 -0
  2. package/esm2022/lib/base/directives/attach-embedded-view.directive.mjs +23 -0
  3. package/esm2022/lib/base/directives/attach-embedded-view.directive.module.mjs +18 -0
  4. package/esm2022/lib/base/directives/check-permissions.directive.mjs +36 -0
  5. package/esm2022/lib/base/directives/check-permissions.directive.module.mjs +18 -0
  6. package/esm2022/lib/base/directives/date-mask.directive.mjs +6 -6
  7. package/esm2022/lib/base/directives/date-mask.directive.module.mjs +9 -9
  8. package/esm2022/lib/base/directives/digits-only.directive.mjs +6 -6
  9. package/esm2022/lib/base/directives/digits-only.directive.module.mjs +9 -9
  10. package/esm2022/lib/base/directives/dom-observer.directive.mjs +32 -0
  11. package/esm2022/lib/base/directives/dom-observer.directive.module.mjs +18 -0
  12. package/esm2022/lib/base/directives/dynamic-bg-color.directive.mjs +5 -5
  13. package/esm2022/lib/base/directives/dynamic-bg-color.directive.module.mjs +9 -9
  14. package/esm2022/lib/base/directives/element-multiplier.directive.mjs +26 -0
  15. package/esm2022/lib/base/directives/element-multiplier.directive.module.mjs +18 -0
  16. package/esm2022/lib/base/directives/file-drop.directive.mjs +42 -0
  17. package/esm2022/lib/base/directives/file-drop.directive.module.mjs +18 -0
  18. package/esm2022/lib/base/directives/min-max.directive.mjs +13 -13
  19. package/esm2022/lib/base/directives/min-max.directive.module.mjs +9 -9
  20. package/esm2022/lib/base/directives/number-border.directive.mjs +6 -6
  21. package/esm2022/lib/base/directives/number-border.directive.module.mjs +9 -9
  22. package/esm2022/lib/base/directives/time-mask.directive.mjs +6 -6
  23. package/esm2022/lib/base/directives/time-mask.directive.module.mjs +9 -9
  24. package/esm2022/lib/base/directives/time-range.directive.mjs +47 -0
  25. package/esm2022/lib/base/directives/time-range.directive.module.mjs +18 -0
  26. package/esm2022/lib/base/directives/tooltip-if-truncated.directive.mjs +6 -6
  27. package/esm2022/lib/base/directives/tooltip-if-truncated.directive.module.mjs +9 -9
  28. package/esm2022/lib/base/directives/uppercase-mask.directive.mjs +26 -0
  29. package/esm2022/lib/base/directives/uppercase-mask.directive.module.mjs +18 -0
  30. package/esm2022/lib/base/models/slider.models.mjs +2 -0
  31. package/esm2022/lib/base/models/user-claim.models.mjs +2 -0
  32. package/esm2022/lib/base/services/ecabs-components.service.mjs +12 -1
  33. package/esm2022/lib/ecabs-date-range-picker/ecabs-date-range-picker.module.mjs +13 -13
  34. package/esm2022/lib/ecabs-date-time-picker/ecabs-date-time-picker.component.mjs +3 -3
  35. package/esm2022/lib/ecabs-date-time-picker/ecabs-date-time-picker.module.mjs +13 -13
  36. package/esm2022/lib/ecabs-date-time-range-picker/ecabs-date-time-range-picker.component.mjs +3 -3
  37. package/esm2022/lib/ecabs-date-time-range-picker/ecabs-date-time-range-picker.module.mjs +17 -17
  38. package/esm2022/lib/ecabs-increment/ecabs-increment.component.mjs +3 -3
  39. package/esm2022/lib/ecabs-increment/ecabs-increment.module.mjs +5 -5
  40. package/esm2022/lib/ecabs-input/ecabs-input.component.mjs +3 -3
  41. package/esm2022/lib/ecabs-input/ecabs-input.module.mjs +9 -9
  42. package/esm2022/lib/ecabs-profile/ecabs-profile.component.mjs +1 -1
  43. package/esm2022/lib/ecabs-profile/ecabs-profile.module.mjs +5 -5
  44. package/esm2022/lib/ecabs-select/ecabs-select.component.mjs +3 -3
  45. package/esm2022/lib/ecabs-select/ecabs-select.module.mjs +5 -5
  46. package/esm2022/lib/ecabs-slider/ecabs-slider.component.mjs +116 -0
  47. package/esm2022/lib/ecabs-slider/ecabs-slider.module.mjs +21 -0
  48. package/esm2022/lib/ecabs-timepicker/ecabs-timepicker.component.mjs +3 -3
  49. package/esm2022/lib/ecabs-timepicker/ecabs-timepicker.module.mjs +5 -5
  50. package/esm2022/public-api.mjs +23 -1
  51. package/fesm2022/ecabs-components.mjs +604 -155
  52. package/fesm2022/ecabs-components.mjs.map +1 -1
  53. package/lib/base/directives/attach-embedded-view.directive.d.ts +10 -0
  54. package/lib/base/directives/attach-embedded-view.directive.module.d.ts +8 -0
  55. package/lib/base/directives/check-permissions.directive.d.ts +13 -0
  56. package/lib/base/directives/check-permissions.directive.module.d.ts +8 -0
  57. package/lib/base/directives/date-mask.directive.d.ts +3 -3
  58. package/lib/base/directives/date-mask.directive.module.d.ts +4 -4
  59. package/lib/base/directives/digits-only.directive.d.ts +3 -3
  60. package/lib/base/directives/digits-only.directive.module.d.ts +4 -4
  61. package/lib/base/directives/dom-observer.directive.d.ts +11 -0
  62. package/lib/base/directives/dom-observer.directive.module.d.ts +8 -0
  63. package/lib/base/directives/dynamic-bg-color.directive.d.ts +3 -3
  64. package/lib/base/directives/dynamic-bg-color.directive.module.d.ts +4 -4
  65. package/lib/base/directives/element-multiplier.directive.d.ts +10 -0
  66. package/lib/base/directives/element-multiplier.directive.module.d.ts +8 -0
  67. package/lib/base/directives/file-drop.directive.d.ts +11 -0
  68. package/lib/base/directives/file-drop.directive.module.d.ts +8 -0
  69. package/lib/base/directives/min-max.directive.d.ts +6 -6
  70. package/lib/base/directives/min-max.directive.module.d.ts +4 -4
  71. package/lib/base/directives/number-border.directive.d.ts +3 -3
  72. package/lib/base/directives/number-border.directive.module.d.ts +4 -4
  73. package/lib/base/directives/time-mask.directive.d.ts +3 -3
  74. package/lib/base/directives/time-mask.directive.module.d.ts +4 -4
  75. package/lib/base/directives/time-range.directive.d.ts +15 -0
  76. package/lib/base/directives/time-range.directive.module.d.ts +8 -0
  77. package/lib/base/directives/tooltip-if-truncated.directive.d.ts +3 -3
  78. package/lib/base/directives/tooltip-if-truncated.directive.module.d.ts +4 -4
  79. package/lib/base/directives/uppercase-mask.directive.d.ts +9 -0
  80. package/lib/base/directives/uppercase-mask.directive.module.d.ts +8 -0
  81. package/lib/base/models/slider.models.d.ts +6 -0
  82. package/lib/base/models/user-claim.models.d.ts +5 -0
  83. package/lib/base/services/ecabs-components.service.d.ts +3 -0
  84. package/lib/ecabs-date-range-picker/ecabs-date-range-picker.module.d.ts +1 -1
  85. package/lib/ecabs-date-time-picker/ecabs-date-time-picker.module.d.ts +1 -1
  86. package/lib/ecabs-date-time-range-picker/ecabs-date-time-range-picker.module.d.ts +1 -1
  87. package/lib/ecabs-increment/ecabs-increment.module.d.ts +1 -1
  88. package/lib/ecabs-input/ecabs-input.module.d.ts +1 -1
  89. package/lib/ecabs-profile/ecabs-profile.module.d.ts +1 -1
  90. package/lib/ecabs-select/ecabs-select.module.d.ts +1 -1
  91. package/lib/ecabs-slider/ecabs-slider.component.d.ts +32 -0
  92. package/lib/ecabs-slider/ecabs-slider.module.d.ts +11 -0
  93. package/lib/ecabs-timepicker/ecabs-timepicker.module.d.ts +1 -1
  94. package/package.json +2 -1
  95. package/public-api.d.ts +22 -0
  96. package/src/assets/styles/tailwind/index.scss +1 -1
@@ -50,7 +50,9 @@ import * as i1$2 from '@angular/material/dialog';
50
50
  import { MAT_DIALOG_DATA, MatDialogModule } from '@angular/material/dialog';
51
51
  import * as i1$3 from '@angular/material/paginator';
52
52
  import { map as map$1 } from 'rxjs/operators';
53
- import * as i3$3 from '@angular/platform-browser';
53
+ import * as i3$3 from '@angular-slider/ngx-slider';
54
+ import { NgxSliderModule } from '@angular-slider/ngx-slider';
55
+ import * as i3$4 from '@angular/platform-browser';
54
56
  import { MatSidenavModule } from '@angular/material/sidenav';
55
57
 
56
58
  class EcabsSpinnerComponent {
@@ -418,6 +420,7 @@ class EcabsComponentsService {
418
420
  defaultCountries: [],
419
421
  errorMessages: [...errorMessages],
420
422
  i18n,
423
+ claims: [],
421
424
  };
422
425
  _config = new BehaviorSubject(this.defaultConfig);
423
426
  setConfig(config) {
@@ -442,6 +445,16 @@ class EcabsComponentsService {
442
445
  }
443
446
  this._config.next(updatedConfig);
444
447
  }
448
+ hasClaim(allowedClaims = []) {
449
+ const userClaims = this._config.getValue().claims ? this._config.getValue().claims.map((appUserClaim) => appUserClaim.claim) : undefined;
450
+ if (allowedClaims.includes('allow')) {
451
+ return true;
452
+ }
453
+ if (userClaims) {
454
+ return allowedClaims.every((claim) => userClaims.includes(claim));
455
+ }
456
+ return false;
457
+ }
445
458
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EcabsComponentsService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
446
459
  static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EcabsComponentsService, providedIn: 'root' });
447
460
  }
@@ -606,7 +619,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
606
619
  type: Output
607
620
  }] } });
608
621
 
609
- class DigitsOnlyDirective {
622
+ class EcabsDigitsOnlyDirective {
610
623
  el;
611
624
  digitsOnly = false;
612
625
  allowHyphen = false;
@@ -717,13 +730,13 @@ class DigitsOnlyDirective {
717
730
  isValidDecimal(inputString) {
718
731
  return inputString.split(this.decimalSeparator).length <= 2;
719
732
  }
720
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DigitsOnlyDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
721
- static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: DigitsOnlyDirective, selector: "[appDigitsOnly]", inputs: { digitsOnly: "digitsOnly", allowHyphen: "allowHyphen", decimal: "decimal", decimalSeparator: "decimalSeparator", unit: "unit" }, host: { listeners: { "keydown": "onKeyDown($event)", "keyup": "onKeyUp($event)", "paste": "onPaste($event)" } }, ngImport: i0 });
733
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EcabsDigitsOnlyDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
734
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: EcabsDigitsOnlyDirective, selector: "[ecabsDigitsOnly]", inputs: { digitsOnly: "digitsOnly", allowHyphen: "allowHyphen", decimal: "decimal", decimalSeparator: "decimalSeparator", unit: "unit" }, host: { listeners: { "keydown": "onKeyDown($event)", "keyup": "onKeyUp($event)", "paste": "onPaste($event)" } }, ngImport: i0 });
722
735
  }
723
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DigitsOnlyDirective, decorators: [{
736
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EcabsDigitsOnlyDirective, decorators: [{
724
737
  type: Directive,
725
738
  args: [{
726
- selector: '[appDigitsOnly]',
739
+ selector: '[ecabsDigitsOnly]',
727
740
  }]
728
741
  }], ctorParameters: function () { return [{ type: i0.ElementRef }]; }, propDecorators: { digitsOnly: [{
729
742
  type: Input
@@ -746,7 +759,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
746
759
  args: ['paste', ['$event']]
747
760
  }] } });
748
761
 
749
- class MinDirective {
762
+ class EcabsMinDirective {
750
763
  _validator;
751
764
  set mini(value) {
752
765
  this._validator = Validators.min(value);
@@ -754,23 +767,23 @@ class MinDirective {
754
767
  validate(control) {
755
768
  return this._validator(control);
756
769
  }
757
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: MinDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
758
- static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: MinDirective, selector: "[mini][formControlName],[mini][formControl],[mini][ngModel]", inputs: { mini: "mini" }, providers: [
770
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EcabsMinDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
771
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: EcabsMinDirective, selector: "[mini][formControlName],[mini][formControl],[mini][ngModel]", inputs: { mini: "mini" }, providers: [
759
772
  {
760
773
  provide: NG_VALIDATORS,
761
- useExisting: forwardRef(() => MinDirective),
774
+ useExisting: forwardRef(() => EcabsMinDirective),
762
775
  multi: true,
763
776
  },
764
777
  ], ngImport: i0 });
765
778
  }
766
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: MinDirective, decorators: [{
779
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EcabsMinDirective, decorators: [{
767
780
  type: Directive,
768
781
  args: [{
769
782
  selector: '[mini][formControlName],[mini][formControl],[mini][ngModel]',
770
783
  providers: [
771
784
  {
772
785
  provide: NG_VALIDATORS,
773
- useExisting: forwardRef(() => MinDirective),
786
+ useExisting: forwardRef(() => EcabsMinDirective),
774
787
  multi: true,
775
788
  },
776
789
  ],
@@ -778,7 +791,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
778
791
  }], propDecorators: { mini: [{
779
792
  type: Input
780
793
  }] } });
781
- class MaxDirective {
794
+ class EcabsMaxDirective {
782
795
  _validator;
783
796
  set maxi(value) {
784
797
  this._validator = Validators.max(value);
@@ -786,23 +799,23 @@ class MaxDirective {
786
799
  validate(control) {
787
800
  return this._validator(control);
788
801
  }
789
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: MaxDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
790
- static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: MaxDirective, selector: "[maxi][formControlName],[maxi][formControl],[maxi][ngModel]", inputs: { maxi: "maxi" }, providers: [
802
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EcabsMaxDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
803
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: EcabsMaxDirective, selector: "[maxi][formControlName],[maxi][formControl],[maxi][ngModel]", inputs: { maxi: "maxi" }, providers: [
791
804
  {
792
805
  provide: NG_VALIDATORS,
793
- useExisting: forwardRef(() => MinDirective),
806
+ useExisting: forwardRef(() => EcabsMinDirective),
794
807
  multi: true,
795
808
  },
796
809
  ], ngImport: i0 });
797
810
  }
798
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: MaxDirective, decorators: [{
811
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EcabsMaxDirective, decorators: [{
799
812
  type: Directive,
800
813
  args: [{
801
814
  selector: '[maxi][formControlName],[maxi][formControl],[maxi][ngModel]',
802
815
  providers: [
803
816
  {
804
817
  provide: NG_VALIDATORS,
805
- useExisting: forwardRef(() => MinDirective),
818
+ useExisting: forwardRef(() => EcabsMinDirective),
806
819
  multi: true,
807
820
  },
808
821
  ],
@@ -878,7 +891,7 @@ class EcabsInputComponent extends EcabsElementBaseComponent {
878
891
  useExisting: EcabsInputComponent,
879
892
  multi: true,
880
893
  },
881
- ], usesInheritance: true, ngImport: i0, template: "<ecabs-element-wrapper [data]=\"getData()\">\r\n <div class=\"form-field__input--wrapper\">\r\n <input\r\n appDigitsOnly\r\n [digitsOnly]=\"digitsOnly\"\r\n [decimal]=\"allowDecimal\"\r\n [allowHyphen]=\"allowHyphen\"\r\n class=\"form-field__input\"\r\n [type]=\"type\"\r\n [id]=\"name\"\r\n [(ngModel)]=\"value\"\r\n [placeholder]=\"placeholder\"\r\n (blur)=\"onTouch()\"\r\n [mini]=\"mini\"\r\n [maxi]=\"maxi\"\r\n [disabled]=\"disabled\"\r\n [maxlength]=\"maxLength\"\r\n [max]=\"max\"\r\n [step]=\"step\"\r\n (blur)=\"blurChange($event)\"\r\n />\r\n\r\n <div class=\"form-field__input--suffix\" *ngIf=\"type !== 'number'\">\r\n <ng-content select=\"mat-icon\"></ng-content>\r\n <ng-content select=\".suffix\"></ng-content>\r\n </div>\r\n </div>\r\n</ecabs-element-wrapper>\r\n", dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: EcabsElementWrapperComponent, selector: "ecabs-element-wrapper", inputs: ["data", "showCloseIcon", "focusedFlag", "showPassword", "control"], outputs: ["showHidePassword", "clear", "increase", "decrease"] }, { kind: "directive", type: i5$1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i5$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i5$1.MaxLengthValidator, selector: "[maxlength][formControlName],[maxlength][formControl],[maxlength][ngModel]", inputs: ["maxlength"] }, { kind: "directive", type: i5$1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: DigitsOnlyDirective, selector: "[appDigitsOnly]", inputs: ["digitsOnly", "allowHyphen", "decimal", "decimalSeparator", "unit"] }, { kind: "directive", type: MinDirective, selector: "[mini][formControlName],[mini][formControl],[mini][ngModel]", inputs: ["mini"] }, { kind: "directive", type: MaxDirective, selector: "[maxi][formControlName],[maxi][formControl],[maxi][ngModel]", inputs: ["maxi"] }] });
894
+ ], usesInheritance: true, ngImport: i0, template: "<ecabs-element-wrapper [data]=\"getData()\">\r\n <div class=\"form-field__input--wrapper\">\r\n <input\r\n ecabsDigitsOnly\r\n [digitsOnly]=\"digitsOnly\"\r\n [decimal]=\"allowDecimal\"\r\n [allowHyphen]=\"allowHyphen\"\r\n class=\"form-field__input\"\r\n [type]=\"type\"\r\n [id]=\"name\"\r\n [(ngModel)]=\"value\"\r\n [placeholder]=\"placeholder\"\r\n (blur)=\"onTouch()\"\r\n [mini]=\"mini\"\r\n [maxi]=\"maxi\"\r\n [disabled]=\"disabled\"\r\n [maxlength]=\"maxLength\"\r\n [max]=\"max\"\r\n [step]=\"step\"\r\n (blur)=\"blurChange($event)\"\r\n />\r\n\r\n <div class=\"form-field__input--suffix\" *ngIf=\"type !== 'number'\">\r\n <ng-content select=\"mat-icon\"></ng-content>\r\n <ng-content select=\".suffix\"></ng-content>\r\n </div>\r\n </div>\r\n</ecabs-element-wrapper>\r\n", dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: EcabsElementWrapperComponent, selector: "ecabs-element-wrapper", inputs: ["data", "showCloseIcon", "focusedFlag", "showPassword", "control"], outputs: ["showHidePassword", "clear", "increase", "decrease"] }, { kind: "directive", type: i5$1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i5$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i5$1.MaxLengthValidator, selector: "[maxlength][formControlName],[maxlength][formControl],[maxlength][ngModel]", inputs: ["maxlength"] }, { kind: "directive", type: i5$1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: EcabsDigitsOnlyDirective, selector: "[ecabsDigitsOnly]", inputs: ["digitsOnly", "allowHyphen", "decimal", "decimalSeparator", "unit"] }, { kind: "directive", type: EcabsMinDirective, selector: "[mini][formControlName],[mini][formControl],[mini][ngModel]", inputs: ["mini"] }, { kind: "directive", type: EcabsMaxDirective, selector: "[maxi][formControlName],[maxi][formControl],[maxi][ngModel]", inputs: ["maxi"] }] });
882
895
  }
883
896
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EcabsInputComponent, decorators: [{
884
897
  type: Component,
@@ -888,7 +901,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
888
901
  useExisting: EcabsInputComponent,
889
902
  multi: true,
890
903
  },
891
- ], template: "<ecabs-element-wrapper [data]=\"getData()\">\r\n <div class=\"form-field__input--wrapper\">\r\n <input\r\n appDigitsOnly\r\n [digitsOnly]=\"digitsOnly\"\r\n [decimal]=\"allowDecimal\"\r\n [allowHyphen]=\"allowHyphen\"\r\n class=\"form-field__input\"\r\n [type]=\"type\"\r\n [id]=\"name\"\r\n [(ngModel)]=\"value\"\r\n [placeholder]=\"placeholder\"\r\n (blur)=\"onTouch()\"\r\n [mini]=\"mini\"\r\n [maxi]=\"maxi\"\r\n [disabled]=\"disabled\"\r\n [maxlength]=\"maxLength\"\r\n [max]=\"max\"\r\n [step]=\"step\"\r\n (blur)=\"blurChange($event)\"\r\n />\r\n\r\n <div class=\"form-field__input--suffix\" *ngIf=\"type !== 'number'\">\r\n <ng-content select=\"mat-icon\"></ng-content>\r\n <ng-content select=\".suffix\"></ng-content>\r\n </div>\r\n </div>\r\n</ecabs-element-wrapper>\r\n" }]
904
+ ], template: "<ecabs-element-wrapper [data]=\"getData()\">\r\n <div class=\"form-field__input--wrapper\">\r\n <input\r\n ecabsDigitsOnly\r\n [digitsOnly]=\"digitsOnly\"\r\n [decimal]=\"allowDecimal\"\r\n [allowHyphen]=\"allowHyphen\"\r\n class=\"form-field__input\"\r\n [type]=\"type\"\r\n [id]=\"name\"\r\n [(ngModel)]=\"value\"\r\n [placeholder]=\"placeholder\"\r\n (blur)=\"onTouch()\"\r\n [mini]=\"mini\"\r\n [maxi]=\"maxi\"\r\n [disabled]=\"disabled\"\r\n [maxlength]=\"maxLength\"\r\n [max]=\"max\"\r\n [step]=\"step\"\r\n (blur)=\"blurChange($event)\"\r\n />\r\n\r\n <div class=\"form-field__input--suffix\" *ngIf=\"type !== 'number'\">\r\n <ng-content select=\"mat-icon\"></ng-content>\r\n <ng-content select=\".suffix\"></ng-content>\r\n </div>\r\n </div>\r\n</ecabs-element-wrapper>\r\n" }]
892
905
  }], ctorParameters: function () { return [{ type: i0.Injector }, { type: i0.DestroyRef }]; }, propDecorators: { digitsOnly: [{
893
906
  type: Input
894
907
  }], allowDecimal: [{
@@ -1002,31 +1015,31 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
1002
1015
  }]
1003
1016
  }] });
1004
1017
 
1005
- class DigitsOnlyDirectivesModule {
1006
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DigitsOnlyDirectivesModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
1007
- static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.12", ngImport: i0, type: DigitsOnlyDirectivesModule, declarations: [DigitsOnlyDirective], imports: [CommonModule], exports: [DigitsOnlyDirective] });
1008
- static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DigitsOnlyDirectivesModule, imports: [CommonModule] });
1018
+ class EcabsDigitsOnlyDirectivesModule {
1019
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EcabsDigitsOnlyDirectivesModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
1020
+ static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.12", ngImport: i0, type: EcabsDigitsOnlyDirectivesModule, declarations: [EcabsDigitsOnlyDirective], imports: [CommonModule], exports: [EcabsDigitsOnlyDirective] });
1021
+ static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EcabsDigitsOnlyDirectivesModule, imports: [CommonModule] });
1009
1022
  }
1010
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DigitsOnlyDirectivesModule, decorators: [{
1023
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EcabsDigitsOnlyDirectivesModule, decorators: [{
1011
1024
  type: NgModule,
1012
1025
  args: [{
1013
1026
  imports: [CommonModule],
1014
- declarations: [DigitsOnlyDirective],
1015
- exports: [DigitsOnlyDirective],
1027
+ declarations: [EcabsDigitsOnlyDirective],
1028
+ exports: [EcabsDigitsOnlyDirective],
1016
1029
  }]
1017
1030
  }] });
1018
1031
 
1019
- class MinMaxDirectiveModule {
1020
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: MinMaxDirectiveModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
1021
- static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.12", ngImport: i0, type: MinMaxDirectiveModule, declarations: [MinDirective, MaxDirective], imports: [CommonModule], exports: [MinDirective, MaxDirective] });
1022
- static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: MinMaxDirectiveModule, imports: [CommonModule] });
1032
+ class EcabsMinMaxDirectiveModule {
1033
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EcabsMinMaxDirectiveModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
1034
+ static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.12", ngImport: i0, type: EcabsMinMaxDirectiveModule, declarations: [EcabsMinDirective, EcabsMaxDirective], imports: [CommonModule], exports: [EcabsMinDirective, EcabsMaxDirective] });
1035
+ static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EcabsMinMaxDirectiveModule, imports: [CommonModule] });
1023
1036
  }
1024
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: MinMaxDirectiveModule, decorators: [{
1037
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EcabsMinMaxDirectiveModule, decorators: [{
1025
1038
  type: NgModule,
1026
1039
  args: [{
1027
1040
  imports: [CommonModule],
1028
- declarations: [MinDirective, MaxDirective],
1029
- exports: [MinDirective, MaxDirective],
1041
+ declarations: [EcabsMinDirective, EcabsMaxDirective],
1042
+ exports: [EcabsMinDirective, EcabsMaxDirective],
1030
1043
  }]
1031
1044
  }] });
1032
1045
 
@@ -1036,14 +1049,14 @@ class EcabsInputModule {
1036
1049
  MatInputModule,
1037
1050
  ElementWrapperModule,
1038
1051
  FormsModule,
1039
- DigitsOnlyDirectivesModule,
1040
- MinMaxDirectiveModule], exports: [EcabsInputComponent] });
1052
+ EcabsDigitsOnlyDirectivesModule,
1053
+ EcabsMinMaxDirectiveModule], exports: [EcabsInputComponent] });
1041
1054
  static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EcabsInputModule, imports: [CommonModule,
1042
1055
  MatInputModule,
1043
1056
  ElementWrapperModule,
1044
1057
  FormsModule,
1045
- DigitsOnlyDirectivesModule,
1046
- MinMaxDirectiveModule] });
1058
+ EcabsDigitsOnlyDirectivesModule,
1059
+ EcabsMinMaxDirectiveModule] });
1047
1060
  }
1048
1061
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EcabsInputModule, decorators: [{
1049
1062
  type: NgModule,
@@ -1054,14 +1067,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
1054
1067
  MatInputModule,
1055
1068
  ElementWrapperModule,
1056
1069
  FormsModule,
1057
- DigitsOnlyDirectivesModule,
1058
- MinMaxDirectiveModule,
1070
+ EcabsDigitsOnlyDirectivesModule,
1071
+ EcabsMinMaxDirectiveModule,
1059
1072
  ],
1060
1073
  exports: [EcabsInputComponent],
1061
1074
  }]
1062
1075
  }] });
1063
1076
 
1064
- class TooltipIfTruncatedDirective {
1077
+ class EcabsTooltipIfTruncatedDirective {
1065
1078
  matTooltip;
1066
1079
  elementRef;
1067
1080
  classNameTruncatedTooltip;
@@ -1075,13 +1088,13 @@ class TooltipIfTruncatedDirective {
1075
1088
  : this.elementRef.nativeElement;
1076
1089
  this.matTooltip.disabled = element?.scrollWidth <= element?.clientWidth;
1077
1090
  }
1078
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TooltipIfTruncatedDirective, deps: [{ token: i1$1.MatTooltip }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
1079
- static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: TooltipIfTruncatedDirective, selector: "[matTooltip][appTooltipIfTruncated]", inputs: { classNameTruncatedTooltip: "classNameTruncatedTooltip" }, host: { listeners: { "mouseover": "onMouseOver()" } }, ngImport: i0 });
1091
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EcabsTooltipIfTruncatedDirective, deps: [{ token: i1$1.MatTooltip }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
1092
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: EcabsTooltipIfTruncatedDirective, selector: "[matTooltip][ecabsTooltipIfTruncated]", inputs: { classNameTruncatedTooltip: "classNameTruncatedTooltip" }, host: { listeners: { "mouseover": "onMouseOver()" } }, ngImport: i0 });
1080
1093
  }
1081
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TooltipIfTruncatedDirective, decorators: [{
1094
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EcabsTooltipIfTruncatedDirective, decorators: [{
1082
1095
  type: Directive,
1083
1096
  args: [{
1084
- selector: '[matTooltip][appTooltipIfTruncated]',
1097
+ selector: '[matTooltip][ecabsTooltipIfTruncated]',
1085
1098
  }]
1086
1099
  }], ctorParameters: function () { return [{ type: i1$1.MatTooltip }, { type: i0.ElementRef }]; }, propDecorators: { classNameTruncatedTooltip: [{
1087
1100
  type: Input
@@ -1090,17 +1103,17 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
1090
1103
  args: ['mouseover']
1091
1104
  }] } });
1092
1105
 
1093
- class TooltipIfTruncatedDirectiveModule {
1094
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TooltipIfTruncatedDirectiveModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
1095
- static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.12", ngImport: i0, type: TooltipIfTruncatedDirectiveModule, declarations: [TooltipIfTruncatedDirective], imports: [CommonModule], exports: [TooltipIfTruncatedDirective] });
1096
- static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TooltipIfTruncatedDirectiveModule, imports: [CommonModule] });
1106
+ class EcabsTooltipIfTruncatedDirectiveModule {
1107
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EcabsTooltipIfTruncatedDirectiveModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
1108
+ static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.12", ngImport: i0, type: EcabsTooltipIfTruncatedDirectiveModule, declarations: [EcabsTooltipIfTruncatedDirective], imports: [CommonModule], exports: [EcabsTooltipIfTruncatedDirective] });
1109
+ static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EcabsTooltipIfTruncatedDirectiveModule, imports: [CommonModule] });
1097
1110
  }
1098
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TooltipIfTruncatedDirectiveModule, decorators: [{
1111
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EcabsTooltipIfTruncatedDirectiveModule, decorators: [{
1099
1112
  type: NgModule,
1100
1113
  args: [{
1101
1114
  imports: [CommonModule],
1102
- declarations: [TooltipIfTruncatedDirective],
1103
- exports: [TooltipIfTruncatedDirective],
1115
+ declarations: [EcabsTooltipIfTruncatedDirective],
1116
+ exports: [EcabsTooltipIfTruncatedDirective],
1104
1117
  }]
1105
1118
  }] });
1106
1119
 
@@ -1392,7 +1405,7 @@ class EcabsSelectComponent extends EcabsElementBaseComponent {
1392
1405
  useExisting: EcabsSelectComponent,
1393
1406
  multi: true,
1394
1407
  },
1395
- ], viewQueries: [{ propertyName: "allSelected", first: true, predicate: ["allSelected"], descendants: true }, { propertyName: "matSelectSearchComponent", first: true, predicate: MatSelectSearchComponent, descendants: true }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<ecabs-element-wrapper [data]=\"getData()\">\r\n <mat-form-field [ngClass]=\"{ disabled: useOnlyDisabledClass }\">\r\n <mat-select class=\"form-field__select\"\r\n [(ngModel)]=\"value\"\r\n (closed)=\"onTouch()\"\r\n [id]=\"name\"\r\n [multiple]=\"multiple\"\r\n [disabled]=\"disabled\"\r\n [placeholder]=\"placeholder\"\r\n [disableRipple]=\"true\"\r\n (selectionChange)=\"onSelectionChanged($event)\"\r\n [matTooltip]=\"trigger\"\r\n appTooltipIfTruncated\r\n [classNameTruncatedTooltip]=\"'mat-select-value'\">\r\n <mat-select-trigger>\r\n <span>{{ trigger }}</span>\r\n </mat-select-trigger>\r\n\r\n <mat-option *ngIf=\"useSearchOption\">\r\n <ngx-mat-select-search [formControl]=\"itemFilterCtrl\"\r\n [placeholderLabel]=\"searchFieldPlaceholder\"\r\n [noEntriesFoundLabel]=\"noEntriesFoundLabel\">\r\n </ngx-mat-select-search>\r\n </mat-option>\r\n\r\n <mat-option *ngIf=\"useNoneOption\"\r\n (click)=\"toggleNone()\"\r\n (keydown.enter)=\"toggleNone()\">\r\n {{ noneLabel }}\r\n </mat-option>\r\n\r\n <mat-option #allSelected\r\n *ngIf=\"useSelectAllOption && showFilteredAllOption\"\r\n (click)=\"toggleAllSelection()\"\r\n (keydown.enter)=\"toggleAllSelection()\"\r\n [value]=\"selectAllValue\">\r\n {{ allLabel }}\r\n </mat-option>\r\n\r\n <mat-option *ngFor=\"let item of filteredItems$ | async\"\r\n [value]=\"item.value\"\r\n (click)=\"togglePerOne()\"\r\n (keydown.enter)=\"togglePerOne()\"\r\n [matTooltip]=\"item.label\"\r\n appTooltipIfTruncated\r\n [classNameTruncatedTooltip]=\"'mdc-list-item__primary-text'\">\r\n {{ item.label }}\r\n </mat-option>\r\n </mat-select>\r\n </mat-form-field>\r\n</ecabs-element-wrapper>\r\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: EcabsElementWrapperComponent, selector: "ecabs-element-wrapper", inputs: ["data", "showCloseIcon", "focusedFlag", "showPassword", "control"], outputs: ["showHidePassword", "clear", "increase", "decrease"] }, { kind: "component", type: i7.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "component", type: i4.MatSelect, selector: "mat-select", inputs: ["disabled", "disableRipple", "tabIndex", "panelWidth", "hideSingleSelectionIndicator"], exportAs: ["matSelect"] }, { kind: "directive", type: i4.MatSelectTrigger, selector: "mat-select-trigger" }, { kind: "component", type: i2.MatOption, selector: "mat-option", exportAs: ["matOption"] }, { kind: "directive", type: i1$1.MatTooltip, selector: "[matTooltip]", exportAs: ["matTooltip"] }, { kind: "directive", type: i5$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i5$1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i8.MatSelectSearchComponent, selector: "ngx-mat-select-search", inputs: ["placeholderLabel", "type", "closeIcon", "closeSvgIcon", "noEntriesFoundLabel", "clearSearchInput", "searching", "disableInitialFocus", "enableClearOnEscapePressed", "preventHomeEndKeyPropagation", "disableScrollToActiveOnOptionsChanged", "ariaLabel", "showToggleAllCheckbox", "toggleAllCheckboxChecked", "toggleAllCheckboxIndeterminate", "toggleAllCheckboxTooltipMessage", "toggleAllCheckboxTooltipPosition", "hideClearSearchButton", "alwaysRestoreSelectedOptionsMulti", "recreateValuesArray"], outputs: ["toggleAll"] }, { kind: "directive", type: i5$1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "directive", type: TooltipIfTruncatedDirective, selector: "[matTooltip][appTooltipIfTruncated]", inputs: ["classNameTruncatedTooltip"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }] });
1408
+ ], viewQueries: [{ propertyName: "allSelected", first: true, predicate: ["allSelected"], descendants: true }, { propertyName: "matSelectSearchComponent", first: true, predicate: MatSelectSearchComponent, descendants: true }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<ecabs-element-wrapper [data]=\"getData()\">\r\n <mat-form-field [ngClass]=\"{ disabled: useOnlyDisabledClass }\">\r\n <mat-select class=\"form-field__select\"\r\n [(ngModel)]=\"value\"\r\n (closed)=\"onTouch()\"\r\n [id]=\"name\"\r\n [multiple]=\"multiple\"\r\n [disabled]=\"disabled\"\r\n [placeholder]=\"placeholder\"\r\n [disableRipple]=\"true\"\r\n (selectionChange)=\"onSelectionChanged($event)\"\r\n [matTooltip]=\"trigger\"\r\n ecabsTooltipIfTruncated\r\n [classNameTruncatedTooltip]=\"'mat-select-value'\">\r\n <mat-select-trigger>\r\n <span>{{ trigger }}</span>\r\n </mat-select-trigger>\r\n\r\n <mat-option *ngIf=\"useSearchOption\">\r\n <ngx-mat-select-search [formControl]=\"itemFilterCtrl\"\r\n [placeholderLabel]=\"searchFieldPlaceholder\"\r\n [noEntriesFoundLabel]=\"noEntriesFoundLabel\">\r\n </ngx-mat-select-search>\r\n </mat-option>\r\n\r\n <mat-option *ngIf=\"useNoneOption\"\r\n (click)=\"toggleNone()\"\r\n (keydown.enter)=\"toggleNone()\">\r\n {{ noneLabel }}\r\n </mat-option>\r\n\r\n <mat-option #allSelected\r\n *ngIf=\"useSelectAllOption && showFilteredAllOption\"\r\n (click)=\"toggleAllSelection()\"\r\n (keydown.enter)=\"toggleAllSelection()\"\r\n [value]=\"selectAllValue\">\r\n {{ allLabel }}\r\n </mat-option>\r\n\r\n <mat-option *ngFor=\"let item of filteredItems$ | async\"\r\n [value]=\"item.value\"\r\n (click)=\"togglePerOne()\"\r\n (keydown.enter)=\"togglePerOne()\"\r\n [matTooltip]=\"item.label\"\r\n ecabsTooltipIfTruncated\r\n [classNameTruncatedTooltip]=\"'mdc-list-item__primary-text'\">\r\n {{ item.label }}\r\n </mat-option>\r\n </mat-select>\r\n </mat-form-field>\r\n</ecabs-element-wrapper>\r\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: EcabsElementWrapperComponent, selector: "ecabs-element-wrapper", inputs: ["data", "showCloseIcon", "focusedFlag", "showPassword", "control"], outputs: ["showHidePassword", "clear", "increase", "decrease"] }, { kind: "component", type: i7.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "component", type: i4.MatSelect, selector: "mat-select", inputs: ["disabled", "disableRipple", "tabIndex", "panelWidth", "hideSingleSelectionIndicator"], exportAs: ["matSelect"] }, { kind: "directive", type: i4.MatSelectTrigger, selector: "mat-select-trigger" }, { kind: "component", type: i2.MatOption, selector: "mat-option", exportAs: ["matOption"] }, { kind: "directive", type: i1$1.MatTooltip, selector: "[matTooltip]", exportAs: ["matTooltip"] }, { kind: "directive", type: i5$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i5$1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i8.MatSelectSearchComponent, selector: "ngx-mat-select-search", inputs: ["placeholderLabel", "type", "closeIcon", "closeSvgIcon", "noEntriesFoundLabel", "clearSearchInput", "searching", "disableInitialFocus", "enableClearOnEscapePressed", "preventHomeEndKeyPropagation", "disableScrollToActiveOnOptionsChanged", "ariaLabel", "showToggleAllCheckbox", "toggleAllCheckboxChecked", "toggleAllCheckboxIndeterminate", "toggleAllCheckboxTooltipMessage", "toggleAllCheckboxTooltipPosition", "hideClearSearchButton", "alwaysRestoreSelectedOptionsMulti", "recreateValuesArray"], outputs: ["toggleAll"] }, { kind: "directive", type: i5$1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "directive", type: EcabsTooltipIfTruncatedDirective, selector: "[matTooltip][ecabsTooltipIfTruncated]", inputs: ["classNameTruncatedTooltip"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }] });
1396
1409
  }
1397
1410
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EcabsSelectComponent, decorators: [{
1398
1411
  type: Component,
@@ -1402,7 +1415,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
1402
1415
  useExisting: EcabsSelectComponent,
1403
1416
  multi: true,
1404
1417
  },
1405
- ], template: "<ecabs-element-wrapper [data]=\"getData()\">\r\n <mat-form-field [ngClass]=\"{ disabled: useOnlyDisabledClass }\">\r\n <mat-select class=\"form-field__select\"\r\n [(ngModel)]=\"value\"\r\n (closed)=\"onTouch()\"\r\n [id]=\"name\"\r\n [multiple]=\"multiple\"\r\n [disabled]=\"disabled\"\r\n [placeholder]=\"placeholder\"\r\n [disableRipple]=\"true\"\r\n (selectionChange)=\"onSelectionChanged($event)\"\r\n [matTooltip]=\"trigger\"\r\n appTooltipIfTruncated\r\n [classNameTruncatedTooltip]=\"'mat-select-value'\">\r\n <mat-select-trigger>\r\n <span>{{ trigger }}</span>\r\n </mat-select-trigger>\r\n\r\n <mat-option *ngIf=\"useSearchOption\">\r\n <ngx-mat-select-search [formControl]=\"itemFilterCtrl\"\r\n [placeholderLabel]=\"searchFieldPlaceholder\"\r\n [noEntriesFoundLabel]=\"noEntriesFoundLabel\">\r\n </ngx-mat-select-search>\r\n </mat-option>\r\n\r\n <mat-option *ngIf=\"useNoneOption\"\r\n (click)=\"toggleNone()\"\r\n (keydown.enter)=\"toggleNone()\">\r\n {{ noneLabel }}\r\n </mat-option>\r\n\r\n <mat-option #allSelected\r\n *ngIf=\"useSelectAllOption && showFilteredAllOption\"\r\n (click)=\"toggleAllSelection()\"\r\n (keydown.enter)=\"toggleAllSelection()\"\r\n [value]=\"selectAllValue\">\r\n {{ allLabel }}\r\n </mat-option>\r\n\r\n <mat-option *ngFor=\"let item of filteredItems$ | async\"\r\n [value]=\"item.value\"\r\n (click)=\"togglePerOne()\"\r\n (keydown.enter)=\"togglePerOne()\"\r\n [matTooltip]=\"item.label\"\r\n appTooltipIfTruncated\r\n [classNameTruncatedTooltip]=\"'mdc-list-item__primary-text'\">\r\n {{ item.label }}\r\n </mat-option>\r\n </mat-select>\r\n </mat-form-field>\r\n</ecabs-element-wrapper>\r\n" }]
1418
+ ], template: "<ecabs-element-wrapper [data]=\"getData()\">\r\n <mat-form-field [ngClass]=\"{ disabled: useOnlyDisabledClass }\">\r\n <mat-select class=\"form-field__select\"\r\n [(ngModel)]=\"value\"\r\n (closed)=\"onTouch()\"\r\n [id]=\"name\"\r\n [multiple]=\"multiple\"\r\n [disabled]=\"disabled\"\r\n [placeholder]=\"placeholder\"\r\n [disableRipple]=\"true\"\r\n (selectionChange)=\"onSelectionChanged($event)\"\r\n [matTooltip]=\"trigger\"\r\n ecabsTooltipIfTruncated\r\n [classNameTruncatedTooltip]=\"'mat-select-value'\">\r\n <mat-select-trigger>\r\n <span>{{ trigger }}</span>\r\n </mat-select-trigger>\r\n\r\n <mat-option *ngIf=\"useSearchOption\">\r\n <ngx-mat-select-search [formControl]=\"itemFilterCtrl\"\r\n [placeholderLabel]=\"searchFieldPlaceholder\"\r\n [noEntriesFoundLabel]=\"noEntriesFoundLabel\">\r\n </ngx-mat-select-search>\r\n </mat-option>\r\n\r\n <mat-option *ngIf=\"useNoneOption\"\r\n (click)=\"toggleNone()\"\r\n (keydown.enter)=\"toggleNone()\">\r\n {{ noneLabel }}\r\n </mat-option>\r\n\r\n <mat-option #allSelected\r\n *ngIf=\"useSelectAllOption && showFilteredAllOption\"\r\n (click)=\"toggleAllSelection()\"\r\n (keydown.enter)=\"toggleAllSelection()\"\r\n [value]=\"selectAllValue\">\r\n {{ allLabel }}\r\n </mat-option>\r\n\r\n <mat-option *ngFor=\"let item of filteredItems$ | async\"\r\n [value]=\"item.value\"\r\n (click)=\"togglePerOne()\"\r\n (keydown.enter)=\"togglePerOne()\"\r\n [matTooltip]=\"item.label\"\r\n ecabsTooltipIfTruncated\r\n [classNameTruncatedTooltip]=\"'mdc-list-item__primary-text'\">\r\n {{ item.label }}\r\n </mat-option>\r\n </mat-select>\r\n </mat-form-field>\r\n</ecabs-element-wrapper>\r\n" }]
1406
1419
  }], ctorParameters: function () { return [{ type: i0.Injector }, { type: i0.ChangeDetectorRef }, { type: i0.DestroyRef }]; }, propDecorators: { items: [{
1407
1420
  type: Input
1408
1421
  }], multiple: [{
@@ -1452,7 +1465,7 @@ class EcabsSelectModule {
1452
1465
  FormsModule,
1453
1466
  NgxMatSelectSearchModule,
1454
1467
  ReactiveFormsModule,
1455
- TooltipIfTruncatedDirectiveModule], exports: [EcabsSelectComponent] });
1468
+ EcabsTooltipIfTruncatedDirectiveModule], exports: [EcabsSelectComponent] });
1456
1469
  static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EcabsSelectModule, providers: [
1457
1470
  {
1458
1471
  provide: MAT_SELECT_SCROLL_STRATEGY,
@@ -1466,7 +1479,7 @@ class EcabsSelectModule {
1466
1479
  FormsModule,
1467
1480
  NgxMatSelectSearchModule,
1468
1481
  ReactiveFormsModule,
1469
- TooltipIfTruncatedDirectiveModule] });
1482
+ EcabsTooltipIfTruncatedDirectiveModule] });
1470
1483
  }
1471
1484
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EcabsSelectModule, decorators: [{
1472
1485
  type: NgModule,
@@ -1480,7 +1493,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
1480
1493
  FormsModule,
1481
1494
  NgxMatSelectSearchModule,
1482
1495
  ReactiveFormsModule,
1483
- TooltipIfTruncatedDirectiveModule,
1496
+ EcabsTooltipIfTruncatedDirectiveModule,
1484
1497
  ],
1485
1498
  exports: [EcabsSelectComponent],
1486
1499
  providers: [
@@ -2244,7 +2257,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
2244
2257
  type: Input
2245
2258
  }] } });
2246
2259
 
2247
- class NumberBorderDirective {
2260
+ class EcabsNumberBorderDirective {
2248
2261
  el;
2249
2262
  maxValue;
2250
2263
  minValue;
@@ -2284,13 +2297,13 @@ class NumberBorderDirective {
2284
2297
  }
2285
2298
  return result;
2286
2299
  }
2287
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: NumberBorderDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
2288
- static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: NumberBorderDirective, selector: "[appNumberBorder]", inputs: { maxValue: "maxValue", minValue: "minValue" }, host: { listeners: { "keyup": "onKeyUp($event)" } }, ngImport: i0 });
2300
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EcabsNumberBorderDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
2301
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: EcabsNumberBorderDirective, selector: "[ecabsNumberBorder]", inputs: { maxValue: "maxValue", minValue: "minValue" }, host: { listeners: { "keyup": "onKeyUp($event)" } }, ngImport: i0 });
2289
2302
  }
2290
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: NumberBorderDirective, decorators: [{
2303
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EcabsNumberBorderDirective, decorators: [{
2291
2304
  type: Directive,
2292
2305
  args: [{
2293
- selector: '[appNumberBorder]',
2306
+ selector: '[ecabsNumberBorder]',
2294
2307
  }]
2295
2308
  }], ctorParameters: function () { return [{ type: i0.ElementRef }]; }, propDecorators: { maxValue: [{
2296
2309
  type: Input
@@ -2377,7 +2390,7 @@ function createAutoCorrectedDatePipe(dateFormat = 'dd mm yyyy', { minYear = 1, m
2377
2390
  };
2378
2391
  }
2379
2392
 
2380
- class MaskDateDirective {
2393
+ class EcabsMaskDateDirective {
2381
2394
  element;
2382
2395
  isDateTimeMask = false;
2383
2396
  considerSeconds = false;
@@ -2461,13 +2474,13 @@ class MaskDateDirective {
2461
2474
  // Check if the string contains any digit between 0 and 9
2462
2475
  return /\d/.test(value);
2463
2476
  }
2464
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: MaskDateDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
2465
- static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: MaskDateDirective, selector: "[appMaskDate]", inputs: { isDateTimeMask: "isDateTimeMask", considerSeconds: "considerSeconds" }, host: { listeners: { "ngModelChange": "onNgModelChange($event)" } }, ngImport: i0 });
2477
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EcabsMaskDateDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
2478
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: EcabsMaskDateDirective, selector: "[ecabsMaskDate]", inputs: { isDateTimeMask: "isDateTimeMask", considerSeconds: "considerSeconds" }, host: { listeners: { "ngModelChange": "onNgModelChange($event)" } }, ngImport: i0 });
2466
2479
  }
2467
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: MaskDateDirective, decorators: [{
2480
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EcabsMaskDateDirective, decorators: [{
2468
2481
  type: Directive,
2469
2482
  args: [{
2470
- selector: '[appMaskDate]',
2483
+ selector: '[ecabsMaskDate]',
2471
2484
  }]
2472
2485
  }], ctorParameters: function () { return [{ type: i0.ElementRef }]; }, propDecorators: { isDateTimeMask: [{
2473
2486
  type: Input
@@ -2657,7 +2670,7 @@ class EcabsDateTimePickerComponent extends EcabsElementBaseComponent {
2657
2670
  },
2658
2671
  DecimalPipe,
2659
2672
  UnsubscribeService,
2660
- ], usesInheritance: true, ngImport: i0, template: "<ecabs-element-wrapper [data]=\"getData()\">\r\n <div class=\"form-field__input--wrapper w-full\">\r\n <input\r\n class=\"fake-input\"\r\n [id]=\"_date\"\r\n [(ngModel)]=\"_date\"\r\n [placeholder]=\"placeholder\"\r\n [disabled]=\"disabled\"\r\n [matDatepicker]=\"picker\"\r\n [min]=\"minDate\"\r\n [max]=\"maxDate\"\r\n (blur)=\"onTouch()\"\r\n />\r\n <mat-datepicker #picker [calendarHeaderComponent]=\"header\" [touchUi]=\"touchUi\" class=\"datepicker-ui\">\r\n <mat-datepicker-actions>\r\n <div class=\"actions\">\r\n <div class=\"time--inputs\">\r\n <input\r\n class=\"form-field__input time\"\r\n appDigitsOnly\r\n appNumberBorder\r\n [digitsOnly]=\"true\"\r\n [id]=\"hours\"\r\n [value]=\"_hours\"\r\n [maxValue]=\"maxValueHours\"\r\n [(ngModel)]=\"hours\"\r\n />\r\n <span class=\"font-bold\">:</span>\r\n <input\r\n class=\"form-field__input time\"\r\n [id]=\"minutes\"\r\n [(ngModel)]=\"minutes\"\r\n appDigitsOnly\r\n appNumberBorder\r\n [digitsOnly]=\"true\"\r\n [maxValue]=\"maxValueMinutesSeconds\"\r\n />\r\n\r\n <ng-container *ngIf=\"!hideSeconds\">\r\n <span class=\"font-bold\">:</span>\r\n <input\r\n class=\"form-field__input time\"\r\n [id]=\"seconds\"\r\n [(ngModel)]=\"seconds\"\r\n appDigitsOnly\r\n appNumberBorder\r\n [digitsOnly]=\"true\"\r\n [maxValue]=\"maxValueMinutesSeconds\"\r\n />\r\n </ng-container>\r\n </div>\r\n\r\n <ecabs-date-picker-actions [applyLabel]=\"applyLabel ?? translationConfig?.applyLabel\"\r\n [cancelLabel]=\"cancelLabel ?? translationConfig?.cancelLabel\"\r\n (apply)=\"onApply()\">\r\n </ecabs-date-picker-actions>\r\n </div>\r\n </mat-datepicker-actions>\r\n </mat-datepicker>\r\n <input\r\n class=\"form-field__input w-full date-input\"\r\n [id]=\"name\"\r\n [(ngModel)]=\"pickerValue\"\r\n [placeholder]=\"placeholder\"\r\n [disabled]=\"disabled\"\r\n appMaskDate\r\n [isDateTimeMask]=\"true\"\r\n [considerSeconds]=\"!hideSeconds\"\r\n (blur)=\"onTouch()\"\r\n />\r\n <button mat-icon-button class=\"datepicker-ui__toggle text-gray-500\"\r\n (click)=\"picker.open()\">\r\n <mat-icon>calendar_today</mat-icon>\r\n </button>\r\n </div>\r\n</ecabs-element-wrapper>\r\n", styles: [".time--inputs:before,.time--inputs:after{position:absolute;content:\"\"}.time{width:3.375rem}.fake-input{visibility:hidden;width:0;padding:0;margin:0}.time--inputs{position:relative;display:flex;gap:.5rem;justify-content:center;align-items:center;margin-top:2.4rem;margin-bottom:2.4rem}.time--inputs:before,.time--inputs:after{height:1px;right:0;left:0;background-color:var(--color-gray-300)}.time--inputs:before{top:-1.6rem}.time--inputs:after{bottom:-1.6rem}.font-bold{font-weight:700}.actions{display:flex;flex-direction:column;width:100%!important;row-gap:1rem}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: EcabsElementWrapperComponent, selector: "ecabs-element-wrapper", inputs: ["data", "showCloseIcon", "focusedFlag", "showPassword", "control"], outputs: ["showHidePassword", "clear", "increase", "decrease"] }, { kind: "component", type: i5.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i5$2.MatDatepicker, selector: "mat-datepicker", exportAs: ["matDatepicker"] }, { kind: "directive", type: i5$2.MatDatepickerInput, selector: "input[matDatepicker]", inputs: ["matDatepicker", "min", "max", "matDatepickerFilter"], exportAs: ["matDatepickerInput"] }, { kind: "component", type: i5$2.MatDatepickerActions, selector: "mat-datepicker-actions, mat-date-range-picker-actions" }, { kind: "component", type: i6.MatIconButton, selector: "button[mat-icon-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "directive", type: i5$1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i5$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i5$1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: DigitsOnlyDirective, selector: "[appDigitsOnly]", inputs: ["digitsOnly", "allowHyphen", "decimal", "decimalSeparator", "unit"] }, { kind: "directive", type: NumberBorderDirective, selector: "[appNumberBorder]", inputs: ["maxValue", "minValue"] }, { kind: "directive", type: MaskDateDirective, selector: "[appMaskDate]", inputs: ["isDateTimeMask", "considerSeconds"] }, { kind: "component", type: EcabsDatePickerActionsComponent, selector: "ecabs-date-picker-actions", inputs: ["cancelLabel", "applyLabel"], outputs: ["apply"] }] });
2673
+ ], usesInheritance: true, ngImport: i0, template: "<ecabs-element-wrapper [data]=\"getData()\">\r\n <div class=\"form-field__input--wrapper w-full\">\r\n <input\r\n class=\"fake-input\"\r\n [id]=\"_date\"\r\n [(ngModel)]=\"_date\"\r\n [placeholder]=\"placeholder\"\r\n [disabled]=\"disabled\"\r\n [matDatepicker]=\"picker\"\r\n [min]=\"minDate\"\r\n [max]=\"maxDate\"\r\n (blur)=\"onTouch()\"\r\n />\r\n <mat-datepicker #picker [calendarHeaderComponent]=\"header\" [touchUi]=\"touchUi\" class=\"datepicker-ui\">\r\n <mat-datepicker-actions>\r\n <div class=\"actions\">\r\n <div class=\"time--inputs\">\r\n <input\r\n class=\"form-field__input time\"\r\n ecabsDigitsOnly\r\n ecabsNumberBorder\r\n [digitsOnly]=\"true\"\r\n [id]=\"hours\"\r\n [value]=\"_hours\"\r\n [maxValue]=\"maxValueHours\"\r\n [(ngModel)]=\"hours\"\r\n />\r\n <span class=\"font-bold\">:</span>\r\n <input\r\n class=\"form-field__input time\"\r\n [id]=\"minutes\"\r\n [(ngModel)]=\"minutes\"\r\n ecabsDigitsOnly\r\n ecabsNumberBorder\r\n [digitsOnly]=\"true\"\r\n [maxValue]=\"maxValueMinutesSeconds\"\r\n />\r\n\r\n <ng-container *ngIf=\"!hideSeconds\">\r\n <span class=\"font-bold\">:</span>\r\n <input\r\n class=\"form-field__input time\"\r\n [id]=\"seconds\"\r\n [(ngModel)]=\"seconds\"\r\n ecabsDigitsOnly\r\n ecabsNumberBorder\r\n [digitsOnly]=\"true\"\r\n [maxValue]=\"maxValueMinutesSeconds\"\r\n />\r\n </ng-container>\r\n </div>\r\n\r\n <ecabs-date-picker-actions [applyLabel]=\"applyLabel ?? translationConfig?.applyLabel\"\r\n [cancelLabel]=\"cancelLabel ?? translationConfig?.cancelLabel\"\r\n (apply)=\"onApply()\">\r\n </ecabs-date-picker-actions>\r\n </div>\r\n </mat-datepicker-actions>\r\n </mat-datepicker>\r\n <input\r\n class=\"form-field__input w-full date-input\"\r\n [id]=\"name\"\r\n [(ngModel)]=\"pickerValue\"\r\n [placeholder]=\"placeholder\"\r\n [disabled]=\"disabled\"\r\n ecabsMaskDate\r\n [isDateTimeMask]=\"true\"\r\n [considerSeconds]=\"!hideSeconds\"\r\n (blur)=\"onTouch()\"\r\n />\r\n <button mat-icon-button class=\"datepicker-ui__toggle text-gray-500\"\r\n (click)=\"picker.open()\">\r\n <mat-icon>calendar_today</mat-icon>\r\n </button>\r\n </div>\r\n</ecabs-element-wrapper>\r\n", styles: [".time--inputs:before,.time--inputs:after{position:absolute;content:\"\"}.time{width:3.375rem}.fake-input{visibility:hidden;width:0;padding:0;margin:0}.time--inputs{position:relative;display:flex;gap:.5rem;justify-content:center;align-items:center;margin-top:2.4rem;margin-bottom:2.4rem}.time--inputs:before,.time--inputs:after{height:1px;right:0;left:0;background-color:var(--color-gray-300)}.time--inputs:before{top:-1.6rem}.time--inputs:after{bottom:-1.6rem}.font-bold{font-weight:700}.actions{display:flex;flex-direction:column;width:100%!important;row-gap:1rem}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: EcabsElementWrapperComponent, selector: "ecabs-element-wrapper", inputs: ["data", "showCloseIcon", "focusedFlag", "showPassword", "control"], outputs: ["showHidePassword", "clear", "increase", "decrease"] }, { kind: "component", type: i5.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i5$2.MatDatepicker, selector: "mat-datepicker", exportAs: ["matDatepicker"] }, { kind: "directive", type: i5$2.MatDatepickerInput, selector: "input[matDatepicker]", inputs: ["matDatepicker", "min", "max", "matDatepickerFilter"], exportAs: ["matDatepickerInput"] }, { kind: "component", type: i5$2.MatDatepickerActions, selector: "mat-datepicker-actions, mat-date-range-picker-actions" }, { kind: "component", type: i6.MatIconButton, selector: "button[mat-icon-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "directive", type: i5$1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i5$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i5$1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: EcabsDigitsOnlyDirective, selector: "[ecabsDigitsOnly]", inputs: ["digitsOnly", "allowHyphen", "decimal", "decimalSeparator", "unit"] }, { kind: "directive", type: EcabsNumberBorderDirective, selector: "[ecabsNumberBorder]", inputs: ["maxValue", "minValue"] }, { kind: "directive", type: EcabsMaskDateDirective, selector: "[ecabsMaskDate]", inputs: ["isDateTimeMask", "considerSeconds"] }, { kind: "component", type: EcabsDatePickerActionsComponent, selector: "ecabs-date-picker-actions", inputs: ["cancelLabel", "applyLabel"], outputs: ["apply"] }] });
2661
2674
  }
2662
2675
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EcabsDateTimePickerComponent, decorators: [{
2663
2676
  type: Component,
@@ -2669,7 +2682,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
2669
2682
  },
2670
2683
  DecimalPipe,
2671
2684
  UnsubscribeService,
2672
- ], template: "<ecabs-element-wrapper [data]=\"getData()\">\r\n <div class=\"form-field__input--wrapper w-full\">\r\n <input\r\n class=\"fake-input\"\r\n [id]=\"_date\"\r\n [(ngModel)]=\"_date\"\r\n [placeholder]=\"placeholder\"\r\n [disabled]=\"disabled\"\r\n [matDatepicker]=\"picker\"\r\n [min]=\"minDate\"\r\n [max]=\"maxDate\"\r\n (blur)=\"onTouch()\"\r\n />\r\n <mat-datepicker #picker [calendarHeaderComponent]=\"header\" [touchUi]=\"touchUi\" class=\"datepicker-ui\">\r\n <mat-datepicker-actions>\r\n <div class=\"actions\">\r\n <div class=\"time--inputs\">\r\n <input\r\n class=\"form-field__input time\"\r\n appDigitsOnly\r\n appNumberBorder\r\n [digitsOnly]=\"true\"\r\n [id]=\"hours\"\r\n [value]=\"_hours\"\r\n [maxValue]=\"maxValueHours\"\r\n [(ngModel)]=\"hours\"\r\n />\r\n <span class=\"font-bold\">:</span>\r\n <input\r\n class=\"form-field__input time\"\r\n [id]=\"minutes\"\r\n [(ngModel)]=\"minutes\"\r\n appDigitsOnly\r\n appNumberBorder\r\n [digitsOnly]=\"true\"\r\n [maxValue]=\"maxValueMinutesSeconds\"\r\n />\r\n\r\n <ng-container *ngIf=\"!hideSeconds\">\r\n <span class=\"font-bold\">:</span>\r\n <input\r\n class=\"form-field__input time\"\r\n [id]=\"seconds\"\r\n [(ngModel)]=\"seconds\"\r\n appDigitsOnly\r\n appNumberBorder\r\n [digitsOnly]=\"true\"\r\n [maxValue]=\"maxValueMinutesSeconds\"\r\n />\r\n </ng-container>\r\n </div>\r\n\r\n <ecabs-date-picker-actions [applyLabel]=\"applyLabel ?? translationConfig?.applyLabel\"\r\n [cancelLabel]=\"cancelLabel ?? translationConfig?.cancelLabel\"\r\n (apply)=\"onApply()\">\r\n </ecabs-date-picker-actions>\r\n </div>\r\n </mat-datepicker-actions>\r\n </mat-datepicker>\r\n <input\r\n class=\"form-field__input w-full date-input\"\r\n [id]=\"name\"\r\n [(ngModel)]=\"pickerValue\"\r\n [placeholder]=\"placeholder\"\r\n [disabled]=\"disabled\"\r\n appMaskDate\r\n [isDateTimeMask]=\"true\"\r\n [considerSeconds]=\"!hideSeconds\"\r\n (blur)=\"onTouch()\"\r\n />\r\n <button mat-icon-button class=\"datepicker-ui__toggle text-gray-500\"\r\n (click)=\"picker.open()\">\r\n <mat-icon>calendar_today</mat-icon>\r\n </button>\r\n </div>\r\n</ecabs-element-wrapper>\r\n", styles: [".time--inputs:before,.time--inputs:after{position:absolute;content:\"\"}.time{width:3.375rem}.fake-input{visibility:hidden;width:0;padding:0;margin:0}.time--inputs{position:relative;display:flex;gap:.5rem;justify-content:center;align-items:center;margin-top:2.4rem;margin-bottom:2.4rem}.time--inputs:before,.time--inputs:after{height:1px;right:0;left:0;background-color:var(--color-gray-300)}.time--inputs:before{top:-1.6rem}.time--inputs:after{bottom:-1.6rem}.font-bold{font-weight:700}.actions{display:flex;flex-direction:column;width:100%!important;row-gap:1rem}\n"] }]
2685
+ ], template: "<ecabs-element-wrapper [data]=\"getData()\">\r\n <div class=\"form-field__input--wrapper w-full\">\r\n <input\r\n class=\"fake-input\"\r\n [id]=\"_date\"\r\n [(ngModel)]=\"_date\"\r\n [placeholder]=\"placeholder\"\r\n [disabled]=\"disabled\"\r\n [matDatepicker]=\"picker\"\r\n [min]=\"minDate\"\r\n [max]=\"maxDate\"\r\n (blur)=\"onTouch()\"\r\n />\r\n <mat-datepicker #picker [calendarHeaderComponent]=\"header\" [touchUi]=\"touchUi\" class=\"datepicker-ui\">\r\n <mat-datepicker-actions>\r\n <div class=\"actions\">\r\n <div class=\"time--inputs\">\r\n <input\r\n class=\"form-field__input time\"\r\n ecabsDigitsOnly\r\n ecabsNumberBorder\r\n [digitsOnly]=\"true\"\r\n [id]=\"hours\"\r\n [value]=\"_hours\"\r\n [maxValue]=\"maxValueHours\"\r\n [(ngModel)]=\"hours\"\r\n />\r\n <span class=\"font-bold\">:</span>\r\n <input\r\n class=\"form-field__input time\"\r\n [id]=\"minutes\"\r\n [(ngModel)]=\"minutes\"\r\n ecabsDigitsOnly\r\n ecabsNumberBorder\r\n [digitsOnly]=\"true\"\r\n [maxValue]=\"maxValueMinutesSeconds\"\r\n />\r\n\r\n <ng-container *ngIf=\"!hideSeconds\">\r\n <span class=\"font-bold\">:</span>\r\n <input\r\n class=\"form-field__input time\"\r\n [id]=\"seconds\"\r\n [(ngModel)]=\"seconds\"\r\n ecabsDigitsOnly\r\n ecabsNumberBorder\r\n [digitsOnly]=\"true\"\r\n [maxValue]=\"maxValueMinutesSeconds\"\r\n />\r\n </ng-container>\r\n </div>\r\n\r\n <ecabs-date-picker-actions [applyLabel]=\"applyLabel ?? translationConfig?.applyLabel\"\r\n [cancelLabel]=\"cancelLabel ?? translationConfig?.cancelLabel\"\r\n (apply)=\"onApply()\">\r\n </ecabs-date-picker-actions>\r\n </div>\r\n </mat-datepicker-actions>\r\n </mat-datepicker>\r\n <input\r\n class=\"form-field__input w-full date-input\"\r\n [id]=\"name\"\r\n [(ngModel)]=\"pickerValue\"\r\n [placeholder]=\"placeholder\"\r\n [disabled]=\"disabled\"\r\n ecabsMaskDate\r\n [isDateTimeMask]=\"true\"\r\n [considerSeconds]=\"!hideSeconds\"\r\n (blur)=\"onTouch()\"\r\n />\r\n <button mat-icon-button class=\"datepicker-ui__toggle text-gray-500\"\r\n (click)=\"picker.open()\">\r\n <mat-icon>calendar_today</mat-icon>\r\n </button>\r\n </div>\r\n</ecabs-element-wrapper>\r\n", styles: [".time--inputs:before,.time--inputs:after{position:absolute;content:\"\"}.time{width:3.375rem}.fake-input{visibility:hidden;width:0;padding:0;margin:0}.time--inputs{position:relative;display:flex;gap:.5rem;justify-content:center;align-items:center;margin-top:2.4rem;margin-bottom:2.4rem}.time--inputs:before,.time--inputs:after{height:1px;right:0;left:0;background-color:var(--color-gray-300)}.time--inputs:before{top:-1.6rem}.time--inputs:after{bottom:-1.6rem}.font-bold{font-weight:700}.actions{display:flex;flex-direction:column;width:100%!important;row-gap:1rem}\n"] }]
2673
2686
  }], ctorParameters: function () { return [{ type: i0.Injector }, { type: i1.DecimalPipe }, { type: i0.ChangeDetectorRef }, { type: EcabsDatePickerHeaderService }, { type: UnsubscribeService }]; }, propDecorators: { minDate: [{
2674
2687
  type: Input
2675
2688
  }], maxDate: [{
@@ -2688,31 +2701,31 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
2688
2701
  type: Output
2689
2702
  }] } });
2690
2703
 
2691
- class MaskDateDirectiveModule {
2692
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: MaskDateDirectiveModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
2693
- static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.12", ngImport: i0, type: MaskDateDirectiveModule, declarations: [MaskDateDirective], imports: [CommonModule], exports: [MaskDateDirective] });
2694
- static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: MaskDateDirectiveModule, imports: [CommonModule] });
2704
+ class EcabsMaskDateDirectiveModule {
2705
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EcabsMaskDateDirectiveModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
2706
+ static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.12", ngImport: i0, type: EcabsMaskDateDirectiveModule, declarations: [EcabsMaskDateDirective], imports: [CommonModule], exports: [EcabsMaskDateDirective] });
2707
+ static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EcabsMaskDateDirectiveModule, imports: [CommonModule] });
2695
2708
  }
2696
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: MaskDateDirectiveModule, decorators: [{
2709
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EcabsMaskDateDirectiveModule, decorators: [{
2697
2710
  type: NgModule,
2698
2711
  args: [{
2699
2712
  imports: [CommonModule],
2700
- declarations: [MaskDateDirective],
2701
- exports: [MaskDateDirective],
2713
+ declarations: [EcabsMaskDateDirective],
2714
+ exports: [EcabsMaskDateDirective],
2702
2715
  }]
2703
2716
  }] });
2704
2717
 
2705
- class NumberBorderDirectiveModule {
2706
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: NumberBorderDirectiveModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
2707
- static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.12", ngImport: i0, type: NumberBorderDirectiveModule, declarations: [NumberBorderDirective], imports: [CommonModule], exports: [NumberBorderDirective] });
2708
- static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: NumberBorderDirectiveModule, imports: [CommonModule] });
2718
+ class EcabsNumberBorderDirectiveModule {
2719
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EcabsNumberBorderDirectiveModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
2720
+ static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.12", ngImport: i0, type: EcabsNumberBorderDirectiveModule, declarations: [EcabsNumberBorderDirective], imports: [CommonModule], exports: [EcabsNumberBorderDirective] });
2721
+ static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EcabsNumberBorderDirectiveModule, imports: [CommonModule] });
2709
2722
  }
2710
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: NumberBorderDirectiveModule, decorators: [{
2723
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EcabsNumberBorderDirectiveModule, decorators: [{
2711
2724
  type: NgModule,
2712
2725
  args: [{
2713
2726
  imports: [CommonModule],
2714
- declarations: [NumberBorderDirective],
2715
- exports: [NumberBorderDirective],
2727
+ declarations: [EcabsNumberBorderDirective],
2728
+ exports: [EcabsNumberBorderDirective],
2716
2729
  }]
2717
2730
  }] });
2718
2731
 
@@ -2770,9 +2783,9 @@ class EcabsDatetimePickerModule {
2770
2783
  ReactiveFormsModule,
2771
2784
  EcabsPickerHeaderModule,
2772
2785
  EcabsButtonsModule,
2773
- DigitsOnlyDirectivesModule,
2774
- NumberBorderDirectiveModule,
2775
- MaskDateDirectiveModule,
2786
+ EcabsDigitsOnlyDirectivesModule,
2787
+ EcabsNumberBorderDirectiveModule,
2788
+ EcabsMaskDateDirectiveModule,
2776
2789
  EcabsDatePickerActionsModule], exports: [EcabsDateTimePickerComponent, EcabsDateTimePickerHeaderComponent] });
2777
2790
  static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EcabsDatetimePickerModule, imports: [CommonModule,
2778
2791
  ElementWrapperModule,
@@ -2783,9 +2796,9 @@ class EcabsDatetimePickerModule {
2783
2796
  ReactiveFormsModule,
2784
2797
  EcabsPickerHeaderModule,
2785
2798
  EcabsButtonsModule,
2786
- DigitsOnlyDirectivesModule,
2787
- NumberBorderDirectiveModule,
2788
- MaskDateDirectiveModule,
2799
+ EcabsDigitsOnlyDirectivesModule,
2800
+ EcabsNumberBorderDirectiveModule,
2801
+ EcabsMaskDateDirectiveModule,
2789
2802
  EcabsDatePickerActionsModule] });
2790
2803
  }
2791
2804
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EcabsDatetimePickerModule, decorators: [{
@@ -2805,9 +2818,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
2805
2818
  ReactiveFormsModule,
2806
2819
  EcabsPickerHeaderModule,
2807
2820
  EcabsButtonsModule,
2808
- DigitsOnlyDirectivesModule,
2809
- NumberBorderDirectiveModule,
2810
- MaskDateDirectiveModule,
2821
+ EcabsDigitsOnlyDirectivesModule,
2822
+ EcabsNumberBorderDirectiveModule,
2823
+ EcabsMaskDateDirectiveModule,
2811
2824
  EcabsDatePickerActionsModule,
2812
2825
  ],
2813
2826
  exports: [EcabsDateTimePickerComponent, EcabsDateTimePickerHeaderComponent],
@@ -2981,9 +2994,9 @@ class EcabsDateRangeModule {
2981
2994
  ReactiveFormsModule,
2982
2995
  EcabsPickerHeaderModule,
2983
2996
  EcabsButtonsModule,
2984
- DigitsOnlyDirectivesModule,
2985
- NumberBorderDirectiveModule,
2986
- MaskDateDirectiveModule,
2997
+ EcabsDigitsOnlyDirectivesModule,
2998
+ EcabsNumberBorderDirectiveModule,
2999
+ EcabsMaskDateDirectiveModule,
2987
3000
  MatInputModule,
2988
3001
  EcabsDatePickerActionsModule], exports: [EcabsDateRangePickerComponent, EcabsDateRangePickerHeaderComponent] });
2989
3002
  static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EcabsDateRangeModule, imports: [CommonModule,
@@ -2995,9 +3008,9 @@ class EcabsDateRangeModule {
2995
3008
  ReactiveFormsModule,
2996
3009
  EcabsPickerHeaderModule,
2997
3010
  EcabsButtonsModule,
2998
- DigitsOnlyDirectivesModule,
2999
- NumberBorderDirectiveModule,
3000
- MaskDateDirectiveModule,
3011
+ EcabsDigitsOnlyDirectivesModule,
3012
+ EcabsNumberBorderDirectiveModule,
3013
+ EcabsMaskDateDirectiveModule,
3001
3014
  MatInputModule,
3002
3015
  EcabsDatePickerActionsModule] });
3003
3016
  }
@@ -3018,9 +3031,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
3018
3031
  ReactiveFormsModule,
3019
3032
  EcabsPickerHeaderModule,
3020
3033
  EcabsButtonsModule,
3021
- DigitsOnlyDirectivesModule,
3022
- NumberBorderDirectiveModule,
3023
- MaskDateDirectiveModule,
3034
+ EcabsDigitsOnlyDirectivesModule,
3035
+ EcabsNumberBorderDirectiveModule,
3036
+ EcabsMaskDateDirectiveModule,
3024
3037
  MatInputModule,
3025
3038
  EcabsDatePickerActionsModule,
3026
3039
  ],
@@ -3087,7 +3100,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
3087
3100
  type: Input
3088
3101
  }] } });
3089
3102
 
3090
- class MaskTimeDirective {
3103
+ class EcabsMaskTimeDirective {
3091
3104
  element;
3092
3105
  timeRange = false;
3093
3106
  all;
@@ -3131,13 +3144,13 @@ class MaskTimeDirective {
3131
3144
  ngOnDestroy() {
3132
3145
  this.maskedInputController.destroy();
3133
3146
  }
3134
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: MaskTimeDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
3135
- static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: MaskTimeDirective, selector: "[appTime]", inputs: { timeRange: "timeRange", all: "all" }, ngImport: i0 });
3147
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EcabsMaskTimeDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
3148
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: EcabsMaskTimeDirective, selector: "[ecabsTime]", inputs: { timeRange: "timeRange", all: "all" }, ngImport: i0 });
3136
3149
  }
3137
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: MaskTimeDirective, decorators: [{
3150
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EcabsMaskTimeDirective, decorators: [{
3138
3151
  type: Directive,
3139
3152
  args: [{
3140
- selector: '[appTime]',
3153
+ selector: '[ecabsTime]',
3141
3154
  }]
3142
3155
  }], ctorParameters: function () { return [{ type: i0.ElementRef }]; }, propDecorators: { timeRange: [{
3143
3156
  type: Input
@@ -3347,7 +3360,7 @@ class EcabsDateTimeRangePickerComponent extends EcabsElementBaseComponent {
3347
3360
  },
3348
3361
  DecimalPipe,
3349
3362
  UnsubscribeService,
3350
- ], usesInheritance: true, ngImport: i0, template: "<ecabs-element-wrapper [data]=\"getData()\">\r\n <div class=\"form-field__input--wrapper w-full\">\r\n <input\r\n class=\"fake-input\"\r\n [id]=\"_date\"\r\n [(ngModel)]=\"_date\"\r\n [placeholder]=\"placeholder\"\r\n [disabled]=\"disabled || controlDate?.disabled\"\r\n [matDatepicker]=\"picker\"\r\n (blur)=\"onTouch()\"\r\n />\r\n <mat-datepicker\r\n (opened)=\"opened()\"\r\n #picker\r\n [calendarHeaderComponent]=\"header\"\r\n [touchUi]=\"touchUi\"\r\n >\r\n <mat-datepicker-actions>\r\n <div class=\"flex flex-col w-full gap-y-4\">\r\n <div class=\"flex gap-2 justify-center items-center\">\r\n <div class=\"flex flex-col justify-center\">\r\n <div class=\"text-center\">{{ from ?? translationConfig?.from }}</div>\r\n <div class=\"flex gap-2 justify-center items-center\">\r\n <input\r\n class=\"block form-field__input time\"\r\n appDigitsOnly\r\n appNumberBorder\r\n [digitsOnly]=\"true\"\r\n [id]=\"hoursFrom\"\r\n [maxValue]=\"maxValueHours\"\r\n [(ngModel)]=\"hoursFrom\"\r\n />\r\n\r\n <span class=\"font-bold\">:</span>\r\n <input\r\n class=\"form-field__input time\"\r\n [id]=\"minutesFrom\"\r\n [(ngModel)]=\"minutesFrom\"\r\n appDigitsOnly\r\n appNumberBorder\r\n [digitsOnly]=\"true\"\r\n [maxValue]=\"maxValueMinutesSeconds\"\r\n />\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"time--inputs\"></div>\r\n <div class=\"flex gap-2 justify-center items-center mb-5\">\r\n <div class=\"flex flex-col justify-center\">\r\n <div class=\"text-center\">{{ to ?? translationConfig?.to }}</div>\r\n <div class=\"flex gap-2 justify-center items-center\">\r\n <input\r\n class=\"form-field__input time\"\r\n appDigitsOnly\r\n appNumberBorder\r\n [digitsOnly]=\"true\"\r\n [id]=\"hoursTo\"\r\n [maxValue]=\"maxValueHours\"\r\n [(ngModel)]=\"hoursTo\"\r\n />\r\n <span class=\"font-bold\">:</span>\r\n <input\r\n class=\"form-field__input time\"\r\n [id]=\"minutesTo\"\r\n [(ngModel)]=\"minutesTo\"\r\n appDigitsOnly\r\n appNumberBorder\r\n [digitsOnly]=\"true\"\r\n [maxValue]=\"maxValueMinutesSeconds\"\r\n />\r\n </div>\r\n </div>\r\n </div>\r\n <ecabs-date-picker-actions [applyLabel]=\"applyLabel ?? translationConfig?.applyLabel\"\r\n [cancelLabel]=\"cancelLabel ?? translationConfig?.cancelLabel\"\r\n (apply)=\"onApply()\">\r\n </ecabs-date-picker-actions>\r\n </div>\r\n </mat-datepicker-actions>\r\n </mat-datepicker>\r\n <input\r\n class=\"form-field__input w-full date-input\"\r\n [id]=\"name\"\r\n [(ngModel)]=\"pickerValue\"\r\n [placeholder]=\"placeholder\"\r\n [disabled]=\"disabled || controlDate?.disabled\"\r\n appTime\r\n [all]=\"allLabel\"\r\n [timeRange]=\"true\"\r\n (blur)=\"onTouch()\"\r\n (blur)=\"blurChange($event)\"\r\n (keyup)=\"blurChange($event)\"\r\n (keydown)=\"keydownChange($event)\"\r\n />\r\n <button type=\"button\" class=\"text-gray-500 -translate-x-9\" (click)=\"picker.open()\">\r\n <mat-icon>access_time</mat-icon>\r\n </button>\r\n </div>\r\n</ecabs-element-wrapper>\r\n", styles: [".time--inputs:after{position:absolute;content:\"\"}.time{width:3.375rem}.fake-input{visibility:hidden;width:0;padding:0}.time--inputs{position:relative;margin-bottom:2.4rem}.time--inputs:after{height:1px;right:0;left:0;background-color:var(--color-gray-300);bottom:-1.6rem}:host ::ng-deep .form-field{margin-right:-1.25rem;margin-left:-.125rem}\n"], dependencies: [{ kind: "component", type: EcabsElementWrapperComponent, selector: "ecabs-element-wrapper", inputs: ["data", "showCloseIcon", "focusedFlag", "showPassword", "control"], outputs: ["showHidePassword", "clear", "increase", "decrease"] }, { kind: "component", type: i5.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i5$2.MatDatepicker, selector: "mat-datepicker", exportAs: ["matDatepicker"] }, { kind: "directive", type: i5$2.MatDatepickerInput, selector: "input[matDatepicker]", inputs: ["matDatepicker", "min", "max", "matDatepickerFilter"], exportAs: ["matDatepickerInput"] }, { kind: "component", type: i5$2.MatDatepickerActions, selector: "mat-datepicker-actions, mat-date-range-picker-actions" }, { kind: "directive", type: i5$1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i5$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i5$1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: DigitsOnlyDirective, selector: "[appDigitsOnly]", inputs: ["digitsOnly", "allowHyphen", "decimal", "decimalSeparator", "unit"] }, { kind: "directive", type: NumberBorderDirective, selector: "[appNumberBorder]", inputs: ["maxValue", "minValue"] }, { kind: "component", type: EcabsDatePickerActionsComponent, selector: "ecabs-date-picker-actions", inputs: ["cancelLabel", "applyLabel"], outputs: ["apply"] }, { kind: "directive", type: MaskTimeDirective, selector: "[appTime]", inputs: ["timeRange", "all"] }] });
3363
+ ], usesInheritance: true, ngImport: i0, template: "<ecabs-element-wrapper [data]=\"getData()\">\r\n <div class=\"form-field__input--wrapper w-full\">\r\n <input\r\n class=\"fake-input\"\r\n [id]=\"_date\"\r\n [(ngModel)]=\"_date\"\r\n [placeholder]=\"placeholder\"\r\n [disabled]=\"disabled || controlDate?.disabled\"\r\n [matDatepicker]=\"picker\"\r\n (blur)=\"onTouch()\"\r\n />\r\n <mat-datepicker\r\n (opened)=\"opened()\"\r\n #picker\r\n [calendarHeaderComponent]=\"header\"\r\n [touchUi]=\"touchUi\"\r\n >\r\n <mat-datepicker-actions>\r\n <div class=\"flex flex-col w-full gap-y-4\">\r\n <div class=\"flex gap-2 justify-center items-center\">\r\n <div class=\"flex flex-col justify-center\">\r\n <div class=\"text-center\">{{ from ?? translationConfig?.from }}</div>\r\n <div class=\"flex gap-2 justify-center items-center\">\r\n <input\r\n class=\"block form-field__input time\"\r\n ecabsDigitsOnly\r\n ecabsNumberBorder\r\n [digitsOnly]=\"true\"\r\n [id]=\"hoursFrom\"\r\n [maxValue]=\"maxValueHours\"\r\n [(ngModel)]=\"hoursFrom\"\r\n />\r\n\r\n <span class=\"font-bold\">:</span>\r\n <input\r\n class=\"form-field__input time\"\r\n [id]=\"minutesFrom\"\r\n [(ngModel)]=\"minutesFrom\"\r\n ecabsDigitsOnly\r\n ecabsNumberBorder\r\n [digitsOnly]=\"true\"\r\n [maxValue]=\"maxValueMinutesSeconds\"\r\n />\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"time--inputs\"></div>\r\n <div class=\"flex gap-2 justify-center items-center mb-5\">\r\n <div class=\"flex flex-col justify-center\">\r\n <div class=\"text-center\">{{ to ?? translationConfig?.to }}</div>\r\n <div class=\"flex gap-2 justify-center items-center\">\r\n <input\r\n class=\"form-field__input time\"\r\n ecabsDigitsOnly\r\n ecabsNumberBorder\r\n [digitsOnly]=\"true\"\r\n [id]=\"hoursTo\"\r\n [maxValue]=\"maxValueHours\"\r\n [(ngModel)]=\"hoursTo\"\r\n />\r\n <span class=\"font-bold\">:</span>\r\n <input\r\n class=\"form-field__input time\"\r\n [id]=\"minutesTo\"\r\n [(ngModel)]=\"minutesTo\"\r\n ecabsDigitsOnly\r\n ecabsNumberBorder\r\n [digitsOnly]=\"true\"\r\n [maxValue]=\"maxValueMinutesSeconds\"\r\n />\r\n </div>\r\n </div>\r\n </div>\r\n <ecabs-date-picker-actions [applyLabel]=\"applyLabel ?? translationConfig?.applyLabel\"\r\n [cancelLabel]=\"cancelLabel ?? translationConfig?.cancelLabel\"\r\n (apply)=\"onApply()\">\r\n </ecabs-date-picker-actions>\r\n </div>\r\n </mat-datepicker-actions>\r\n </mat-datepicker>\r\n <input\r\n class=\"form-field__input w-full date-input\"\r\n [id]=\"name\"\r\n [(ngModel)]=\"pickerValue\"\r\n [placeholder]=\"placeholder\"\r\n [disabled]=\"disabled || controlDate?.disabled\"\r\n ecabsTime\r\n [all]=\"allLabel\"\r\n [timeRange]=\"true\"\r\n (blur)=\"onTouch()\"\r\n (blur)=\"blurChange($event)\"\r\n (keyup)=\"blurChange($event)\"\r\n (keydown)=\"keydownChange($event)\"\r\n />\r\n <button type=\"button\" class=\"text-gray-500 -translate-x-9\" (click)=\"picker.open()\">\r\n <mat-icon>access_time</mat-icon>\r\n </button>\r\n </div>\r\n</ecabs-element-wrapper>\r\n", styles: [".time--inputs:after{position:absolute;content:\"\"}.time{width:3.375rem}.fake-input{visibility:hidden;width:0;padding:0}.time--inputs{position:relative;margin-bottom:2.4rem}.time--inputs:after{height:1px;right:0;left:0;background-color:var(--color-gray-300);bottom:-1.6rem}:host ::ng-deep .form-field{margin-right:-1.25rem;margin-left:-.125rem}\n"], dependencies: [{ kind: "component", type: EcabsElementWrapperComponent, selector: "ecabs-element-wrapper", inputs: ["data", "showCloseIcon", "focusedFlag", "showPassword", "control"], outputs: ["showHidePassword", "clear", "increase", "decrease"] }, { kind: "component", type: i5.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i5$2.MatDatepicker, selector: "mat-datepicker", exportAs: ["matDatepicker"] }, { kind: "directive", type: i5$2.MatDatepickerInput, selector: "input[matDatepicker]", inputs: ["matDatepicker", "min", "max", "matDatepickerFilter"], exportAs: ["matDatepickerInput"] }, { kind: "component", type: i5$2.MatDatepickerActions, selector: "mat-datepicker-actions, mat-date-range-picker-actions" }, { kind: "directive", type: i5$1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i5$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i5$1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: EcabsDigitsOnlyDirective, selector: "[ecabsDigitsOnly]", inputs: ["digitsOnly", "allowHyphen", "decimal", "decimalSeparator", "unit"] }, { kind: "directive", type: EcabsNumberBorderDirective, selector: "[ecabsNumberBorder]", inputs: ["maxValue", "minValue"] }, { kind: "component", type: EcabsDatePickerActionsComponent, selector: "ecabs-date-picker-actions", inputs: ["cancelLabel", "applyLabel"], outputs: ["apply"] }, { kind: "directive", type: EcabsMaskTimeDirective, selector: "[ecabsTime]", inputs: ["timeRange", "all"] }] });
3351
3364
  }
3352
3365
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EcabsDateTimeRangePickerComponent, decorators: [{
3353
3366
  type: Component,
@@ -3359,7 +3372,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
3359
3372
  },
3360
3373
  DecimalPipe,
3361
3374
  UnsubscribeService,
3362
- ], template: "<ecabs-element-wrapper [data]=\"getData()\">\r\n <div class=\"form-field__input--wrapper w-full\">\r\n <input\r\n class=\"fake-input\"\r\n [id]=\"_date\"\r\n [(ngModel)]=\"_date\"\r\n [placeholder]=\"placeholder\"\r\n [disabled]=\"disabled || controlDate?.disabled\"\r\n [matDatepicker]=\"picker\"\r\n (blur)=\"onTouch()\"\r\n />\r\n <mat-datepicker\r\n (opened)=\"opened()\"\r\n #picker\r\n [calendarHeaderComponent]=\"header\"\r\n [touchUi]=\"touchUi\"\r\n >\r\n <mat-datepicker-actions>\r\n <div class=\"flex flex-col w-full gap-y-4\">\r\n <div class=\"flex gap-2 justify-center items-center\">\r\n <div class=\"flex flex-col justify-center\">\r\n <div class=\"text-center\">{{ from ?? translationConfig?.from }}</div>\r\n <div class=\"flex gap-2 justify-center items-center\">\r\n <input\r\n class=\"block form-field__input time\"\r\n appDigitsOnly\r\n appNumberBorder\r\n [digitsOnly]=\"true\"\r\n [id]=\"hoursFrom\"\r\n [maxValue]=\"maxValueHours\"\r\n [(ngModel)]=\"hoursFrom\"\r\n />\r\n\r\n <span class=\"font-bold\">:</span>\r\n <input\r\n class=\"form-field__input time\"\r\n [id]=\"minutesFrom\"\r\n [(ngModel)]=\"minutesFrom\"\r\n appDigitsOnly\r\n appNumberBorder\r\n [digitsOnly]=\"true\"\r\n [maxValue]=\"maxValueMinutesSeconds\"\r\n />\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"time--inputs\"></div>\r\n <div class=\"flex gap-2 justify-center items-center mb-5\">\r\n <div class=\"flex flex-col justify-center\">\r\n <div class=\"text-center\">{{ to ?? translationConfig?.to }}</div>\r\n <div class=\"flex gap-2 justify-center items-center\">\r\n <input\r\n class=\"form-field__input time\"\r\n appDigitsOnly\r\n appNumberBorder\r\n [digitsOnly]=\"true\"\r\n [id]=\"hoursTo\"\r\n [maxValue]=\"maxValueHours\"\r\n [(ngModel)]=\"hoursTo\"\r\n />\r\n <span class=\"font-bold\">:</span>\r\n <input\r\n class=\"form-field__input time\"\r\n [id]=\"minutesTo\"\r\n [(ngModel)]=\"minutesTo\"\r\n appDigitsOnly\r\n appNumberBorder\r\n [digitsOnly]=\"true\"\r\n [maxValue]=\"maxValueMinutesSeconds\"\r\n />\r\n </div>\r\n </div>\r\n </div>\r\n <ecabs-date-picker-actions [applyLabel]=\"applyLabel ?? translationConfig?.applyLabel\"\r\n [cancelLabel]=\"cancelLabel ?? translationConfig?.cancelLabel\"\r\n (apply)=\"onApply()\">\r\n </ecabs-date-picker-actions>\r\n </div>\r\n </mat-datepicker-actions>\r\n </mat-datepicker>\r\n <input\r\n class=\"form-field__input w-full date-input\"\r\n [id]=\"name\"\r\n [(ngModel)]=\"pickerValue\"\r\n [placeholder]=\"placeholder\"\r\n [disabled]=\"disabled || controlDate?.disabled\"\r\n appTime\r\n [all]=\"allLabel\"\r\n [timeRange]=\"true\"\r\n (blur)=\"onTouch()\"\r\n (blur)=\"blurChange($event)\"\r\n (keyup)=\"blurChange($event)\"\r\n (keydown)=\"keydownChange($event)\"\r\n />\r\n <button type=\"button\" class=\"text-gray-500 -translate-x-9\" (click)=\"picker.open()\">\r\n <mat-icon>access_time</mat-icon>\r\n </button>\r\n </div>\r\n</ecabs-element-wrapper>\r\n", styles: [".time--inputs:after{position:absolute;content:\"\"}.time{width:3.375rem}.fake-input{visibility:hidden;width:0;padding:0}.time--inputs{position:relative;margin-bottom:2.4rem}.time--inputs:after{height:1px;right:0;left:0;background-color:var(--color-gray-300);bottom:-1.6rem}:host ::ng-deep .form-field{margin-right:-1.25rem;margin-left:-.125rem}\n"] }]
3375
+ ], template: "<ecabs-element-wrapper [data]=\"getData()\">\r\n <div class=\"form-field__input--wrapper w-full\">\r\n <input\r\n class=\"fake-input\"\r\n [id]=\"_date\"\r\n [(ngModel)]=\"_date\"\r\n [placeholder]=\"placeholder\"\r\n [disabled]=\"disabled || controlDate?.disabled\"\r\n [matDatepicker]=\"picker\"\r\n (blur)=\"onTouch()\"\r\n />\r\n <mat-datepicker\r\n (opened)=\"opened()\"\r\n #picker\r\n [calendarHeaderComponent]=\"header\"\r\n [touchUi]=\"touchUi\"\r\n >\r\n <mat-datepicker-actions>\r\n <div class=\"flex flex-col w-full gap-y-4\">\r\n <div class=\"flex gap-2 justify-center items-center\">\r\n <div class=\"flex flex-col justify-center\">\r\n <div class=\"text-center\">{{ from ?? translationConfig?.from }}</div>\r\n <div class=\"flex gap-2 justify-center items-center\">\r\n <input\r\n class=\"block form-field__input time\"\r\n ecabsDigitsOnly\r\n ecabsNumberBorder\r\n [digitsOnly]=\"true\"\r\n [id]=\"hoursFrom\"\r\n [maxValue]=\"maxValueHours\"\r\n [(ngModel)]=\"hoursFrom\"\r\n />\r\n\r\n <span class=\"font-bold\">:</span>\r\n <input\r\n class=\"form-field__input time\"\r\n [id]=\"minutesFrom\"\r\n [(ngModel)]=\"minutesFrom\"\r\n ecabsDigitsOnly\r\n ecabsNumberBorder\r\n [digitsOnly]=\"true\"\r\n [maxValue]=\"maxValueMinutesSeconds\"\r\n />\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"time--inputs\"></div>\r\n <div class=\"flex gap-2 justify-center items-center mb-5\">\r\n <div class=\"flex flex-col justify-center\">\r\n <div class=\"text-center\">{{ to ?? translationConfig?.to }}</div>\r\n <div class=\"flex gap-2 justify-center items-center\">\r\n <input\r\n class=\"form-field__input time\"\r\n ecabsDigitsOnly\r\n ecabsNumberBorder\r\n [digitsOnly]=\"true\"\r\n [id]=\"hoursTo\"\r\n [maxValue]=\"maxValueHours\"\r\n [(ngModel)]=\"hoursTo\"\r\n />\r\n <span class=\"font-bold\">:</span>\r\n <input\r\n class=\"form-field__input time\"\r\n [id]=\"minutesTo\"\r\n [(ngModel)]=\"minutesTo\"\r\n ecabsDigitsOnly\r\n ecabsNumberBorder\r\n [digitsOnly]=\"true\"\r\n [maxValue]=\"maxValueMinutesSeconds\"\r\n />\r\n </div>\r\n </div>\r\n </div>\r\n <ecabs-date-picker-actions [applyLabel]=\"applyLabel ?? translationConfig?.applyLabel\"\r\n [cancelLabel]=\"cancelLabel ?? translationConfig?.cancelLabel\"\r\n (apply)=\"onApply()\">\r\n </ecabs-date-picker-actions>\r\n </div>\r\n </mat-datepicker-actions>\r\n </mat-datepicker>\r\n <input\r\n class=\"form-field__input w-full date-input\"\r\n [id]=\"name\"\r\n [(ngModel)]=\"pickerValue\"\r\n [placeholder]=\"placeholder\"\r\n [disabled]=\"disabled || controlDate?.disabled\"\r\n ecabsTime\r\n [all]=\"allLabel\"\r\n [timeRange]=\"true\"\r\n (blur)=\"onTouch()\"\r\n (blur)=\"blurChange($event)\"\r\n (keyup)=\"blurChange($event)\"\r\n (keydown)=\"keydownChange($event)\"\r\n />\r\n <button type=\"button\" class=\"text-gray-500 -translate-x-9\" (click)=\"picker.open()\">\r\n <mat-icon>access_time</mat-icon>\r\n </button>\r\n </div>\r\n</ecabs-element-wrapper>\r\n", styles: [".time--inputs:after{position:absolute;content:\"\"}.time{width:3.375rem}.fake-input{visibility:hidden;width:0;padding:0}.time--inputs{position:relative;margin-bottom:2.4rem}.time--inputs:after{height:1px;right:0;left:0;background-color:var(--color-gray-300);bottom:-1.6rem}:host ::ng-deep .form-field{margin-right:-1.25rem;margin-left:-.125rem}\n"] }]
3363
3376
  }], ctorParameters: function () { return [{ type: i0.Injector }, { type: i1.DecimalPipe }, { type: EcabsDatePickerHeaderService }, { type: UnsubscribeService }]; }, propDecorators: { touchUi: [{
3364
3377
  type: Input
3365
3378
  }], cancelLabel: [{
@@ -3376,17 +3389,17 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
3376
3389
  type: Output
3377
3390
  }] } });
3378
3391
 
3379
- class MaskTimeDirectiveModule {
3380
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: MaskTimeDirectiveModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
3381
- static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.12", ngImport: i0, type: MaskTimeDirectiveModule, declarations: [MaskTimeDirective], imports: [CommonModule], exports: [MaskTimeDirective] });
3382
- static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: MaskTimeDirectiveModule, imports: [CommonModule] });
3392
+ class EcabsMaskTimeDirectiveModule {
3393
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EcabsMaskTimeDirectiveModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
3394
+ static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.12", ngImport: i0, type: EcabsMaskTimeDirectiveModule, declarations: [EcabsMaskTimeDirective], imports: [CommonModule], exports: [EcabsMaskTimeDirective] });
3395
+ static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EcabsMaskTimeDirectiveModule, imports: [CommonModule] });
3383
3396
  }
3384
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: MaskTimeDirectiveModule, decorators: [{
3397
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EcabsMaskTimeDirectiveModule, decorators: [{
3385
3398
  type: NgModule,
3386
3399
  args: [{
3387
3400
  imports: [CommonModule],
3388
- declarations: [MaskTimeDirective],
3389
- exports: [MaskTimeDirective],
3401
+ declarations: [EcabsMaskTimeDirective],
3402
+ exports: [EcabsMaskTimeDirective],
3390
3403
  }]
3391
3404
  }] });
3392
3405
 
@@ -3402,11 +3415,11 @@ class EcabsDatetimeRangePickerModule {
3402
3415
  ReactiveFormsModule,
3403
3416
  EcabsPickerHeaderModule,
3404
3417
  EcabsButtonsModule,
3405
- DigitsOnlyDirectivesModule,
3406
- NumberBorderDirectiveModule,
3407
- MaskDateDirectiveModule,
3418
+ EcabsDigitsOnlyDirectivesModule,
3419
+ EcabsNumberBorderDirectiveModule,
3420
+ EcabsMaskDateDirectiveModule,
3408
3421
  EcabsDatePickerActionsModule,
3409
- MaskTimeDirectiveModule], exports: [EcabsDateTimeRangePickerComponent,
3422
+ EcabsMaskTimeDirectiveModule], exports: [EcabsDateTimeRangePickerComponent,
3410
3423
  EcabsDateTimeRangePickerHeaderComponent] });
3411
3424
  static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EcabsDatetimeRangePickerModule, imports: [CommonModule,
3412
3425
  ElementWrapperModule,
@@ -3417,11 +3430,11 @@ class EcabsDatetimeRangePickerModule {
3417
3430
  ReactiveFormsModule,
3418
3431
  EcabsPickerHeaderModule,
3419
3432
  EcabsButtonsModule,
3420
- DigitsOnlyDirectivesModule,
3421
- NumberBorderDirectiveModule,
3422
- MaskDateDirectiveModule,
3433
+ EcabsDigitsOnlyDirectivesModule,
3434
+ EcabsNumberBorderDirectiveModule,
3435
+ EcabsMaskDateDirectiveModule,
3423
3436
  EcabsDatePickerActionsModule,
3424
- MaskTimeDirectiveModule] });
3437
+ EcabsMaskTimeDirectiveModule] });
3425
3438
  }
3426
3439
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EcabsDatetimeRangePickerModule, decorators: [{
3427
3440
  type: NgModule,
@@ -3440,11 +3453,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
3440
3453
  ReactiveFormsModule,
3441
3454
  EcabsPickerHeaderModule,
3442
3455
  EcabsButtonsModule,
3443
- DigitsOnlyDirectivesModule,
3444
- NumberBorderDirectiveModule,
3445
- MaskDateDirectiveModule,
3456
+ EcabsDigitsOnlyDirectivesModule,
3457
+ EcabsNumberBorderDirectiveModule,
3458
+ EcabsMaskDateDirectiveModule,
3446
3459
  EcabsDatePickerActionsModule,
3447
- MaskTimeDirectiveModule,
3460
+ EcabsMaskTimeDirectiveModule,
3448
3461
  ],
3449
3462
  exports: [
3450
3463
  EcabsDateTimeRangePickerComponent,
@@ -3507,7 +3520,7 @@ class EcabsIncrementComponent extends EcabsElementBaseComponent {
3507
3520
  useExisting: EcabsIncrementComponent,
3508
3521
  multi: true,
3509
3522
  },
3510
- ], usesInheritance: true, ngImport: i0, template: "<ecabs-element-wrapper [data]=\"getData()\">\r\n <div class=\"form-field__input--wrapper\">\r\n <input appDigitsOnly [digitsOnly]=\"digitsOnly\" [decimal]=\"allowDecimal\" [allowHyphen]=\"allowHyphen\"\r\n class=\"form-field__input\"\r\n [type]=\"type\"\r\n [id]=\"name\"\r\n [(ngModel)]=\"value\"\r\n [placeholder]=\"placeholder\"\r\n (blur)=\"onTouch()\"\r\n [disabled]=\"disabled\"\r\n [maxlength]=\"maxLength\"/>\r\n\r\n <div class=\"incrementor\">\r\n <mat-icon (click)=\"increment()\">add</mat-icon>\r\n <mat-icon (click)=\"decrement()\">remove</mat-icon>\r\n </div>\r\n </div>\r\n</ecabs-element-wrapper>\r\n", styles: [":root{--color-black: #07080d;--color-white: #ffffff;--color-white-opacity-05: rgba(0, 0, 0, .05);--color-gray-100: #f5f6f9;--color-gray-200: #f8f9f9;--color-gray-300: #d9d9d9;--color-gray-400: #a6a6a6;--color-gray-500: #6b6d73;--color-brand-dark: #193273;--color-brand-dark-rgb: 25, 50, 115;--color-brand-light: #325FDA;--color-brand-light2: #e7efff;--color-brand-light-rgb: 50, 95, 218;--color-brand-300: #e7efff;--color-brand-300-rgb: 231, 239, 255;--color-error: #df3838;--color-error-opacity: #fbe4e4;--color-error-rgb: 223, 56, 56;--color-notification: #f4d04f;--color-notification-rgb: 244, 208, 79;--color-warn: #f2994a;--color-warn-rgb: 242, 153, 74;--color-info: #325fda;--color-info-rgb: 50, 95, 218;--color-warning: #f2994a;--color-warning-opacity: #fdf0e4;--color-success: #25bd3d;--color-success--opacity: #e8f8e5;--color-success-rgb: 37, 189, 61;--color-allocation-started: #E8F8E5;--color-allocation-scheduled: #FDF0E4;--color-allocation-ended: #FBE4E4;--color-allocation-sick: #E7EFFF;--color-allocation-no-show: #EAE5FF;--color-allocation-unavailable: #F2F2F2;--cropper-outline-color: rgba(0, 0, 0, .5)}:host::ng-deep .incrementor{border-left:1px solid var(--color-gray-300);position:absolute;display:flex;flex-direction:column;top:1px;bottom:1px;right:1px}:host::ng-deep .incrementor .mat-icon{font-size:20px;font-size:1.25rem;margin-right:0;line-height:20px;cursor:pointer;text-align:center;flex:1}:host::ng-deep .incrementor .mat-icon:first-of-type{border-bottom:1px solid var(--color-gray-300)}:host::ng-deep .incrementor .mat-icon:hover{color:var(--color-brand-dark)}:host::ng-deep .form-field>div{line-height:1}\n"], dependencies: [{ kind: "component", type: i5.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: EcabsElementWrapperComponent, selector: "ecabs-element-wrapper", inputs: ["data", "showCloseIcon", "focusedFlag", "showPassword", "control"], outputs: ["showHidePassword", "clear", "increase", "decrease"] }, { kind: "directive", type: i5$1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i5$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i5$1.MaxLengthValidator, selector: "[maxlength][formControlName],[maxlength][formControl],[maxlength][ngModel]", inputs: ["maxlength"] }, { kind: "directive", type: i5$1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: DigitsOnlyDirective, selector: "[appDigitsOnly]", inputs: ["digitsOnly", "allowHyphen", "decimal", "decimalSeparator", "unit"] }] });
3523
+ ], usesInheritance: true, ngImport: i0, template: "<ecabs-element-wrapper [data]=\"getData()\">\r\n <div class=\"form-field__input--wrapper\">\r\n <input ecabsDigitsOnly [digitsOnly]=\"digitsOnly\" [decimal]=\"allowDecimal\" [allowHyphen]=\"allowHyphen\"\r\n class=\"form-field__input\"\r\n [type]=\"type\"\r\n [id]=\"name\"\r\n [(ngModel)]=\"value\"\r\n [placeholder]=\"placeholder\"\r\n (blur)=\"onTouch()\"\r\n [disabled]=\"disabled\"\r\n [maxlength]=\"maxLength\"/>\r\n\r\n <div class=\"incrementor\">\r\n <mat-icon (click)=\"increment()\">add</mat-icon>\r\n <mat-icon (click)=\"decrement()\">remove</mat-icon>\r\n </div>\r\n </div>\r\n</ecabs-element-wrapper>\r\n", styles: [":root{--color-black: #07080d;--color-white: #ffffff;--color-white-opacity-05: rgba(0, 0, 0, .05);--color-gray-100: #f5f6f9;--color-gray-200: #f8f9f9;--color-gray-300: #d9d9d9;--color-gray-400: #a6a6a6;--color-gray-500: #6b6d73;--color-brand-dark: #193273;--color-brand-dark-rgb: 25, 50, 115;--color-brand-light: #325FDA;--color-brand-light2: #e7efff;--color-brand-light-rgb: 50, 95, 218;--color-brand-300: #e7efff;--color-brand-300-rgb: 231, 239, 255;--color-error: #df3838;--color-error-opacity: #fbe4e4;--color-error-rgb: 223, 56, 56;--color-notification: #f4d04f;--color-notification-rgb: 244, 208, 79;--color-warn: #f2994a;--color-warn-rgb: 242, 153, 74;--color-info: #325fda;--color-info-rgb: 50, 95, 218;--color-warning: #f2994a;--color-warning-opacity: #fdf0e4;--color-success: #25bd3d;--color-success--opacity: #e8f8e5;--color-success-rgb: 37, 189, 61;--color-allocation-started: #E8F8E5;--color-allocation-scheduled: #FDF0E4;--color-allocation-ended: #FBE4E4;--color-allocation-sick: #E7EFFF;--color-allocation-no-show: #EAE5FF;--color-allocation-unavailable: #F2F2F2;--cropper-outline-color: rgba(0, 0, 0, .5)}:host::ng-deep .incrementor{border-left:1px solid var(--color-gray-300);position:absolute;display:flex;flex-direction:column;top:1px;bottom:1px;right:1px}:host::ng-deep .incrementor .mat-icon{font-size:20px;font-size:1.25rem;margin-right:0;line-height:20px;cursor:pointer;text-align:center;flex:1}:host::ng-deep .incrementor .mat-icon:first-of-type{border-bottom:1px solid var(--color-gray-300)}:host::ng-deep .incrementor .mat-icon:hover{color:var(--color-brand-dark)}:host::ng-deep .form-field>div{line-height:1}\n"], dependencies: [{ kind: "component", type: i5.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: EcabsElementWrapperComponent, selector: "ecabs-element-wrapper", inputs: ["data", "showCloseIcon", "focusedFlag", "showPassword", "control"], outputs: ["showHidePassword", "clear", "increase", "decrease"] }, { kind: "directive", type: i5$1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i5$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i5$1.MaxLengthValidator, selector: "[maxlength][formControlName],[maxlength][formControl],[maxlength][ngModel]", inputs: ["maxlength"] }, { kind: "directive", type: i5$1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: EcabsDigitsOnlyDirective, selector: "[ecabsDigitsOnly]", inputs: ["digitsOnly", "allowHyphen", "decimal", "decimalSeparator", "unit"] }] });
3511
3524
  }
3512
3525
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EcabsIncrementComponent, decorators: [{
3513
3526
  type: Component,
@@ -3517,7 +3530,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
3517
3530
  useExisting: EcabsIncrementComponent,
3518
3531
  multi: true,
3519
3532
  },
3520
- ], template: "<ecabs-element-wrapper [data]=\"getData()\">\r\n <div class=\"form-field__input--wrapper\">\r\n <input appDigitsOnly [digitsOnly]=\"digitsOnly\" [decimal]=\"allowDecimal\" [allowHyphen]=\"allowHyphen\"\r\n class=\"form-field__input\"\r\n [type]=\"type\"\r\n [id]=\"name\"\r\n [(ngModel)]=\"value\"\r\n [placeholder]=\"placeholder\"\r\n (blur)=\"onTouch()\"\r\n [disabled]=\"disabled\"\r\n [maxlength]=\"maxLength\"/>\r\n\r\n <div class=\"incrementor\">\r\n <mat-icon (click)=\"increment()\">add</mat-icon>\r\n <mat-icon (click)=\"decrement()\">remove</mat-icon>\r\n </div>\r\n </div>\r\n</ecabs-element-wrapper>\r\n", styles: [":root{--color-black: #07080d;--color-white: #ffffff;--color-white-opacity-05: rgba(0, 0, 0, .05);--color-gray-100: #f5f6f9;--color-gray-200: #f8f9f9;--color-gray-300: #d9d9d9;--color-gray-400: #a6a6a6;--color-gray-500: #6b6d73;--color-brand-dark: #193273;--color-brand-dark-rgb: 25, 50, 115;--color-brand-light: #325FDA;--color-brand-light2: #e7efff;--color-brand-light-rgb: 50, 95, 218;--color-brand-300: #e7efff;--color-brand-300-rgb: 231, 239, 255;--color-error: #df3838;--color-error-opacity: #fbe4e4;--color-error-rgb: 223, 56, 56;--color-notification: #f4d04f;--color-notification-rgb: 244, 208, 79;--color-warn: #f2994a;--color-warn-rgb: 242, 153, 74;--color-info: #325fda;--color-info-rgb: 50, 95, 218;--color-warning: #f2994a;--color-warning-opacity: #fdf0e4;--color-success: #25bd3d;--color-success--opacity: #e8f8e5;--color-success-rgb: 37, 189, 61;--color-allocation-started: #E8F8E5;--color-allocation-scheduled: #FDF0E4;--color-allocation-ended: #FBE4E4;--color-allocation-sick: #E7EFFF;--color-allocation-no-show: #EAE5FF;--color-allocation-unavailable: #F2F2F2;--cropper-outline-color: rgba(0, 0, 0, .5)}:host::ng-deep .incrementor{border-left:1px solid var(--color-gray-300);position:absolute;display:flex;flex-direction:column;top:1px;bottom:1px;right:1px}:host::ng-deep .incrementor .mat-icon{font-size:20px;font-size:1.25rem;margin-right:0;line-height:20px;cursor:pointer;text-align:center;flex:1}:host::ng-deep .incrementor .mat-icon:first-of-type{border-bottom:1px solid var(--color-gray-300)}:host::ng-deep .incrementor .mat-icon:hover{color:var(--color-brand-dark)}:host::ng-deep .form-field>div{line-height:1}\n"] }]
3533
+ ], template: "<ecabs-element-wrapper [data]=\"getData()\">\r\n <div class=\"form-field__input--wrapper\">\r\n <input ecabsDigitsOnly [digitsOnly]=\"digitsOnly\" [decimal]=\"allowDecimal\" [allowHyphen]=\"allowHyphen\"\r\n class=\"form-field__input\"\r\n [type]=\"type\"\r\n [id]=\"name\"\r\n [(ngModel)]=\"value\"\r\n [placeholder]=\"placeholder\"\r\n (blur)=\"onTouch()\"\r\n [disabled]=\"disabled\"\r\n [maxlength]=\"maxLength\"/>\r\n\r\n <div class=\"incrementor\">\r\n <mat-icon (click)=\"increment()\">add</mat-icon>\r\n <mat-icon (click)=\"decrement()\">remove</mat-icon>\r\n </div>\r\n </div>\r\n</ecabs-element-wrapper>\r\n", styles: [":root{--color-black: #07080d;--color-white: #ffffff;--color-white-opacity-05: rgba(0, 0, 0, .05);--color-gray-100: #f5f6f9;--color-gray-200: #f8f9f9;--color-gray-300: #d9d9d9;--color-gray-400: #a6a6a6;--color-gray-500: #6b6d73;--color-brand-dark: #193273;--color-brand-dark-rgb: 25, 50, 115;--color-brand-light: #325FDA;--color-brand-light2: #e7efff;--color-brand-light-rgb: 50, 95, 218;--color-brand-300: #e7efff;--color-brand-300-rgb: 231, 239, 255;--color-error: #df3838;--color-error-opacity: #fbe4e4;--color-error-rgb: 223, 56, 56;--color-notification: #f4d04f;--color-notification-rgb: 244, 208, 79;--color-warn: #f2994a;--color-warn-rgb: 242, 153, 74;--color-info: #325fda;--color-info-rgb: 50, 95, 218;--color-warning: #f2994a;--color-warning-opacity: #fdf0e4;--color-success: #25bd3d;--color-success--opacity: #e8f8e5;--color-success-rgb: 37, 189, 61;--color-allocation-started: #E8F8E5;--color-allocation-scheduled: #FDF0E4;--color-allocation-ended: #FBE4E4;--color-allocation-sick: #E7EFFF;--color-allocation-no-show: #EAE5FF;--color-allocation-unavailable: #F2F2F2;--cropper-outline-color: rgba(0, 0, 0, .5)}:host::ng-deep .incrementor{border-left:1px solid var(--color-gray-300);position:absolute;display:flex;flex-direction:column;top:1px;bottom:1px;right:1px}:host::ng-deep .incrementor .mat-icon{font-size:20px;font-size:1.25rem;margin-right:0;line-height:20px;cursor:pointer;text-align:center;flex:1}:host::ng-deep .incrementor .mat-icon:first-of-type{border-bottom:1px solid var(--color-gray-300)}:host::ng-deep .incrementor .mat-icon:hover{color:var(--color-brand-dark)}:host::ng-deep .form-field>div{line-height:1}\n"] }]
3521
3534
  }], ctorParameters: function () { return [{ type: i0.Injector }]; }, propDecorators: { digitsOnly: [{
3522
3535
  type: Input
3523
3536
  }], allowDecimal: [{
@@ -3535,13 +3548,13 @@ class EcabsIncrementModule {
3535
3548
  MatIconModule,
3536
3549
  ElementWrapperModule,
3537
3550
  FormsModule,
3538
- DigitsOnlyDirectivesModule], exports: [EcabsIncrementComponent] });
3551
+ EcabsDigitsOnlyDirectivesModule], exports: [EcabsIncrementComponent] });
3539
3552
  static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EcabsIncrementModule, imports: [CommonModule,
3540
3553
  MatInputModule,
3541
3554
  MatIconModule,
3542
3555
  ElementWrapperModule,
3543
3556
  FormsModule,
3544
- DigitsOnlyDirectivesModule] });
3557
+ EcabsDigitsOnlyDirectivesModule] });
3545
3558
  }
3546
3559
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EcabsIncrementModule, decorators: [{
3547
3560
  type: NgModule,
@@ -3553,7 +3566,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
3553
3566
  MatIconModule,
3554
3567
  ElementWrapperModule,
3555
3568
  FormsModule,
3556
- DigitsOnlyDirectivesModule,
3569
+ EcabsDigitsOnlyDirectivesModule,
3557
3570
  ],
3558
3571
  exports: [EcabsIncrementComponent],
3559
3572
  }]
@@ -4238,7 +4251,7 @@ class EcabsTimepickerComponent extends EcabsElementBaseComponent {
4238
4251
  useExisting: EcabsTimepickerComponent,
4239
4252
  multi: true,
4240
4253
  },
4241
- ], usesInheritance: true, ngImport: i0, template: "<div [ngClass]=\"{ disabled: disabled }\">\r\n <ecabs-element-wrapper\r\n [data]=\"getData()\"\r\n [showCloseIcon]=\"showCloseIcon\"\r\n [focusedFlag]=\"focusedFlag\"\r\n (clear)=\"clearInput()\"\r\n >\r\n <div class=\"relative inline-block w-full timeInputFieldWrapper\">\r\n <input\r\n type=\"text\"\r\n class=\"form-field__input\"\r\n [value]=\"data\"\r\n [ngModel]=\"data\"\r\n (ngModelChange)=\"updateInputData($event)\"\r\n [disabled]=\"disabled\"\r\n appTime\r\n [all]=\"allLabel\"\r\n (focus)=\"show()\"\r\n (click)=\"show()\"\r\n (keydown)=\"inputKeyDown($event)\"\r\n [placeholder]=\"placeholder\"\r\n />\r\n <div class=\"form-field__input--suffix\" *ngIf=\"type !== 'number'\">\r\n <ng-content select=\"mat-icon\"></ng-content>\r\n </div>\r\n <ecabs-time-list-panel\r\n [typedValue]=\"data\"\r\n *ngIf=\"focusedFlag\"\r\n [showDayStart]=\"showDayStart\"\r\n [dayStartLabel]=\"dayStartLabel\"\r\n [dayEndLabel]=\"dayEndLabel\"\r\n [showDayEnd]=\"showDayEnd\"\r\n [min]=\"min\"\r\n [max]=\"max\"\r\n class=\"form-time-list absolute inline-block\"\r\n [appendTo]=\"appendTo\"\r\n [listPosition]=\"listPosition\"\r\n (closeMe)=\"close($event)\"\r\n ></ecabs-time-list-panel>\r\n </div>\r\n </ecabs-element-wrapper>\r\n</div>\r\n", styles: [":host::ng-deep .timeInputWrapper ecabs-element-wrapper .form-field{margin-bottom:0}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: EcabsElementWrapperComponent, selector: "ecabs-element-wrapper", inputs: ["data", "showCloseIcon", "focusedFlag", "showPassword", "control"], outputs: ["showHidePassword", "clear", "increase", "decrease"] }, { kind: "directive", type: MaskTimeDirective, selector: "[appTime]", inputs: ["timeRange", "all"] }, { kind: "directive", type: i5$1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i5$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i5$1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: EcabsTimeListPanelComponent, selector: "ecabs-time-list-panel", inputs: ["typedValue", "listPlacement", "listPosition", "dayStartLabel", "dayEndLabel", "appendTo", "min", "max", "showDayStart", "showDayEnd", "position"], outputs: ["onscroll", "closeMe"] }] });
4254
+ ], usesInheritance: true, ngImport: i0, template: "<div [ngClass]=\"{ disabled: disabled }\">\r\n <ecabs-element-wrapper\r\n [data]=\"getData()\"\r\n [showCloseIcon]=\"showCloseIcon\"\r\n [focusedFlag]=\"focusedFlag\"\r\n (clear)=\"clearInput()\"\r\n >\r\n <div class=\"relative inline-block w-full timeInputFieldWrapper\">\r\n <input\r\n type=\"text\"\r\n class=\"form-field__input\"\r\n [value]=\"data\"\r\n [ngModel]=\"data\"\r\n (ngModelChange)=\"updateInputData($event)\"\r\n [disabled]=\"disabled\"\r\n ecabsTime\r\n [all]=\"allLabel\"\r\n (focus)=\"show()\"\r\n (click)=\"show()\"\r\n (keydown)=\"inputKeyDown($event)\"\r\n [placeholder]=\"placeholder\"\r\n />\r\n <div class=\"form-field__input--suffix\" *ngIf=\"type !== 'number'\">\r\n <ng-content select=\"mat-icon\"></ng-content>\r\n </div>\r\n <ecabs-time-list-panel\r\n [typedValue]=\"data\"\r\n *ngIf=\"focusedFlag\"\r\n [showDayStart]=\"showDayStart\"\r\n [dayStartLabel]=\"dayStartLabel\"\r\n [dayEndLabel]=\"dayEndLabel\"\r\n [showDayEnd]=\"showDayEnd\"\r\n [min]=\"min\"\r\n [max]=\"max\"\r\n class=\"form-time-list absolute inline-block\"\r\n [appendTo]=\"appendTo\"\r\n [listPosition]=\"listPosition\"\r\n (closeMe)=\"close($event)\"\r\n ></ecabs-time-list-panel>\r\n </div>\r\n </ecabs-element-wrapper>\r\n</div>\r\n", styles: [":host::ng-deep .timeInputWrapper ecabs-element-wrapper .form-field{margin-bottom:0}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: EcabsElementWrapperComponent, selector: "ecabs-element-wrapper", inputs: ["data", "showCloseIcon", "focusedFlag", "showPassword", "control"], outputs: ["showHidePassword", "clear", "increase", "decrease"] }, { kind: "directive", type: EcabsMaskTimeDirective, selector: "[ecabsTime]", inputs: ["timeRange", "all"] }, { kind: "directive", type: i5$1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i5$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i5$1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: EcabsTimeListPanelComponent, selector: "ecabs-time-list-panel", inputs: ["typedValue", "listPlacement", "listPosition", "dayStartLabel", "dayEndLabel", "appendTo", "min", "max", "showDayStart", "showDayEnd", "position"], outputs: ["onscroll", "closeMe"] }] });
4242
4255
  }
4243
4256
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EcabsTimepickerComponent, decorators: [{
4244
4257
  type: Component,
@@ -4248,7 +4261,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
4248
4261
  useExisting: EcabsTimepickerComponent,
4249
4262
  multi: true,
4250
4263
  },
4251
- ], template: "<div [ngClass]=\"{ disabled: disabled }\">\r\n <ecabs-element-wrapper\r\n [data]=\"getData()\"\r\n [showCloseIcon]=\"showCloseIcon\"\r\n [focusedFlag]=\"focusedFlag\"\r\n (clear)=\"clearInput()\"\r\n >\r\n <div class=\"relative inline-block w-full timeInputFieldWrapper\">\r\n <input\r\n type=\"text\"\r\n class=\"form-field__input\"\r\n [value]=\"data\"\r\n [ngModel]=\"data\"\r\n (ngModelChange)=\"updateInputData($event)\"\r\n [disabled]=\"disabled\"\r\n appTime\r\n [all]=\"allLabel\"\r\n (focus)=\"show()\"\r\n (click)=\"show()\"\r\n (keydown)=\"inputKeyDown($event)\"\r\n [placeholder]=\"placeholder\"\r\n />\r\n <div class=\"form-field__input--suffix\" *ngIf=\"type !== 'number'\">\r\n <ng-content select=\"mat-icon\"></ng-content>\r\n </div>\r\n <ecabs-time-list-panel\r\n [typedValue]=\"data\"\r\n *ngIf=\"focusedFlag\"\r\n [showDayStart]=\"showDayStart\"\r\n [dayStartLabel]=\"dayStartLabel\"\r\n [dayEndLabel]=\"dayEndLabel\"\r\n [showDayEnd]=\"showDayEnd\"\r\n [min]=\"min\"\r\n [max]=\"max\"\r\n class=\"form-time-list absolute inline-block\"\r\n [appendTo]=\"appendTo\"\r\n [listPosition]=\"listPosition\"\r\n (closeMe)=\"close($event)\"\r\n ></ecabs-time-list-panel>\r\n </div>\r\n </ecabs-element-wrapper>\r\n</div>\r\n", styles: [":host::ng-deep .timeInputWrapper ecabs-element-wrapper .form-field{margin-bottom:0}\n"] }]
4264
+ ], template: "<div [ngClass]=\"{ disabled: disabled }\">\r\n <ecabs-element-wrapper\r\n [data]=\"getData()\"\r\n [showCloseIcon]=\"showCloseIcon\"\r\n [focusedFlag]=\"focusedFlag\"\r\n (clear)=\"clearInput()\"\r\n >\r\n <div class=\"relative inline-block w-full timeInputFieldWrapper\">\r\n <input\r\n type=\"text\"\r\n class=\"form-field__input\"\r\n [value]=\"data\"\r\n [ngModel]=\"data\"\r\n (ngModelChange)=\"updateInputData($event)\"\r\n [disabled]=\"disabled\"\r\n ecabsTime\r\n [all]=\"allLabel\"\r\n (focus)=\"show()\"\r\n (click)=\"show()\"\r\n (keydown)=\"inputKeyDown($event)\"\r\n [placeholder]=\"placeholder\"\r\n />\r\n <div class=\"form-field__input--suffix\" *ngIf=\"type !== 'number'\">\r\n <ng-content select=\"mat-icon\"></ng-content>\r\n </div>\r\n <ecabs-time-list-panel\r\n [typedValue]=\"data\"\r\n *ngIf=\"focusedFlag\"\r\n [showDayStart]=\"showDayStart\"\r\n [dayStartLabel]=\"dayStartLabel\"\r\n [dayEndLabel]=\"dayEndLabel\"\r\n [showDayEnd]=\"showDayEnd\"\r\n [min]=\"min\"\r\n [max]=\"max\"\r\n class=\"form-time-list absolute inline-block\"\r\n [appendTo]=\"appendTo\"\r\n [listPosition]=\"listPosition\"\r\n (closeMe)=\"close($event)\"\r\n ></ecabs-time-list-panel>\r\n </div>\r\n </ecabs-element-wrapper>\r\n</div>\r\n", styles: [":host::ng-deep .timeInputWrapper ecabs-element-wrapper .form-field{margin-bottom:0}\n"] }]
4252
4265
  }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: FormTimePickerService }, { type: i0.Injector }, { type: i0.DestroyRef }]; }, propDecorators: { showCloseIcon: [{
4253
4266
  type: Input
4254
4267
  }], focusedFlag: [{
@@ -4283,11 +4296,11 @@ class EcabsTimepickerModule {
4283
4296
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EcabsTimepickerModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
4284
4297
  static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.12", ngImport: i0, type: EcabsTimepickerModule, declarations: [EcabsTimepickerComponent, EcabsTimeListPanelComponent], imports: [CommonModule,
4285
4298
  ElementWrapperModule,
4286
- MaskTimeDirectiveModule,
4299
+ EcabsMaskTimeDirectiveModule,
4287
4300
  FormsModule], exports: [EcabsTimeListPanelComponent, EcabsTimepickerComponent] });
4288
4301
  static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EcabsTimepickerModule, imports: [CommonModule,
4289
4302
  ElementWrapperModule,
4290
- MaskTimeDirectiveModule,
4303
+ EcabsMaskTimeDirectiveModule,
4291
4304
  FormsModule] });
4292
4305
  }
4293
4306
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EcabsTimepickerModule, decorators: [{
@@ -4297,7 +4310,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
4297
4310
  imports: [
4298
4311
  CommonModule,
4299
4312
  ElementWrapperModule,
4300
- MaskTimeDirectiveModule,
4313
+ EcabsMaskTimeDirectiveModule,
4301
4314
  FormsModule,
4302
4315
  ],
4303
4316
  exports: [EcabsTimeListPanelComponent, EcabsTimepickerComponent],
@@ -4836,7 +4849,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
4836
4849
  }]
4837
4850
  }] });
4838
4851
 
4839
- class DynamicBgColorDirective {
4852
+ class EcabsDynamicBgColorDirective {
4840
4853
  elementRef;
4841
4854
  params;
4842
4855
  saturation = 36;
@@ -4858,10 +4871,10 @@ class DynamicBgColorDirective {
4858
4871
  const h = hash % 360;
4859
4872
  el.nativeElement.style.backgroundColor = `hsl(${h}, ${this.saturation}%, ${this.lightness}%)`;
4860
4873
  }
4861
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DynamicBgColorDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
4862
- static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: DynamicBgColorDirective, selector: "[ecabsDynamicBgColor]", inputs: { params: "params", saturation: "saturation", lightness: "lightness" }, usesOnChanges: true, ngImport: i0 });
4874
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EcabsDynamicBgColorDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
4875
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: EcabsDynamicBgColorDirective, selector: "[ecabsDynamicBgColor]", inputs: { params: "params", saturation: "saturation", lightness: "lightness" }, usesOnChanges: true, ngImport: i0 });
4863
4876
  }
4864
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DynamicBgColorDirective, decorators: [{
4877
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EcabsDynamicBgColorDirective, decorators: [{
4865
4878
  type: Directive,
4866
4879
  args: [{
4867
4880
  selector: '[ecabsDynamicBgColor]',
@@ -4874,17 +4887,17 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
4874
4887
  type: Input
4875
4888
  }] } });
4876
4889
 
4877
- class DynamicBgColorDirectiveModule {
4878
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DynamicBgColorDirectiveModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
4879
- static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.12", ngImport: i0, type: DynamicBgColorDirectiveModule, declarations: [DynamicBgColorDirective], imports: [CommonModule], exports: [DynamicBgColorDirective] });
4880
- static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DynamicBgColorDirectiveModule, imports: [CommonModule] });
4890
+ class EcabsDynamicBgColorDirectiveModule {
4891
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EcabsDynamicBgColorDirectiveModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
4892
+ static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.12", ngImport: i0, type: EcabsDynamicBgColorDirectiveModule, declarations: [EcabsDynamicBgColorDirective], imports: [CommonModule], exports: [EcabsDynamicBgColorDirective] });
4893
+ static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EcabsDynamicBgColorDirectiveModule, imports: [CommonModule] });
4881
4894
  }
4882
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DynamicBgColorDirectiveModule, decorators: [{
4895
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EcabsDynamicBgColorDirectiveModule, decorators: [{
4883
4896
  type: NgModule,
4884
4897
  args: [{
4885
4898
  imports: [CommonModule],
4886
- declarations: [DynamicBgColorDirective],
4887
- exports: [DynamicBgColorDirective],
4899
+ declarations: [EcabsDynamicBgColorDirective],
4900
+ exports: [EcabsDynamicBgColorDirective],
4888
4901
  }]
4889
4902
  }] });
4890
4903
 
@@ -5055,6 +5068,319 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
5055
5068
  }]
5056
5069
  }] });
5057
5070
 
5071
+ class EcabsCheckPermissionsDirective {
5072
+ elementRef;
5073
+ ecabsComponentsService;
5074
+ permissions;
5075
+ noPermissionMessage;
5076
+ constructor(elementRef, ecabsComponentsService) {
5077
+ this.elementRef = elementRef;
5078
+ this.ecabsComponentsService = ecabsComponentsService;
5079
+ }
5080
+ ngOnInit() {
5081
+ if (!this.ecabsComponentsService.hasClaim(this.permissions)) {
5082
+ if (this.noPermissionMessage) {
5083
+ this.elementRef.nativeElement.innerHTML = this.noPermissionMessage;
5084
+ }
5085
+ else {
5086
+ this.elementRef.nativeElement.remove();
5087
+ }
5088
+ }
5089
+ }
5090
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EcabsCheckPermissionsDirective, deps: [{ token: i0.ElementRef }, { token: EcabsComponentsService }], target: i0.ɵɵFactoryTarget.Directive });
5091
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: EcabsCheckPermissionsDirective, selector: "[ecabsCheckPermissions]", inputs: { permissions: "permissions", noPermissionMessage: "noPermissionMessage" }, ngImport: i0 });
5092
+ }
5093
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EcabsCheckPermissionsDirective, decorators: [{
5094
+ type: Directive,
5095
+ args: [{
5096
+ selector: '[ecabsCheckPermissions]',
5097
+ }]
5098
+ }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: EcabsComponentsService }]; }, propDecorators: { permissions: [{
5099
+ type: Input
5100
+ }], noPermissionMessage: [{
5101
+ type: Input
5102
+ }] } });
5103
+
5104
+ class EcabsCheckPermissionDirectiveModule {
5105
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EcabsCheckPermissionDirectiveModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
5106
+ static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.12", ngImport: i0, type: EcabsCheckPermissionDirectiveModule, declarations: [EcabsCheckPermissionsDirective], imports: [CommonModule], exports: [EcabsCheckPermissionsDirective] });
5107
+ static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EcabsCheckPermissionDirectiveModule, imports: [CommonModule] });
5108
+ }
5109
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EcabsCheckPermissionDirectiveModule, decorators: [{
5110
+ type: NgModule,
5111
+ args: [{
5112
+ imports: [CommonModule],
5113
+ declarations: [EcabsCheckPermissionsDirective],
5114
+ exports: [EcabsCheckPermissionsDirective],
5115
+ }]
5116
+ }] });
5117
+
5118
+ class EcabsDomObserverDirective {
5119
+ elementRef;
5120
+ domChange = new EventEmitter();
5121
+ changes;
5122
+ constructor(elementRef) {
5123
+ this.elementRef = elementRef;
5124
+ const element = this.elementRef.nativeElement;
5125
+ this.changes = new MutationObserver((mutations) => {
5126
+ mutations.forEach((mutation) => this.domChange.emit(mutation));
5127
+ });
5128
+ this.changes.observe(element, {
5129
+ attributes: true,
5130
+ childList: true,
5131
+ });
5132
+ }
5133
+ ngOnDestroy() {
5134
+ this.changes.disconnect();
5135
+ }
5136
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EcabsDomObserverDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
5137
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: EcabsDomObserverDirective, selector: "[ecabsDomObserver]", outputs: { domChange: "domChange" }, ngImport: i0 });
5138
+ }
5139
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EcabsDomObserverDirective, decorators: [{
5140
+ type: Directive,
5141
+ args: [{
5142
+ selector: '[ecabsDomObserver]',
5143
+ }]
5144
+ }], ctorParameters: function () { return [{ type: i0.ElementRef }]; }, propDecorators: { domChange: [{
5145
+ type: Output
5146
+ }] } });
5147
+
5148
+ class EcabsDomObserverDirectiveModule {
5149
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EcabsDomObserverDirectiveModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
5150
+ static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.12", ngImport: i0, type: EcabsDomObserverDirectiveModule, declarations: [EcabsDomObserverDirective], imports: [CommonModule], exports: [EcabsDomObserverDirective] });
5151
+ static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EcabsDomObserverDirectiveModule, imports: [CommonModule] });
5152
+ }
5153
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EcabsDomObserverDirectiveModule, decorators: [{
5154
+ type: NgModule,
5155
+ args: [{
5156
+ imports: [CommonModule],
5157
+ declarations: [EcabsDomObserverDirective],
5158
+ exports: [EcabsDomObserverDirective],
5159
+ }]
5160
+ }] });
5161
+
5162
+ class EcabsFileDropDirective {
5163
+ filesDropped = new EventEmitter();
5164
+ filesHovered = new EventEmitter();
5165
+ onDrop($event) {
5166
+ $event.preventDefault();
5167
+ $event.stopPropagation();
5168
+ this.filesDropped.emit($event.dataTransfer.files);
5169
+ this.filesHovered.emit(false);
5170
+ }
5171
+ onDragOver($event) {
5172
+ $event.preventDefault();
5173
+ $event.stopPropagation();
5174
+ this.filesHovered.emit(true);
5175
+ }
5176
+ onDragLeave() {
5177
+ this.filesHovered.emit(false);
5178
+ }
5179
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EcabsFileDropDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
5180
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: EcabsFileDropDirective, selector: "[ecabsFileDrop]", outputs: { filesDropped: "filesDropped", filesHovered: "filesHovered" }, host: { listeners: { "drop": "onDrop($event)", "dragover": "onDragOver($event)", "dragleave": "onDragLeave($event)" } }, ngImport: i0 });
5181
+ }
5182
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EcabsFileDropDirective, decorators: [{
5183
+ type: Directive,
5184
+ args: [{
5185
+ selector: '[ecabsFileDrop]',
5186
+ }]
5187
+ }], propDecorators: { filesDropped: [{
5188
+ type: Output
5189
+ }], filesHovered: [{
5190
+ type: Output
5191
+ }], onDrop: [{
5192
+ type: HostListener,
5193
+ args: ['drop', ['$event']]
5194
+ }], onDragOver: [{
5195
+ type: HostListener,
5196
+ args: ['dragover', ['$event']]
5197
+ }], onDragLeave: [{
5198
+ type: HostListener,
5199
+ args: ['dragleave', ['$event']]
5200
+ }] } });
5201
+
5202
+ class EcabsFileDropDirectiveModule {
5203
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EcabsFileDropDirectiveModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
5204
+ static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.12", ngImport: i0, type: EcabsFileDropDirectiveModule, declarations: [EcabsFileDropDirective], imports: [CommonModule], exports: [EcabsFileDropDirective] });
5205
+ static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EcabsFileDropDirectiveModule, imports: [CommonModule] });
5206
+ }
5207
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EcabsFileDropDirectiveModule, decorators: [{
5208
+ type: NgModule,
5209
+ args: [{
5210
+ imports: [CommonModule],
5211
+ declarations: [EcabsFileDropDirective],
5212
+ exports: [EcabsFileDropDirective],
5213
+ }]
5214
+ }] });
5215
+
5216
+ class EcabsTimeRangeDirective {
5217
+ element;
5218
+ isDateTimeMask = false;
5219
+ considerSeconds = false;
5220
+ all = "All";
5221
+ maskedInputController;
5222
+ maskDateTime = [/\d/, /\d/, ':', /\d/, /\d/, ' ', '-', ' ', /\d/, /\d/, ':', /\d/, /\d/];
5223
+ constructor(element) {
5224
+ this.element = element;
5225
+ }
5226
+ ngOnInit() {
5227
+ this.maskedInputController = textMask.maskInput({
5228
+ inputElement: this.element.nativeElement,
5229
+ guide: true,
5230
+ showMask: false,
5231
+ keepCharPositions: true,
5232
+ mask: this.maskDateTime,
5233
+ pipe: function (conformedValue) {
5234
+ if (conformedValue === '__:__ - __:__') {
5235
+ return this.all;
5236
+ }
5237
+ return conformedValue;
5238
+ },
5239
+ });
5240
+ }
5241
+ ngOnDestroy() {
5242
+ this.maskedInputController.destroy();
5243
+ }
5244
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EcabsTimeRangeDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
5245
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: EcabsTimeRangeDirective, selector: "[ecabsTimeRange]", inputs: { isDateTimeMask: "isDateTimeMask", considerSeconds: "considerSeconds", all: "all" }, ngImport: i0 });
5246
+ }
5247
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EcabsTimeRangeDirective, decorators: [{
5248
+ type: Directive,
5249
+ args: [{
5250
+ selector: '[ecabsTimeRange]',
5251
+ }]
5252
+ }], ctorParameters: function () { return [{ type: i0.ElementRef }]; }, propDecorators: { isDateTimeMask: [{
5253
+ type: Input
5254
+ }], considerSeconds: [{
5255
+ type: Input
5256
+ }], all: [{
5257
+ type: Input
5258
+ }] } });
5259
+
5260
+ class EcabsTimeRangeDirectiveModule {
5261
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EcabsTimeRangeDirectiveModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
5262
+ static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.12", ngImport: i0, type: EcabsTimeRangeDirectiveModule, declarations: [EcabsTimeRangeDirective], imports: [CommonModule], exports: [EcabsTimeRangeDirective] });
5263
+ static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EcabsTimeRangeDirectiveModule, imports: [CommonModule] });
5264
+ }
5265
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EcabsTimeRangeDirectiveModule, decorators: [{
5266
+ type: NgModule,
5267
+ args: [{
5268
+ imports: [CommonModule],
5269
+ declarations: [EcabsTimeRangeDirective],
5270
+ exports: [EcabsTimeRangeDirective],
5271
+ }]
5272
+ }] });
5273
+
5274
+ class EcabsUppercaseMaskDirective {
5275
+ control;
5276
+ constructor(control) {
5277
+ this.control = control;
5278
+ }
5279
+ onInput(input) {
5280
+ const position = input.selectionStart;
5281
+ this.control.control.setValue(input.value.toUpperCase());
5282
+ input.setSelectionRange(position, position);
5283
+ }
5284
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EcabsUppercaseMaskDirective, deps: [{ token: i5$1.NgControl }], target: i0.ɵɵFactoryTarget.Directive });
5285
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: EcabsUppercaseMaskDirective, selector: "[formControlName][ecabsUppercaseInput]", host: { listeners: { "input": "onInput($event.target)" } }, ngImport: i0 });
5286
+ }
5287
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EcabsUppercaseMaskDirective, decorators: [{
5288
+ type: Directive,
5289
+ args: [{
5290
+ selector: '[formControlName][ecabsUppercaseInput]',
5291
+ }]
5292
+ }], ctorParameters: function () { return [{ type: i5$1.NgControl }]; }, propDecorators: { onInput: [{
5293
+ type: HostListener,
5294
+ args: ['input', ['$event.target']]
5295
+ }] } });
5296
+
5297
+ class EcabsUppercaseMaskDirectiveModule {
5298
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EcabsUppercaseMaskDirectiveModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
5299
+ static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.12", ngImport: i0, type: EcabsUppercaseMaskDirectiveModule, declarations: [EcabsUppercaseMaskDirective], imports: [CommonModule], exports: [EcabsUppercaseMaskDirective] });
5300
+ static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EcabsUppercaseMaskDirectiveModule, imports: [CommonModule] });
5301
+ }
5302
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EcabsUppercaseMaskDirectiveModule, decorators: [{
5303
+ type: NgModule,
5304
+ args: [{
5305
+ imports: [CommonModule],
5306
+ declarations: [EcabsUppercaseMaskDirective],
5307
+ exports: [EcabsUppercaseMaskDirective],
5308
+ }]
5309
+ }] });
5310
+
5311
+ class EcabsAttachEmbeddedViewDirective {
5312
+ viewContainerRef;
5313
+ embeddedTemplate;
5314
+ constructor(viewContainerRef) {
5315
+ this.viewContainerRef = viewContainerRef;
5316
+ }
5317
+ ngAfterViewInit() {
5318
+ setTimeout(() => this.viewContainerRef.createEmbeddedView(this.embeddedTemplate));
5319
+ }
5320
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EcabsAttachEmbeddedViewDirective, deps: [{ token: i0.ViewContainerRef }], target: i0.ɵɵFactoryTarget.Directive });
5321
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: EcabsAttachEmbeddedViewDirective, selector: "[ecabsAttachEmbeddedView]", inputs: { embeddedTemplate: "embeddedTemplate" }, ngImport: i0 });
5322
+ }
5323
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EcabsAttachEmbeddedViewDirective, decorators: [{
5324
+ type: Directive,
5325
+ args: [{
5326
+ selector: '[ecabsAttachEmbeddedView]',
5327
+ }]
5328
+ }], ctorParameters: function () { return [{ type: i0.ViewContainerRef }]; }, propDecorators: { embeddedTemplate: [{
5329
+ type: Input
5330
+ }] } });
5331
+
5332
+ class EcabsAttachEmbeddedViewDirectiveModule {
5333
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EcabsAttachEmbeddedViewDirectiveModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
5334
+ static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.12", ngImport: i0, type: EcabsAttachEmbeddedViewDirectiveModule, declarations: [EcabsAttachEmbeddedViewDirective], imports: [CommonModule], exports: [EcabsAttachEmbeddedViewDirective] });
5335
+ static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EcabsAttachEmbeddedViewDirectiveModule, imports: [CommonModule] });
5336
+ }
5337
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EcabsAttachEmbeddedViewDirectiveModule, decorators: [{
5338
+ type: NgModule,
5339
+ args: [{
5340
+ imports: [CommonModule],
5341
+ declarations: [EcabsAttachEmbeddedViewDirective],
5342
+ exports: [EcabsAttachEmbeddedViewDirective],
5343
+ }]
5344
+ }] });
5345
+
5346
+ class EcabsElementMultiplierDirective {
5347
+ templateRef;
5348
+ viewContainer;
5349
+ set appElementMultiplier(times) {
5350
+ for (let i = 0; i < times; i++) {
5351
+ this.viewContainer.createEmbeddedView(this.templateRef);
5352
+ }
5353
+ }
5354
+ constructor(templateRef, viewContainer) {
5355
+ this.templateRef = templateRef;
5356
+ this.viewContainer = viewContainer;
5357
+ }
5358
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EcabsElementMultiplierDirective, deps: [{ token: i0.TemplateRef }, { token: i0.ViewContainerRef }], target: i0.ɵɵFactoryTarget.Directive });
5359
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: EcabsElementMultiplierDirective, selector: "[ecabsElementMultiplier]", inputs: { appElementMultiplier: "appElementMultiplier" }, ngImport: i0 });
5360
+ }
5361
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EcabsElementMultiplierDirective, decorators: [{
5362
+ type: Directive,
5363
+ args: [{
5364
+ selector: '[ecabsElementMultiplier]',
5365
+ }]
5366
+ }], ctorParameters: function () { return [{ type: i0.TemplateRef }, { type: i0.ViewContainerRef }]; }, propDecorators: { appElementMultiplier: [{
5367
+ type: Input
5368
+ }] } });
5369
+
5370
+ class EcabsElementMultiplierDirectiveModule {
5371
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EcabsElementMultiplierDirectiveModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
5372
+ static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.12", ngImport: i0, type: EcabsElementMultiplierDirectiveModule, declarations: [EcabsElementMultiplierDirective], imports: [CommonModule], exports: [EcabsElementMultiplierDirective] });
5373
+ static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EcabsElementMultiplierDirectiveModule, imports: [CommonModule] });
5374
+ }
5375
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EcabsElementMultiplierDirectiveModule, decorators: [{
5376
+ type: NgModule,
5377
+ args: [{
5378
+ imports: [CommonModule],
5379
+ declarations: [EcabsElementMultiplierDirective],
5380
+ exports: [EcabsElementMultiplierDirective],
5381
+ }]
5382
+ }] });
5383
+
5058
5384
  class EcabsValidationComponent {
5059
5385
  validations;
5060
5386
  form;
@@ -5146,7 +5472,7 @@ class EcabsProfileComponent {
5146
5472
  }
5147
5473
  }
5148
5474
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EcabsProfileComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
5149
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: EcabsProfileComponent, selector: "ecabs-profile", inputs: { avatar: "avatar", name: "name", title: "title" }, outputs: { avatarChange: "avatarChange" }, usesOnChanges: true, ngImport: i0, template: "<!-- eslint-disable-next-line -->\r\n<ul (click)=\"avatarChange.emit()\" class=\"flex text-black cursor-pointer\">\r\n <li class=\"md:mr-3\">\r\n <div *ngIf=\"!useAvatar; else avatarTpl\" ecabsDynamicBgColor [params]=\"name\"\r\n class=\"flex h-12 w-12 rounded-full bg-gray-200 items-center justify-center text-white\">\r\n <span class=\"text-xl font-medium\">{{ initials }}</span>\r\n </div>\r\n </li>\r\n\r\n <li class=\"hidden md:flex flex-1 flex-col justify-center\">\r\n <div class=\"font-semibold\">{{ name }}</div>\r\n <div class=\"text-xs\">{{ title }}</div>\r\n </li>\r\n</ul>\r\n\r\n<ng-template #avatarTpl>\r\n <!-- eslint-disable-next-line -->\r\n <img [src]=\"avatar\" class=\"rounded-full\"/>\r\n</ng-template>\r\n\r\n", styles: ["img{width:40px;height:40px}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: DynamicBgColorDirective, selector: "[ecabsDynamicBgColor]", inputs: ["params", "saturation", "lightness"] }] });
5475
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: EcabsProfileComponent, selector: "ecabs-profile", inputs: { avatar: "avatar", name: "name", title: "title" }, outputs: { avatarChange: "avatarChange" }, usesOnChanges: true, ngImport: i0, template: "<!-- eslint-disable-next-line -->\r\n<ul (click)=\"avatarChange.emit()\" class=\"flex text-black cursor-pointer\">\r\n <li class=\"md:mr-3\">\r\n <div *ngIf=\"!useAvatar; else avatarTpl\" ecabsDynamicBgColor [params]=\"name\"\r\n class=\"flex h-12 w-12 rounded-full bg-gray-200 items-center justify-center text-white\">\r\n <span class=\"text-xl font-medium\">{{ initials }}</span>\r\n </div>\r\n </li>\r\n\r\n <li class=\"hidden md:flex flex-1 flex-col justify-center\">\r\n <div class=\"font-semibold\">{{ name }}</div>\r\n <div class=\"text-xs\">{{ title }}</div>\r\n </li>\r\n</ul>\r\n\r\n<ng-template #avatarTpl>\r\n <!-- eslint-disable-next-line -->\r\n <img [src]=\"avatar\" class=\"rounded-full\"/>\r\n</ng-template>\r\n\r\n", styles: ["img{width:40px;height:40px}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: EcabsDynamicBgColorDirective, selector: "[ecabsDynamicBgColor]", inputs: ["params", "saturation", "lightness"] }] });
5150
5476
  }
5151
5477
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EcabsProfileComponent, decorators: [{
5152
5478
  type: Component,
@@ -5163,14 +5489,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
5163
5489
 
5164
5490
  class EcabsProfileModule {
5165
5491
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EcabsProfileModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
5166
- static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.12", ngImport: i0, type: EcabsProfileModule, declarations: [EcabsProfileComponent], imports: [CommonModule, DynamicBgColorDirectiveModule], exports: [EcabsProfileComponent] });
5167
- static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EcabsProfileModule, imports: [CommonModule, DynamicBgColorDirectiveModule] });
5492
+ static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.12", ngImport: i0, type: EcabsProfileModule, declarations: [EcabsProfileComponent], imports: [CommonModule, EcabsDynamicBgColorDirectiveModule], exports: [EcabsProfileComponent] });
5493
+ static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EcabsProfileModule, imports: [CommonModule, EcabsDynamicBgColorDirectiveModule] });
5168
5494
  }
5169
5495
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EcabsProfileModule, decorators: [{
5170
5496
  type: NgModule,
5171
5497
  args: [{
5172
5498
  declarations: [EcabsProfileComponent],
5173
- imports: [CommonModule, DynamicBgColorDirectiveModule],
5499
+ imports: [CommonModule, EcabsDynamicBgColorDirectiveModule],
5174
5500
  exports: [EcabsProfileComponent],
5175
5501
  }]
5176
5502
  }] });
@@ -5270,6 +5596,129 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
5270
5596
  }]
5271
5597
  }] });
5272
5598
 
5599
+ class EcabsSliderComponent extends EcabsElementBaseComponent {
5600
+ injector;
5601
+ slider;
5602
+ max;
5603
+ point;
5604
+ pointsConfig;
5605
+ pointUpdated = new EventEmitter();
5606
+ sliderForm;
5607
+ slideSub;
5608
+ options = {
5609
+ floor: 0,
5610
+ ceil: 0,
5611
+ enforceRange: true,
5612
+ enforceStep: true,
5613
+ };
5614
+ constructor(injector) {
5615
+ super();
5616
+ this.injector = injector;
5617
+ }
5618
+ get value() {
5619
+ return this.sliderForm.get('slider').value;
5620
+ }
5621
+ set value(val) {
5622
+ if (val !== undefined && this.value !== val) {
5623
+ this.sliderForm.setValue({ slider: val });
5624
+ this.onChange(val);
5625
+ this.onTouch(val);
5626
+ }
5627
+ }
5628
+ ngOnInit() {
5629
+ this.sliderForm = new UntypedFormGroup({
5630
+ slider: new UntypedFormControl({ value: 0 }),
5631
+ });
5632
+ }
5633
+ ngAfterViewInit() {
5634
+ const ngControl = this.injector.get(NgControl, null);
5635
+ if (ngControl) {
5636
+ this.control = ngControl.control;
5637
+ }
5638
+ this.slideSub = this.sliderForm.valueChanges.subscribe((formVal) => {
5639
+ this.value = formVal?.slider;
5640
+ this.onChange(this.value);
5641
+ this.onTouch(this.value);
5642
+ });
5643
+ }
5644
+ ngOnChanges(changes) {
5645
+ if (changes['max'] && changes['max']?.currentValue != changes['max']?.previousValue) {
5646
+ this.options = {
5647
+ floor: this.pointsConfig.floor,
5648
+ ceil: this.pointsConfig.ceil,
5649
+ step: this.pointsConfig.step,
5650
+ maxLimit: this.max,
5651
+ tickStep: this.pointsConfig.tickStep,
5652
+ showTicks: true,
5653
+ enforceRange: true,
5654
+ enforceStep: true,
5655
+ };
5656
+ }
5657
+ }
5658
+ onChangeValue($event) {
5659
+ this.pointUpdated.emit($event.value);
5660
+ }
5661
+ ngOnDestroy() {
5662
+ this.slideSub?.unsubscribe();
5663
+ }
5664
+ // eslint-disable-next-line @typescript-eslint/no-empty-function
5665
+ onChange = () => { };
5666
+ // eslint-disable-next-line @typescript-eslint/no-empty-function
5667
+ onTouch = () => { };
5668
+ writeValue(value) {
5669
+ this.value = value;
5670
+ }
5671
+ registerOnChange(fn) {
5672
+ this.onChange = fn;
5673
+ }
5674
+ registerOnTouched(fn) {
5675
+ this.onTouch = fn;
5676
+ }
5677
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EcabsSliderComponent, deps: [{ token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component });
5678
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: EcabsSliderComponent, selector: "ecabs-slider", inputs: { max: "max", point: "point", pointsConfig: "pointsConfig" }, outputs: { pointUpdated: "pointUpdated" }, providers: [
5679
+ {
5680
+ provide: NG_VALUE_ACCESSOR,
5681
+ useExisting: EcabsSliderComponent,
5682
+ multi: true,
5683
+ },
5684
+ ], viewQueries: [{ propertyName: "slider", first: true, predicate: ["slider"], descendants: true }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<ecabs-element-wrapper [data]=\"getData()\">\r\n <form #f=\"ngForm\" [formGroup]=\"sliderForm\">\r\n <ngx-slider\r\n #slider\r\n class=\"custom-slider\"\r\n [formControlName]=\"'slider'\"\r\n [value]=\"point\"\r\n name=\"slider\"\r\n (userChangeEnd)=\"onChangeValue($event)\"\r\n [options]=\"options\"\r\n ></ngx-slider>\r\n </form>\r\n</ecabs-element-wrapper>\r\n", styles: [":host ::ng-deep .custom-slider .ngx-slider-bar{height:.25rem}:host ::ng-deep .custom-slider .ngx-slider-selection-bar{visibility:visible!important}:host ::ng-deep .custom-slider .ngx-slider-selection{background:var(--color-brand-light);color:var(--color-brand-light)}:host ::ng-deep .custom-slider .ngx-slider-pointer{width:1rem;height:1rem;top:auto;margin-top:-.375rem;background-color:var(--color-brand-dark)}:host ::ng-deep .custom-slider .ngx-slider-pointer:focus{outline:0}:host ::ng-deep .custom-slider .ngx-slider-pointer:after{display:none}:host ::ng-deep .custom-slider .ngx-slider-tick{width:.5rem;height:.5rem;margin-left:.25rem;border-radius:1rem;top:1px;background:var(--color-brand-dark)}\n"], dependencies: [{ kind: "component", type: EcabsElementWrapperComponent, selector: "ecabs-element-wrapper", inputs: ["data", "showCloseIcon", "focusedFlag", "showPassword", "control"], outputs: ["showHidePassword", "clear", "increase", "decrease"] }, { kind: "directive", type: i5$1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i5$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i5$1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i5$1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i5$1.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: i3$3.SliderComponent, selector: "ngx-slider", inputs: ["value", "highValue", "options", "manualRefresh", "triggerFocus"], outputs: ["valueChange", "highValueChange", "userChangeStart", "userChange", "userChangeEnd"] }] });
5685
+ }
5686
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EcabsSliderComponent, decorators: [{
5687
+ type: Component,
5688
+ args: [{ selector: 'ecabs-slider', providers: [
5689
+ {
5690
+ provide: NG_VALUE_ACCESSOR,
5691
+ useExisting: EcabsSliderComponent,
5692
+ multi: true,
5693
+ },
5694
+ ], template: "<ecabs-element-wrapper [data]=\"getData()\">\r\n <form #f=\"ngForm\" [formGroup]=\"sliderForm\">\r\n <ngx-slider\r\n #slider\r\n class=\"custom-slider\"\r\n [formControlName]=\"'slider'\"\r\n [value]=\"point\"\r\n name=\"slider\"\r\n (userChangeEnd)=\"onChangeValue($event)\"\r\n [options]=\"options\"\r\n ></ngx-slider>\r\n </form>\r\n</ecabs-element-wrapper>\r\n", styles: [":host ::ng-deep .custom-slider .ngx-slider-bar{height:.25rem}:host ::ng-deep .custom-slider .ngx-slider-selection-bar{visibility:visible!important}:host ::ng-deep .custom-slider .ngx-slider-selection{background:var(--color-brand-light);color:var(--color-brand-light)}:host ::ng-deep .custom-slider .ngx-slider-pointer{width:1rem;height:1rem;top:auto;margin-top:-.375rem;background-color:var(--color-brand-dark)}:host ::ng-deep .custom-slider .ngx-slider-pointer:focus{outline:0}:host ::ng-deep .custom-slider .ngx-slider-pointer:after{display:none}:host ::ng-deep .custom-slider .ngx-slider-tick{width:.5rem;height:.5rem;margin-left:.25rem;border-radius:1rem;top:1px;background:var(--color-brand-dark)}\n"] }]
5695
+ }], ctorParameters: function () { return [{ type: i0.Injector }]; }, propDecorators: { slider: [{
5696
+ type: ViewChild,
5697
+ args: ['slider']
5698
+ }], max: [{
5699
+ type: Input
5700
+ }], point: [{
5701
+ type: Input
5702
+ }], pointsConfig: [{
5703
+ type: Input
5704
+ }], pointUpdated: [{
5705
+ type: Output
5706
+ }] } });
5707
+
5708
+ class EcabsSliderModule {
5709
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EcabsSliderModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
5710
+ static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.12", ngImport: i0, type: EcabsSliderModule, declarations: [EcabsSliderComponent], imports: [CommonModule, ElementWrapperModule, FormsModule, ReactiveFormsModule, NgxSliderModule], exports: [EcabsSliderComponent] });
5711
+ static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EcabsSliderModule, imports: [CommonModule, ElementWrapperModule, FormsModule, ReactiveFormsModule, NgxSliderModule] });
5712
+ }
5713
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EcabsSliderModule, decorators: [{
5714
+ type: NgModule,
5715
+ args: [{
5716
+ declarations: [EcabsSliderComponent],
5717
+ imports: [CommonModule, ElementWrapperModule, FormsModule, ReactiveFormsModule, NgxSliderModule],
5718
+ exports: [EcabsSliderComponent],
5719
+ }]
5720
+ }] });
5721
+
5273
5722
  class EcabsTruncatePipe {
5274
5723
  transform(value, limit = 24, trimAtWords = false, trail = '...') {
5275
5724
  if (trimAtWords) {
@@ -5425,13 +5874,13 @@ class EcabsMenuItemsComponent {
5425
5874
  });
5426
5875
  }
5427
5876
  }
5428
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EcabsMenuItemsComponent, deps: [{ token: UnsubscribeService }, { token: i5.MatIconRegistry }, { token: i3$3.DomSanitizer }, { token: i4$3.Router }], target: i0.ɵɵFactoryTarget.Component });
5877
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EcabsMenuItemsComponent, deps: [{ token: UnsubscribeService }, { token: i5.MatIconRegistry }, { token: i3$4.DomSanitizer }, { token: i4$3.Router }], target: i0.ɵɵFactoryTarget.Component });
5429
5878
  static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: EcabsMenuItemsComponent, selector: "ecabs-menu-items", inputs: { menuItems: "menuItems", minimizeSidebar: "minimizeSidebar", truncateTo: "truncateTo" }, outputs: { toggleSidebar: "toggleSidebar" }, providers: [UnsubscribeService], usesOnChanges: true, ngImport: i0, template: "<ul>\r\n <li\r\n *ngFor=\"let item of menuItems; let i = index\"\r\n class=\"mb-2 hover:text-brand-dark cursor-pointer\"\r\n [ngClass]=\"item.expand ? 'font-bold text-brand-dark' : 'text-gray-500'\"\r\n >\r\n <a (click)=\"toggleItem(item, i)\" [id]=\"i\"\r\n [routerLink]=\"item.url ? [item.url] : []\"\r\n class=\"p-4 flex items-center h-max\"\r\n [ngClass]=\"item.expand ? 'text-brand-dark' : 'text-gray-500'\"\r\n >\r\n <mat-icon [svgIcon]=\"item.iconResource?.name || ''\"\r\n class=\"inline-block align-middle mr-4 text-inherit hover:text-inherit\">\r\n {{ item.icon }}\r\n </mat-icon>\r\n <span *ngIf=\"!minimizeSidebar\"\r\n class=\"inline-block align-middle\">\r\n {{ item.title }}\r\n </span>\r\n </a>\r\n <ng-container *ngIf=\"item.expand && item.subItems?.length > 0\">\r\n <ng-container *ngTemplateOutlet=\"firstChildren; context: item\"></ng-container>\r\n </ng-container>\r\n </li>\r\n</ul>\r\n\r\n<ng-template #firstChildren let-subItems=\"subItems\">\r\n <ng-container *ngIf=\"!minimizeSidebar\">\r\n <ul class=\"ml-12\">\r\n <li *ngFor=\"let item of subItems\" [ngClass]=\"item.expand ? 'font-bold text-brand-dark' : 'text-gray-500'\">\r\n <a #rla=\"routerLinkActive\"\r\n (click)=\"toggleSubItem(item, subItems)\"\r\n class=\"text-sm font-light p-4 h-12 rounded-md hover:text-brand-dark flex items-center\"\r\n [ngClass]=\"item.expand && rla.isActive ? 'text-brand-dark' : 'text-gray-500'\"\r\n [routerLink]=\"item.url ? [item.url] : []\"\r\n [routerLinkActive]=\" item.url ? 'bg-brand-300 text-brand-dark' : ''\"\r\n >\r\n <span [title]=\"item.title\">\r\n {{ item.title | truncate: truncateTo }}\r\n </span>\r\n <div *ngIf=\"item.subItems?.length > 0\" class=\"flex-1 text-right\">\r\n <mat-icon class=\"align-middle hover:text-inherit\" [ngClass]=\"{ 'rotate-90': item.expand }\">\r\n keyboard_arrow_right\r\n </mat-icon>\r\n </div>\r\n </a>\r\n <ng-container *ngIf=\"item.expand && item.subItems?.length > 0\">\r\n <ng-container *ngTemplateOutlet=\"secondChildren; context: item\"></ng-container>\r\n </ng-container>\r\n </li>\r\n </ul>\r\n </ng-container>\r\n</ng-template>\r\n\r\n<ng-template #secondChildren let-subItems=\"subItems\">\r\n <ul class=\"ml-3\">\r\n <li *ngFor=\"let item of subItems\">\r\n <a #rla=\"routerLinkActive\"\r\n [ngClass]=\"item.expand && rla.isActive ? 'text-brand-dark' : 'text-gray-500'\"\r\n [routerLink]=\"item.url ? [item.url] : []\"\r\n [routerLinkActive]=\" item.url ? 'bg-brand-300 text-brand-dark' : ''\"\r\n class=\"text-xs font-light block p-4 h-12 rounded-md hover:text-brand-dark\">\r\n <span>{{ item.title }}</span>\r\n </a>\r\n </li>\r\n </ul>\r\n</ng-template>\r\n", styles: [":host::ng-deep li.text-brand-dark svg path{fill:currentColor}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i4$3.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "directive", type: i4$3.RouterLinkActive, selector: "[routerLinkActive]", inputs: ["routerLinkActiveOptions", "ariaCurrentWhenActive", "routerLinkActive"], outputs: ["isActiveChange"], exportAs: ["routerLinkActive"] }, { kind: "component", type: i5.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "pipe", type: EcabsTruncatePipe, name: "truncate" }] });
5430
5879
  }
5431
5880
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EcabsMenuItemsComponent, decorators: [{
5432
5881
  type: Component,
5433
5882
  args: [{ selector: 'ecabs-menu-items', providers: [UnsubscribeService], template: "<ul>\r\n <li\r\n *ngFor=\"let item of menuItems; let i = index\"\r\n class=\"mb-2 hover:text-brand-dark cursor-pointer\"\r\n [ngClass]=\"item.expand ? 'font-bold text-brand-dark' : 'text-gray-500'\"\r\n >\r\n <a (click)=\"toggleItem(item, i)\" [id]=\"i\"\r\n [routerLink]=\"item.url ? [item.url] : []\"\r\n class=\"p-4 flex items-center h-max\"\r\n [ngClass]=\"item.expand ? 'text-brand-dark' : 'text-gray-500'\"\r\n >\r\n <mat-icon [svgIcon]=\"item.iconResource?.name || ''\"\r\n class=\"inline-block align-middle mr-4 text-inherit hover:text-inherit\">\r\n {{ item.icon }}\r\n </mat-icon>\r\n <span *ngIf=\"!minimizeSidebar\"\r\n class=\"inline-block align-middle\">\r\n {{ item.title }}\r\n </span>\r\n </a>\r\n <ng-container *ngIf=\"item.expand && item.subItems?.length > 0\">\r\n <ng-container *ngTemplateOutlet=\"firstChildren; context: item\"></ng-container>\r\n </ng-container>\r\n </li>\r\n</ul>\r\n\r\n<ng-template #firstChildren let-subItems=\"subItems\">\r\n <ng-container *ngIf=\"!minimizeSidebar\">\r\n <ul class=\"ml-12\">\r\n <li *ngFor=\"let item of subItems\" [ngClass]=\"item.expand ? 'font-bold text-brand-dark' : 'text-gray-500'\">\r\n <a #rla=\"routerLinkActive\"\r\n (click)=\"toggleSubItem(item, subItems)\"\r\n class=\"text-sm font-light p-4 h-12 rounded-md hover:text-brand-dark flex items-center\"\r\n [ngClass]=\"item.expand && rla.isActive ? 'text-brand-dark' : 'text-gray-500'\"\r\n [routerLink]=\"item.url ? [item.url] : []\"\r\n [routerLinkActive]=\" item.url ? 'bg-brand-300 text-brand-dark' : ''\"\r\n >\r\n <span [title]=\"item.title\">\r\n {{ item.title | truncate: truncateTo }}\r\n </span>\r\n <div *ngIf=\"item.subItems?.length > 0\" class=\"flex-1 text-right\">\r\n <mat-icon class=\"align-middle hover:text-inherit\" [ngClass]=\"{ 'rotate-90': item.expand }\">\r\n keyboard_arrow_right\r\n </mat-icon>\r\n </div>\r\n </a>\r\n <ng-container *ngIf=\"item.expand && item.subItems?.length > 0\">\r\n <ng-container *ngTemplateOutlet=\"secondChildren; context: item\"></ng-container>\r\n </ng-container>\r\n </li>\r\n </ul>\r\n </ng-container>\r\n</ng-template>\r\n\r\n<ng-template #secondChildren let-subItems=\"subItems\">\r\n <ul class=\"ml-3\">\r\n <li *ngFor=\"let item of subItems\">\r\n <a #rla=\"routerLinkActive\"\r\n [ngClass]=\"item.expand && rla.isActive ? 'text-brand-dark' : 'text-gray-500'\"\r\n [routerLink]=\"item.url ? [item.url] : []\"\r\n [routerLinkActive]=\" item.url ? 'bg-brand-300 text-brand-dark' : ''\"\r\n class=\"text-xs font-light block p-4 h-12 rounded-md hover:text-brand-dark\">\r\n <span>{{ item.title }}</span>\r\n </a>\r\n </li>\r\n </ul>\r\n</ng-template>\r\n", styles: [":host::ng-deep li.text-brand-dark svg path{fill:currentColor}\n"] }]
5434
- }], ctorParameters: function () { return [{ type: UnsubscribeService }, { type: i5.MatIconRegistry }, { type: i3$3.DomSanitizer }, { type: i4$3.Router }]; }, propDecorators: { menuItems: [{
5883
+ }], ctorParameters: function () { return [{ type: UnsubscribeService }, { type: i5.MatIconRegistry }, { type: i3$4.DomSanitizer }, { type: i4$3.Router }]; }, propDecorators: { menuItems: [{
5435
5884
  type: Input
5436
5885
  }], minimizeSidebar: [{
5437
5886
  type: Input
@@ -5980,5 +6429,5 @@ const removeEmpty = (o, exceptProperties = []) => {
5980
6429
  * Generated bundle index. Do not edit.
5981
6430
  */
5982
6431
 
5983
- export { ButtonsComponent, DynamicBgColorDirective, DynamicBgColorDirectiveModule, EcabsActiveStatusFilterComponent, EcabsActiveStatusFilterModule, EcabsBreadcrumbComponent, EcabsBreadcrumbModule, EcabsButtonsModule, EcabsCheckboxToggleComponent, EcabsCheckboxToggleModule, EcabsComponentsService, EcabsDatePickerComponent, EcabsDatePickerHeaderComponent, EcabsDatePickerHeaderService, EcabsDatePickerModule, EcabsDateRangeModule, EcabsDateRangePickerComponent, EcabsDateRangePickerHeaderComponent, EcabsDateTimePickerComponent, EcabsDateTimePickerHeaderComponent, EcabsDateTimeRangePickerComponent, EcabsDateTimeRangePickerHeaderComponent, EcabsDatetimePickerModule, EcabsDatetimeRangePickerModule, EcabsDialogConfirmComponent, EcabsDialogConfirmModule, EcabsDialogMessageComponent, EcabsDialogMessageModule, EcabsEmptyPlaceholderComponent, EcabsEmptyPlaceholderModule, EcabsExpansionPanelComponent, EcabsExpansionPanelModule, EcabsHeaderComponent, EcabsHeaderModule, EcabsHintComponent, EcabsHintModule, EcabsIncrementComponent, EcabsIncrementModule, EcabsInputComponent, EcabsInputModule, EcabsLanguageSelectorComponent, EcabsLanguageSelectorModule, EcabsLoadingComponent, EcabsLoadingModule, EcabsLogoComponent, EcabsLogoModule, EcabsMenuItemsComponent, EcabsMenuItemsModule, EcabsMultipleDatesPickerComponent, EcabsMultipleDatesPickerModule, EcabsNoteComponent, EcabsNoteModule, EcabsPaginatorDirective, EcabsPaginatorDirectiveModule, EcabsPhoneComponent, EcabsPhoneModule, EcabsPipesModule, EcabsPlaceAutocompleteComponent, EcabsPlaceAutocompleteModule, EcabsProfileComponent, EcabsProfileModule, EcabsRadioButtonListComponent, EcabsRadioButtonListModule, EcabsSelectComponent, EcabsSelectModule, EcabsSelectV2Component, EcabsSelectV2Module, EcabsSidebarComponent, EcabsSidebarModule, EcabsSpinnerComponent, EcabsTableFilterWrapperComponent, EcabsTableFilterWrapperModule, EcabsTableModule, EcabsTextAreaModule, EcabsTextareaComponent, EcabsTimeListPanelComponent, EcabsTimepickerComponent, EcabsTimepickerModule, EcabsTruncatePipe, EcabsValidationComponent, EcabsValidationModule, EcabsValidationViewModule, FormTimePickerService, GenericComponentConfig, HeaderService, MATERIAL_DATETIMEPICKER_FORMATS, MaskTimeDirective, MaskTimeDirectiveModule, MaxDirective, MinDirective, MinMaxDirectiveModule, TableComponent, TooltipIfTruncatedDirective, TooltipIfTruncatedDirectiveModule, UnsubscribeService, ValidationComponent, removeEmpty, removeNullUndefineds, scrollFactory, sortGeneric };
6432
+ export { ButtonsComponent, EcabsActiveStatusFilterComponent, EcabsActiveStatusFilterModule, EcabsAttachEmbeddedViewDirective, EcabsAttachEmbeddedViewDirectiveModule, EcabsBreadcrumbComponent, EcabsBreadcrumbModule, EcabsButtonsModule, EcabsCheckPermissionDirectiveModule, EcabsCheckPermissionsDirective, EcabsCheckboxToggleComponent, EcabsCheckboxToggleModule, EcabsComponentsService, EcabsDatePickerComponent, EcabsDatePickerHeaderComponent, EcabsDatePickerHeaderService, EcabsDatePickerModule, EcabsDateRangeModule, EcabsDateRangePickerComponent, EcabsDateRangePickerHeaderComponent, EcabsDateTimePickerComponent, EcabsDateTimePickerHeaderComponent, EcabsDateTimeRangePickerComponent, EcabsDateTimeRangePickerHeaderComponent, EcabsDatetimePickerModule, EcabsDatetimeRangePickerModule, EcabsDialogConfirmComponent, EcabsDialogConfirmModule, EcabsDialogMessageComponent, EcabsDialogMessageModule, EcabsDigitsOnlyDirective, EcabsDigitsOnlyDirectivesModule, EcabsDomObserverDirective, EcabsDomObserverDirectiveModule, EcabsDynamicBgColorDirective, EcabsDynamicBgColorDirectiveModule, EcabsElementMultiplierDirective, EcabsElementMultiplierDirectiveModule, EcabsEmptyPlaceholderComponent, EcabsEmptyPlaceholderModule, EcabsExpansionPanelComponent, EcabsExpansionPanelModule, EcabsFileDropDirective, EcabsFileDropDirectiveModule, EcabsHeaderComponent, EcabsHeaderModule, EcabsHintComponent, EcabsHintModule, EcabsIncrementComponent, EcabsIncrementModule, EcabsInputComponent, EcabsInputModule, EcabsLanguageSelectorComponent, EcabsLanguageSelectorModule, EcabsLoadingComponent, EcabsLoadingModule, EcabsLogoComponent, EcabsLogoModule, EcabsMaskDateDirective, EcabsMaskDateDirectiveModule, EcabsMaskTimeDirective, EcabsMaskTimeDirectiveModule, EcabsMaxDirective, EcabsMenuItemsComponent, EcabsMenuItemsModule, EcabsMinDirective, EcabsMinMaxDirectiveModule, EcabsMultipleDatesPickerComponent, EcabsMultipleDatesPickerModule, EcabsNoteComponent, EcabsNoteModule, EcabsNumberBorderDirective, EcabsNumberBorderDirectiveModule, EcabsPaginatorDirective, EcabsPaginatorDirectiveModule, EcabsPhoneComponent, EcabsPhoneModule, EcabsPipesModule, EcabsPlaceAutocompleteComponent, EcabsPlaceAutocompleteModule, EcabsProfileComponent, EcabsProfileModule, EcabsRadioButtonListComponent, EcabsRadioButtonListModule, EcabsSelectComponent, EcabsSelectModule, EcabsSelectV2Component, EcabsSelectV2Module, EcabsSidebarComponent, EcabsSidebarModule, EcabsSliderComponent, EcabsSliderModule, EcabsSpinnerComponent, EcabsTableFilterWrapperComponent, EcabsTableFilterWrapperModule, EcabsTableModule, EcabsTextAreaModule, EcabsTextareaComponent, EcabsTimeListPanelComponent, EcabsTimeRangeDirective, EcabsTimeRangeDirectiveModule, EcabsTimepickerComponent, EcabsTimepickerModule, EcabsTooltipIfTruncatedDirective, EcabsTooltipIfTruncatedDirectiveModule, EcabsTruncatePipe, EcabsUppercaseMaskDirective, EcabsUppercaseMaskDirectiveModule, EcabsValidationComponent, EcabsValidationModule, EcabsValidationViewModule, FormTimePickerService, GenericComponentConfig, HeaderService, MATERIAL_DATETIMEPICKER_FORMATS, TableComponent, UnsubscribeService, ValidationComponent, removeEmpty, removeNullUndefineds, scrollFactory, sortGeneric };
5984
6433
  //# sourceMappingURL=ecabs-components.mjs.map