@ieeesa-npm/presentation 0.0.4 → 0.0.7

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 (37) hide show
  1. package/esm2022/lib/components/autocomplete/autocomplete.component.mjs +5 -5
  2. package/esm2022/lib/components/checkbox/checkbox.component.mjs +3 -3
  3. package/esm2022/lib/components/date-picker/date-picker.component.mjs +9 -9
  4. package/esm2022/lib/components/date-picker-header/date-picker-header.component.mjs +4 -4
  5. package/esm2022/lib/components/dynamic-form/dynamic-form.component.mjs +2 -2
  6. package/esm2022/lib/components/form-error/form-error.component.mjs +1 -1
  7. package/esm2022/lib/components/input/input.component.mjs +3 -3
  8. package/esm2022/lib/components/radio/radio.component.mjs +4 -4
  9. package/esm2022/lib/components/search/search.component.mjs +7 -7
  10. package/esm2022/lib/components/select/select.component.mjs +7 -7
  11. package/esm2022/lib/components/text-area/text-area.component.mjs +3 -3
  12. package/esm2022/lib/directives/dynamic-form-field/dynamic-form-field.directive.mjs +10 -10
  13. package/esm2022/lib/models/date-picker.model.mjs +1 -1
  14. package/esm2022/lib/models/field-config.model.mjs +1 -1
  15. package/esm2022/lib/models/form-field.model.mjs +1 -1
  16. package/esm2022/lib/models/form.model.mjs +1 -1
  17. package/esm2022/lib/services/form-utility.service.mjs +1 -1
  18. package/fesm2022/ieeesa-npm-presentation.mjs +1542 -1430
  19. package/fesm2022/ieeesa-npm-presentation.mjs.map +1 -1
  20. package/lib/components/autocomplete/autocomplete.component.d.ts +5 -5
  21. package/lib/components/checkbox/checkbox.component.d.ts +4 -4
  22. package/lib/components/date-picker/date-picker.component.d.ts +6 -6
  23. package/lib/components/date-picker-header/date-picker-header.component.d.ts +1 -1
  24. package/lib/components/dynamic-form/dynamic-form.component.d.ts +4 -4
  25. package/lib/components/form-error/form-error.component.d.ts +1 -1
  26. package/lib/components/input/input.component.d.ts +2 -2
  27. package/lib/components/radio/radio.component.d.ts +4 -4
  28. package/lib/components/search/search.component.d.ts +4 -4
  29. package/lib/components/select/select.component.d.ts +5 -5
  30. package/lib/components/text-area/text-area.component.d.ts +2 -2
  31. package/lib/directives/dynamic-form-field/dynamic-form-field.directive.d.ts +2 -2
  32. package/lib/models/date-picker.model.d.ts +1 -1
  33. package/lib/models/field-config.model.d.ts +6 -6
  34. package/lib/models/form-field.model.d.ts +1 -1
  35. package/lib/models/form.model.d.ts +1 -1
  36. package/lib/services/form-utility.service.d.ts +1 -1
  37. package/package.json +1 -1
@@ -1,694 +1,995 @@
1
1
  import * as i0 from '@angular/core';
2
- import { EventEmitter, Component, ViewChildren, Input, Output, Directive, ViewEncapsulation, ViewChild, Injectable, Inject, NgModule } from '@angular/core';
2
+ import { Component, Input, ViewEncapsulation, Injectable, EventEmitter, Output, ViewChild, Inject, ViewChildren, Directive, NgModule } from '@angular/core';
3
3
  import * as i3 from '@angular/forms';
4
4
  import { ReactiveFormsModule, FormControl, FormsModule, Validators } from '@angular/forms';
5
5
  import * as i2 from '@angular/common';
6
6
  import { CommonModule } from '@angular/common';
7
7
  import * as i8 from '@angular/material/button';
8
8
  import { MatButtonModule } from '@angular/material/button';
9
- import { DynamicFormFieldDirective as DynamicFormFieldDirective$1 } from '@presentation/directives/dynamic-form-field/dynamic-form-field.directive';
10
- import { Subject, takeUntil, filter, debounceTime, distinctUntilChanged, fromEvent, map } from 'rxjs';
11
- import { InputComponent as InputComponent$1 } from '@presentation/components/input/input.component';
12
- import { AutocompleteComponent as AutocompleteComponent$1 } from '@presentation/components/autocomplete/autocomplete.component';
13
- import { CheckboxComponent as CheckboxComponent$1 } from '@presentation/components/checkbox/checkbox.component';
14
- import { DatePickerComponent as DatePickerComponent$1 } from '@presentation/components/date-picker/date-picker.component';
15
- import { RadioComponent as RadioComponent$1 } from '@presentation/components/radio/radio.component';
16
- import { SearchComponent as SearchComponent$1 } from '@presentation/components/search/search.component';
17
- import { SelectComponent as SelectComponent$1 } from '@presentation/components/select/select.component';
18
- import { TextAreaComponent as TextAreaComponent$1 } from '@presentation/components/text-area/text-area.component';
19
- import { FormControlType as FormControlType$1 } from '@presentation/models/form-control-types.model';
20
- import * as i5$2 from '@angular/material/icon';
21
- import { MatIconModule } from '@angular/material/icon';
9
+ import { Subject, filter, debounceTime, distinctUntilChanged, takeUntil, fromEvent, map } from 'rxjs';
22
10
  import * as i5 from '@angular/material/input';
23
11
  import { MatInputModule } from '@angular/material/input';
24
- import { FormErrorComponent as FormErrorComponent$1 } from '@presentation/components/form-error/form-error.component';
25
- import * as buttonActionsInfo from '@presentation/assets/constants.json';
12
+ import * as i5$2 from '@angular/material/icon';
13
+ import { MatIconModule } from '@angular/material/icon';
26
14
  import * as i4 from '@angular/material/form-field';
27
15
  import { MatFormFieldModule } from '@angular/material/form-field';
28
- import * as i3$1 from '@angular/material/radio';
29
- import { MatRadioModule } from '@angular/material/radio';
30
- import * as i1 from '@presentation/services/form-utility.service';
31
- import * as i3$2 from '@angular/material/list';
32
- import { MatListModule } from '@angular/material/list';
33
- import * as i6 from '@angular/material/checkbox';
34
- import { MatCheckboxModule } from '@angular/material/checkbox';
35
16
  import * as i2$1 from '@angular/material/core';
36
- import { MatOptionModule, DateAdapter, MAT_DATE_LOCALE, MAT_DATE_FORMATS, MatNativeDateModule } from '@angular/material/core';
17
+ import { MatOptionModule, MAT_DATE_FORMATS, MatNativeDateModule, DateAdapter, MAT_DATE_LOCALE } from '@angular/material/core';
37
18
  import * as i5$1 from '@angular/material/autocomplete';
38
19
  import { MAT_AUTOCOMPLETE_DEFAULT_OPTIONS, MatAutocompleteModule } from '@angular/material/autocomplete';
39
- import { ValidationPatterns } from '@presentation/validation-patterns';
40
- import { SearchType as SearchType$1 } from '@presentation/models/search.model';
20
+ import * as i3$1 from '@angular/material/list';
21
+ import { MatListModule } from '@angular/material/list';
22
+ import * as i6 from '@angular/material/checkbox';
23
+ import { MatCheckboxModule } from '@angular/material/checkbox';
41
24
  import { MomentDateAdapter, MAT_MOMENT_DATE_ADAPTER_OPTIONS } from '@angular/material-moment-adapter';
42
25
  import { MatExpansionModule } from '@angular/material/expansion';
43
26
  import * as i7 from '@angular/material/datepicker';
44
27
  import { MatDatepickerModule } from '@angular/material/datepicker';
45
28
  import { MatMenuModule } from '@angular/material/menu';
46
29
  import moment_ from 'moment';
47
- import { DatePickerHeaderComponent as DatePickerHeaderComponent$1 } from '@presentation/components/date-picker-header/date-picker-header.component';
48
- import { DateFormats } from '@presentation/date-formats';
49
- import { CalendarType as CalendarType$1 } from '@presentation/models/calendar.model';
50
- import * as i2$2 from '@presentation/services/datepicker.service';
30
+ import * as i3$2 from '@angular/material/radio';
31
+ import { MatRadioModule } from '@angular/material/radio';
51
32
  import * as i5$3 from '@angular/material/select';
52
33
  import { MAT_SELECT_CONFIG, MatSelectModule } from '@angular/material/select';
53
34
 
54
35
  /**
55
- * Creates a reactive form dynamically based on the passed form field configuration and handles the form events.
36
+ * Implements and displays form error messages and form submission error response message on submission of form.
56
37
  * @export
57
- * @class DynamicFormComponent
58
- * @implements {OnInit}
59
- * @implements {AfterContentInit}
38
+ * @class FormErrorComponent
60
39
  */
61
- class DynamicFormComponent {
40
+ class FormErrorComponent {
41
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: FormErrorComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
42
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.3", type: FormErrorComponent, isStandalone: true, selector: "ieeesa-form-error", inputs: { formGroup: "formGroup", config: "config", submitResponse: "submitResponse" }, ngImport: i0, template: "<ng-container *ngIf=\"formGroup\">\r\n <div\r\n class=\"ieeesa-body-sm-14 ieeesa-form-error\"\r\n *ngIf=\"\r\n formGroup.controls[config.controlName]?.touched ||\r\n (formGroup.controls[config.controlName]?.dirty &&\r\n formGroup.controls[config.controlName]?.invalid)\r\n \"\r\n >\r\n <p\r\n *ngIf=\"formGroup.controls[config.controlName].errors?.['required']\"\r\n class=\"ieeesa-form-error--text\"\r\n >\r\n {{ config.requiredErrorMessage }}\r\n </p>\r\n <p\r\n *ngIf=\"formGroup.controls[config.controlName].errors?.['minlength']\"\r\n class=\"ieeesa-form-error--text\"\r\n >\r\n {{ config.minErrorMessage }}\r\n </p>\r\n <p\r\n *ngIf=\"formGroup.controls[config.controlName].errors?.['maxlength'] || formGroup.controls[config.controlName].errors?.['max']\"\r\n class=\"ieeesa-form-error--text\"\r\n >\r\n {{ config.maxErrorMessage }}\r\n </p>\r\n <p\r\n *ngIf=\"formGroup.controls[config.controlName].errors?.['pattern']\"\r\n class=\"ieeesa-form-error--text\"\r\n >\r\n {{ config.patternErrorMessage }}\r\n </p>\r\n <p\r\n *ngIf=\"\r\n formGroup.controls[config.controlName].errors?.['email']\"\r\n class=\"ieeesa-form-error--text\"\r\n >\r\n {{ config.invalidEmailErrorMessage }}\r\n </p>\r\n </div>\r\n <div\r\n class=\"ieeesa-form-error\"\r\n *ngIf=\"\r\n (formGroup.controls[config.controlName]?.touched ||\r\n formGroup.controls[config.controlName]?.dirty) &&\r\n submitResponse\r\n \"\r\n >\r\n <p class=\"ieeesa-form-error--text mt-1\">\r\n {{ submitResponse }}\r\n </p>\r\n </div>\r\n</ng-container>\r\n", styles: [".ieeesa-subtitle{text-align:left;font-family:Calibri Regular;font-size:1.56em;letter-spacing:0;color:#000;opacity:1}.ieeesa-body{text-align:left;font-family:Calibri Regular;font-size:1.25em;letter-spacing:0;color:#000;opacity:1}.ieeesa-display-lg-57{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:3.5625em;line-height:64px;color:#000;letter-spacing:0}.ieeesa-display-md-47{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.9375em;line-height:52px;color:#000;letter-spacing:0}.ieeesa-display-sm-38{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.375em;line-height:44px;color:#000;letter-spacing:0}.ieeesa-headline-lg-34{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.125em;line-height:40px;color:#000;letter-spacing:0}.ieeesa-headline-md-30{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.875em;line-height:36px;color:#000;letter-spacing:0}.ieeesa-headline-sm-26{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.625em;line-height:32px;color:#000;letter-spacing:0}.ieeesa-title-lg-bold-24{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1.5em;line-height:28px;color:#000;letter-spacing:0}.ieeesa-title-lg-24{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.5em;line-height:28px;color:#000;letter-spacing:0}.ieeesa-title-md-18{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.125em;line-height:24px;color:#000;letter-spacing:.009375em}.ieeesa-title-sm-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-lg-bold-16{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-lg-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-md-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875em;line-height:16px;color:#000;letter-spacing:.03125em}.ieeesa-label-sm-13{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.8125em;line-height:16px;color:#000;letter-spacing:.03125em}.ieeesa-body-lg-bold-18{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1.125em;line-height:24px;color:#000;letter-spacing:.03125em}.ieeesa-body-lg-18{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.125em;line-height:24px;color:#000;letter-spacing:.03125em}.ieeesa-body-md-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1em;line-height:20px;color:#000;letter-spacing:.015625em}.ieeesa-body-sm-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875em;line-height:16px;color:#000;letter-spacing:.025em}.ieeesa-title-inter-lg-bold-24{font-family:Inter Bold;font-style:normal;font-weight:700;font-size:1.5em;line-height:29px;color:#000;letter-spacing:0}.mat-mdc-button.mat-mdc-button-base.mat-primary-button,.mat-mdc-button.mat-mdc-button-base.mat-secondary-button{min-width:103px;width:auto;min-height:40px;height:auto;border-radius:3px;text-align:center;padding:.625em 1.5em;border:none;font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.mat-mdc-button.mat-mdc-button-base>.mat-icon{margin-right:11px}.mat-mdc-button.mat-mdc-button-base.mat-primary-button{background-color:#00629b;color:#fff}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:hover{background-color:#003e65}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:active{background-color:#00629b}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:disabled{background-color:#1c1b1f1f}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button{color:#fff;background:#a7a8aa;box-shadow:0 1px 2px #0000004d,0 2px 6px 2px #00000026}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:hover{background:#a7a8aa}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:active{background:rgba(29,25,43,.12)}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:disabled{background:rgba(28,27,31,.12);color:#1c1b1f;opacity:.38}.ieeesa-text-button{color:#cac4d0;background:none;border:none}.flex-align-center{display:flex;align-items:center;justify-content:center}.mat-button-toggle-checked{background-color:#a7a8aa}.mat-button-toggle-checked .mat-button-toggle-label-content:before{font-family:\"Font Awesome 5 Free\";font-weight:900;content:\"\\f00c\";padding-right:.5625em}.mat-button-toggle-group .mat-button-toggle-label-content{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1em;line-height:20px;color:#1c1b1f;letter-spacing:.00625em}@media (max-width: 768px){.mat-button-toggle-group .mat-button-toggle-label-content{max-width:8ch;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;position:relative}}.cdk-overlay-pane{width:100%;min-width:312px}.ieeesa-form-error--text{color:#ba0c2f;padding-left:14px}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] }); }
43
+ }
44
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: FormErrorComponent, decorators: [{
45
+ type: Component,
46
+ args: [{ selector: 'ieeesa-form-error', standalone: true, imports: [CommonModule], template: "<ng-container *ngIf=\"formGroup\">\r\n <div\r\n class=\"ieeesa-body-sm-14 ieeesa-form-error\"\r\n *ngIf=\"\r\n formGroup.controls[config.controlName]?.touched ||\r\n (formGroup.controls[config.controlName]?.dirty &&\r\n formGroup.controls[config.controlName]?.invalid)\r\n \"\r\n >\r\n <p\r\n *ngIf=\"formGroup.controls[config.controlName].errors?.['required']\"\r\n class=\"ieeesa-form-error--text\"\r\n >\r\n {{ config.requiredErrorMessage }}\r\n </p>\r\n <p\r\n *ngIf=\"formGroup.controls[config.controlName].errors?.['minlength']\"\r\n class=\"ieeesa-form-error--text\"\r\n >\r\n {{ config.minErrorMessage }}\r\n </p>\r\n <p\r\n *ngIf=\"formGroup.controls[config.controlName].errors?.['maxlength'] || formGroup.controls[config.controlName].errors?.['max']\"\r\n class=\"ieeesa-form-error--text\"\r\n >\r\n {{ config.maxErrorMessage }}\r\n </p>\r\n <p\r\n *ngIf=\"formGroup.controls[config.controlName].errors?.['pattern']\"\r\n class=\"ieeesa-form-error--text\"\r\n >\r\n {{ config.patternErrorMessage }}\r\n </p>\r\n <p\r\n *ngIf=\"\r\n formGroup.controls[config.controlName].errors?.['email']\"\r\n class=\"ieeesa-form-error--text\"\r\n >\r\n {{ config.invalidEmailErrorMessage }}\r\n </p>\r\n </div>\r\n <div\r\n class=\"ieeesa-form-error\"\r\n *ngIf=\"\r\n (formGroup.controls[config.controlName]?.touched ||\r\n formGroup.controls[config.controlName]?.dirty) &&\r\n submitResponse\r\n \"\r\n >\r\n <p class=\"ieeesa-form-error--text mt-1\">\r\n {{ submitResponse }}\r\n </p>\r\n </div>\r\n</ng-container>\r\n", styles: [".ieeesa-subtitle{text-align:left;font-family:Calibri Regular;font-size:1.56em;letter-spacing:0;color:#000;opacity:1}.ieeesa-body{text-align:left;font-family:Calibri Regular;font-size:1.25em;letter-spacing:0;color:#000;opacity:1}.ieeesa-display-lg-57{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:3.5625em;line-height:64px;color:#000;letter-spacing:0}.ieeesa-display-md-47{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.9375em;line-height:52px;color:#000;letter-spacing:0}.ieeesa-display-sm-38{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.375em;line-height:44px;color:#000;letter-spacing:0}.ieeesa-headline-lg-34{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.125em;line-height:40px;color:#000;letter-spacing:0}.ieeesa-headline-md-30{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.875em;line-height:36px;color:#000;letter-spacing:0}.ieeesa-headline-sm-26{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.625em;line-height:32px;color:#000;letter-spacing:0}.ieeesa-title-lg-bold-24{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1.5em;line-height:28px;color:#000;letter-spacing:0}.ieeesa-title-lg-24{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.5em;line-height:28px;color:#000;letter-spacing:0}.ieeesa-title-md-18{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.125em;line-height:24px;color:#000;letter-spacing:.009375em}.ieeesa-title-sm-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-lg-bold-16{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-lg-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-md-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875em;line-height:16px;color:#000;letter-spacing:.03125em}.ieeesa-label-sm-13{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.8125em;line-height:16px;color:#000;letter-spacing:.03125em}.ieeesa-body-lg-bold-18{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1.125em;line-height:24px;color:#000;letter-spacing:.03125em}.ieeesa-body-lg-18{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.125em;line-height:24px;color:#000;letter-spacing:.03125em}.ieeesa-body-md-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1em;line-height:20px;color:#000;letter-spacing:.015625em}.ieeesa-body-sm-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875em;line-height:16px;color:#000;letter-spacing:.025em}.ieeesa-title-inter-lg-bold-24{font-family:Inter Bold;font-style:normal;font-weight:700;font-size:1.5em;line-height:29px;color:#000;letter-spacing:0}.mat-mdc-button.mat-mdc-button-base.mat-primary-button,.mat-mdc-button.mat-mdc-button-base.mat-secondary-button{min-width:103px;width:auto;min-height:40px;height:auto;border-radius:3px;text-align:center;padding:.625em 1.5em;border:none;font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.mat-mdc-button.mat-mdc-button-base>.mat-icon{margin-right:11px}.mat-mdc-button.mat-mdc-button-base.mat-primary-button{background-color:#00629b;color:#fff}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:hover{background-color:#003e65}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:active{background-color:#00629b}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:disabled{background-color:#1c1b1f1f}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button{color:#fff;background:#a7a8aa;box-shadow:0 1px 2px #0000004d,0 2px 6px 2px #00000026}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:hover{background:#a7a8aa}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:active{background:rgba(29,25,43,.12)}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:disabled{background:rgba(28,27,31,.12);color:#1c1b1f;opacity:.38}.ieeesa-text-button{color:#cac4d0;background:none;border:none}.flex-align-center{display:flex;align-items:center;justify-content:center}.mat-button-toggle-checked{background-color:#a7a8aa}.mat-button-toggle-checked .mat-button-toggle-label-content:before{font-family:\"Font Awesome 5 Free\";font-weight:900;content:\"\\f00c\";padding-right:.5625em}.mat-button-toggle-group .mat-button-toggle-label-content{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1em;line-height:20px;color:#1c1b1f;letter-spacing:.00625em}@media (max-width: 768px){.mat-button-toggle-group .mat-button-toggle-label-content{max-width:8ch;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;position:relative}}.cdk-overlay-pane{width:100%;min-width:312px}.ieeesa-form-error--text{color:#ba0c2f;padding-left:14px}\n"] }]
47
+ }], propDecorators: { formGroup: [{
48
+ type: Input
49
+ }], config: [{
50
+ type: Input
51
+ }], submitResponse: [{
52
+ type: Input
53
+ }] } });
54
+
55
+ var ariaLabel = {
56
+ clear: "Clear",
57
+ warning: "Warning",
58
+ previousMonth: "Previous month",
59
+ nextMonth: "Next month"
60
+ };
61
+ var button = {
62
+ cancel: "Cancel",
63
+ ok: "Ok"
64
+ };
65
+ var datePicker = {
66
+ selectDateLabel: "Select Date",
67
+ dateFormatLabel: "DD-MMM-YYYY",
68
+ startDateLabel: "Start Date",
69
+ endDateLabel: "End Date"
70
+ };
71
+ var dropdown = {
72
+ placeholderText: "Select your option(s)"
73
+ };
74
+ var textarea = {
75
+ maxLengthDefault: 1000
76
+ };
77
+ var autocomplete = {
78
+ minCharToSearch: 3,
79
+ debounceTime: 1000
80
+ };
81
+ var header = {
82
+ alt: {
83
+ logo: "Logo"
84
+ },
85
+ ariaLabel: {
86
+ helpLink: "Help Link",
87
+ userProfile: "User profile",
88
+ hamburgerMenu: "Hamburger Menu"
89
+ },
90
+ label: {
91
+ signOut: "Sign Out"
92
+ }
93
+ };
94
+ var footer = {
95
+ alt: {
96
+ logo: "IEEE Logo"
97
+ },
98
+ links: [
99
+ {
100
+ label: "Dashboard",
101
+ ariaLabel: "Dashboard",
102
+ redirectUrl: "#"
103
+ },
104
+ {
105
+ label: "Contact & Support",
106
+ ariaLabel: "Contact & Support",
107
+ redirectUrl: "https://www.ieee.org/about/contact.html"
108
+ },
109
+ {
110
+ label: "Accessibility",
111
+ ariaLabel: "Accessibility",
112
+ redirectUrl: "https://www.ieee.org/accessibility_statement.html"
113
+ },
114
+ {
115
+ label: "Nondiscrimination Policy",
116
+ ariaLabel: "Nondiscrimination Policy",
117
+ redirectUrl: "https://www.ieee.org/about/corporate/governance/p9-26.html"
118
+ },
119
+ {
120
+ label: "IEEE Ethics Reporting",
121
+ ariaLabel: "",
122
+ redirectUrl: "https://secure.ethicspoint.com/domain/media/en/gui/20410/index.html"
123
+ },
124
+ {
125
+ label: "IEEE Privacy Policy",
126
+ ariaLabel: "IEEE Privacy Policy",
127
+ redirectUrl: "https://www.ieee.org/security-privacy.html"
128
+ },
129
+ {
130
+ label: "IEEE SA Copyright Policy",
131
+ ariaLabel: "IEEE SA Copyright Policy",
132
+ redirectUrl: "https://standards.ieee.org/ipr/"
133
+ }
134
+ ],
135
+ ieeeLogo: "assets/images/ieee-logo.svg",
136
+ copyright: {
137
+ link: "https://www.ieee.org/about/help/site-terms-conditions.html",
138
+ textPart1: "© Copyright",
139
+ textPart2: "IEEE – All rights reserved. Use of this website signifies your agreement to the",
140
+ hyperLinkPart3: " IEEE Terms and Conditions.",
141
+ textPart4: "A not-for-profit organization, IEEE is the world's largest technical professional organization dedicated to advancing technology for the benefit of humanity."
142
+ }
143
+ };
144
+ var constants = {
145
+ ariaLabel: ariaLabel,
146
+ button: button,
147
+ datePicker: datePicker,
148
+ dropdown: dropdown,
149
+ textarea: textarea,
150
+ autocomplete: autocomplete,
151
+ header: header,
152
+ footer: footer
153
+ };
154
+
155
+ var constantsInfo = /*#__PURE__*/Object.freeze({
156
+ __proto__: null,
157
+ ariaLabel: ariaLabel,
158
+ autocomplete: autocomplete,
159
+ button: button,
160
+ datePicker: datePicker,
161
+ default: constants,
162
+ dropdown: dropdown,
163
+ footer: footer,
164
+ header: header,
165
+ textarea: textarea
166
+ });
167
+
168
+ /**
169
+ * Provides implementation of input type number and text
170
+ * @export
171
+ * @class InputComponent
172
+ * @implements {FormField}
173
+ */
174
+ class InputComponent {
175
+ constructor() {
176
+ this.invalidChars = ['-', '+', 'e'];
177
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
178
+ this.buttonActionsInfo = constantsInfo;
179
+ }
62
180
  /**
63
- * FormGroups passed an an input and which contains configuration information of every form fields.
64
- * @memberof DynamicFormComponent
181
+ * Handles keyboard event of type keydown to restrict invalid characters.
182
+ * @param {KeyboardEvent} event
183
+ * @memberof InputComponent
65
184
  */
66
- set formGroups(value) {
67
- this._formGroups = value;
68
- this.createFormGroupArray();
185
+ onKeyDown(event) {
186
+ if ((this.invalidChars.includes(event.key.toLowerCase()) ||
187
+ (this.config.isInteger && event.key.toLowerCase() === '.')) &&
188
+ this.config.isNumber) {
189
+ event.preventDefault();
190
+ }
69
191
  }
70
- get formGroups() {
71
- return this._formGroups;
192
+ /**
193
+ * Clears the form group control value of type input
194
+ * @memberof InputComponent
195
+ */
196
+ clear() {
197
+ this.group.get(this.config.controlName)?.setValue('');
72
198
  }
73
199
  /**
74
- * Sets submit response on form submit
75
- * @memberof DynamicFormComponent
200
+ * Handles form control input on change event to set min and max value errors
201
+ * @memberof InputComponent
76
202
  */
77
- set submitResponse(value) {
78
- this._submitResponse = value;
203
+ onChange() {
204
+ if (this.config.max &&
205
+ this.config.isNumber &&
206
+ Number(this.group.get(this.config.controlName)?.value) > this.config.max) {
207
+ this.group.get(this.config.controlName)?.setErrors({
208
+ maxlength: true,
209
+ });
210
+ }
211
+ if (this.config.min &&
212
+ this.config.isNumber &&
213
+ this.group.get(this.config.controlName)?.value !== '' &&
214
+ Number(this.group.get(this.config.controlName)?.value) < this.config.min) {
215
+ this.group.get(this.config.controlName)?.setErrors({
216
+ minlength: true,
217
+ });
218
+ }
79
219
  }
80
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
81
- get submitResponse() {
82
- return this._submitResponse;
220
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: InputComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
221
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.3", type: InputComponent, isStandalone: true, selector: "ieeesa-input", ngImport: i0, template: "<div\r\n [formGroup]=\"group\"\r\n class=\"ieeesa-input-field\"\r\n [ngClass]=\"\r\n config.isLabelAlignedLeft\r\n ? 'ieeesa-input-field__label-left'\r\n : 'ieeesa-input-field__label-top'\r\n \"\r\n>\r\n <mat-label class=\"ieeesa-body-sm-14 ieeesa-input-field__label\">{{\r\n config.label\r\n }}</mat-label>\r\n <mat-form-field>\r\n <input\r\n class=\"ieeesa-input-field__content ieeesa-body-sm-14\"\r\n [type]=\"config.isNumber ? 'number' : 'text'\"\r\n [min]=\"config.min\"\r\n [max]=\"config.max\"\r\n [maxlength]=\"config.maxLength ?? ''\"\r\n [minlength]=\"config.minLength ?? ''\"\r\n [placeholder]=\"config.placeholder ?? ''\"\r\n [placeholder]=\"config.placeholder ?? ''\"\r\n [formControlName]=\"config.controlName\"\r\n [name]=\"config.controlName\"\r\n (keydown)=\"onKeyDown($event)\"\r\n (input)=\"onChange()\"\r\n autocomplete=\"off\"\r\n matInput\r\n />\r\n <button\r\n *ngIf=\"\r\n group.get(this.config.controlName)?.value &&\r\n group.get(this.config.controlName)?.valid\r\n \"\r\n matSuffix\r\n mat-icon-button\r\n [attr.aria-label]=\"buttonActionsInfo.ariaLabel.clear\"\r\n class=\"ieeesa-input-field__btn--clear\"\r\n (click)=\"clear()\"\r\n >\r\n <i class=\"fa-regular fa-circle-xmark ieeesa-input-field__icon--clear\"></i>\r\n </button>\r\n <button\r\n *ngIf=\"\r\n group.get(this.config.controlName)?.invalid &&\r\n group.get(this.config.controlName)?.dirty\r\n \"\r\n class=\"ieeesa-input-field__btn--warning\"\r\n matSuffix\r\n mat-icon-button\r\n [attr.aria-label]=\"buttonActionsInfo.ariaLabel.warning\"\r\n >\r\n <i\r\n class=\"fa-solid fa-circle-exclamation ieeesa-input-field__icon--warning\"\r\n ></i>\r\n </button>\r\n </mat-form-field>\r\n <ieeesa-form-error [formGroup]=\"group\" [config]=\"config\"> </ieeesa-form-error>\r\n</div>\r\n", styles: [".ieeesa-subtitle{text-align:left;font-family:Calibri Regular;font-size:1.56em;letter-spacing:0;color:#000;opacity:1}.ieeesa-body{text-align:left;font-family:Calibri Regular;font-size:1.25em;letter-spacing:0;color:#000;opacity:1}.ieeesa-display-lg-57{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:3.5625em;line-height:64px;color:#000;letter-spacing:0}.ieeesa-display-md-47{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.9375em;line-height:52px;color:#000;letter-spacing:0}.ieeesa-display-sm-38{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.375em;line-height:44px;color:#000;letter-spacing:0}.ieeesa-headline-lg-34{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.125em;line-height:40px;color:#000;letter-spacing:0}.ieeesa-headline-md-30{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.875em;line-height:36px;color:#000;letter-spacing:0}.ieeesa-headline-sm-26{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.625em;line-height:32px;color:#000;letter-spacing:0}.ieeesa-title-lg-bold-24{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1.5em;line-height:28px;color:#000;letter-spacing:0}.ieeesa-title-lg-24{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.5em;line-height:28px;color:#000;letter-spacing:0}.ieeesa-title-md-18{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.125em;line-height:24px;color:#000;letter-spacing:.009375em}.ieeesa-title-sm-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-lg-bold-16{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-lg-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-md-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875em;line-height:16px;color:#000;letter-spacing:.03125em}.ieeesa-label-sm-13{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.8125em;line-height:16px;color:#000;letter-spacing:.03125em}.ieeesa-body-lg-bold-18{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1.125em;line-height:24px;color:#000;letter-spacing:.03125em}.ieeesa-body-lg-18{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.125em;line-height:24px;color:#000;letter-spacing:.03125em}.ieeesa-body-md-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1em;line-height:20px;color:#000;letter-spacing:.015625em}.ieeesa-body-sm-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875em;line-height:16px;color:#000;letter-spacing:.025em}.ieeesa-title-inter-lg-bold-24{font-family:Inter Bold;font-style:normal;font-weight:700;font-size:1.5em;line-height:29px;color:#000;letter-spacing:0}.mat-mdc-button.mat-mdc-button-base.mat-primary-button,.mat-mdc-button.mat-mdc-button-base.mat-secondary-button{min-width:103px;width:auto;min-height:40px;height:auto;border-radius:3px;text-align:center;padding:.625em 1.5em;border:none;font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.mat-mdc-button.mat-mdc-button-base>.mat-icon{margin-right:11px}.mat-mdc-button.mat-mdc-button-base.mat-primary-button{background-color:#00629b;color:#fff}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:hover{background-color:#003e65}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:active{background-color:#00629b}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:disabled{background-color:#1c1b1f1f}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button{color:#fff;background:#a7a8aa;box-shadow:0 1px 2px #0000004d,0 2px 6px 2px #00000026}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:hover{background:#a7a8aa}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:active{background:rgba(29,25,43,.12)}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:disabled{background:rgba(28,27,31,.12);color:#1c1b1f;opacity:.38}.ieeesa-text-button{color:#cac4d0;background:none;border:none}.flex-align-center{display:flex;align-items:center;justify-content:center}.mat-button-toggle-checked{background-color:#a7a8aa}.mat-button-toggle-checked .mat-button-toggle-label-content:before{font-family:\"Font Awesome 5 Free\";font-weight:900;content:\"\\f00c\";padding-right:.5625em}.mat-button-toggle-group .mat-button-toggle-label-content{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1em;line-height:20px;color:#1c1b1f;letter-spacing:.00625em}@media (max-width: 768px){.mat-button-toggle-group .mat-button-toggle-label-content{max-width:8ch;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;position:relative}}.cdk-overlay-pane{width:100%;min-width:312px}.ieeesa-input-field__warning-btn{display:none}.ieeesa-input-field__icon--clear,.ieeesa-input-field__icon--warning{height:20px;width:20px}.ieeesa-input-field__icon--warning{color:#ba0c2f}.ieeesa-input-field__btn--clear,.ieeesa-input-field__btn--warning{border:none;background-color:inherit}.ieeesa-input-field__content{font-family:Calibri Regular;font-size:1.125em}.ieeesa-input-field__label-left{display:flex}.ieeesa-input-field__label-top{display:block}.ieeesa-input-field .mat-mdc-form-field{min-height:52px;width:-webkit-fill-available}.ieeesa-input-field .mat-mdc-form-field-subscript-wrapper{display:none}.ieeesa-input-field .mat-mdc-text-field-wrapper{height:40px;min-width:210px;width:auto;background-color:#fffbfe;border-radius:4px 4px 0 0}.ieeesa-input-field .mat-mdc-form-field-focus-overlay{background-color:#fffbfe}.ieeesa-input-field .mdc-text-field--filled .mdc-line-ripple:after{border-bottom:2px solid #00b5e2;opacity:.5}.ieeesa-input-field .mdc-text-field--no-label:not(.mdc-text-field--outlined):not(.mdc-text-field--textarea) .mat-mdc-form-field-infix{padding-top:9px}.ieeesa-input-field .mat-mdc-form-field-icon-suffix,.ieeesa-input-field [dir=rtl] .mat-mdc-form-field-icon-prefix{padding:0 8px 16px 4px}.ieeesa-input-field:has(.mdc-line-ripple--active) .ieeesa-input-field__label{color:#00b5e2}.ieeesa-input-field:has(.mdc-line-ripple--active) .mat-mdc-form-field-focus-overlay{background-color:#1c1b1f;opacity:.2}.ieeesa-input-field:has(.mdc-text-field--invalid) .mdc-text-field--filled .mdc-line-ripple:after{border-bottom:2px solid #ba0c2f;opacity:.5}.ieeesa-input-field:has(.mdc-text-field--invalid) .ieeesa-input-field__btn--warning{display:block}.ieeesa-input-field:has(.mdc-text-field--invalid) .ieeesa-input-field__label{color:#ba0c2f}input::-webkit-outer-spin-button,input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i3.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: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i3.MinLengthValidator, selector: "[minlength][formControlName],[minlength][formControl],[minlength][ngModel]", inputs: ["minlength"] }, { kind: "directive", type: i3.MaxLengthValidator, selector: "[maxlength][formControlName],[maxlength][formControl],[maxlength][ngModel]", inputs: ["maxlength"] }, { kind: "directive", type: i3.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i3.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: FormErrorComponent, selector: "ieeesa-form-error", inputs: ["formGroup", "config", "submitResponse"] }, { kind: "ngmodule", type: MatInputModule }, { kind: "directive", type: i5.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "component", type: i4.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i4.MatLabel, selector: "mat-label" }, { kind: "directive", type: i4.MatSuffix, selector: "[matSuffix], [matIconSuffix], [matTextSuffix]", inputs: ["matTextSuffix"] }, { kind: "ngmodule", type: MatIconModule }], encapsulation: i0.ViewEncapsulation.None }); }
222
+ }
223
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: InputComponent, decorators: [{
224
+ type: Component,
225
+ args: [{ selector: 'ieeesa-input', standalone: true, imports: [
226
+ CommonModule,
227
+ ReactiveFormsModule,
228
+ FormErrorComponent,
229
+ MatInputModule,
230
+ MatIconModule,
231
+ ], encapsulation: ViewEncapsulation.None, template: "<div\r\n [formGroup]=\"group\"\r\n class=\"ieeesa-input-field\"\r\n [ngClass]=\"\r\n config.isLabelAlignedLeft\r\n ? 'ieeesa-input-field__label-left'\r\n : 'ieeesa-input-field__label-top'\r\n \"\r\n>\r\n <mat-label class=\"ieeesa-body-sm-14 ieeesa-input-field__label\">{{\r\n config.label\r\n }}</mat-label>\r\n <mat-form-field>\r\n <input\r\n class=\"ieeesa-input-field__content ieeesa-body-sm-14\"\r\n [type]=\"config.isNumber ? 'number' : 'text'\"\r\n [min]=\"config.min\"\r\n [max]=\"config.max\"\r\n [maxlength]=\"config.maxLength ?? ''\"\r\n [minlength]=\"config.minLength ?? ''\"\r\n [placeholder]=\"config.placeholder ?? ''\"\r\n [placeholder]=\"config.placeholder ?? ''\"\r\n [formControlName]=\"config.controlName\"\r\n [name]=\"config.controlName\"\r\n (keydown)=\"onKeyDown($event)\"\r\n (input)=\"onChange()\"\r\n autocomplete=\"off\"\r\n matInput\r\n />\r\n <button\r\n *ngIf=\"\r\n group.get(this.config.controlName)?.value &&\r\n group.get(this.config.controlName)?.valid\r\n \"\r\n matSuffix\r\n mat-icon-button\r\n [attr.aria-label]=\"buttonActionsInfo.ariaLabel.clear\"\r\n class=\"ieeesa-input-field__btn--clear\"\r\n (click)=\"clear()\"\r\n >\r\n <i class=\"fa-regular fa-circle-xmark ieeesa-input-field__icon--clear\"></i>\r\n </button>\r\n <button\r\n *ngIf=\"\r\n group.get(this.config.controlName)?.invalid &&\r\n group.get(this.config.controlName)?.dirty\r\n \"\r\n class=\"ieeesa-input-field__btn--warning\"\r\n matSuffix\r\n mat-icon-button\r\n [attr.aria-label]=\"buttonActionsInfo.ariaLabel.warning\"\r\n >\r\n <i\r\n class=\"fa-solid fa-circle-exclamation ieeesa-input-field__icon--warning\"\r\n ></i>\r\n </button>\r\n </mat-form-field>\r\n <ieeesa-form-error [formGroup]=\"group\" [config]=\"config\"> </ieeesa-form-error>\r\n</div>\r\n", styles: [".ieeesa-subtitle{text-align:left;font-family:Calibri Regular;font-size:1.56em;letter-spacing:0;color:#000;opacity:1}.ieeesa-body{text-align:left;font-family:Calibri Regular;font-size:1.25em;letter-spacing:0;color:#000;opacity:1}.ieeesa-display-lg-57{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:3.5625em;line-height:64px;color:#000;letter-spacing:0}.ieeesa-display-md-47{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.9375em;line-height:52px;color:#000;letter-spacing:0}.ieeesa-display-sm-38{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.375em;line-height:44px;color:#000;letter-spacing:0}.ieeesa-headline-lg-34{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.125em;line-height:40px;color:#000;letter-spacing:0}.ieeesa-headline-md-30{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.875em;line-height:36px;color:#000;letter-spacing:0}.ieeesa-headline-sm-26{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.625em;line-height:32px;color:#000;letter-spacing:0}.ieeesa-title-lg-bold-24{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1.5em;line-height:28px;color:#000;letter-spacing:0}.ieeesa-title-lg-24{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.5em;line-height:28px;color:#000;letter-spacing:0}.ieeesa-title-md-18{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.125em;line-height:24px;color:#000;letter-spacing:.009375em}.ieeesa-title-sm-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-lg-bold-16{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-lg-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-md-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875em;line-height:16px;color:#000;letter-spacing:.03125em}.ieeesa-label-sm-13{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.8125em;line-height:16px;color:#000;letter-spacing:.03125em}.ieeesa-body-lg-bold-18{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1.125em;line-height:24px;color:#000;letter-spacing:.03125em}.ieeesa-body-lg-18{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.125em;line-height:24px;color:#000;letter-spacing:.03125em}.ieeesa-body-md-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1em;line-height:20px;color:#000;letter-spacing:.015625em}.ieeesa-body-sm-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875em;line-height:16px;color:#000;letter-spacing:.025em}.ieeesa-title-inter-lg-bold-24{font-family:Inter Bold;font-style:normal;font-weight:700;font-size:1.5em;line-height:29px;color:#000;letter-spacing:0}.mat-mdc-button.mat-mdc-button-base.mat-primary-button,.mat-mdc-button.mat-mdc-button-base.mat-secondary-button{min-width:103px;width:auto;min-height:40px;height:auto;border-radius:3px;text-align:center;padding:.625em 1.5em;border:none;font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.mat-mdc-button.mat-mdc-button-base>.mat-icon{margin-right:11px}.mat-mdc-button.mat-mdc-button-base.mat-primary-button{background-color:#00629b;color:#fff}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:hover{background-color:#003e65}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:active{background-color:#00629b}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:disabled{background-color:#1c1b1f1f}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button{color:#fff;background:#a7a8aa;box-shadow:0 1px 2px #0000004d,0 2px 6px 2px #00000026}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:hover{background:#a7a8aa}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:active{background:rgba(29,25,43,.12)}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:disabled{background:rgba(28,27,31,.12);color:#1c1b1f;opacity:.38}.ieeesa-text-button{color:#cac4d0;background:none;border:none}.flex-align-center{display:flex;align-items:center;justify-content:center}.mat-button-toggle-checked{background-color:#a7a8aa}.mat-button-toggle-checked .mat-button-toggle-label-content:before{font-family:\"Font Awesome 5 Free\";font-weight:900;content:\"\\f00c\";padding-right:.5625em}.mat-button-toggle-group .mat-button-toggle-label-content{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1em;line-height:20px;color:#1c1b1f;letter-spacing:.00625em}@media (max-width: 768px){.mat-button-toggle-group .mat-button-toggle-label-content{max-width:8ch;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;position:relative}}.cdk-overlay-pane{width:100%;min-width:312px}.ieeesa-input-field__warning-btn{display:none}.ieeesa-input-field__icon--clear,.ieeesa-input-field__icon--warning{height:20px;width:20px}.ieeesa-input-field__icon--warning{color:#ba0c2f}.ieeesa-input-field__btn--clear,.ieeesa-input-field__btn--warning{border:none;background-color:inherit}.ieeesa-input-field__content{font-family:Calibri Regular;font-size:1.125em}.ieeesa-input-field__label-left{display:flex}.ieeesa-input-field__label-top{display:block}.ieeesa-input-field .mat-mdc-form-field{min-height:52px;width:-webkit-fill-available}.ieeesa-input-field .mat-mdc-form-field-subscript-wrapper{display:none}.ieeesa-input-field .mat-mdc-text-field-wrapper{height:40px;min-width:210px;width:auto;background-color:#fffbfe;border-radius:4px 4px 0 0}.ieeesa-input-field .mat-mdc-form-field-focus-overlay{background-color:#fffbfe}.ieeesa-input-field .mdc-text-field--filled .mdc-line-ripple:after{border-bottom:2px solid #00b5e2;opacity:.5}.ieeesa-input-field .mdc-text-field--no-label:not(.mdc-text-field--outlined):not(.mdc-text-field--textarea) .mat-mdc-form-field-infix{padding-top:9px}.ieeesa-input-field .mat-mdc-form-field-icon-suffix,.ieeesa-input-field [dir=rtl] .mat-mdc-form-field-icon-prefix{padding:0 8px 16px 4px}.ieeesa-input-field:has(.mdc-line-ripple--active) .ieeesa-input-field__label{color:#00b5e2}.ieeesa-input-field:has(.mdc-line-ripple--active) .mat-mdc-form-field-focus-overlay{background-color:#1c1b1f;opacity:.2}.ieeesa-input-field:has(.mdc-text-field--invalid) .mdc-text-field--filled .mdc-line-ripple:after{border-bottom:2px solid #ba0c2f;opacity:.5}.ieeesa-input-field:has(.mdc-text-field--invalid) .ieeesa-input-field__btn--warning{display:block}.ieeesa-input-field:has(.mdc-text-field--invalid) .ieeesa-input-field__label{color:#ba0c2f}input::-webkit-outer-spin-button,input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}\n"] }]
232
+ }] });
233
+
234
+ var FormControlType;
235
+ (function (FormControlType) {
236
+ // eslint-disable-next-line no-unused-vars
237
+ FormControlType["INPUT"] = "INPUT";
238
+ // eslint-disable-next-line no-unused-vars
239
+ FormControlType["TEXT_AREA"] = "TEXT_AREA";
240
+ // eslint-disable-next-line no-unused-vars
241
+ FormControlType["SELECT"] = "SELECT";
242
+ // eslint-disable-next-line no-unused-vars
243
+ FormControlType["SEARCH"] = "SEARCH";
244
+ // eslint-disable-next-line no-unused-vars
245
+ FormControlType["DATE"] = "DATE";
246
+ // eslint-disable-next-line no-unused-vars
247
+ FormControlType["CHECKBOX"] = "CHECKBOX";
248
+ // eslint-disable-next-line no-unused-vars
249
+ FormControlType["RADIO"] = "RADIO";
250
+ // eslint-disable-next-line no-unused-vars
251
+ FormControlType["AUTO_COMPLETE"] = "AUTO_COMPLETE";
252
+ })(FormControlType || (FormControlType = {}));
253
+
254
+ /**
255
+ * Creates form fields configuration and form group based on passed parameters.
256
+ * @export
257
+ * @class FormUtilityService
258
+ */
259
+ class FormUtilityService {
260
+ // eslint-disable-next-line no-unused-vars, no-empty-function
261
+ constructor(fb) {
262
+ this.fb = fb;
83
263
  }
84
264
  /**
85
- * Sets search response on form search event
86
- * @memberof DynamicFormComponent
265
+ * Returns form fields configuration based on passed control name and type.
266
+ * @param {string} controlName
267
+ * @param {string} controlType
268
+ * @return {FieldConfig}
269
+ * @memberof FormUtilityService
87
270
  */
88
- set searchResponse(value) {
89
- this._searchResponse = value;
271
+ getFormFieldConfig(controlName, controlType) {
272
+ return {
273
+ controlName: controlName,
274
+ type: controlType,
275
+ };
90
276
  }
91
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
92
- get searchResponse() {
93
- return this._searchResponse;
277
+ /**
278
+ * Creates and returns form group with passed control name added.
279
+ * @param {string} controlName
280
+ * @return {FormGroup}
281
+ * @memberof FormUtilityService
282
+ */
283
+ getFormGroup(controlName) {
284
+ return this.fb.group({
285
+ [controlName]: [],
286
+ });
94
287
  }
288
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: FormUtilityService, deps: [{ token: i3.FormBuilder }], target: i0.ɵɵFactoryTarget.Injectable }); }
289
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: FormUtilityService, providedIn: 'root' }); }
290
+ }
291
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: FormUtilityService, decorators: [{
292
+ type: Injectable,
293
+ args: [{
294
+ providedIn: 'root',
295
+ }]
296
+ }], ctorParameters: function () { return [{ type: i3.FormBuilder }]; } });
297
+
298
+ /**
299
+ * Provides auto suggestion for the entered input by filtering the options from the given list of options.
300
+ * @export
301
+ * @class AutocompleteComponent
302
+ * @implements {OnInit}
303
+ * @implements {FormField}
304
+ * @implements {OnDestroy}
305
+ */
306
+ class AutocompleteComponent {
95
307
  // eslint-disable-next-line no-unused-vars, no-empty-function
96
- constructor(fb) {
97
- this.fb = fb;
98
- this.isSubmitButtonDisabled = false;
99
- this.isLeftButtonDisabled = false;
100
- this.isLeftButtonNeeded = false;
101
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
102
- this.formSubmit = new EventEmitter();
103
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
104
- this.formChange = new EventEmitter();
105
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
106
- this.formInput = new EventEmitter();
107
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
108
- this.formLeftButtonClicked = new EventEmitter();
109
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
110
- this.formSearchApply = new EventEmitter();
111
- this.formGroupsReference = new EventEmitter();
112
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
113
- this.dropdownChange = new EventEmitter();
114
- this.formDateSelected = new EventEmitter();
115
- this.formSelectSearch = new EventEmitter();
116
- this.formControlChange = new EventEmitter();
117
- this.formAutoCompleteSearch = new EventEmitter();
308
+ constructor(formUtilityService) {
309
+ this.formUtilityService = formUtilityService;
310
+ this.value = '';
311
+ this.filteredOptions = [];
312
+ this.isSelectedOptionsVisible = true;
313
+ this.autoCompleteSearchValue = new EventEmitter();
118
314
  this.autoCompleteOptionSelected = new EventEmitter();
119
- this.formAfterContentInit = new EventEmitter();
120
- this.formSelectedDateRange = new EventEmitter();
121
- this.formGroupArray = [];
315
+ this.destroy$ = new Subject();
122
316
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
123
- this.formControlArray = [];
124
- this.legendsArray = [];
317
+ this.autocompleteConstInfo = constantsInfo;
318
+ this.optionsToFilter = [];
125
319
  }
126
320
  /**
127
- * Implementation of ngOnInit lifecycle hook method to create form group
128
- * @memberof DynamicFormComponent
321
+ * Implementation of ngOnInit lifecycle hook method to initialize components instance properties.
322
+ * @memberof AutocompleteComponent
129
323
  */
130
324
  ngOnInit() {
131
- this.createFormGroupArray();
132
- }
133
- /**
134
- * Emit generated form reference on ngAfterContentInit lifecycle hook.
135
- * @memberof DynamicFormComponent
136
- */
137
- ngAfterContentInit() {
138
- this.formAfterContentInit.emit(this.formGroupArray);
325
+ this.config =
326
+ this.config ??
327
+ this.formUtilityService.getFormFieldConfig('autocomplete', FormControlType.AUTO_COMPLETE);
328
+ this.group =
329
+ this.group ?? this.formUtilityService.getFormGroup('autocomplete');
330
+ this.filteredOptions =
331
+ this.config?.autoCompleteOptions ?? this.filteredOptions;
332
+ this.optionsToFilter = this.filteredOptions;
139
333
  }
140
334
  /**
141
- * Creates form group on the basis of formGroups configuration input
142
- * @return {void}
143
- * @memberof DynamicFormComponent
335
+ * Filters the options on form control value changes.
336
+ * @memberof AutocompleteComponent
144
337
  */
145
- createFormGroupArray() {
146
- this.formGroupArray = [];
147
- this.formControlArray = [];
148
- this.legendsArray = [];
149
- if (!this.formGroups) {
150
- return;
151
- }
152
- this.formGroups?.formGroup?.forEach((element) => {
153
- const controls = element.controls.filter((control) => control.type !== 'button');
154
- this.formGroupArray.push(this.createGroup(controls));
155
- this.formControlArray.push(controls);
156
- this.legendsArray.push(element.legend);
157
- });
158
- this.form = this.fb.group({
159
- children: this.formGroupArray,
338
+ filterOptions() {
339
+ this.group?.controls[this.config?.controlName]?.valueChanges
340
+ .pipe(
341
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
342
+ filter(
343
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
344
+ (res) => res.length >=
345
+ this.autocompleteConstInfo.autocomplete.minCharToSearch ||
346
+ res.length === 0), debounceTime(this.autocompleteConstInfo.autocomplete.debounceTime), distinctUntilChanged())
347
+ .pipe(takeUntil(this.destroy$))
348
+ .subscribe((text) => {
349
+ const options = this.optionsToFilter?.filter((item) => item.name.toLowerCase().includes(text.toLowerCase()));
350
+ this.filteredOptions = options ?? this.optionsToFilter;
351
+ this.autoCompleteSearchValue.emit(text);
160
352
  });
161
- this.formGroupsReference.emit(this.formGroupArray);
162
353
  }
163
354
  /**
164
- * Creates form group using form builder
165
- * @param {any[]} controls
166
- * @return {FormGroup}
167
- * @memberof DynamicFormComponent
355
+ * Emits the selected option name when the form on change event is triggered and returns option name.
356
+ * @param {AutoCompleteOption} data // data is an selected option of filteredOptions.
357
+ * @return {string} // Returns selected option name as string
358
+ * @memberof AutocompleteComponent
168
359
  */
169
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
170
- createGroup(controls) {
171
- const group = this.fb.group({});
172
- controls.forEach((control) => group.addControl(control.controlName, this.createControl(control)));
173
- return group;
360
+ onChange(data) {
361
+ this.autoCompleteOptionSelected.emit(data.name);
362
+ return data.name;
174
363
  }
175
364
  /**
176
- * Creates form control based on form field configuration
177
- * @param {FieldConfig} control
178
- * @return {FormControl}
179
- * @memberof DynamicFormComponent
365
+ * Takes the index and the current item as arguments and needs to return the unique identifier for this item.
366
+ * @param {number} index
367
+ * @param {SelectOption} option
368
+ * @return {(number | string)}
369
+ * @memberof AutocompleteComponent
180
370
  */
181
- createControl(control) {
182
- const { disabled, validation, value } = control;
183
- return this.fb.control({ disabled, value }, validation);
371
+ trackByFn(index, option) {
372
+ return option.id;
184
373
  }
185
374
  /**
186
- * Emits formGroupArray
187
- * @memberof DynamicFormComponent
375
+ * Implementation of ngOnDestroy lifecycle hook method to unsubscribe the open observable subscriptions.
376
+ * @memberof AutocompleteComponent
188
377
  */
189
- onFormSubmit() {
190
- this.formSubmit.emit(this.formGroupArray);
378
+ ngOnDestroy() {
379
+ this.destroy$.next(true);
380
+ this.destroy$.unsubscribe();
191
381
  }
382
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: AutocompleteComponent, deps: [{ token: FormUtilityService }], target: i0.ɵɵFactoryTarget.Component }); }
383
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.3", type: AutocompleteComponent, isStandalone: true, selector: "ieeesa-autocomplete", inputs: { filteredOptions: "filteredOptions", isSelectedOptionsVisible: "isSelectedOptionsVisible" }, outputs: { autoCompleteSearchValue: "autoCompleteSearchValue", autoCompleteOptionSelected: "autoCompleteOptionSelected" }, providers: [
384
+ {
385
+ provide: MAT_AUTOCOMPLETE_DEFAULT_OPTIONS,
386
+ useValue: { overlayPanelClass: 'ieeesa-autocomplete-overlay-pane' },
387
+ },
388
+ ], viewQueries: [{ propertyName: "autoComplete", first: true, predicate: ["autoComplete"], descendants: true }], ngImport: i0, template: "<div\r\n class=\"ieeesa-autocomplete\"\r\n [formGroup]=\"group\"\r\n *ngIf=\"group\"\r\n [ngClass]=\"\r\n config.isLabelAlignedLeft\r\n ? 'ieeesa-autocomplete-field__label-left'\r\n : 'ieeesa-autocomplete-field__label-top'\r\n \"\r\n>\r\n <mat-label class=\"ieeesa-autocomplete__label\">{{ config.label }}</mat-label>\r\n <mat-form-field class=\"ieeesa-autocomplete__mat-form\" appearance=\"outline\">\r\n <input\r\n matInput\r\n class=\"ieeesa-autocomplete__input\"\r\n [matAutocomplete]=\"auto\"\r\n [placeholder]=\"config.placeholder ?? ''\"\r\n [formControlName]=\"config.controlName\"\r\n [name]=\"config.controlName\"\r\n #autoComplete\r\n (keypress)=\"filterOptions()\"\r\n />\r\n <mat-autocomplete\r\n #auto=\"matAutocomplete\"\r\n (optionSelected)=\"onChange($event.option.value)\"\r\n class=\"ieeesa-autocomplete__autocomplete-list\"\r\n >\r\n <ng-container *ngIf=\"isSelectedOptionsVisible\">\r\n <mat-option\r\n *ngFor=\"let option of filteredOptions; trackBy: trackByFn\"\r\n [value]=\"option.name\"\r\n >\r\n <span>{{ option.name }}</span>\r\n </mat-option>\r\n </ng-container>\r\n </mat-autocomplete>\r\n <button\r\n type=\"button\"\r\n matSuffix\r\n mat-icon-button\r\n [attr.aria-label]=\"autocompleteConstInfo.ariaLabel.clear\"\r\n *ngIf=\"value\"\r\n (click)=\"value = ''\"\r\n >\r\n <i class=\"fa-solid fa-xmark ieeesa-autocomplete__cancel-icon\"></i>\r\n </button>\r\n </mat-form-field>\r\n</div>\r\n", styles: [".ieeesa-subtitle{text-align:left;font-family:Calibri Regular;font-size:1.56em;letter-spacing:0;color:#000;opacity:1}.ieeesa-body{text-align:left;font-family:Calibri Regular;font-size:1.25em;letter-spacing:0;color:#000;opacity:1}.ieeesa-display-lg-57{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:3.5625em;line-height:64px;color:#000;letter-spacing:0}.ieeesa-display-md-47{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.9375em;line-height:52px;color:#000;letter-spacing:0}.ieeesa-display-sm-38{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.375em;line-height:44px;color:#000;letter-spacing:0}.ieeesa-headline-lg-34{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.125em;line-height:40px;color:#000;letter-spacing:0}.ieeesa-headline-md-30{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.875em;line-height:36px;color:#000;letter-spacing:0}.ieeesa-headline-sm-26{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.625em;line-height:32px;color:#000;letter-spacing:0}.ieeesa-title-lg-bold-24{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1.5em;line-height:28px;color:#000;letter-spacing:0}.ieeesa-title-lg-24{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.5em;line-height:28px;color:#000;letter-spacing:0}.ieeesa-title-md-18{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.125em;line-height:24px;color:#000;letter-spacing:.009375em}.ieeesa-title-sm-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-lg-bold-16{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-lg-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-md-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875em;line-height:16px;color:#000;letter-spacing:.03125em}.ieeesa-label-sm-13{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.8125em;line-height:16px;color:#000;letter-spacing:.03125em}.ieeesa-body-lg-bold-18{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1.125em;line-height:24px;color:#000;letter-spacing:.03125em}.ieeesa-body-lg-18{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.125em;line-height:24px;color:#000;letter-spacing:.03125em}.ieeesa-body-md-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1em;line-height:20px;color:#000;letter-spacing:.015625em}.ieeesa-body-sm-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875em;line-height:16px;color:#000;letter-spacing:.025em}.ieeesa-title-inter-lg-bold-24{font-family:Inter Bold;font-style:normal;font-weight:700;font-size:1.5em;line-height:29px;color:#000;letter-spacing:0}.mat-mdc-button.mat-mdc-button-base.mat-primary-button,.mat-mdc-button.mat-mdc-button-base.mat-secondary-button{min-width:103px;width:auto;min-height:40px;height:auto;border-radius:3px;text-align:center;padding:.625em 1.5em;border:none;font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.mat-mdc-button.mat-mdc-button-base>.mat-icon{margin-right:11px}.mat-mdc-button.mat-mdc-button-base.mat-primary-button{background-color:#00629b;color:#fff}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:hover{background-color:#003e65}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:active{background-color:#00629b}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:disabled{background-color:#1c1b1f1f}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button{color:#fff;background:#a7a8aa;box-shadow:0 1px 2px #0000004d,0 2px 6px 2px #00000026}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:hover{background:#a7a8aa}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:active{background:rgba(29,25,43,.12)}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:disabled{background:rgba(28,27,31,.12);color:#1c1b1f;opacity:.38}.ieeesa-text-button{color:#cac4d0;background:none;border:none}.flex-align-center{display:flex;align-items:center;justify-content:center}.mat-button-toggle-checked{background-color:#a7a8aa}.mat-button-toggle-checked .mat-button-toggle-label-content:before{font-family:\"Font Awesome 5 Free\";font-weight:900;content:\"\\f00c\";padding-right:.5625em}.mat-button-toggle-group .mat-button-toggle-label-content{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1em;line-height:20px;color:#1c1b1f;letter-spacing:.00625em}@media (max-width: 768px){.mat-button-toggle-group .mat-button-toggle-label-content{max-width:8ch;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;position:relative}}.cdk-overlay-pane{width:100%;min-width:312px}.ieeesa-autocomplete__label-left{display:flex}.ieeesa-autocomplete__label-top{display:block}.ieeesa-autocomplete__cancel-icon{height:20px;width:20px}.ieeesa-autocomplete .mat-mdc-form-field{border-radius:4px 4px 0 0;width:-webkit-fill-available}.ieeesa-autocomplete .mat-mdc-form-field .mdc-text-field--outlined .mdc-floating-label--float-above{color:#00b5e2}.ieeesa-autocomplete .mat-focused .mat-mdc-form-field{caret-color:#00b5e2}.ieeesa-autocomplete .mat-focused .mdc-notched-outline__leading,.ieeesa-autocomplete .mat-focused .mdc-notched-outline__trailing,.ieeesa-autocomplete .mat-focused .mdc-notched-outline__notch{border-color:#00b5e2}.ieeesa-autocomplete .mat-mdc-text-field-wrapper{min-width:12.5em;width:auto;height:3.5em;flex:auto}.ieeesa-autocomplete .mat-mdc-form-field-subscript-wrapper{width:0px;position:relative;height:0px}.ieeesa-autocomplete-overlay-pane .mat-mdc-autocomplete-panel{padding:8px 0;background:linear-gradient(0deg,rgba(0,98,155,.0784313725),rgba(0,98,155,.0784313725)),#fffbfe;box-shadow:0 1px 2px #0000004d,0 2px 6px 2px #00000026;border-radius:4px}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i3.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: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i3.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i3.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "ngmodule", type: MatOptionModule }, { kind: "component", type: i2$1.MatOption, selector: "mat-option", exportAs: ["matOption"] }, { kind: "ngmodule", type: MatAutocompleteModule }, { kind: "component", type: i5$1.MatAutocomplete, selector: "mat-autocomplete", inputs: ["disableRipple", "hideSingleSelectionIndicator"], exportAs: ["matAutocomplete"] }, { kind: "directive", type: i5$1.MatAutocompleteTrigger, selector: "input[matAutocomplete], textarea[matAutocomplete]", exportAs: ["matAutocompleteTrigger"] }, { kind: "ngmodule", type: MatInputModule }, { kind: "directive", type: i5.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "component", type: i4.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i4.MatLabel, selector: "mat-label" }, { kind: "directive", type: i4.MatSuffix, selector: "[matSuffix], [matIconSuffix], [matTextSuffix]", inputs: ["matTextSuffix"] }, { kind: "ngmodule", type: MatIconModule }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i8.MatIconButton, selector: "button[mat-icon-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }], encapsulation: i0.ViewEncapsulation.None }); }
389
+ }
390
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: AutocompleteComponent, decorators: [{
391
+ type: Component,
392
+ args: [{ selector: 'ieeesa-autocomplete', standalone: true, imports: [
393
+ CommonModule,
394
+ ReactiveFormsModule,
395
+ FormErrorComponent,
396
+ MatOptionModule,
397
+ MatAutocompleteModule,
398
+ MatInputModule,
399
+ MatIconModule,
400
+ MatButtonModule,
401
+ ], providers: [
402
+ {
403
+ provide: MAT_AUTOCOMPLETE_DEFAULT_OPTIONS,
404
+ useValue: { overlayPanelClass: 'ieeesa-autocomplete-overlay-pane' },
405
+ },
406
+ ], encapsulation: ViewEncapsulation.None, template: "<div\r\n class=\"ieeesa-autocomplete\"\r\n [formGroup]=\"group\"\r\n *ngIf=\"group\"\r\n [ngClass]=\"\r\n config.isLabelAlignedLeft\r\n ? 'ieeesa-autocomplete-field__label-left'\r\n : 'ieeesa-autocomplete-field__label-top'\r\n \"\r\n>\r\n <mat-label class=\"ieeesa-autocomplete__label\">{{ config.label }}</mat-label>\r\n <mat-form-field class=\"ieeesa-autocomplete__mat-form\" appearance=\"outline\">\r\n <input\r\n matInput\r\n class=\"ieeesa-autocomplete__input\"\r\n [matAutocomplete]=\"auto\"\r\n [placeholder]=\"config.placeholder ?? ''\"\r\n [formControlName]=\"config.controlName\"\r\n [name]=\"config.controlName\"\r\n #autoComplete\r\n (keypress)=\"filterOptions()\"\r\n />\r\n <mat-autocomplete\r\n #auto=\"matAutocomplete\"\r\n (optionSelected)=\"onChange($event.option.value)\"\r\n class=\"ieeesa-autocomplete__autocomplete-list\"\r\n >\r\n <ng-container *ngIf=\"isSelectedOptionsVisible\">\r\n <mat-option\r\n *ngFor=\"let option of filteredOptions; trackBy: trackByFn\"\r\n [value]=\"option.name\"\r\n >\r\n <span>{{ option.name }}</span>\r\n </mat-option>\r\n </ng-container>\r\n </mat-autocomplete>\r\n <button\r\n type=\"button\"\r\n matSuffix\r\n mat-icon-button\r\n [attr.aria-label]=\"autocompleteConstInfo.ariaLabel.clear\"\r\n *ngIf=\"value\"\r\n (click)=\"value = ''\"\r\n >\r\n <i class=\"fa-solid fa-xmark ieeesa-autocomplete__cancel-icon\"></i>\r\n </button>\r\n </mat-form-field>\r\n</div>\r\n", styles: [".ieeesa-subtitle{text-align:left;font-family:Calibri Regular;font-size:1.56em;letter-spacing:0;color:#000;opacity:1}.ieeesa-body{text-align:left;font-family:Calibri Regular;font-size:1.25em;letter-spacing:0;color:#000;opacity:1}.ieeesa-display-lg-57{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:3.5625em;line-height:64px;color:#000;letter-spacing:0}.ieeesa-display-md-47{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.9375em;line-height:52px;color:#000;letter-spacing:0}.ieeesa-display-sm-38{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.375em;line-height:44px;color:#000;letter-spacing:0}.ieeesa-headline-lg-34{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.125em;line-height:40px;color:#000;letter-spacing:0}.ieeesa-headline-md-30{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.875em;line-height:36px;color:#000;letter-spacing:0}.ieeesa-headline-sm-26{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.625em;line-height:32px;color:#000;letter-spacing:0}.ieeesa-title-lg-bold-24{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1.5em;line-height:28px;color:#000;letter-spacing:0}.ieeesa-title-lg-24{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.5em;line-height:28px;color:#000;letter-spacing:0}.ieeesa-title-md-18{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.125em;line-height:24px;color:#000;letter-spacing:.009375em}.ieeesa-title-sm-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-lg-bold-16{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-lg-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-md-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875em;line-height:16px;color:#000;letter-spacing:.03125em}.ieeesa-label-sm-13{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.8125em;line-height:16px;color:#000;letter-spacing:.03125em}.ieeesa-body-lg-bold-18{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1.125em;line-height:24px;color:#000;letter-spacing:.03125em}.ieeesa-body-lg-18{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.125em;line-height:24px;color:#000;letter-spacing:.03125em}.ieeesa-body-md-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1em;line-height:20px;color:#000;letter-spacing:.015625em}.ieeesa-body-sm-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875em;line-height:16px;color:#000;letter-spacing:.025em}.ieeesa-title-inter-lg-bold-24{font-family:Inter Bold;font-style:normal;font-weight:700;font-size:1.5em;line-height:29px;color:#000;letter-spacing:0}.mat-mdc-button.mat-mdc-button-base.mat-primary-button,.mat-mdc-button.mat-mdc-button-base.mat-secondary-button{min-width:103px;width:auto;min-height:40px;height:auto;border-radius:3px;text-align:center;padding:.625em 1.5em;border:none;font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.mat-mdc-button.mat-mdc-button-base>.mat-icon{margin-right:11px}.mat-mdc-button.mat-mdc-button-base.mat-primary-button{background-color:#00629b;color:#fff}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:hover{background-color:#003e65}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:active{background-color:#00629b}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:disabled{background-color:#1c1b1f1f}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button{color:#fff;background:#a7a8aa;box-shadow:0 1px 2px #0000004d,0 2px 6px 2px #00000026}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:hover{background:#a7a8aa}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:active{background:rgba(29,25,43,.12)}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:disabled{background:rgba(28,27,31,.12);color:#1c1b1f;opacity:.38}.ieeesa-text-button{color:#cac4d0;background:none;border:none}.flex-align-center{display:flex;align-items:center;justify-content:center}.mat-button-toggle-checked{background-color:#a7a8aa}.mat-button-toggle-checked .mat-button-toggle-label-content:before{font-family:\"Font Awesome 5 Free\";font-weight:900;content:\"\\f00c\";padding-right:.5625em}.mat-button-toggle-group .mat-button-toggle-label-content{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1em;line-height:20px;color:#1c1b1f;letter-spacing:.00625em}@media (max-width: 768px){.mat-button-toggle-group .mat-button-toggle-label-content{max-width:8ch;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;position:relative}}.cdk-overlay-pane{width:100%;min-width:312px}.ieeesa-autocomplete__label-left{display:flex}.ieeesa-autocomplete__label-top{display:block}.ieeesa-autocomplete__cancel-icon{height:20px;width:20px}.ieeesa-autocomplete .mat-mdc-form-field{border-radius:4px 4px 0 0;width:-webkit-fill-available}.ieeesa-autocomplete .mat-mdc-form-field .mdc-text-field--outlined .mdc-floating-label--float-above{color:#00b5e2}.ieeesa-autocomplete .mat-focused .mat-mdc-form-field{caret-color:#00b5e2}.ieeesa-autocomplete .mat-focused .mdc-notched-outline__leading,.ieeesa-autocomplete .mat-focused .mdc-notched-outline__trailing,.ieeesa-autocomplete .mat-focused .mdc-notched-outline__notch{border-color:#00b5e2}.ieeesa-autocomplete .mat-mdc-text-field-wrapper{min-width:12.5em;width:auto;height:3.5em;flex:auto}.ieeesa-autocomplete .mat-mdc-form-field-subscript-wrapper{width:0px;position:relative;height:0px}.ieeesa-autocomplete-overlay-pane .mat-mdc-autocomplete-panel{padding:8px 0;background:linear-gradient(0deg,rgba(0,98,155,.0784313725),rgba(0,98,155,.0784313725)),#fffbfe;box-shadow:0 1px 2px #0000004d,0 2px 6px 2px #00000026;border-radius:4px}\n"] }]
407
+ }], ctorParameters: function () { return [{ type: FormUtilityService }]; }, propDecorators: { filteredOptions: [{
408
+ type: Input
409
+ }], isSelectedOptionsVisible: [{
410
+ type: Input
411
+ }], autoCompleteSearchValue: [{
412
+ type: Output
413
+ }], autoCompleteOptionSelected: [{
414
+ type: Output
415
+ }], autoComplete: [{
416
+ type: ViewChild,
417
+ args: ['autoComplete']
418
+ }] } });
419
+
420
+ /**
421
+ * Provides implementation of all types of checkboxes.
422
+ * @export
423
+ * @class CheckboxComponent
424
+ * @implements {OnInit}
425
+ * @implements {FormField}
426
+ */
427
+ class CheckboxComponent {
192
428
  /**
193
- * Emits formGroupArray
194
- * @memberof DynamicFormComponent
429
+ * Input property to get checkbox options.
430
+ * @memberof CheckboxComponent
431
+ * @usageNotes const checkboxes = [{ id: 1, name:"Angular"}]
195
432
  */
196
- onLeftButtonClicked() {
197
- this.formLeftButtonClicked.emit(this.formGroupArray);
433
+ set checkboxes(value) {
434
+ this._checkboxes = value;
198
435
  }
199
- /**
200
- * Emits formGroupArray
201
- * @memberof DynamicFormComponent
202
- */
203
- onFormChange() {
204
- this.formChange.emit(this.formGroupArray);
436
+ get checkboxes() {
437
+ return this._checkboxes;
205
438
  }
206
- /**
207
- * Handles form field select type drop down selection event
208
- * @memberof DynamicFormComponent
209
- */
210
- onDropdownChange() {
211
- this.dropdownChange.emit(this.formGroupArray);
439
+ // eslint-disable-next-line no-unused-vars, no-empty-function
440
+ constructor(formUtilityService) {
441
+ this.formUtilityService = formUtilityService;
442
+ this.checkboxSelection = new EventEmitter();
212
443
  }
213
444
  /**
214
- * Handles form input change event
215
- * @param {Event} event
216
- * @memberof DynamicFormComponent
445
+ * Implementation of ngOnInit lifecycle hook method of component to initialize component instance properties.
446
+ * @memberof CheckboxComponent
217
447
  */
218
- formInputChange(event) {
219
- this.formControlChange.emit(event);
220
- this.formInput.emit(this.formGroupArray);
448
+ ngOnInit() {
449
+ this.createFormGroupAndInitializeProperties();
221
450
  }
222
451
  /**
223
- * Handles form field search apply event
224
- * @param {Event} event
225
- * @memberof DynamicFormComponent
452
+ * Creates form group and initializes components properties from config.
453
+ * @memberof CheckboxComponent
226
454
  */
227
- onSearchApply(event) {
228
- this.formSearchApply.emit(event);
455
+ createFormGroupAndInitializeProperties() {
456
+ this.checkboxes = this.config?.checkboxOptions ?? this.checkboxes;
457
+ this.group = this.group ?? this.formUtilityService.getFormGroup('checkbox');
458
+ this.checkboxes?.forEach((checkbox) => {
459
+ this.group.addControl(checkbox.id, new FormControl({
460
+ value: checkbox.checked,
461
+ disabled: checkbox.disabled,
462
+ }));
463
+ });
229
464
  }
230
465
  /**
231
- * Handles search event inside form field select
232
- * @param {Event} event
233
- * @memberof DynamicFormComponent
466
+ * Sets checkbox selection and emits selected option on change event.
467
+ * @param {CheckboxOption} option
468
+ * @param {boolean} checked
469
+ * @memberof CheckboxComponent
234
470
  */
235
- onSelectSearch(event) {
236
- this.formSelectSearch.emit(event);
471
+ onChange(option, checked) {
472
+ option.checked = checked;
473
+ this.checkboxSelection.emit(option);
237
474
  }
238
475
  /**
239
- * Takes the index and the formGroup as arguments and needs to return the unique identifier for this formGroup.
476
+ * Allows Angular to detect the specific checkbox option that needs to change or be added instead of rebuilding the whole checkbox options in DOM by tracking option unique Id.
240
477
  * @param {number} index
241
- * @param {FormGroup} formGroup
242
- * @memberof DynamicFormComponent
478
+ * @return {number}
479
+ * @memberof CheckboxComponent
243
480
  */
244
- trackByFormGroup(index, formGroup) {
245
- return formGroup.controls;
481
+ trackById(index, option) {
482
+ return option.id;
246
483
  }
247
- /**
248
- * Handles form date selection event
249
- * @param {string[]} event
250
- * @memberof DynamicFormComponent
251
- */
252
- onDateSelected(event) {
253
- this.formDateSelected.emit(event);
484
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: CheckboxComponent, deps: [{ token: FormUtilityService }], target: i0.ɵɵFactoryTarget.Component }); }
485
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.3", type: CheckboxComponent, isStandalone: true, selector: "ieeesa-checkbox", inputs: { checkboxes: "checkboxes" }, outputs: { checkboxSelection: "checkboxSelection" }, ngImport: i0, template: "<div\r\n [formGroup]=\"group\"\r\n class=\"ieeesa-checkbox-field\"\r\n *ngIf=\"group\"\r\n [ngClass]=\"\r\n config.isLabelAlignedLeft\r\n ? 'ieeesa-checkbox-field__label-left'\r\n : 'ieeesa-checkbox-field__label-top'\r\n \"\r\n>\r\n <mat-label class=\"ieeesa-body-sm-14 ieeesa-checkbox-field__label\">{{\r\n config.label\r\n }}</mat-label>\r\n <mat-list>\r\n <mat-checkbox\r\n *ngFor=\"let option of checkboxes; trackBy: trackById\"\r\n [formControlName]=\"option.id\"\r\n (change)=\"onChange(option, true)\"\r\n [disabled]=\"option.disabled\"\r\n [checked]=\"option.checked\"\r\n >\r\n {{ option.name }}\r\n </mat-checkbox>\r\n </mat-list>\r\n <ieeesa-form-error [formGroup]=\"group\" [config]=\"config\"> </ieeesa-form-error>\r\n</div>\r\n", styles: [".ieeesa-subtitle{text-align:left;font-family:Calibri Regular;font-size:1.56em;letter-spacing:0;color:#000;opacity:1}.ieeesa-body{text-align:left;font-family:Calibri Regular;font-size:1.25em;letter-spacing:0;color:#000;opacity:1}.ieeesa-display-lg-57{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:3.5625em;line-height:64px;color:#000;letter-spacing:0}.ieeesa-display-md-47{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.9375em;line-height:52px;color:#000;letter-spacing:0}.ieeesa-display-sm-38{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.375em;line-height:44px;color:#000;letter-spacing:0}.ieeesa-headline-lg-34{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.125em;line-height:40px;color:#000;letter-spacing:0}.ieeesa-headline-md-30{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.875em;line-height:36px;color:#000;letter-spacing:0}.ieeesa-headline-sm-26{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.625em;line-height:32px;color:#000;letter-spacing:0}.ieeesa-title-lg-bold-24{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1.5em;line-height:28px;color:#000;letter-spacing:0}.ieeesa-title-lg-24{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.5em;line-height:28px;color:#000;letter-spacing:0}.ieeesa-title-md-18{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.125em;line-height:24px;color:#000;letter-spacing:.009375em}.ieeesa-title-sm-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-lg-bold-16{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-lg-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-md-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875em;line-height:16px;color:#000;letter-spacing:.03125em}.ieeesa-label-sm-13{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.8125em;line-height:16px;color:#000;letter-spacing:.03125em}.ieeesa-body-lg-bold-18{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1.125em;line-height:24px;color:#000;letter-spacing:.03125em}.ieeesa-body-lg-18{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.125em;line-height:24px;color:#000;letter-spacing:.03125em}.ieeesa-body-md-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1em;line-height:20px;color:#000;letter-spacing:.015625em}.ieeesa-body-sm-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875em;line-height:16px;color:#000;letter-spacing:.025em}.ieeesa-title-inter-lg-bold-24{font-family:Inter Bold;font-style:normal;font-weight:700;font-size:1.5em;line-height:29px;color:#000;letter-spacing:0}.mat-mdc-button.mat-mdc-button-base.mat-primary-button,.mat-mdc-button.mat-mdc-button-base.mat-secondary-button{min-width:103px;width:auto;min-height:40px;height:auto;border-radius:3px;text-align:center;padding:.625em 1.5em;border:none;font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.mat-mdc-button.mat-mdc-button-base>.mat-icon{margin-right:11px}.mat-mdc-button.mat-mdc-button-base.mat-primary-button{background-color:#00629b;color:#fff}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:hover{background-color:#003e65}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:active{background-color:#00629b}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:disabled{background-color:#1c1b1f1f}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button{color:#fff;background:#a7a8aa;box-shadow:0 1px 2px #0000004d,0 2px 6px 2px #00000026}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:hover{background:#a7a8aa}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:active{background:rgba(29,25,43,.12)}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:disabled{background:rgba(28,27,31,.12);color:#1c1b1f;opacity:.38}.ieeesa-text-button{color:#cac4d0;background:none;border:none}.flex-align-center{display:flex;align-items:center;justify-content:center}.mat-button-toggle-checked{background-color:#a7a8aa}.mat-button-toggle-checked .mat-button-toggle-label-content:before{font-family:\"Font Awesome 5 Free\";font-weight:900;content:\"\\f00c\";padding-right:.5625em}.mat-button-toggle-group .mat-button-toggle-label-content{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1em;line-height:20px;color:#1c1b1f;letter-spacing:.00625em}@media (max-width: 768px){.mat-button-toggle-group .mat-button-toggle-label-content{max-width:8ch;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;position:relative}}.cdk-overlay-pane{width:100%;min-width:312px}.ieeesa-checkbox-field__label-left{display:flex;align-items:center}.ieeesa-checkbox-field__label-top{display:block}.ieeesa-checkbox-field .mat-mdc-list{display:flex;list-style-type:none}.ieeesa-checkbox-field .mat-mdc-checkbox .mat-mdc-checkbox-touch-target{height:40px;width:40px}.ieeesa-checkbox-field .mat-mdc-checkbox .mdc-checkbox:hover .mdc-checkbox__native-control:not([disabled])~.mdc-checkbox__ripple{background-color:#1c1b1f!important;opacity:.08!important}.ieeesa-checkbox-field .mat-mdc-checkbox .mdc-checkbox .mdc-checkbox__native-control:enabled:not(:checked):not(:indeterminate):not([data-indeterminate=true])~.mdc-checkbox__background{border-color:#49454f!important;background-color:transparent!important}.ieeesa-checkbox-field .mat-mdc-checkbox .mdc-checkbox:hover .mdc-checkbox__native-control:enabled:not(:checked):not(:indeterminate):not([data-indeterminate=true])~.mdc-checkbox__background{border-color:#1c1b1f!important;background-color:transparent!important}.ieeesa-checkbox-field .mat-mdc-checkbox .mdc-checkbox__native-control:focus:enabled:not(:checked):not(:indeterminate):not([data-indeterminate=true])~.mdc-checkbox__background{border-color:#1c1b1f!important;background-color:transparent!important}.ieeesa-checkbox-field .mat-mdc-checkbox.mat-accent.mat-mdc-checkbox-checked .mdc-checkbox__background{border-color:#00b5e2!important;background-color:#00b5e2!important}.ieeesa-checkbox-field .mat-mdc-checkbox.mat-accent.mat-mdc-checkbox-checked .mdc-checkbox:hover .mdc-checkbox__ripple{background-color:#6750a4!important;opacity:.08!important}.ieeesa-checkbox-field .mat-mdc-checkbox.mat-accent.mat-mdc-checkbox-checked .mdc-checkbox:focus .mdc-checkbox__ripple{background-color:#6750a4}.ieeesa-checkbox-field .mat-mdc-checkbox.mat-accent.mat-mdc-checkbox-checked .mat-mdc-checkbox-ripple:not(:empty){background-color:#6750a4!important;opacity:.12!important}.ieeesa-checkbox-field .mat-mdc-checkbox.mat-accent.mat-mdc-checkbox-checked .mdc-checkbox__ripple{background-color:#6750a4}.ieeesa-checkbox-field .mat-mdc-checkbox .mdc-checkbox .mdc-checkbox__native-control:enabled:indeterminate~.mdc-checkbox__background{border-color:#00b5e2!important;background-color:#00b5e2!important}.ieeesa-checkbox-field .mat-mdc-checkbox .mdc-checkbox:hover .mdc-checkbox__native-control[data-indeterminate=true]:enabled~.mdc-checkbox__background{border-color:#00b5e2!important;background-color:#00b5e2!important}.ieeesa-checkbox-field .mat-mdc-checkbox .mdc-checkbox .mdc-checkbox__native-control[disabled]:checked~.mdc-checkbox__background{border-color:#1c1b1f!important;background-color:#1c1b1f!important}.ieeesa-checkbox-field .mat-mdc-checkbox .mdc-checkbox .mdc-checkbox__native-control[disabled]:not(:checked):not(:indeterminate):not([data-indeterminate=true])~.mdc-checkbox__background{border-color:#1c1b1f!important;background-color:transparent!important}.ieeesa-checkbox-field .mat-mdc-checkbox .mdc-checkbox .mdc-checkbox__native-control[disabled]:indeterminate~.mdc-checkbox__background{border-color:#1c1b1f!important;background-color:#1c1b1f!important}.ng-valid.ng-submitted .mat-mdc-checkbox.checkbox.mat-accent.ng-pristine.ng-invalid.ng-touched .mdc-checkbox:hover .mdc-checkbox__ripple,.ng-valid.ng-submitted .mat-mdc-checkbox.checkbox.mat-accent.ng-pristine.ng-invalid.ng-untouched .mdc-checkbox:hover .mdc-checkbox__ripple,.ng-valid.ng-submitted .mat-mdc-checkbox.checkbox.mat-accent.ng-dirty.ng-invalid.ng-touched .mdc-checkbox:hover .mdc-checkbox__ripple{background-color:#b3261e!important;opacity:.08!important}.ng-valid.ng-submitted .mat-mdc-checkbox.checkbox.mat-accent.ng-pristine.ng-invalid.ng-touched .mdc-checkbox:focus .mdc-checkbox__ripple,.ng-valid.ng-submitted .mat-mdc-checkbox.checkbox.mat-accent.ng-pristine.ng-invalid.ng-untouched .mdc-checkbox:focus .mdc-checkbox__ripple,.ng-valid.ng-submitted .mat-mdc-checkbox.checkbox.mat-accent.ng-dirty.ng-invalid.ng-touched .mdc-checkbox:focus .mdc-checkbox__ripple{background-color:#b3261e!important;opacity:.12!important}.ng-valid.ng-submitted .mat-mdc-checkbox.checkbox.mat-accent.ng-pristine.ng-invalid.ng-touched .mdc-checkbox__ripple,.ng-valid.ng-submitted .mat-mdc-checkbox.checkbox.mat-accent.ng-pristine.ng-invalid.ng-untouched .mdc-checkbox__ripple,.ng-valid.ng-submitted .mat-mdc-checkbox.checkbox.mat-accent.ng-dirty.ng-invalid.ng-touched .mdc-checkbox__ripple{background-color:#b3261e}.ng-valid.ng-submitted .mat-mdc-checkbox.checkbox.mat-accent.ng-pristine.ng-invalid.ng-touched .mdc-checkbox__background,.ng-valid.ng-submitted .mat-mdc-checkbox.checkbox.mat-accent.ng-pristine.ng-invalid.ng-untouched .mdc-checkbox__background,.ng-valid.ng-submitted .mat-mdc-checkbox.checkbox.mat-accent.ng-dirty.ng-invalid.ng-touched .mdc-checkbox__background{border-color:#ba0c2f!important;background-color:transparent!important}.ng-valid.ng-submitted .mat-mdc-checkbox.mat-accent.mat-mdc-checkbox-checked.ng-dirty.ng-valid.ng-touched .mdc-checkbox__background{border-color:#ba0c2f!important;background-color:#ba0c2f!important}.ng-valid.ng-submitted .mat-mdc-checkbox.mat-accent.mat-mdc-checkbox-checked.ng-dirty.ng-valid.ng-touched .mdc-checkbox:hover .mdc-checkbox__ripple{background-color:#b3261e!important;opacity:.08!important}.ng-valid.ng-submitted .mat-mdc-checkbox.mat-accent.mat-mdc-checkbox-checked.ng-dirty.ng-valid.ng-touched .mdc-checkbox:focus .mdc-checkbox__ripple{background-color:#b3261e!important;opacity:.12!important}.ng-valid.ng-submitted .mat-mdc-checkbox.mat-accent.mat-mdc-checkbox-checked.ng-dirty.ng-valid.ng-touched .mdc-checkbox__ripple{background-color:#b3261e}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: MatListModule }, { kind: "component", type: i3$1.MatList, selector: "mat-list", exportAs: ["matList"] }, { kind: "ngmodule", type: MatButtonModule }, { kind: "ngmodule", type: MatInputModule }, { kind: "directive", type: i4.MatLabel, selector: "mat-label" }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "ngmodule", type: MatFormFieldModule }, { kind: "component", type: FormErrorComponent, selector: "ieeesa-form-error", inputs: ["formGroup", "config", "submitResponse"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i3.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i3.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "ngmodule", type: MatCheckboxModule }, { kind: "component", type: i6.MatCheckbox, selector: "mat-checkbox", inputs: ["disableRipple", "color", "tabIndex"], exportAs: ["matCheckbox"] }], encapsulation: i0.ViewEncapsulation.None }); }
486
+ }
487
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: CheckboxComponent, decorators: [{
488
+ type: Component,
489
+ args: [{ selector: 'ieeesa-checkbox', standalone: true, imports: [
490
+ CommonModule,
491
+ MatListModule,
492
+ MatButtonModule,
493
+ MatInputModule,
494
+ FormsModule,
495
+ MatFormFieldModule,
496
+ FormErrorComponent,
497
+ ReactiveFormsModule,
498
+ MatCheckboxModule,
499
+ ], encapsulation: ViewEncapsulation.None, template: "<div\r\n [formGroup]=\"group\"\r\n class=\"ieeesa-checkbox-field\"\r\n *ngIf=\"group\"\r\n [ngClass]=\"\r\n config.isLabelAlignedLeft\r\n ? 'ieeesa-checkbox-field__label-left'\r\n : 'ieeesa-checkbox-field__label-top'\r\n \"\r\n>\r\n <mat-label class=\"ieeesa-body-sm-14 ieeesa-checkbox-field__label\">{{\r\n config.label\r\n }}</mat-label>\r\n <mat-list>\r\n <mat-checkbox\r\n *ngFor=\"let option of checkboxes; trackBy: trackById\"\r\n [formControlName]=\"option.id\"\r\n (change)=\"onChange(option, true)\"\r\n [disabled]=\"option.disabled\"\r\n [checked]=\"option.checked\"\r\n >\r\n {{ option.name }}\r\n </mat-checkbox>\r\n </mat-list>\r\n <ieeesa-form-error [formGroup]=\"group\" [config]=\"config\"> </ieeesa-form-error>\r\n</div>\r\n", styles: [".ieeesa-subtitle{text-align:left;font-family:Calibri Regular;font-size:1.56em;letter-spacing:0;color:#000;opacity:1}.ieeesa-body{text-align:left;font-family:Calibri Regular;font-size:1.25em;letter-spacing:0;color:#000;opacity:1}.ieeesa-display-lg-57{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:3.5625em;line-height:64px;color:#000;letter-spacing:0}.ieeesa-display-md-47{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.9375em;line-height:52px;color:#000;letter-spacing:0}.ieeesa-display-sm-38{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.375em;line-height:44px;color:#000;letter-spacing:0}.ieeesa-headline-lg-34{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.125em;line-height:40px;color:#000;letter-spacing:0}.ieeesa-headline-md-30{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.875em;line-height:36px;color:#000;letter-spacing:0}.ieeesa-headline-sm-26{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.625em;line-height:32px;color:#000;letter-spacing:0}.ieeesa-title-lg-bold-24{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1.5em;line-height:28px;color:#000;letter-spacing:0}.ieeesa-title-lg-24{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.5em;line-height:28px;color:#000;letter-spacing:0}.ieeesa-title-md-18{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.125em;line-height:24px;color:#000;letter-spacing:.009375em}.ieeesa-title-sm-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-lg-bold-16{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-lg-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-md-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875em;line-height:16px;color:#000;letter-spacing:.03125em}.ieeesa-label-sm-13{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.8125em;line-height:16px;color:#000;letter-spacing:.03125em}.ieeesa-body-lg-bold-18{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1.125em;line-height:24px;color:#000;letter-spacing:.03125em}.ieeesa-body-lg-18{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.125em;line-height:24px;color:#000;letter-spacing:.03125em}.ieeesa-body-md-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1em;line-height:20px;color:#000;letter-spacing:.015625em}.ieeesa-body-sm-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875em;line-height:16px;color:#000;letter-spacing:.025em}.ieeesa-title-inter-lg-bold-24{font-family:Inter Bold;font-style:normal;font-weight:700;font-size:1.5em;line-height:29px;color:#000;letter-spacing:0}.mat-mdc-button.mat-mdc-button-base.mat-primary-button,.mat-mdc-button.mat-mdc-button-base.mat-secondary-button{min-width:103px;width:auto;min-height:40px;height:auto;border-radius:3px;text-align:center;padding:.625em 1.5em;border:none;font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.mat-mdc-button.mat-mdc-button-base>.mat-icon{margin-right:11px}.mat-mdc-button.mat-mdc-button-base.mat-primary-button{background-color:#00629b;color:#fff}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:hover{background-color:#003e65}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:active{background-color:#00629b}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:disabled{background-color:#1c1b1f1f}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button{color:#fff;background:#a7a8aa;box-shadow:0 1px 2px #0000004d,0 2px 6px 2px #00000026}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:hover{background:#a7a8aa}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:active{background:rgba(29,25,43,.12)}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:disabled{background:rgba(28,27,31,.12);color:#1c1b1f;opacity:.38}.ieeesa-text-button{color:#cac4d0;background:none;border:none}.flex-align-center{display:flex;align-items:center;justify-content:center}.mat-button-toggle-checked{background-color:#a7a8aa}.mat-button-toggle-checked .mat-button-toggle-label-content:before{font-family:\"Font Awesome 5 Free\";font-weight:900;content:\"\\f00c\";padding-right:.5625em}.mat-button-toggle-group .mat-button-toggle-label-content{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1em;line-height:20px;color:#1c1b1f;letter-spacing:.00625em}@media (max-width: 768px){.mat-button-toggle-group .mat-button-toggle-label-content{max-width:8ch;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;position:relative}}.cdk-overlay-pane{width:100%;min-width:312px}.ieeesa-checkbox-field__label-left{display:flex;align-items:center}.ieeesa-checkbox-field__label-top{display:block}.ieeesa-checkbox-field .mat-mdc-list{display:flex;list-style-type:none}.ieeesa-checkbox-field .mat-mdc-checkbox .mat-mdc-checkbox-touch-target{height:40px;width:40px}.ieeesa-checkbox-field .mat-mdc-checkbox .mdc-checkbox:hover .mdc-checkbox__native-control:not([disabled])~.mdc-checkbox__ripple{background-color:#1c1b1f!important;opacity:.08!important}.ieeesa-checkbox-field .mat-mdc-checkbox .mdc-checkbox .mdc-checkbox__native-control:enabled:not(:checked):not(:indeterminate):not([data-indeterminate=true])~.mdc-checkbox__background{border-color:#49454f!important;background-color:transparent!important}.ieeesa-checkbox-field .mat-mdc-checkbox .mdc-checkbox:hover .mdc-checkbox__native-control:enabled:not(:checked):not(:indeterminate):not([data-indeterminate=true])~.mdc-checkbox__background{border-color:#1c1b1f!important;background-color:transparent!important}.ieeesa-checkbox-field .mat-mdc-checkbox .mdc-checkbox__native-control:focus:enabled:not(:checked):not(:indeterminate):not([data-indeterminate=true])~.mdc-checkbox__background{border-color:#1c1b1f!important;background-color:transparent!important}.ieeesa-checkbox-field .mat-mdc-checkbox.mat-accent.mat-mdc-checkbox-checked .mdc-checkbox__background{border-color:#00b5e2!important;background-color:#00b5e2!important}.ieeesa-checkbox-field .mat-mdc-checkbox.mat-accent.mat-mdc-checkbox-checked .mdc-checkbox:hover .mdc-checkbox__ripple{background-color:#6750a4!important;opacity:.08!important}.ieeesa-checkbox-field .mat-mdc-checkbox.mat-accent.mat-mdc-checkbox-checked .mdc-checkbox:focus .mdc-checkbox__ripple{background-color:#6750a4}.ieeesa-checkbox-field .mat-mdc-checkbox.mat-accent.mat-mdc-checkbox-checked .mat-mdc-checkbox-ripple:not(:empty){background-color:#6750a4!important;opacity:.12!important}.ieeesa-checkbox-field .mat-mdc-checkbox.mat-accent.mat-mdc-checkbox-checked .mdc-checkbox__ripple{background-color:#6750a4}.ieeesa-checkbox-field .mat-mdc-checkbox .mdc-checkbox .mdc-checkbox__native-control:enabled:indeterminate~.mdc-checkbox__background{border-color:#00b5e2!important;background-color:#00b5e2!important}.ieeesa-checkbox-field .mat-mdc-checkbox .mdc-checkbox:hover .mdc-checkbox__native-control[data-indeterminate=true]:enabled~.mdc-checkbox__background{border-color:#00b5e2!important;background-color:#00b5e2!important}.ieeesa-checkbox-field .mat-mdc-checkbox .mdc-checkbox .mdc-checkbox__native-control[disabled]:checked~.mdc-checkbox__background{border-color:#1c1b1f!important;background-color:#1c1b1f!important}.ieeesa-checkbox-field .mat-mdc-checkbox .mdc-checkbox .mdc-checkbox__native-control[disabled]:not(:checked):not(:indeterminate):not([data-indeterminate=true])~.mdc-checkbox__background{border-color:#1c1b1f!important;background-color:transparent!important}.ieeesa-checkbox-field .mat-mdc-checkbox .mdc-checkbox .mdc-checkbox__native-control[disabled]:indeterminate~.mdc-checkbox__background{border-color:#1c1b1f!important;background-color:#1c1b1f!important}.ng-valid.ng-submitted .mat-mdc-checkbox.checkbox.mat-accent.ng-pristine.ng-invalid.ng-touched .mdc-checkbox:hover .mdc-checkbox__ripple,.ng-valid.ng-submitted .mat-mdc-checkbox.checkbox.mat-accent.ng-pristine.ng-invalid.ng-untouched .mdc-checkbox:hover .mdc-checkbox__ripple,.ng-valid.ng-submitted .mat-mdc-checkbox.checkbox.mat-accent.ng-dirty.ng-invalid.ng-touched .mdc-checkbox:hover .mdc-checkbox__ripple{background-color:#b3261e!important;opacity:.08!important}.ng-valid.ng-submitted .mat-mdc-checkbox.checkbox.mat-accent.ng-pristine.ng-invalid.ng-touched .mdc-checkbox:focus .mdc-checkbox__ripple,.ng-valid.ng-submitted .mat-mdc-checkbox.checkbox.mat-accent.ng-pristine.ng-invalid.ng-untouched .mdc-checkbox:focus .mdc-checkbox__ripple,.ng-valid.ng-submitted .mat-mdc-checkbox.checkbox.mat-accent.ng-dirty.ng-invalid.ng-touched .mdc-checkbox:focus .mdc-checkbox__ripple{background-color:#b3261e!important;opacity:.12!important}.ng-valid.ng-submitted .mat-mdc-checkbox.checkbox.mat-accent.ng-pristine.ng-invalid.ng-touched .mdc-checkbox__ripple,.ng-valid.ng-submitted .mat-mdc-checkbox.checkbox.mat-accent.ng-pristine.ng-invalid.ng-untouched .mdc-checkbox__ripple,.ng-valid.ng-submitted .mat-mdc-checkbox.checkbox.mat-accent.ng-dirty.ng-invalid.ng-touched .mdc-checkbox__ripple{background-color:#b3261e}.ng-valid.ng-submitted .mat-mdc-checkbox.checkbox.mat-accent.ng-pristine.ng-invalid.ng-touched .mdc-checkbox__background,.ng-valid.ng-submitted .mat-mdc-checkbox.checkbox.mat-accent.ng-pristine.ng-invalid.ng-untouched .mdc-checkbox__background,.ng-valid.ng-submitted .mat-mdc-checkbox.checkbox.mat-accent.ng-dirty.ng-invalid.ng-touched .mdc-checkbox__background{border-color:#ba0c2f!important;background-color:transparent!important}.ng-valid.ng-submitted .mat-mdc-checkbox.mat-accent.mat-mdc-checkbox-checked.ng-dirty.ng-valid.ng-touched .mdc-checkbox__background{border-color:#ba0c2f!important;background-color:#ba0c2f!important}.ng-valid.ng-submitted .mat-mdc-checkbox.mat-accent.mat-mdc-checkbox-checked.ng-dirty.ng-valid.ng-touched .mdc-checkbox:hover .mdc-checkbox__ripple{background-color:#b3261e!important;opacity:.08!important}.ng-valid.ng-submitted .mat-mdc-checkbox.mat-accent.mat-mdc-checkbox-checked.ng-dirty.ng-valid.ng-touched .mdc-checkbox:focus .mdc-checkbox__ripple{background-color:#b3261e!important;opacity:.12!important}.ng-valid.ng-submitted .mat-mdc-checkbox.mat-accent.mat-mdc-checkbox-checked.ng-dirty.ng-valid.ng-touched .mdc-checkbox__ripple{background-color:#b3261e}\n"] }]
500
+ }], ctorParameters: function () { return [{ type: FormUtilityService }]; }, propDecorators: { checkboxes: [{
501
+ type: Input
502
+ }], checkboxSelection: [{
503
+ type: Output
504
+ }] } });
505
+
506
+ const DateFormats = {
507
+ display: {
508
+ dateInput: 'DD-MMM-YYYY',
509
+ monthYearA11yLabel: 'MMMM YYYY',
510
+ daysFormat: 'ddd',
511
+ monthFormat: 'YYYY-MM',
512
+ fullMonthLabel: 'MMM',
513
+ month: 'M',
514
+ },
515
+ };
516
+
517
+ /**
518
+ * DatepickerService is used in date-picker and date-picker-header component to get date range, isRangeSelection, and selected date(s).
519
+ * @export
520
+ * @class DatepickerService
521
+ */
522
+ class DatepickerService {
523
+ constructor() {
524
+ this.destroy$ = new Subject();
525
+ this.range = new Subject();
526
+ this.range$ = this.range.asObservable();
527
+ this.isRangeSelection = false;
528
+ this.range$?.pipe(takeUntil(this.destroy$)).subscribe((range) => {
529
+ this.selectedRange = {
530
+ start: range.start,
531
+ end: range.end,
532
+ };
533
+ });
254
534
  }
255
535
  /**
256
- * Emits selected form date range
257
- * @param {{startDate: string, endDate: string}} dateRange
258
- * @memberof DynamicFormComponent
536
+ * Returns the calendar type.
537
+ * @return {boolean}
538
+ * @memberof DatepickerService
259
539
  */
260
- onSelectedDateRange(dateRange) {
261
- this.formSelectedDateRange.emit(dateRange);
540
+ getCalendarType() {
541
+ return this.isRangeSelection;
262
542
  }
263
543
  /**
264
- * Handles form field auto complete search event
265
- * @param {Event} event
266
- * @memberof DynamicFormComponent
544
+ * Returns selected range
545
+ * @return {({ start: Date | string; end: Date | string })}
546
+ * @memberof DatepickerService
267
547
  */
268
- onAutoCompleteSearch(event) {
269
- this.formAutoCompleteSearch.emit(event);
548
+ getSelectedRange() {
549
+ return this.selectedRange;
270
550
  }
271
551
  /**
272
- * Handles form field auto complete option selection event
273
- * @memberof DynamicFormComponent
552
+ * Implementation of ngOnDestroy lifecycle hook method to unsubscribe the open observable subscriptions.
553
+ * @memberof DatePickerHeaderComponent
274
554
  */
275
- onAutoCompleteOptionSelected() {
276
- this.autoCompleteOptionSelected.emit(this.formGroupArray);
555
+ ngOnDestroy() {
556
+ this.destroy$.next(true);
557
+ this.destroy$.unsubscribe();
277
558
  }
278
- /**
279
- * Converts passed control name in hyphenated css class name
280
- * @param {string} className
281
- * @return {string}
282
- * @memberof DynamicFormComponent
283
- */
284
- getRowClassName(className) {
285
- return className
286
- .replace(/([A-Z])/g, ' $1')
287
- .toLowerCase()
288
- .split(' ')
289
- .join('-');
290
- }
291
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: DynamicFormComponent, deps: [{ token: i3.FormBuilder }], target: i0.ɵɵFactoryTarget.Component }); }
292
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.3", type: DynamicFormComponent, isStandalone: true, selector: "ieeesa-dynamic-form", inputs: { formGroups: "formGroups", submitResponse: "submitResponse", searchResponse: "searchResponse", colWidth: "colWidth", isLegendVisible: "isLegendVisible", rightButtonLabel: "rightButtonLabel", leftButtonLabel: "leftButtonLabel", isSubmitButtonDisabled: "isSubmitButtonDisabled", isLeftButtonDisabled: "isLeftButtonDisabled", isLeftButtonNeeded: "isLeftButtonNeeded" }, outputs: { formSubmit: "formSubmit", formChange: "formChange", formInput: "formInput", formLeftButtonClicked: "formLeftButtonClicked", formSearchApply: "formSearchApply", formGroupsReference: "formGroupsReference", dropdownChange: "dropdownChange", formDateSelected: "formDateSelected", formSelectSearch: "formSelectSearch", formControlChange: "formControlChange", formAutoCompleteSearch: "formAutoCompleteSearch", autoCompleteOptionSelected: "autoCompleteOptionSelected", formAfterContentInit: "formAfterContentInit", formSelectedDateRange: "formSelectedDateRange" }, viewQueries: [{ propertyName: "formFields", predicate: DynamicFormFieldDirective$1, descendants: true }], exportAs: ["dynamicForm"], ngImport: i0, template: "<form\r\n class=\"ieeesa-dynamic-form\"\r\n [formGroup]=\"form\"\r\n (change)=\"onFormChange()\"\r\n (ngSubmit)=\"onFormSubmit()\"\r\n (input)=\"formInputChange($event)\"\r\n>\r\n <fieldset\r\n class=\"ieeesa-dynamic-form__fieldset p-2\"\r\n *ngFor=\"\r\n let formGrp of formGroupArray;\r\n let i = index;\r\n trackBy: trackByFormGroup\r\n \"\r\n >\r\n <legend class=\"float-none w-auto p-2\" *ngIf=\"isLegendVisible\">\r\n {{ legendsArray[i] }}:\r\n </legend>\r\n <div class=\"row\">\r\n <div\r\n class=\"col-{{ colWidth.xs }} col-sm-{{ colWidth.sm }} col-md-{{\r\n colWidth.md\r\n }} col-lg-{{ colWidth.lg }} col-xl-{{ colWidth.xl }}\r\n ieeesa-dynamic-form__form-field\"\r\n [ngClass]=\"getRowClassName(formControlArray[i][j].controlName)\"\r\n *ngFor=\"let control of formControlArray[i]; let j = index\"\r\n >\r\n <ng-template\r\n ieeesaDynamicFormField\r\n [config]=\"formControlArray[i][j]\"\r\n [group]=\"formGrp\"\r\n [submitResponse]=\"submitResponse\"\r\n [searchResponse]=\"searchResponse\"\r\n (formSearchApply)=\"onSearchApply($event)\"\r\n (formDropdownSelected)=\"onFormChange(); onDropdownChange()\"\r\n (formDateSelected)=\"onDateSelected($event)\"\r\n (formSelectedDateRange)=\"onSelectedDateRange($event)\"\r\n (formSelectSearch)=\"onSelectSearch($event)\"\r\n (formAutoCompleteSearch)=\"onAutoCompleteSearch($event)\"\r\n (autoCompleteOptionSelected)=\"onAutoCompleteOptionSelected()\"\r\n >\r\n </ng-template>\r\n </div>\r\n </div>\r\n </fieldset>\r\n <div class=\"row\">\r\n <div class=\"col-12 ieeesa-dynamic-form__actions\">\r\n <button\r\n type=\"submit\"\r\n mat-button\r\n class=\"mat-primary-button ieeesa-dynamic-form__actions--right-btn\"\r\n [disabled]=\"isSubmitButtonDisabled\"\r\n >\r\n {{ rightButtonLabel }}\r\n </button>\r\n <button\r\n *ngIf=\"isLeftButtonNeeded\"\r\n type=\"button\"\r\n mat-button\r\n class=\"mat-secondary-button ieeesa-dynamic-form__actions--left-btn\"\r\n (click)=\"onLeftButtonClicked()\"\r\n [disabled]=\"isLeftButtonDisabled\"\r\n >\r\n {{ leftButtonLabel }}\r\n </button>\r\n </div>\r\n </div>\r\n</form>\r\n", styles: [".ieeesa-subtitle{text-align:left;font-family:Calibri Regular;font-size:1.56em;letter-spacing:0;color:#000;opacity:1}.ieeesa-body{text-align:left;font-family:Calibri Regular;font-size:1.25em;letter-spacing:0;color:#000;opacity:1}.ieeesa-display-lg-57{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:3.5625em;line-height:64px;color:#000;letter-spacing:0}.ieeesa-display-md-47{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.9375em;line-height:52px;color:#000;letter-spacing:0}.ieeesa-display-sm-38{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.375em;line-height:44px;color:#000;letter-spacing:0}.ieeesa-headline-lg-34{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.125em;line-height:40px;color:#000;letter-spacing:0}.ieeesa-headline-md-30{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.875em;line-height:36px;color:#000;letter-spacing:0}.ieeesa-headline-sm-26{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.625em;line-height:32px;color:#000;letter-spacing:0}.ieeesa-title-lg-bold-24{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1.5em;line-height:28px;color:#000;letter-spacing:0}.ieeesa-title-lg-24{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.5em;line-height:28px;color:#000;letter-spacing:0}.ieeesa-title-md-18{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.125em;line-height:24px;color:#000;letter-spacing:.009375em}.ieeesa-title-sm-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-lg-bold-16{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-lg-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-md-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875em;line-height:16px;color:#000;letter-spacing:.03125em}.ieeesa-label-sm-13{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.8125em;line-height:16px;color:#000;letter-spacing:.03125em}.ieeesa-body-lg-bold-18{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1.125em;line-height:24px;color:#000;letter-spacing:.03125em}.ieeesa-body-lg-18{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.125em;line-height:24px;color:#000;letter-spacing:.03125em}.ieeesa-body-md-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1em;line-height:20px;color:#000;letter-spacing:.015625em}.ieeesa-body-sm-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875em;line-height:16px;color:#000;letter-spacing:.025em}.ieeesa-title-inter-lg-bold-24{font-family:Inter Bold;font-style:normal;font-weight:700;font-size:1.5em;line-height:29px;color:#000;letter-spacing:0}.mat-mdc-button.mat-mdc-button-base.mat-primary-button,.mat-mdc-button.mat-mdc-button-base.mat-secondary-button{min-width:103px;width:auto;min-height:40px;height:auto;border-radius:3px;text-align:center;padding:.625em 1.5em;border:none;font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.mat-mdc-button.mat-mdc-button-base>.mat-icon{margin-right:11px}.mat-mdc-button.mat-mdc-button-base.mat-primary-button{background-color:#00629b;color:#fff}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:hover{background-color:#003e65}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:active{background-color:#00629b}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:disabled{background-color:#1c1b1f1f}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button{color:#fff;background:#a7a8aa;box-shadow:0 1px 2px #0000004d,0 2px 6px 2px #00000026}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:hover{background:#a7a8aa}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:active{background:rgba(29,25,43,.12)}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:disabled{background:rgba(28,27,31,.12);color:#1c1b1f;opacity:.38}.ieeesa-text-button{color:#cac4d0;background:none;border:none}.flex-align-center{display:flex;align-items:center;justify-content:center}.mat-button-toggle-checked{background-color:#a7a8aa}.mat-button-toggle-checked .mat-button-toggle-label-content:before{font-family:\"Font Awesome 5 Free\";font-weight:900;content:\"\\f00c\";padding-right:.5625em}.mat-button-toggle-group .mat-button-toggle-label-content{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1em;line-height:20px;color:#1c1b1f;letter-spacing:.00625em}@media (max-width: 768px){.mat-button-toggle-group .mat-button-toggle-label-content{max-width:8ch;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;position:relative}}.cdk-overlay-pane{width:100%;min-width:312px}.ieeesa-dynamic-form__actions{display:flex;flex-direction:row-reverse;padding-top:15px}.ieeesa-dynamic-form__actions--left-btn{margin-right:2%}.ieeesa-dynamic-form__form-field{padding-top:20px}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i3.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i3.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i3.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: DynamicFormFieldDirective$1, selector: "[ieeesaDynamicFormField]", inputs: ["config", "group", "submitResponse", "searchResponse"], outputs: ["formSearchApply", "formDropdownSelected", "formDateSelected", "formSelectedDateRange", "formSelectSearch", "formAutoCompleteSearch", "autoCompleteOptionSelected"] }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i8.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }] }); }
559
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: DatepickerService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
560
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: DatepickerService, providedIn: 'root' }); }
293
561
  }
294
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: DynamicFormComponent, decorators: [{
295
- type: Component,
296
- args: [{ exportAs: 'dynamicForm', selector: 'ieeesa-dynamic-form', standalone: true, imports: [
297
- CommonModule,
298
- ReactiveFormsModule,
299
- DynamicFormFieldDirective$1,
300
- MatButtonModule,
301
- ], template: "<form\r\n class=\"ieeesa-dynamic-form\"\r\n [formGroup]=\"form\"\r\n (change)=\"onFormChange()\"\r\n (ngSubmit)=\"onFormSubmit()\"\r\n (input)=\"formInputChange($event)\"\r\n>\r\n <fieldset\r\n class=\"ieeesa-dynamic-form__fieldset p-2\"\r\n *ngFor=\"\r\n let formGrp of formGroupArray;\r\n let i = index;\r\n trackBy: trackByFormGroup\r\n \"\r\n >\r\n <legend class=\"float-none w-auto p-2\" *ngIf=\"isLegendVisible\">\r\n {{ legendsArray[i] }}:\r\n </legend>\r\n <div class=\"row\">\r\n <div\r\n class=\"col-{{ colWidth.xs }} col-sm-{{ colWidth.sm }} col-md-{{\r\n colWidth.md\r\n }} col-lg-{{ colWidth.lg }} col-xl-{{ colWidth.xl }}\r\n ieeesa-dynamic-form__form-field\"\r\n [ngClass]=\"getRowClassName(formControlArray[i][j].controlName)\"\r\n *ngFor=\"let control of formControlArray[i]; let j = index\"\r\n >\r\n <ng-template\r\n ieeesaDynamicFormField\r\n [config]=\"formControlArray[i][j]\"\r\n [group]=\"formGrp\"\r\n [submitResponse]=\"submitResponse\"\r\n [searchResponse]=\"searchResponse\"\r\n (formSearchApply)=\"onSearchApply($event)\"\r\n (formDropdownSelected)=\"onFormChange(); onDropdownChange()\"\r\n (formDateSelected)=\"onDateSelected($event)\"\r\n (formSelectedDateRange)=\"onSelectedDateRange($event)\"\r\n (formSelectSearch)=\"onSelectSearch($event)\"\r\n (formAutoCompleteSearch)=\"onAutoCompleteSearch($event)\"\r\n (autoCompleteOptionSelected)=\"onAutoCompleteOptionSelected()\"\r\n >\r\n </ng-template>\r\n </div>\r\n </div>\r\n </fieldset>\r\n <div class=\"row\">\r\n <div class=\"col-12 ieeesa-dynamic-form__actions\">\r\n <button\r\n type=\"submit\"\r\n mat-button\r\n class=\"mat-primary-button ieeesa-dynamic-form__actions--right-btn\"\r\n [disabled]=\"isSubmitButtonDisabled\"\r\n >\r\n {{ rightButtonLabel }}\r\n </button>\r\n <button\r\n *ngIf=\"isLeftButtonNeeded\"\r\n type=\"button\"\r\n mat-button\r\n class=\"mat-secondary-button ieeesa-dynamic-form__actions--left-btn\"\r\n (click)=\"onLeftButtonClicked()\"\r\n [disabled]=\"isLeftButtonDisabled\"\r\n >\r\n {{ leftButtonLabel }}\r\n </button>\r\n </div>\r\n </div>\r\n</form>\r\n", styles: [".ieeesa-subtitle{text-align:left;font-family:Calibri Regular;font-size:1.56em;letter-spacing:0;color:#000;opacity:1}.ieeesa-body{text-align:left;font-family:Calibri Regular;font-size:1.25em;letter-spacing:0;color:#000;opacity:1}.ieeesa-display-lg-57{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:3.5625em;line-height:64px;color:#000;letter-spacing:0}.ieeesa-display-md-47{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.9375em;line-height:52px;color:#000;letter-spacing:0}.ieeesa-display-sm-38{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.375em;line-height:44px;color:#000;letter-spacing:0}.ieeesa-headline-lg-34{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.125em;line-height:40px;color:#000;letter-spacing:0}.ieeesa-headline-md-30{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.875em;line-height:36px;color:#000;letter-spacing:0}.ieeesa-headline-sm-26{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.625em;line-height:32px;color:#000;letter-spacing:0}.ieeesa-title-lg-bold-24{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1.5em;line-height:28px;color:#000;letter-spacing:0}.ieeesa-title-lg-24{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.5em;line-height:28px;color:#000;letter-spacing:0}.ieeesa-title-md-18{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.125em;line-height:24px;color:#000;letter-spacing:.009375em}.ieeesa-title-sm-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-lg-bold-16{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-lg-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-md-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875em;line-height:16px;color:#000;letter-spacing:.03125em}.ieeesa-label-sm-13{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.8125em;line-height:16px;color:#000;letter-spacing:.03125em}.ieeesa-body-lg-bold-18{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1.125em;line-height:24px;color:#000;letter-spacing:.03125em}.ieeesa-body-lg-18{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.125em;line-height:24px;color:#000;letter-spacing:.03125em}.ieeesa-body-md-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1em;line-height:20px;color:#000;letter-spacing:.015625em}.ieeesa-body-sm-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875em;line-height:16px;color:#000;letter-spacing:.025em}.ieeesa-title-inter-lg-bold-24{font-family:Inter Bold;font-style:normal;font-weight:700;font-size:1.5em;line-height:29px;color:#000;letter-spacing:0}.mat-mdc-button.mat-mdc-button-base.mat-primary-button,.mat-mdc-button.mat-mdc-button-base.mat-secondary-button{min-width:103px;width:auto;min-height:40px;height:auto;border-radius:3px;text-align:center;padding:.625em 1.5em;border:none;font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.mat-mdc-button.mat-mdc-button-base>.mat-icon{margin-right:11px}.mat-mdc-button.mat-mdc-button-base.mat-primary-button{background-color:#00629b;color:#fff}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:hover{background-color:#003e65}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:active{background-color:#00629b}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:disabled{background-color:#1c1b1f1f}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button{color:#fff;background:#a7a8aa;box-shadow:0 1px 2px #0000004d,0 2px 6px 2px #00000026}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:hover{background:#a7a8aa}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:active{background:rgba(29,25,43,.12)}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:disabled{background:rgba(28,27,31,.12);color:#1c1b1f;opacity:.38}.ieeesa-text-button{color:#cac4d0;background:none;border:none}.flex-align-center{display:flex;align-items:center;justify-content:center}.mat-button-toggle-checked{background-color:#a7a8aa}.mat-button-toggle-checked .mat-button-toggle-label-content:before{font-family:\"Font Awesome 5 Free\";font-weight:900;content:\"\\f00c\";padding-right:.5625em}.mat-button-toggle-group .mat-button-toggle-label-content{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1em;line-height:20px;color:#1c1b1f;letter-spacing:.00625em}@media (max-width: 768px){.mat-button-toggle-group .mat-button-toggle-label-content{max-width:8ch;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;position:relative}}.cdk-overlay-pane{width:100%;min-width:312px}.ieeesa-dynamic-form__actions{display:flex;flex-direction:row-reverse;padding-top:15px}.ieeesa-dynamic-form__actions--left-btn{margin-right:2%}.ieeesa-dynamic-form__form-field{padding-top:20px}\n"] }]
302
- }], ctorParameters: function () { return [{ type: i3.FormBuilder }]; }, propDecorators: { formFields: [{
303
- type: ViewChildren,
304
- args: [DynamicFormFieldDirective$1]
305
- }], formGroups: [{
306
- type: Input
307
- }], submitResponse: [{
308
- type: Input
309
- }], searchResponse: [{
310
- type: Input
311
- }], colWidth: [{
312
- type: Input
313
- }], isLegendVisible: [{
314
- type: Input
315
- }], rightButtonLabel: [{
316
- type: Input
317
- }], leftButtonLabel: [{
318
- type: Input
319
- }], isSubmitButtonDisabled: [{
320
- type: Input
321
- }], isLeftButtonDisabled: [{
322
- type: Input
323
- }], isLeftButtonNeeded: [{
324
- type: Input
325
- }], formSubmit: [{
326
- type: Output
327
- }], formChange: [{
328
- type: Output
329
- }], formInput: [{
330
- type: Output
331
- }], formLeftButtonClicked: [{
332
- type: Output
333
- }], formSearchApply: [{
334
- type: Output
335
- }], formGroupsReference: [{
336
- type: Output
337
- }], dropdownChange: [{
338
- type: Output
339
- }], formDateSelected: [{
340
- type: Output
341
- }], formSelectSearch: [{
342
- type: Output
343
- }], formControlChange: [{
344
- type: Output
345
- }], formAutoCompleteSearch: [{
346
- type: Output
347
- }], autoCompleteOptionSelected: [{
348
- type: Output
349
- }], formAfterContentInit: [{
350
- type: Output
351
- }], formSelectedDateRange: [{
352
- type: Output
353
- }] } });
562
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: DatepickerService, decorators: [{
563
+ type: Injectable,
564
+ args: [{
565
+ providedIn: 'root',
566
+ }]
567
+ }], ctorParameters: function () { return []; } });
354
568
 
355
- const components = {
356
- [FormControlType$1.INPUT]: InputComponent$1,
357
- [FormControlType$1.TEXT_AREA]: TextAreaComponent$1,
358
- [FormControlType$1.SELECT]: SelectComponent$1,
359
- [FormControlType$1.SEARCH]: SearchComponent$1,
360
- [FormControlType$1.DATE]: DatePickerComponent$1,
361
- [FormControlType$1.CHECKBOX]: CheckboxComponent$1,
362
- [FormControlType$1.RADIO]: RadioComponent$1,
363
- [FormControlType$1.AUTO_COMPLETE]: AutocompleteComponent$1,
364
- };
569
+ const moment$1 = moment_;
365
570
  /**
366
- * Provides the implementation of DynamicFormFieldDirective which hosts and creates the form fields components dynamically.
571
+ * Provides implementation of date picker custom header and being used in date-picker component.
367
572
  * @export
368
- * @class DynamicFormFieldDirective
369
- * @implements {FormField}
573
+ * @class DatePickerHeaderComponent
370
574
  * @implements {OnInit}
371
575
  * @implements {OnDestroy}
372
576
  */
373
- class DynamicFormFieldDirective {
577
+ class DatePickerHeaderComponent {
578
+ constructor(
579
+ // eslint-disable-next-line no-unused-vars
580
+ calendar,
581
+ // eslint-disable-next-line no-unused-vars
582
+ dateAdapter,
583
+ // eslint-disable-next-line no-unused-vars
584
+ dateFormats,
585
+ // eslint-disable-next-line no-unused-vars
586
+ datepickerService // eslint-disable-next-line no-empty-function
587
+ ) {
588
+ this.calendar = calendar;
589
+ this.dateAdapter = dateAdapter;
590
+ this.dateFormats = dateFormats;
591
+ this.datepickerService = datepickerService;
592
+ this.destroy$ = new Subject();
593
+ this.arrowDirection = false;
594
+ this.isRangeSelection = false;
595
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
596
+ this.datePickerInfo = constantsInfo;
597
+ }
374
598
  /**
375
- * Sets the form field configuration
376
- * @memberof DynamicFormFieldDirective
599
+ * Implementation of ngOnInit lifecycle hook method to initialize components instance properties.
600
+ * @memberof DatePickerHeaderComponent
377
601
  */
378
- set config(value) {
379
- this._config = value;
380
- if (this.component) {
381
- this.loadComponent();
602
+ ngOnInit() {
603
+ this.isRangeSelection = this.datepickerService.getCalendarType();
604
+ const selectedRange = this.datepickerService.getSelectedRange();
605
+ if (selectedRange) {
606
+ this.setRange(selectedRange);
382
607
  }
383
- }
384
- get config() {
385
- return this._config;
608
+ this.datepickerService.range$
609
+ ?.pipe(takeUntil(this.destroy$))
610
+ .subscribe((range) => {
611
+ this.setRange(range);
612
+ });
613
+ this.selectedDate = this.datepickerService.selectedDate
614
+ ? moment$1(this.datepickerService.selectedDate).format(DateFormats.display.daysFormat) +
615
+ ', ' +
616
+ moment$1(this.datepickerService.selectedDate).date() +
617
+ ' ' +
618
+ moment$1(this.datepickerService.selectedDate).format(DateFormats.display.fullMonthLabel)
619
+ : '';
386
620
  }
387
621
  /**
388
- * Sets the form group
389
- * @memberof DynamicFormFieldDirective
622
+ * Sets the min and max date range.
623
+ * @param {({ start: Date | string; end: Date | string })} range
624
+ * @memberof DatePickerHeaderComponent
390
625
  */
391
- set group(value) {
392
- if (this.component?.instance) {
393
- this.component.instance.group = value;
394
- }
395
- this._group = value;
396
- }
397
- get group() {
398
- return this._group;
626
+ setRange(range) {
627
+ this.range = {
628
+ start: moment$1(range.start).date() +
629
+ ' ' +
630
+ moment$1(range.start).format(DateFormats.display.fullMonthLabel),
631
+ end: moment$1(range.end).date() +
632
+ ' ' +
633
+ moment$1(range.end).format(DateFormats.display.fullMonthLabel),
634
+ };
399
635
  }
400
636
  /**
401
- * Sets the submit response of form submit event
402
- * @memberof DynamicFormFieldDirective
637
+ * Implementation of getMonthLabel method to get the month label.
638
+ * @readonly
639
+ * @return {string}
640
+ * @memberof DatePickerHeaderComponent
403
641
  */
404
- set submitResponse(value) {
405
- if (this.component?.instance) {
406
- this.component.instance.submitResponse = value;
642
+ get getMonthLabel() {
643
+ if (this.dateAdapter?.format) {
644
+ return this.dateAdapter.format(this.calendar.activeDate, this.dateFormats.display.monthYearA11yLabel);
407
645
  }
408
- this._submitResponse = value;
409
- }
410
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
411
- get submitResponse() {
412
- return this._submitResponse;
646
+ return '';
413
647
  }
414
648
  /**
415
- * Sets the form search response of form search apply.
416
- * @memberof DynamicFormFieldDirective
649
+ * Sets previous month in a calendar on click of previous month arrow in date picker.
650
+ * @param {('month' | 'year')} mode
651
+ * @memberof DatePickerHeaderComponent
417
652
  */
418
- set searchResponse(value) {
419
- if (this.component?.instance) {
420
- this.component.instance.searchResponse = value;
421
- }
422
- this._searchResponse = value;
423
- }
424
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
425
- get searchResponse() {
426
- return this._searchResponse;
653
+ setPreviousMonth(mode) {
654
+ this.calendar.activeDate =
655
+ mode === 'month'
656
+ ? this.dateAdapter.addCalendarMonths(this.calendar.activeDate, -1)
657
+ : this.dateAdapter.addCalendarYears(this.calendar.activeDate, -1);
427
658
  }
428
- // eslint-disable-next-line no-unused-vars, no-empty-function
429
- constructor(container) {
430
- this.container = container;
431
- this.destroy$ = new Subject();
432
- this.formSearchApply = new EventEmitter();
433
- this.formDropdownSelected = new EventEmitter();
434
- this.formDateSelected = new EventEmitter();
435
- this.formSelectedDateRange = new EventEmitter();
436
- this.formSelectSearch = new EventEmitter();
437
- this.formAutoCompleteSearch = new EventEmitter();
438
- this.autoCompleteOptionSelected = new EventEmitter();
659
+ /**
660
+ * Sets next month in a calendar on click of previous month arrow in date picker.
661
+ * @param {('month' | 'year')} mode
662
+ * @memberof DatePickerHeaderComponent
663
+ */
664
+ setNextMonth(mode) {
665
+ this.calendar.activeDate =
666
+ mode === 'month'
667
+ ? this.dateAdapter.addCalendarMonths(this.calendar.activeDate, 1)
668
+ : this.dateAdapter.addCalendarYears(this.calendar.activeDate, 1);
439
669
  }
440
670
  /**
441
- * Implementation of ngOnInit lifecycle hook method to call loadComponents method.
442
- * @memberof DynamicFormFieldDirective
671
+ * Sets the calendar current view on the open of year drop down in date picker.
672
+ * @memberof DatePickerHeaderComponent
443
673
  */
444
- ngOnInit() {
445
- this.loadComponent();
674
+ setCalendarView() {
675
+ this.calendar.currentView =
676
+ this.calendar.currentView === 'month' ? 'multi-year' : 'month';
677
+ this.arrowDirection = !this.arrowDirection;
446
678
  }
447
679
  /**
448
- * Creates the component dynamically and initializes the instance properties of created component, also handles the created component events.
449
- * @memberof DynamicFormFieldDirective
450
- */
451
- loadComponent() {
452
- if (!components[this.config?.type]) {
453
- const supportedTypes = Object.keys(components).join(', ');
454
- throw new Error(`Trying to use an unsupported type (${this.config.type}).
455
- Supported types: ${supportedTypes}`);
456
- }
457
- this.component = this.container.createComponent(components[this.config?.type]);
458
- if (this.component?.instance) {
459
- this.component.instance.config = this.config;
460
- this.component.instance.group = this.group;
461
- this.component.instance.submitResponse = this.submitResponse;
462
- this.component.instance.searchResponse = this.searchResponse;
463
- if (this.config.type === FormControlType$1.SEARCH) {
464
- this.component.instance.searchValue
465
- ?.pipe(takeUntil(this.destroy$))
466
- ?.subscribe((event) => {
467
- this.formSearchApply.emit(event);
468
- });
469
- }
470
- else if (this.config.type === FormControlType$1.SELECT) {
471
- this.component.instance.optionSelected
472
- ?.pipe(takeUntil(this.destroy$))
473
- ?.subscribe((event) => {
474
- this.formDropdownSelected.emit(event);
475
- });
476
- this.component.instance.optionSearched
477
- ?.pipe(takeUntil(this.destroy$))
478
- ?.subscribe((event) => {
479
- this.formSelectSearch.emit({
480
- searchEvent: event,
481
- controlName: this.config.controlName,
482
- });
483
- });
484
- }
485
- else if (this.config.type === FormControlType$1.DATE) {
486
- this.component.instance.selectedDate
487
- ?.pipe(takeUntil(this.destroy$))
488
- ?.subscribe((event) => {
489
- this.formDateSelected.emit(event);
490
- });
491
- this.component.instance.selectedDateRange
492
- ?.pipe(takeUntil(this.destroy$))
493
- ?.subscribe((event) => {
494
- this.formSelectedDateRange.emit(event);
495
- });
496
- }
497
- else if (this.config.type === FormControlType$1.AUTO_COMPLETE) {
498
- this.component.instance.autoCompleteSearchValue
499
- ?.pipe(takeUntil(this.destroy$))
500
- ?.subscribe((event) => {
501
- this.formAutoCompleteSearch.emit(event);
502
- });
503
- this.component.instance.autoCompleteOptionSelected
504
- ?.pipe(takeUntil(this.destroy$))
505
- ?.subscribe((event) => {
506
- this.autoCompleteOptionSelected.emit(event);
507
- });
508
- }
509
- }
510
- }
511
- /**
512
- * Implementation of ngOnDestroy lifecycle hook method to unsubscribe the open observable subscriptions.
513
- * @memberof DynamicFormFieldDirective
680
+ * Implementation of ngOnDestroy lifecycle hook method to unsubscribe the open observable subscriptions.
681
+ * @memberof DatePickerHeaderComponent
514
682
  */
515
683
  ngOnDestroy() {
516
684
  this.destroy$.next(true);
517
685
  this.destroy$.unsubscribe();
518
686
  }
519
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: DynamicFormFieldDirective, deps: [{ token: i0.ViewContainerRef }], target: i0.ɵɵFactoryTarget.Directive }); }
520
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.1.3", type: DynamicFormFieldDirective, isStandalone: true, selector: "[ieeesaDynamicFormField]", inputs: { config: "config", group: "group", submitResponse: "submitResponse", searchResponse: "searchResponse" }, outputs: { formSearchApply: "formSearchApply", formDropdownSelected: "formDropdownSelected", formDateSelected: "formDateSelected", formSelectedDateRange: "formSelectedDateRange", formSelectSearch: "formSelectSearch", formAutoCompleteSearch: "formAutoCompleteSearch", autoCompleteOptionSelected: "autoCompleteOptionSelected" }, ngImport: i0 }); }
521
- }
522
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: DynamicFormFieldDirective, decorators: [{
523
- type: Directive,
524
- args: [{
525
- selector: '[ieeesaDynamicFormField]',
526
- standalone: true,
527
- }]
528
- }], ctorParameters: function () { return [{ type: i0.ViewContainerRef }]; }, propDecorators: { config: [{
529
- type: Input
530
- }], group: [{
531
- type: Input
532
- }], submitResponse: [{
533
- type: Input
534
- }], searchResponse: [{
535
- type: Input
536
- }], formSearchApply: [{
537
- type: Output
538
- }], formDropdownSelected: [{
539
- type: Output
540
- }], formDateSelected: [{
541
- type: Output
542
- }], formSelectedDateRange: [{
543
- type: Output
544
- }], formSelectSearch: [{
545
- type: Output
546
- }], formAutoCompleteSearch: [{
547
- type: Output
548
- }], autoCompleteOptionSelected: [{
549
- type: Output
550
- }] } });
551
-
552
- /**
553
- * Implements and displays form error messages and form submission error response message on submission of form.
554
- * @export
555
- * @class FormErrorComponent
556
- */
557
- class FormErrorComponent {
558
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: FormErrorComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
559
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.3", type: FormErrorComponent, isStandalone: true, selector: "ieeesa-form-error", inputs: { formGroup: "formGroup", config: "config", submitResponse: "submitResponse" }, ngImport: i0, template: "<ng-container *ngIf=\"formGroup\">\r\n <div\r\n class=\"ieeesa-body-sm-14 ieeesa-form-error\"\r\n *ngIf=\"\r\n formGroup.controls[config.controlName]?.touched ||\r\n (formGroup.controls[config.controlName]?.dirty &&\r\n formGroup.controls[config.controlName]?.invalid)\r\n \"\r\n >\r\n <p\r\n *ngIf=\"formGroup.controls[config.controlName].errors?.['required']\"\r\n class=\"ieeesa-form-error--text\"\r\n >\r\n {{ config.requiredErrorMessage }}\r\n </p>\r\n <p\r\n *ngIf=\"formGroup.controls[config.controlName].errors?.['minlength']\"\r\n class=\"ieeesa-form-error--text\"\r\n >\r\n {{ config.minErrorMessage }}\r\n </p>\r\n <p\r\n *ngIf=\"formGroup.controls[config.controlName].errors?.['maxlength'] || formGroup.controls[config.controlName].errors?.['max']\"\r\n class=\"ieeesa-form-error--text\"\r\n >\r\n {{ config.maxErrorMessage }}\r\n </p>\r\n <p\r\n *ngIf=\"formGroup.controls[config.controlName].errors?.['pattern']\"\r\n class=\"ieeesa-form-error--text\"\r\n >\r\n {{ config.patternErrorMessage }}\r\n </p>\r\n <p\r\n *ngIf=\"\r\n formGroup.controls[config.controlName].errors?.['email']\"\r\n class=\"ieeesa-form-error--text\"\r\n >\r\n {{ config.invalidEmailErrorMessage }}\r\n </p>\r\n </div>\r\n <div\r\n class=\"ieeesa-form-error\"\r\n *ngIf=\"\r\n (formGroup.controls[config.controlName]?.touched ||\r\n formGroup.controls[config.controlName]?.dirty) &&\r\n submitResponse\r\n \"\r\n >\r\n <p class=\"ieeesa-form-error--text mt-1\">\r\n {{ submitResponse }}\r\n </p>\r\n </div>\r\n</ng-container>\r\n", styles: [".ieeesa-subtitle{text-align:left;font-family:Calibri Regular;font-size:1.56em;letter-spacing:0;color:#000;opacity:1}.ieeesa-body{text-align:left;font-family:Calibri Regular;font-size:1.25em;letter-spacing:0;color:#000;opacity:1}.ieeesa-display-lg-57{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:3.5625em;line-height:64px;color:#000;letter-spacing:0}.ieeesa-display-md-47{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.9375em;line-height:52px;color:#000;letter-spacing:0}.ieeesa-display-sm-38{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.375em;line-height:44px;color:#000;letter-spacing:0}.ieeesa-headline-lg-34{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.125em;line-height:40px;color:#000;letter-spacing:0}.ieeesa-headline-md-30{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.875em;line-height:36px;color:#000;letter-spacing:0}.ieeesa-headline-sm-26{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.625em;line-height:32px;color:#000;letter-spacing:0}.ieeesa-title-lg-bold-24{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1.5em;line-height:28px;color:#000;letter-spacing:0}.ieeesa-title-lg-24{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.5em;line-height:28px;color:#000;letter-spacing:0}.ieeesa-title-md-18{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.125em;line-height:24px;color:#000;letter-spacing:.009375em}.ieeesa-title-sm-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-lg-bold-16{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-lg-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-md-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875em;line-height:16px;color:#000;letter-spacing:.03125em}.ieeesa-label-sm-13{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.8125em;line-height:16px;color:#000;letter-spacing:.03125em}.ieeesa-body-lg-bold-18{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1.125em;line-height:24px;color:#000;letter-spacing:.03125em}.ieeesa-body-lg-18{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.125em;line-height:24px;color:#000;letter-spacing:.03125em}.ieeesa-body-md-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1em;line-height:20px;color:#000;letter-spacing:.015625em}.ieeesa-body-sm-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875em;line-height:16px;color:#000;letter-spacing:.025em}.ieeesa-title-inter-lg-bold-24{font-family:Inter Bold;font-style:normal;font-weight:700;font-size:1.5em;line-height:29px;color:#000;letter-spacing:0}.mat-mdc-button.mat-mdc-button-base.mat-primary-button,.mat-mdc-button.mat-mdc-button-base.mat-secondary-button{min-width:103px;width:auto;min-height:40px;height:auto;border-radius:3px;text-align:center;padding:.625em 1.5em;border:none;font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.mat-mdc-button.mat-mdc-button-base>.mat-icon{margin-right:11px}.mat-mdc-button.mat-mdc-button-base.mat-primary-button{background-color:#00629b;color:#fff}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:hover{background-color:#003e65}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:active{background-color:#00629b}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:disabled{background-color:#1c1b1f1f}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button{color:#fff;background:#a7a8aa;box-shadow:0 1px 2px #0000004d,0 2px 6px 2px #00000026}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:hover{background:#a7a8aa}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:active{background:rgba(29,25,43,.12)}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:disabled{background:rgba(28,27,31,.12);color:#1c1b1f;opacity:.38}.ieeesa-text-button{color:#cac4d0;background:none;border:none}.flex-align-center{display:flex;align-items:center;justify-content:center}.mat-button-toggle-checked{background-color:#a7a8aa}.mat-button-toggle-checked .mat-button-toggle-label-content:before{font-family:\"Font Awesome 5 Free\";font-weight:900;content:\"\\f00c\";padding-right:.5625em}.mat-button-toggle-group .mat-button-toggle-label-content{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1em;line-height:20px;color:#1c1b1f;letter-spacing:.00625em}@media (max-width: 768px){.mat-button-toggle-group .mat-button-toggle-label-content{max-width:8ch;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;position:relative}}.cdk-overlay-pane{width:100%;min-width:312px}.ieeesa-form-error--text{color:#ba0c2f;padding-left:14px}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] }); }
687
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: DatePickerHeaderComponent, deps: [{ token: i7.MatCalendar }, { token: i2$1.DateAdapter }, { token: MAT_DATE_FORMATS }, { token: DatepickerService }], target: i0.ɵɵFactoryTarget.Component }); }
688
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.3", type: DatePickerHeaderComponent, isStandalone: true, selector: "ieeesa-date-picker-header", inputs: { group: "group" }, ngImport: i0, template: "<div class=\"ieeesa-datepicker-header--selected-date-container\">\r\n <p class=\"ieeesa-label-lg-bold-16 ieeesa-datepicker-header__select-date-label\">\r\n {{ datePickerInfo.datePicker.selectDateLabel }}\r\n </p>\r\n <p\r\n class=\"headline-lg-34 ieeesa-datepicker-header__selected-date\"\r\n *ngIf=\"range || isRangeSelection\"\r\n >\r\n {{ range.start }} - {{ range.end }}\r\n </p>\r\n <p\r\n class=\"headline-lg-34 ieeesa-datepicker-header__selected-date\"\r\n *ngIf=\"!isRangeSelection\"\r\n >\r\n {{ selectedDate }}\r\n </p>\r\n</div>\r\n<div class=\"ieeesa-datepicker-header--content\">\r\n <button\r\n mat-button\r\n type=\"button\"\r\n class=\"ieeesa-datepicker-header--content--period-button ieeesa-label-lg-16\"\r\n (click)=\"setCalendarView()\"\r\n [attr.aria-label]=\"getMonthLabel\"\r\n cdkAriaLive=\"polite\"\r\n >\r\n {{ getMonthLabel }}\r\n <mat-icon\r\n class=\"ieeesa-datepicker-header--content--period-button--arrow-icon\"\r\n *ngIf=\"!arrowDirection\"\r\n >arrow_drop_down</mat-icon\r\n >\r\n <mat-icon\r\n class=\"ieeesa-datepicker-header--content--period-button--arrow-icon\"\r\n *ngIf=\"arrowDirection\"\r\n >arrow_drop_up</mat-icon\r\n >\r\n </button>\r\n <button\r\n mat-button\r\n type=\"button\"\r\n class=\"ieeesa-label-lg-16 ieeesa-datepicker-header--content--arrow-left-btn\"\r\n [attr.aria-label]=\"datePickerInfo.ariaLabel.previousMonth\"\r\n cdkAriaLive=\"polite\"\r\n >\r\n <mat-icon\r\n (click)=\"setPreviousMonth('month')\"\r\n class=\"ieeesa-datepicker-header__arrow-left\"\r\n >keyboard_arrow_left</mat-icon\r\n >\r\n </button>\r\n <button\r\n mat-button\r\n type=\"button\"\r\n class=\"ieeesa-label-lg-16 ieeesa-datepicker-header--content--arrow-right-btn\"\r\n [attr.aria-label]=\"datePickerInfo.ariaLabel.nextMonth\"\r\n cdkAriaLive=\"polite\"\r\n >\r\n <mat-icon (click)=\"setNextMonth('month')\"> keyboard_arrow_right</mat-icon>\r\n </button>\r\n</div>\r\n", styles: [".ieeesa-subtitle{text-align:left;font-family:Calibri Regular;font-size:1.56em;letter-spacing:0;color:#000;opacity:1}.ieeesa-body{text-align:left;font-family:Calibri Regular;font-size:1.25em;letter-spacing:0;color:#000;opacity:1}.ieeesa-display-lg-57{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:3.5625em;line-height:64px;color:#000;letter-spacing:0}.ieeesa-display-md-47{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.9375em;line-height:52px;color:#000;letter-spacing:0}.ieeesa-display-sm-38{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.375em;line-height:44px;color:#000;letter-spacing:0}.ieeesa-headline-lg-34{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.125em;line-height:40px;color:#000;letter-spacing:0}.ieeesa-headline-md-30{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.875em;line-height:36px;color:#000;letter-spacing:0}.ieeesa-headline-sm-26{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.625em;line-height:32px;color:#000;letter-spacing:0}.ieeesa-title-lg-bold-24{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1.5em;line-height:28px;color:#000;letter-spacing:0}.ieeesa-title-lg-24{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.5em;line-height:28px;color:#000;letter-spacing:0}.ieeesa-title-md-18{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.125em;line-height:24px;color:#000;letter-spacing:.009375em}.ieeesa-title-sm-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-lg-bold-16{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-lg-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-md-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875em;line-height:16px;color:#000;letter-spacing:.03125em}.ieeesa-label-sm-13{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.8125em;line-height:16px;color:#000;letter-spacing:.03125em}.ieeesa-body-lg-bold-18{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1.125em;line-height:24px;color:#000;letter-spacing:.03125em}.ieeesa-body-lg-18{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.125em;line-height:24px;color:#000;letter-spacing:.03125em}.ieeesa-body-md-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1em;line-height:20px;color:#000;letter-spacing:.015625em}.ieeesa-body-sm-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875em;line-height:16px;color:#000;letter-spacing:.025em}.ieeesa-title-inter-lg-bold-24{font-family:Inter Bold;font-style:normal;font-weight:700;font-size:1.5em;line-height:29px;color:#000;letter-spacing:0}.mat-mdc-button.mat-mdc-button-base.mat-primary-button,.mat-mdc-button.mat-mdc-button-base.mat-secondary-button{min-width:103px;width:auto;min-height:40px;height:auto;border-radius:3px;text-align:center;padding:.625em 1.5em;border:none;font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.mat-mdc-button.mat-mdc-button-base>.mat-icon{margin-right:11px}.mat-mdc-button.mat-mdc-button-base.mat-primary-button{background-color:#00629b;color:#fff}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:hover{background-color:#003e65}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:active{background-color:#00629b}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:disabled{background-color:#1c1b1f1f}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button{color:#fff;background:#a7a8aa;box-shadow:0 1px 2px #0000004d,0 2px 6px 2px #00000026}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:hover{background:#a7a8aa}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:active{background:rgba(29,25,43,.12)}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:disabled{background:rgba(28,27,31,.12);color:#1c1b1f;opacity:.38}.ieeesa-text-button{color:#cac4d0;background:none;border:none}.flex-align-center{display:flex;align-items:center;justify-content:center}.mat-button-toggle-checked{background-color:#a7a8aa}.mat-button-toggle-checked .mat-button-toggle-label-content:before{font-family:\"Font Awesome 5 Free\";font-weight:900;content:\"\\f00c\";padding-right:.5625em}.mat-button-toggle-group .mat-button-toggle-label-content{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1em;line-height:20px;color:#1c1b1f;letter-spacing:.00625em}@media (max-width: 768px){.mat-button-toggle-group .mat-button-toggle-label-content{max-width:8ch;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;position:relative}}.cdk-overlay-pane{width:100%;min-width:312px}.ieeesa-datepicker-header--selected-date-container{padding:16px 27px 12px 24px;border-bottom:1px solid #cac4d0}.ieeesa-datepicker-header__selected-date{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.125em;line-height:40px;color:#1c1b1f;letter-spacing:0}.ieeesa-datepicker-header--content{display:flex;flex-direction:row;justify-content:space-between;align-items:center;width:100%;min-height:35px;border-top-right-radius:5px;border-top-left-radius:5px;padding:0 20px}.ieeesa-datepicker-header--content--period-button,.ieeesa-datepicker-header--content--arrow-left-btn,.ieeesa-datepicker-header--content--arrow-right-btn{margin:0;padding:0;border:unset;color:#49454f;background:linear-gradient(0deg,rgba(0,98,155,.11),rgba(0,98,155,.11)),#fffbfe}.ieeesa-datepicker-header--content--period-button--arrow-icon,.ieeesa-datepicker-header--content--arrow-left-btn--arrow-icon,.ieeesa-datepicker-header--content--arrow-right-btn--arrow-icon{position:relative;top:7px;color:#49454f}.ieeesa-datepicker-header__arrow-left{border:unset;color:#49454f;background:linear-gradient(0deg,rgba(0,98,155,.11),rgba(0,98,155,.11)),#fffbfe}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: MatDatepickerModule }, { kind: "ngmodule", type: MatFormFieldModule }, { kind: "ngmodule", type: MatNativeDateModule }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i5$2.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }] }); }
560
689
  }
561
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: FormErrorComponent, decorators: [{
690
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: DatePickerHeaderComponent, decorators: [{
562
691
  type: Component,
563
- args: [{ selector: 'ieeesa-form-error', standalone: true, imports: [CommonModule], template: "<ng-container *ngIf=\"formGroup\">\r\n <div\r\n class=\"ieeesa-body-sm-14 ieeesa-form-error\"\r\n *ngIf=\"\r\n formGroup.controls[config.controlName]?.touched ||\r\n (formGroup.controls[config.controlName]?.dirty &&\r\n formGroup.controls[config.controlName]?.invalid)\r\n \"\r\n >\r\n <p\r\n *ngIf=\"formGroup.controls[config.controlName].errors?.['required']\"\r\n class=\"ieeesa-form-error--text\"\r\n >\r\n {{ config.requiredErrorMessage }}\r\n </p>\r\n <p\r\n *ngIf=\"formGroup.controls[config.controlName].errors?.['minlength']\"\r\n class=\"ieeesa-form-error--text\"\r\n >\r\n {{ config.minErrorMessage }}\r\n </p>\r\n <p\r\n *ngIf=\"formGroup.controls[config.controlName].errors?.['maxlength'] || formGroup.controls[config.controlName].errors?.['max']\"\r\n class=\"ieeesa-form-error--text\"\r\n >\r\n {{ config.maxErrorMessage }}\r\n </p>\r\n <p\r\n *ngIf=\"formGroup.controls[config.controlName].errors?.['pattern']\"\r\n class=\"ieeesa-form-error--text\"\r\n >\r\n {{ config.patternErrorMessage }}\r\n </p>\r\n <p\r\n *ngIf=\"\r\n formGroup.controls[config.controlName].errors?.['email']\"\r\n class=\"ieeesa-form-error--text\"\r\n >\r\n {{ config.invalidEmailErrorMessage }}\r\n </p>\r\n </div>\r\n <div\r\n class=\"ieeesa-form-error\"\r\n *ngIf=\"\r\n (formGroup.controls[config.controlName]?.touched ||\r\n formGroup.controls[config.controlName]?.dirty) &&\r\n submitResponse\r\n \"\r\n >\r\n <p class=\"ieeesa-form-error--text mt-1\">\r\n {{ submitResponse }}\r\n </p>\r\n </div>\r\n</ng-container>\r\n", styles: [".ieeesa-subtitle{text-align:left;font-family:Calibri Regular;font-size:1.56em;letter-spacing:0;color:#000;opacity:1}.ieeesa-body{text-align:left;font-family:Calibri Regular;font-size:1.25em;letter-spacing:0;color:#000;opacity:1}.ieeesa-display-lg-57{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:3.5625em;line-height:64px;color:#000;letter-spacing:0}.ieeesa-display-md-47{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.9375em;line-height:52px;color:#000;letter-spacing:0}.ieeesa-display-sm-38{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.375em;line-height:44px;color:#000;letter-spacing:0}.ieeesa-headline-lg-34{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.125em;line-height:40px;color:#000;letter-spacing:0}.ieeesa-headline-md-30{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.875em;line-height:36px;color:#000;letter-spacing:0}.ieeesa-headline-sm-26{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.625em;line-height:32px;color:#000;letter-spacing:0}.ieeesa-title-lg-bold-24{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1.5em;line-height:28px;color:#000;letter-spacing:0}.ieeesa-title-lg-24{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.5em;line-height:28px;color:#000;letter-spacing:0}.ieeesa-title-md-18{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.125em;line-height:24px;color:#000;letter-spacing:.009375em}.ieeesa-title-sm-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-lg-bold-16{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-lg-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-md-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875em;line-height:16px;color:#000;letter-spacing:.03125em}.ieeesa-label-sm-13{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.8125em;line-height:16px;color:#000;letter-spacing:.03125em}.ieeesa-body-lg-bold-18{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1.125em;line-height:24px;color:#000;letter-spacing:.03125em}.ieeesa-body-lg-18{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.125em;line-height:24px;color:#000;letter-spacing:.03125em}.ieeesa-body-md-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1em;line-height:20px;color:#000;letter-spacing:.015625em}.ieeesa-body-sm-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875em;line-height:16px;color:#000;letter-spacing:.025em}.ieeesa-title-inter-lg-bold-24{font-family:Inter Bold;font-style:normal;font-weight:700;font-size:1.5em;line-height:29px;color:#000;letter-spacing:0}.mat-mdc-button.mat-mdc-button-base.mat-primary-button,.mat-mdc-button.mat-mdc-button-base.mat-secondary-button{min-width:103px;width:auto;min-height:40px;height:auto;border-radius:3px;text-align:center;padding:.625em 1.5em;border:none;font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.mat-mdc-button.mat-mdc-button-base>.mat-icon{margin-right:11px}.mat-mdc-button.mat-mdc-button-base.mat-primary-button{background-color:#00629b;color:#fff}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:hover{background-color:#003e65}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:active{background-color:#00629b}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:disabled{background-color:#1c1b1f1f}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button{color:#fff;background:#a7a8aa;box-shadow:0 1px 2px #0000004d,0 2px 6px 2px #00000026}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:hover{background:#a7a8aa}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:active{background:rgba(29,25,43,.12)}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:disabled{background:rgba(28,27,31,.12);color:#1c1b1f;opacity:.38}.ieeesa-text-button{color:#cac4d0;background:none;border:none}.flex-align-center{display:flex;align-items:center;justify-content:center}.mat-button-toggle-checked{background-color:#a7a8aa}.mat-button-toggle-checked .mat-button-toggle-label-content:before{font-family:\"Font Awesome 5 Free\";font-weight:900;content:\"\\f00c\";padding-right:.5625em}.mat-button-toggle-group .mat-button-toggle-label-content{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1em;line-height:20px;color:#1c1b1f;letter-spacing:.00625em}@media (max-width: 768px){.mat-button-toggle-group .mat-button-toggle-label-content{max-width:8ch;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;position:relative}}.cdk-overlay-pane{width:100%;min-width:312px}.ieeesa-form-error--text{color:#ba0c2f;padding-left:14px}\n"] }]
564
- }], propDecorators: { formGroup: [{
565
- type: Input
566
- }], config: [{
567
- type: Input
568
- }], submitResponse: [{
692
+ args: [{ selector: 'ieeesa-date-picker-header', standalone: true, imports: [
693
+ CommonModule,
694
+ MatDatepickerModule,
695
+ MatFormFieldModule,
696
+ MatNativeDateModule,
697
+ MatIconModule,
698
+ ], template: "<div class=\"ieeesa-datepicker-header--selected-date-container\">\r\n <p class=\"ieeesa-label-lg-bold-16 ieeesa-datepicker-header__select-date-label\">\r\n {{ datePickerInfo.datePicker.selectDateLabel }}\r\n </p>\r\n <p\r\n class=\"headline-lg-34 ieeesa-datepicker-header__selected-date\"\r\n *ngIf=\"range || isRangeSelection\"\r\n >\r\n {{ range.start }} - {{ range.end }}\r\n </p>\r\n <p\r\n class=\"headline-lg-34 ieeesa-datepicker-header__selected-date\"\r\n *ngIf=\"!isRangeSelection\"\r\n >\r\n {{ selectedDate }}\r\n </p>\r\n</div>\r\n<div class=\"ieeesa-datepicker-header--content\">\r\n <button\r\n mat-button\r\n type=\"button\"\r\n class=\"ieeesa-datepicker-header--content--period-button ieeesa-label-lg-16\"\r\n (click)=\"setCalendarView()\"\r\n [attr.aria-label]=\"getMonthLabel\"\r\n cdkAriaLive=\"polite\"\r\n >\r\n {{ getMonthLabel }}\r\n <mat-icon\r\n class=\"ieeesa-datepicker-header--content--period-button--arrow-icon\"\r\n *ngIf=\"!arrowDirection\"\r\n >arrow_drop_down</mat-icon\r\n >\r\n <mat-icon\r\n class=\"ieeesa-datepicker-header--content--period-button--arrow-icon\"\r\n *ngIf=\"arrowDirection\"\r\n >arrow_drop_up</mat-icon\r\n >\r\n </button>\r\n <button\r\n mat-button\r\n type=\"button\"\r\n class=\"ieeesa-label-lg-16 ieeesa-datepicker-header--content--arrow-left-btn\"\r\n [attr.aria-label]=\"datePickerInfo.ariaLabel.previousMonth\"\r\n cdkAriaLive=\"polite\"\r\n >\r\n <mat-icon\r\n (click)=\"setPreviousMonth('month')\"\r\n class=\"ieeesa-datepicker-header__arrow-left\"\r\n >keyboard_arrow_left</mat-icon\r\n >\r\n </button>\r\n <button\r\n mat-button\r\n type=\"button\"\r\n class=\"ieeesa-label-lg-16 ieeesa-datepicker-header--content--arrow-right-btn\"\r\n [attr.aria-label]=\"datePickerInfo.ariaLabel.nextMonth\"\r\n cdkAriaLive=\"polite\"\r\n >\r\n <mat-icon (click)=\"setNextMonth('month')\"> keyboard_arrow_right</mat-icon>\r\n </button>\r\n</div>\r\n", styles: [".ieeesa-subtitle{text-align:left;font-family:Calibri Regular;font-size:1.56em;letter-spacing:0;color:#000;opacity:1}.ieeesa-body{text-align:left;font-family:Calibri Regular;font-size:1.25em;letter-spacing:0;color:#000;opacity:1}.ieeesa-display-lg-57{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:3.5625em;line-height:64px;color:#000;letter-spacing:0}.ieeesa-display-md-47{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.9375em;line-height:52px;color:#000;letter-spacing:0}.ieeesa-display-sm-38{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.375em;line-height:44px;color:#000;letter-spacing:0}.ieeesa-headline-lg-34{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.125em;line-height:40px;color:#000;letter-spacing:0}.ieeesa-headline-md-30{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.875em;line-height:36px;color:#000;letter-spacing:0}.ieeesa-headline-sm-26{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.625em;line-height:32px;color:#000;letter-spacing:0}.ieeesa-title-lg-bold-24{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1.5em;line-height:28px;color:#000;letter-spacing:0}.ieeesa-title-lg-24{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.5em;line-height:28px;color:#000;letter-spacing:0}.ieeesa-title-md-18{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.125em;line-height:24px;color:#000;letter-spacing:.009375em}.ieeesa-title-sm-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-lg-bold-16{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-lg-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-md-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875em;line-height:16px;color:#000;letter-spacing:.03125em}.ieeesa-label-sm-13{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.8125em;line-height:16px;color:#000;letter-spacing:.03125em}.ieeesa-body-lg-bold-18{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1.125em;line-height:24px;color:#000;letter-spacing:.03125em}.ieeesa-body-lg-18{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.125em;line-height:24px;color:#000;letter-spacing:.03125em}.ieeesa-body-md-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1em;line-height:20px;color:#000;letter-spacing:.015625em}.ieeesa-body-sm-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875em;line-height:16px;color:#000;letter-spacing:.025em}.ieeesa-title-inter-lg-bold-24{font-family:Inter Bold;font-style:normal;font-weight:700;font-size:1.5em;line-height:29px;color:#000;letter-spacing:0}.mat-mdc-button.mat-mdc-button-base.mat-primary-button,.mat-mdc-button.mat-mdc-button-base.mat-secondary-button{min-width:103px;width:auto;min-height:40px;height:auto;border-radius:3px;text-align:center;padding:.625em 1.5em;border:none;font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.mat-mdc-button.mat-mdc-button-base>.mat-icon{margin-right:11px}.mat-mdc-button.mat-mdc-button-base.mat-primary-button{background-color:#00629b;color:#fff}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:hover{background-color:#003e65}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:active{background-color:#00629b}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:disabled{background-color:#1c1b1f1f}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button{color:#fff;background:#a7a8aa;box-shadow:0 1px 2px #0000004d,0 2px 6px 2px #00000026}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:hover{background:#a7a8aa}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:active{background:rgba(29,25,43,.12)}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:disabled{background:rgba(28,27,31,.12);color:#1c1b1f;opacity:.38}.ieeesa-text-button{color:#cac4d0;background:none;border:none}.flex-align-center{display:flex;align-items:center;justify-content:center}.mat-button-toggle-checked{background-color:#a7a8aa}.mat-button-toggle-checked .mat-button-toggle-label-content:before{font-family:\"Font Awesome 5 Free\";font-weight:900;content:\"\\f00c\";padding-right:.5625em}.mat-button-toggle-group .mat-button-toggle-label-content{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1em;line-height:20px;color:#1c1b1f;letter-spacing:.00625em}@media (max-width: 768px){.mat-button-toggle-group .mat-button-toggle-label-content{max-width:8ch;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;position:relative}}.cdk-overlay-pane{width:100%;min-width:312px}.ieeesa-datepicker-header--selected-date-container{padding:16px 27px 12px 24px;border-bottom:1px solid #cac4d0}.ieeesa-datepicker-header__selected-date{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.125em;line-height:40px;color:#1c1b1f;letter-spacing:0}.ieeesa-datepicker-header--content{display:flex;flex-direction:row;justify-content:space-between;align-items:center;width:100%;min-height:35px;border-top-right-radius:5px;border-top-left-radius:5px;padding:0 20px}.ieeesa-datepicker-header--content--period-button,.ieeesa-datepicker-header--content--arrow-left-btn,.ieeesa-datepicker-header--content--arrow-right-btn{margin:0;padding:0;border:unset;color:#49454f;background:linear-gradient(0deg,rgba(0,98,155,.11),rgba(0,98,155,.11)),#fffbfe}.ieeesa-datepicker-header--content--period-button--arrow-icon,.ieeesa-datepicker-header--content--arrow-left-btn--arrow-icon,.ieeesa-datepicker-header--content--arrow-right-btn--arrow-icon{position:relative;top:7px;color:#49454f}.ieeesa-datepicker-header__arrow-left{border:unset;color:#49454f;background:linear-gradient(0deg,rgba(0,98,155,.11),rgba(0,98,155,.11)),#fffbfe}\n"] }]
699
+ }], ctorParameters: function () { return [{ type: i7.MatCalendar }, { type: i2$1.DateAdapter }, { type: undefined, decorators: [{
700
+ type: Inject,
701
+ args: [MAT_DATE_FORMATS]
702
+ }] }, { type: DatepickerService }]; }, propDecorators: { group: [{
569
703
  type: Input
570
704
  }] } });
571
705
 
572
- /**
573
- * The NotificationComponent displays a notification with a heading, title, content, and an optional button.
574
- * Component can be reused in page not found, access denied, session expired notification, logged out pages.
575
- * @class NotificationComponent
576
- */
577
- class NotificationComponent {
578
- constructor() {
579
- this.buttonIcon = true;
580
- this.notify = new EventEmitter();
581
- }
706
+ var CalendarType;
707
+ (function (CalendarType) {
708
+ // eslint-disable-next-line no-unused-vars
709
+ CalendarType[CalendarType["SINGLE_DATE_SELECTION"] = 1] = "SINGLE_DATE_SELECTION";
710
+ // eslint-disable-next-line no-unused-vars
711
+ CalendarType[CalendarType["CALENDAR"] = 2] = "CALENDAR";
712
+ // eslint-disable-next-line no-unused-vars
713
+ CalendarType[CalendarType["DATE_RANGE_SELECTION"] = 3] = "DATE_RANGE_SELECTION";
714
+ })(CalendarType || (CalendarType = {}));
715
+
716
+ const moment = moment_;
717
+ class CustomDateAdapter extends MomentDateAdapter {
582
718
  /**
583
- * Emits the notify event on clicking notify button.
719
+ * Overrides the getDayOfWeekNames method of MomentDateAdapter to show first letter of day in capital in date picker header.
720
+ * @return {string[]}
721
+ * @memberof CustomDateAdapter
584
722
  */
585
- onClick() {
586
- this.notify.emit();
723
+ getDayOfWeekNames() {
724
+ return ['S', 'M', 'T', 'W', 'T', 'F', 'S'];
587
725
  }
588
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: NotificationComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
589
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.3", type: NotificationComponent, isStandalone: true, selector: "ieeesa-notification", inputs: { heading: "heading", title: "title", content: "content", buttonLabel: "buttonLabel", buttonIcon: "buttonIcon" }, outputs: { notify: "notify" }, ngImport: i0, template: "<div class=\"ieeesa-notification flex-align-center row\">\r\n <div class=\"ieeesa-notification__body col-md-4 col-lg-4 p-4\">\r\n <h1\r\n class=\"ieeesa-notification__heading ieeesa-display-lg-57 text-capitalize\"\r\n *ngIf=\"heading\"\r\n >\r\n {{ heading }}\r\n </h1>\r\n <p class=\"ieeesa-notification__title ieeesa-title-lg-bold-24\">\r\n {{ title }}\r\n </p>\r\n <p class=\"ieeesa-notification__message ieeesa-title-md-18\">{{ content }}</p>\r\n <button\r\n mat-button\r\n color=\"primary\"\r\n class=\"ieeesa-notification__button ieeesa-label-lg-bold-16 mat-primary-button\"\r\n (click)=\"onClick()\"\r\n >\r\n <i *ngIf=\"buttonIcon\" class=\"fa-solid fa-arrow-left\"></i>\r\n {{ buttonLabel }}\r\n </button>\r\n </div>\r\n</div>\r\n", styles: [".ieeesa-subtitle{text-align:left;font-family:Calibri Regular;font-size:1.56em;letter-spacing:0;color:#000;opacity:1}.ieeesa-body{text-align:left;font-family:Calibri Regular;font-size:1.25em;letter-spacing:0;color:#000;opacity:1}.ieeesa-display-lg-57{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:3.5625em;line-height:64px;color:#000;letter-spacing:0}.ieeesa-display-md-47{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.9375em;line-height:52px;color:#000;letter-spacing:0}.ieeesa-display-sm-38{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.375em;line-height:44px;color:#000;letter-spacing:0}.ieeesa-headline-lg-34{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.125em;line-height:40px;color:#000;letter-spacing:0}.ieeesa-headline-md-30{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.875em;line-height:36px;color:#000;letter-spacing:0}.ieeesa-headline-sm-26{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.625em;line-height:32px;color:#000;letter-spacing:0}.ieeesa-title-lg-bold-24{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1.5em;line-height:28px;color:#000;letter-spacing:0}.ieeesa-title-lg-24{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.5em;line-height:28px;color:#000;letter-spacing:0}.ieeesa-title-md-18{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.125em;line-height:24px;color:#000;letter-spacing:.009375em}.ieeesa-title-sm-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-lg-bold-16{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-lg-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-md-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875em;line-height:16px;color:#000;letter-spacing:.03125em}.ieeesa-label-sm-13{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.8125em;line-height:16px;color:#000;letter-spacing:.03125em}.ieeesa-body-lg-bold-18{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1.125em;line-height:24px;color:#000;letter-spacing:.03125em}.ieeesa-body-lg-18{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.125em;line-height:24px;color:#000;letter-spacing:.03125em}.ieeesa-body-md-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1em;line-height:20px;color:#000;letter-spacing:.015625em}.ieeesa-body-sm-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875em;line-height:16px;color:#000;letter-spacing:.025em}.ieeesa-title-inter-lg-bold-24{font-family:Inter Bold;font-style:normal;font-weight:700;font-size:1.5em;line-height:29px;color:#000;letter-spacing:0}.mat-mdc-button.mat-mdc-button-base.mat-primary-button,.mat-mdc-button.mat-mdc-button-base.mat-secondary-button{min-width:103px;width:auto;min-height:40px;height:auto;border-radius:3px;text-align:center;padding:.625em 1.5em;border:none;font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.mat-mdc-button.mat-mdc-button-base>.mat-icon{margin-right:11px}.mat-mdc-button.mat-mdc-button-base.mat-primary-button{background-color:#00629b;color:#fff}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:hover{background-color:#003e65}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:active{background-color:#00629b}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:disabled{background-color:#1c1b1f1f}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button{color:#fff;background:#a7a8aa;box-shadow:0 1px 2px #0000004d,0 2px 6px 2px #00000026}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:hover{background:#a7a8aa}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:active{background:rgba(29,25,43,.12)}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:disabled{background:rgba(28,27,31,.12);color:#1c1b1f;opacity:.38}.ieeesa-text-button{color:#cac4d0;background:none;border:none}.flex-align-center{display:flex;align-items:center;justify-content:center}.mat-button-toggle-checked{background-color:#a7a8aa}.mat-button-toggle-checked .mat-button-toggle-label-content:before{font-family:\"Font Awesome 5 Free\";font-weight:900;content:\"\\f00c\";padding-right:.5625em}.mat-button-toggle-group .mat-button-toggle-label-content{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1em;line-height:20px;color:#1c1b1f;letter-spacing:.00625em}@media (max-width: 768px){.mat-button-toggle-group .mat-button-toggle-label-content{max-width:8ch;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;position:relative}}.cdk-overlay-pane{width:100%;min-width:312px}.ieeesa-notification{text-align:center}.ieeesa-notification__body{box-shadow:0 1px 2px #0000004d,0 2px 6px 2px #00000026;border-radius:.5rem;margin:0 auto;font-family:Calibri Regular;padding:2em 0;background-color:#fff;height:max-content;display:flex;flex-direction:column;align-items:center}.ieeesa-notification__heading{color:#0188aa;margin:0;padding-bottom:.5rem}.ieeesa-notification__title{color:#0188aa;padding-bottom:2.5rem;margin:0}.ieeesa-notification__message{color:#002c37;letter-spacing:.03125em;padding-bottom:1rem;margin:0}.ieeesa-notification__button{margin-bottom:.5rem;color:#fff}.ieeesa-notification__button i{padding-right:.5rem}@media screen and (max-width: 576px){.ieeesa-notification__body{width:80%}}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: MatIconModule }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i8.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }] }); }
726
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: CustomDateAdapter, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }
727
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: CustomDateAdapter }); }
590
728
  }
591
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: NotificationComponent, decorators: [{
592
- type: Component,
593
- args: [{ selector: 'ieeesa-notification', standalone: true, imports: [CommonModule, MatIconModule, MatButtonModule], template: "<div class=\"ieeesa-notification flex-align-center row\">\r\n <div class=\"ieeesa-notification__body col-md-4 col-lg-4 p-4\">\r\n <h1\r\n class=\"ieeesa-notification__heading ieeesa-display-lg-57 text-capitalize\"\r\n *ngIf=\"heading\"\r\n >\r\n {{ heading }}\r\n </h1>\r\n <p class=\"ieeesa-notification__title ieeesa-title-lg-bold-24\">\r\n {{ title }}\r\n </p>\r\n <p class=\"ieeesa-notification__message ieeesa-title-md-18\">{{ content }}</p>\r\n <button\r\n mat-button\r\n color=\"primary\"\r\n class=\"ieeesa-notification__button ieeesa-label-lg-bold-16 mat-primary-button\"\r\n (click)=\"onClick()\"\r\n >\r\n <i *ngIf=\"buttonIcon\" class=\"fa-solid fa-arrow-left\"></i>\r\n {{ buttonLabel }}\r\n </button>\r\n </div>\r\n</div>\r\n", styles: [".ieeesa-subtitle{text-align:left;font-family:Calibri Regular;font-size:1.56em;letter-spacing:0;color:#000;opacity:1}.ieeesa-body{text-align:left;font-family:Calibri Regular;font-size:1.25em;letter-spacing:0;color:#000;opacity:1}.ieeesa-display-lg-57{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:3.5625em;line-height:64px;color:#000;letter-spacing:0}.ieeesa-display-md-47{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.9375em;line-height:52px;color:#000;letter-spacing:0}.ieeesa-display-sm-38{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.375em;line-height:44px;color:#000;letter-spacing:0}.ieeesa-headline-lg-34{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.125em;line-height:40px;color:#000;letter-spacing:0}.ieeesa-headline-md-30{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.875em;line-height:36px;color:#000;letter-spacing:0}.ieeesa-headline-sm-26{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.625em;line-height:32px;color:#000;letter-spacing:0}.ieeesa-title-lg-bold-24{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1.5em;line-height:28px;color:#000;letter-spacing:0}.ieeesa-title-lg-24{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.5em;line-height:28px;color:#000;letter-spacing:0}.ieeesa-title-md-18{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.125em;line-height:24px;color:#000;letter-spacing:.009375em}.ieeesa-title-sm-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-lg-bold-16{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-lg-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-md-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875em;line-height:16px;color:#000;letter-spacing:.03125em}.ieeesa-label-sm-13{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.8125em;line-height:16px;color:#000;letter-spacing:.03125em}.ieeesa-body-lg-bold-18{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1.125em;line-height:24px;color:#000;letter-spacing:.03125em}.ieeesa-body-lg-18{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.125em;line-height:24px;color:#000;letter-spacing:.03125em}.ieeesa-body-md-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1em;line-height:20px;color:#000;letter-spacing:.015625em}.ieeesa-body-sm-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875em;line-height:16px;color:#000;letter-spacing:.025em}.ieeesa-title-inter-lg-bold-24{font-family:Inter Bold;font-style:normal;font-weight:700;font-size:1.5em;line-height:29px;color:#000;letter-spacing:0}.mat-mdc-button.mat-mdc-button-base.mat-primary-button,.mat-mdc-button.mat-mdc-button-base.mat-secondary-button{min-width:103px;width:auto;min-height:40px;height:auto;border-radius:3px;text-align:center;padding:.625em 1.5em;border:none;font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.mat-mdc-button.mat-mdc-button-base>.mat-icon{margin-right:11px}.mat-mdc-button.mat-mdc-button-base.mat-primary-button{background-color:#00629b;color:#fff}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:hover{background-color:#003e65}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:active{background-color:#00629b}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:disabled{background-color:#1c1b1f1f}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button{color:#fff;background:#a7a8aa;box-shadow:0 1px 2px #0000004d,0 2px 6px 2px #00000026}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:hover{background:#a7a8aa}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:active{background:rgba(29,25,43,.12)}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:disabled{background:rgba(28,27,31,.12);color:#1c1b1f;opacity:.38}.ieeesa-text-button{color:#cac4d0;background:none;border:none}.flex-align-center{display:flex;align-items:center;justify-content:center}.mat-button-toggle-checked{background-color:#a7a8aa}.mat-button-toggle-checked .mat-button-toggle-label-content:before{font-family:\"Font Awesome 5 Free\";font-weight:900;content:\"\\f00c\";padding-right:.5625em}.mat-button-toggle-group .mat-button-toggle-label-content{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1em;line-height:20px;color:#1c1b1f;letter-spacing:.00625em}@media (max-width: 768px){.mat-button-toggle-group .mat-button-toggle-label-content{max-width:8ch;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;position:relative}}.cdk-overlay-pane{width:100%;min-width:312px}.ieeesa-notification{text-align:center}.ieeesa-notification__body{box-shadow:0 1px 2px #0000004d,0 2px 6px 2px #00000026;border-radius:.5rem;margin:0 auto;font-family:Calibri Regular;padding:2em 0;background-color:#fff;height:max-content;display:flex;flex-direction:column;align-items:center}.ieeesa-notification__heading{color:#0188aa;margin:0;padding-bottom:.5rem}.ieeesa-notification__title{color:#0188aa;padding-bottom:2.5rem;margin:0}.ieeesa-notification__message{color:#002c37;letter-spacing:.03125em;padding-bottom:1rem;margin:0}.ieeesa-notification__button{margin-bottom:.5rem;color:#fff}.ieeesa-notification__button i{padding-right:.5rem}@media screen and (max-width: 576px){.ieeesa-notification__body{width:80%}}\n"] }]
594
- }], propDecorators: { heading: [{
595
- type: Input
596
- }], title: [{
597
- type: Input
598
- }], content: [{
599
- type: Input
600
- }], buttonLabel: [{
601
- type: Input
602
- }], buttonIcon: [{
603
- type: Input
604
- }], notify: [{
605
- type: Output
606
- }] } });
607
-
729
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: CustomDateAdapter, decorators: [{
730
+ type: Injectable
731
+ }] });
608
732
  /**
609
- * Provides implementation of input type number and text
733
+ * Date selection of type SINGLE_DATE_SELECTION, DATE_RANGE_SELECTION and CALENDAR and handling of calendar events.
610
734
  * @export
611
- * @class InputComponent
735
+ * @class DatePickerComponent
612
736
  * @implements {FormField}
737
+ * @implements {OnInit}
738
+ * @implements {AfterViewInit}
613
739
  */
614
- class InputComponent {
615
- constructor() {
616
- this.invalidChars = ['-', '+', 'e'];
617
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
618
- this.buttonActionsInfo = buttonActionsInfo;
740
+ class DatePickerComponent {
741
+ /**
742
+ * Gets preselected dates as an input.
743
+ * @memberof DatePickerComponent
744
+ */
745
+ set selectedDates(value) {
746
+ this._selectedDates = value;
747
+ if (this.formControlName &&
748
+ this.selectedDates?.length === 1 &&
749
+ this.selectedDates[0] !== undefined &&
750
+ this.calendarType === CalendarType.SINGLE_DATE_SELECTION) {
751
+ this.datepickerService.selectedDate = value[0];
752
+ this.createFormGroup(value[0]);
753
+ this.datepickerService.isRangeSelection = false;
754
+ }
619
755
  }
620
756
  /**
621
- * Handles keyboard event of type keydown to restrict invalid characters.
622
- * @param {KeyboardEvent} event
623
- * @memberof InputComponent
757
+ * Returns selected dates
758
+ * @readonly
759
+ * @type {string[]}
760
+ * @memberof DatePickerComponent
624
761
  */
625
- onKeyDown(event) {
626
- if ((this.invalidChars.includes(event.key.toLowerCase()) ||
627
- (this.config.isInteger && event.key.toLowerCase() === '.')) &&
628
- this.config.isNumber) {
629
- event.preventDefault();
762
+ get selectedDates() {
763
+ return this._selectedDates;
764
+ }
765
+ /**
766
+ * Gets preselected date range as an input.
767
+ * @memberof DatePickerComponent
768
+ */
769
+ set selectedRange(value) {
770
+ this._selectedRange = value;
771
+ if (this.selectedRange?.length === 2 &&
772
+ this.calendarType === CalendarType.DATE_RANGE_SELECTION) {
773
+ this.createFormGroupWithRangeControls(value[0], value[1]);
774
+ this.setDateRange(value[0], value[1]);
775
+ this.datepickerService.isRangeSelection = true;
630
776
  }
631
777
  }
632
778
  /**
633
- * Clears the form group control value of type input
634
- * @memberof InputComponent
779
+ * Returns selected date range
780
+ * @readonly
781
+ * @type {string[]}
782
+ * @memberof DatePickerComponent
635
783
  */
636
- clear() {
637
- this.group.get(this.config.controlName)?.setValue('');
784
+ get selectedRange() {
785
+ return this._selectedRange;
786
+ }
787
+ constructor(
788
+ // eslint-disable-next-line no-unused-vars
789
+ fb,
790
+ // eslint-disable-next-line no-unused-vars
791
+ changeDetectorRef,
792
+ // eslint-disable-next-line no-unused-vars
793
+ datepickerService,
794
+ // eslint-disable-next-line no-unused-vars
795
+ formUtilityService // eslint-disable-next-line no-empty-function,
796
+ ) {
797
+ this.fb = fb;
798
+ this.changeDetectorRef = changeDetectorRef;
799
+ this.datepickerService = datepickerService;
800
+ this.formUtilityService = formUtilityService;
801
+ this.datePickerHeader = DatePickerHeaderComponent;
802
+ this.calendarTypes = CalendarType;
803
+ this._selectedDates = [];
804
+ this._selectedRange = [];
805
+ this.calendarType = CalendarType.SINGLE_DATE_SELECTION;
806
+ this.placeholderLabel = '';
807
+ this.isDisabled = false;
808
+ this.isLabelAlignedLeft = false;
809
+ this.datepickerLabel = '';
810
+ this.selectedDate = new EventEmitter();
811
+ this.selectedDateRange = new EventEmitter();
812
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
813
+ this.buttonActionsInfo = constantsInfo;
638
814
  }
639
815
  /**
640
- * Handles form control input on change event to set min and max value errors
641
- * @memberof InputComponent
816
+ * Implementation of ngOnInit lifecycle hook method to creates config if its undefined and sets components instance variables if config is defined. Sets the form group value if form group is defined.
817
+ * @memberof DatePickerComponent
642
818
  */
643
- onChange() {
644
- if (this.config.max &&
645
- this.config.isNumber &&
646
- Number(this.group.get(this.config.controlName)?.value) > this.config.max) {
647
- this.group.get(this.config.controlName)?.setErrors({
648
- maxlength: true,
649
- });
819
+ ngOnInit() {
820
+ if (!this.config) {
821
+ const controlName = this.formControlName ?? 'datepicker';
822
+ this.config = this.formUtilityService.getFormFieldConfig(controlName, FormControlType.DATE);
823
+ if (this.config &&
824
+ this.calendarType === CalendarType.DATE_RANGE_SELECTION) {
825
+ this.config.dateRangeControls = {
826
+ startDate: 'startDate',
827
+ endDate: 'endDate',
828
+ };
829
+ }
650
830
  }
651
- if (this.config.min &&
652
- this.config.isNumber &&
653
- this.group.get(this.config.controlName)?.value !== '' &&
654
- Number(this.group.get(this.config.controlName)?.value) < this.config.min) {
655
- this.group.get(this.config.controlName)?.setErrors({
656
- minlength: true,
657
- });
831
+ else {
832
+ this.initializePropertiesFromConfig();
833
+ }
834
+ if (!this.group) {
835
+ if (this.calendarType === CalendarType.SINGLE_DATE_SELECTION) {
836
+ this.createFormGroup();
837
+ }
838
+ else if (this.calendarType === CalendarType.DATE_RANGE_SELECTION) {
839
+ this.createFormGroupWithRangeControls();
840
+ }
658
841
  }
659
842
  }
660
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: InputComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
661
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.3", type: InputComponent, isStandalone: true, selector: "ieeesa-input", ngImport: i0, template: "<div\r\n [formGroup]=\"group\"\r\n class=\"ieeesa-input-field\"\r\n [ngClass]=\"\r\n config.isLabelAlignedLeft\r\n ? 'ieeesa-input-field__label-left'\r\n : 'ieeesa-input-field__label-top'\r\n \"\r\n>\r\n <mat-label class=\"ieeesa-body-sm-14 ieeesa-input-field__label\">{{\r\n config.label\r\n }}</mat-label>\r\n <mat-form-field>\r\n <input\r\n class=\"ieeesa-input-field__content ieeesa-body-sm-14\"\r\n [type]=\"config.isNumber ? 'number' : 'text'\"\r\n [min]=\"config.min\"\r\n [max]=\"config.max\"\r\n [maxlength]=\"config.maxLength ?? ''\"\r\n [minlength]=\"config.minLength ?? ''\"\r\n [placeholder]=\"config.placeholder ?? ''\"\r\n [placeholder]=\"config.placeholder ?? ''\"\r\n [formControlName]=\"config.controlName\"\r\n [name]=\"config.controlName\"\r\n (keydown)=\"onKeyDown($event)\"\r\n (input)=\"onChange()\"\r\n autocomplete=\"off\"\r\n matInput\r\n />\r\n <button\r\n *ngIf=\"\r\n group.get(this.config.controlName)?.value &&\r\n group.get(this.config.controlName)?.valid\r\n \"\r\n matSuffix\r\n mat-icon-button\r\n [attr.aria-label]=\"buttonActionsInfo.ariaLabel.clear\"\r\n class=\"ieeesa-input-field__btn--clear\"\r\n (click)=\"clear()\"\r\n >\r\n <i class=\"fa-regular fa-circle-xmark ieeesa-input-field__icon--clear\"></i>\r\n </button>\r\n <button\r\n *ngIf=\"\r\n group.get(this.config.controlName)?.invalid &&\r\n group.get(this.config.controlName)?.dirty\r\n \"\r\n class=\"ieeesa-input-field__btn--warning\"\r\n matSuffix\r\n mat-icon-button\r\n [attr.aria-label]=\"buttonActionsInfo.ariaLabel.warning\"\r\n >\r\n <i\r\n class=\"fa-solid fa-circle-exclamation ieeesa-input-field__icon--warning\"\r\n ></i>\r\n </button>\r\n </mat-form-field>\r\n <ieeesa-form-error [formGroup]=\"group\" [config]=\"config\"> </ieeesa-form-error>\r\n</div>\r\n", styles: [".ieeesa-subtitle{text-align:left;font-family:Calibri Regular;font-size:1.56em;letter-spacing:0;color:#000;opacity:1}.ieeesa-body{text-align:left;font-family:Calibri Regular;font-size:1.25em;letter-spacing:0;color:#000;opacity:1}.ieeesa-display-lg-57{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:3.5625em;line-height:64px;color:#000;letter-spacing:0}.ieeesa-display-md-47{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.9375em;line-height:52px;color:#000;letter-spacing:0}.ieeesa-display-sm-38{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.375em;line-height:44px;color:#000;letter-spacing:0}.ieeesa-headline-lg-34{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.125em;line-height:40px;color:#000;letter-spacing:0}.ieeesa-headline-md-30{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.875em;line-height:36px;color:#000;letter-spacing:0}.ieeesa-headline-sm-26{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.625em;line-height:32px;color:#000;letter-spacing:0}.ieeesa-title-lg-bold-24{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1.5em;line-height:28px;color:#000;letter-spacing:0}.ieeesa-title-lg-24{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.5em;line-height:28px;color:#000;letter-spacing:0}.ieeesa-title-md-18{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.125em;line-height:24px;color:#000;letter-spacing:.009375em}.ieeesa-title-sm-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-lg-bold-16{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-lg-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-md-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875em;line-height:16px;color:#000;letter-spacing:.03125em}.ieeesa-label-sm-13{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.8125em;line-height:16px;color:#000;letter-spacing:.03125em}.ieeesa-body-lg-bold-18{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1.125em;line-height:24px;color:#000;letter-spacing:.03125em}.ieeesa-body-lg-18{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.125em;line-height:24px;color:#000;letter-spacing:.03125em}.ieeesa-body-md-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1em;line-height:20px;color:#000;letter-spacing:.015625em}.ieeesa-body-sm-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875em;line-height:16px;color:#000;letter-spacing:.025em}.ieeesa-title-inter-lg-bold-24{font-family:Inter Bold;font-style:normal;font-weight:700;font-size:1.5em;line-height:29px;color:#000;letter-spacing:0}.mat-mdc-button.mat-mdc-button-base.mat-primary-button,.mat-mdc-button.mat-mdc-button-base.mat-secondary-button{min-width:103px;width:auto;min-height:40px;height:auto;border-radius:3px;text-align:center;padding:.625em 1.5em;border:none;font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.mat-mdc-button.mat-mdc-button-base>.mat-icon{margin-right:11px}.mat-mdc-button.mat-mdc-button-base.mat-primary-button{background-color:#00629b;color:#fff}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:hover{background-color:#003e65}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:active{background-color:#00629b}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:disabled{background-color:#1c1b1f1f}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button{color:#fff;background:#a7a8aa;box-shadow:0 1px 2px #0000004d,0 2px 6px 2px #00000026}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:hover{background:#a7a8aa}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:active{background:rgba(29,25,43,.12)}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:disabled{background:rgba(28,27,31,.12);color:#1c1b1f;opacity:.38}.ieeesa-text-button{color:#cac4d0;background:none;border:none}.flex-align-center{display:flex;align-items:center;justify-content:center}.mat-button-toggle-checked{background-color:#a7a8aa}.mat-button-toggle-checked .mat-button-toggle-label-content:before{font-family:\"Font Awesome 5 Free\";font-weight:900;content:\"\\f00c\";padding-right:.5625em}.mat-button-toggle-group .mat-button-toggle-label-content{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1em;line-height:20px;color:#1c1b1f;letter-spacing:.00625em}@media (max-width: 768px){.mat-button-toggle-group .mat-button-toggle-label-content{max-width:8ch;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;position:relative}}.cdk-overlay-pane{width:100%;min-width:312px}.ieeesa-input-field__warning-btn{display:none}.ieeesa-input-field__icon--clear,.ieeesa-input-field__icon--warning{height:20px;width:20px}.ieeesa-input-field__icon--warning{color:#ba0c2f}.ieeesa-input-field__btn--clear,.ieeesa-input-field__btn--warning{border:none;background-color:inherit}.ieeesa-input-field__content{font-family:Calibri Regular;font-size:1.125em}.ieeesa-input-field__label-left{display:flex}.ieeesa-input-field__label-top{display:block}.ieeesa-input-field .mat-mdc-form-field{min-height:52px;width:-webkit-fill-available}.ieeesa-input-field .mat-mdc-form-field-subscript-wrapper{display:none}.ieeesa-input-field .mat-mdc-text-field-wrapper{height:40px;min-width:210px;width:auto;background-color:#fffbfe;border-radius:4px 4px 0 0}.ieeesa-input-field .mat-mdc-form-field-focus-overlay{background-color:#fffbfe}.ieeesa-input-field .mdc-text-field--filled .mdc-line-ripple:after{border-bottom:2px solid #00b5e2;opacity:.5}.ieeesa-input-field .mdc-text-field--no-label:not(.mdc-text-field--outlined):not(.mdc-text-field--textarea) .mat-mdc-form-field-infix{padding-top:9px}.ieeesa-input-field .mat-mdc-form-field-icon-suffix,.ieeesa-input-field [dir=rtl] .mat-mdc-form-field-icon-prefix{padding:0 8px 16px 4px}.ieeesa-input-field:has(.mdc-line-ripple--active) .ieeesa-input-field__label{color:#00b5e2}.ieeesa-input-field:has(.mdc-line-ripple--active) .mat-mdc-form-field-focus-overlay{background-color:#1c1b1f;opacity:.2}.ieeesa-input-field:has(.mdc-text-field--invalid) .mdc-text-field--filled .mdc-line-ripple:after{border-bottom:2px solid #ba0c2f;opacity:.5}.ieeesa-input-field:has(.mdc-text-field--invalid) .ieeesa-input-field__btn--warning{display:block}.ieeesa-input-field:has(.mdc-text-field--invalid) .ieeesa-input-field__label{color:#ba0c2f}input::-webkit-outer-spin-button,input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i3.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: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i3.MinLengthValidator, selector: "[minlength][formControlName],[minlength][formControl],[minlength][ngModel]", inputs: ["minlength"] }, { kind: "directive", type: i3.MaxLengthValidator, selector: "[maxlength][formControlName],[maxlength][formControl],[maxlength][ngModel]", inputs: ["maxlength"] }, { kind: "directive", type: i3.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i3.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: FormErrorComponent$1, selector: "ieeesa-form-error", inputs: ["formGroup", "config", "submitResponse"] }, { kind: "ngmodule", type: MatInputModule }, { kind: "directive", type: i5.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "component", type: i4.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i4.MatLabel, selector: "mat-label" }, { kind: "directive", type: i4.MatSuffix, selector: "[matSuffix], [matIconSuffix], [matTextSuffix]", inputs: ["matTextSuffix"] }, { kind: "ngmodule", type: MatIconModule }], encapsulation: i0.ViewEncapsulation.None }); }
662
- }
663
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: InputComponent, decorators: [{
664
- type: Component,
665
- args: [{ selector: 'ieeesa-input', standalone: true, imports: [
666
- CommonModule,
667
- ReactiveFormsModule,
668
- FormErrorComponent$1,
669
- MatInputModule,
670
- MatIconModule,
671
- ], encapsulation: ViewEncapsulation.None, template: "<div\r\n [formGroup]=\"group\"\r\n class=\"ieeesa-input-field\"\r\n [ngClass]=\"\r\n config.isLabelAlignedLeft\r\n ? 'ieeesa-input-field__label-left'\r\n : 'ieeesa-input-field__label-top'\r\n \"\r\n>\r\n <mat-label class=\"ieeesa-body-sm-14 ieeesa-input-field__label\">{{\r\n config.label\r\n }}</mat-label>\r\n <mat-form-field>\r\n <input\r\n class=\"ieeesa-input-field__content ieeesa-body-sm-14\"\r\n [type]=\"config.isNumber ? 'number' : 'text'\"\r\n [min]=\"config.min\"\r\n [max]=\"config.max\"\r\n [maxlength]=\"config.maxLength ?? ''\"\r\n [minlength]=\"config.minLength ?? ''\"\r\n [placeholder]=\"config.placeholder ?? ''\"\r\n [placeholder]=\"config.placeholder ?? ''\"\r\n [formControlName]=\"config.controlName\"\r\n [name]=\"config.controlName\"\r\n (keydown)=\"onKeyDown($event)\"\r\n (input)=\"onChange()\"\r\n autocomplete=\"off\"\r\n matInput\r\n />\r\n <button\r\n *ngIf=\"\r\n group.get(this.config.controlName)?.value &&\r\n group.get(this.config.controlName)?.valid\r\n \"\r\n matSuffix\r\n mat-icon-button\r\n [attr.aria-label]=\"buttonActionsInfo.ariaLabel.clear\"\r\n class=\"ieeesa-input-field__btn--clear\"\r\n (click)=\"clear()\"\r\n >\r\n <i class=\"fa-regular fa-circle-xmark ieeesa-input-field__icon--clear\"></i>\r\n </button>\r\n <button\r\n *ngIf=\"\r\n group.get(this.config.controlName)?.invalid &&\r\n group.get(this.config.controlName)?.dirty\r\n \"\r\n class=\"ieeesa-input-field__btn--warning\"\r\n matSuffix\r\n mat-icon-button\r\n [attr.aria-label]=\"buttonActionsInfo.ariaLabel.warning\"\r\n >\r\n <i\r\n class=\"fa-solid fa-circle-exclamation ieeesa-input-field__icon--warning\"\r\n ></i>\r\n </button>\r\n </mat-form-field>\r\n <ieeesa-form-error [formGroup]=\"group\" [config]=\"config\"> </ieeesa-form-error>\r\n</div>\r\n", styles: [".ieeesa-subtitle{text-align:left;font-family:Calibri Regular;font-size:1.56em;letter-spacing:0;color:#000;opacity:1}.ieeesa-body{text-align:left;font-family:Calibri Regular;font-size:1.25em;letter-spacing:0;color:#000;opacity:1}.ieeesa-display-lg-57{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:3.5625em;line-height:64px;color:#000;letter-spacing:0}.ieeesa-display-md-47{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.9375em;line-height:52px;color:#000;letter-spacing:0}.ieeesa-display-sm-38{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.375em;line-height:44px;color:#000;letter-spacing:0}.ieeesa-headline-lg-34{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.125em;line-height:40px;color:#000;letter-spacing:0}.ieeesa-headline-md-30{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.875em;line-height:36px;color:#000;letter-spacing:0}.ieeesa-headline-sm-26{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.625em;line-height:32px;color:#000;letter-spacing:0}.ieeesa-title-lg-bold-24{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1.5em;line-height:28px;color:#000;letter-spacing:0}.ieeesa-title-lg-24{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.5em;line-height:28px;color:#000;letter-spacing:0}.ieeesa-title-md-18{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.125em;line-height:24px;color:#000;letter-spacing:.009375em}.ieeesa-title-sm-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-lg-bold-16{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-lg-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-md-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875em;line-height:16px;color:#000;letter-spacing:.03125em}.ieeesa-label-sm-13{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.8125em;line-height:16px;color:#000;letter-spacing:.03125em}.ieeesa-body-lg-bold-18{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1.125em;line-height:24px;color:#000;letter-spacing:.03125em}.ieeesa-body-lg-18{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.125em;line-height:24px;color:#000;letter-spacing:.03125em}.ieeesa-body-md-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1em;line-height:20px;color:#000;letter-spacing:.015625em}.ieeesa-body-sm-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875em;line-height:16px;color:#000;letter-spacing:.025em}.ieeesa-title-inter-lg-bold-24{font-family:Inter Bold;font-style:normal;font-weight:700;font-size:1.5em;line-height:29px;color:#000;letter-spacing:0}.mat-mdc-button.mat-mdc-button-base.mat-primary-button,.mat-mdc-button.mat-mdc-button-base.mat-secondary-button{min-width:103px;width:auto;min-height:40px;height:auto;border-radius:3px;text-align:center;padding:.625em 1.5em;border:none;font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.mat-mdc-button.mat-mdc-button-base>.mat-icon{margin-right:11px}.mat-mdc-button.mat-mdc-button-base.mat-primary-button{background-color:#00629b;color:#fff}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:hover{background-color:#003e65}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:active{background-color:#00629b}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:disabled{background-color:#1c1b1f1f}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button{color:#fff;background:#a7a8aa;box-shadow:0 1px 2px #0000004d,0 2px 6px 2px #00000026}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:hover{background:#a7a8aa}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:active{background:rgba(29,25,43,.12)}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:disabled{background:rgba(28,27,31,.12);color:#1c1b1f;opacity:.38}.ieeesa-text-button{color:#cac4d0;background:none;border:none}.flex-align-center{display:flex;align-items:center;justify-content:center}.mat-button-toggle-checked{background-color:#a7a8aa}.mat-button-toggle-checked .mat-button-toggle-label-content:before{font-family:\"Font Awesome 5 Free\";font-weight:900;content:\"\\f00c\";padding-right:.5625em}.mat-button-toggle-group .mat-button-toggle-label-content{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1em;line-height:20px;color:#1c1b1f;letter-spacing:.00625em}@media (max-width: 768px){.mat-button-toggle-group .mat-button-toggle-label-content{max-width:8ch;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;position:relative}}.cdk-overlay-pane{width:100%;min-width:312px}.ieeesa-input-field__warning-btn{display:none}.ieeesa-input-field__icon--clear,.ieeesa-input-field__icon--warning{height:20px;width:20px}.ieeesa-input-field__icon--warning{color:#ba0c2f}.ieeesa-input-field__btn--clear,.ieeesa-input-field__btn--warning{border:none;background-color:inherit}.ieeesa-input-field__content{font-family:Calibri Regular;font-size:1.125em}.ieeesa-input-field__label-left{display:flex}.ieeesa-input-field__label-top{display:block}.ieeesa-input-field .mat-mdc-form-field{min-height:52px;width:-webkit-fill-available}.ieeesa-input-field .mat-mdc-form-field-subscript-wrapper{display:none}.ieeesa-input-field .mat-mdc-text-field-wrapper{height:40px;min-width:210px;width:auto;background-color:#fffbfe;border-radius:4px 4px 0 0}.ieeesa-input-field .mat-mdc-form-field-focus-overlay{background-color:#fffbfe}.ieeesa-input-field .mdc-text-field--filled .mdc-line-ripple:after{border-bottom:2px solid #00b5e2;opacity:.5}.ieeesa-input-field .mdc-text-field--no-label:not(.mdc-text-field--outlined):not(.mdc-text-field--textarea) .mat-mdc-form-field-infix{padding-top:9px}.ieeesa-input-field .mat-mdc-form-field-icon-suffix,.ieeesa-input-field [dir=rtl] .mat-mdc-form-field-icon-prefix{padding:0 8px 16px 4px}.ieeesa-input-field:has(.mdc-line-ripple--active) .ieeesa-input-field__label{color:#00b5e2}.ieeesa-input-field:has(.mdc-line-ripple--active) .mat-mdc-form-field-focus-overlay{background-color:#1c1b1f;opacity:.2}.ieeesa-input-field:has(.mdc-text-field--invalid) .mdc-text-field--filled .mdc-line-ripple:after{border-bottom:2px solid #ba0c2f;opacity:.5}.ieeesa-input-field:has(.mdc-text-field--invalid) .ieeesa-input-field__btn--warning{display:block}.ieeesa-input-field:has(.mdc-text-field--invalid) .ieeesa-input-field__label{color:#ba0c2f}input::-webkit-outer-spin-button,input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}\n"] }]
672
- }] });
673
-
674
- class TextAreaComponent {
675
- constructor() {
676
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
677
- this.constants = buttonActionsInfo;
843
+ /**
844
+ * Initializes properties from the config input
845
+ * @memberof DatePickerComponent
846
+ */
847
+ initializePropertiesFromConfig() {
848
+ this.calendarType =
849
+ this.config?.datePicker?.calendarType ??
850
+ CalendarType.SINGLE_DATE_SELECTION;
851
+ this.placeholderLabel = this.config?.datePicker?.placeholderLabel ?? '';
852
+ this.datepickerLabel = this.config?.datePicker?.label ?? '';
853
+ this.isLabelAlignedLeft =
854
+ this.config?.datePicker?.isLabelAlignedLeft ?? false;
855
+ this.dateRange = this.config?.datePicker?.dateRange ?? {
856
+ minDate: '',
857
+ maxDate: '',
858
+ };
859
+ this.isDisabled = !!this.config.disabled;
860
+ if (this.config.datePicker?.calendarType === CalendarType.DATE_RANGE_SELECTION) {
861
+ this.group.addControl('startDate', new FormControl());
862
+ this.group.addControl('endDate', new FormControl());
863
+ }
678
864
  }
679
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: TextAreaComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
680
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.3", type: TextAreaComponent, isStandalone: true, selector: "ieeesa-text-area", ngImport: i0, template: "<div\r\n class=\"ieeesa-text-area-field\"\r\n [formGroup]=\"group\"\r\n [ngClass]=\"\r\n config.isLabelAlignedLeft\r\n ? 'ieeesa-text-area-field__label-left'\r\n : 'ieeesa-text-area-field__label-top'\r\n \"\r\n>\r\n <mat-label class=\"ieeesa-body-sm-14 ieeesa-text-area-field__label\">{{\r\n config.label\r\n }}</mat-label>\r\n <mat-form-field appearance=\"fill\">\r\n <textarea\r\n name=\"config.name\"\r\n matInput\r\n [placeholder]=\"config.placeholder ?? ''\"\r\n [formControlName]=\"config.controlName\"\r\n [maxlength]=\"config.maxLength ?? constants.textarea.maxLengthDefault\"\r\n [readonly]=\"config.isReadonly\"\r\n class=\"ieeesa-text-area-field__content ieeesa-body-lg-18\"\r\n [ngClass]=\"\r\n config.isResize\r\n ? 'ieeesa-text-area-field__resize'\r\n : 'ieeesa-text-area-field__no-resize'\r\n \"\r\n >\r\n {{ config.value }}</textarea\r\n >\r\n </mat-form-field>\r\n <ieeesa-form-error [formGroup]=\"group\" [config]=\"config\"> </ieeesa-form-error>\r\n</div>\r\n", styles: [".ieeesa-subtitle{text-align:left;font-family:Calibri Regular;font-size:1.56em;letter-spacing:0;color:#000;opacity:1}.ieeesa-body{text-align:left;font-family:Calibri Regular;font-size:1.25em;letter-spacing:0;color:#000;opacity:1}.ieeesa-display-lg-57{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:3.5625em;line-height:64px;color:#000;letter-spacing:0}.ieeesa-display-md-47{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.9375em;line-height:52px;color:#000;letter-spacing:0}.ieeesa-display-sm-38{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.375em;line-height:44px;color:#000;letter-spacing:0}.ieeesa-headline-lg-34{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.125em;line-height:40px;color:#000;letter-spacing:0}.ieeesa-headline-md-30{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.875em;line-height:36px;color:#000;letter-spacing:0}.ieeesa-headline-sm-26{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.625em;line-height:32px;color:#000;letter-spacing:0}.ieeesa-title-lg-bold-24{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1.5em;line-height:28px;color:#000;letter-spacing:0}.ieeesa-title-lg-24{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.5em;line-height:28px;color:#000;letter-spacing:0}.ieeesa-title-md-18{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.125em;line-height:24px;color:#000;letter-spacing:.009375em}.ieeesa-title-sm-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-lg-bold-16{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-lg-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-md-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875em;line-height:16px;color:#000;letter-spacing:.03125em}.ieeesa-label-sm-13{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.8125em;line-height:16px;color:#000;letter-spacing:.03125em}.ieeesa-body-lg-bold-18{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1.125em;line-height:24px;color:#000;letter-spacing:.03125em}.ieeesa-body-lg-18{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.125em;line-height:24px;color:#000;letter-spacing:.03125em}.ieeesa-body-md-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1em;line-height:20px;color:#000;letter-spacing:.015625em}.ieeesa-body-sm-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875em;line-height:16px;color:#000;letter-spacing:.025em}.ieeesa-title-inter-lg-bold-24{font-family:Inter Bold;font-style:normal;font-weight:700;font-size:1.5em;line-height:29px;color:#000;letter-spacing:0}.mat-mdc-button.mat-mdc-button-base.mat-primary-button,.mat-mdc-button.mat-mdc-button-base.mat-secondary-button{min-width:103px;width:auto;min-height:40px;height:auto;border-radius:3px;text-align:center;padding:.625em 1.5em;border:none;font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.mat-mdc-button.mat-mdc-button-base>.mat-icon{margin-right:11px}.mat-mdc-button.mat-mdc-button-base.mat-primary-button{background-color:#00629b;color:#fff}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:hover{background-color:#003e65}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:active{background-color:#00629b}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:disabled{background-color:#1c1b1f1f}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button{color:#fff;background:#a7a8aa;box-shadow:0 1px 2px #0000004d,0 2px 6px 2px #00000026}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:hover{background:#a7a8aa}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:active{background:rgba(29,25,43,.12)}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:disabled{background:rgba(28,27,31,.12);color:#1c1b1f;opacity:.38}.ieeesa-text-button{color:#cac4d0;background:none;border:none}.flex-align-center{display:flex;align-items:center;justify-content:center}.mat-button-toggle-checked{background-color:#a7a8aa}.mat-button-toggle-checked .mat-button-toggle-label-content:before{font-family:\"Font Awesome 5 Free\";font-weight:900;content:\"\\f00c\";padding-right:.5625em}.mat-button-toggle-group .mat-button-toggle-label-content{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1em;line-height:20px;color:#1c1b1f;letter-spacing:.00625em}@media (max-width: 768px){.mat-button-toggle-group .mat-button-toggle-label-content{max-width:8ch;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;position:relative}}.cdk-overlay-pane{width:100%;min-width:312px}.ieeesa-text-area-field__label-left{display:flex}.ieeesa-text-area-field__label-top{display:block}.ieeesa-text-area-field__content{min-width:444px;min-height:40px;width:auto;height:auto;border:none;padding-left:14px;border-radius:4px 4px 0 0}.ieeesa-text-area-field__no-resize{resize:none}.ieeesa-text-area-field__resize{resize:auto}.ieeesa-text-area-field .mat-mdc-form-field{width:-webkit-fill-available}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i3.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: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i3.MaxLengthValidator, selector: "[maxlength][formControlName],[maxlength][formControl],[maxlength][ngModel]", inputs: ["maxlength"] }, { kind: "directive", type: i3.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i3.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: FormErrorComponent$1, selector: "ieeesa-form-error", inputs: ["formGroup", "config", "submitResponse"] }, { kind: "ngmodule", type: MatFormFieldModule }, { kind: "component", type: i4.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i4.MatLabel, selector: "mat-label" }, { kind: "ngmodule", type: MatInputModule }, { kind: "directive", type: i5.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }], encapsulation: i0.ViewEncapsulation.None }); }
865
+ /**
866
+ * Handle date change event and emits the selected date.
867
+ * @memberof DatePickerComponent
868
+ */
869
+ onDateChange() {
870
+ this.selectedDate.emit(this.group?.get(this.config.controlName)?.value);
871
+ this.datepickerService.selectedDate = this.group?.get(this.config.controlName)?.value;
872
+ this.datepickerService.isRangeSelection = false;
873
+ }
874
+ /**
875
+ * Sets and emits selected date range
876
+ * @memberof DatePickerComponent
877
+ */
878
+ onDateRangeChange() {
879
+ this.datepickerService.isRangeSelection = true;
880
+ this.setDateRange(this.group.value.startDate ?? '', this.group.value.endDate ?? '');
881
+ this.selectedDateRange.emit({
882
+ startDate: this.group.value.startDate ?? '',
883
+ endDate: this.group.value.endDate ?? '',
884
+ });
885
+ }
886
+ /**
887
+ * Sets the min and max date range.
888
+ * @param {(string | Date)} startDate
889
+ * @param {(string | Date)} endDate
890
+ * @memberof DatePickerComponent
891
+ */
892
+ setDateRange(startDate, endDate) {
893
+ this.datepickerService.range.next({
894
+ start: startDate,
895
+ end: endDate,
896
+ });
897
+ }
898
+ /**
899
+ * Creates form group and initializes form value
900
+ * @param {string} [date]
901
+ * @memberof DatePickerComponent
902
+ */
903
+ createFormGroup(date) {
904
+ this.group = this.fb.group({
905
+ [this.formControlName ? this.formControlName : 'datepicker']: date
906
+ ? [moment(date).utc(true).format()]
907
+ : [],
908
+ });
909
+ }
910
+ /**
911
+ * Creates form group with range type of controls and sets the min and max range values.
912
+ * @param {string} [startDate]
913
+ * @param {string} [endDate]
914
+ * @memberof DatePickerComponent
915
+ */
916
+ createFormGroupWithRangeControls(startDate, endDate) {
917
+ this.group = this.fb.group({
918
+ startDate: startDate ? [moment(startDate).utc(true).format()] : [],
919
+ endDate: endDate ? [moment(endDate).utc(true).format()] : [],
920
+ });
921
+ }
922
+ /**
923
+ * Checks if the form control has required validator.
924
+ * @return {boolean}
925
+ * @memberof DatePickerComponent
926
+ */
927
+ isRequired() {
928
+ return this.group?.controls[this.config?.controlName]?.hasValidator(Validators.required);
929
+ }
930
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: DatePickerComponent, deps: [{ token: i3.FormBuilder }, { token: i0.ChangeDetectorRef }, { token: DatepickerService }, { token: FormUtilityService }], target: i0.ɵɵFactoryTarget.Component }); }
931
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.3", type: DatePickerComponent, isStandalone: true, selector: "ieeesa-date-picker", inputs: { selectedDates: "selectedDates", selectedRange: "selectedRange", calendarType: "calendarType", formControlName: "formControlName", placeholderLabel: "placeholderLabel", isDisabled: "isDisabled", isLabelAlignedLeft: "isLabelAlignedLeft", datepickerLabel: "datepickerLabel", dateRange: "dateRange" }, outputs: { selectedDate: "selectedDate", selectedDateRange: "selectedDateRange" }, providers: [
932
+ { provide: MAT_MOMENT_DATE_ADAPTER_OPTIONS, useValue: { useUtc: true } },
933
+ {
934
+ provide: DateAdapter,
935
+ useClass: CustomDateAdapter,
936
+ deps: [MAT_DATE_LOCALE, MAT_MOMENT_DATE_ADAPTER_OPTIONS],
937
+ },
938
+ {
939
+ provide: MAT_DATE_FORMATS,
940
+ useValue: DateFormats,
941
+ },
942
+ ], ngImport: i0, template: "<div class=\"ieeesa-datepicker\">\r\n <div\r\n [formGroup]=\"group\"\r\n *ngIf=\"calendarType === calendarTypes.SINGLE_DATE_SELECTION\"\r\n class=\"ieeesa-datepicker--single-selection\"\r\n [ngClass]=\"!isRequired() ? 'ieeesa-datepicker__valid-date' : ''\"\r\n [ngClass]=\"{\r\n 'ieeesa-datepicker__valid-date': !isRequired(),\r\n 'ieeesa-datepicker__label-left': isLabelAlignedLeft,\r\n 'ieeesa-datepicker__label-top': !isLabelAlignedLeft\r\n }\"\r\n >\r\n <mat-label *ngIf=\"datepickerLabel\">{{ datepickerLabel }} </mat-label>\r\n <mat-form-field>\r\n <input\r\n matInput\r\n (dateInput)=\"onDateChange()\"\r\n (click)=\"picker.open()\"\r\n [matDatepicker]=\"picker\"\r\n [formControlName]=\"config.controlName\"\r\n [placeholder]=\"buttonActionsInfo?.datePicker?.dateFormatLabel\"\r\n #calendar\r\n readonly\r\n />\r\n <mat-datepicker-toggle\r\n class=\"mat-datepicker-toggle\"\r\n matIconSuffix\r\n [for]=\"picker\"\r\n ></mat-datepicker-toggle>\r\n <mat-datepicker #picker [calendarHeaderComponent]=\"datePickerHeader\">\r\n <mat-datepicker-actions>\r\n <button\r\n mat-button\r\n class=\"mat-text-button ieeesa-datepicker__date-picker-button\"\r\n type=\"button\"\r\n matDatepickerCancel\r\n >\r\n {{ buttonActionsInfo?.button?.cancel }}\r\n </button>\r\n <button\r\n mat-button\r\n class=\"mat-text-button ieeesa-datepicker__date-picker-button\"\r\n color=\"primary\"\r\n type=\"button\"\r\n matDatepickerApply\r\n >\r\n {{ buttonActionsInfo?.button?.ok }}\r\n </button>\r\n </mat-datepicker-actions>\r\n </mat-datepicker>\r\n </mat-form-field>\r\n <ieeesa-form-error [formGroup]=\"group\" [config]=\"config\">\r\n </ieeesa-form-error>\r\n </div>\r\n\r\n <div\r\n [formGroup]=\"group\"\r\n *ngIf=\"calendarType === calendarTypes.DATE_RANGE_SELECTION\"\r\n class=\"ieeesa-datepicker--multi-selection\"\r\n [ngClass]=\"\r\n isLabelAlignedLeft\r\n ? 'ieeesa-datepicker__label-left'\r\n : 'ieeesa-datepicker__label-top'\r\n \"\r\n >\r\n <mat-label *ngIf=\"datepickerLabel\">{{ datepickerLabel }} </mat-label>\r\n <mat-form-field>\r\n <mat-date-range-input [rangePicker]=\"rangePicker\" [formGroup]=\"group\">\r\n <input\r\n matStartDate\r\n matInput\r\n [formControlName]=\"config.dateRangeControls?.startDate ?? ''\"\r\n [placeholder]=\"buttonActionsInfo?.datePicker?.dateFormatLabel + ' - '\"\r\n (dateChange)=\"onDateRangeChange()\"\r\n />\r\n <input\r\n matEndDate\r\n matInput\r\n [formControlName]=\"config.dateRangeControls?.endDate ?? ''\"\r\n [placeholder]=\"buttonActionsInfo?.datePicker?.dateFormatLabel\"\r\n (dateChange)=\"onDateRangeChange()\"\r\n />\r\n </mat-date-range-input>\r\n <mat-datepicker-toggle\r\n class=\"mat-datepicker-toggle\"\r\n matIconSuffix\r\n [for]=\"rangePicker\"\r\n ></mat-datepicker-toggle>\r\n <mat-date-range-picker\r\n #rangePicker\r\n [calendarHeaderComponent]=\"datePickerHeader\"\r\n (dateInput)=\"onDateRangeChange()\"\r\n >\r\n <mat-date-range-picker-actions>\r\n <button\r\n mat-button\r\n class=\"mat-text-button ieeesa-datepicker__date-picker-button\"\r\n matDateRangePickerCancel\r\n type=\"button\"\r\n >\r\n {{ buttonActionsInfo?.button?.cancel }}\r\n </button>\r\n <button\r\n mat-button\r\n class=\"mat-text-button ieeesa-datepicker__date-picker-button\"\r\n color=\"primary\"\r\n matDateRangePickerApply\r\n (click)=\"onDateRangeChange()\"\r\n type=\"button\"\r\n >\r\n {{ buttonActionsInfo?.button?.ok }}\r\n </button>\r\n </mat-date-range-picker-actions>\r\n </mat-date-range-picker>\r\n </mat-form-field>\r\n </div>\r\n\r\n <div\r\n *ngIf=\"calendarType === calendarTypes.CALENDAR\"\r\n class=\"ieeesa-datepicker--calendar\"\r\n >\r\n <mat-calendar\r\n [headerComponent]=\"datePickerHeader\"\r\n [(selected)]=\"calendarSelectedDate\"\r\n >\r\n </mat-calendar>\r\n </div>\r\n</div>\r\n", styles: [".ieeesa-subtitle{text-align:left;font-family:Calibri Regular;font-size:1.56em;letter-spacing:0;color:#000;opacity:1}.ieeesa-body{text-align:left;font-family:Calibri Regular;font-size:1.25em;letter-spacing:0;color:#000;opacity:1}.ieeesa-display-lg-57{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:3.5625em;line-height:64px;color:#000;letter-spacing:0}.ieeesa-display-md-47{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.9375em;line-height:52px;color:#000;letter-spacing:0}.ieeesa-display-sm-38{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.375em;line-height:44px;color:#000;letter-spacing:0}.ieeesa-headline-lg-34{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.125em;line-height:40px;color:#000;letter-spacing:0}.ieeesa-headline-md-30{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.875em;line-height:36px;color:#000;letter-spacing:0}.ieeesa-headline-sm-26{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.625em;line-height:32px;color:#000;letter-spacing:0}.ieeesa-title-lg-bold-24{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1.5em;line-height:28px;color:#000;letter-spacing:0}.ieeesa-title-lg-24{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.5em;line-height:28px;color:#000;letter-spacing:0}.ieeesa-title-md-18{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.125em;line-height:24px;color:#000;letter-spacing:.009375em}.ieeesa-title-sm-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-lg-bold-16{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-lg-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-md-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875em;line-height:16px;color:#000;letter-spacing:.03125em}.ieeesa-label-sm-13{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.8125em;line-height:16px;color:#000;letter-spacing:.03125em}.ieeesa-body-lg-bold-18{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1.125em;line-height:24px;color:#000;letter-spacing:.03125em}.ieeesa-body-lg-18{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.125em;line-height:24px;color:#000;letter-spacing:.03125em}.ieeesa-body-md-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1em;line-height:20px;color:#000;letter-spacing:.015625em}.ieeesa-body-sm-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875em;line-height:16px;color:#000;letter-spacing:.025em}.ieeesa-title-inter-lg-bold-24{font-family:Inter Bold;font-style:normal;font-weight:700;font-size:1.5em;line-height:29px;color:#000;letter-spacing:0}.mat-mdc-button.mat-mdc-button-base.mat-primary-button,.mat-mdc-button.mat-mdc-button-base.mat-secondary-button{min-width:103px;width:auto;min-height:40px;height:auto;border-radius:3px;text-align:center;padding:.625em 1.5em;border:none;font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.mat-mdc-button.mat-mdc-button-base>.mat-icon{margin-right:11px}.mat-mdc-button.mat-mdc-button-base.mat-primary-button{background-color:#00629b;color:#fff}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:hover{background-color:#003e65}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:active{background-color:#00629b}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:disabled{background-color:#1c1b1f1f}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button{color:#fff;background:#a7a8aa;box-shadow:0 1px 2px #0000004d,0 2px 6px 2px #00000026}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:hover{background:#a7a8aa}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:active{background:rgba(29,25,43,.12)}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:disabled{background:rgba(28,27,31,.12);color:#1c1b1f;opacity:.38}.ieeesa-text-button{color:#cac4d0;background:none;border:none}.flex-align-center{display:flex;align-items:center;justify-content:center}.mat-button-toggle-checked{background-color:#a7a8aa}.mat-button-toggle-checked .mat-button-toggle-label-content:before{font-family:\"Font Awesome 5 Free\";font-weight:900;content:\"\\f00c\";padding-right:.5625em}.mat-button-toggle-group .mat-button-toggle-label-content{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1em;line-height:20px;color:#1c1b1f;letter-spacing:.00625em}@media (max-width: 768px){.mat-button-toggle-group .mat-button-toggle-label-content{max-width:8ch;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;position:relative}}.cdk-overlay-pane{width:100%;min-width:312px}.ieeesa-datepicker{min-width:360px;width:auto}.ieeesa-datepicker__label-left{display:flex}.ieeesa-datepicker__label-top{display:block}.ieeesa-datepicker__date-picker-button{background:linear-gradient(0deg,rgba(0,98,155,.11),rgba(0,98,155,.11)),#fffbfe}.ieeesa-datepicker--calendar{background:linear-gradient(0deg,rgba(0,98,155,.11),rgba(0,98,155,.11)),#fffbfe;border-radius:16px}.ieeesa-datepicker--calendar .mat-calendar-body-cell-container{margin:0;padding-top:24px 0}.ieeesa-datepicker--calendar .mat-calendar-table-header th,.ieeesa-datepicker--calendar .mat-calendar-body td{height:24px!important;padding-top:24px!important;width:24px!important;padding-bottom:24px!important}.ieeesa-datepicker--calendar .mat-calendar-body-selected{background-color:#00b5e2;color:#fff;border:none;box-shadow:none}.ieeesa-datepicker--calendar .mat-calendar-body-cell:not(.mat-calendar-body-disabled):hover>.mat-calendar-body-cell-content:not(.mat-calendar-body-selected):not(.mat-calendar-body-comparison-identical){background-color:#00b5e2;color:#fff;border:none;box-shadow:none}.ieeesa-datepicker--calendar .mat-calendar-content{padding:0 8px 35px}.ieeesa-datepicker .mat-mdc-form-field{width:-webkit-fill-available}.ieeesa-datepicker .mat-mdc-text-field-wrapper.mdc-text-field.mdc-text-field--outlined.mdc-text-field--no-label,.ieeesa-datepicker .mdc-text-field--filled:not(.mdc-text-field--disabled){border:2px solid #00b5e2;border-radius:4px;height:56px;align-items:center;background-color:#f0f5f9}.ieeesa-datepicker .mdc-text-field--filled:not(.mdc-text-field--disabled) .mdc-line-ripple:before{border:none}.ieeesa-datepicker .mat-mdc-text-field-wrapper.mdc-text-field--outlined .mdc-text-field__input,.ieeesa-datepicker .mdc-text-field--no-label:not(.mdc-text-field--textarea) .mat-mdc-form-field-input-control.mdc-text-field__input{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1em;line-height:24px;color:#1c1b1f;letter-spacing:.03125em}.ieeesa-datepicker .mat-mdc-text-field-wrapper.mdc-text-field--outlined .mdc-text-field__input::placeholder,.ieeesa-datepicker .mdc-text-field--no-label:not(.mdc-text-field--textarea) .mat-mdc-form-field-input-control.mdc-text-field__input::placeholder{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.125em;line-height:24px;color:#49454f;letter-spacing:.03125em}.ieeesa-datepicker .mat-mdc-form-field-hint{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1em;line-height:16px;color:#49454f;letter-spacing:.025em}.ieeesa-datepicker .mat-datepicker-toggle-default-icon{width:18px;height:20px}.mat-datepicker-popup .mat-datepicker-content-container{background:linear-gradient(0deg,rgba(0,98,155,.11),rgba(0,98,155,.11)),#fffbfe;border-radius:28px}.mat-datepicker-popup .mat-datepicker-content-container .mat-calendar-body-cell-content{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.125em;line-height:24px;color:#1c1b1f;letter-spacing:.03125em}.mat-datepicker-popup .mat-datepicker-content-container .mat-calendar-body-selected{background-color:#00b5e2;color:#fff;border:none;box-shadow:none}.mat-datepicker-popup .mat-datepicker-content-container .mat-calendar-body-in-range:before{background-color:#a7a8aa;color:#49454f}.mat-datepicker-popup .mat-datepicker-content{border-radius:28px}.mat-datepicker-popup .mat-calendar-table-header{position:relative;top:25px}.mat-datepicker-popup .mat-calendar-table-header th,.mat-datepicker-popup .mat-calendar-body td{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.125em;line-height:24px;color:#000;letter-spacing:.03125em}.mat-datepicker-popup .mat-calendar-table-header-divider,.mat-datepicker-popup .mat-calendar-body tr:first-child td:only-child{display:none}.mat-datepicker-popup .mat-calendar-body tr:first-child td:first-child:not(:only-child){visibility:hidden}.mat-datepicker-popup .mat-calendar-body{position:relative;top:20px}.mat-datepicker-popup .mat-mdc-menu-panel{min-width:360px;width:auto}.mat-datepicker-popup .mat-calendar-body-today{border-color:#00b5e2;color:#00b5e2}.mat-datepicker-popup .mat-datepicker-actions{padding:15px 10px 10px}.mat-datepicker-popup .mat-datepicker-toggle{color:#49454f}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i3.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: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i3.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i3.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: FormErrorComponent, selector: "ieeesa-form-error", inputs: ["formGroup", "config", "submitResponse"] }, { kind: "ngmodule", type: MatExpansionModule }, { kind: "ngmodule", type: MatMenuModule }, { kind: "ngmodule", type: MatIconModule }, { kind: "ngmodule", type: MatInputModule }, { kind: "directive", type: i5.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "component", type: i4.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i4.MatLabel, selector: "mat-label" }, { kind: "directive", type: i4.MatSuffix, selector: "[matSuffix], [matIconSuffix], [matTextSuffix]", inputs: ["matTextSuffix"] }, { kind: "ngmodule", type: MatFormFieldModule }, { kind: "ngmodule", type: MatDatepickerModule }, { kind: "component", type: i7.MatCalendar, selector: "mat-calendar", inputs: ["headerComponent", "startAt", "startView", "selected", "minDate", "maxDate", "dateFilter", "dateClass", "comparisonStart", "comparisonEnd", "startDateAccessibleName", "endDateAccessibleName"], outputs: ["selectedChange", "yearSelected", "monthSelected", "viewChanged", "_userSelection", "_userDragDrop"], exportAs: ["matCalendar"] }, { kind: "component", type: i7.MatDatepicker, selector: "mat-datepicker", exportAs: ["matDatepicker"] }, { kind: "directive", type: i7.MatDatepickerInput, selector: "input[matDatepicker]", inputs: ["matDatepicker", "min", "max", "matDatepickerFilter"], exportAs: ["matDatepickerInput"] }, { kind: "component", type: i7.MatDatepickerToggle, selector: "mat-datepicker-toggle", inputs: ["for", "tabIndex", "aria-label", "disabled", "disableRipple"], exportAs: ["matDatepickerToggle"] }, { kind: "component", type: i7.MatDateRangeInput, selector: "mat-date-range-input", inputs: ["rangePicker", "required", "dateFilter", "min", "max", "disabled", "separator", "comparisonStart", "comparisonEnd"], exportAs: ["matDateRangeInput"] }, { kind: "directive", type: i7.MatStartDate, selector: "input[matStartDate]", inputs: ["errorStateMatcher"], outputs: ["dateChange", "dateInput"] }, { kind: "directive", type: i7.MatEndDate, selector: "input[matEndDate]", inputs: ["errorStateMatcher"], outputs: ["dateChange", "dateInput"] }, { kind: "component", type: i7.MatDateRangePicker, selector: "mat-date-range-picker", exportAs: ["matDateRangePicker"] }, { kind: "component", type: i7.MatDatepickerActions, selector: "mat-datepicker-actions, mat-date-range-picker-actions" }, { kind: "directive", type: i7.MatDatepickerCancel, selector: "[matDatepickerCancel], [matDateRangePickerCancel]" }, { kind: "directive", type: i7.MatDatepickerApply, selector: "[matDatepickerApply], [matDateRangePickerApply]" }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i8.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }], encapsulation: i0.ViewEncapsulation.None }); }
681
943
  }
682
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: TextAreaComponent, decorators: [{
944
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: DatePickerComponent, decorators: [{
683
945
  type: Component,
684
- args: [{ selector: 'ieeesa-text-area', standalone: true, imports: [
946
+ args: [{ selector: 'ieeesa-date-picker', standalone: true, imports: [
685
947
  CommonModule,
686
948
  ReactiveFormsModule,
687
- FormErrorComponent$1,
688
- MatFormFieldModule,
949
+ FormErrorComponent,
950
+ MatExpansionModule,
951
+ MatMenuModule,
952
+ MatIconModule,
689
953
  MatInputModule,
690
- ], encapsulation: ViewEncapsulation.None, template: "<div\r\n class=\"ieeesa-text-area-field\"\r\n [formGroup]=\"group\"\r\n [ngClass]=\"\r\n config.isLabelAlignedLeft\r\n ? 'ieeesa-text-area-field__label-left'\r\n : 'ieeesa-text-area-field__label-top'\r\n \"\r\n>\r\n <mat-label class=\"ieeesa-body-sm-14 ieeesa-text-area-field__label\">{{\r\n config.label\r\n }}</mat-label>\r\n <mat-form-field appearance=\"fill\">\r\n <textarea\r\n name=\"config.name\"\r\n matInput\r\n [placeholder]=\"config.placeholder ?? ''\"\r\n [formControlName]=\"config.controlName\"\r\n [maxlength]=\"config.maxLength ?? constants.textarea.maxLengthDefault\"\r\n [readonly]=\"config.isReadonly\"\r\n class=\"ieeesa-text-area-field__content ieeesa-body-lg-18\"\r\n [ngClass]=\"\r\n config.isResize\r\n ? 'ieeesa-text-area-field__resize'\r\n : 'ieeesa-text-area-field__no-resize'\r\n \"\r\n >\r\n {{ config.value }}</textarea\r\n >\r\n </mat-form-field>\r\n <ieeesa-form-error [formGroup]=\"group\" [config]=\"config\"> </ieeesa-form-error>\r\n</div>\r\n", styles: [".ieeesa-subtitle{text-align:left;font-family:Calibri Regular;font-size:1.56em;letter-spacing:0;color:#000;opacity:1}.ieeesa-body{text-align:left;font-family:Calibri Regular;font-size:1.25em;letter-spacing:0;color:#000;opacity:1}.ieeesa-display-lg-57{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:3.5625em;line-height:64px;color:#000;letter-spacing:0}.ieeesa-display-md-47{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.9375em;line-height:52px;color:#000;letter-spacing:0}.ieeesa-display-sm-38{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.375em;line-height:44px;color:#000;letter-spacing:0}.ieeesa-headline-lg-34{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.125em;line-height:40px;color:#000;letter-spacing:0}.ieeesa-headline-md-30{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.875em;line-height:36px;color:#000;letter-spacing:0}.ieeesa-headline-sm-26{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.625em;line-height:32px;color:#000;letter-spacing:0}.ieeesa-title-lg-bold-24{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1.5em;line-height:28px;color:#000;letter-spacing:0}.ieeesa-title-lg-24{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.5em;line-height:28px;color:#000;letter-spacing:0}.ieeesa-title-md-18{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.125em;line-height:24px;color:#000;letter-spacing:.009375em}.ieeesa-title-sm-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-lg-bold-16{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-lg-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-md-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875em;line-height:16px;color:#000;letter-spacing:.03125em}.ieeesa-label-sm-13{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.8125em;line-height:16px;color:#000;letter-spacing:.03125em}.ieeesa-body-lg-bold-18{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1.125em;line-height:24px;color:#000;letter-spacing:.03125em}.ieeesa-body-lg-18{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.125em;line-height:24px;color:#000;letter-spacing:.03125em}.ieeesa-body-md-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1em;line-height:20px;color:#000;letter-spacing:.015625em}.ieeesa-body-sm-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875em;line-height:16px;color:#000;letter-spacing:.025em}.ieeesa-title-inter-lg-bold-24{font-family:Inter Bold;font-style:normal;font-weight:700;font-size:1.5em;line-height:29px;color:#000;letter-spacing:0}.mat-mdc-button.mat-mdc-button-base.mat-primary-button,.mat-mdc-button.mat-mdc-button-base.mat-secondary-button{min-width:103px;width:auto;min-height:40px;height:auto;border-radius:3px;text-align:center;padding:.625em 1.5em;border:none;font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.mat-mdc-button.mat-mdc-button-base>.mat-icon{margin-right:11px}.mat-mdc-button.mat-mdc-button-base.mat-primary-button{background-color:#00629b;color:#fff}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:hover{background-color:#003e65}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:active{background-color:#00629b}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:disabled{background-color:#1c1b1f1f}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button{color:#fff;background:#a7a8aa;box-shadow:0 1px 2px #0000004d,0 2px 6px 2px #00000026}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:hover{background:#a7a8aa}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:active{background:rgba(29,25,43,.12)}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:disabled{background:rgba(28,27,31,.12);color:#1c1b1f;opacity:.38}.ieeesa-text-button{color:#cac4d0;background:none;border:none}.flex-align-center{display:flex;align-items:center;justify-content:center}.mat-button-toggle-checked{background-color:#a7a8aa}.mat-button-toggle-checked .mat-button-toggle-label-content:before{font-family:\"Font Awesome 5 Free\";font-weight:900;content:\"\\f00c\";padding-right:.5625em}.mat-button-toggle-group .mat-button-toggle-label-content{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1em;line-height:20px;color:#1c1b1f;letter-spacing:.00625em}@media (max-width: 768px){.mat-button-toggle-group .mat-button-toggle-label-content{max-width:8ch;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;position:relative}}.cdk-overlay-pane{width:100%;min-width:312px}.ieeesa-text-area-field__label-left{display:flex}.ieeesa-text-area-field__label-top{display:block}.ieeesa-text-area-field__content{min-width:444px;min-height:40px;width:auto;height:auto;border:none;padding-left:14px;border-radius:4px 4px 0 0}.ieeesa-text-area-field__no-resize{resize:none}.ieeesa-text-area-field__resize{resize:auto}.ieeesa-text-area-field .mat-mdc-form-field{width:-webkit-fill-available}\n"] }]
691
- }] });
954
+ MatFormFieldModule,
955
+ MatDatepickerModule,
956
+ DatePickerHeaderComponent,
957
+ MatButtonModule,
958
+ ], providers: [
959
+ { provide: MAT_MOMENT_DATE_ADAPTER_OPTIONS, useValue: { useUtc: true } },
960
+ {
961
+ provide: DateAdapter,
962
+ useClass: CustomDateAdapter,
963
+ deps: [MAT_DATE_LOCALE, MAT_MOMENT_DATE_ADAPTER_OPTIONS],
964
+ },
965
+ {
966
+ provide: MAT_DATE_FORMATS,
967
+ useValue: DateFormats,
968
+ },
969
+ ], encapsulation: ViewEncapsulation.None, template: "<div class=\"ieeesa-datepicker\">\r\n <div\r\n [formGroup]=\"group\"\r\n *ngIf=\"calendarType === calendarTypes.SINGLE_DATE_SELECTION\"\r\n class=\"ieeesa-datepicker--single-selection\"\r\n [ngClass]=\"!isRequired() ? 'ieeesa-datepicker__valid-date' : ''\"\r\n [ngClass]=\"{\r\n 'ieeesa-datepicker__valid-date': !isRequired(),\r\n 'ieeesa-datepicker__label-left': isLabelAlignedLeft,\r\n 'ieeesa-datepicker__label-top': !isLabelAlignedLeft\r\n }\"\r\n >\r\n <mat-label *ngIf=\"datepickerLabel\">{{ datepickerLabel }} </mat-label>\r\n <mat-form-field>\r\n <input\r\n matInput\r\n (dateInput)=\"onDateChange()\"\r\n (click)=\"picker.open()\"\r\n [matDatepicker]=\"picker\"\r\n [formControlName]=\"config.controlName\"\r\n [placeholder]=\"buttonActionsInfo?.datePicker?.dateFormatLabel\"\r\n #calendar\r\n readonly\r\n />\r\n <mat-datepicker-toggle\r\n class=\"mat-datepicker-toggle\"\r\n matIconSuffix\r\n [for]=\"picker\"\r\n ></mat-datepicker-toggle>\r\n <mat-datepicker #picker [calendarHeaderComponent]=\"datePickerHeader\">\r\n <mat-datepicker-actions>\r\n <button\r\n mat-button\r\n class=\"mat-text-button ieeesa-datepicker__date-picker-button\"\r\n type=\"button\"\r\n matDatepickerCancel\r\n >\r\n {{ buttonActionsInfo?.button?.cancel }}\r\n </button>\r\n <button\r\n mat-button\r\n class=\"mat-text-button ieeesa-datepicker__date-picker-button\"\r\n color=\"primary\"\r\n type=\"button\"\r\n matDatepickerApply\r\n >\r\n {{ buttonActionsInfo?.button?.ok }}\r\n </button>\r\n </mat-datepicker-actions>\r\n </mat-datepicker>\r\n </mat-form-field>\r\n <ieeesa-form-error [formGroup]=\"group\" [config]=\"config\">\r\n </ieeesa-form-error>\r\n </div>\r\n\r\n <div\r\n [formGroup]=\"group\"\r\n *ngIf=\"calendarType === calendarTypes.DATE_RANGE_SELECTION\"\r\n class=\"ieeesa-datepicker--multi-selection\"\r\n [ngClass]=\"\r\n isLabelAlignedLeft\r\n ? 'ieeesa-datepicker__label-left'\r\n : 'ieeesa-datepicker__label-top'\r\n \"\r\n >\r\n <mat-label *ngIf=\"datepickerLabel\">{{ datepickerLabel }} </mat-label>\r\n <mat-form-field>\r\n <mat-date-range-input [rangePicker]=\"rangePicker\" [formGroup]=\"group\">\r\n <input\r\n matStartDate\r\n matInput\r\n [formControlName]=\"config.dateRangeControls?.startDate ?? ''\"\r\n [placeholder]=\"buttonActionsInfo?.datePicker?.dateFormatLabel + ' - '\"\r\n (dateChange)=\"onDateRangeChange()\"\r\n />\r\n <input\r\n matEndDate\r\n matInput\r\n [formControlName]=\"config.dateRangeControls?.endDate ?? ''\"\r\n [placeholder]=\"buttonActionsInfo?.datePicker?.dateFormatLabel\"\r\n (dateChange)=\"onDateRangeChange()\"\r\n />\r\n </mat-date-range-input>\r\n <mat-datepicker-toggle\r\n class=\"mat-datepicker-toggle\"\r\n matIconSuffix\r\n [for]=\"rangePicker\"\r\n ></mat-datepicker-toggle>\r\n <mat-date-range-picker\r\n #rangePicker\r\n [calendarHeaderComponent]=\"datePickerHeader\"\r\n (dateInput)=\"onDateRangeChange()\"\r\n >\r\n <mat-date-range-picker-actions>\r\n <button\r\n mat-button\r\n class=\"mat-text-button ieeesa-datepicker__date-picker-button\"\r\n matDateRangePickerCancel\r\n type=\"button\"\r\n >\r\n {{ buttonActionsInfo?.button?.cancel }}\r\n </button>\r\n <button\r\n mat-button\r\n class=\"mat-text-button ieeesa-datepicker__date-picker-button\"\r\n color=\"primary\"\r\n matDateRangePickerApply\r\n (click)=\"onDateRangeChange()\"\r\n type=\"button\"\r\n >\r\n {{ buttonActionsInfo?.button?.ok }}\r\n </button>\r\n </mat-date-range-picker-actions>\r\n </mat-date-range-picker>\r\n </mat-form-field>\r\n </div>\r\n\r\n <div\r\n *ngIf=\"calendarType === calendarTypes.CALENDAR\"\r\n class=\"ieeesa-datepicker--calendar\"\r\n >\r\n <mat-calendar\r\n [headerComponent]=\"datePickerHeader\"\r\n [(selected)]=\"calendarSelectedDate\"\r\n >\r\n </mat-calendar>\r\n </div>\r\n</div>\r\n", styles: [".ieeesa-subtitle{text-align:left;font-family:Calibri Regular;font-size:1.56em;letter-spacing:0;color:#000;opacity:1}.ieeesa-body{text-align:left;font-family:Calibri Regular;font-size:1.25em;letter-spacing:0;color:#000;opacity:1}.ieeesa-display-lg-57{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:3.5625em;line-height:64px;color:#000;letter-spacing:0}.ieeesa-display-md-47{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.9375em;line-height:52px;color:#000;letter-spacing:0}.ieeesa-display-sm-38{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.375em;line-height:44px;color:#000;letter-spacing:0}.ieeesa-headline-lg-34{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.125em;line-height:40px;color:#000;letter-spacing:0}.ieeesa-headline-md-30{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.875em;line-height:36px;color:#000;letter-spacing:0}.ieeesa-headline-sm-26{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.625em;line-height:32px;color:#000;letter-spacing:0}.ieeesa-title-lg-bold-24{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1.5em;line-height:28px;color:#000;letter-spacing:0}.ieeesa-title-lg-24{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.5em;line-height:28px;color:#000;letter-spacing:0}.ieeesa-title-md-18{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.125em;line-height:24px;color:#000;letter-spacing:.009375em}.ieeesa-title-sm-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-lg-bold-16{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-lg-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-md-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875em;line-height:16px;color:#000;letter-spacing:.03125em}.ieeesa-label-sm-13{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.8125em;line-height:16px;color:#000;letter-spacing:.03125em}.ieeesa-body-lg-bold-18{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1.125em;line-height:24px;color:#000;letter-spacing:.03125em}.ieeesa-body-lg-18{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.125em;line-height:24px;color:#000;letter-spacing:.03125em}.ieeesa-body-md-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1em;line-height:20px;color:#000;letter-spacing:.015625em}.ieeesa-body-sm-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875em;line-height:16px;color:#000;letter-spacing:.025em}.ieeesa-title-inter-lg-bold-24{font-family:Inter Bold;font-style:normal;font-weight:700;font-size:1.5em;line-height:29px;color:#000;letter-spacing:0}.mat-mdc-button.mat-mdc-button-base.mat-primary-button,.mat-mdc-button.mat-mdc-button-base.mat-secondary-button{min-width:103px;width:auto;min-height:40px;height:auto;border-radius:3px;text-align:center;padding:.625em 1.5em;border:none;font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.mat-mdc-button.mat-mdc-button-base>.mat-icon{margin-right:11px}.mat-mdc-button.mat-mdc-button-base.mat-primary-button{background-color:#00629b;color:#fff}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:hover{background-color:#003e65}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:active{background-color:#00629b}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:disabled{background-color:#1c1b1f1f}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button{color:#fff;background:#a7a8aa;box-shadow:0 1px 2px #0000004d,0 2px 6px 2px #00000026}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:hover{background:#a7a8aa}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:active{background:rgba(29,25,43,.12)}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:disabled{background:rgba(28,27,31,.12);color:#1c1b1f;opacity:.38}.ieeesa-text-button{color:#cac4d0;background:none;border:none}.flex-align-center{display:flex;align-items:center;justify-content:center}.mat-button-toggle-checked{background-color:#a7a8aa}.mat-button-toggle-checked .mat-button-toggle-label-content:before{font-family:\"Font Awesome 5 Free\";font-weight:900;content:\"\\f00c\";padding-right:.5625em}.mat-button-toggle-group .mat-button-toggle-label-content{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1em;line-height:20px;color:#1c1b1f;letter-spacing:.00625em}@media (max-width: 768px){.mat-button-toggle-group .mat-button-toggle-label-content{max-width:8ch;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;position:relative}}.cdk-overlay-pane{width:100%;min-width:312px}.ieeesa-datepicker{min-width:360px;width:auto}.ieeesa-datepicker__label-left{display:flex}.ieeesa-datepicker__label-top{display:block}.ieeesa-datepicker__date-picker-button{background:linear-gradient(0deg,rgba(0,98,155,.11),rgba(0,98,155,.11)),#fffbfe}.ieeesa-datepicker--calendar{background:linear-gradient(0deg,rgba(0,98,155,.11),rgba(0,98,155,.11)),#fffbfe;border-radius:16px}.ieeesa-datepicker--calendar .mat-calendar-body-cell-container{margin:0;padding-top:24px 0}.ieeesa-datepicker--calendar .mat-calendar-table-header th,.ieeesa-datepicker--calendar .mat-calendar-body td{height:24px!important;padding-top:24px!important;width:24px!important;padding-bottom:24px!important}.ieeesa-datepicker--calendar .mat-calendar-body-selected{background-color:#00b5e2;color:#fff;border:none;box-shadow:none}.ieeesa-datepicker--calendar .mat-calendar-body-cell:not(.mat-calendar-body-disabled):hover>.mat-calendar-body-cell-content:not(.mat-calendar-body-selected):not(.mat-calendar-body-comparison-identical){background-color:#00b5e2;color:#fff;border:none;box-shadow:none}.ieeesa-datepicker--calendar .mat-calendar-content{padding:0 8px 35px}.ieeesa-datepicker .mat-mdc-form-field{width:-webkit-fill-available}.ieeesa-datepicker .mat-mdc-text-field-wrapper.mdc-text-field.mdc-text-field--outlined.mdc-text-field--no-label,.ieeesa-datepicker .mdc-text-field--filled:not(.mdc-text-field--disabled){border:2px solid #00b5e2;border-radius:4px;height:56px;align-items:center;background-color:#f0f5f9}.ieeesa-datepicker .mdc-text-field--filled:not(.mdc-text-field--disabled) .mdc-line-ripple:before{border:none}.ieeesa-datepicker .mat-mdc-text-field-wrapper.mdc-text-field--outlined .mdc-text-field__input,.ieeesa-datepicker .mdc-text-field--no-label:not(.mdc-text-field--textarea) .mat-mdc-form-field-input-control.mdc-text-field__input{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1em;line-height:24px;color:#1c1b1f;letter-spacing:.03125em}.ieeesa-datepicker .mat-mdc-text-field-wrapper.mdc-text-field--outlined .mdc-text-field__input::placeholder,.ieeesa-datepicker .mdc-text-field--no-label:not(.mdc-text-field--textarea) .mat-mdc-form-field-input-control.mdc-text-field__input::placeholder{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.125em;line-height:24px;color:#49454f;letter-spacing:.03125em}.ieeesa-datepicker .mat-mdc-form-field-hint{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1em;line-height:16px;color:#49454f;letter-spacing:.025em}.ieeesa-datepicker .mat-datepicker-toggle-default-icon{width:18px;height:20px}.mat-datepicker-popup .mat-datepicker-content-container{background:linear-gradient(0deg,rgba(0,98,155,.11),rgba(0,98,155,.11)),#fffbfe;border-radius:28px}.mat-datepicker-popup .mat-datepicker-content-container .mat-calendar-body-cell-content{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.125em;line-height:24px;color:#1c1b1f;letter-spacing:.03125em}.mat-datepicker-popup .mat-datepicker-content-container .mat-calendar-body-selected{background-color:#00b5e2;color:#fff;border:none;box-shadow:none}.mat-datepicker-popup .mat-datepicker-content-container .mat-calendar-body-in-range:before{background-color:#a7a8aa;color:#49454f}.mat-datepicker-popup .mat-datepicker-content{border-radius:28px}.mat-datepicker-popup .mat-calendar-table-header{position:relative;top:25px}.mat-datepicker-popup .mat-calendar-table-header th,.mat-datepicker-popup .mat-calendar-body td{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.125em;line-height:24px;color:#000;letter-spacing:.03125em}.mat-datepicker-popup .mat-calendar-table-header-divider,.mat-datepicker-popup .mat-calendar-body tr:first-child td:only-child{display:none}.mat-datepicker-popup .mat-calendar-body tr:first-child td:first-child:not(:only-child){visibility:hidden}.mat-datepicker-popup .mat-calendar-body{position:relative;top:20px}.mat-datepicker-popup .mat-mdc-menu-panel{min-width:360px;width:auto}.mat-datepicker-popup .mat-calendar-body-today{border-color:#00b5e2;color:#00b5e2}.mat-datepicker-popup .mat-datepicker-actions{padding:15px 10px 10px}.mat-datepicker-popup .mat-datepicker-toggle{color:#49454f}\n"] }]
970
+ }], ctorParameters: function () { return [{ type: i3.FormBuilder }, { type: i0.ChangeDetectorRef }, { type: DatepickerService }, { type: FormUtilityService }]; }, propDecorators: { selectedDates: [{
971
+ type: Input
972
+ }], selectedRange: [{
973
+ type: Input
974
+ }], calendarType: [{
975
+ type: Input
976
+ }], formControlName: [{
977
+ type: Input
978
+ }], placeholderLabel: [{
979
+ type: Input
980
+ }], isDisabled: [{
981
+ type: Input
982
+ }], isLabelAlignedLeft: [{
983
+ type: Input
984
+ }], datepickerLabel: [{
985
+ type: Input
986
+ }], dateRange: [{
987
+ type: Input
988
+ }], selectedDate: [{
989
+ type: Output
990
+ }], selectedDateRange: [{
991
+ type: Output
992
+ }] } });
692
993
 
693
994
  /**
694
995
  * Provides implementation of form field radio type component
@@ -729,7 +1030,7 @@ class RadioComponent {
729
1030
  }
730
1031
  this.config =
731
1032
  this.config ??
732
- this.formUtilityService.getFormFieldConfig(this.formControlName, FormControlType$1.RADIO);
1033
+ this.formUtilityService.getFormFieldConfig(this.formControlName, FormControlType.RADIO);
733
1034
  }
734
1035
  /**
735
1036
  * Handles radio selection event on change of it
@@ -748,236 +1049,45 @@ class RadioComponent {
748
1049
  trackById(index, radio) {
749
1050
  return radio.id;
750
1051
  }
751
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: RadioComponent, deps: [{ token: i1.FormUtilityService }], target: i0.ɵɵFactoryTarget.Component }); }
752
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.3", type: RadioComponent, isStandalone: true, selector: "ieeesa-radio", inputs: { formControlName: "formControlName", radioGroup: "radioGroup", isDisabled: "isDisabled" }, outputs: { selectedRadioOption: "selectedRadioOption" }, ngImport: i0, template: "<div [formGroup]=\"group\" class=\"ieeesa-radio-field\" *ngIf=\"group\">\r\n <mat-label\r\n class=\"ieeesa-body-sm-14 ieeesa-radio-field__label\"\r\n [ngClass]=\"\r\n config.isLabelAlignedLeft\r\n ? 'ieeesa-radio-field__label-left'\r\n : 'ieeesa-radio-field__label-top'\r\n \"\r\n >{{ config.label }}</mat-label\r\n >\r\n <mat-radio-group\r\n [formControlName]=\"config.controlName\"\r\n [disabled]=\"isDisabled\"\r\n >\r\n <mat-radio-button\r\n *ngFor=\"let radio of radioGroup; trackBy: trackById\"\r\n [value]=\"radio.label\"\r\n [name]=\"radio.label\"\r\n [id]=\"'' + radio.id\"\r\n (change)=\"onChange(radio)\"\r\n [checked]=\"radio.checked\"\r\n class=\"ieeesa-radio-field__button\"\r\n >\r\n {{ radio.label }}\r\n </mat-radio-button>\r\n </mat-radio-group>\r\n <ieeesa-form-error [formGroup]=\"group\" [config]=\"config\"> </ieeesa-form-error>\r\n</div>\r\n", styles: [".ieeesa-subtitle{text-align:left;font-family:Calibri Regular;font-size:1.56em;letter-spacing:0;color:#000;opacity:1}.ieeesa-body{text-align:left;font-family:Calibri Regular;font-size:1.25em;letter-spacing:0;color:#000;opacity:1}.ieeesa-display-lg-57{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:3.5625em;line-height:64px;color:#000;letter-spacing:0}.ieeesa-display-md-47{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.9375em;line-height:52px;color:#000;letter-spacing:0}.ieeesa-display-sm-38{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.375em;line-height:44px;color:#000;letter-spacing:0}.ieeesa-headline-lg-34{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.125em;line-height:40px;color:#000;letter-spacing:0}.ieeesa-headline-md-30{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.875em;line-height:36px;color:#000;letter-spacing:0}.ieeesa-headline-sm-26{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.625em;line-height:32px;color:#000;letter-spacing:0}.ieeesa-title-lg-bold-24{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1.5em;line-height:28px;color:#000;letter-spacing:0}.ieeesa-title-lg-24{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.5em;line-height:28px;color:#000;letter-spacing:0}.ieeesa-title-md-18{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.125em;line-height:24px;color:#000;letter-spacing:.009375em}.ieeesa-title-sm-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-lg-bold-16{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-lg-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-md-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875em;line-height:16px;color:#000;letter-spacing:.03125em}.ieeesa-label-sm-13{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.8125em;line-height:16px;color:#000;letter-spacing:.03125em}.ieeesa-body-lg-bold-18{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1.125em;line-height:24px;color:#000;letter-spacing:.03125em}.ieeesa-body-lg-18{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.125em;line-height:24px;color:#000;letter-spacing:.03125em}.ieeesa-body-md-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1em;line-height:20px;color:#000;letter-spacing:.015625em}.ieeesa-body-sm-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875em;line-height:16px;color:#000;letter-spacing:.025em}.ieeesa-title-inter-lg-bold-24{font-family:Inter Bold;font-style:normal;font-weight:700;font-size:1.5em;line-height:29px;color:#000;letter-spacing:0}.mat-mdc-button.mat-mdc-button-base.mat-primary-button,.mat-mdc-button.mat-mdc-button-base.mat-secondary-button{min-width:103px;width:auto;min-height:40px;height:auto;border-radius:3px;text-align:center;padding:.625em 1.5em;border:none;font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.mat-mdc-button.mat-mdc-button-base>.mat-icon{margin-right:11px}.mat-mdc-button.mat-mdc-button-base.mat-primary-button{background-color:#00629b;color:#fff}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:hover{background-color:#003e65}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:active{background-color:#00629b}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:disabled{background-color:#1c1b1f1f}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button{color:#fff;background:#a7a8aa;box-shadow:0 1px 2px #0000004d,0 2px 6px 2px #00000026}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:hover{background:#a7a8aa}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:active{background:rgba(29,25,43,.12)}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:disabled{background:rgba(28,27,31,.12);color:#1c1b1f;opacity:.38}.ieeesa-text-button{color:#cac4d0;background:none;border:none}.flex-align-center{display:flex;align-items:center;justify-content:center}.mat-button-toggle-checked{background-color:#a7a8aa}.mat-button-toggle-checked .mat-button-toggle-label-content:before{font-family:\"Font Awesome 5 Free\";font-weight:900;content:\"\\f00c\";padding-right:.5625em}.mat-button-toggle-group .mat-button-toggle-label-content{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1em;line-height:20px;color:#1c1b1f;letter-spacing:.00625em}@media (max-width: 768px){.mat-button-toggle-group .mat-button-toggle-label-content{max-width:8ch;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;position:relative}}.cdk-overlay-pane{width:100%;min-width:312px}.ieeesa-radio-field__label-left{display:inline-block;padding-right:20%}.ieeesa-radio-field__label-top{display:block}.ieeesa-radio-field .mat-mdc-radio-button .mdc-radio .mdc-radio__native-control:enabled+.mdc-radio__background .mdc-radio__inner-circle{border-color:#00b5e2!important}.ieeesa-radio-field .mat-mdc-radio-button .mdc-radio .mdc-radio__native-control:enabled:checked+.mdc-radio__background .mdc-radio__outer-circle{border-color:#00b5e2!important}.ieeesa-radio-field .mat-mdc-radio-button .mdc-radio .mdc-radio__native-control:enabled:not(:checked)+.mdc-radio__background .mdc-radio__outer-circle{border-color:#49454f}.ieeesa-radio-field .mat-mdc-radio-button .mdc-radio:hover .mdc-radio__native-control:enabled:not(:checked)+.mdc-radio__background .mdc-radio__outer-circle{border-color:#1c1b1f}.ieeesa-radio-field .mat-ripple-element{background-color:#6750a4}.ieeesa-radio-field .mat-mdc-radio-button.mat-mdc-radio-checked .mat-ripple-element{background-color:#1c1b1f}.ieeesa-radio-field .mat-mdc-radio-button .mat-radio-ripple .mat-ripple-element{opacity:.12}.ieeesa-radio-field .mat-mdc-radio-button .mdc-radio:hover .mdc-radio__native-control:not([disabled]):not(:focus)~.mdc-radio__background:before{opacity:.08}.ieeesa-radio-field .mat-mdc-radio-button.mat-accent{--mat-mdc-radio-checked-ripple-color: $ieeesa-radio-ripple-blue-color;--mat-mdc-radio-ripple-color: $ieeesa-background-black}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: MatRadioModule }, { kind: "directive", type: i3$1.MatRadioGroup, selector: "mat-radio-group", exportAs: ["matRadioGroup"] }, { kind: "component", type: i3$1.MatRadioButton, selector: "mat-radio-button", inputs: ["disableRipple", "tabIndex"], exportAs: ["matRadioButton"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i3.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i3.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: FormErrorComponent$1, selector: "ieeesa-form-error", inputs: ["formGroup", "config", "submitResponse"] }, { kind: "ngmodule", type: MatFormFieldModule }, { kind: "directive", type: i4.MatLabel, selector: "mat-label" }], encapsulation: i0.ViewEncapsulation.None }); }
1052
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: RadioComponent, deps: [{ token: FormUtilityService }], target: i0.ɵɵFactoryTarget.Component }); }
1053
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.3", type: RadioComponent, isStandalone: true, selector: "ieeesa-radio", inputs: { formControlName: "formControlName", radioGroup: "radioGroup", isDisabled: "isDisabled" }, outputs: { selectedRadioOption: "selectedRadioOption" }, ngImport: i0, template: "<div [formGroup]=\"group\" class=\"ieeesa-radio-field\" *ngIf=\"group\">\r\n <mat-label\r\n class=\"ieeesa-body-sm-14 ieeesa-radio-field__label\"\r\n [ngClass]=\"\r\n config.isLabelAlignedLeft\r\n ? 'ieeesa-radio-field__label-left'\r\n : 'ieeesa-radio-field__label-top'\r\n \"\r\n >{{ config.label }}</mat-label\r\n >\r\n <mat-radio-group\r\n [formControlName]=\"config.controlName\"\r\n [disabled]=\"isDisabled\"\r\n >\r\n <mat-radio-button\r\n *ngFor=\"let radio of radioGroup; trackBy: trackById\"\r\n [value]=\"radio.label\"\r\n [name]=\"radio.label\"\r\n [id]=\"'' + radio.id\"\r\n (change)=\"onChange(radio)\"\r\n [checked]=\"radio.checked\"\r\n class=\"ieeesa-radio-field__button\"\r\n >\r\n {{ radio.label }}\r\n </mat-radio-button>\r\n </mat-radio-group>\r\n <ieeesa-form-error [formGroup]=\"group\" [config]=\"config\"> </ieeesa-form-error>\r\n</div>\r\n", styles: [".ieeesa-subtitle{text-align:left;font-family:Calibri Regular;font-size:1.56em;letter-spacing:0;color:#000;opacity:1}.ieeesa-body{text-align:left;font-family:Calibri Regular;font-size:1.25em;letter-spacing:0;color:#000;opacity:1}.ieeesa-display-lg-57{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:3.5625em;line-height:64px;color:#000;letter-spacing:0}.ieeesa-display-md-47{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.9375em;line-height:52px;color:#000;letter-spacing:0}.ieeesa-display-sm-38{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.375em;line-height:44px;color:#000;letter-spacing:0}.ieeesa-headline-lg-34{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.125em;line-height:40px;color:#000;letter-spacing:0}.ieeesa-headline-md-30{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.875em;line-height:36px;color:#000;letter-spacing:0}.ieeesa-headline-sm-26{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.625em;line-height:32px;color:#000;letter-spacing:0}.ieeesa-title-lg-bold-24{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1.5em;line-height:28px;color:#000;letter-spacing:0}.ieeesa-title-lg-24{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.5em;line-height:28px;color:#000;letter-spacing:0}.ieeesa-title-md-18{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.125em;line-height:24px;color:#000;letter-spacing:.009375em}.ieeesa-title-sm-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-lg-bold-16{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-lg-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-md-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875em;line-height:16px;color:#000;letter-spacing:.03125em}.ieeesa-label-sm-13{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.8125em;line-height:16px;color:#000;letter-spacing:.03125em}.ieeesa-body-lg-bold-18{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1.125em;line-height:24px;color:#000;letter-spacing:.03125em}.ieeesa-body-lg-18{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.125em;line-height:24px;color:#000;letter-spacing:.03125em}.ieeesa-body-md-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1em;line-height:20px;color:#000;letter-spacing:.015625em}.ieeesa-body-sm-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875em;line-height:16px;color:#000;letter-spacing:.025em}.ieeesa-title-inter-lg-bold-24{font-family:Inter Bold;font-style:normal;font-weight:700;font-size:1.5em;line-height:29px;color:#000;letter-spacing:0}.mat-mdc-button.mat-mdc-button-base.mat-primary-button,.mat-mdc-button.mat-mdc-button-base.mat-secondary-button{min-width:103px;width:auto;min-height:40px;height:auto;border-radius:3px;text-align:center;padding:.625em 1.5em;border:none;font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.mat-mdc-button.mat-mdc-button-base>.mat-icon{margin-right:11px}.mat-mdc-button.mat-mdc-button-base.mat-primary-button{background-color:#00629b;color:#fff}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:hover{background-color:#003e65}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:active{background-color:#00629b}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:disabled{background-color:#1c1b1f1f}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button{color:#fff;background:#a7a8aa;box-shadow:0 1px 2px #0000004d,0 2px 6px 2px #00000026}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:hover{background:#a7a8aa}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:active{background:rgba(29,25,43,.12)}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:disabled{background:rgba(28,27,31,.12);color:#1c1b1f;opacity:.38}.ieeesa-text-button{color:#cac4d0;background:none;border:none}.flex-align-center{display:flex;align-items:center;justify-content:center}.mat-button-toggle-checked{background-color:#a7a8aa}.mat-button-toggle-checked .mat-button-toggle-label-content:before{font-family:\"Font Awesome 5 Free\";font-weight:900;content:\"\\f00c\";padding-right:.5625em}.mat-button-toggle-group .mat-button-toggle-label-content{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1em;line-height:20px;color:#1c1b1f;letter-spacing:.00625em}@media (max-width: 768px){.mat-button-toggle-group .mat-button-toggle-label-content{max-width:8ch;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;position:relative}}.cdk-overlay-pane{width:100%;min-width:312px}.ieeesa-radio-field__label-left{display:inline-block;padding-right:20%}.ieeesa-radio-field__label-top{display:block}.ieeesa-radio-field .mat-mdc-radio-button .mdc-radio .mdc-radio__native-control:enabled+.mdc-radio__background .mdc-radio__inner-circle{border-color:#00b5e2!important}.ieeesa-radio-field .mat-mdc-radio-button .mdc-radio .mdc-radio__native-control:enabled:checked+.mdc-radio__background .mdc-radio__outer-circle{border-color:#00b5e2!important}.ieeesa-radio-field .mat-mdc-radio-button .mdc-radio .mdc-radio__native-control:enabled:not(:checked)+.mdc-radio__background .mdc-radio__outer-circle{border-color:#49454f}.ieeesa-radio-field .mat-mdc-radio-button .mdc-radio:hover .mdc-radio__native-control:enabled:not(:checked)+.mdc-radio__background .mdc-radio__outer-circle{border-color:#1c1b1f}.ieeesa-radio-field .mat-ripple-element{background-color:#6750a4}.ieeesa-radio-field .mat-mdc-radio-button.mat-mdc-radio-checked .mat-ripple-element{background-color:#1c1b1f}.ieeesa-radio-field .mat-mdc-radio-button .mat-radio-ripple .mat-ripple-element{opacity:.12}.ieeesa-radio-field .mat-mdc-radio-button .mdc-radio:hover .mdc-radio__native-control:not([disabled]):not(:focus)~.mdc-radio__background:before{opacity:.08}.ieeesa-radio-field .mat-mdc-radio-button.mat-accent{--mat-mdc-radio-checked-ripple-color: $ieeesa-radio-ripple-blue-color;--mat-mdc-radio-ripple-color: $ieeesa-background-black}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: MatRadioModule }, { kind: "directive", type: i3$2.MatRadioGroup, selector: "mat-radio-group", exportAs: ["matRadioGroup"] }, { kind: "component", type: i3$2.MatRadioButton, selector: "mat-radio-button", inputs: ["disableRipple", "tabIndex"], exportAs: ["matRadioButton"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i3.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i3.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: FormErrorComponent, selector: "ieeesa-form-error", inputs: ["formGroup", "config", "submitResponse"] }, { kind: "ngmodule", type: MatFormFieldModule }, { kind: "directive", type: i4.MatLabel, selector: "mat-label" }], encapsulation: i0.ViewEncapsulation.None }); }
753
1054
  }
754
1055
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: RadioComponent, decorators: [{
755
- type: Component,
756
- args: [{ selector: 'ieeesa-radio', standalone: true, imports: [
757
- CommonModule,
758
- MatRadioModule,
759
- ReactiveFormsModule,
760
- FormErrorComponent$1,
761
- MatFormFieldModule,
762
- ], encapsulation: ViewEncapsulation.None, template: "<div [formGroup]=\"group\" class=\"ieeesa-radio-field\" *ngIf=\"group\">\r\n <mat-label\r\n class=\"ieeesa-body-sm-14 ieeesa-radio-field__label\"\r\n [ngClass]=\"\r\n config.isLabelAlignedLeft\r\n ? 'ieeesa-radio-field__label-left'\r\n : 'ieeesa-radio-field__label-top'\r\n \"\r\n >{{ config.label }}</mat-label\r\n >\r\n <mat-radio-group\r\n [formControlName]=\"config.controlName\"\r\n [disabled]=\"isDisabled\"\r\n >\r\n <mat-radio-button\r\n *ngFor=\"let radio of radioGroup; trackBy: trackById\"\r\n [value]=\"radio.label\"\r\n [name]=\"radio.label\"\r\n [id]=\"'' + radio.id\"\r\n (change)=\"onChange(radio)\"\r\n [checked]=\"radio.checked\"\r\n class=\"ieeesa-radio-field__button\"\r\n >\r\n {{ radio.label }}\r\n </mat-radio-button>\r\n </mat-radio-group>\r\n <ieeesa-form-error [formGroup]=\"group\" [config]=\"config\"> </ieeesa-form-error>\r\n</div>\r\n", styles: [".ieeesa-subtitle{text-align:left;font-family:Calibri Regular;font-size:1.56em;letter-spacing:0;color:#000;opacity:1}.ieeesa-body{text-align:left;font-family:Calibri Regular;font-size:1.25em;letter-spacing:0;color:#000;opacity:1}.ieeesa-display-lg-57{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:3.5625em;line-height:64px;color:#000;letter-spacing:0}.ieeesa-display-md-47{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.9375em;line-height:52px;color:#000;letter-spacing:0}.ieeesa-display-sm-38{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.375em;line-height:44px;color:#000;letter-spacing:0}.ieeesa-headline-lg-34{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.125em;line-height:40px;color:#000;letter-spacing:0}.ieeesa-headline-md-30{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.875em;line-height:36px;color:#000;letter-spacing:0}.ieeesa-headline-sm-26{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.625em;line-height:32px;color:#000;letter-spacing:0}.ieeesa-title-lg-bold-24{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1.5em;line-height:28px;color:#000;letter-spacing:0}.ieeesa-title-lg-24{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.5em;line-height:28px;color:#000;letter-spacing:0}.ieeesa-title-md-18{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.125em;line-height:24px;color:#000;letter-spacing:.009375em}.ieeesa-title-sm-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-lg-bold-16{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-lg-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-md-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875em;line-height:16px;color:#000;letter-spacing:.03125em}.ieeesa-label-sm-13{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.8125em;line-height:16px;color:#000;letter-spacing:.03125em}.ieeesa-body-lg-bold-18{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1.125em;line-height:24px;color:#000;letter-spacing:.03125em}.ieeesa-body-lg-18{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.125em;line-height:24px;color:#000;letter-spacing:.03125em}.ieeesa-body-md-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1em;line-height:20px;color:#000;letter-spacing:.015625em}.ieeesa-body-sm-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875em;line-height:16px;color:#000;letter-spacing:.025em}.ieeesa-title-inter-lg-bold-24{font-family:Inter Bold;font-style:normal;font-weight:700;font-size:1.5em;line-height:29px;color:#000;letter-spacing:0}.mat-mdc-button.mat-mdc-button-base.mat-primary-button,.mat-mdc-button.mat-mdc-button-base.mat-secondary-button{min-width:103px;width:auto;min-height:40px;height:auto;border-radius:3px;text-align:center;padding:.625em 1.5em;border:none;font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.mat-mdc-button.mat-mdc-button-base>.mat-icon{margin-right:11px}.mat-mdc-button.mat-mdc-button-base.mat-primary-button{background-color:#00629b;color:#fff}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:hover{background-color:#003e65}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:active{background-color:#00629b}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:disabled{background-color:#1c1b1f1f}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button{color:#fff;background:#a7a8aa;box-shadow:0 1px 2px #0000004d,0 2px 6px 2px #00000026}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:hover{background:#a7a8aa}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:active{background:rgba(29,25,43,.12)}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:disabled{background:rgba(28,27,31,.12);color:#1c1b1f;opacity:.38}.ieeesa-text-button{color:#cac4d0;background:none;border:none}.flex-align-center{display:flex;align-items:center;justify-content:center}.mat-button-toggle-checked{background-color:#a7a8aa}.mat-button-toggle-checked .mat-button-toggle-label-content:before{font-family:\"Font Awesome 5 Free\";font-weight:900;content:\"\\f00c\";padding-right:.5625em}.mat-button-toggle-group .mat-button-toggle-label-content{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1em;line-height:20px;color:#1c1b1f;letter-spacing:.00625em}@media (max-width: 768px){.mat-button-toggle-group .mat-button-toggle-label-content{max-width:8ch;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;position:relative}}.cdk-overlay-pane{width:100%;min-width:312px}.ieeesa-radio-field__label-left{display:inline-block;padding-right:20%}.ieeesa-radio-field__label-top{display:block}.ieeesa-radio-field .mat-mdc-radio-button .mdc-radio .mdc-radio__native-control:enabled+.mdc-radio__background .mdc-radio__inner-circle{border-color:#00b5e2!important}.ieeesa-radio-field .mat-mdc-radio-button .mdc-radio .mdc-radio__native-control:enabled:checked+.mdc-radio__background .mdc-radio__outer-circle{border-color:#00b5e2!important}.ieeesa-radio-field .mat-mdc-radio-button .mdc-radio .mdc-radio__native-control:enabled:not(:checked)+.mdc-radio__background .mdc-radio__outer-circle{border-color:#49454f}.ieeesa-radio-field .mat-mdc-radio-button .mdc-radio:hover .mdc-radio__native-control:enabled:not(:checked)+.mdc-radio__background .mdc-radio__outer-circle{border-color:#1c1b1f}.ieeesa-radio-field .mat-ripple-element{background-color:#6750a4}.ieeesa-radio-field .mat-mdc-radio-button.mat-mdc-radio-checked .mat-ripple-element{background-color:#1c1b1f}.ieeesa-radio-field .mat-mdc-radio-button .mat-radio-ripple .mat-ripple-element{opacity:.12}.ieeesa-radio-field .mat-mdc-radio-button .mdc-radio:hover .mdc-radio__native-control:not([disabled]):not(:focus)~.mdc-radio__background:before{opacity:.08}.ieeesa-radio-field .mat-mdc-radio-button.mat-accent{--mat-mdc-radio-checked-ripple-color: $ieeesa-radio-ripple-blue-color;--mat-mdc-radio-ripple-color: $ieeesa-background-black}\n"] }]
763
- }], ctorParameters: function () { return [{ type: i1.FormUtilityService }]; }, propDecorators: { formControlName: [{
764
- type: Input
765
- }], radioGroup: [{
766
- type: Input
767
- }], isDisabled: [{
768
- type: Input
769
- }], selectedRadioOption: [{
770
- type: Output
771
- }] } });
772
-
773
- /**
774
- * Provides implementation of all types of checkboxes.
775
- * @export
776
- * @class CheckboxComponent
777
- * @implements {OnInit}
778
- * @implements {FormField}
779
- */
780
- class CheckboxComponent {
781
- /**
782
- * Input property to get checkbox options.
783
- * @memberof CheckboxComponent
784
- * @usageNotes const checkboxes = [{ id: 1, name:"Angular"}]
785
- */
786
- set checkboxes(value) {
787
- this._checkboxes = value;
788
- }
789
- get checkboxes() {
790
- return this._checkboxes;
791
- }
792
- // eslint-disable-next-line no-unused-vars, no-empty-function
793
- constructor(formUtilityService) {
794
- this.formUtilityService = formUtilityService;
795
- this.checkboxSelection = new EventEmitter();
796
- }
797
- /**
798
- * Implementation of ngOnInit lifecycle hook method of component to initialize component instance properties.
799
- * @memberof CheckboxComponent
800
- */
801
- ngOnInit() {
802
- this.createFormGroupAndInitializeProperties();
803
- }
804
- /**
805
- * Creates form group and initializes components properties from config.
806
- * @memberof CheckboxComponent
807
- */
808
- createFormGroupAndInitializeProperties() {
809
- this.checkboxes = this.config?.checkboxOptions ?? this.checkboxes;
810
- this.group = this.group ?? this.formUtilityService.getFormGroup('checkbox');
811
- this.checkboxes?.forEach((checkbox) => {
812
- this.group.addControl(checkbox.id, new FormControl({
813
- value: checkbox.checked,
814
- disabled: checkbox.disabled,
815
- }));
816
- });
817
- }
818
- /**
819
- * Sets checkbox selection and emits selected option on change event.
820
- * @param {CheckboxOption} option
821
- * @param {boolean} checked
822
- * @memberof CheckboxComponent
823
- */
824
- onChange(option, checked) {
825
- option.checked = checked;
826
- this.checkboxSelection.emit(option);
827
- }
828
- /**
829
- * Allows Angular to detect the specific checkbox option that needs to change or be added instead of rebuilding the whole checkbox options in DOM by tracking option unique Id.
830
- * @param {number} index
831
- * @return {number}
832
- * @memberof CheckboxComponent
833
- */
834
- trackById(index, option) {
835
- return option.id;
836
- }
837
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: CheckboxComponent, deps: [{ token: i1.FormUtilityService }], target: i0.ɵɵFactoryTarget.Component }); }
838
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.3", type: CheckboxComponent, isStandalone: true, selector: "ieeesa-checkbox", inputs: { checkboxes: "checkboxes" }, outputs: { checkboxSelection: "checkboxSelection" }, ngImport: i0, template: "<div\r\n [formGroup]=\"group\"\r\n class=\"ieeesa-checkbox-field\"\r\n *ngIf=\"group\"\r\n [ngClass]=\"\r\n config.isLabelAlignedLeft\r\n ? 'ieeesa-checkbox-field__label-left'\r\n : 'ieeesa-checkbox-field__label-top'\r\n \"\r\n>\r\n <mat-label class=\"ieeesa-body-sm-14 ieeesa-checkbox-field__label\">{{\r\n config.label\r\n }}</mat-label>\r\n <mat-list>\r\n <mat-checkbox\r\n *ngFor=\"let option of checkboxes; trackBy: trackById\"\r\n [formControlName]=\"option.id\"\r\n (change)=\"onChange(option, true)\"\r\n [disabled]=\"option.disabled\"\r\n [checked]=\"option.checked\"\r\n >\r\n {{ option.name }}\r\n </mat-checkbox>\r\n </mat-list>\r\n <ieeesa-form-error [formGroup]=\"group\" [config]=\"config\"> </ieeesa-form-error>\r\n</div>\r\n", styles: [".ieeesa-subtitle{text-align:left;font-family:Calibri Regular;font-size:1.56em;letter-spacing:0;color:#000;opacity:1}.ieeesa-body{text-align:left;font-family:Calibri Regular;font-size:1.25em;letter-spacing:0;color:#000;opacity:1}.ieeesa-display-lg-57{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:3.5625em;line-height:64px;color:#000;letter-spacing:0}.ieeesa-display-md-47{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.9375em;line-height:52px;color:#000;letter-spacing:0}.ieeesa-display-sm-38{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.375em;line-height:44px;color:#000;letter-spacing:0}.ieeesa-headline-lg-34{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.125em;line-height:40px;color:#000;letter-spacing:0}.ieeesa-headline-md-30{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.875em;line-height:36px;color:#000;letter-spacing:0}.ieeesa-headline-sm-26{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.625em;line-height:32px;color:#000;letter-spacing:0}.ieeesa-title-lg-bold-24{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1.5em;line-height:28px;color:#000;letter-spacing:0}.ieeesa-title-lg-24{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.5em;line-height:28px;color:#000;letter-spacing:0}.ieeesa-title-md-18{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.125em;line-height:24px;color:#000;letter-spacing:.009375em}.ieeesa-title-sm-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-lg-bold-16{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-lg-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-md-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875em;line-height:16px;color:#000;letter-spacing:.03125em}.ieeesa-label-sm-13{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.8125em;line-height:16px;color:#000;letter-spacing:.03125em}.ieeesa-body-lg-bold-18{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1.125em;line-height:24px;color:#000;letter-spacing:.03125em}.ieeesa-body-lg-18{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.125em;line-height:24px;color:#000;letter-spacing:.03125em}.ieeesa-body-md-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1em;line-height:20px;color:#000;letter-spacing:.015625em}.ieeesa-body-sm-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875em;line-height:16px;color:#000;letter-spacing:.025em}.ieeesa-title-inter-lg-bold-24{font-family:Inter Bold;font-style:normal;font-weight:700;font-size:1.5em;line-height:29px;color:#000;letter-spacing:0}.mat-mdc-button.mat-mdc-button-base.mat-primary-button,.mat-mdc-button.mat-mdc-button-base.mat-secondary-button{min-width:103px;width:auto;min-height:40px;height:auto;border-radius:3px;text-align:center;padding:.625em 1.5em;border:none;font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.mat-mdc-button.mat-mdc-button-base>.mat-icon{margin-right:11px}.mat-mdc-button.mat-mdc-button-base.mat-primary-button{background-color:#00629b;color:#fff}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:hover{background-color:#003e65}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:active{background-color:#00629b}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:disabled{background-color:#1c1b1f1f}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button{color:#fff;background:#a7a8aa;box-shadow:0 1px 2px #0000004d,0 2px 6px 2px #00000026}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:hover{background:#a7a8aa}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:active{background:rgba(29,25,43,.12)}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:disabled{background:rgba(28,27,31,.12);color:#1c1b1f;opacity:.38}.ieeesa-text-button{color:#cac4d0;background:none;border:none}.flex-align-center{display:flex;align-items:center;justify-content:center}.mat-button-toggle-checked{background-color:#a7a8aa}.mat-button-toggle-checked .mat-button-toggle-label-content:before{font-family:\"Font Awesome 5 Free\";font-weight:900;content:\"\\f00c\";padding-right:.5625em}.mat-button-toggle-group .mat-button-toggle-label-content{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1em;line-height:20px;color:#1c1b1f;letter-spacing:.00625em}@media (max-width: 768px){.mat-button-toggle-group .mat-button-toggle-label-content{max-width:8ch;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;position:relative}}.cdk-overlay-pane{width:100%;min-width:312px}.ieeesa-checkbox-field__label-left{display:flex;align-items:center}.ieeesa-checkbox-field__label-top{display:block}.ieeesa-checkbox-field .mat-mdc-list{display:flex;list-style-type:none}.ieeesa-checkbox-field .mat-mdc-checkbox .mat-mdc-checkbox-touch-target{height:40px;width:40px}.ieeesa-checkbox-field .mat-mdc-checkbox .mdc-checkbox:hover .mdc-checkbox__native-control:not([disabled])~.mdc-checkbox__ripple{background-color:#1c1b1f!important;opacity:.08!important}.ieeesa-checkbox-field .mat-mdc-checkbox .mdc-checkbox .mdc-checkbox__native-control:enabled:not(:checked):not(:indeterminate):not([data-indeterminate=true])~.mdc-checkbox__background{border-color:#49454f!important;background-color:transparent!important}.ieeesa-checkbox-field .mat-mdc-checkbox .mdc-checkbox:hover .mdc-checkbox__native-control:enabled:not(:checked):not(:indeterminate):not([data-indeterminate=true])~.mdc-checkbox__background{border-color:#1c1b1f!important;background-color:transparent!important}.ieeesa-checkbox-field .mat-mdc-checkbox .mdc-checkbox__native-control:focus:enabled:not(:checked):not(:indeterminate):not([data-indeterminate=true])~.mdc-checkbox__background{border-color:#1c1b1f!important;background-color:transparent!important}.ieeesa-checkbox-field .mat-mdc-checkbox.mat-accent.mat-mdc-checkbox-checked .mdc-checkbox__background{border-color:#00b5e2!important;background-color:#00b5e2!important}.ieeesa-checkbox-field .mat-mdc-checkbox.mat-accent.mat-mdc-checkbox-checked .mdc-checkbox:hover .mdc-checkbox__ripple{background-color:#6750a4!important;opacity:.08!important}.ieeesa-checkbox-field .mat-mdc-checkbox.mat-accent.mat-mdc-checkbox-checked .mdc-checkbox:focus .mdc-checkbox__ripple{background-color:#6750a4}.ieeesa-checkbox-field .mat-mdc-checkbox.mat-accent.mat-mdc-checkbox-checked .mat-mdc-checkbox-ripple:not(:empty){background-color:#6750a4!important;opacity:.12!important}.ieeesa-checkbox-field .mat-mdc-checkbox.mat-accent.mat-mdc-checkbox-checked .mdc-checkbox__ripple{background-color:#6750a4}.ieeesa-checkbox-field .mat-mdc-checkbox .mdc-checkbox .mdc-checkbox__native-control:enabled:indeterminate~.mdc-checkbox__background{border-color:#00b5e2!important;background-color:#00b5e2!important}.ieeesa-checkbox-field .mat-mdc-checkbox .mdc-checkbox:hover .mdc-checkbox__native-control[data-indeterminate=true]:enabled~.mdc-checkbox__background{border-color:#00b5e2!important;background-color:#00b5e2!important}.ieeesa-checkbox-field .mat-mdc-checkbox .mdc-checkbox .mdc-checkbox__native-control[disabled]:checked~.mdc-checkbox__background{border-color:#1c1b1f!important;background-color:#1c1b1f!important}.ieeesa-checkbox-field .mat-mdc-checkbox .mdc-checkbox .mdc-checkbox__native-control[disabled]:not(:checked):not(:indeterminate):not([data-indeterminate=true])~.mdc-checkbox__background{border-color:#1c1b1f!important;background-color:transparent!important}.ieeesa-checkbox-field .mat-mdc-checkbox .mdc-checkbox .mdc-checkbox__native-control[disabled]:indeterminate~.mdc-checkbox__background{border-color:#1c1b1f!important;background-color:#1c1b1f!important}.ng-valid.ng-submitted .mat-mdc-checkbox.checkbox.mat-accent.ng-pristine.ng-invalid.ng-touched .mdc-checkbox:hover .mdc-checkbox__ripple,.ng-valid.ng-submitted .mat-mdc-checkbox.checkbox.mat-accent.ng-pristine.ng-invalid.ng-untouched .mdc-checkbox:hover .mdc-checkbox__ripple,.ng-valid.ng-submitted .mat-mdc-checkbox.checkbox.mat-accent.ng-dirty.ng-invalid.ng-touched .mdc-checkbox:hover .mdc-checkbox__ripple{background-color:#b3261e!important;opacity:.08!important}.ng-valid.ng-submitted .mat-mdc-checkbox.checkbox.mat-accent.ng-pristine.ng-invalid.ng-touched .mdc-checkbox:focus .mdc-checkbox__ripple,.ng-valid.ng-submitted .mat-mdc-checkbox.checkbox.mat-accent.ng-pristine.ng-invalid.ng-untouched .mdc-checkbox:focus .mdc-checkbox__ripple,.ng-valid.ng-submitted .mat-mdc-checkbox.checkbox.mat-accent.ng-dirty.ng-invalid.ng-touched .mdc-checkbox:focus .mdc-checkbox__ripple{background-color:#b3261e!important;opacity:.12!important}.ng-valid.ng-submitted .mat-mdc-checkbox.checkbox.mat-accent.ng-pristine.ng-invalid.ng-touched .mdc-checkbox__ripple,.ng-valid.ng-submitted .mat-mdc-checkbox.checkbox.mat-accent.ng-pristine.ng-invalid.ng-untouched .mdc-checkbox__ripple,.ng-valid.ng-submitted .mat-mdc-checkbox.checkbox.mat-accent.ng-dirty.ng-invalid.ng-touched .mdc-checkbox__ripple{background-color:#b3261e}.ng-valid.ng-submitted .mat-mdc-checkbox.checkbox.mat-accent.ng-pristine.ng-invalid.ng-touched .mdc-checkbox__background,.ng-valid.ng-submitted .mat-mdc-checkbox.checkbox.mat-accent.ng-pristine.ng-invalid.ng-untouched .mdc-checkbox__background,.ng-valid.ng-submitted .mat-mdc-checkbox.checkbox.mat-accent.ng-dirty.ng-invalid.ng-touched .mdc-checkbox__background{border-color:#ba0c2f!important;background-color:transparent!important}.ng-valid.ng-submitted .mat-mdc-checkbox.mat-accent.mat-mdc-checkbox-checked.ng-dirty.ng-valid.ng-touched .mdc-checkbox__background{border-color:#ba0c2f!important;background-color:#ba0c2f!important}.ng-valid.ng-submitted .mat-mdc-checkbox.mat-accent.mat-mdc-checkbox-checked.ng-dirty.ng-valid.ng-touched .mdc-checkbox:hover .mdc-checkbox__ripple{background-color:#b3261e!important;opacity:.08!important}.ng-valid.ng-submitted .mat-mdc-checkbox.mat-accent.mat-mdc-checkbox-checked.ng-dirty.ng-valid.ng-touched .mdc-checkbox:focus .mdc-checkbox__ripple{background-color:#b3261e!important;opacity:.12!important}.ng-valid.ng-submitted .mat-mdc-checkbox.mat-accent.mat-mdc-checkbox-checked.ng-dirty.ng-valid.ng-touched .mdc-checkbox__ripple{background-color:#b3261e}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: MatListModule }, { kind: "component", type: i3$2.MatList, selector: "mat-list", exportAs: ["matList"] }, { kind: "ngmodule", type: MatButtonModule }, { kind: "ngmodule", type: MatInputModule }, { kind: "directive", type: i4.MatLabel, selector: "mat-label" }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "ngmodule", type: MatFormFieldModule }, { kind: "component", type: FormErrorComponent$1, selector: "ieeesa-form-error", inputs: ["formGroup", "config", "submitResponse"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i3.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i3.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "ngmodule", type: MatCheckboxModule }, { kind: "component", type: i6.MatCheckbox, selector: "mat-checkbox", inputs: ["disableRipple", "color", "tabIndex"], exportAs: ["matCheckbox"] }], encapsulation: i0.ViewEncapsulation.None }); }
839
- }
840
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: CheckboxComponent, decorators: [{
841
- type: Component,
842
- args: [{ selector: 'ieeesa-checkbox', standalone: true, imports: [
843
- CommonModule,
844
- MatListModule,
845
- MatButtonModule,
846
- MatInputModule,
847
- FormsModule,
848
- MatFormFieldModule,
849
- FormErrorComponent$1,
850
- ReactiveFormsModule,
851
- MatCheckboxModule,
852
- ], encapsulation: ViewEncapsulation.None, template: "<div\r\n [formGroup]=\"group\"\r\n class=\"ieeesa-checkbox-field\"\r\n *ngIf=\"group\"\r\n [ngClass]=\"\r\n config.isLabelAlignedLeft\r\n ? 'ieeesa-checkbox-field__label-left'\r\n : 'ieeesa-checkbox-field__label-top'\r\n \"\r\n>\r\n <mat-label class=\"ieeesa-body-sm-14 ieeesa-checkbox-field__label\">{{\r\n config.label\r\n }}</mat-label>\r\n <mat-list>\r\n <mat-checkbox\r\n *ngFor=\"let option of checkboxes; trackBy: trackById\"\r\n [formControlName]=\"option.id\"\r\n (change)=\"onChange(option, true)\"\r\n [disabled]=\"option.disabled\"\r\n [checked]=\"option.checked\"\r\n >\r\n {{ option.name }}\r\n </mat-checkbox>\r\n </mat-list>\r\n <ieeesa-form-error [formGroup]=\"group\" [config]=\"config\"> </ieeesa-form-error>\r\n</div>\r\n", styles: [".ieeesa-subtitle{text-align:left;font-family:Calibri Regular;font-size:1.56em;letter-spacing:0;color:#000;opacity:1}.ieeesa-body{text-align:left;font-family:Calibri Regular;font-size:1.25em;letter-spacing:0;color:#000;opacity:1}.ieeesa-display-lg-57{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:3.5625em;line-height:64px;color:#000;letter-spacing:0}.ieeesa-display-md-47{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.9375em;line-height:52px;color:#000;letter-spacing:0}.ieeesa-display-sm-38{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.375em;line-height:44px;color:#000;letter-spacing:0}.ieeesa-headline-lg-34{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.125em;line-height:40px;color:#000;letter-spacing:0}.ieeesa-headline-md-30{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.875em;line-height:36px;color:#000;letter-spacing:0}.ieeesa-headline-sm-26{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.625em;line-height:32px;color:#000;letter-spacing:0}.ieeesa-title-lg-bold-24{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1.5em;line-height:28px;color:#000;letter-spacing:0}.ieeesa-title-lg-24{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.5em;line-height:28px;color:#000;letter-spacing:0}.ieeesa-title-md-18{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.125em;line-height:24px;color:#000;letter-spacing:.009375em}.ieeesa-title-sm-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-lg-bold-16{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-lg-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-md-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875em;line-height:16px;color:#000;letter-spacing:.03125em}.ieeesa-label-sm-13{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.8125em;line-height:16px;color:#000;letter-spacing:.03125em}.ieeesa-body-lg-bold-18{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1.125em;line-height:24px;color:#000;letter-spacing:.03125em}.ieeesa-body-lg-18{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.125em;line-height:24px;color:#000;letter-spacing:.03125em}.ieeesa-body-md-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1em;line-height:20px;color:#000;letter-spacing:.015625em}.ieeesa-body-sm-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875em;line-height:16px;color:#000;letter-spacing:.025em}.ieeesa-title-inter-lg-bold-24{font-family:Inter Bold;font-style:normal;font-weight:700;font-size:1.5em;line-height:29px;color:#000;letter-spacing:0}.mat-mdc-button.mat-mdc-button-base.mat-primary-button,.mat-mdc-button.mat-mdc-button-base.mat-secondary-button{min-width:103px;width:auto;min-height:40px;height:auto;border-radius:3px;text-align:center;padding:.625em 1.5em;border:none;font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.mat-mdc-button.mat-mdc-button-base>.mat-icon{margin-right:11px}.mat-mdc-button.mat-mdc-button-base.mat-primary-button{background-color:#00629b;color:#fff}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:hover{background-color:#003e65}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:active{background-color:#00629b}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:disabled{background-color:#1c1b1f1f}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button{color:#fff;background:#a7a8aa;box-shadow:0 1px 2px #0000004d,0 2px 6px 2px #00000026}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:hover{background:#a7a8aa}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:active{background:rgba(29,25,43,.12)}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:disabled{background:rgba(28,27,31,.12);color:#1c1b1f;opacity:.38}.ieeesa-text-button{color:#cac4d0;background:none;border:none}.flex-align-center{display:flex;align-items:center;justify-content:center}.mat-button-toggle-checked{background-color:#a7a8aa}.mat-button-toggle-checked .mat-button-toggle-label-content:before{font-family:\"Font Awesome 5 Free\";font-weight:900;content:\"\\f00c\";padding-right:.5625em}.mat-button-toggle-group .mat-button-toggle-label-content{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1em;line-height:20px;color:#1c1b1f;letter-spacing:.00625em}@media (max-width: 768px){.mat-button-toggle-group .mat-button-toggle-label-content{max-width:8ch;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;position:relative}}.cdk-overlay-pane{width:100%;min-width:312px}.ieeesa-checkbox-field__label-left{display:flex;align-items:center}.ieeesa-checkbox-field__label-top{display:block}.ieeesa-checkbox-field .mat-mdc-list{display:flex;list-style-type:none}.ieeesa-checkbox-field .mat-mdc-checkbox .mat-mdc-checkbox-touch-target{height:40px;width:40px}.ieeesa-checkbox-field .mat-mdc-checkbox .mdc-checkbox:hover .mdc-checkbox__native-control:not([disabled])~.mdc-checkbox__ripple{background-color:#1c1b1f!important;opacity:.08!important}.ieeesa-checkbox-field .mat-mdc-checkbox .mdc-checkbox .mdc-checkbox__native-control:enabled:not(:checked):not(:indeterminate):not([data-indeterminate=true])~.mdc-checkbox__background{border-color:#49454f!important;background-color:transparent!important}.ieeesa-checkbox-field .mat-mdc-checkbox .mdc-checkbox:hover .mdc-checkbox__native-control:enabled:not(:checked):not(:indeterminate):not([data-indeterminate=true])~.mdc-checkbox__background{border-color:#1c1b1f!important;background-color:transparent!important}.ieeesa-checkbox-field .mat-mdc-checkbox .mdc-checkbox__native-control:focus:enabled:not(:checked):not(:indeterminate):not([data-indeterminate=true])~.mdc-checkbox__background{border-color:#1c1b1f!important;background-color:transparent!important}.ieeesa-checkbox-field .mat-mdc-checkbox.mat-accent.mat-mdc-checkbox-checked .mdc-checkbox__background{border-color:#00b5e2!important;background-color:#00b5e2!important}.ieeesa-checkbox-field .mat-mdc-checkbox.mat-accent.mat-mdc-checkbox-checked .mdc-checkbox:hover .mdc-checkbox__ripple{background-color:#6750a4!important;opacity:.08!important}.ieeesa-checkbox-field .mat-mdc-checkbox.mat-accent.mat-mdc-checkbox-checked .mdc-checkbox:focus .mdc-checkbox__ripple{background-color:#6750a4}.ieeesa-checkbox-field .mat-mdc-checkbox.mat-accent.mat-mdc-checkbox-checked .mat-mdc-checkbox-ripple:not(:empty){background-color:#6750a4!important;opacity:.12!important}.ieeesa-checkbox-field .mat-mdc-checkbox.mat-accent.mat-mdc-checkbox-checked .mdc-checkbox__ripple{background-color:#6750a4}.ieeesa-checkbox-field .mat-mdc-checkbox .mdc-checkbox .mdc-checkbox__native-control:enabled:indeterminate~.mdc-checkbox__background{border-color:#00b5e2!important;background-color:#00b5e2!important}.ieeesa-checkbox-field .mat-mdc-checkbox .mdc-checkbox:hover .mdc-checkbox__native-control[data-indeterminate=true]:enabled~.mdc-checkbox__background{border-color:#00b5e2!important;background-color:#00b5e2!important}.ieeesa-checkbox-field .mat-mdc-checkbox .mdc-checkbox .mdc-checkbox__native-control[disabled]:checked~.mdc-checkbox__background{border-color:#1c1b1f!important;background-color:#1c1b1f!important}.ieeesa-checkbox-field .mat-mdc-checkbox .mdc-checkbox .mdc-checkbox__native-control[disabled]:not(:checked):not(:indeterminate):not([data-indeterminate=true])~.mdc-checkbox__background{border-color:#1c1b1f!important;background-color:transparent!important}.ieeesa-checkbox-field .mat-mdc-checkbox .mdc-checkbox .mdc-checkbox__native-control[disabled]:indeterminate~.mdc-checkbox__background{border-color:#1c1b1f!important;background-color:#1c1b1f!important}.ng-valid.ng-submitted .mat-mdc-checkbox.checkbox.mat-accent.ng-pristine.ng-invalid.ng-touched .mdc-checkbox:hover .mdc-checkbox__ripple,.ng-valid.ng-submitted .mat-mdc-checkbox.checkbox.mat-accent.ng-pristine.ng-invalid.ng-untouched .mdc-checkbox:hover .mdc-checkbox__ripple,.ng-valid.ng-submitted .mat-mdc-checkbox.checkbox.mat-accent.ng-dirty.ng-invalid.ng-touched .mdc-checkbox:hover .mdc-checkbox__ripple{background-color:#b3261e!important;opacity:.08!important}.ng-valid.ng-submitted .mat-mdc-checkbox.checkbox.mat-accent.ng-pristine.ng-invalid.ng-touched .mdc-checkbox:focus .mdc-checkbox__ripple,.ng-valid.ng-submitted .mat-mdc-checkbox.checkbox.mat-accent.ng-pristine.ng-invalid.ng-untouched .mdc-checkbox:focus .mdc-checkbox__ripple,.ng-valid.ng-submitted .mat-mdc-checkbox.checkbox.mat-accent.ng-dirty.ng-invalid.ng-touched .mdc-checkbox:focus .mdc-checkbox__ripple{background-color:#b3261e!important;opacity:.12!important}.ng-valid.ng-submitted .mat-mdc-checkbox.checkbox.mat-accent.ng-pristine.ng-invalid.ng-touched .mdc-checkbox__ripple,.ng-valid.ng-submitted .mat-mdc-checkbox.checkbox.mat-accent.ng-pristine.ng-invalid.ng-untouched .mdc-checkbox__ripple,.ng-valid.ng-submitted .mat-mdc-checkbox.checkbox.mat-accent.ng-dirty.ng-invalid.ng-touched .mdc-checkbox__ripple{background-color:#b3261e}.ng-valid.ng-submitted .mat-mdc-checkbox.checkbox.mat-accent.ng-pristine.ng-invalid.ng-touched .mdc-checkbox__background,.ng-valid.ng-submitted .mat-mdc-checkbox.checkbox.mat-accent.ng-pristine.ng-invalid.ng-untouched .mdc-checkbox__background,.ng-valid.ng-submitted .mat-mdc-checkbox.checkbox.mat-accent.ng-dirty.ng-invalid.ng-touched .mdc-checkbox__background{border-color:#ba0c2f!important;background-color:transparent!important}.ng-valid.ng-submitted .mat-mdc-checkbox.mat-accent.mat-mdc-checkbox-checked.ng-dirty.ng-valid.ng-touched .mdc-checkbox__background{border-color:#ba0c2f!important;background-color:#ba0c2f!important}.ng-valid.ng-submitted .mat-mdc-checkbox.mat-accent.mat-mdc-checkbox-checked.ng-dirty.ng-valid.ng-touched .mdc-checkbox:hover .mdc-checkbox__ripple{background-color:#b3261e!important;opacity:.08!important}.ng-valid.ng-submitted .mat-mdc-checkbox.mat-accent.mat-mdc-checkbox-checked.ng-dirty.ng-valid.ng-touched .mdc-checkbox:focus .mdc-checkbox__ripple{background-color:#b3261e!important;opacity:.12!important}.ng-valid.ng-submitted .mat-mdc-checkbox.mat-accent.mat-mdc-checkbox-checked.ng-dirty.ng-valid.ng-touched .mdc-checkbox__ripple{background-color:#b3261e}\n"] }]
853
- }], ctorParameters: function () { return [{ type: i1.FormUtilityService }]; }, propDecorators: { checkboxes: [{
854
- type: Input
855
- }], checkboxSelection: [{
856
- type: Output
857
- }] } });
858
-
859
- /**
860
- * Provides auto suggestion for the entered input by filtering the options from the given list of options.
861
- * @export
862
- * @class AutocompleteComponent
863
- * @implements {OnInit}
864
- * @implements {FormField}
865
- * @implements {OnDestroy}
866
- */
867
- class AutocompleteComponent {
868
- // eslint-disable-next-line no-unused-vars, no-empty-function
869
- constructor(formUtilityService) {
870
- this.formUtilityService = formUtilityService;
871
- this.value = '';
872
- this.filteredOptions = [];
873
- this.isSelectedOptionsVisible = true;
874
- this.autoCompleteSearchValue = new EventEmitter();
875
- this.autoCompleteOptionSelected = new EventEmitter();
876
- this.destroy$ = new Subject();
877
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
878
- this.autocompleteConstInfo = buttonActionsInfo;
879
- this.optionsToFilter = [];
880
- }
881
- /**
882
- * Implementation of ngOnInit lifecycle hook method to initialize components instance properties.
883
- * @memberof AutocompleteComponent
884
- */
885
- ngOnInit() {
886
- this.config =
887
- this.config ??
888
- this.formUtilityService.getFormFieldConfig('autocomplete', FormControlType$1.AUTO_COMPLETE);
889
- this.group =
890
- this.group ?? this.formUtilityService.getFormGroup('autocomplete');
891
- this.filteredOptions =
892
- this.config?.autoCompleteOptions ?? this.filteredOptions;
893
- this.optionsToFilter = this.filteredOptions;
894
- }
895
- /**
896
- * Filters the options on form control value changes.
897
- * @memberof AutocompleteComponent
898
- */
899
- filterOptions() {
900
- this.group?.controls[this.config?.controlName]?.valueChanges
901
- .pipe(
902
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
903
- filter(
904
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
905
- (res) => res.length >=
906
- this.autocompleteConstInfo.autocomplete.minCharToSearch ||
907
- res.length === 0), debounceTime(this.autocompleteConstInfo.autocomplete.debounceTime), distinctUntilChanged())
908
- .pipe(takeUntil(this.destroy$))
909
- .subscribe((text) => {
910
- const options = this.optionsToFilter?.filter((item) => item.name.toLowerCase().includes(text.toLowerCase()));
911
- this.filteredOptions = options ?? this.optionsToFilter;
912
- this.autoCompleteSearchValue.emit(text);
913
- });
914
- }
915
- /**
916
- * Emits the selected option name when the form on change event is triggered and returns option name.
917
- * @param {AutoCompleteOption} data // data is an selected option of filteredOptions.
918
- * @return {string} // Returns selected option name as string
919
- * @memberof AutocompleteComponent
920
- */
921
- onChange(data) {
922
- this.autoCompleteOptionSelected.emit(data.name);
923
- return data.name;
924
- }
925
- /**
926
- * Takes the index and the current item as arguments and needs to return the unique identifier for this item.
927
- * @param {number} index
928
- * @param {SelectOption} option
929
- * @return {(number | string)}
930
- * @memberof AutocompleteComponent
931
- */
932
- trackByFn(index, option) {
933
- return option.id;
934
- }
935
- /**
936
- * Implementation of ngOnDestroy lifecycle hook method to unsubscribe the open observable subscriptions.
937
- * @memberof AutocompleteComponent
938
- */
939
- ngOnDestroy() {
940
- this.destroy$.next(true);
941
- this.destroy$.unsubscribe();
942
- }
943
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: AutocompleteComponent, deps: [{ token: i1.FormUtilityService }], target: i0.ɵɵFactoryTarget.Component }); }
944
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.3", type: AutocompleteComponent, isStandalone: true, selector: "ieeesa-autocomplete", inputs: { filteredOptions: "filteredOptions", isSelectedOptionsVisible: "isSelectedOptionsVisible" }, outputs: { autoCompleteSearchValue: "autoCompleteSearchValue", autoCompleteOptionSelected: "autoCompleteOptionSelected" }, providers: [
945
- {
946
- provide: MAT_AUTOCOMPLETE_DEFAULT_OPTIONS,
947
- useValue: { overlayPanelClass: 'ieeesa-autocomplete-overlay-pane' },
948
- },
949
- ], viewQueries: [{ propertyName: "autoComplete", first: true, predicate: ["autoComplete"], descendants: true }], ngImport: i0, template: "<div\r\n class=\"ieeesa-autocomplete\"\r\n [formGroup]=\"group\"\r\n *ngIf=\"group\"\r\n [ngClass]=\"\r\n config.isLabelAlignedLeft\r\n ? 'ieeesa-autocomplete-field__label-left'\r\n : 'ieeesa-autocomplete-field__label-top'\r\n \"\r\n>\r\n <mat-label class=\"ieeesa-autocomplete__label\">{{ config.label }}</mat-label>\r\n <mat-form-field class=\"ieeesa-autocomplete__mat-form\" appearance=\"outline\">\r\n <input\r\n matInput\r\n class=\"ieeesa-autocomplete__input\"\r\n [matAutocomplete]=\"auto\"\r\n [placeholder]=\"config.placeholder ?? ''\"\r\n [formControlName]=\"config.controlName\"\r\n [name]=\"config.controlName\"\r\n #autoComplete\r\n (keypress)=\"filterOptions()\"\r\n />\r\n <mat-autocomplete\r\n #auto=\"matAutocomplete\"\r\n (optionSelected)=\"onChange($event.option.value)\"\r\n class=\"ieeesa-autocomplete__autocomplete-list\"\r\n >\r\n <ng-container *ngIf=\"isSelectedOptionsVisible\">\r\n <mat-option\r\n *ngFor=\"let option of filteredOptions; trackBy: trackByFn\"\r\n [value]=\"option.name\"\r\n >\r\n <span>{{ option.name }}</span>\r\n </mat-option>\r\n </ng-container>\r\n </mat-autocomplete>\r\n <button\r\n type=\"button\"\r\n matSuffix\r\n mat-icon-button\r\n [attr.aria-label]=\"autocompleteConstInfo.ariaLabel.clear\"\r\n *ngIf=\"value\"\r\n (click)=\"value = ''\"\r\n >\r\n <i class=\"fa-solid fa-xmark ieeesa-autocomplete__cancel-icon\"></i>\r\n </button>\r\n </mat-form-field>\r\n</div>\r\n", styles: [".ieeesa-subtitle{text-align:left;font-family:Calibri Regular;font-size:1.56em;letter-spacing:0;color:#000;opacity:1}.ieeesa-body{text-align:left;font-family:Calibri Regular;font-size:1.25em;letter-spacing:0;color:#000;opacity:1}.ieeesa-display-lg-57{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:3.5625em;line-height:64px;color:#000;letter-spacing:0}.ieeesa-display-md-47{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.9375em;line-height:52px;color:#000;letter-spacing:0}.ieeesa-display-sm-38{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.375em;line-height:44px;color:#000;letter-spacing:0}.ieeesa-headline-lg-34{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.125em;line-height:40px;color:#000;letter-spacing:0}.ieeesa-headline-md-30{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.875em;line-height:36px;color:#000;letter-spacing:0}.ieeesa-headline-sm-26{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.625em;line-height:32px;color:#000;letter-spacing:0}.ieeesa-title-lg-bold-24{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1.5em;line-height:28px;color:#000;letter-spacing:0}.ieeesa-title-lg-24{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.5em;line-height:28px;color:#000;letter-spacing:0}.ieeesa-title-md-18{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.125em;line-height:24px;color:#000;letter-spacing:.009375em}.ieeesa-title-sm-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-lg-bold-16{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-lg-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-md-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875em;line-height:16px;color:#000;letter-spacing:.03125em}.ieeesa-label-sm-13{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.8125em;line-height:16px;color:#000;letter-spacing:.03125em}.ieeesa-body-lg-bold-18{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1.125em;line-height:24px;color:#000;letter-spacing:.03125em}.ieeesa-body-lg-18{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.125em;line-height:24px;color:#000;letter-spacing:.03125em}.ieeesa-body-md-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1em;line-height:20px;color:#000;letter-spacing:.015625em}.ieeesa-body-sm-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875em;line-height:16px;color:#000;letter-spacing:.025em}.ieeesa-title-inter-lg-bold-24{font-family:Inter Bold;font-style:normal;font-weight:700;font-size:1.5em;line-height:29px;color:#000;letter-spacing:0}.mat-mdc-button.mat-mdc-button-base.mat-primary-button,.mat-mdc-button.mat-mdc-button-base.mat-secondary-button{min-width:103px;width:auto;min-height:40px;height:auto;border-radius:3px;text-align:center;padding:.625em 1.5em;border:none;font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.mat-mdc-button.mat-mdc-button-base>.mat-icon{margin-right:11px}.mat-mdc-button.mat-mdc-button-base.mat-primary-button{background-color:#00629b;color:#fff}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:hover{background-color:#003e65}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:active{background-color:#00629b}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:disabled{background-color:#1c1b1f1f}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button{color:#fff;background:#a7a8aa;box-shadow:0 1px 2px #0000004d,0 2px 6px 2px #00000026}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:hover{background:#a7a8aa}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:active{background:rgba(29,25,43,.12)}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:disabled{background:rgba(28,27,31,.12);color:#1c1b1f;opacity:.38}.ieeesa-text-button{color:#cac4d0;background:none;border:none}.flex-align-center{display:flex;align-items:center;justify-content:center}.mat-button-toggle-checked{background-color:#a7a8aa}.mat-button-toggle-checked .mat-button-toggle-label-content:before{font-family:\"Font Awesome 5 Free\";font-weight:900;content:\"\\f00c\";padding-right:.5625em}.mat-button-toggle-group .mat-button-toggle-label-content{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1em;line-height:20px;color:#1c1b1f;letter-spacing:.00625em}@media (max-width: 768px){.mat-button-toggle-group .mat-button-toggle-label-content{max-width:8ch;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;position:relative}}.cdk-overlay-pane{width:100%;min-width:312px}.ieeesa-autocomplete__label-left{display:flex}.ieeesa-autocomplete__label-top{display:block}.ieeesa-autocomplete__cancel-icon{height:20px;width:20px}.ieeesa-autocomplete .mat-mdc-form-field{border-radius:4px 4px 0 0;width:-webkit-fill-available}.ieeesa-autocomplete .mat-mdc-form-field .mdc-text-field--outlined .mdc-floating-label--float-above{color:#00b5e2}.ieeesa-autocomplete .mat-focused .mat-mdc-form-field{caret-color:#00b5e2}.ieeesa-autocomplete .mat-focused .mdc-notched-outline__leading,.ieeesa-autocomplete .mat-focused .mdc-notched-outline__trailing,.ieeesa-autocomplete .mat-focused .mdc-notched-outline__notch{border-color:#00b5e2}.ieeesa-autocomplete .mat-mdc-text-field-wrapper{min-width:12.5em;width:auto;height:3.5em;flex:auto}.ieeesa-autocomplete .mat-mdc-form-field-subscript-wrapper{width:0px;position:relative;height:0px}.ieeesa-autocomplete-overlay-pane .mat-mdc-autocomplete-panel{padding:8px 0;background:linear-gradient(0deg,rgba(0,98,155,.0784313725),rgba(0,98,155,.0784313725)),#fffbfe;box-shadow:0 1px 2px #0000004d,0 2px 6px 2px #00000026;border-radius:4px}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i3.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: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i3.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i3.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "ngmodule", type: MatOptionModule }, { kind: "component", type: i2$1.MatOption, selector: "mat-option", exportAs: ["matOption"] }, { kind: "ngmodule", type: MatAutocompleteModule }, { kind: "component", type: i5$1.MatAutocomplete, selector: "mat-autocomplete", inputs: ["disableRipple", "hideSingleSelectionIndicator"], exportAs: ["matAutocomplete"] }, { kind: "directive", type: i5$1.MatAutocompleteTrigger, selector: "input[matAutocomplete], textarea[matAutocomplete]", exportAs: ["matAutocompleteTrigger"] }, { kind: "ngmodule", type: MatInputModule }, { kind: "directive", type: i5.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "component", type: i4.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i4.MatLabel, selector: "mat-label" }, { kind: "directive", type: i4.MatSuffix, selector: "[matSuffix], [matIconSuffix], [matTextSuffix]", inputs: ["matTextSuffix"] }, { kind: "ngmodule", type: MatIconModule }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i8.MatIconButton, selector: "button[mat-icon-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }], encapsulation: i0.ViewEncapsulation.None }); }
950
- }
951
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: AutocompleteComponent, decorators: [{
952
- type: Component,
953
- args: [{ selector: 'ieeesa-autocomplete', standalone: true, imports: [
954
- CommonModule,
955
- ReactiveFormsModule,
956
- FormErrorComponent$1,
957
- MatOptionModule,
958
- MatAutocompleteModule,
959
- MatInputModule,
960
- MatIconModule,
961
- MatButtonModule,
962
- ], providers: [
963
- {
964
- provide: MAT_AUTOCOMPLETE_DEFAULT_OPTIONS,
965
- useValue: { overlayPanelClass: 'ieeesa-autocomplete-overlay-pane' },
966
- },
967
- ], encapsulation: ViewEncapsulation.None, template: "<div\r\n class=\"ieeesa-autocomplete\"\r\n [formGroup]=\"group\"\r\n *ngIf=\"group\"\r\n [ngClass]=\"\r\n config.isLabelAlignedLeft\r\n ? 'ieeesa-autocomplete-field__label-left'\r\n : 'ieeesa-autocomplete-field__label-top'\r\n \"\r\n>\r\n <mat-label class=\"ieeesa-autocomplete__label\">{{ config.label }}</mat-label>\r\n <mat-form-field class=\"ieeesa-autocomplete__mat-form\" appearance=\"outline\">\r\n <input\r\n matInput\r\n class=\"ieeesa-autocomplete__input\"\r\n [matAutocomplete]=\"auto\"\r\n [placeholder]=\"config.placeholder ?? ''\"\r\n [formControlName]=\"config.controlName\"\r\n [name]=\"config.controlName\"\r\n #autoComplete\r\n (keypress)=\"filterOptions()\"\r\n />\r\n <mat-autocomplete\r\n #auto=\"matAutocomplete\"\r\n (optionSelected)=\"onChange($event.option.value)\"\r\n class=\"ieeesa-autocomplete__autocomplete-list\"\r\n >\r\n <ng-container *ngIf=\"isSelectedOptionsVisible\">\r\n <mat-option\r\n *ngFor=\"let option of filteredOptions; trackBy: trackByFn\"\r\n [value]=\"option.name\"\r\n >\r\n <span>{{ option.name }}</span>\r\n </mat-option>\r\n </ng-container>\r\n </mat-autocomplete>\r\n <button\r\n type=\"button\"\r\n matSuffix\r\n mat-icon-button\r\n [attr.aria-label]=\"autocompleteConstInfo.ariaLabel.clear\"\r\n *ngIf=\"value\"\r\n (click)=\"value = ''\"\r\n >\r\n <i class=\"fa-solid fa-xmark ieeesa-autocomplete__cancel-icon\"></i>\r\n </button>\r\n </mat-form-field>\r\n</div>\r\n", styles: [".ieeesa-subtitle{text-align:left;font-family:Calibri Regular;font-size:1.56em;letter-spacing:0;color:#000;opacity:1}.ieeesa-body{text-align:left;font-family:Calibri Regular;font-size:1.25em;letter-spacing:0;color:#000;opacity:1}.ieeesa-display-lg-57{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:3.5625em;line-height:64px;color:#000;letter-spacing:0}.ieeesa-display-md-47{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.9375em;line-height:52px;color:#000;letter-spacing:0}.ieeesa-display-sm-38{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.375em;line-height:44px;color:#000;letter-spacing:0}.ieeesa-headline-lg-34{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.125em;line-height:40px;color:#000;letter-spacing:0}.ieeesa-headline-md-30{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.875em;line-height:36px;color:#000;letter-spacing:0}.ieeesa-headline-sm-26{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.625em;line-height:32px;color:#000;letter-spacing:0}.ieeesa-title-lg-bold-24{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1.5em;line-height:28px;color:#000;letter-spacing:0}.ieeesa-title-lg-24{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.5em;line-height:28px;color:#000;letter-spacing:0}.ieeesa-title-md-18{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.125em;line-height:24px;color:#000;letter-spacing:.009375em}.ieeesa-title-sm-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-lg-bold-16{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-lg-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-md-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875em;line-height:16px;color:#000;letter-spacing:.03125em}.ieeesa-label-sm-13{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.8125em;line-height:16px;color:#000;letter-spacing:.03125em}.ieeesa-body-lg-bold-18{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1.125em;line-height:24px;color:#000;letter-spacing:.03125em}.ieeesa-body-lg-18{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.125em;line-height:24px;color:#000;letter-spacing:.03125em}.ieeesa-body-md-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1em;line-height:20px;color:#000;letter-spacing:.015625em}.ieeesa-body-sm-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875em;line-height:16px;color:#000;letter-spacing:.025em}.ieeesa-title-inter-lg-bold-24{font-family:Inter Bold;font-style:normal;font-weight:700;font-size:1.5em;line-height:29px;color:#000;letter-spacing:0}.mat-mdc-button.mat-mdc-button-base.mat-primary-button,.mat-mdc-button.mat-mdc-button-base.mat-secondary-button{min-width:103px;width:auto;min-height:40px;height:auto;border-radius:3px;text-align:center;padding:.625em 1.5em;border:none;font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.mat-mdc-button.mat-mdc-button-base>.mat-icon{margin-right:11px}.mat-mdc-button.mat-mdc-button-base.mat-primary-button{background-color:#00629b;color:#fff}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:hover{background-color:#003e65}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:active{background-color:#00629b}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:disabled{background-color:#1c1b1f1f}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button{color:#fff;background:#a7a8aa;box-shadow:0 1px 2px #0000004d,0 2px 6px 2px #00000026}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:hover{background:#a7a8aa}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:active{background:rgba(29,25,43,.12)}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:disabled{background:rgba(28,27,31,.12);color:#1c1b1f;opacity:.38}.ieeesa-text-button{color:#cac4d0;background:none;border:none}.flex-align-center{display:flex;align-items:center;justify-content:center}.mat-button-toggle-checked{background-color:#a7a8aa}.mat-button-toggle-checked .mat-button-toggle-label-content:before{font-family:\"Font Awesome 5 Free\";font-weight:900;content:\"\\f00c\";padding-right:.5625em}.mat-button-toggle-group .mat-button-toggle-label-content{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1em;line-height:20px;color:#1c1b1f;letter-spacing:.00625em}@media (max-width: 768px){.mat-button-toggle-group .mat-button-toggle-label-content{max-width:8ch;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;position:relative}}.cdk-overlay-pane{width:100%;min-width:312px}.ieeesa-autocomplete__label-left{display:flex}.ieeesa-autocomplete__label-top{display:block}.ieeesa-autocomplete__cancel-icon{height:20px;width:20px}.ieeesa-autocomplete .mat-mdc-form-field{border-radius:4px 4px 0 0;width:-webkit-fill-available}.ieeesa-autocomplete .mat-mdc-form-field .mdc-text-field--outlined .mdc-floating-label--float-above{color:#00b5e2}.ieeesa-autocomplete .mat-focused .mat-mdc-form-field{caret-color:#00b5e2}.ieeesa-autocomplete .mat-focused .mdc-notched-outline__leading,.ieeesa-autocomplete .mat-focused .mdc-notched-outline__trailing,.ieeesa-autocomplete .mat-focused .mdc-notched-outline__notch{border-color:#00b5e2}.ieeesa-autocomplete .mat-mdc-text-field-wrapper{min-width:12.5em;width:auto;height:3.5em;flex:auto}.ieeesa-autocomplete .mat-mdc-form-field-subscript-wrapper{width:0px;position:relative;height:0px}.ieeesa-autocomplete-overlay-pane .mat-mdc-autocomplete-panel{padding:8px 0;background:linear-gradient(0deg,rgba(0,98,155,.0784313725),rgba(0,98,155,.0784313725)),#fffbfe;box-shadow:0 1px 2px #0000004d,0 2px 6px 2px #00000026;border-radius:4px}\n"] }]
968
- }], ctorParameters: function () { return [{ type: i1.FormUtilityService }]; }, propDecorators: { filteredOptions: [{
1056
+ type: Component,
1057
+ args: [{ selector: 'ieeesa-radio', standalone: true, imports: [
1058
+ CommonModule,
1059
+ MatRadioModule,
1060
+ ReactiveFormsModule,
1061
+ FormErrorComponent,
1062
+ MatFormFieldModule,
1063
+ ], encapsulation: ViewEncapsulation.None, template: "<div [formGroup]=\"group\" class=\"ieeesa-radio-field\" *ngIf=\"group\">\r\n <mat-label\r\n class=\"ieeesa-body-sm-14 ieeesa-radio-field__label\"\r\n [ngClass]=\"\r\n config.isLabelAlignedLeft\r\n ? 'ieeesa-radio-field__label-left'\r\n : 'ieeesa-radio-field__label-top'\r\n \"\r\n >{{ config.label }}</mat-label\r\n >\r\n <mat-radio-group\r\n [formControlName]=\"config.controlName\"\r\n [disabled]=\"isDisabled\"\r\n >\r\n <mat-radio-button\r\n *ngFor=\"let radio of radioGroup; trackBy: trackById\"\r\n [value]=\"radio.label\"\r\n [name]=\"radio.label\"\r\n [id]=\"'' + radio.id\"\r\n (change)=\"onChange(radio)\"\r\n [checked]=\"radio.checked\"\r\n class=\"ieeesa-radio-field__button\"\r\n >\r\n {{ radio.label }}\r\n </mat-radio-button>\r\n </mat-radio-group>\r\n <ieeesa-form-error [formGroup]=\"group\" [config]=\"config\"> </ieeesa-form-error>\r\n</div>\r\n", styles: [".ieeesa-subtitle{text-align:left;font-family:Calibri Regular;font-size:1.56em;letter-spacing:0;color:#000;opacity:1}.ieeesa-body{text-align:left;font-family:Calibri Regular;font-size:1.25em;letter-spacing:0;color:#000;opacity:1}.ieeesa-display-lg-57{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:3.5625em;line-height:64px;color:#000;letter-spacing:0}.ieeesa-display-md-47{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.9375em;line-height:52px;color:#000;letter-spacing:0}.ieeesa-display-sm-38{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.375em;line-height:44px;color:#000;letter-spacing:0}.ieeesa-headline-lg-34{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.125em;line-height:40px;color:#000;letter-spacing:0}.ieeesa-headline-md-30{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.875em;line-height:36px;color:#000;letter-spacing:0}.ieeesa-headline-sm-26{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.625em;line-height:32px;color:#000;letter-spacing:0}.ieeesa-title-lg-bold-24{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1.5em;line-height:28px;color:#000;letter-spacing:0}.ieeesa-title-lg-24{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.5em;line-height:28px;color:#000;letter-spacing:0}.ieeesa-title-md-18{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.125em;line-height:24px;color:#000;letter-spacing:.009375em}.ieeesa-title-sm-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-lg-bold-16{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-lg-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-md-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875em;line-height:16px;color:#000;letter-spacing:.03125em}.ieeesa-label-sm-13{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.8125em;line-height:16px;color:#000;letter-spacing:.03125em}.ieeesa-body-lg-bold-18{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1.125em;line-height:24px;color:#000;letter-spacing:.03125em}.ieeesa-body-lg-18{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.125em;line-height:24px;color:#000;letter-spacing:.03125em}.ieeesa-body-md-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1em;line-height:20px;color:#000;letter-spacing:.015625em}.ieeesa-body-sm-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875em;line-height:16px;color:#000;letter-spacing:.025em}.ieeesa-title-inter-lg-bold-24{font-family:Inter Bold;font-style:normal;font-weight:700;font-size:1.5em;line-height:29px;color:#000;letter-spacing:0}.mat-mdc-button.mat-mdc-button-base.mat-primary-button,.mat-mdc-button.mat-mdc-button-base.mat-secondary-button{min-width:103px;width:auto;min-height:40px;height:auto;border-radius:3px;text-align:center;padding:.625em 1.5em;border:none;font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.mat-mdc-button.mat-mdc-button-base>.mat-icon{margin-right:11px}.mat-mdc-button.mat-mdc-button-base.mat-primary-button{background-color:#00629b;color:#fff}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:hover{background-color:#003e65}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:active{background-color:#00629b}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:disabled{background-color:#1c1b1f1f}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button{color:#fff;background:#a7a8aa;box-shadow:0 1px 2px #0000004d,0 2px 6px 2px #00000026}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:hover{background:#a7a8aa}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:active{background:rgba(29,25,43,.12)}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:disabled{background:rgba(28,27,31,.12);color:#1c1b1f;opacity:.38}.ieeesa-text-button{color:#cac4d0;background:none;border:none}.flex-align-center{display:flex;align-items:center;justify-content:center}.mat-button-toggle-checked{background-color:#a7a8aa}.mat-button-toggle-checked .mat-button-toggle-label-content:before{font-family:\"Font Awesome 5 Free\";font-weight:900;content:\"\\f00c\";padding-right:.5625em}.mat-button-toggle-group .mat-button-toggle-label-content{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1em;line-height:20px;color:#1c1b1f;letter-spacing:.00625em}@media (max-width: 768px){.mat-button-toggle-group .mat-button-toggle-label-content{max-width:8ch;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;position:relative}}.cdk-overlay-pane{width:100%;min-width:312px}.ieeesa-radio-field__label-left{display:inline-block;padding-right:20%}.ieeesa-radio-field__label-top{display:block}.ieeesa-radio-field .mat-mdc-radio-button .mdc-radio .mdc-radio__native-control:enabled+.mdc-radio__background .mdc-radio__inner-circle{border-color:#00b5e2!important}.ieeesa-radio-field .mat-mdc-radio-button .mdc-radio .mdc-radio__native-control:enabled:checked+.mdc-radio__background .mdc-radio__outer-circle{border-color:#00b5e2!important}.ieeesa-radio-field .mat-mdc-radio-button .mdc-radio .mdc-radio__native-control:enabled:not(:checked)+.mdc-radio__background .mdc-radio__outer-circle{border-color:#49454f}.ieeesa-radio-field .mat-mdc-radio-button .mdc-radio:hover .mdc-radio__native-control:enabled:not(:checked)+.mdc-radio__background .mdc-radio__outer-circle{border-color:#1c1b1f}.ieeesa-radio-field .mat-ripple-element{background-color:#6750a4}.ieeesa-radio-field .mat-mdc-radio-button.mat-mdc-radio-checked .mat-ripple-element{background-color:#1c1b1f}.ieeesa-radio-field .mat-mdc-radio-button .mat-radio-ripple .mat-ripple-element{opacity:.12}.ieeesa-radio-field .mat-mdc-radio-button .mdc-radio:hover .mdc-radio__native-control:not([disabled]):not(:focus)~.mdc-radio__background:before{opacity:.08}.ieeesa-radio-field .mat-mdc-radio-button.mat-accent{--mat-mdc-radio-checked-ripple-color: $ieeesa-radio-ripple-blue-color;--mat-mdc-radio-ripple-color: $ieeesa-background-black}\n"] }]
1064
+ }], ctorParameters: function () { return [{ type: FormUtilityService }]; }, propDecorators: { formControlName: [{
969
1065
  type: Input
970
- }], isSelectedOptionsVisible: [{
1066
+ }], radioGroup: [{
971
1067
  type: Input
972
- }], autoCompleteSearchValue: [{
973
- type: Output
974
- }], autoCompleteOptionSelected: [{
1068
+ }], isDisabled: [{
1069
+ type: Input
1070
+ }], selectedRadioOption: [{
975
1071
  type: Output
976
- }], autoComplete: [{
977
- type: ViewChild,
978
- args: ['autoComplete']
979
1072
  }] } });
980
1073
 
1074
+ const ValidationPatterns = {
1075
+ alphanumeric: /^[a-zA-Z0-9 _-]+$/,
1076
+ mixOfAlphanumeric: /^[0-9]*[a-zA-Z]+[a-zA-Z0-9 _()-]*$/,
1077
+ numeric: '^0|[1-9][0-9]*$',
1078
+ email: /^[a-z0-9._%+-]+@[a-z0-9.-]+\\.[a-z]{2,4}$/,
1079
+ };
1080
+
1081
+ var SearchType;
1082
+ (function (SearchType) {
1083
+ // eslint-disable-next-line no-unused-vars
1084
+ SearchType["EMAIL"] = "EMAIL";
1085
+ // eslint-disable-next-line no-unused-vars
1086
+ SearchType["AUTO"] = "AUTO";
1087
+ // eslint-disable-next-line no-unused-vars
1088
+ SearchType["ON_CLICK"] = "ON_CLICK";
1089
+ })(SearchType || (SearchType = {}));
1090
+
981
1091
  const MIN_CHAR = 3;
982
1092
  /**
983
1093
  * Component support search capability and used as a form filed with type search and independently as search component.
@@ -996,12 +1106,12 @@ class SearchComponent {
996
1106
  this.formUtilityService = formUtilityService;
997
1107
  this.formControlName = 'search';
998
1108
  this.placeholderLabel = '';
999
- this.searchType = SearchType$1.AUTO;
1109
+ this.searchType = SearchType.AUTO;
1000
1110
  this.searchTerm = '';
1001
1111
  this.searchValue = new EventEmitter();
1002
1112
  this.destroy$ = new Subject();
1003
1113
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
1004
- this.searchInfo = buttonActionsInfo;
1114
+ this.searchInfo = constantsInfo;
1005
1115
  }
1006
1116
  /**
1007
1117
  * Implementation of ngOnInit lifecycle hook method to initialize config and form group if its undefined
@@ -1010,7 +1120,7 @@ class SearchComponent {
1010
1120
  ngOnInit() {
1011
1121
  this.config =
1012
1122
  this.config ??
1013
- this.formUtilityService.getFormFieldConfig(this.formControlName, FormControlType$1.SEARCH);
1123
+ this.formUtilityService.getFormFieldConfig(this.formControlName, FormControlType.SEARCH);
1014
1124
  this.group =
1015
1125
  this.group ?? this.formUtilityService.getFormGroup(this.formControlName);
1016
1126
  }
@@ -1019,7 +1129,7 @@ class SearchComponent {
1019
1129
  * @memberof SearchComponent
1020
1130
  */
1021
1131
  ngAfterViewInit() {
1022
- if (this.searchType === SearchType$1.AUTO && this.searchControl) {
1132
+ if (this.searchType === SearchType.AUTO && this.searchControl) {
1023
1133
  fromEvent(this.searchControl?.nativeElement, 'keyup')
1024
1134
  .pipe(
1025
1135
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
@@ -1069,818 +1179,820 @@ class SearchComponent {
1069
1179
  this.destroy$.next(true);
1070
1180
  this.destroy$.unsubscribe();
1071
1181
  }
1072
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: SearchComponent, deps: [{ token: i1.FormUtilityService }], target: i0.ɵɵFactoryTarget.Component }); }
1073
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.3", type: SearchComponent, isStandalone: true, selector: "ieeesa-search", inputs: { formControlName: "formControlName", placeholderLabel: "placeholderLabel", searchType: "searchType", searchTerm: "searchTerm" }, outputs: { searchValue: "searchValue" }, viewQueries: [{ propertyName: "searchControl", first: true, predicate: ["searchControl"], descendants: true }], ngImport: i0, template: "<div\r\n [formGroup]=\"group\"\r\n class=\"ieeesa-search-field\"\r\n *ngIf=\"group\"\r\n [ngClass]=\"\r\n config.isLabelAlignedLeft\r\n ? 'ieeesa-search-field__label-left'\r\n : 'ieeesa-search-field__label-top'\r\n \"\r\n>\r\n <mat-label class=\"ieeesa-body-sm-14 ieeesa-search-field__label\">{{\r\n config.label\r\n }}</mat-label>\r\n <mat-form-field appearance=\"outline\">\r\n <span class=\"ieeesa-search-field__content\">\r\n <input\r\n matInput\r\n autocomplete=\"off\"\r\n [type]=\"searchType\"\r\n [formControlName]=\"config.controlName\"\r\n [placeholder]=\"placeholderLabel\"\r\n (change)=\"onChange()\"\r\n (input)=\"onSearchInputChange()\"\r\n bindon-ngModel=\"searchTerm\"\r\n #searchControl\r\n />\r\n <i\r\n class=\"fa-solid fa-magnifying-glass ieeesa-search-field__search-icon\"\r\n ></i>\r\n </span>\r\n </mat-form-field>\r\n <ieeesa-form-error [formGroup]=\"group\" [config]=\"config\"> </ieeesa-form-error>\r\n</div>\r\n", styles: [".ieeesa-subtitle{text-align:left;font-family:Calibri Regular;font-size:1.56em;letter-spacing:0;color:#000;opacity:1}.ieeesa-body{text-align:left;font-family:Calibri Regular;font-size:1.25em;letter-spacing:0;color:#000;opacity:1}.ieeesa-display-lg-57{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:3.5625em;line-height:64px;color:#000;letter-spacing:0}.ieeesa-display-md-47{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.9375em;line-height:52px;color:#000;letter-spacing:0}.ieeesa-display-sm-38{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.375em;line-height:44px;color:#000;letter-spacing:0}.ieeesa-headline-lg-34{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.125em;line-height:40px;color:#000;letter-spacing:0}.ieeesa-headline-md-30{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.875em;line-height:36px;color:#000;letter-spacing:0}.ieeesa-headline-sm-26{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.625em;line-height:32px;color:#000;letter-spacing:0}.ieeesa-title-lg-bold-24{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1.5em;line-height:28px;color:#000;letter-spacing:0}.ieeesa-title-lg-24{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.5em;line-height:28px;color:#000;letter-spacing:0}.ieeesa-title-md-18{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.125em;line-height:24px;color:#000;letter-spacing:.009375em}.ieeesa-title-sm-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-lg-bold-16{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-lg-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-md-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875em;line-height:16px;color:#000;letter-spacing:.03125em}.ieeesa-label-sm-13{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.8125em;line-height:16px;color:#000;letter-spacing:.03125em}.ieeesa-body-lg-bold-18{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1.125em;line-height:24px;color:#000;letter-spacing:.03125em}.ieeesa-body-lg-18{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.125em;line-height:24px;color:#000;letter-spacing:.03125em}.ieeesa-body-md-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1em;line-height:20px;color:#000;letter-spacing:.015625em}.ieeesa-body-sm-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875em;line-height:16px;color:#000;letter-spacing:.025em}.ieeesa-title-inter-lg-bold-24{font-family:Inter Bold;font-style:normal;font-weight:700;font-size:1.5em;line-height:29px;color:#000;letter-spacing:0}.mat-mdc-button.mat-mdc-button-base.mat-primary-button,.mat-mdc-button.mat-mdc-button-base.mat-secondary-button{min-width:103px;width:auto;min-height:40px;height:auto;border-radius:3px;text-align:center;padding:.625em 1.5em;border:none;font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.mat-mdc-button.mat-mdc-button-base>.mat-icon{margin-right:11px}.mat-mdc-button.mat-mdc-button-base.mat-primary-button{background-color:#00629b;color:#fff}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:hover{background-color:#003e65}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:active{background-color:#00629b}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:disabled{background-color:#1c1b1f1f}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button{color:#fff;background:#a7a8aa;box-shadow:0 1px 2px #0000004d,0 2px 6px 2px #00000026}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:hover{background:#a7a8aa}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:active{background:rgba(29,25,43,.12)}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:disabled{background:rgba(28,27,31,.12);color:#1c1b1f;opacity:.38}.ieeesa-text-button{color:#cac4d0;background:none;border:none}.flex-align-center{display:flex;align-items:center;justify-content:center}.mat-button-toggle-checked{background-color:#a7a8aa}.mat-button-toggle-checked .mat-button-toggle-label-content:before{font-family:\"Font Awesome 5 Free\";font-weight:900;content:\"\\f00c\";padding-right:.5625em}.mat-button-toggle-group .mat-button-toggle-label-content{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1em;line-height:20px;color:#1c1b1f;letter-spacing:.00625em}@media (max-width: 768px){.mat-button-toggle-group .mat-button-toggle-label-content{max-width:8ch;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;position:relative}}.cdk-overlay-pane{width:100%;min-width:312px}.ieeesa-search-field__search-icon{height:20px;width:20px}.ieeesa-search-field__content{display:flex;align-items:center}.ieeesa-search-field__label-left{display:flex}.ieeesa-search-field__label-top{display:block}.ieeesa-search-field .mat-mdc-form-field{height:50px;width:-webkit-fill-available;padding:0 5px}.ieeesa-search-field .mat-form-field-flex{display:flex;align-items:center;height:40px;margin-left:0}.ieeesa-search-field .mat-mdc-input-element{padding-left:5px}.ieeesa-search-field .mat-mdc-form-field-infix{padding-top:10px;padding-bottom:0}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i3.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: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i3.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i3.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: FormErrorComponent$1, selector: "ieeesa-form-error", inputs: ["formGroup", "config", "submitResponse"] }, { kind: "ngmodule", type: MatFormFieldModule }, { kind: "component", type: i4.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i4.MatLabel, selector: "mat-label" }, { kind: "ngmodule", type: MatInputModule }, { kind: "directive", type: i5.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "ngmodule", type: MatIconModule }], encapsulation: i0.ViewEncapsulation.None }); }
1182
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: SearchComponent, deps: [{ token: FormUtilityService }], target: i0.ɵɵFactoryTarget.Component }); }
1183
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.3", type: SearchComponent, isStandalone: true, selector: "ieeesa-search", inputs: { formControlName: "formControlName", placeholderLabel: "placeholderLabel", searchType: "searchType", searchTerm: "searchTerm" }, outputs: { searchValue: "searchValue" }, viewQueries: [{ propertyName: "searchControl", first: true, predicate: ["searchControl"], descendants: true }], ngImport: i0, template: "<div\r\n [formGroup]=\"group\"\r\n class=\"ieeesa-search-field\"\r\n *ngIf=\"group\"\r\n [ngClass]=\"\r\n config.isLabelAlignedLeft\r\n ? 'ieeesa-search-field__label-left'\r\n : 'ieeesa-search-field__label-top'\r\n \"\r\n>\r\n <mat-label class=\"ieeesa-body-sm-14 ieeesa-search-field__label\">{{\r\n config.label\r\n }}</mat-label>\r\n <mat-form-field appearance=\"outline\">\r\n <span class=\"ieeesa-search-field__content\">\r\n <input\r\n matInput\r\n autocomplete=\"off\"\r\n [type]=\"searchType\"\r\n [formControlName]=\"config.controlName\"\r\n [placeholder]=\"placeholderLabel\"\r\n (change)=\"onChange()\"\r\n (input)=\"onSearchInputChange()\"\r\n bindon-ngModel=\"searchTerm\"\r\n #searchControl\r\n />\r\n <i\r\n class=\"fa-solid fa-magnifying-glass ieeesa-search-field__search-icon\"\r\n ></i>\r\n </span>\r\n </mat-form-field>\r\n <ieeesa-form-error [formGroup]=\"group\" [config]=\"config\"> </ieeesa-form-error>\r\n</div>\r\n", styles: [".ieeesa-subtitle{text-align:left;font-family:Calibri Regular;font-size:1.56em;letter-spacing:0;color:#000;opacity:1}.ieeesa-body{text-align:left;font-family:Calibri Regular;font-size:1.25em;letter-spacing:0;color:#000;opacity:1}.ieeesa-display-lg-57{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:3.5625em;line-height:64px;color:#000;letter-spacing:0}.ieeesa-display-md-47{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.9375em;line-height:52px;color:#000;letter-spacing:0}.ieeesa-display-sm-38{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.375em;line-height:44px;color:#000;letter-spacing:0}.ieeesa-headline-lg-34{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.125em;line-height:40px;color:#000;letter-spacing:0}.ieeesa-headline-md-30{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.875em;line-height:36px;color:#000;letter-spacing:0}.ieeesa-headline-sm-26{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.625em;line-height:32px;color:#000;letter-spacing:0}.ieeesa-title-lg-bold-24{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1.5em;line-height:28px;color:#000;letter-spacing:0}.ieeesa-title-lg-24{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.5em;line-height:28px;color:#000;letter-spacing:0}.ieeesa-title-md-18{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.125em;line-height:24px;color:#000;letter-spacing:.009375em}.ieeesa-title-sm-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-lg-bold-16{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-lg-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-md-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875em;line-height:16px;color:#000;letter-spacing:.03125em}.ieeesa-label-sm-13{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.8125em;line-height:16px;color:#000;letter-spacing:.03125em}.ieeesa-body-lg-bold-18{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1.125em;line-height:24px;color:#000;letter-spacing:.03125em}.ieeesa-body-lg-18{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.125em;line-height:24px;color:#000;letter-spacing:.03125em}.ieeesa-body-md-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1em;line-height:20px;color:#000;letter-spacing:.015625em}.ieeesa-body-sm-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875em;line-height:16px;color:#000;letter-spacing:.025em}.ieeesa-title-inter-lg-bold-24{font-family:Inter Bold;font-style:normal;font-weight:700;font-size:1.5em;line-height:29px;color:#000;letter-spacing:0}.mat-mdc-button.mat-mdc-button-base.mat-primary-button,.mat-mdc-button.mat-mdc-button-base.mat-secondary-button{min-width:103px;width:auto;min-height:40px;height:auto;border-radius:3px;text-align:center;padding:.625em 1.5em;border:none;font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.mat-mdc-button.mat-mdc-button-base>.mat-icon{margin-right:11px}.mat-mdc-button.mat-mdc-button-base.mat-primary-button{background-color:#00629b;color:#fff}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:hover{background-color:#003e65}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:active{background-color:#00629b}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:disabled{background-color:#1c1b1f1f}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button{color:#fff;background:#a7a8aa;box-shadow:0 1px 2px #0000004d,0 2px 6px 2px #00000026}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:hover{background:#a7a8aa}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:active{background:rgba(29,25,43,.12)}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:disabled{background:rgba(28,27,31,.12);color:#1c1b1f;opacity:.38}.ieeesa-text-button{color:#cac4d0;background:none;border:none}.flex-align-center{display:flex;align-items:center;justify-content:center}.mat-button-toggle-checked{background-color:#a7a8aa}.mat-button-toggle-checked .mat-button-toggle-label-content:before{font-family:\"Font Awesome 5 Free\";font-weight:900;content:\"\\f00c\";padding-right:.5625em}.mat-button-toggle-group .mat-button-toggle-label-content{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1em;line-height:20px;color:#1c1b1f;letter-spacing:.00625em}@media (max-width: 768px){.mat-button-toggle-group .mat-button-toggle-label-content{max-width:8ch;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;position:relative}}.cdk-overlay-pane{width:100%;min-width:312px}.ieeesa-search-field__search-icon{height:20px;width:20px}.ieeesa-search-field__content{display:flex;align-items:center}.ieeesa-search-field__label-left{display:flex}.ieeesa-search-field__label-top{display:block}.ieeesa-search-field .mat-mdc-form-field{height:50px;width:-webkit-fill-available;padding:0 5px}.ieeesa-search-field .mat-form-field-flex{display:flex;align-items:center;height:40px;margin-left:0}.ieeesa-search-field .mat-mdc-input-element{padding-left:5px}.ieeesa-search-field .mat-mdc-form-field-infix{padding-top:10px;padding-bottom:0}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i3.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: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i3.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i3.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: FormErrorComponent, selector: "ieeesa-form-error", inputs: ["formGroup", "config", "submitResponse"] }, { kind: "ngmodule", type: MatFormFieldModule }, { kind: "component", type: i4.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i4.MatLabel, selector: "mat-label" }, { kind: "ngmodule", type: MatInputModule }, { kind: "directive", type: i5.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "ngmodule", type: MatIconModule }], encapsulation: i0.ViewEncapsulation.None }); }
1074
1184
  }
1075
1185
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: SearchComponent, decorators: [{
1076
1186
  type: Component,
1077
1187
  args: [{ selector: 'ieeesa-search', standalone: true, imports: [
1078
1188
  CommonModule,
1079
1189
  ReactiveFormsModule,
1080
- FormErrorComponent$1,
1190
+ FormErrorComponent,
1081
1191
  MatFormFieldModule,
1082
1192
  MatInputModule,
1083
1193
  MatIconModule,
1084
1194
  ], encapsulation: ViewEncapsulation.None, template: "<div\r\n [formGroup]=\"group\"\r\n class=\"ieeesa-search-field\"\r\n *ngIf=\"group\"\r\n [ngClass]=\"\r\n config.isLabelAlignedLeft\r\n ? 'ieeesa-search-field__label-left'\r\n : 'ieeesa-search-field__label-top'\r\n \"\r\n>\r\n <mat-label class=\"ieeesa-body-sm-14 ieeesa-search-field__label\">{{\r\n config.label\r\n }}</mat-label>\r\n <mat-form-field appearance=\"outline\">\r\n <span class=\"ieeesa-search-field__content\">\r\n <input\r\n matInput\r\n autocomplete=\"off\"\r\n [type]=\"searchType\"\r\n [formControlName]=\"config.controlName\"\r\n [placeholder]=\"placeholderLabel\"\r\n (change)=\"onChange()\"\r\n (input)=\"onSearchInputChange()\"\r\n bindon-ngModel=\"searchTerm\"\r\n #searchControl\r\n />\r\n <i\r\n class=\"fa-solid fa-magnifying-glass ieeesa-search-field__search-icon\"\r\n ></i>\r\n </span>\r\n </mat-form-field>\r\n <ieeesa-form-error [formGroup]=\"group\" [config]=\"config\"> </ieeesa-form-error>\r\n</div>\r\n", styles: [".ieeesa-subtitle{text-align:left;font-family:Calibri Regular;font-size:1.56em;letter-spacing:0;color:#000;opacity:1}.ieeesa-body{text-align:left;font-family:Calibri Regular;font-size:1.25em;letter-spacing:0;color:#000;opacity:1}.ieeesa-display-lg-57{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:3.5625em;line-height:64px;color:#000;letter-spacing:0}.ieeesa-display-md-47{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.9375em;line-height:52px;color:#000;letter-spacing:0}.ieeesa-display-sm-38{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.375em;line-height:44px;color:#000;letter-spacing:0}.ieeesa-headline-lg-34{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.125em;line-height:40px;color:#000;letter-spacing:0}.ieeesa-headline-md-30{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.875em;line-height:36px;color:#000;letter-spacing:0}.ieeesa-headline-sm-26{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.625em;line-height:32px;color:#000;letter-spacing:0}.ieeesa-title-lg-bold-24{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1.5em;line-height:28px;color:#000;letter-spacing:0}.ieeesa-title-lg-24{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.5em;line-height:28px;color:#000;letter-spacing:0}.ieeesa-title-md-18{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.125em;line-height:24px;color:#000;letter-spacing:.009375em}.ieeesa-title-sm-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-lg-bold-16{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-lg-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-md-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875em;line-height:16px;color:#000;letter-spacing:.03125em}.ieeesa-label-sm-13{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.8125em;line-height:16px;color:#000;letter-spacing:.03125em}.ieeesa-body-lg-bold-18{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1.125em;line-height:24px;color:#000;letter-spacing:.03125em}.ieeesa-body-lg-18{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.125em;line-height:24px;color:#000;letter-spacing:.03125em}.ieeesa-body-md-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1em;line-height:20px;color:#000;letter-spacing:.015625em}.ieeesa-body-sm-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875em;line-height:16px;color:#000;letter-spacing:.025em}.ieeesa-title-inter-lg-bold-24{font-family:Inter Bold;font-style:normal;font-weight:700;font-size:1.5em;line-height:29px;color:#000;letter-spacing:0}.mat-mdc-button.mat-mdc-button-base.mat-primary-button,.mat-mdc-button.mat-mdc-button-base.mat-secondary-button{min-width:103px;width:auto;min-height:40px;height:auto;border-radius:3px;text-align:center;padding:.625em 1.5em;border:none;font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.mat-mdc-button.mat-mdc-button-base>.mat-icon{margin-right:11px}.mat-mdc-button.mat-mdc-button-base.mat-primary-button{background-color:#00629b;color:#fff}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:hover{background-color:#003e65}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:active{background-color:#00629b}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:disabled{background-color:#1c1b1f1f}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button{color:#fff;background:#a7a8aa;box-shadow:0 1px 2px #0000004d,0 2px 6px 2px #00000026}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:hover{background:#a7a8aa}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:active{background:rgba(29,25,43,.12)}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:disabled{background:rgba(28,27,31,.12);color:#1c1b1f;opacity:.38}.ieeesa-text-button{color:#cac4d0;background:none;border:none}.flex-align-center{display:flex;align-items:center;justify-content:center}.mat-button-toggle-checked{background-color:#a7a8aa}.mat-button-toggle-checked .mat-button-toggle-label-content:before{font-family:\"Font Awesome 5 Free\";font-weight:900;content:\"\\f00c\";padding-right:.5625em}.mat-button-toggle-group .mat-button-toggle-label-content{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1em;line-height:20px;color:#1c1b1f;letter-spacing:.00625em}@media (max-width: 768px){.mat-button-toggle-group .mat-button-toggle-label-content{max-width:8ch;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;position:relative}}.cdk-overlay-pane{width:100%;min-width:312px}.ieeesa-search-field__search-icon{height:20px;width:20px}.ieeesa-search-field__content{display:flex;align-items:center}.ieeesa-search-field__label-left{display:flex}.ieeesa-search-field__label-top{display:block}.ieeesa-search-field .mat-mdc-form-field{height:50px;width:-webkit-fill-available;padding:0 5px}.ieeesa-search-field .mat-form-field-flex{display:flex;align-items:center;height:40px;margin-left:0}.ieeesa-search-field .mat-mdc-input-element{padding-left:5px}.ieeesa-search-field .mat-mdc-form-field-infix{padding-top:10px;padding-bottom:0}\n"] }]
1085
- }], ctorParameters: function () { return [{ type: i1.FormUtilityService }]; }, propDecorators: { formControlName: [{
1195
+ }], ctorParameters: function () { return [{ type: FormUtilityService }]; }, propDecorators: { formControlName: [{
1086
1196
  type: Input
1087
1197
  }], placeholderLabel: [{
1088
1198
  type: Input
1089
- }], searchType: [{
1199
+ }], searchType: [{
1200
+ type: Input
1201
+ }], searchTerm: [{
1202
+ type: Input
1203
+ }], searchValue: [{
1204
+ type: Output
1205
+ }], searchControl: [{
1206
+ type: ViewChild,
1207
+ args: ['searchControl']
1208
+ }] } });
1209
+
1210
+ /**
1211
+ * Component implementation supports select type of form filed and select type is configurable to support single selection or multi-selection with multilevel or single level.
1212
+ * @export
1213
+ * @class SelectComponent
1214
+ * @implements {OnInit}
1215
+ * @implements {AfterViewInit}
1216
+ * @implements {OnDestroy}
1217
+ */
1218
+ class SelectComponent {
1219
+ /**
1220
+ * Takes isSortNeeded as input to check if the passed options are sorted or not.
1221
+ * @memberof SelectComponent
1222
+ */
1223
+ set isSortNeeded(value) {
1224
+ this._isSortNeeded = value;
1225
+ }
1226
+ get isSortNeeded() {
1227
+ return this._isSortNeeded;
1228
+ }
1229
+ /**
1230
+ * Sets the dropdown options for selection.
1231
+ * @memberof SelectComponent
1232
+ */
1233
+ set dropdownOptions(value) {
1234
+ this._dropdownOptions = value;
1235
+ }
1236
+ get dropdownOptions() {
1237
+ return this._dropdownOptions;
1238
+ }
1239
+ /**
1240
+ * Sets the selected option
1241
+ * @memberof SelectComponent
1242
+ */
1243
+ set selectedOptions(value) {
1244
+ if (Array.isArray(value)) {
1245
+ this._selectedOptions = this.arraySorting(value);
1246
+ }
1247
+ else {
1248
+ this._selectedOptions = value;
1249
+ }
1250
+ }
1251
+ get selectedOptions() {
1252
+ return this._selectedOptions;
1253
+ }
1254
+ constructor(
1255
+ // eslint-disable-next-line no-unused-vars
1256
+ formUtilityService // eslint-disable-next-line no-empty-function
1257
+ ) {
1258
+ this.formUtilityService = formUtilityService;
1259
+ this.arrowDirection = false;
1260
+ this.searchType = SearchType.AUTO;
1261
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
1262
+ this.dropdownInfo = constantsInfo;
1263
+ this._isSortNeeded = true;
1264
+ this.formControlName = 'select';
1265
+ this.isMultiLevel = false;
1266
+ this.isLabelAlignedLeft = false;
1267
+ this.selectLabel = '';
1268
+ this.isMultiSelect = false;
1269
+ this.isDisabled = false;
1270
+ this.isSearch = false;
1271
+ this.placeholderText = this.dropdownInfo.dropdown.placeholderText;
1272
+ this.optionSelected = new EventEmitter();
1273
+ this.optionSearched = new EventEmitter();
1274
+ }
1275
+ /**
1276
+ * Initializes components instance properties from config if its defined otherwise creates form group and config.
1277
+ * @memberof SelectComponent
1278
+ */
1279
+ ngOnInit() {
1280
+ this.updateArrowDirection(false);
1281
+ this.group =
1282
+ this.group ?? this.formUtilityService.getFormGroup(this.formControlName);
1283
+ this.config =
1284
+ this.config ??
1285
+ this.formUtilityService.getFormFieldConfig(this.formControlName, FormControlType.SELECT);
1286
+ if (this.config) {
1287
+ this.isMultiSelect = this.config.isMultiSelect ?? false;
1288
+ this.dropdownOptions =
1289
+ this.config?.dropdownOptions ?? this.dropdownOptions;
1290
+ this.selectedOptions = this.config?.value;
1291
+ this.selectLabel = this.config?.label ?? '';
1292
+ this.placeholderText = this.config?.placeholder ?? this.placeholderText;
1293
+ this.isMultiSelect = this.config?.isMultiSelect ?? this.isMultiSelect;
1294
+ this.isDisabled = this.config?.disabled ?? this.isDisabled;
1295
+ this.searchType = this.config?.searchType ?? this.searchType;
1296
+ this.isSortNeeded = this.config?.isSortNeeded ?? this.isSortNeeded;
1297
+ }
1298
+ }
1299
+ /**
1300
+ * Emits selected option on changes the selected option.
1301
+ * @param {SelectOption} event
1302
+ * @memberof SelectComponent
1303
+ */
1304
+ onChange(event) {
1305
+ this.optionSelected.emit(event);
1306
+ }
1307
+ /**
1308
+ * Sets the select dropdown arrow direction
1309
+ * @param {boolean} opened
1310
+ * @memberof SelectComponent
1311
+ */
1312
+ updateArrowDirection(opened) {
1313
+ this.arrowDirection = opened;
1314
+ }
1315
+ /**
1316
+ * Takes the index and the current option as arguments and needs to return the unique identifier for this option.
1317
+ * @param {number} index
1318
+ * @param {SelectOption} option
1319
+ * @return {(number | string)}
1320
+ * @memberof SelectComponent
1321
+ */
1322
+ trackByFn(index, option) {
1323
+ return option.id;
1324
+ }
1325
+ /**
1326
+ * Emits searched options on filtering options in select dropdown
1327
+ * @param {string} searchText
1328
+ * @memberof SelectComponent
1329
+ */
1330
+ onOptionSearch(searchText) {
1331
+ this.optionSearched.emit(searchText);
1332
+ }
1333
+ /**
1334
+ * Compares the two passed options
1335
+ * @param {any} option1
1336
+ * @param {any} option2
1337
+ * @return {boolean}
1338
+ * @memberof SelectComponent
1339
+ */
1340
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
1341
+ comparer(option1, option2) {
1342
+ return option1 && option2 ? option1.id === option2.id : option1 === option2;
1343
+ }
1344
+ /**
1345
+ * Sorts the options
1346
+ * @memberof SelectComponent
1347
+ */
1348
+ ngAfterViewInit() {
1349
+ if (this.isSortNeeded && Array.isArray(this.dropdownOptions)) {
1350
+ this.dropdownOptions = this.arraySorting(this.dropdownOptions);
1351
+ }
1352
+ }
1353
+ /**
1354
+ * Sorts the options by using arraySorting method
1355
+ * @memberof SelectComponent
1356
+ */
1357
+ sortOptions() {
1358
+ if (this.isSortNeeded && Array.isArray(this.dropdownOptions)) {
1359
+ this.sortedOptions = this.arraySorting(this.dropdownOptions);
1360
+ }
1361
+ else {
1362
+ this.sortedOptions = this.dropdownOptions;
1363
+ }
1364
+ }
1365
+ /**
1366
+ * Utility method to sort dropdown options in ascending order.
1367
+ * @param {SelectOption[]} list
1368
+ * @return {SelectOption[]}
1369
+ * @memberof SelectComponent
1370
+ */
1371
+ arraySorting(list) {
1372
+ const clonedValue = [...list];
1373
+ const sort = clonedValue.sort((a, b) => {
1374
+ if (a.name.toLowerCase() === b.name.toLowerCase())
1375
+ return 0;
1376
+ if (a.name.toLowerCase() === 'all')
1377
+ return -1;
1378
+ if (b.name.toLowerCase() === 'all')
1379
+ return 1;
1380
+ if (a.name.toLowerCase() < b.name.toLowerCase())
1381
+ return -1;
1382
+ if (a.name.toLowerCase() > b.name.toLowerCase())
1383
+ return 1;
1384
+ return 0;
1385
+ });
1386
+ return sort;
1387
+ }
1388
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: SelectComponent, deps: [{ token: FormUtilityService }], target: i0.ɵɵFactoryTarget.Component }); }
1389
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.3", type: SelectComponent, isStandalone: true, selector: "ieeesa-select", inputs: { isSortNeeded: "isSortNeeded", dropdownOptions: "dropdownOptions", selectedOptions: "selectedOptions", formControlName: "formControlName", isMultiLevel: "isMultiLevel", isLabelAlignedLeft: "isLabelAlignedLeft", selectLabel: "selectLabel", isMultiSelect: "isMultiSelect", isDisabled: "isDisabled", isSearch: "isSearch", placeholderText: "placeholderText" }, outputs: { optionSelected: "optionSelected", optionSearched: "optionSearched" }, providers: [
1390
+ {
1391
+ provide: MAT_SELECT_CONFIG,
1392
+ useValue: { overlayPanelClass: 'ieeesa-select-overlay-pane' },
1393
+ },
1394
+ ], viewQueries: [{ propertyName: "formFields", predicate: SearchComponent, descendants: true }], ngImport: i0, template: "<div\r\n [formGroup]=\"group\"\r\n class=\"ieeesa-select-field\"\r\n *ngIf=\"group\"\r\n [ngClass]=\"\r\n isLabelAlignedLeft\r\n ? 'ieeesa-select-field__label-left'\r\n : 'ieeesa-select-field__label-top'\r\n \"\r\n>\r\n <mat-label class=\"ieeesa-select-field__label\">{{ selectLabel }}</mat-label>\r\n <mat-form-field\r\n [ngClass]=\"\r\n arrowDirection\r\n ? 'ieeesa-select-field__arrow-up'\r\n : 'ieeesa-select-field__arrow-down'\r\n \"\r\n >\r\n <mat-select\r\n disableOptionCentering\r\n *ngIf=\"isMultiSelect\"\r\n (openedChange)=\"updateArrowDirection($event)\"\r\n (selectionChange)=\"onChange($event.value)\"\r\n [formControlName]=\"config.controlName\"\r\n [multiple]=\"isMultiSelect\"\r\n [disabled]=\"isDisabled\"\r\n [placeholder]=\"placeholderText\"\r\n [compareWith]=\"comparer\"\r\n >\r\n <ieeesa-search\r\n *ngIf=\"isSearch\"\r\n [searchType]=\"searchType\"\r\n (searchValue)=\"onOptionSearch($event)\"\r\n ></ieeesa-search>\r\n <ng-container\r\n *ngIf=\"!isMultiLevel\"\r\n [ngTemplateOutlet]=\"dropdownOptionsTemplateRef\"\r\n [ngTemplateOutletContext]=\"{ data: dropdownOptions }\"\r\n >\r\n </ng-container>\r\n <ng-container *ngIf=\"isMultiLevel\">\r\n <mat-optgroup\r\n *ngFor=\"let option of dropdownOptions; trackBy: trackByFn\"\r\n [label]=\"option.name\"\r\n >\r\n <ng-container\r\n [ngTemplateOutlet]=\"dropdownOptionsTemplateRef\"\r\n [ngTemplateOutletContext]=\"{ data: option.option_groups }\"\r\n >\r\n </ng-container>\r\n </mat-optgroup>\r\n </ng-container>\r\n <ng-template #dropdownOptionsTemplateRef let-options=\"data\">\r\n <mat-option\r\n *ngFor=\"let option of options; trackBy: trackByFn\"\r\n [value]=\"option\"\r\n >\r\n {{ option.name }}\r\n </mat-option>\r\n </ng-template>\r\n </mat-select>\r\n\r\n <mat-select\r\n disableOptionCentering\r\n *ngIf=\"!isMultiSelect\"\r\n [multiple]=\"isMultiSelect\"\r\n (openedChange)=\"updateArrowDirection($event)\"\r\n (selectionChange)=\"onChange($event.value)\"\r\n [formControlName]=\"config.controlName\"\r\n [disabled]=\"isDisabled\"\r\n [placeholder]=\"placeholderText\"\r\n >\r\n <ieeesa-search\r\n *ngIf=\"isSearch\"\r\n [searchType]=\"searchType\"\r\n (searchValue)=\"onOptionSearch($event)\"\r\n ></ieeesa-search>\r\n <ng-container\r\n *ngIf=\"!isMultiLevel\"\r\n [ngTemplateOutlet]=\"dropdownOptionsTemplateRef\"\r\n [ngTemplateOutletContext]=\"{ data: dropdownOptions }\"\r\n >\r\n </ng-container>\r\n <ng-container *ngIf=\"isMultiLevel\">\r\n <mat-optgroup\r\n *ngFor=\"let option of dropdownOptions; trackBy: trackByFn\"\r\n [label]=\"option.name\"\r\n >\r\n <ng-container\r\n [ngTemplateOutlet]=\"dropdownOptionsTemplateRef\"\r\n [ngTemplateOutletContext]=\"{ data: option.option_groups }\"\r\n >\r\n </ng-container>\r\n </mat-optgroup>\r\n </ng-container>\r\n <ng-template #dropdownOptionsTemplateRef let-options=\"data\">\r\n <mat-option\r\n *ngFor=\"let option of options; trackBy: trackByFn\"\r\n [value]=\"option\"\r\n >\r\n {{ option.name }}\r\n </mat-option>\r\n </ng-template>\r\n </mat-select>\r\n </mat-form-field>\r\n <ieeesa-form-error [formGroup]=\"group\" [config]=\"config\"> </ieeesa-form-error>\r\n</div>\r\n", styles: [".ieeesa-subtitle{text-align:left;font-family:Calibri Regular;font-size:1.56em;letter-spacing:0;color:#000;opacity:1}.ieeesa-body{text-align:left;font-family:Calibri Regular;font-size:1.25em;letter-spacing:0;color:#000;opacity:1}.ieeesa-display-lg-57{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:3.5625em;line-height:64px;color:#000;letter-spacing:0}.ieeesa-display-md-47{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.9375em;line-height:52px;color:#000;letter-spacing:0}.ieeesa-display-sm-38{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.375em;line-height:44px;color:#000;letter-spacing:0}.ieeesa-headline-lg-34{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.125em;line-height:40px;color:#000;letter-spacing:0}.ieeesa-headline-md-30{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.875em;line-height:36px;color:#000;letter-spacing:0}.ieeesa-headline-sm-26{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.625em;line-height:32px;color:#000;letter-spacing:0}.ieeesa-title-lg-bold-24{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1.5em;line-height:28px;color:#000;letter-spacing:0}.ieeesa-title-lg-24{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.5em;line-height:28px;color:#000;letter-spacing:0}.ieeesa-title-md-18{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.125em;line-height:24px;color:#000;letter-spacing:.009375em}.ieeesa-title-sm-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-lg-bold-16{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-lg-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-md-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875em;line-height:16px;color:#000;letter-spacing:.03125em}.ieeesa-label-sm-13{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.8125em;line-height:16px;color:#000;letter-spacing:.03125em}.ieeesa-body-lg-bold-18{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1.125em;line-height:24px;color:#000;letter-spacing:.03125em}.ieeesa-body-lg-18{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.125em;line-height:24px;color:#000;letter-spacing:.03125em}.ieeesa-body-md-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1em;line-height:20px;color:#000;letter-spacing:.015625em}.ieeesa-body-sm-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875em;line-height:16px;color:#000;letter-spacing:.025em}.ieeesa-title-inter-lg-bold-24{font-family:Inter Bold;font-style:normal;font-weight:700;font-size:1.5em;line-height:29px;color:#000;letter-spacing:0}.mat-mdc-button.mat-mdc-button-base.mat-primary-button,.mat-mdc-button.mat-mdc-button-base.mat-secondary-button{min-width:103px;width:auto;min-height:40px;height:auto;border-radius:3px;text-align:center;padding:.625em 1.5em;border:none;font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.mat-mdc-button.mat-mdc-button-base>.mat-icon{margin-right:11px}.mat-mdc-button.mat-mdc-button-base.mat-primary-button{background-color:#00629b;color:#fff}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:hover{background-color:#003e65}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:active{background-color:#00629b}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:disabled{background-color:#1c1b1f1f}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button{color:#fff;background:#a7a8aa;box-shadow:0 1px 2px #0000004d,0 2px 6px 2px #00000026}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:hover{background:#a7a8aa}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:active{background:rgba(29,25,43,.12)}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:disabled{background:rgba(28,27,31,.12);color:#1c1b1f;opacity:.38}.ieeesa-text-button{color:#cac4d0;background:none;border:none}.flex-align-center{display:flex;align-items:center;justify-content:center}.mat-button-toggle-checked{background-color:#a7a8aa}.mat-button-toggle-checked .mat-button-toggle-label-content:before{font-family:\"Font Awesome 5 Free\";font-weight:900;content:\"\\f00c\";padding-right:.5625em}.mat-button-toggle-group .mat-button-toggle-label-content{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1em;line-height:20px;color:#1c1b1f;letter-spacing:.00625em}@media (max-width: 768px){.mat-button-toggle-group .mat-button-toggle-label-content{max-width:8ch;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;position:relative}}.cdk-overlay-pane{width:100%;min-width:312px}.ieeesa-select-field .mat-mdc-form-field{width:-webkit-fill-available}.ieeesa-select-field__arrow-up .mat-mdc-select-arrow{border:solid #595758;border-width:0 2px 2px 0;display:inline-block;padding:4px;margin:0 10px;transform:rotate(-135deg);-webkit-transform:rotate(-135deg)}.ieeesa-select-field__arrow-up .mat-mdc-select-arrow svg{display:none}.ieeesa-select-field__arrow-down .mat-mdc-select-arrow{border:solid #595758;border-width:0 2px 2px 0;display:inline-block;padding:4px;margin:0 10px;transform:rotate(45deg);-webkit-transform:rotate(45deg)}.ieeesa-select-field__arrow-down .mat-mdc-select-arrow svg{display:none}.ieeesa-select-field__label-left{display:flex}.ieeesa-select-field__label-top{display:block}.ieeesa-select-field .mdc-text-field--filled .mdc-line-ripple:after{border-bottom-color:#918f90!important}.ieeesa-select-field .mdc-text-field--filled .mdc-line-ripple:before{border-bottom-color:#918f90!important}.ieeesa-select-field .mdc-line-ripple--active:after{opacity:0}.ieeesa-select-field .mat-mdc-select-placeholder{font-size:1em;font-weight:400;color:#000}.ieeesa-select-field .mdc-text-field--filled:not(.mdc-text-field--disabled){background-color:#fffbfe}.ieeesa-select-field .mdc-text-field--focused,.ieeesa-select-field .mat-mdc-form-field-focus-overlay,.ieeesa-select-overlay-pane .mat-mdc-select-panel{background-color:#fffbfe}.ieeesa-select-overlay-pane .mdc-list-item__primary-text{color:#000}.ieeesa-select-overlay-pane .mat-mdc-option .mat-pseudo-checkbox-minimal{margin-left:0;float:right}.ieeesa-select-overlay-pane .mat-primary .mat-pseudo-checkbox-checked.mat-pseudo-checkbox-minimal:after{display:none}.ieeesa-select-overlay-pane .ieeesa-search-field .mat-mdc-form-field-infix{width:100%}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: SearchComponent, selector: "ieeesa-search", inputs: ["formControlName", "placeholderLabel", "searchType", "searchTerm"], outputs: ["searchValue"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i3.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i3.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: FormErrorComponent, selector: "ieeesa-form-error", inputs: ["formGroup", "config", "submitResponse"] }, { kind: "ngmodule", type: MatFormFieldModule }, { kind: "component", type: i4.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i4.MatLabel, selector: "mat-label" }, { kind: "ngmodule", type: MatInputModule }, { kind: "ngmodule", type: MatIconModule }, { kind: "ngmodule", type: MatSelectModule }, { kind: "component", type: i5$3.MatSelect, selector: "mat-select", inputs: ["disabled", "disableRipple", "tabIndex", "panelWidth", "hideSingleSelectionIndicator"], exportAs: ["matSelect"] }, { kind: "component", type: i2$1.MatOption, selector: "mat-option", exportAs: ["matOption"] }, { kind: "component", type: i2$1.MatOptgroup, selector: "mat-optgroup", inputs: ["disabled"], exportAs: ["matOptgroup"] }], encapsulation: i0.ViewEncapsulation.None }); }
1395
+ }
1396
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: SelectComponent, decorators: [{
1397
+ type: Component,
1398
+ args: [{ selector: 'ieeesa-select', standalone: true, imports: [
1399
+ CommonModule,
1400
+ SearchComponent,
1401
+ ReactiveFormsModule,
1402
+ FormErrorComponent,
1403
+ MatFormFieldModule,
1404
+ MatInputModule,
1405
+ MatIconModule,
1406
+ MatSelectModule,
1407
+ ], providers: [
1408
+ {
1409
+ provide: MAT_SELECT_CONFIG,
1410
+ useValue: { overlayPanelClass: 'ieeesa-select-overlay-pane' },
1411
+ },
1412
+ ], encapsulation: ViewEncapsulation.None, template: "<div\r\n [formGroup]=\"group\"\r\n class=\"ieeesa-select-field\"\r\n *ngIf=\"group\"\r\n [ngClass]=\"\r\n isLabelAlignedLeft\r\n ? 'ieeesa-select-field__label-left'\r\n : 'ieeesa-select-field__label-top'\r\n \"\r\n>\r\n <mat-label class=\"ieeesa-select-field__label\">{{ selectLabel }}</mat-label>\r\n <mat-form-field\r\n [ngClass]=\"\r\n arrowDirection\r\n ? 'ieeesa-select-field__arrow-up'\r\n : 'ieeesa-select-field__arrow-down'\r\n \"\r\n >\r\n <mat-select\r\n disableOptionCentering\r\n *ngIf=\"isMultiSelect\"\r\n (openedChange)=\"updateArrowDirection($event)\"\r\n (selectionChange)=\"onChange($event.value)\"\r\n [formControlName]=\"config.controlName\"\r\n [multiple]=\"isMultiSelect\"\r\n [disabled]=\"isDisabled\"\r\n [placeholder]=\"placeholderText\"\r\n [compareWith]=\"comparer\"\r\n >\r\n <ieeesa-search\r\n *ngIf=\"isSearch\"\r\n [searchType]=\"searchType\"\r\n (searchValue)=\"onOptionSearch($event)\"\r\n ></ieeesa-search>\r\n <ng-container\r\n *ngIf=\"!isMultiLevel\"\r\n [ngTemplateOutlet]=\"dropdownOptionsTemplateRef\"\r\n [ngTemplateOutletContext]=\"{ data: dropdownOptions }\"\r\n >\r\n </ng-container>\r\n <ng-container *ngIf=\"isMultiLevel\">\r\n <mat-optgroup\r\n *ngFor=\"let option of dropdownOptions; trackBy: trackByFn\"\r\n [label]=\"option.name\"\r\n >\r\n <ng-container\r\n [ngTemplateOutlet]=\"dropdownOptionsTemplateRef\"\r\n [ngTemplateOutletContext]=\"{ data: option.option_groups }\"\r\n >\r\n </ng-container>\r\n </mat-optgroup>\r\n </ng-container>\r\n <ng-template #dropdownOptionsTemplateRef let-options=\"data\">\r\n <mat-option\r\n *ngFor=\"let option of options; trackBy: trackByFn\"\r\n [value]=\"option\"\r\n >\r\n {{ option.name }}\r\n </mat-option>\r\n </ng-template>\r\n </mat-select>\r\n\r\n <mat-select\r\n disableOptionCentering\r\n *ngIf=\"!isMultiSelect\"\r\n [multiple]=\"isMultiSelect\"\r\n (openedChange)=\"updateArrowDirection($event)\"\r\n (selectionChange)=\"onChange($event.value)\"\r\n [formControlName]=\"config.controlName\"\r\n [disabled]=\"isDisabled\"\r\n [placeholder]=\"placeholderText\"\r\n >\r\n <ieeesa-search\r\n *ngIf=\"isSearch\"\r\n [searchType]=\"searchType\"\r\n (searchValue)=\"onOptionSearch($event)\"\r\n ></ieeesa-search>\r\n <ng-container\r\n *ngIf=\"!isMultiLevel\"\r\n [ngTemplateOutlet]=\"dropdownOptionsTemplateRef\"\r\n [ngTemplateOutletContext]=\"{ data: dropdownOptions }\"\r\n >\r\n </ng-container>\r\n <ng-container *ngIf=\"isMultiLevel\">\r\n <mat-optgroup\r\n *ngFor=\"let option of dropdownOptions; trackBy: trackByFn\"\r\n [label]=\"option.name\"\r\n >\r\n <ng-container\r\n [ngTemplateOutlet]=\"dropdownOptionsTemplateRef\"\r\n [ngTemplateOutletContext]=\"{ data: option.option_groups }\"\r\n >\r\n </ng-container>\r\n </mat-optgroup>\r\n </ng-container>\r\n <ng-template #dropdownOptionsTemplateRef let-options=\"data\">\r\n <mat-option\r\n *ngFor=\"let option of options; trackBy: trackByFn\"\r\n [value]=\"option\"\r\n >\r\n {{ option.name }}\r\n </mat-option>\r\n </ng-template>\r\n </mat-select>\r\n </mat-form-field>\r\n <ieeesa-form-error [formGroup]=\"group\" [config]=\"config\"> </ieeesa-form-error>\r\n</div>\r\n", styles: [".ieeesa-subtitle{text-align:left;font-family:Calibri Regular;font-size:1.56em;letter-spacing:0;color:#000;opacity:1}.ieeesa-body{text-align:left;font-family:Calibri Regular;font-size:1.25em;letter-spacing:0;color:#000;opacity:1}.ieeesa-display-lg-57{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:3.5625em;line-height:64px;color:#000;letter-spacing:0}.ieeesa-display-md-47{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.9375em;line-height:52px;color:#000;letter-spacing:0}.ieeesa-display-sm-38{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.375em;line-height:44px;color:#000;letter-spacing:0}.ieeesa-headline-lg-34{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.125em;line-height:40px;color:#000;letter-spacing:0}.ieeesa-headline-md-30{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.875em;line-height:36px;color:#000;letter-spacing:0}.ieeesa-headline-sm-26{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.625em;line-height:32px;color:#000;letter-spacing:0}.ieeesa-title-lg-bold-24{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1.5em;line-height:28px;color:#000;letter-spacing:0}.ieeesa-title-lg-24{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.5em;line-height:28px;color:#000;letter-spacing:0}.ieeesa-title-md-18{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.125em;line-height:24px;color:#000;letter-spacing:.009375em}.ieeesa-title-sm-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-lg-bold-16{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-lg-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-md-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875em;line-height:16px;color:#000;letter-spacing:.03125em}.ieeesa-label-sm-13{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.8125em;line-height:16px;color:#000;letter-spacing:.03125em}.ieeesa-body-lg-bold-18{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1.125em;line-height:24px;color:#000;letter-spacing:.03125em}.ieeesa-body-lg-18{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.125em;line-height:24px;color:#000;letter-spacing:.03125em}.ieeesa-body-md-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1em;line-height:20px;color:#000;letter-spacing:.015625em}.ieeesa-body-sm-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875em;line-height:16px;color:#000;letter-spacing:.025em}.ieeesa-title-inter-lg-bold-24{font-family:Inter Bold;font-style:normal;font-weight:700;font-size:1.5em;line-height:29px;color:#000;letter-spacing:0}.mat-mdc-button.mat-mdc-button-base.mat-primary-button,.mat-mdc-button.mat-mdc-button-base.mat-secondary-button{min-width:103px;width:auto;min-height:40px;height:auto;border-radius:3px;text-align:center;padding:.625em 1.5em;border:none;font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.mat-mdc-button.mat-mdc-button-base>.mat-icon{margin-right:11px}.mat-mdc-button.mat-mdc-button-base.mat-primary-button{background-color:#00629b;color:#fff}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:hover{background-color:#003e65}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:active{background-color:#00629b}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:disabled{background-color:#1c1b1f1f}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button{color:#fff;background:#a7a8aa;box-shadow:0 1px 2px #0000004d,0 2px 6px 2px #00000026}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:hover{background:#a7a8aa}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:active{background:rgba(29,25,43,.12)}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:disabled{background:rgba(28,27,31,.12);color:#1c1b1f;opacity:.38}.ieeesa-text-button{color:#cac4d0;background:none;border:none}.flex-align-center{display:flex;align-items:center;justify-content:center}.mat-button-toggle-checked{background-color:#a7a8aa}.mat-button-toggle-checked .mat-button-toggle-label-content:before{font-family:\"Font Awesome 5 Free\";font-weight:900;content:\"\\f00c\";padding-right:.5625em}.mat-button-toggle-group .mat-button-toggle-label-content{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1em;line-height:20px;color:#1c1b1f;letter-spacing:.00625em}@media (max-width: 768px){.mat-button-toggle-group .mat-button-toggle-label-content{max-width:8ch;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;position:relative}}.cdk-overlay-pane{width:100%;min-width:312px}.ieeesa-select-field .mat-mdc-form-field{width:-webkit-fill-available}.ieeesa-select-field__arrow-up .mat-mdc-select-arrow{border:solid #595758;border-width:0 2px 2px 0;display:inline-block;padding:4px;margin:0 10px;transform:rotate(-135deg);-webkit-transform:rotate(-135deg)}.ieeesa-select-field__arrow-up .mat-mdc-select-arrow svg{display:none}.ieeesa-select-field__arrow-down .mat-mdc-select-arrow{border:solid #595758;border-width:0 2px 2px 0;display:inline-block;padding:4px;margin:0 10px;transform:rotate(45deg);-webkit-transform:rotate(45deg)}.ieeesa-select-field__arrow-down .mat-mdc-select-arrow svg{display:none}.ieeesa-select-field__label-left{display:flex}.ieeesa-select-field__label-top{display:block}.ieeesa-select-field .mdc-text-field--filled .mdc-line-ripple:after{border-bottom-color:#918f90!important}.ieeesa-select-field .mdc-text-field--filled .mdc-line-ripple:before{border-bottom-color:#918f90!important}.ieeesa-select-field .mdc-line-ripple--active:after{opacity:0}.ieeesa-select-field .mat-mdc-select-placeholder{font-size:1em;font-weight:400;color:#000}.ieeesa-select-field .mdc-text-field--filled:not(.mdc-text-field--disabled){background-color:#fffbfe}.ieeesa-select-field .mdc-text-field--focused,.ieeesa-select-field .mat-mdc-form-field-focus-overlay,.ieeesa-select-overlay-pane .mat-mdc-select-panel{background-color:#fffbfe}.ieeesa-select-overlay-pane .mdc-list-item__primary-text{color:#000}.ieeesa-select-overlay-pane .mat-mdc-option .mat-pseudo-checkbox-minimal{margin-left:0;float:right}.ieeesa-select-overlay-pane .mat-primary .mat-pseudo-checkbox-checked.mat-pseudo-checkbox-minimal:after{display:none}.ieeesa-select-overlay-pane .ieeesa-search-field .mat-mdc-form-field-infix{width:100%}\n"] }]
1413
+ }], ctorParameters: function () { return [{ type: FormUtilityService }]; }, propDecorators: { formFields: [{
1414
+ type: ViewChildren,
1415
+ args: [SearchComponent]
1416
+ }], isSortNeeded: [{
1417
+ type: Input
1418
+ }], dropdownOptions: [{
1419
+ type: Input
1420
+ }], selectedOptions: [{
1421
+ type: Input
1422
+ }], formControlName: [{
1423
+ type: Input
1424
+ }], isMultiLevel: [{
1425
+ type: Input
1426
+ }], isLabelAlignedLeft: [{
1427
+ type: Input
1428
+ }], selectLabel: [{
1429
+ type: Input
1430
+ }], isMultiSelect: [{
1431
+ type: Input
1432
+ }], isDisabled: [{
1433
+ type: Input
1434
+ }], isSearch: [{
1090
1435
  type: Input
1091
- }], searchTerm: [{
1436
+ }], placeholderText: [{
1092
1437
  type: Input
1093
- }], searchValue: [{
1438
+ }], optionSelected: [{
1439
+ type: Output
1440
+ }], optionSearched: [{
1094
1441
  type: Output
1095
- }], searchControl: [{
1096
- type: ViewChild,
1097
- args: ['searchControl']
1098
1442
  }] } });
1099
1443
 
1100
- const moment$1 = moment_;
1101
- class CustomDateAdapter extends MomentDateAdapter {
1102
- /**
1103
- * Overrides the getDayOfWeekNames method of MomentDateAdapter to show first letter of day in capital in date picker header.
1104
- * @return {string[]}
1105
- * @memberof CustomDateAdapter
1106
- */
1107
- getDayOfWeekNames() {
1108
- return ['S', 'M', 'T', 'W', 'T', 'F', 'S'];
1444
+ class TextAreaComponent {
1445
+ constructor() {
1446
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
1447
+ this.constants = constantsInfo;
1109
1448
  }
1110
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: CustomDateAdapter, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }
1111
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: CustomDateAdapter }); }
1449
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: TextAreaComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
1450
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.3", type: TextAreaComponent, isStandalone: true, selector: "ieeesa-text-area", ngImport: i0, template: "<div\r\n class=\"ieeesa-text-area-field\"\r\n [formGroup]=\"group\"\r\n [ngClass]=\"\r\n config.isLabelAlignedLeft\r\n ? 'ieeesa-text-area-field__label-left'\r\n : 'ieeesa-text-area-field__label-top'\r\n \"\r\n>\r\n <mat-label class=\"ieeesa-body-sm-14 ieeesa-text-area-field__label\">{{\r\n config.label\r\n }}</mat-label>\r\n <mat-form-field appearance=\"fill\">\r\n <textarea\r\n name=\"config.name\"\r\n matInput\r\n [placeholder]=\"config.placeholder ?? ''\"\r\n [formControlName]=\"config.controlName\"\r\n [maxlength]=\"config.maxLength ?? constants.textarea.maxLengthDefault\"\r\n [readonly]=\"config.isReadonly\"\r\n class=\"ieeesa-text-area-field__content ieeesa-body-lg-18\"\r\n [ngClass]=\"\r\n config.isResize\r\n ? 'ieeesa-text-area-field__resize'\r\n : 'ieeesa-text-area-field__no-resize'\r\n \"\r\n >\r\n {{ config.value }}</textarea\r\n >\r\n </mat-form-field>\r\n <ieeesa-form-error [formGroup]=\"group\" [config]=\"config\"> </ieeesa-form-error>\r\n</div>\r\n", styles: [".ieeesa-subtitle{text-align:left;font-family:Calibri Regular;font-size:1.56em;letter-spacing:0;color:#000;opacity:1}.ieeesa-body{text-align:left;font-family:Calibri Regular;font-size:1.25em;letter-spacing:0;color:#000;opacity:1}.ieeesa-display-lg-57{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:3.5625em;line-height:64px;color:#000;letter-spacing:0}.ieeesa-display-md-47{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.9375em;line-height:52px;color:#000;letter-spacing:0}.ieeesa-display-sm-38{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.375em;line-height:44px;color:#000;letter-spacing:0}.ieeesa-headline-lg-34{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.125em;line-height:40px;color:#000;letter-spacing:0}.ieeesa-headline-md-30{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.875em;line-height:36px;color:#000;letter-spacing:0}.ieeesa-headline-sm-26{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.625em;line-height:32px;color:#000;letter-spacing:0}.ieeesa-title-lg-bold-24{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1.5em;line-height:28px;color:#000;letter-spacing:0}.ieeesa-title-lg-24{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.5em;line-height:28px;color:#000;letter-spacing:0}.ieeesa-title-md-18{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.125em;line-height:24px;color:#000;letter-spacing:.009375em}.ieeesa-title-sm-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-lg-bold-16{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-lg-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-md-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875em;line-height:16px;color:#000;letter-spacing:.03125em}.ieeesa-label-sm-13{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.8125em;line-height:16px;color:#000;letter-spacing:.03125em}.ieeesa-body-lg-bold-18{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1.125em;line-height:24px;color:#000;letter-spacing:.03125em}.ieeesa-body-lg-18{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.125em;line-height:24px;color:#000;letter-spacing:.03125em}.ieeesa-body-md-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1em;line-height:20px;color:#000;letter-spacing:.015625em}.ieeesa-body-sm-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875em;line-height:16px;color:#000;letter-spacing:.025em}.ieeesa-title-inter-lg-bold-24{font-family:Inter Bold;font-style:normal;font-weight:700;font-size:1.5em;line-height:29px;color:#000;letter-spacing:0}.mat-mdc-button.mat-mdc-button-base.mat-primary-button,.mat-mdc-button.mat-mdc-button-base.mat-secondary-button{min-width:103px;width:auto;min-height:40px;height:auto;border-radius:3px;text-align:center;padding:.625em 1.5em;border:none;font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.mat-mdc-button.mat-mdc-button-base>.mat-icon{margin-right:11px}.mat-mdc-button.mat-mdc-button-base.mat-primary-button{background-color:#00629b;color:#fff}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:hover{background-color:#003e65}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:active{background-color:#00629b}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:disabled{background-color:#1c1b1f1f}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button{color:#fff;background:#a7a8aa;box-shadow:0 1px 2px #0000004d,0 2px 6px 2px #00000026}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:hover{background:#a7a8aa}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:active{background:rgba(29,25,43,.12)}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:disabled{background:rgba(28,27,31,.12);color:#1c1b1f;opacity:.38}.ieeesa-text-button{color:#cac4d0;background:none;border:none}.flex-align-center{display:flex;align-items:center;justify-content:center}.mat-button-toggle-checked{background-color:#a7a8aa}.mat-button-toggle-checked .mat-button-toggle-label-content:before{font-family:\"Font Awesome 5 Free\";font-weight:900;content:\"\\f00c\";padding-right:.5625em}.mat-button-toggle-group .mat-button-toggle-label-content{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1em;line-height:20px;color:#1c1b1f;letter-spacing:.00625em}@media (max-width: 768px){.mat-button-toggle-group .mat-button-toggle-label-content{max-width:8ch;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;position:relative}}.cdk-overlay-pane{width:100%;min-width:312px}.ieeesa-text-area-field__label-left{display:flex}.ieeesa-text-area-field__label-top{display:block}.ieeesa-text-area-field__content{min-width:444px;min-height:40px;width:auto;height:auto;border:none;padding-left:14px;border-radius:4px 4px 0 0}.ieeesa-text-area-field__no-resize{resize:none}.ieeesa-text-area-field__resize{resize:auto}.ieeesa-text-area-field .mat-mdc-form-field{width:-webkit-fill-available}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i3.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: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i3.MaxLengthValidator, selector: "[maxlength][formControlName],[maxlength][formControl],[maxlength][ngModel]", inputs: ["maxlength"] }, { kind: "directive", type: i3.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i3.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: FormErrorComponent, selector: "ieeesa-form-error", inputs: ["formGroup", "config", "submitResponse"] }, { kind: "ngmodule", type: MatFormFieldModule }, { kind: "component", type: i4.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i4.MatLabel, selector: "mat-label" }, { kind: "ngmodule", type: MatInputModule }, { kind: "directive", type: i5.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }], encapsulation: i0.ViewEncapsulation.None }); }
1112
1451
  }
1113
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: CustomDateAdapter, decorators: [{
1114
- type: Injectable
1452
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: TextAreaComponent, decorators: [{
1453
+ type: Component,
1454
+ args: [{ selector: 'ieeesa-text-area', standalone: true, imports: [
1455
+ CommonModule,
1456
+ ReactiveFormsModule,
1457
+ FormErrorComponent,
1458
+ MatFormFieldModule,
1459
+ MatInputModule,
1460
+ ], encapsulation: ViewEncapsulation.None, template: "<div\r\n class=\"ieeesa-text-area-field\"\r\n [formGroup]=\"group\"\r\n [ngClass]=\"\r\n config.isLabelAlignedLeft\r\n ? 'ieeesa-text-area-field__label-left'\r\n : 'ieeesa-text-area-field__label-top'\r\n \"\r\n>\r\n <mat-label class=\"ieeesa-body-sm-14 ieeesa-text-area-field__label\">{{\r\n config.label\r\n }}</mat-label>\r\n <mat-form-field appearance=\"fill\">\r\n <textarea\r\n name=\"config.name\"\r\n matInput\r\n [placeholder]=\"config.placeholder ?? ''\"\r\n [formControlName]=\"config.controlName\"\r\n [maxlength]=\"config.maxLength ?? constants.textarea.maxLengthDefault\"\r\n [readonly]=\"config.isReadonly\"\r\n class=\"ieeesa-text-area-field__content ieeesa-body-lg-18\"\r\n [ngClass]=\"\r\n config.isResize\r\n ? 'ieeesa-text-area-field__resize'\r\n : 'ieeesa-text-area-field__no-resize'\r\n \"\r\n >\r\n {{ config.value }}</textarea\r\n >\r\n </mat-form-field>\r\n <ieeesa-form-error [formGroup]=\"group\" [config]=\"config\"> </ieeesa-form-error>\r\n</div>\r\n", styles: [".ieeesa-subtitle{text-align:left;font-family:Calibri Regular;font-size:1.56em;letter-spacing:0;color:#000;opacity:1}.ieeesa-body{text-align:left;font-family:Calibri Regular;font-size:1.25em;letter-spacing:0;color:#000;opacity:1}.ieeesa-display-lg-57{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:3.5625em;line-height:64px;color:#000;letter-spacing:0}.ieeesa-display-md-47{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.9375em;line-height:52px;color:#000;letter-spacing:0}.ieeesa-display-sm-38{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.375em;line-height:44px;color:#000;letter-spacing:0}.ieeesa-headline-lg-34{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.125em;line-height:40px;color:#000;letter-spacing:0}.ieeesa-headline-md-30{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.875em;line-height:36px;color:#000;letter-spacing:0}.ieeesa-headline-sm-26{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.625em;line-height:32px;color:#000;letter-spacing:0}.ieeesa-title-lg-bold-24{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1.5em;line-height:28px;color:#000;letter-spacing:0}.ieeesa-title-lg-24{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.5em;line-height:28px;color:#000;letter-spacing:0}.ieeesa-title-md-18{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.125em;line-height:24px;color:#000;letter-spacing:.009375em}.ieeesa-title-sm-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-lg-bold-16{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-lg-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-md-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875em;line-height:16px;color:#000;letter-spacing:.03125em}.ieeesa-label-sm-13{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.8125em;line-height:16px;color:#000;letter-spacing:.03125em}.ieeesa-body-lg-bold-18{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1.125em;line-height:24px;color:#000;letter-spacing:.03125em}.ieeesa-body-lg-18{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.125em;line-height:24px;color:#000;letter-spacing:.03125em}.ieeesa-body-md-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1em;line-height:20px;color:#000;letter-spacing:.015625em}.ieeesa-body-sm-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875em;line-height:16px;color:#000;letter-spacing:.025em}.ieeesa-title-inter-lg-bold-24{font-family:Inter Bold;font-style:normal;font-weight:700;font-size:1.5em;line-height:29px;color:#000;letter-spacing:0}.mat-mdc-button.mat-mdc-button-base.mat-primary-button,.mat-mdc-button.mat-mdc-button-base.mat-secondary-button{min-width:103px;width:auto;min-height:40px;height:auto;border-radius:3px;text-align:center;padding:.625em 1.5em;border:none;font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.mat-mdc-button.mat-mdc-button-base>.mat-icon{margin-right:11px}.mat-mdc-button.mat-mdc-button-base.mat-primary-button{background-color:#00629b;color:#fff}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:hover{background-color:#003e65}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:active{background-color:#00629b}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:disabled{background-color:#1c1b1f1f}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button{color:#fff;background:#a7a8aa;box-shadow:0 1px 2px #0000004d,0 2px 6px 2px #00000026}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:hover{background:#a7a8aa}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:active{background:rgba(29,25,43,.12)}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:disabled{background:rgba(28,27,31,.12);color:#1c1b1f;opacity:.38}.ieeesa-text-button{color:#cac4d0;background:none;border:none}.flex-align-center{display:flex;align-items:center;justify-content:center}.mat-button-toggle-checked{background-color:#a7a8aa}.mat-button-toggle-checked .mat-button-toggle-label-content:before{font-family:\"Font Awesome 5 Free\";font-weight:900;content:\"\\f00c\";padding-right:.5625em}.mat-button-toggle-group .mat-button-toggle-label-content{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1em;line-height:20px;color:#1c1b1f;letter-spacing:.00625em}@media (max-width: 768px){.mat-button-toggle-group .mat-button-toggle-label-content{max-width:8ch;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;position:relative}}.cdk-overlay-pane{width:100%;min-width:312px}.ieeesa-text-area-field__label-left{display:flex}.ieeesa-text-area-field__label-top{display:block}.ieeesa-text-area-field__content{min-width:444px;min-height:40px;width:auto;height:auto;border:none;padding-left:14px;border-radius:4px 4px 0 0}.ieeesa-text-area-field__no-resize{resize:none}.ieeesa-text-area-field__resize{resize:auto}.ieeesa-text-area-field .mat-mdc-form-field{width:-webkit-fill-available}\n"] }]
1115
1461
  }] });
1462
+
1463
+ const components = {
1464
+ [FormControlType.INPUT]: InputComponent,
1465
+ [FormControlType.TEXT_AREA]: TextAreaComponent,
1466
+ [FormControlType.SELECT]: SelectComponent,
1467
+ [FormControlType.SEARCH]: SearchComponent,
1468
+ [FormControlType.DATE]: DatePickerComponent,
1469
+ [FormControlType.CHECKBOX]: CheckboxComponent,
1470
+ [FormControlType.RADIO]: RadioComponent,
1471
+ [FormControlType.AUTO_COMPLETE]: AutocompleteComponent,
1472
+ };
1116
1473
  /**
1117
- * Date selection of type SINGLE_DATE_SELECTION, DATE_RANGE_SELECTION and CALENDAR and handling of calendar events.
1474
+ * Provides the implementation of DynamicFormFieldDirective which hosts and creates the form fields components dynamically.
1118
1475
  * @export
1119
- * @class DatePickerComponent
1476
+ * @class DynamicFormFieldDirective
1120
1477
  * @implements {FormField}
1121
1478
  * @implements {OnInit}
1122
- * @implements {AfterViewInit}
1479
+ * @implements {OnDestroy}
1123
1480
  */
1124
- class DatePickerComponent {
1481
+ class DynamicFormFieldDirective {
1125
1482
  /**
1126
- * Gets preselected dates as an input.
1127
- * @memberof DatePickerComponent
1483
+ * Sets the form field configuration
1484
+ * @memberof DynamicFormFieldDirective
1128
1485
  */
1129
- set selectedDates(value) {
1130
- this._selectedDates = value;
1131
- if (this.formControlName &&
1132
- this.selectedDates?.length === 1 &&
1133
- this.selectedDates[0] !== undefined &&
1134
- this.calendarType === CalendarType$1.SINGLE_DATE_SELECTION) {
1135
- this.datepickerService.selectedDate = value[0];
1136
- this.createFormGroup(value[0]);
1137
- this.datepickerService.isRangeSelection = false;
1486
+ set config(value) {
1487
+ this._config = value;
1488
+ if (this.component) {
1489
+ this.loadComponent();
1138
1490
  }
1139
1491
  }
1140
- /**
1141
- * Returns selected dates
1142
- * @readonly
1143
- * @type {string[]}
1144
- * @memberof DatePickerComponent
1145
- */
1146
- get selectedDates() {
1147
- return this._selectedDates;
1492
+ get config() {
1493
+ return this._config;
1148
1494
  }
1149
1495
  /**
1150
- * Gets preselected date range as an input.
1151
- * @memberof DatePickerComponent
1496
+ * Sets the form group
1497
+ * @memberof DynamicFormFieldDirective
1152
1498
  */
1153
- set selectedRange(value) {
1154
- this._selectedRange = value;
1155
- if (this.selectedRange?.length === 2 &&
1156
- this.calendarType === CalendarType$1.DATE_RANGE_SELECTION) {
1157
- this.createFormGroupWithRangeControls(value[0], value[1]);
1158
- this.setDateRange(value[0], value[1]);
1159
- this.datepickerService.isRangeSelection = true;
1499
+ set group(value) {
1500
+ if (this.component?.instance) {
1501
+ this.component.instance.group = value;
1160
1502
  }
1503
+ this._group = value;
1161
1504
  }
1162
- /**
1163
- * Returns selected date range
1164
- * @readonly
1165
- * @type {string[]}
1166
- * @memberof DatePickerComponent
1167
- */
1168
- get selectedRange() {
1169
- return this._selectedRange;
1170
- }
1171
- constructor(
1172
- // eslint-disable-next-line no-unused-vars
1173
- fb,
1174
- // eslint-disable-next-line no-unused-vars
1175
- changeDetectorRef,
1176
- // eslint-disable-next-line no-unused-vars
1177
- datepickerService,
1178
- // eslint-disable-next-line no-unused-vars
1179
- formUtilityService // eslint-disable-next-line no-empty-function,
1180
- ) {
1181
- this.fb = fb;
1182
- this.changeDetectorRef = changeDetectorRef;
1183
- this.datepickerService = datepickerService;
1184
- this.formUtilityService = formUtilityService;
1185
- this.datePickerHeader = DatePickerHeaderComponent$1;
1186
- this.calendarTypes = CalendarType$1;
1187
- this._selectedDates = [];
1188
- this._selectedRange = [];
1189
- this.calendarType = CalendarType$1.SINGLE_DATE_SELECTION;
1190
- this.placeholderLabel = '';
1191
- this.isDisabled = false;
1192
- this.isLabelAlignedLeft = false;
1193
- this.datepickerLabel = '';
1194
- this.selectedDate = new EventEmitter();
1195
- this.selectedDateRange = new EventEmitter();
1196
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
1197
- this.buttonActionsInfo = buttonActionsInfo;
1505
+ get group() {
1506
+ return this._group;
1198
1507
  }
1199
1508
  /**
1200
- * Implementation of ngOnInit lifecycle hook method to creates config if its undefined and sets components instance variables if config is defined. Sets the form group value if form group is defined.
1201
- * @memberof DatePickerComponent
1509
+ * Sets the submit response of form submit event
1510
+ * @memberof DynamicFormFieldDirective
1202
1511
  */
1203
- ngOnInit() {
1204
- if (!this.config) {
1205
- const controlName = this.formControlName ?? 'datepicker';
1206
- this.config = this.formUtilityService.getFormFieldConfig(controlName, FormControlType$1.DATE);
1207
- if (this.config &&
1208
- this.calendarType === CalendarType$1.DATE_RANGE_SELECTION) {
1209
- this.config.dateRangeControls = {
1210
- startDate: 'startDate',
1211
- endDate: 'endDate',
1212
- };
1213
- }
1214
- }
1215
- else {
1216
- this.initializePropertiesFromConfig();
1217
- }
1218
- if (!this.group) {
1219
- if (this.calendarType === CalendarType$1.SINGLE_DATE_SELECTION) {
1220
- this.createFormGroup();
1221
- }
1222
- else if (this.calendarType === CalendarType$1.DATE_RANGE_SELECTION) {
1223
- this.createFormGroupWithRangeControls();
1224
- }
1512
+ set submitResponse(value) {
1513
+ if (this.component?.instance) {
1514
+ this.component.instance.submitResponse = value;
1225
1515
  }
1516
+ this._submitResponse = value;
1226
1517
  }
1227
- /**
1228
- * Initializes properties from the config input
1229
- * @memberof DatePickerComponent
1230
- */
1231
- initializePropertiesFromConfig() {
1232
- this.calendarType =
1233
- this.config?.datePicker?.calendarType ??
1234
- CalendarType$1.SINGLE_DATE_SELECTION;
1235
- this.placeholderLabel = this.config?.datePicker?.placeholderLabel ?? '';
1236
- this.datepickerLabel = this.config?.datePicker?.label ?? '';
1237
- this.isLabelAlignedLeft =
1238
- this.config?.datePicker?.isLabelAlignedLeft ?? false;
1239
- this.dateRange = this.config?.datePicker?.dateRange ?? {
1240
- minDate: '',
1241
- maxDate: '',
1242
- };
1243
- this.isDisabled = !!this.config.disabled;
1244
- if (this.config.datePicker?.calendarType === CalendarType$1.DATE_RANGE_SELECTION) {
1245
- this.group.addControl('startDate', new FormControl());
1246
- this.group.addControl('endDate', new FormControl());
1247
- }
1518
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
1519
+ get submitResponse() {
1520
+ return this._submitResponse;
1248
1521
  }
1249
1522
  /**
1250
- * Handle date change event and emits the selected date.
1251
- * @memberof DatePickerComponent
1523
+ * Sets the form search response of form search apply.
1524
+ * @memberof DynamicFormFieldDirective
1252
1525
  */
1253
- onDateChange() {
1254
- this.selectedDate.emit(this.group?.get(this.config.controlName)?.value);
1255
- this.datepickerService.selectedDate = this.group?.get(this.config.controlName)?.value;
1256
- this.datepickerService.isRangeSelection = false;
1526
+ set searchResponse(value) {
1527
+ if (this.component?.instance) {
1528
+ this.component.instance.searchResponse = value;
1529
+ }
1530
+ this._searchResponse = value;
1257
1531
  }
1258
- /**
1259
- * Sets and emits selected date range
1260
- * @memberof DatePickerComponent
1261
- */
1262
- onDateRangeChange() {
1263
- this.datepickerService.isRangeSelection = true;
1264
- this.setDateRange(this.group.value.startDate ?? '', this.group.value.endDate ?? '');
1265
- this.selectedDateRange.emit({
1266
- startDate: this.group.value.startDate ?? '',
1267
- endDate: this.group.value.endDate ?? '',
1268
- });
1532
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
1533
+ get searchResponse() {
1534
+ return this._searchResponse;
1269
1535
  }
1270
- /**
1271
- * Sets the min and max date range.
1272
- * @param {(string | Date)} startDate
1273
- * @param {(string | Date)} endDate
1274
- * @memberof DatePickerComponent
1275
- */
1276
- setDateRange(startDate, endDate) {
1277
- this.datepickerService.range.next({
1278
- start: startDate,
1279
- end: endDate,
1280
- });
1536
+ // eslint-disable-next-line no-unused-vars, no-empty-function
1537
+ constructor(container) {
1538
+ this.container = container;
1539
+ this.destroy$ = new Subject();
1540
+ this.formSearchApply = new EventEmitter();
1541
+ this.formDropdownSelected = new EventEmitter();
1542
+ this.formDateSelected = new EventEmitter();
1543
+ this.formSelectedDateRange = new EventEmitter();
1544
+ this.formSelectSearch = new EventEmitter();
1545
+ this.formAutoCompleteSearch = new EventEmitter();
1546
+ this.autoCompleteOptionSelected = new EventEmitter();
1281
1547
  }
1282
1548
  /**
1283
- * Creates form group and initializes form value
1284
- * @param {string} [date]
1285
- * @memberof DatePickerComponent
1549
+ * Implementation of ngOnInit lifecycle hook method to call loadComponents method.
1550
+ * @memberof DynamicFormFieldDirective
1286
1551
  */
1287
- createFormGroup(date) {
1288
- this.group = this.fb.group({
1289
- [this.formControlName ? this.formControlName : 'datepicker']: date
1290
- ? [moment$1(date).utc(true).format()]
1291
- : [],
1292
- });
1552
+ ngOnInit() {
1553
+ this.loadComponent();
1293
1554
  }
1294
1555
  /**
1295
- * Creates form group with range type of controls and sets the min and max range values.
1296
- * @param {string} [startDate]
1297
- * @param {string} [endDate]
1298
- * @memberof DatePickerComponent
1556
+ * Creates the component dynamically and initializes the instance properties of created component, also handles the created component events.
1557
+ * @memberof DynamicFormFieldDirective
1299
1558
  */
1300
- createFormGroupWithRangeControls(startDate, endDate) {
1301
- this.group = this.fb.group({
1302
- startDate: startDate ? [moment$1(startDate).utc(true).format()] : [],
1303
- endDate: endDate ? [moment$1(endDate).utc(true).format()] : [],
1304
- });
1559
+ loadComponent() {
1560
+ if (!components[this.config?.type]) {
1561
+ const supportedTypes = Object.keys(components).join(', ');
1562
+ throw new Error(`Trying to use an unsupported type (${this.config.type}).
1563
+ Supported types: ${supportedTypes}`);
1564
+ }
1565
+ this.component = this.container.createComponent(components[this.config?.type]);
1566
+ if (this.component?.instance) {
1567
+ this.component.instance.config = this.config;
1568
+ this.component.instance.group = this.group;
1569
+ this.component.instance.submitResponse = this.submitResponse;
1570
+ this.component.instance.searchResponse = this.searchResponse;
1571
+ if (this.config.type === FormControlType.SEARCH) {
1572
+ this.component.instance.searchValue
1573
+ ?.pipe(takeUntil(this.destroy$))
1574
+ ?.subscribe((event) => {
1575
+ this.formSearchApply.emit(event);
1576
+ });
1577
+ }
1578
+ else if (this.config.type === FormControlType.SELECT) {
1579
+ this.component.instance.optionSelected
1580
+ ?.pipe(takeUntil(this.destroy$))
1581
+ ?.subscribe((event) => {
1582
+ this.formDropdownSelected.emit(event);
1583
+ });
1584
+ this.component.instance.optionSearched
1585
+ ?.pipe(takeUntil(this.destroy$))
1586
+ ?.subscribe((event) => {
1587
+ this.formSelectSearch.emit({
1588
+ searchEvent: event,
1589
+ controlName: this.config.controlName,
1590
+ });
1591
+ });
1592
+ }
1593
+ else if (this.config.type === FormControlType.DATE) {
1594
+ this.component.instance.selectedDate
1595
+ ?.pipe(takeUntil(this.destroy$))
1596
+ ?.subscribe((event) => {
1597
+ this.formDateSelected.emit(event);
1598
+ });
1599
+ this.component.instance.selectedDateRange
1600
+ ?.pipe(takeUntil(this.destroy$))
1601
+ ?.subscribe((event) => {
1602
+ this.formSelectedDateRange.emit(event);
1603
+ });
1604
+ }
1605
+ else if (this.config.type === FormControlType.AUTO_COMPLETE) {
1606
+ this.component.instance.autoCompleteSearchValue
1607
+ ?.pipe(takeUntil(this.destroy$))
1608
+ ?.subscribe((event) => {
1609
+ this.formAutoCompleteSearch.emit(event);
1610
+ });
1611
+ this.component.instance.autoCompleteOptionSelected
1612
+ ?.pipe(takeUntil(this.destroy$))
1613
+ ?.subscribe((event) => {
1614
+ this.autoCompleteOptionSelected.emit(event);
1615
+ });
1616
+ }
1617
+ }
1305
1618
  }
1306
1619
  /**
1307
- * Checks if the form control has required validator.
1308
- * @return {boolean}
1309
- * @memberof DatePickerComponent
1620
+ * Implementation of ngOnDestroy lifecycle hook method to unsubscribe the open observable subscriptions.
1621
+ * @memberof DynamicFormFieldDirective
1310
1622
  */
1311
- isRequired() {
1312
- return this.group?.controls[this.config?.controlName]?.hasValidator(Validators.required);
1623
+ ngOnDestroy() {
1624
+ this.destroy$.next(true);
1625
+ this.destroy$.unsubscribe();
1313
1626
  }
1314
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: DatePickerComponent, deps: [{ token: i3.FormBuilder }, { token: i0.ChangeDetectorRef }, { token: i2$2.DatepickerService }, { token: i1.FormUtilityService }], target: i0.ɵɵFactoryTarget.Component }); }
1315
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.3", type: DatePickerComponent, isStandalone: true, selector: "ieeesa-date-picker", inputs: { selectedDates: "selectedDates", selectedRange: "selectedRange", calendarType: "calendarType", formControlName: "formControlName", placeholderLabel: "placeholderLabel", isDisabled: "isDisabled", isLabelAlignedLeft: "isLabelAlignedLeft", datepickerLabel: "datepickerLabel", dateRange: "dateRange" }, outputs: { selectedDate: "selectedDate", selectedDateRange: "selectedDateRange" }, providers: [
1316
- { provide: MAT_MOMENT_DATE_ADAPTER_OPTIONS, useValue: { useUtc: true } },
1317
- {
1318
- provide: DateAdapter,
1319
- useClass: CustomDateAdapter,
1320
- deps: [MAT_DATE_LOCALE, MAT_MOMENT_DATE_ADAPTER_OPTIONS],
1321
- },
1322
- {
1323
- provide: MAT_DATE_FORMATS,
1324
- useValue: DateFormats,
1325
- },
1326
- ], ngImport: i0, template: "<div class=\"ieeesa-datepicker\">\r\n <div\r\n [formGroup]=\"group\"\r\n *ngIf=\"calendarType === calendarTypes.SINGLE_DATE_SELECTION\"\r\n class=\"ieeesa-datepicker--single-selection\"\r\n [ngClass]=\"!isRequired() ? 'ieeesa-datepicker__valid-date' : ''\"\r\n [ngClass]=\"{\r\n 'ieeesa-datepicker__valid-date': !isRequired(),\r\n 'ieeesa-datepicker__label-left': isLabelAlignedLeft,\r\n 'ieeesa-datepicker__label-top': !isLabelAlignedLeft\r\n }\"\r\n >\r\n <mat-label *ngIf=\"datepickerLabel\">{{ datepickerLabel }} </mat-label>\r\n <mat-form-field>\r\n <input\r\n matInput\r\n (dateInput)=\"onDateChange()\"\r\n (click)=\"picker.open()\"\r\n [matDatepicker]=\"picker\"\r\n [formControlName]=\"config.controlName\"\r\n [placeholder]=\"buttonActionsInfo?.datePicker?.dateFormatLabel\"\r\n #calendar\r\n readonly\r\n />\r\n <mat-datepicker-toggle\r\n class=\"mat-datepicker-toggle\"\r\n matIconSuffix\r\n [for]=\"picker\"\r\n ></mat-datepicker-toggle>\r\n <mat-datepicker #picker [calendarHeaderComponent]=\"datePickerHeader\">\r\n <mat-datepicker-actions>\r\n <button\r\n mat-button\r\n class=\"mat-text-button ieeesa-datepicker__date-picker-button\"\r\n type=\"button\"\r\n matDatepickerCancel\r\n >\r\n {{ buttonActionsInfo?.button?.cancel }}\r\n </button>\r\n <button\r\n mat-button\r\n class=\"mat-text-button ieeesa-datepicker__date-picker-button\"\r\n color=\"primary\"\r\n type=\"button\"\r\n matDatepickerApply\r\n >\r\n {{ buttonActionsInfo?.button?.ok }}\r\n </button>\r\n </mat-datepicker-actions>\r\n </mat-datepicker>\r\n </mat-form-field>\r\n <ieeesa-form-error [formGroup]=\"group\" [config]=\"config\">\r\n </ieeesa-form-error>\r\n </div>\r\n\r\n <div\r\n [formGroup]=\"group\"\r\n *ngIf=\"calendarType === calendarTypes.DATE_RANGE_SELECTION\"\r\n class=\"ieeesa-datepicker--multi-selection\"\r\n [ngClass]=\"\r\n isLabelAlignedLeft\r\n ? 'ieeesa-datepicker__label-left'\r\n : 'ieeesa-datepicker__label-top'\r\n \"\r\n >\r\n <mat-label *ngIf=\"datepickerLabel\">{{ datepickerLabel }} </mat-label>\r\n <mat-form-field>\r\n <mat-date-range-input [rangePicker]=\"rangePicker\" [formGroup]=\"group\">\r\n <input\r\n matStartDate\r\n matInput\r\n [formControlName]=\"config.dateRangeControls?.startDate ?? ''\"\r\n [placeholder]=\"buttonActionsInfo?.datePicker?.dateFormatLabel + ' - '\"\r\n (dateChange)=\"onDateRangeChange()\"\r\n />\r\n <input\r\n matEndDate\r\n matInput\r\n [formControlName]=\"config.dateRangeControls?.endDate ?? ''\"\r\n [placeholder]=\"buttonActionsInfo?.datePicker?.dateFormatLabel\"\r\n (dateChange)=\"onDateRangeChange()\"\r\n />\r\n </mat-date-range-input>\r\n <mat-datepicker-toggle\r\n class=\"mat-datepicker-toggle\"\r\n matIconSuffix\r\n [for]=\"rangePicker\"\r\n ></mat-datepicker-toggle>\r\n <mat-date-range-picker\r\n #rangePicker\r\n [calendarHeaderComponent]=\"datePickerHeader\"\r\n (dateInput)=\"onDateRangeChange()\"\r\n >\r\n <mat-date-range-picker-actions>\r\n <button\r\n mat-button\r\n class=\"mat-text-button ieeesa-datepicker__date-picker-button\"\r\n matDateRangePickerCancel\r\n type=\"button\"\r\n >\r\n {{ buttonActionsInfo?.button?.cancel }}\r\n </button>\r\n <button\r\n mat-button\r\n class=\"mat-text-button ieeesa-datepicker__date-picker-button\"\r\n color=\"primary\"\r\n matDateRangePickerApply\r\n (click)=\"onDateRangeChange()\"\r\n type=\"button\"\r\n >\r\n {{ buttonActionsInfo?.button?.ok }}\r\n </button>\r\n </mat-date-range-picker-actions>\r\n </mat-date-range-picker>\r\n </mat-form-field>\r\n </div>\r\n\r\n <div\r\n *ngIf=\"calendarType === calendarTypes.CALENDAR\"\r\n class=\"ieeesa-datepicker--calendar\"\r\n >\r\n <mat-calendar\r\n [headerComponent]=\"datePickerHeader\"\r\n [(selected)]=\"calendarSelectedDate\"\r\n >\r\n </mat-calendar>\r\n </div>\r\n</div>\r\n", styles: [".ieeesa-subtitle{text-align:left;font-family:Calibri Regular;font-size:1.56em;letter-spacing:0;color:#000;opacity:1}.ieeesa-body{text-align:left;font-family:Calibri Regular;font-size:1.25em;letter-spacing:0;color:#000;opacity:1}.ieeesa-display-lg-57{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:3.5625em;line-height:64px;color:#000;letter-spacing:0}.ieeesa-display-md-47{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.9375em;line-height:52px;color:#000;letter-spacing:0}.ieeesa-display-sm-38{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.375em;line-height:44px;color:#000;letter-spacing:0}.ieeesa-headline-lg-34{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.125em;line-height:40px;color:#000;letter-spacing:0}.ieeesa-headline-md-30{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.875em;line-height:36px;color:#000;letter-spacing:0}.ieeesa-headline-sm-26{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.625em;line-height:32px;color:#000;letter-spacing:0}.ieeesa-title-lg-bold-24{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1.5em;line-height:28px;color:#000;letter-spacing:0}.ieeesa-title-lg-24{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.5em;line-height:28px;color:#000;letter-spacing:0}.ieeesa-title-md-18{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.125em;line-height:24px;color:#000;letter-spacing:.009375em}.ieeesa-title-sm-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-lg-bold-16{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-lg-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-md-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875em;line-height:16px;color:#000;letter-spacing:.03125em}.ieeesa-label-sm-13{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.8125em;line-height:16px;color:#000;letter-spacing:.03125em}.ieeesa-body-lg-bold-18{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1.125em;line-height:24px;color:#000;letter-spacing:.03125em}.ieeesa-body-lg-18{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.125em;line-height:24px;color:#000;letter-spacing:.03125em}.ieeesa-body-md-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1em;line-height:20px;color:#000;letter-spacing:.015625em}.ieeesa-body-sm-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875em;line-height:16px;color:#000;letter-spacing:.025em}.ieeesa-title-inter-lg-bold-24{font-family:Inter Bold;font-style:normal;font-weight:700;font-size:1.5em;line-height:29px;color:#000;letter-spacing:0}.mat-mdc-button.mat-mdc-button-base.mat-primary-button,.mat-mdc-button.mat-mdc-button-base.mat-secondary-button{min-width:103px;width:auto;min-height:40px;height:auto;border-radius:3px;text-align:center;padding:.625em 1.5em;border:none;font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.mat-mdc-button.mat-mdc-button-base>.mat-icon{margin-right:11px}.mat-mdc-button.mat-mdc-button-base.mat-primary-button{background-color:#00629b;color:#fff}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:hover{background-color:#003e65}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:active{background-color:#00629b}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:disabled{background-color:#1c1b1f1f}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button{color:#fff;background:#a7a8aa;box-shadow:0 1px 2px #0000004d,0 2px 6px 2px #00000026}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:hover{background:#a7a8aa}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:active{background:rgba(29,25,43,.12)}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:disabled{background:rgba(28,27,31,.12);color:#1c1b1f;opacity:.38}.ieeesa-text-button{color:#cac4d0;background:none;border:none}.flex-align-center{display:flex;align-items:center;justify-content:center}.mat-button-toggle-checked{background-color:#a7a8aa}.mat-button-toggle-checked .mat-button-toggle-label-content:before{font-family:\"Font Awesome 5 Free\";font-weight:900;content:\"\\f00c\";padding-right:.5625em}.mat-button-toggle-group .mat-button-toggle-label-content{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1em;line-height:20px;color:#1c1b1f;letter-spacing:.00625em}@media (max-width: 768px){.mat-button-toggle-group .mat-button-toggle-label-content{max-width:8ch;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;position:relative}}.cdk-overlay-pane{width:100%;min-width:312px}.ieeesa-datepicker{min-width:360px;width:auto}.ieeesa-datepicker__label-left{display:flex}.ieeesa-datepicker__label-top{display:block}.ieeesa-datepicker__date-picker-button{background:linear-gradient(0deg,rgba(0,98,155,.11),rgba(0,98,155,.11)),#fffbfe}.ieeesa-datepicker--calendar{background:linear-gradient(0deg,rgba(0,98,155,.11),rgba(0,98,155,.11)),#fffbfe;border-radius:16px}.ieeesa-datepicker--calendar .mat-calendar-body-cell-container{margin:0;padding-top:24px 0}.ieeesa-datepicker--calendar .mat-calendar-table-header th,.ieeesa-datepicker--calendar .mat-calendar-body td{height:24px!important;padding-top:24px!important;width:24px!important;padding-bottom:24px!important}.ieeesa-datepicker--calendar .mat-calendar-body-selected{background-color:#00b5e2;color:#fff;border:none;box-shadow:none}.ieeesa-datepicker--calendar .mat-calendar-body-cell:not(.mat-calendar-body-disabled):hover>.mat-calendar-body-cell-content:not(.mat-calendar-body-selected):not(.mat-calendar-body-comparison-identical){background-color:#00b5e2;color:#fff;border:none;box-shadow:none}.ieeesa-datepicker--calendar .mat-calendar-content{padding:0 8px 35px}.ieeesa-datepicker .mat-mdc-form-field{width:-webkit-fill-available}.ieeesa-datepicker .mat-mdc-text-field-wrapper.mdc-text-field.mdc-text-field--outlined.mdc-text-field--no-label,.ieeesa-datepicker .mdc-text-field--filled:not(.mdc-text-field--disabled){border:2px solid #00b5e2;border-radius:4px;height:56px;align-items:center;background-color:#f0f5f9}.ieeesa-datepicker .mdc-text-field--filled:not(.mdc-text-field--disabled) .mdc-line-ripple:before{border:none}.ieeesa-datepicker .mat-mdc-text-field-wrapper.mdc-text-field--outlined .mdc-text-field__input,.ieeesa-datepicker .mdc-text-field--no-label:not(.mdc-text-field--textarea) .mat-mdc-form-field-input-control.mdc-text-field__input{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1em;line-height:24px;color:#1c1b1f;letter-spacing:.03125em}.ieeesa-datepicker .mat-mdc-text-field-wrapper.mdc-text-field--outlined .mdc-text-field__input::placeholder,.ieeesa-datepicker .mdc-text-field--no-label:not(.mdc-text-field--textarea) .mat-mdc-form-field-input-control.mdc-text-field__input::placeholder{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.125em;line-height:24px;color:#49454f;letter-spacing:.03125em}.ieeesa-datepicker .mat-mdc-form-field-hint{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1em;line-height:16px;color:#49454f;letter-spacing:.025em}.ieeesa-datepicker .mat-datepicker-toggle-default-icon{width:18px;height:20px}.mat-datepicker-popup .mat-datepicker-content-container{background:linear-gradient(0deg,rgba(0,98,155,.11),rgba(0,98,155,.11)),#fffbfe;border-radius:28px}.mat-datepicker-popup .mat-datepicker-content-container .mat-calendar-body-cell-content{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.125em;line-height:24px;color:#1c1b1f;letter-spacing:.03125em}.mat-datepicker-popup .mat-datepicker-content-container .mat-calendar-body-selected{background-color:#00b5e2;color:#fff;border:none;box-shadow:none}.mat-datepicker-popup .mat-datepicker-content-container .mat-calendar-body-in-range:before{background-color:#a7a8aa;color:#49454f}.mat-datepicker-popup .mat-datepicker-content{border-radius:28px}.mat-datepicker-popup .mat-calendar-table-header{position:relative;top:25px}.mat-datepicker-popup .mat-calendar-table-header th,.mat-datepicker-popup .mat-calendar-body td{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.125em;line-height:24px;color:#000;letter-spacing:.03125em}.mat-datepicker-popup .mat-calendar-table-header-divider,.mat-datepicker-popup .mat-calendar-body tr:first-child td:only-child{display:none}.mat-datepicker-popup .mat-calendar-body tr:first-child td:first-child:not(:only-child){visibility:hidden}.mat-datepicker-popup .mat-calendar-body{position:relative;top:20px}.mat-datepicker-popup .mat-mdc-menu-panel{min-width:360px;width:auto}.mat-datepicker-popup .mat-calendar-body-today{border-color:#00b5e2;color:#00b5e2}.mat-datepicker-popup .mat-datepicker-actions{padding:15px 10px 10px}.mat-datepicker-popup .mat-datepicker-toggle{color:#49454f}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i3.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: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i3.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i3.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: FormErrorComponent$1, selector: "ieeesa-form-error", inputs: ["formGroup", "config", "submitResponse"] }, { kind: "ngmodule", type: MatExpansionModule }, { kind: "ngmodule", type: MatMenuModule }, { kind: "ngmodule", type: MatIconModule }, { kind: "ngmodule", type: MatInputModule }, { kind: "directive", type: i5.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "component", type: i4.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i4.MatLabel, selector: "mat-label" }, { kind: "directive", type: i4.MatSuffix, selector: "[matSuffix], [matIconSuffix], [matTextSuffix]", inputs: ["matTextSuffix"] }, { kind: "ngmodule", type: MatFormFieldModule }, { kind: "ngmodule", type: MatDatepickerModule }, { kind: "component", type: i7.MatCalendar, selector: "mat-calendar", inputs: ["headerComponent", "startAt", "startView", "selected", "minDate", "maxDate", "dateFilter", "dateClass", "comparisonStart", "comparisonEnd", "startDateAccessibleName", "endDateAccessibleName"], outputs: ["selectedChange", "yearSelected", "monthSelected", "viewChanged", "_userSelection", "_userDragDrop"], exportAs: ["matCalendar"] }, { kind: "component", type: i7.MatDatepicker, selector: "mat-datepicker", exportAs: ["matDatepicker"] }, { kind: "directive", type: i7.MatDatepickerInput, selector: "input[matDatepicker]", inputs: ["matDatepicker", "min", "max", "matDatepickerFilter"], exportAs: ["matDatepickerInput"] }, { kind: "component", type: i7.MatDatepickerToggle, selector: "mat-datepicker-toggle", inputs: ["for", "tabIndex", "aria-label", "disabled", "disableRipple"], exportAs: ["matDatepickerToggle"] }, { kind: "component", type: i7.MatDateRangeInput, selector: "mat-date-range-input", inputs: ["rangePicker", "required", "dateFilter", "min", "max", "disabled", "separator", "comparisonStart", "comparisonEnd"], exportAs: ["matDateRangeInput"] }, { kind: "directive", type: i7.MatStartDate, selector: "input[matStartDate]", inputs: ["errorStateMatcher"], outputs: ["dateChange", "dateInput"] }, { kind: "directive", type: i7.MatEndDate, selector: "input[matEndDate]", inputs: ["errorStateMatcher"], outputs: ["dateChange", "dateInput"] }, { kind: "component", type: i7.MatDateRangePicker, selector: "mat-date-range-picker", exportAs: ["matDateRangePicker"] }, { kind: "component", type: i7.MatDatepickerActions, selector: "mat-datepicker-actions, mat-date-range-picker-actions" }, { kind: "directive", type: i7.MatDatepickerCancel, selector: "[matDatepickerCancel], [matDateRangePickerCancel]" }, { kind: "directive", type: i7.MatDatepickerApply, selector: "[matDatepickerApply], [matDateRangePickerApply]" }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i8.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }], encapsulation: i0.ViewEncapsulation.None }); }
1627
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: DynamicFormFieldDirective, deps: [{ token: i0.ViewContainerRef }], target: i0.ɵɵFactoryTarget.Directive }); }
1628
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.1.3", type: DynamicFormFieldDirective, isStandalone: true, selector: "[ieeesaDynamicFormField]", inputs: { config: "config", group: "group", submitResponse: "submitResponse", searchResponse: "searchResponse" }, outputs: { formSearchApply: "formSearchApply", formDropdownSelected: "formDropdownSelected", formDateSelected: "formDateSelected", formSelectedDateRange: "formSelectedDateRange", formSelectSearch: "formSelectSearch", formAutoCompleteSearch: "formAutoCompleteSearch", autoCompleteOptionSelected: "autoCompleteOptionSelected" }, ngImport: i0 }); }
1327
1629
  }
1328
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: DatePickerComponent, decorators: [{
1329
- type: Component,
1330
- args: [{ selector: 'ieeesa-date-picker', standalone: true, imports: [
1331
- CommonModule,
1332
- ReactiveFormsModule,
1333
- FormErrorComponent$1,
1334
- MatExpansionModule,
1335
- MatMenuModule,
1336
- MatIconModule,
1337
- MatInputModule,
1338
- MatFormFieldModule,
1339
- MatDatepickerModule,
1340
- DatePickerHeaderComponent$1,
1341
- MatButtonModule,
1342
- ], providers: [
1343
- { provide: MAT_MOMENT_DATE_ADAPTER_OPTIONS, useValue: { useUtc: true } },
1344
- {
1345
- provide: DateAdapter,
1346
- useClass: CustomDateAdapter,
1347
- deps: [MAT_DATE_LOCALE, MAT_MOMENT_DATE_ADAPTER_OPTIONS],
1348
- },
1349
- {
1350
- provide: MAT_DATE_FORMATS,
1351
- useValue: DateFormats,
1352
- },
1353
- ], encapsulation: ViewEncapsulation.None, template: "<div class=\"ieeesa-datepicker\">\r\n <div\r\n [formGroup]=\"group\"\r\n *ngIf=\"calendarType === calendarTypes.SINGLE_DATE_SELECTION\"\r\n class=\"ieeesa-datepicker--single-selection\"\r\n [ngClass]=\"!isRequired() ? 'ieeesa-datepicker__valid-date' : ''\"\r\n [ngClass]=\"{\r\n 'ieeesa-datepicker__valid-date': !isRequired(),\r\n 'ieeesa-datepicker__label-left': isLabelAlignedLeft,\r\n 'ieeesa-datepicker__label-top': !isLabelAlignedLeft\r\n }\"\r\n >\r\n <mat-label *ngIf=\"datepickerLabel\">{{ datepickerLabel }} </mat-label>\r\n <mat-form-field>\r\n <input\r\n matInput\r\n (dateInput)=\"onDateChange()\"\r\n (click)=\"picker.open()\"\r\n [matDatepicker]=\"picker\"\r\n [formControlName]=\"config.controlName\"\r\n [placeholder]=\"buttonActionsInfo?.datePicker?.dateFormatLabel\"\r\n #calendar\r\n readonly\r\n />\r\n <mat-datepicker-toggle\r\n class=\"mat-datepicker-toggle\"\r\n matIconSuffix\r\n [for]=\"picker\"\r\n ></mat-datepicker-toggle>\r\n <mat-datepicker #picker [calendarHeaderComponent]=\"datePickerHeader\">\r\n <mat-datepicker-actions>\r\n <button\r\n mat-button\r\n class=\"mat-text-button ieeesa-datepicker__date-picker-button\"\r\n type=\"button\"\r\n matDatepickerCancel\r\n >\r\n {{ buttonActionsInfo?.button?.cancel }}\r\n </button>\r\n <button\r\n mat-button\r\n class=\"mat-text-button ieeesa-datepicker__date-picker-button\"\r\n color=\"primary\"\r\n type=\"button\"\r\n matDatepickerApply\r\n >\r\n {{ buttonActionsInfo?.button?.ok }}\r\n </button>\r\n </mat-datepicker-actions>\r\n </mat-datepicker>\r\n </mat-form-field>\r\n <ieeesa-form-error [formGroup]=\"group\" [config]=\"config\">\r\n </ieeesa-form-error>\r\n </div>\r\n\r\n <div\r\n [formGroup]=\"group\"\r\n *ngIf=\"calendarType === calendarTypes.DATE_RANGE_SELECTION\"\r\n class=\"ieeesa-datepicker--multi-selection\"\r\n [ngClass]=\"\r\n isLabelAlignedLeft\r\n ? 'ieeesa-datepicker__label-left'\r\n : 'ieeesa-datepicker__label-top'\r\n \"\r\n >\r\n <mat-label *ngIf=\"datepickerLabel\">{{ datepickerLabel }} </mat-label>\r\n <mat-form-field>\r\n <mat-date-range-input [rangePicker]=\"rangePicker\" [formGroup]=\"group\">\r\n <input\r\n matStartDate\r\n matInput\r\n [formControlName]=\"config.dateRangeControls?.startDate ?? ''\"\r\n [placeholder]=\"buttonActionsInfo?.datePicker?.dateFormatLabel + ' - '\"\r\n (dateChange)=\"onDateRangeChange()\"\r\n />\r\n <input\r\n matEndDate\r\n matInput\r\n [formControlName]=\"config.dateRangeControls?.endDate ?? ''\"\r\n [placeholder]=\"buttonActionsInfo?.datePicker?.dateFormatLabel\"\r\n (dateChange)=\"onDateRangeChange()\"\r\n />\r\n </mat-date-range-input>\r\n <mat-datepicker-toggle\r\n class=\"mat-datepicker-toggle\"\r\n matIconSuffix\r\n [for]=\"rangePicker\"\r\n ></mat-datepicker-toggle>\r\n <mat-date-range-picker\r\n #rangePicker\r\n [calendarHeaderComponent]=\"datePickerHeader\"\r\n (dateInput)=\"onDateRangeChange()\"\r\n >\r\n <mat-date-range-picker-actions>\r\n <button\r\n mat-button\r\n class=\"mat-text-button ieeesa-datepicker__date-picker-button\"\r\n matDateRangePickerCancel\r\n type=\"button\"\r\n >\r\n {{ buttonActionsInfo?.button?.cancel }}\r\n </button>\r\n <button\r\n mat-button\r\n class=\"mat-text-button ieeesa-datepicker__date-picker-button\"\r\n color=\"primary\"\r\n matDateRangePickerApply\r\n (click)=\"onDateRangeChange()\"\r\n type=\"button\"\r\n >\r\n {{ buttonActionsInfo?.button?.ok }}\r\n </button>\r\n </mat-date-range-picker-actions>\r\n </mat-date-range-picker>\r\n </mat-form-field>\r\n </div>\r\n\r\n <div\r\n *ngIf=\"calendarType === calendarTypes.CALENDAR\"\r\n class=\"ieeesa-datepicker--calendar\"\r\n >\r\n <mat-calendar\r\n [headerComponent]=\"datePickerHeader\"\r\n [(selected)]=\"calendarSelectedDate\"\r\n >\r\n </mat-calendar>\r\n </div>\r\n</div>\r\n", styles: [".ieeesa-subtitle{text-align:left;font-family:Calibri Regular;font-size:1.56em;letter-spacing:0;color:#000;opacity:1}.ieeesa-body{text-align:left;font-family:Calibri Regular;font-size:1.25em;letter-spacing:0;color:#000;opacity:1}.ieeesa-display-lg-57{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:3.5625em;line-height:64px;color:#000;letter-spacing:0}.ieeesa-display-md-47{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.9375em;line-height:52px;color:#000;letter-spacing:0}.ieeesa-display-sm-38{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.375em;line-height:44px;color:#000;letter-spacing:0}.ieeesa-headline-lg-34{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.125em;line-height:40px;color:#000;letter-spacing:0}.ieeesa-headline-md-30{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.875em;line-height:36px;color:#000;letter-spacing:0}.ieeesa-headline-sm-26{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.625em;line-height:32px;color:#000;letter-spacing:0}.ieeesa-title-lg-bold-24{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1.5em;line-height:28px;color:#000;letter-spacing:0}.ieeesa-title-lg-24{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.5em;line-height:28px;color:#000;letter-spacing:0}.ieeesa-title-md-18{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.125em;line-height:24px;color:#000;letter-spacing:.009375em}.ieeesa-title-sm-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-lg-bold-16{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-lg-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-md-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875em;line-height:16px;color:#000;letter-spacing:.03125em}.ieeesa-label-sm-13{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.8125em;line-height:16px;color:#000;letter-spacing:.03125em}.ieeesa-body-lg-bold-18{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1.125em;line-height:24px;color:#000;letter-spacing:.03125em}.ieeesa-body-lg-18{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.125em;line-height:24px;color:#000;letter-spacing:.03125em}.ieeesa-body-md-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1em;line-height:20px;color:#000;letter-spacing:.015625em}.ieeesa-body-sm-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875em;line-height:16px;color:#000;letter-spacing:.025em}.ieeesa-title-inter-lg-bold-24{font-family:Inter Bold;font-style:normal;font-weight:700;font-size:1.5em;line-height:29px;color:#000;letter-spacing:0}.mat-mdc-button.mat-mdc-button-base.mat-primary-button,.mat-mdc-button.mat-mdc-button-base.mat-secondary-button{min-width:103px;width:auto;min-height:40px;height:auto;border-radius:3px;text-align:center;padding:.625em 1.5em;border:none;font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.mat-mdc-button.mat-mdc-button-base>.mat-icon{margin-right:11px}.mat-mdc-button.mat-mdc-button-base.mat-primary-button{background-color:#00629b;color:#fff}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:hover{background-color:#003e65}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:active{background-color:#00629b}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:disabled{background-color:#1c1b1f1f}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button{color:#fff;background:#a7a8aa;box-shadow:0 1px 2px #0000004d,0 2px 6px 2px #00000026}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:hover{background:#a7a8aa}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:active{background:rgba(29,25,43,.12)}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:disabled{background:rgba(28,27,31,.12);color:#1c1b1f;opacity:.38}.ieeesa-text-button{color:#cac4d0;background:none;border:none}.flex-align-center{display:flex;align-items:center;justify-content:center}.mat-button-toggle-checked{background-color:#a7a8aa}.mat-button-toggle-checked .mat-button-toggle-label-content:before{font-family:\"Font Awesome 5 Free\";font-weight:900;content:\"\\f00c\";padding-right:.5625em}.mat-button-toggle-group .mat-button-toggle-label-content{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1em;line-height:20px;color:#1c1b1f;letter-spacing:.00625em}@media (max-width: 768px){.mat-button-toggle-group .mat-button-toggle-label-content{max-width:8ch;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;position:relative}}.cdk-overlay-pane{width:100%;min-width:312px}.ieeesa-datepicker{min-width:360px;width:auto}.ieeesa-datepicker__label-left{display:flex}.ieeesa-datepicker__label-top{display:block}.ieeesa-datepicker__date-picker-button{background:linear-gradient(0deg,rgba(0,98,155,.11),rgba(0,98,155,.11)),#fffbfe}.ieeesa-datepicker--calendar{background:linear-gradient(0deg,rgba(0,98,155,.11),rgba(0,98,155,.11)),#fffbfe;border-radius:16px}.ieeesa-datepicker--calendar .mat-calendar-body-cell-container{margin:0;padding-top:24px 0}.ieeesa-datepicker--calendar .mat-calendar-table-header th,.ieeesa-datepicker--calendar .mat-calendar-body td{height:24px!important;padding-top:24px!important;width:24px!important;padding-bottom:24px!important}.ieeesa-datepicker--calendar .mat-calendar-body-selected{background-color:#00b5e2;color:#fff;border:none;box-shadow:none}.ieeesa-datepicker--calendar .mat-calendar-body-cell:not(.mat-calendar-body-disabled):hover>.mat-calendar-body-cell-content:not(.mat-calendar-body-selected):not(.mat-calendar-body-comparison-identical){background-color:#00b5e2;color:#fff;border:none;box-shadow:none}.ieeesa-datepicker--calendar .mat-calendar-content{padding:0 8px 35px}.ieeesa-datepicker .mat-mdc-form-field{width:-webkit-fill-available}.ieeesa-datepicker .mat-mdc-text-field-wrapper.mdc-text-field.mdc-text-field--outlined.mdc-text-field--no-label,.ieeesa-datepicker .mdc-text-field--filled:not(.mdc-text-field--disabled){border:2px solid #00b5e2;border-radius:4px;height:56px;align-items:center;background-color:#f0f5f9}.ieeesa-datepicker .mdc-text-field--filled:not(.mdc-text-field--disabled) .mdc-line-ripple:before{border:none}.ieeesa-datepicker .mat-mdc-text-field-wrapper.mdc-text-field--outlined .mdc-text-field__input,.ieeesa-datepicker .mdc-text-field--no-label:not(.mdc-text-field--textarea) .mat-mdc-form-field-input-control.mdc-text-field__input{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1em;line-height:24px;color:#1c1b1f;letter-spacing:.03125em}.ieeesa-datepicker .mat-mdc-text-field-wrapper.mdc-text-field--outlined .mdc-text-field__input::placeholder,.ieeesa-datepicker .mdc-text-field--no-label:not(.mdc-text-field--textarea) .mat-mdc-form-field-input-control.mdc-text-field__input::placeholder{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.125em;line-height:24px;color:#49454f;letter-spacing:.03125em}.ieeesa-datepicker .mat-mdc-form-field-hint{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1em;line-height:16px;color:#49454f;letter-spacing:.025em}.ieeesa-datepicker .mat-datepicker-toggle-default-icon{width:18px;height:20px}.mat-datepicker-popup .mat-datepicker-content-container{background:linear-gradient(0deg,rgba(0,98,155,.11),rgba(0,98,155,.11)),#fffbfe;border-radius:28px}.mat-datepicker-popup .mat-datepicker-content-container .mat-calendar-body-cell-content{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.125em;line-height:24px;color:#1c1b1f;letter-spacing:.03125em}.mat-datepicker-popup .mat-datepicker-content-container .mat-calendar-body-selected{background-color:#00b5e2;color:#fff;border:none;box-shadow:none}.mat-datepicker-popup .mat-datepicker-content-container .mat-calendar-body-in-range:before{background-color:#a7a8aa;color:#49454f}.mat-datepicker-popup .mat-datepicker-content{border-radius:28px}.mat-datepicker-popup .mat-calendar-table-header{position:relative;top:25px}.mat-datepicker-popup .mat-calendar-table-header th,.mat-datepicker-popup .mat-calendar-body td{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.125em;line-height:24px;color:#000;letter-spacing:.03125em}.mat-datepicker-popup .mat-calendar-table-header-divider,.mat-datepicker-popup .mat-calendar-body tr:first-child td:only-child{display:none}.mat-datepicker-popup .mat-calendar-body tr:first-child td:first-child:not(:only-child){visibility:hidden}.mat-datepicker-popup .mat-calendar-body{position:relative;top:20px}.mat-datepicker-popup .mat-mdc-menu-panel{min-width:360px;width:auto}.mat-datepicker-popup .mat-calendar-body-today{border-color:#00b5e2;color:#00b5e2}.mat-datepicker-popup .mat-datepicker-actions{padding:15px 10px 10px}.mat-datepicker-popup .mat-datepicker-toggle{color:#49454f}\n"] }]
1354
- }], ctorParameters: function () { return [{ type: i3.FormBuilder }, { type: i0.ChangeDetectorRef }, { type: i2$2.DatepickerService }, { type: i1.FormUtilityService }]; }, propDecorators: { selectedDates: [{
1355
- type: Input
1356
- }], selectedRange: [{
1357
- type: Input
1358
- }], calendarType: [{
1359
- type: Input
1360
- }], formControlName: [{
1361
- type: Input
1362
- }], placeholderLabel: [{
1363
- type: Input
1364
- }], isDisabled: [{
1630
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: DynamicFormFieldDirective, decorators: [{
1631
+ type: Directive,
1632
+ args: [{
1633
+ selector: '[ieeesaDynamicFormField]',
1634
+ standalone: true,
1635
+ }]
1636
+ }], ctorParameters: function () { return [{ type: i0.ViewContainerRef }]; }, propDecorators: { config: [{
1365
1637
  type: Input
1366
- }], isLabelAlignedLeft: [{
1638
+ }], group: [{
1367
1639
  type: Input
1368
- }], datepickerLabel: [{
1640
+ }], submitResponse: [{
1369
1641
  type: Input
1370
- }], dateRange: [{
1642
+ }], searchResponse: [{
1371
1643
  type: Input
1372
- }], selectedDate: [{
1644
+ }], formSearchApply: [{
1373
1645
  type: Output
1374
- }], selectedDateRange: [{
1646
+ }], formDropdownSelected: [{
1647
+ type: Output
1648
+ }], formDateSelected: [{
1649
+ type: Output
1650
+ }], formSelectedDateRange: [{
1651
+ type: Output
1652
+ }], formSelectSearch: [{
1653
+ type: Output
1654
+ }], formAutoCompleteSearch: [{
1655
+ type: Output
1656
+ }], autoCompleteOptionSelected: [{
1375
1657
  type: Output
1376
1658
  }] } });
1377
1659
 
1378
- const moment = moment_;
1379
1660
  /**
1380
- * Provides implementation of date picker custom header and being used in date-picker component.
1661
+ * Creates a reactive form dynamically based on the passed form field configuration and handles the form events.
1381
1662
  * @export
1382
- * @class DatePickerHeaderComponent
1663
+ * @class DynamicFormComponent
1383
1664
  * @implements {OnInit}
1384
- * @implements {OnDestroy}
1665
+ * @implements {AfterContentInit}
1385
1666
  */
1386
- class DatePickerHeaderComponent {
1387
- constructor(
1388
- // eslint-disable-next-line no-unused-vars
1389
- calendar,
1390
- // eslint-disable-next-line no-unused-vars
1391
- dateAdapter,
1392
- // eslint-disable-next-line no-unused-vars
1393
- dateFormats,
1394
- // eslint-disable-next-line no-unused-vars
1395
- datepickerService // eslint-disable-next-line no-empty-function
1396
- ) {
1397
- this.calendar = calendar;
1398
- this.dateAdapter = dateAdapter;
1399
- this.dateFormats = dateFormats;
1400
- this.datepickerService = datepickerService;
1401
- this.destroy$ = new Subject();
1402
- this.arrowDirection = false;
1403
- this.isRangeSelection = false;
1404
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
1405
- this.datePickerInfo = buttonActionsInfo;
1406
- }
1667
+ class DynamicFormComponent {
1407
1668
  /**
1408
- * Implementation of ngOnInit lifecycle hook method to initialize components instance properties.
1409
- * @memberof DatePickerHeaderComponent
1669
+ * FormGroups passed an an input and which contains configuration information of every form fields.
1670
+ * @memberof DynamicFormComponent
1410
1671
  */
1411
- ngOnInit() {
1412
- this.isRangeSelection = this.datepickerService.getCalendarType();
1413
- const selectedRange = this.datepickerService.getSelectedRange();
1414
- if (selectedRange) {
1415
- this.setRange(selectedRange);
1416
- }
1417
- this.datepickerService.range$
1418
- ?.pipe(takeUntil(this.destroy$))
1419
- .subscribe((range) => {
1420
- this.setRange(range);
1421
- });
1422
- this.selectedDate = this.datepickerService.selectedDate
1423
- ? moment(this.datepickerService.selectedDate).format(DateFormats.display.daysFormat) +
1424
- ', ' +
1425
- moment(this.datepickerService.selectedDate).date() +
1426
- ' ' +
1427
- moment(this.datepickerService.selectedDate).format(DateFormats.display.fullMonthLabel)
1428
- : '';
1672
+ set formGroups(value) {
1673
+ this._formGroups = value;
1674
+ this.createFormGroupArray();
1429
1675
  }
1430
- /**
1431
- * Sets the min and max date range.
1432
- * @param {({ start: Date | string; end: Date | string })} range
1433
- * @memberof DatePickerHeaderComponent
1434
- */
1435
- setRange(range) {
1436
- this.range = {
1437
- start: moment(range.start).date() +
1438
- ' ' +
1439
- moment(range.start).format(DateFormats.display.fullMonthLabel),
1440
- end: moment(range.end).date() +
1441
- ' ' +
1442
- moment(range.end).format(DateFormats.display.fullMonthLabel),
1443
- };
1676
+ get formGroups() {
1677
+ return this._formGroups;
1444
1678
  }
1445
1679
  /**
1446
- * Implementation of getMonthLabel method to get the month label.
1447
- * @readonly
1448
- * @return {string}
1449
- * @memberof DatePickerHeaderComponent
1680
+ * Sets submit response on form submit
1681
+ * @memberof DynamicFormComponent
1450
1682
  */
1451
- get getMonthLabel() {
1452
- if (this.dateAdapter?.format) {
1453
- return this.dateAdapter.format(this.calendar.activeDate, this.dateFormats.display.monthYearA11yLabel);
1454
- }
1455
- return '';
1683
+ set submitResponse(value) {
1684
+ this._submitResponse = value;
1456
1685
  }
1457
- /**
1458
- * Sets previous month in a calendar on click of previous month arrow in date picker.
1459
- * @param {('month' | 'year')} mode
1460
- * @memberof DatePickerHeaderComponent
1461
- */
1462
- setPreviousMonth(mode) {
1463
- this.calendar.activeDate =
1464
- mode === 'month'
1465
- ? this.dateAdapter.addCalendarMonths(this.calendar.activeDate, -1)
1466
- : this.dateAdapter.addCalendarYears(this.calendar.activeDate, -1);
1686
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
1687
+ get submitResponse() {
1688
+ return this._submitResponse;
1467
1689
  }
1468
1690
  /**
1469
- * Sets next month in a calendar on click of previous month arrow in date picker.
1470
- * @param {('month' | 'year')} mode
1471
- * @memberof DatePickerHeaderComponent
1691
+ * Sets search response on form search event
1692
+ * @memberof DynamicFormComponent
1472
1693
  */
1473
- setNextMonth(mode) {
1474
- this.calendar.activeDate =
1475
- mode === 'month'
1476
- ? this.dateAdapter.addCalendarMonths(this.calendar.activeDate, 1)
1477
- : this.dateAdapter.addCalendarYears(this.calendar.activeDate, 1);
1694
+ set searchResponse(value) {
1695
+ this._searchResponse = value;
1696
+ }
1697
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
1698
+ get searchResponse() {
1699
+ return this._searchResponse;
1700
+ }
1701
+ // eslint-disable-next-line no-unused-vars, no-empty-function
1702
+ constructor(fb) {
1703
+ this.fb = fb;
1704
+ this.isSubmitButtonDisabled = false;
1705
+ this.isLeftButtonDisabled = false;
1706
+ this.isLeftButtonNeeded = false;
1707
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
1708
+ this.formSubmit = new EventEmitter();
1709
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
1710
+ this.formChange = new EventEmitter();
1711
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
1712
+ this.formInput = new EventEmitter();
1713
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
1714
+ this.formLeftButtonClicked = new EventEmitter();
1715
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
1716
+ this.formSearchApply = new EventEmitter();
1717
+ this.formGroupsReference = new EventEmitter();
1718
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
1719
+ this.dropdownChange = new EventEmitter();
1720
+ this.formDateSelected = new EventEmitter();
1721
+ this.formSelectSearch = new EventEmitter();
1722
+ this.formControlChange = new EventEmitter();
1723
+ this.formAutoCompleteSearch = new EventEmitter();
1724
+ this.autoCompleteOptionSelected = new EventEmitter();
1725
+ this.formAfterContentInit = new EventEmitter();
1726
+ this.formSelectedDateRange = new EventEmitter();
1727
+ this.formGroupArray = [];
1728
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
1729
+ this.formControlArray = [];
1730
+ this.legendsArray = [];
1478
1731
  }
1479
1732
  /**
1480
- * Sets the calendar current view on the open of year drop down in date picker.
1481
- * @memberof DatePickerHeaderComponent
1733
+ * Implementation of ngOnInit lifecycle hook method to create form group
1734
+ * @memberof DynamicFormComponent
1482
1735
  */
1483
- setCalendarView() {
1484
- this.calendar.currentView =
1485
- this.calendar.currentView === 'month' ? 'multi-year' : 'month';
1486
- this.arrowDirection = !this.arrowDirection;
1736
+ ngOnInit() {
1737
+ this.createFormGroupArray();
1487
1738
  }
1488
1739
  /**
1489
- * Implementation of ngOnDestroy lifecycle hook method to unsubscribe the open observable subscriptions.
1490
- * @memberof DatePickerHeaderComponent
1740
+ * Emit generated form reference on ngAfterContentInit lifecycle hook.
1741
+ * @memberof DynamicFormComponent
1491
1742
  */
1492
- ngOnDestroy() {
1493
- this.destroy$.next(true);
1494
- this.destroy$.unsubscribe();
1743
+ ngAfterContentInit() {
1744
+ this.formAfterContentInit.emit(this.formGroupArray);
1495
1745
  }
1496
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: DatePickerHeaderComponent, deps: [{ token: i7.MatCalendar }, { token: i2$1.DateAdapter }, { token: MAT_DATE_FORMATS }, { token: i2$2.DatepickerService }], target: i0.ɵɵFactoryTarget.Component }); }
1497
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.3", type: DatePickerHeaderComponent, isStandalone: true, selector: "ieeesa-date-picker-header", inputs: { group: "group" }, ngImport: i0, template: "<div class=\"ieeesa-datepicker-header--selected-date-container\">\r\n <p class=\"ieeesa-label-lg-bold-16 ieeesa-datepicker-header__select-date-label\">\r\n {{ datePickerInfo.datePicker.selectDateLabel }}\r\n </p>\r\n <p\r\n class=\"headline-lg-34 ieeesa-datepicker-header__selected-date\"\r\n *ngIf=\"range || isRangeSelection\"\r\n >\r\n {{ range.start }} - {{ range.end }}\r\n </p>\r\n <p\r\n class=\"headline-lg-34 ieeesa-datepicker-header__selected-date\"\r\n *ngIf=\"!isRangeSelection\"\r\n >\r\n {{ selectedDate }}\r\n </p>\r\n</div>\r\n<div class=\"ieeesa-datepicker-header--content\">\r\n <button\r\n mat-button\r\n type=\"button\"\r\n class=\"ieeesa-datepicker-header--content--period-button ieeesa-label-lg-16\"\r\n (click)=\"setCalendarView()\"\r\n [attr.aria-label]=\"getMonthLabel\"\r\n cdkAriaLive=\"polite\"\r\n >\r\n {{ getMonthLabel }}\r\n <mat-icon\r\n class=\"ieeesa-datepicker-header--content--period-button--arrow-icon\"\r\n *ngIf=\"!arrowDirection\"\r\n >arrow_drop_down</mat-icon\r\n >\r\n <mat-icon\r\n class=\"ieeesa-datepicker-header--content--period-button--arrow-icon\"\r\n *ngIf=\"arrowDirection\"\r\n >arrow_drop_up</mat-icon\r\n >\r\n </button>\r\n <button\r\n mat-button\r\n type=\"button\"\r\n class=\"ieeesa-label-lg-16 ieeesa-datepicker-header--content--arrow-left-btn\"\r\n [attr.aria-label]=\"datePickerInfo.ariaLabel.previousMonth\"\r\n cdkAriaLive=\"polite\"\r\n >\r\n <mat-icon\r\n (click)=\"setPreviousMonth('month')\"\r\n class=\"ieeesa-datepicker-header__arrow-left\"\r\n >keyboard_arrow_left</mat-icon\r\n >\r\n </button>\r\n <button\r\n mat-button\r\n type=\"button\"\r\n class=\"ieeesa-label-lg-16 ieeesa-datepicker-header--content--arrow-right-btn\"\r\n [attr.aria-label]=\"datePickerInfo.ariaLabel.nextMonth\"\r\n cdkAriaLive=\"polite\"\r\n >\r\n <mat-icon (click)=\"setNextMonth('month')\"> keyboard_arrow_right</mat-icon>\r\n </button>\r\n</div>\r\n", styles: [".ieeesa-subtitle{text-align:left;font-family:Calibri Regular;font-size:1.56em;letter-spacing:0;color:#000;opacity:1}.ieeesa-body{text-align:left;font-family:Calibri Regular;font-size:1.25em;letter-spacing:0;color:#000;opacity:1}.ieeesa-display-lg-57{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:3.5625em;line-height:64px;color:#000;letter-spacing:0}.ieeesa-display-md-47{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.9375em;line-height:52px;color:#000;letter-spacing:0}.ieeesa-display-sm-38{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.375em;line-height:44px;color:#000;letter-spacing:0}.ieeesa-headline-lg-34{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.125em;line-height:40px;color:#000;letter-spacing:0}.ieeesa-headline-md-30{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.875em;line-height:36px;color:#000;letter-spacing:0}.ieeesa-headline-sm-26{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.625em;line-height:32px;color:#000;letter-spacing:0}.ieeesa-title-lg-bold-24{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1.5em;line-height:28px;color:#000;letter-spacing:0}.ieeesa-title-lg-24{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.5em;line-height:28px;color:#000;letter-spacing:0}.ieeesa-title-md-18{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.125em;line-height:24px;color:#000;letter-spacing:.009375em}.ieeesa-title-sm-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-lg-bold-16{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-lg-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-md-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875em;line-height:16px;color:#000;letter-spacing:.03125em}.ieeesa-label-sm-13{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.8125em;line-height:16px;color:#000;letter-spacing:.03125em}.ieeesa-body-lg-bold-18{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1.125em;line-height:24px;color:#000;letter-spacing:.03125em}.ieeesa-body-lg-18{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.125em;line-height:24px;color:#000;letter-spacing:.03125em}.ieeesa-body-md-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1em;line-height:20px;color:#000;letter-spacing:.015625em}.ieeesa-body-sm-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875em;line-height:16px;color:#000;letter-spacing:.025em}.ieeesa-title-inter-lg-bold-24{font-family:Inter Bold;font-style:normal;font-weight:700;font-size:1.5em;line-height:29px;color:#000;letter-spacing:0}.mat-mdc-button.mat-mdc-button-base.mat-primary-button,.mat-mdc-button.mat-mdc-button-base.mat-secondary-button{min-width:103px;width:auto;min-height:40px;height:auto;border-radius:3px;text-align:center;padding:.625em 1.5em;border:none;font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.mat-mdc-button.mat-mdc-button-base>.mat-icon{margin-right:11px}.mat-mdc-button.mat-mdc-button-base.mat-primary-button{background-color:#00629b;color:#fff}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:hover{background-color:#003e65}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:active{background-color:#00629b}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:disabled{background-color:#1c1b1f1f}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button{color:#fff;background:#a7a8aa;box-shadow:0 1px 2px #0000004d,0 2px 6px 2px #00000026}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:hover{background:#a7a8aa}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:active{background:rgba(29,25,43,.12)}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:disabled{background:rgba(28,27,31,.12);color:#1c1b1f;opacity:.38}.ieeesa-text-button{color:#cac4d0;background:none;border:none}.flex-align-center{display:flex;align-items:center;justify-content:center}.mat-button-toggle-checked{background-color:#a7a8aa}.mat-button-toggle-checked .mat-button-toggle-label-content:before{font-family:\"Font Awesome 5 Free\";font-weight:900;content:\"\\f00c\";padding-right:.5625em}.mat-button-toggle-group .mat-button-toggle-label-content{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1em;line-height:20px;color:#1c1b1f;letter-spacing:.00625em}@media (max-width: 768px){.mat-button-toggle-group .mat-button-toggle-label-content{max-width:8ch;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;position:relative}}.cdk-overlay-pane{width:100%;min-width:312px}.ieeesa-datepicker-header--selected-date-container{padding:16px 27px 12px 24px;border-bottom:1px solid #cac4d0}.ieeesa-datepicker-header__selected-date{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.125em;line-height:40px;color:#1c1b1f;letter-spacing:0}.ieeesa-datepicker-header--content{display:flex;flex-direction:row;justify-content:space-between;align-items:center;width:100%;min-height:35px;border-top-right-radius:5px;border-top-left-radius:5px;padding:0 20px}.ieeesa-datepicker-header--content--period-button,.ieeesa-datepicker-header--content--arrow-left-btn,.ieeesa-datepicker-header--content--arrow-right-btn{margin:0;padding:0;border:unset;color:#49454f;background:linear-gradient(0deg,rgba(0,98,155,.11),rgba(0,98,155,.11)),#fffbfe}.ieeesa-datepicker-header--content--period-button--arrow-icon,.ieeesa-datepicker-header--content--arrow-left-btn--arrow-icon,.ieeesa-datepicker-header--content--arrow-right-btn--arrow-icon{position:relative;top:7px;color:#49454f}.ieeesa-datepicker-header__arrow-left{border:unset;color:#49454f;background:linear-gradient(0deg,rgba(0,98,155,.11),rgba(0,98,155,.11)),#fffbfe}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: MatDatepickerModule }, { kind: "ngmodule", type: MatFormFieldModule }, { kind: "ngmodule", type: MatNativeDateModule }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i5$2.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }] }); }
1498
- }
1499
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: DatePickerHeaderComponent, decorators: [{
1500
- type: Component,
1501
- args: [{ selector: 'ieeesa-date-picker-header', standalone: true, imports: [
1502
- CommonModule,
1503
- MatDatepickerModule,
1504
- MatFormFieldModule,
1505
- MatNativeDateModule,
1506
- MatIconModule,
1507
- ], template: "<div class=\"ieeesa-datepicker-header--selected-date-container\">\r\n <p class=\"ieeesa-label-lg-bold-16 ieeesa-datepicker-header__select-date-label\">\r\n {{ datePickerInfo.datePicker.selectDateLabel }}\r\n </p>\r\n <p\r\n class=\"headline-lg-34 ieeesa-datepicker-header__selected-date\"\r\n *ngIf=\"range || isRangeSelection\"\r\n >\r\n {{ range.start }} - {{ range.end }}\r\n </p>\r\n <p\r\n class=\"headline-lg-34 ieeesa-datepicker-header__selected-date\"\r\n *ngIf=\"!isRangeSelection\"\r\n >\r\n {{ selectedDate }}\r\n </p>\r\n</div>\r\n<div class=\"ieeesa-datepicker-header--content\">\r\n <button\r\n mat-button\r\n type=\"button\"\r\n class=\"ieeesa-datepicker-header--content--period-button ieeesa-label-lg-16\"\r\n (click)=\"setCalendarView()\"\r\n [attr.aria-label]=\"getMonthLabel\"\r\n cdkAriaLive=\"polite\"\r\n >\r\n {{ getMonthLabel }}\r\n <mat-icon\r\n class=\"ieeesa-datepicker-header--content--period-button--arrow-icon\"\r\n *ngIf=\"!arrowDirection\"\r\n >arrow_drop_down</mat-icon\r\n >\r\n <mat-icon\r\n class=\"ieeesa-datepicker-header--content--period-button--arrow-icon\"\r\n *ngIf=\"arrowDirection\"\r\n >arrow_drop_up</mat-icon\r\n >\r\n </button>\r\n <button\r\n mat-button\r\n type=\"button\"\r\n class=\"ieeesa-label-lg-16 ieeesa-datepicker-header--content--arrow-left-btn\"\r\n [attr.aria-label]=\"datePickerInfo.ariaLabel.previousMonth\"\r\n cdkAriaLive=\"polite\"\r\n >\r\n <mat-icon\r\n (click)=\"setPreviousMonth('month')\"\r\n class=\"ieeesa-datepicker-header__arrow-left\"\r\n >keyboard_arrow_left</mat-icon\r\n >\r\n </button>\r\n <button\r\n mat-button\r\n type=\"button\"\r\n class=\"ieeesa-label-lg-16 ieeesa-datepicker-header--content--arrow-right-btn\"\r\n [attr.aria-label]=\"datePickerInfo.ariaLabel.nextMonth\"\r\n cdkAriaLive=\"polite\"\r\n >\r\n <mat-icon (click)=\"setNextMonth('month')\"> keyboard_arrow_right</mat-icon>\r\n </button>\r\n</div>\r\n", styles: [".ieeesa-subtitle{text-align:left;font-family:Calibri Regular;font-size:1.56em;letter-spacing:0;color:#000;opacity:1}.ieeesa-body{text-align:left;font-family:Calibri Regular;font-size:1.25em;letter-spacing:0;color:#000;opacity:1}.ieeesa-display-lg-57{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:3.5625em;line-height:64px;color:#000;letter-spacing:0}.ieeesa-display-md-47{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.9375em;line-height:52px;color:#000;letter-spacing:0}.ieeesa-display-sm-38{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.375em;line-height:44px;color:#000;letter-spacing:0}.ieeesa-headline-lg-34{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.125em;line-height:40px;color:#000;letter-spacing:0}.ieeesa-headline-md-30{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.875em;line-height:36px;color:#000;letter-spacing:0}.ieeesa-headline-sm-26{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.625em;line-height:32px;color:#000;letter-spacing:0}.ieeesa-title-lg-bold-24{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1.5em;line-height:28px;color:#000;letter-spacing:0}.ieeesa-title-lg-24{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.5em;line-height:28px;color:#000;letter-spacing:0}.ieeesa-title-md-18{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.125em;line-height:24px;color:#000;letter-spacing:.009375em}.ieeesa-title-sm-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-lg-bold-16{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-lg-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-md-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875em;line-height:16px;color:#000;letter-spacing:.03125em}.ieeesa-label-sm-13{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.8125em;line-height:16px;color:#000;letter-spacing:.03125em}.ieeesa-body-lg-bold-18{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1.125em;line-height:24px;color:#000;letter-spacing:.03125em}.ieeesa-body-lg-18{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.125em;line-height:24px;color:#000;letter-spacing:.03125em}.ieeesa-body-md-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1em;line-height:20px;color:#000;letter-spacing:.015625em}.ieeesa-body-sm-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875em;line-height:16px;color:#000;letter-spacing:.025em}.ieeesa-title-inter-lg-bold-24{font-family:Inter Bold;font-style:normal;font-weight:700;font-size:1.5em;line-height:29px;color:#000;letter-spacing:0}.mat-mdc-button.mat-mdc-button-base.mat-primary-button,.mat-mdc-button.mat-mdc-button-base.mat-secondary-button{min-width:103px;width:auto;min-height:40px;height:auto;border-radius:3px;text-align:center;padding:.625em 1.5em;border:none;font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.mat-mdc-button.mat-mdc-button-base>.mat-icon{margin-right:11px}.mat-mdc-button.mat-mdc-button-base.mat-primary-button{background-color:#00629b;color:#fff}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:hover{background-color:#003e65}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:active{background-color:#00629b}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:disabled{background-color:#1c1b1f1f}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button{color:#fff;background:#a7a8aa;box-shadow:0 1px 2px #0000004d,0 2px 6px 2px #00000026}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:hover{background:#a7a8aa}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:active{background:rgba(29,25,43,.12)}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:disabled{background:rgba(28,27,31,.12);color:#1c1b1f;opacity:.38}.ieeesa-text-button{color:#cac4d0;background:none;border:none}.flex-align-center{display:flex;align-items:center;justify-content:center}.mat-button-toggle-checked{background-color:#a7a8aa}.mat-button-toggle-checked .mat-button-toggle-label-content:before{font-family:\"Font Awesome 5 Free\";font-weight:900;content:\"\\f00c\";padding-right:.5625em}.mat-button-toggle-group .mat-button-toggle-label-content{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1em;line-height:20px;color:#1c1b1f;letter-spacing:.00625em}@media (max-width: 768px){.mat-button-toggle-group .mat-button-toggle-label-content{max-width:8ch;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;position:relative}}.cdk-overlay-pane{width:100%;min-width:312px}.ieeesa-datepicker-header--selected-date-container{padding:16px 27px 12px 24px;border-bottom:1px solid #cac4d0}.ieeesa-datepicker-header__selected-date{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.125em;line-height:40px;color:#1c1b1f;letter-spacing:0}.ieeesa-datepicker-header--content{display:flex;flex-direction:row;justify-content:space-between;align-items:center;width:100%;min-height:35px;border-top-right-radius:5px;border-top-left-radius:5px;padding:0 20px}.ieeesa-datepicker-header--content--period-button,.ieeesa-datepicker-header--content--arrow-left-btn,.ieeesa-datepicker-header--content--arrow-right-btn{margin:0;padding:0;border:unset;color:#49454f;background:linear-gradient(0deg,rgba(0,98,155,.11),rgba(0,98,155,.11)),#fffbfe}.ieeesa-datepicker-header--content--period-button--arrow-icon,.ieeesa-datepicker-header--content--arrow-left-btn--arrow-icon,.ieeesa-datepicker-header--content--arrow-right-btn--arrow-icon{position:relative;top:7px;color:#49454f}.ieeesa-datepicker-header__arrow-left{border:unset;color:#49454f;background:linear-gradient(0deg,rgba(0,98,155,.11),rgba(0,98,155,.11)),#fffbfe}\n"] }]
1508
- }], ctorParameters: function () { return [{ type: i7.MatCalendar }, { type: i2$1.DateAdapter }, { type: undefined, decorators: [{
1509
- type: Inject,
1510
- args: [MAT_DATE_FORMATS]
1511
- }] }, { type: i2$2.DatepickerService }]; }, propDecorators: { group: [{
1512
- type: Input
1513
- }] } });
1514
-
1515
- /**
1516
- * Component implementation supports select type of form filed and select type is configurable to support single selection or multi-selection with multilevel or single level.
1517
- * @export
1518
- * @class SelectComponent
1519
- * @implements {OnInit}
1520
- * @implements {AfterViewInit}
1521
- * @implements {OnDestroy}
1522
- */
1523
- class SelectComponent {
1524
1746
  /**
1525
- * Takes isSortNeeded as input to check if the passed options are sorted or not.
1526
- * @memberof SelectComponent
1747
+ * Creates form group on the basis of formGroups configuration input
1748
+ * @return {void}
1749
+ * @memberof DynamicFormComponent
1527
1750
  */
1528
- set isSortNeeded(value) {
1529
- this._isSortNeeded = value;
1530
- }
1531
- get isSortNeeded() {
1532
- return this._isSortNeeded;
1751
+ createFormGroupArray() {
1752
+ this.formGroupArray = [];
1753
+ this.formControlArray = [];
1754
+ this.legendsArray = [];
1755
+ if (!this.formGroups) {
1756
+ return;
1757
+ }
1758
+ this.formGroups?.formGroup?.forEach((element) => {
1759
+ const controls = element.controls.filter((control) => control.type !== 'button');
1760
+ this.formGroupArray.push(this.createGroup(controls));
1761
+ this.formControlArray.push(controls);
1762
+ this.legendsArray.push(element.legend);
1763
+ });
1764
+ this.form = this.fb.group({
1765
+ children: this.formGroupArray,
1766
+ });
1767
+ this.formGroupsReference.emit(this.formGroupArray);
1533
1768
  }
1534
1769
  /**
1535
- * Sets the dropdown options for selection.
1536
- * @memberof SelectComponent
1770
+ * Creates form group using form builder
1771
+ * @param {any[]} controls
1772
+ * @return {FormGroup}
1773
+ * @memberof DynamicFormComponent
1537
1774
  */
1538
- set dropdownOptions(value) {
1539
- this._dropdownOptions = value;
1775
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
1776
+ createGroup(controls) {
1777
+ const group = this.fb.group({});
1778
+ controls.forEach((control) => group.addControl(control.controlName, this.createControl(control)));
1779
+ return group;
1540
1780
  }
1541
- get dropdownOptions() {
1542
- return this._dropdownOptions;
1781
+ /**
1782
+ * Creates form control based on form field configuration
1783
+ * @param {FieldConfig} control
1784
+ * @return {FormControl}
1785
+ * @memberof DynamicFormComponent
1786
+ */
1787
+ createControl(control) {
1788
+ const { disabled, validation, value } = control;
1789
+ return this.fb.control({ disabled, value }, validation);
1543
1790
  }
1544
1791
  /**
1545
- * Sets the selected option
1546
- * @memberof SelectComponent
1792
+ * Emits formGroupArray
1793
+ * @memberof DynamicFormComponent
1547
1794
  */
1548
- set selectedOptions(value) {
1549
- if (Array.isArray(value)) {
1550
- this._selectedOptions = this.arraySorting(value);
1551
- }
1552
- else {
1553
- this._selectedOptions = value;
1554
- }
1795
+ onFormSubmit() {
1796
+ this.formSubmit.emit(this.formGroupArray);
1555
1797
  }
1556
- get selectedOptions() {
1557
- return this._selectedOptions;
1798
+ /**
1799
+ * Emits formGroupArray
1800
+ * @memberof DynamicFormComponent
1801
+ */
1802
+ onLeftButtonClicked() {
1803
+ this.formLeftButtonClicked.emit(this.formGroupArray);
1558
1804
  }
1559
- constructor(
1560
- // eslint-disable-next-line no-unused-vars
1561
- formUtilityService // eslint-disable-next-line no-empty-function
1562
- ) {
1563
- this.formUtilityService = formUtilityService;
1564
- this.arrowDirection = false;
1565
- this.searchType = SearchType$1.AUTO;
1566
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
1567
- this.dropdownInfo = buttonActionsInfo;
1568
- this._isSortNeeded = true;
1569
- this.formControlName = 'select';
1570
- this.isMultiLevel = false;
1571
- this.isLabelAlignedLeft = false;
1572
- this.selectLabel = '';
1573
- this.isMultiSelect = false;
1574
- this.isDisabled = false;
1575
- this.isSearch = false;
1576
- this.placeholderText = this.dropdownInfo.dropdown.placeholderText;
1577
- this.optionSelected = new EventEmitter();
1578
- this.optionSearched = new EventEmitter();
1805
+ /**
1806
+ * Emits formGroupArray
1807
+ * @memberof DynamicFormComponent
1808
+ */
1809
+ onFormChange() {
1810
+ this.formChange.emit(this.formGroupArray);
1579
1811
  }
1580
1812
  /**
1581
- * Initializes components instance properties from config if its defined otherwise creates form group and config.
1582
- * @memberof SelectComponent
1813
+ * Handles form field select type drop down selection event
1814
+ * @memberof DynamicFormComponent
1583
1815
  */
1584
- ngOnInit() {
1585
- this.updateArrowDirection(false);
1586
- this.group =
1587
- this.group ?? this.formUtilityService.getFormGroup(this.formControlName);
1588
- this.config =
1589
- this.config ??
1590
- this.formUtilityService.getFormFieldConfig(this.formControlName, FormControlType$1.SELECT);
1591
- if (this.config) {
1592
- this.isMultiSelect = this.config.isMultiSelect ?? false;
1593
- this.dropdownOptions =
1594
- this.config?.dropdownOptions ?? this.dropdownOptions;
1595
- this.selectedOptions = this.config?.value;
1596
- this.selectLabel = this.config?.label ?? '';
1597
- this.placeholderText = this.config?.placeholder ?? this.placeholderText;
1598
- this.isMultiSelect = this.config?.isMultiSelect ?? this.isMultiSelect;
1599
- this.isDisabled = this.config?.disabled ?? this.isDisabled;
1600
- this.searchType = this.config?.searchType ?? this.searchType;
1601
- this.isSortNeeded = this.config?.isSortNeeded ?? this.isSortNeeded;
1602
- }
1816
+ onDropdownChange() {
1817
+ this.dropdownChange.emit(this.formGroupArray);
1603
1818
  }
1604
1819
  /**
1605
- * Emits selected option on changes the selected option.
1606
- * @param {SelectOption} event
1607
- * @memberof SelectComponent
1820
+ * Handles form input change event
1821
+ * @param {Event} event
1822
+ * @memberof DynamicFormComponent
1608
1823
  */
1609
- onChange(event) {
1610
- this.optionSelected.emit(event);
1824
+ formInputChange(event) {
1825
+ this.formControlChange.emit(event);
1826
+ this.formInput.emit(this.formGroupArray);
1611
1827
  }
1612
1828
  /**
1613
- * Sets the select dropdown arrow direction
1614
- * @param {boolean} opened
1615
- * @memberof SelectComponent
1829
+ * Handles form field search apply event
1830
+ * @param {Event} event
1831
+ * @memberof DynamicFormComponent
1616
1832
  */
1617
- updateArrowDirection(opened) {
1618
- this.arrowDirection = opened;
1833
+ onSearchApply(event) {
1834
+ this.formSearchApply.emit(event);
1619
1835
  }
1620
1836
  /**
1621
- * Takes the index and the current option as arguments and needs to return the unique identifier for this option.
1622
- * @param {number} index
1623
- * @param {SelectOption} option
1624
- * @return {(number | string)}
1625
- * @memberof SelectComponent
1837
+ * Handles search event inside form field select
1838
+ * @param {Event} event
1839
+ * @memberof DynamicFormComponent
1626
1840
  */
1627
- trackByFn(index, option) {
1628
- return option.id;
1841
+ onSelectSearch(event) {
1842
+ this.formSelectSearch.emit(event);
1629
1843
  }
1630
1844
  /**
1631
- * Emits searched options on filtering options in select dropdown
1632
- * @param {string} searchText
1633
- * @memberof SelectComponent
1845
+ * Takes the index and the formGroup as arguments and needs to return the unique identifier for this formGroup.
1846
+ * @param {number} index
1847
+ * @param {FormGroup} formGroup
1848
+ * @memberof DynamicFormComponent
1634
1849
  */
1635
- onOptionSearch(searchText) {
1636
- this.optionSearched.emit(searchText);
1850
+ trackByFormGroup(index, formGroup) {
1851
+ return formGroup.controls;
1637
1852
  }
1638
1853
  /**
1639
- * Compares the two passed options
1640
- * @param {any} option1
1641
- * @param {any} option2
1642
- * @return {boolean}
1643
- * @memberof SelectComponent
1854
+ * Handles form date selection event
1855
+ * @param {string[]} event
1856
+ * @memberof DynamicFormComponent
1644
1857
  */
1645
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
1646
- comparer(option1, option2) {
1647
- return option1 && option2 ? option1.id === option2.id : option1 === option2;
1858
+ onDateSelected(event) {
1859
+ this.formDateSelected.emit(event);
1648
1860
  }
1649
1861
  /**
1650
- * Sorts the options
1651
- * @memberof SelectComponent
1862
+ * Emits selected form date range
1863
+ * @param {{startDate: string, endDate: string}} dateRange
1864
+ * @memberof DynamicFormComponent
1652
1865
  */
1653
- ngAfterViewInit() {
1654
- if (this.isSortNeeded && Array.isArray(this.dropdownOptions)) {
1655
- this.dropdownOptions = this.arraySorting(this.dropdownOptions);
1656
- }
1866
+ onSelectedDateRange(dateRange) {
1867
+ this.formSelectedDateRange.emit(dateRange);
1657
1868
  }
1658
1869
  /**
1659
- * Sorts the options by using arraySorting method
1660
- * @memberof SelectComponent
1870
+ * Handles form field auto complete search event
1871
+ * @param {Event} event
1872
+ * @memberof DynamicFormComponent
1661
1873
  */
1662
- sortOptions() {
1663
- if (this.isSortNeeded && Array.isArray(this.dropdownOptions)) {
1664
- this.sortedOptions = this.arraySorting(this.dropdownOptions);
1665
- }
1666
- else {
1667
- this.sortedOptions = this.dropdownOptions;
1668
- }
1874
+ onAutoCompleteSearch(event) {
1875
+ this.formAutoCompleteSearch.emit(event);
1669
1876
  }
1670
1877
  /**
1671
- * Utility method to sort dropdown options in ascending order.
1672
- * @param {SelectOption[]} list
1673
- * @return {SelectOption[]}
1674
- * @memberof SelectComponent
1878
+ * Handles form field auto complete option selection event
1879
+ * @memberof DynamicFormComponent
1880
+ */
1881
+ onAutoCompleteOptionSelected() {
1882
+ this.autoCompleteOptionSelected.emit(this.formGroupArray);
1883
+ }
1884
+ /**
1885
+ * Converts passed control name in hyphenated css class name
1886
+ * @param {string} className
1887
+ * @return {string}
1888
+ * @memberof DynamicFormComponent
1675
1889
  */
1676
- arraySorting(list) {
1677
- const clonedValue = [...list];
1678
- const sort = clonedValue.sort((a, b) => {
1679
- if (a.name.toLowerCase() === b.name.toLowerCase())
1680
- return 0;
1681
- if (a.name.toLowerCase() === 'all')
1682
- return -1;
1683
- if (b.name.toLowerCase() === 'all')
1684
- return 1;
1685
- if (a.name.toLowerCase() < b.name.toLowerCase())
1686
- return -1;
1687
- if (a.name.toLowerCase() > b.name.toLowerCase())
1688
- return 1;
1689
- return 0;
1690
- });
1691
- return sort;
1890
+ getRowClassName(className) {
1891
+ return className
1892
+ .replace(/([A-Z])/g, ' $1')
1893
+ .toLowerCase()
1894
+ .split(' ')
1895
+ .join('-');
1692
1896
  }
1693
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: SelectComponent, deps: [{ token: i1.FormUtilityService }], target: i0.ɵɵFactoryTarget.Component }); }
1694
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.3", type: SelectComponent, isStandalone: true, selector: "ieeesa-select", inputs: { isSortNeeded: "isSortNeeded", dropdownOptions: "dropdownOptions", selectedOptions: "selectedOptions", formControlName: "formControlName", isMultiLevel: "isMultiLevel", isLabelAlignedLeft: "isLabelAlignedLeft", selectLabel: "selectLabel", isMultiSelect: "isMultiSelect", isDisabled: "isDisabled", isSearch: "isSearch", placeholderText: "placeholderText" }, outputs: { optionSelected: "optionSelected", optionSearched: "optionSearched" }, providers: [
1695
- {
1696
- provide: MAT_SELECT_CONFIG,
1697
- useValue: { overlayPanelClass: 'ieeesa-select-overlay-pane' },
1698
- },
1699
- ], viewQueries: [{ propertyName: "formFields", predicate: SearchComponent$1, descendants: true }], ngImport: i0, template: "<div\r\n [formGroup]=\"group\"\r\n class=\"ieeesa-select-field\"\r\n *ngIf=\"group\"\r\n [ngClass]=\"\r\n isLabelAlignedLeft\r\n ? 'ieeesa-select-field__label-left'\r\n : 'ieeesa-select-field__label-top'\r\n \"\r\n>\r\n <mat-label class=\"ieeesa-select-field__label\">{{ selectLabel }}</mat-label>\r\n <mat-form-field\r\n [ngClass]=\"\r\n arrowDirection\r\n ? 'ieeesa-select-field__arrow-up'\r\n : 'ieeesa-select-field__arrow-down'\r\n \"\r\n >\r\n <mat-select\r\n disableOptionCentering\r\n *ngIf=\"isMultiSelect\"\r\n (openedChange)=\"updateArrowDirection($event)\"\r\n (selectionChange)=\"onChange($event.value)\"\r\n [formControlName]=\"config.controlName\"\r\n [multiple]=\"isMultiSelect\"\r\n [disabled]=\"isDisabled\"\r\n [placeholder]=\"placeholderText\"\r\n [compareWith]=\"comparer\"\r\n >\r\n <ieeesa-search\r\n *ngIf=\"isSearch\"\r\n [searchType]=\"searchType\"\r\n (searchValue)=\"onOptionSearch($event)\"\r\n ></ieeesa-search>\r\n <ng-container\r\n *ngIf=\"!isMultiLevel\"\r\n [ngTemplateOutlet]=\"dropdownOptionsTemplateRef\"\r\n [ngTemplateOutletContext]=\"{ data: dropdownOptions }\"\r\n >\r\n </ng-container>\r\n <ng-container *ngIf=\"isMultiLevel\">\r\n <mat-optgroup\r\n *ngFor=\"let option of dropdownOptions; trackBy: trackByFn\"\r\n [label]=\"option.name\"\r\n >\r\n <ng-container\r\n [ngTemplateOutlet]=\"dropdownOptionsTemplateRef\"\r\n [ngTemplateOutletContext]=\"{ data: option.option_groups }\"\r\n >\r\n </ng-container>\r\n </mat-optgroup>\r\n </ng-container>\r\n <ng-template #dropdownOptionsTemplateRef let-options=\"data\">\r\n <mat-option\r\n *ngFor=\"let option of options; trackBy: trackByFn\"\r\n [value]=\"option\"\r\n >\r\n {{ option.name }}\r\n </mat-option>\r\n </ng-template>\r\n </mat-select>\r\n\r\n <mat-select\r\n disableOptionCentering\r\n *ngIf=\"!isMultiSelect\"\r\n [multiple]=\"isMultiSelect\"\r\n (openedChange)=\"updateArrowDirection($event)\"\r\n (selectionChange)=\"onChange($event.value)\"\r\n [formControlName]=\"config.controlName\"\r\n [disabled]=\"isDisabled\"\r\n [placeholder]=\"placeholderText\"\r\n >\r\n <ieeesa-search\r\n *ngIf=\"isSearch\"\r\n [searchType]=\"searchType\"\r\n (searchValue)=\"onOptionSearch($event)\"\r\n ></ieeesa-search>\r\n <ng-container\r\n *ngIf=\"!isMultiLevel\"\r\n [ngTemplateOutlet]=\"dropdownOptionsTemplateRef\"\r\n [ngTemplateOutletContext]=\"{ data: dropdownOptions }\"\r\n >\r\n </ng-container>\r\n <ng-container *ngIf=\"isMultiLevel\">\r\n <mat-optgroup\r\n *ngFor=\"let option of dropdownOptions; trackBy: trackByFn\"\r\n [label]=\"option.name\"\r\n >\r\n <ng-container\r\n [ngTemplateOutlet]=\"dropdownOptionsTemplateRef\"\r\n [ngTemplateOutletContext]=\"{ data: option.option_groups }\"\r\n >\r\n </ng-container>\r\n </mat-optgroup>\r\n </ng-container>\r\n <ng-template #dropdownOptionsTemplateRef let-options=\"data\">\r\n <mat-option\r\n *ngFor=\"let option of options; trackBy: trackByFn\"\r\n [value]=\"option\"\r\n >\r\n {{ option.name }}\r\n </mat-option>\r\n </ng-template>\r\n </mat-select>\r\n </mat-form-field>\r\n <ieeesa-form-error [formGroup]=\"group\" [config]=\"config\"> </ieeesa-form-error>\r\n</div>\r\n", styles: [".ieeesa-subtitle{text-align:left;font-family:Calibri Regular;font-size:1.56em;letter-spacing:0;color:#000;opacity:1}.ieeesa-body{text-align:left;font-family:Calibri Regular;font-size:1.25em;letter-spacing:0;color:#000;opacity:1}.ieeesa-display-lg-57{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:3.5625em;line-height:64px;color:#000;letter-spacing:0}.ieeesa-display-md-47{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.9375em;line-height:52px;color:#000;letter-spacing:0}.ieeesa-display-sm-38{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.375em;line-height:44px;color:#000;letter-spacing:0}.ieeesa-headline-lg-34{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.125em;line-height:40px;color:#000;letter-spacing:0}.ieeesa-headline-md-30{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.875em;line-height:36px;color:#000;letter-spacing:0}.ieeesa-headline-sm-26{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.625em;line-height:32px;color:#000;letter-spacing:0}.ieeesa-title-lg-bold-24{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1.5em;line-height:28px;color:#000;letter-spacing:0}.ieeesa-title-lg-24{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.5em;line-height:28px;color:#000;letter-spacing:0}.ieeesa-title-md-18{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.125em;line-height:24px;color:#000;letter-spacing:.009375em}.ieeesa-title-sm-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-lg-bold-16{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-lg-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-md-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875em;line-height:16px;color:#000;letter-spacing:.03125em}.ieeesa-label-sm-13{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.8125em;line-height:16px;color:#000;letter-spacing:.03125em}.ieeesa-body-lg-bold-18{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1.125em;line-height:24px;color:#000;letter-spacing:.03125em}.ieeesa-body-lg-18{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.125em;line-height:24px;color:#000;letter-spacing:.03125em}.ieeesa-body-md-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1em;line-height:20px;color:#000;letter-spacing:.015625em}.ieeesa-body-sm-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875em;line-height:16px;color:#000;letter-spacing:.025em}.ieeesa-title-inter-lg-bold-24{font-family:Inter Bold;font-style:normal;font-weight:700;font-size:1.5em;line-height:29px;color:#000;letter-spacing:0}.mat-mdc-button.mat-mdc-button-base.mat-primary-button,.mat-mdc-button.mat-mdc-button-base.mat-secondary-button{min-width:103px;width:auto;min-height:40px;height:auto;border-radius:3px;text-align:center;padding:.625em 1.5em;border:none;font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.mat-mdc-button.mat-mdc-button-base>.mat-icon{margin-right:11px}.mat-mdc-button.mat-mdc-button-base.mat-primary-button{background-color:#00629b;color:#fff}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:hover{background-color:#003e65}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:active{background-color:#00629b}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:disabled{background-color:#1c1b1f1f}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button{color:#fff;background:#a7a8aa;box-shadow:0 1px 2px #0000004d,0 2px 6px 2px #00000026}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:hover{background:#a7a8aa}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:active{background:rgba(29,25,43,.12)}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:disabled{background:rgba(28,27,31,.12);color:#1c1b1f;opacity:.38}.ieeesa-text-button{color:#cac4d0;background:none;border:none}.flex-align-center{display:flex;align-items:center;justify-content:center}.mat-button-toggle-checked{background-color:#a7a8aa}.mat-button-toggle-checked .mat-button-toggle-label-content:before{font-family:\"Font Awesome 5 Free\";font-weight:900;content:\"\\f00c\";padding-right:.5625em}.mat-button-toggle-group .mat-button-toggle-label-content{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1em;line-height:20px;color:#1c1b1f;letter-spacing:.00625em}@media (max-width: 768px){.mat-button-toggle-group .mat-button-toggle-label-content{max-width:8ch;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;position:relative}}.cdk-overlay-pane{width:100%;min-width:312px}.ieeesa-select-field .mat-mdc-form-field{width:-webkit-fill-available}.ieeesa-select-field__arrow-up .mat-mdc-select-arrow{border:solid #595758;border-width:0 2px 2px 0;display:inline-block;padding:4px;margin:0 10px;transform:rotate(-135deg);-webkit-transform:rotate(-135deg)}.ieeesa-select-field__arrow-up .mat-mdc-select-arrow svg{display:none}.ieeesa-select-field__arrow-down .mat-mdc-select-arrow{border:solid #595758;border-width:0 2px 2px 0;display:inline-block;padding:4px;margin:0 10px;transform:rotate(45deg);-webkit-transform:rotate(45deg)}.ieeesa-select-field__arrow-down .mat-mdc-select-arrow svg{display:none}.ieeesa-select-field__label-left{display:flex}.ieeesa-select-field__label-top{display:block}.ieeesa-select-field .mdc-text-field--filled .mdc-line-ripple:after{border-bottom-color:#918f90!important}.ieeesa-select-field .mdc-text-field--filled .mdc-line-ripple:before{border-bottom-color:#918f90!important}.ieeesa-select-field .mdc-line-ripple--active:after{opacity:0}.ieeesa-select-field .mat-mdc-select-placeholder{font-size:1em;font-weight:400;color:#000}.ieeesa-select-field .mdc-text-field--filled:not(.mdc-text-field--disabled){background-color:#fffbfe}.ieeesa-select-field .mdc-text-field--focused,.ieeesa-select-field .mat-mdc-form-field-focus-overlay,.ieeesa-select-overlay-pane .mat-mdc-select-panel{background-color:#fffbfe}.ieeesa-select-overlay-pane .mdc-list-item__primary-text{color:#000}.ieeesa-select-overlay-pane .mat-mdc-option .mat-pseudo-checkbox-minimal{margin-left:0;float:right}.ieeesa-select-overlay-pane .mat-primary .mat-pseudo-checkbox-checked.mat-pseudo-checkbox-minimal:after{display:none}.ieeesa-select-overlay-pane .ieeesa-search-field .mat-mdc-form-field-infix{width:100%}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: SearchComponent$1, selector: "ieeesa-search", inputs: ["formControlName", "placeholderLabel", "searchType", "searchTerm"], outputs: ["searchValue"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i3.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i3.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: FormErrorComponent$1, selector: "ieeesa-form-error", inputs: ["formGroup", "config", "submitResponse"] }, { kind: "ngmodule", type: MatFormFieldModule }, { kind: "component", type: i4.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i4.MatLabel, selector: "mat-label" }, { kind: "ngmodule", type: MatInputModule }, { kind: "ngmodule", type: MatIconModule }, { kind: "ngmodule", type: MatSelectModule }, { kind: "component", type: i5$3.MatSelect, selector: "mat-select", inputs: ["disabled", "disableRipple", "tabIndex", "panelWidth", "hideSingleSelectionIndicator"], exportAs: ["matSelect"] }, { kind: "component", type: i2$1.MatOption, selector: "mat-option", exportAs: ["matOption"] }, { kind: "component", type: i2$1.MatOptgroup, selector: "mat-optgroup", inputs: ["disabled"], exportAs: ["matOptgroup"] }], encapsulation: i0.ViewEncapsulation.None }); }
1897
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: DynamicFormComponent, deps: [{ token: i3.FormBuilder }], target: i0.ɵɵFactoryTarget.Component }); }
1898
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.3", type: DynamicFormComponent, isStandalone: true, selector: "ieeesa-dynamic-form", inputs: { formGroups: "formGroups", submitResponse: "submitResponse", searchResponse: "searchResponse", colWidth: "colWidth", isLegendVisible: "isLegendVisible", rightButtonLabel: "rightButtonLabel", leftButtonLabel: "leftButtonLabel", isSubmitButtonDisabled: "isSubmitButtonDisabled", isLeftButtonDisabled: "isLeftButtonDisabled", isLeftButtonNeeded: "isLeftButtonNeeded" }, outputs: { formSubmit: "formSubmit", formChange: "formChange", formInput: "formInput", formLeftButtonClicked: "formLeftButtonClicked", formSearchApply: "formSearchApply", formGroupsReference: "formGroupsReference", dropdownChange: "dropdownChange", formDateSelected: "formDateSelected", formSelectSearch: "formSelectSearch", formControlChange: "formControlChange", formAutoCompleteSearch: "formAutoCompleteSearch", autoCompleteOptionSelected: "autoCompleteOptionSelected", formAfterContentInit: "formAfterContentInit", formSelectedDateRange: "formSelectedDateRange" }, viewQueries: [{ propertyName: "formFields", predicate: DynamicFormFieldDirective, descendants: true }], exportAs: ["dynamicForm"], ngImport: i0, template: "<form\r\n class=\"ieeesa-dynamic-form\"\r\n [formGroup]=\"form\"\r\n (change)=\"onFormChange()\"\r\n (ngSubmit)=\"onFormSubmit()\"\r\n (input)=\"formInputChange($event)\"\r\n>\r\n <fieldset\r\n class=\"ieeesa-dynamic-form__fieldset p-2\"\r\n *ngFor=\"\r\n let formGrp of formGroupArray;\r\n let i = index;\r\n trackBy: trackByFormGroup\r\n \"\r\n >\r\n <legend class=\"float-none w-auto p-2\" *ngIf=\"isLegendVisible\">\r\n {{ legendsArray[i] }}:\r\n </legend>\r\n <div class=\"row\">\r\n <div\r\n class=\"col-{{ colWidth.xs }} col-sm-{{ colWidth.sm }} col-md-{{\r\n colWidth.md\r\n }} col-lg-{{ colWidth.lg }} col-xl-{{ colWidth.xl }}\r\n ieeesa-dynamic-form__form-field\"\r\n [ngClass]=\"getRowClassName(formControlArray[i][j].controlName)\"\r\n *ngFor=\"let control of formControlArray[i]; let j = index\"\r\n >\r\n <ng-template\r\n ieeesaDynamicFormField\r\n [config]=\"formControlArray[i][j]\"\r\n [group]=\"formGrp\"\r\n [submitResponse]=\"submitResponse\"\r\n [searchResponse]=\"searchResponse\"\r\n (formSearchApply)=\"onSearchApply($event)\"\r\n (formDropdownSelected)=\"onFormChange(); onDropdownChange()\"\r\n (formDateSelected)=\"onDateSelected($event)\"\r\n (formSelectedDateRange)=\"onSelectedDateRange($event)\"\r\n (formSelectSearch)=\"onSelectSearch($event)\"\r\n (formAutoCompleteSearch)=\"onAutoCompleteSearch($event)\"\r\n (autoCompleteOptionSelected)=\"onAutoCompleteOptionSelected()\"\r\n >\r\n </ng-template>\r\n </div>\r\n </div>\r\n </fieldset>\r\n <div class=\"row\">\r\n <div class=\"col-12 ieeesa-dynamic-form__actions\">\r\n <button\r\n type=\"submit\"\r\n mat-button\r\n class=\"mat-primary-button ieeesa-dynamic-form__actions--right-btn\"\r\n [disabled]=\"isSubmitButtonDisabled\"\r\n >\r\n {{ rightButtonLabel }}\r\n </button>\r\n <button\r\n *ngIf=\"isLeftButtonNeeded\"\r\n type=\"button\"\r\n mat-button\r\n class=\"mat-secondary-button ieeesa-dynamic-form__actions--left-btn\"\r\n (click)=\"onLeftButtonClicked()\"\r\n [disabled]=\"isLeftButtonDisabled\"\r\n >\r\n {{ leftButtonLabel }}\r\n </button>\r\n </div>\r\n </div>\r\n</form>\r\n", styles: [".ieeesa-subtitle{text-align:left;font-family:Calibri Regular;font-size:1.56em;letter-spacing:0;color:#000;opacity:1}.ieeesa-body{text-align:left;font-family:Calibri Regular;font-size:1.25em;letter-spacing:0;color:#000;opacity:1}.ieeesa-display-lg-57{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:3.5625em;line-height:64px;color:#000;letter-spacing:0}.ieeesa-display-md-47{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.9375em;line-height:52px;color:#000;letter-spacing:0}.ieeesa-display-sm-38{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.375em;line-height:44px;color:#000;letter-spacing:0}.ieeesa-headline-lg-34{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.125em;line-height:40px;color:#000;letter-spacing:0}.ieeesa-headline-md-30{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.875em;line-height:36px;color:#000;letter-spacing:0}.ieeesa-headline-sm-26{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.625em;line-height:32px;color:#000;letter-spacing:0}.ieeesa-title-lg-bold-24{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1.5em;line-height:28px;color:#000;letter-spacing:0}.ieeesa-title-lg-24{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.5em;line-height:28px;color:#000;letter-spacing:0}.ieeesa-title-md-18{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.125em;line-height:24px;color:#000;letter-spacing:.009375em}.ieeesa-title-sm-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-lg-bold-16{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-lg-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-md-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875em;line-height:16px;color:#000;letter-spacing:.03125em}.ieeesa-label-sm-13{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.8125em;line-height:16px;color:#000;letter-spacing:.03125em}.ieeesa-body-lg-bold-18{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1.125em;line-height:24px;color:#000;letter-spacing:.03125em}.ieeesa-body-lg-18{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.125em;line-height:24px;color:#000;letter-spacing:.03125em}.ieeesa-body-md-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1em;line-height:20px;color:#000;letter-spacing:.015625em}.ieeesa-body-sm-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875em;line-height:16px;color:#000;letter-spacing:.025em}.ieeesa-title-inter-lg-bold-24{font-family:Inter Bold;font-style:normal;font-weight:700;font-size:1.5em;line-height:29px;color:#000;letter-spacing:0}.mat-mdc-button.mat-mdc-button-base.mat-primary-button,.mat-mdc-button.mat-mdc-button-base.mat-secondary-button{min-width:103px;width:auto;min-height:40px;height:auto;border-radius:3px;text-align:center;padding:.625em 1.5em;border:none;font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.mat-mdc-button.mat-mdc-button-base>.mat-icon{margin-right:11px}.mat-mdc-button.mat-mdc-button-base.mat-primary-button{background-color:#00629b;color:#fff}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:hover{background-color:#003e65}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:active{background-color:#00629b}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:disabled{background-color:#1c1b1f1f}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button{color:#fff;background:#a7a8aa;box-shadow:0 1px 2px #0000004d,0 2px 6px 2px #00000026}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:hover{background:#a7a8aa}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:active{background:rgba(29,25,43,.12)}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:disabled{background:rgba(28,27,31,.12);color:#1c1b1f;opacity:.38}.ieeesa-text-button{color:#cac4d0;background:none;border:none}.flex-align-center{display:flex;align-items:center;justify-content:center}.mat-button-toggle-checked{background-color:#a7a8aa}.mat-button-toggle-checked .mat-button-toggle-label-content:before{font-family:\"Font Awesome 5 Free\";font-weight:900;content:\"\\f00c\";padding-right:.5625em}.mat-button-toggle-group .mat-button-toggle-label-content{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1em;line-height:20px;color:#1c1b1f;letter-spacing:.00625em}@media (max-width: 768px){.mat-button-toggle-group .mat-button-toggle-label-content{max-width:8ch;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;position:relative}}.cdk-overlay-pane{width:100%;min-width:312px}.ieeesa-dynamic-form__actions{display:flex;flex-direction:row-reverse;padding-top:15px}.ieeesa-dynamic-form__actions--left-btn{margin-right:2%}.ieeesa-dynamic-form__form-field{padding-top:20px}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i3.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i3.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i3.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: DynamicFormFieldDirective, selector: "[ieeesaDynamicFormField]", inputs: ["config", "group", "submitResponse", "searchResponse"], outputs: ["formSearchApply", "formDropdownSelected", "formDateSelected", "formSelectedDateRange", "formSelectSearch", "formAutoCompleteSearch", "autoCompleteOptionSelected"] }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i8.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }] }); }
1700
1899
  }
1701
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: SelectComponent, decorators: [{
1900
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: DynamicFormComponent, decorators: [{
1702
1901
  type: Component,
1703
- args: [{ selector: 'ieeesa-select', standalone: true, imports: [
1902
+ args: [{ exportAs: 'dynamicForm', selector: 'ieeesa-dynamic-form', standalone: true, imports: [
1704
1903
  CommonModule,
1705
- SearchComponent$1,
1706
1904
  ReactiveFormsModule,
1707
- FormErrorComponent$1,
1708
- MatFormFieldModule,
1709
- MatInputModule,
1710
- MatIconModule,
1711
- MatSelectModule,
1712
- ], providers: [
1713
- {
1714
- provide: MAT_SELECT_CONFIG,
1715
- useValue: { overlayPanelClass: 'ieeesa-select-overlay-pane' },
1716
- },
1717
- ], encapsulation: ViewEncapsulation.None, template: "<div\r\n [formGroup]=\"group\"\r\n class=\"ieeesa-select-field\"\r\n *ngIf=\"group\"\r\n [ngClass]=\"\r\n isLabelAlignedLeft\r\n ? 'ieeesa-select-field__label-left'\r\n : 'ieeesa-select-field__label-top'\r\n \"\r\n>\r\n <mat-label class=\"ieeesa-select-field__label\">{{ selectLabel }}</mat-label>\r\n <mat-form-field\r\n [ngClass]=\"\r\n arrowDirection\r\n ? 'ieeesa-select-field__arrow-up'\r\n : 'ieeesa-select-field__arrow-down'\r\n \"\r\n >\r\n <mat-select\r\n disableOptionCentering\r\n *ngIf=\"isMultiSelect\"\r\n (openedChange)=\"updateArrowDirection($event)\"\r\n (selectionChange)=\"onChange($event.value)\"\r\n [formControlName]=\"config.controlName\"\r\n [multiple]=\"isMultiSelect\"\r\n [disabled]=\"isDisabled\"\r\n [placeholder]=\"placeholderText\"\r\n [compareWith]=\"comparer\"\r\n >\r\n <ieeesa-search\r\n *ngIf=\"isSearch\"\r\n [searchType]=\"searchType\"\r\n (searchValue)=\"onOptionSearch($event)\"\r\n ></ieeesa-search>\r\n <ng-container\r\n *ngIf=\"!isMultiLevel\"\r\n [ngTemplateOutlet]=\"dropdownOptionsTemplateRef\"\r\n [ngTemplateOutletContext]=\"{ data: dropdownOptions }\"\r\n >\r\n </ng-container>\r\n <ng-container *ngIf=\"isMultiLevel\">\r\n <mat-optgroup\r\n *ngFor=\"let option of dropdownOptions; trackBy: trackByFn\"\r\n [label]=\"option.name\"\r\n >\r\n <ng-container\r\n [ngTemplateOutlet]=\"dropdownOptionsTemplateRef\"\r\n [ngTemplateOutletContext]=\"{ data: option.option_groups }\"\r\n >\r\n </ng-container>\r\n </mat-optgroup>\r\n </ng-container>\r\n <ng-template #dropdownOptionsTemplateRef let-options=\"data\">\r\n <mat-option\r\n *ngFor=\"let option of options; trackBy: trackByFn\"\r\n [value]=\"option\"\r\n >\r\n {{ option.name }}\r\n </mat-option>\r\n </ng-template>\r\n </mat-select>\r\n\r\n <mat-select\r\n disableOptionCentering\r\n *ngIf=\"!isMultiSelect\"\r\n [multiple]=\"isMultiSelect\"\r\n (openedChange)=\"updateArrowDirection($event)\"\r\n (selectionChange)=\"onChange($event.value)\"\r\n [formControlName]=\"config.controlName\"\r\n [disabled]=\"isDisabled\"\r\n [placeholder]=\"placeholderText\"\r\n >\r\n <ieeesa-search\r\n *ngIf=\"isSearch\"\r\n [searchType]=\"searchType\"\r\n (searchValue)=\"onOptionSearch($event)\"\r\n ></ieeesa-search>\r\n <ng-container\r\n *ngIf=\"!isMultiLevel\"\r\n [ngTemplateOutlet]=\"dropdownOptionsTemplateRef\"\r\n [ngTemplateOutletContext]=\"{ data: dropdownOptions }\"\r\n >\r\n </ng-container>\r\n <ng-container *ngIf=\"isMultiLevel\">\r\n <mat-optgroup\r\n *ngFor=\"let option of dropdownOptions; trackBy: trackByFn\"\r\n [label]=\"option.name\"\r\n >\r\n <ng-container\r\n [ngTemplateOutlet]=\"dropdownOptionsTemplateRef\"\r\n [ngTemplateOutletContext]=\"{ data: option.option_groups }\"\r\n >\r\n </ng-container>\r\n </mat-optgroup>\r\n </ng-container>\r\n <ng-template #dropdownOptionsTemplateRef let-options=\"data\">\r\n <mat-option\r\n *ngFor=\"let option of options; trackBy: trackByFn\"\r\n [value]=\"option\"\r\n >\r\n {{ option.name }}\r\n </mat-option>\r\n </ng-template>\r\n </mat-select>\r\n </mat-form-field>\r\n <ieeesa-form-error [formGroup]=\"group\" [config]=\"config\"> </ieeesa-form-error>\r\n</div>\r\n", styles: [".ieeesa-subtitle{text-align:left;font-family:Calibri Regular;font-size:1.56em;letter-spacing:0;color:#000;opacity:1}.ieeesa-body{text-align:left;font-family:Calibri Regular;font-size:1.25em;letter-spacing:0;color:#000;opacity:1}.ieeesa-display-lg-57{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:3.5625em;line-height:64px;color:#000;letter-spacing:0}.ieeesa-display-md-47{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.9375em;line-height:52px;color:#000;letter-spacing:0}.ieeesa-display-sm-38{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.375em;line-height:44px;color:#000;letter-spacing:0}.ieeesa-headline-lg-34{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.125em;line-height:40px;color:#000;letter-spacing:0}.ieeesa-headline-md-30{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.875em;line-height:36px;color:#000;letter-spacing:0}.ieeesa-headline-sm-26{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.625em;line-height:32px;color:#000;letter-spacing:0}.ieeesa-title-lg-bold-24{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1.5em;line-height:28px;color:#000;letter-spacing:0}.ieeesa-title-lg-24{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.5em;line-height:28px;color:#000;letter-spacing:0}.ieeesa-title-md-18{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.125em;line-height:24px;color:#000;letter-spacing:.009375em}.ieeesa-title-sm-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-lg-bold-16{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-lg-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-md-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875em;line-height:16px;color:#000;letter-spacing:.03125em}.ieeesa-label-sm-13{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.8125em;line-height:16px;color:#000;letter-spacing:.03125em}.ieeesa-body-lg-bold-18{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1.125em;line-height:24px;color:#000;letter-spacing:.03125em}.ieeesa-body-lg-18{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.125em;line-height:24px;color:#000;letter-spacing:.03125em}.ieeesa-body-md-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1em;line-height:20px;color:#000;letter-spacing:.015625em}.ieeesa-body-sm-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875em;line-height:16px;color:#000;letter-spacing:.025em}.ieeesa-title-inter-lg-bold-24{font-family:Inter Bold;font-style:normal;font-weight:700;font-size:1.5em;line-height:29px;color:#000;letter-spacing:0}.mat-mdc-button.mat-mdc-button-base.mat-primary-button,.mat-mdc-button.mat-mdc-button-base.mat-secondary-button{min-width:103px;width:auto;min-height:40px;height:auto;border-radius:3px;text-align:center;padding:.625em 1.5em;border:none;font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.mat-mdc-button.mat-mdc-button-base>.mat-icon{margin-right:11px}.mat-mdc-button.mat-mdc-button-base.mat-primary-button{background-color:#00629b;color:#fff}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:hover{background-color:#003e65}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:active{background-color:#00629b}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:disabled{background-color:#1c1b1f1f}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button{color:#fff;background:#a7a8aa;box-shadow:0 1px 2px #0000004d,0 2px 6px 2px #00000026}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:hover{background:#a7a8aa}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:active{background:rgba(29,25,43,.12)}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:disabled{background:rgba(28,27,31,.12);color:#1c1b1f;opacity:.38}.ieeesa-text-button{color:#cac4d0;background:none;border:none}.flex-align-center{display:flex;align-items:center;justify-content:center}.mat-button-toggle-checked{background-color:#a7a8aa}.mat-button-toggle-checked .mat-button-toggle-label-content:before{font-family:\"Font Awesome 5 Free\";font-weight:900;content:\"\\f00c\";padding-right:.5625em}.mat-button-toggle-group .mat-button-toggle-label-content{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1em;line-height:20px;color:#1c1b1f;letter-spacing:.00625em}@media (max-width: 768px){.mat-button-toggle-group .mat-button-toggle-label-content{max-width:8ch;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;position:relative}}.cdk-overlay-pane{width:100%;min-width:312px}.ieeesa-select-field .mat-mdc-form-field{width:-webkit-fill-available}.ieeesa-select-field__arrow-up .mat-mdc-select-arrow{border:solid #595758;border-width:0 2px 2px 0;display:inline-block;padding:4px;margin:0 10px;transform:rotate(-135deg);-webkit-transform:rotate(-135deg)}.ieeesa-select-field__arrow-up .mat-mdc-select-arrow svg{display:none}.ieeesa-select-field__arrow-down .mat-mdc-select-arrow{border:solid #595758;border-width:0 2px 2px 0;display:inline-block;padding:4px;margin:0 10px;transform:rotate(45deg);-webkit-transform:rotate(45deg)}.ieeesa-select-field__arrow-down .mat-mdc-select-arrow svg{display:none}.ieeesa-select-field__label-left{display:flex}.ieeesa-select-field__label-top{display:block}.ieeesa-select-field .mdc-text-field--filled .mdc-line-ripple:after{border-bottom-color:#918f90!important}.ieeesa-select-field .mdc-text-field--filled .mdc-line-ripple:before{border-bottom-color:#918f90!important}.ieeesa-select-field .mdc-line-ripple--active:after{opacity:0}.ieeesa-select-field .mat-mdc-select-placeholder{font-size:1em;font-weight:400;color:#000}.ieeesa-select-field .mdc-text-field--filled:not(.mdc-text-field--disabled){background-color:#fffbfe}.ieeesa-select-field .mdc-text-field--focused,.ieeesa-select-field .mat-mdc-form-field-focus-overlay,.ieeesa-select-overlay-pane .mat-mdc-select-panel{background-color:#fffbfe}.ieeesa-select-overlay-pane .mdc-list-item__primary-text{color:#000}.ieeesa-select-overlay-pane .mat-mdc-option .mat-pseudo-checkbox-minimal{margin-left:0;float:right}.ieeesa-select-overlay-pane .mat-primary .mat-pseudo-checkbox-checked.mat-pseudo-checkbox-minimal:after{display:none}.ieeesa-select-overlay-pane .ieeesa-search-field .mat-mdc-form-field-infix{width:100%}\n"] }]
1718
- }], ctorParameters: function () { return [{ type: i1.FormUtilityService }]; }, propDecorators: { formFields: [{
1905
+ DynamicFormFieldDirective,
1906
+ MatButtonModule,
1907
+ ], template: "<form\r\n class=\"ieeesa-dynamic-form\"\r\n [formGroup]=\"form\"\r\n (change)=\"onFormChange()\"\r\n (ngSubmit)=\"onFormSubmit()\"\r\n (input)=\"formInputChange($event)\"\r\n>\r\n <fieldset\r\n class=\"ieeesa-dynamic-form__fieldset p-2\"\r\n *ngFor=\"\r\n let formGrp of formGroupArray;\r\n let i = index;\r\n trackBy: trackByFormGroup\r\n \"\r\n >\r\n <legend class=\"float-none w-auto p-2\" *ngIf=\"isLegendVisible\">\r\n {{ legendsArray[i] }}:\r\n </legend>\r\n <div class=\"row\">\r\n <div\r\n class=\"col-{{ colWidth.xs }} col-sm-{{ colWidth.sm }} col-md-{{\r\n colWidth.md\r\n }} col-lg-{{ colWidth.lg }} col-xl-{{ colWidth.xl }}\r\n ieeesa-dynamic-form__form-field\"\r\n [ngClass]=\"getRowClassName(formControlArray[i][j].controlName)\"\r\n *ngFor=\"let control of formControlArray[i]; let j = index\"\r\n >\r\n <ng-template\r\n ieeesaDynamicFormField\r\n [config]=\"formControlArray[i][j]\"\r\n [group]=\"formGrp\"\r\n [submitResponse]=\"submitResponse\"\r\n [searchResponse]=\"searchResponse\"\r\n (formSearchApply)=\"onSearchApply($event)\"\r\n (formDropdownSelected)=\"onFormChange(); onDropdownChange()\"\r\n (formDateSelected)=\"onDateSelected($event)\"\r\n (formSelectedDateRange)=\"onSelectedDateRange($event)\"\r\n (formSelectSearch)=\"onSelectSearch($event)\"\r\n (formAutoCompleteSearch)=\"onAutoCompleteSearch($event)\"\r\n (autoCompleteOptionSelected)=\"onAutoCompleteOptionSelected()\"\r\n >\r\n </ng-template>\r\n </div>\r\n </div>\r\n </fieldset>\r\n <div class=\"row\">\r\n <div class=\"col-12 ieeesa-dynamic-form__actions\">\r\n <button\r\n type=\"submit\"\r\n mat-button\r\n class=\"mat-primary-button ieeesa-dynamic-form__actions--right-btn\"\r\n [disabled]=\"isSubmitButtonDisabled\"\r\n >\r\n {{ rightButtonLabel }}\r\n </button>\r\n <button\r\n *ngIf=\"isLeftButtonNeeded\"\r\n type=\"button\"\r\n mat-button\r\n class=\"mat-secondary-button ieeesa-dynamic-form__actions--left-btn\"\r\n (click)=\"onLeftButtonClicked()\"\r\n [disabled]=\"isLeftButtonDisabled\"\r\n >\r\n {{ leftButtonLabel }}\r\n </button>\r\n </div>\r\n </div>\r\n</form>\r\n", styles: [".ieeesa-subtitle{text-align:left;font-family:Calibri Regular;font-size:1.56em;letter-spacing:0;color:#000;opacity:1}.ieeesa-body{text-align:left;font-family:Calibri Regular;font-size:1.25em;letter-spacing:0;color:#000;opacity:1}.ieeesa-display-lg-57{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:3.5625em;line-height:64px;color:#000;letter-spacing:0}.ieeesa-display-md-47{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.9375em;line-height:52px;color:#000;letter-spacing:0}.ieeesa-display-sm-38{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.375em;line-height:44px;color:#000;letter-spacing:0}.ieeesa-headline-lg-34{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.125em;line-height:40px;color:#000;letter-spacing:0}.ieeesa-headline-md-30{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.875em;line-height:36px;color:#000;letter-spacing:0}.ieeesa-headline-sm-26{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.625em;line-height:32px;color:#000;letter-spacing:0}.ieeesa-title-lg-bold-24{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1.5em;line-height:28px;color:#000;letter-spacing:0}.ieeesa-title-lg-24{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.5em;line-height:28px;color:#000;letter-spacing:0}.ieeesa-title-md-18{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.125em;line-height:24px;color:#000;letter-spacing:.009375em}.ieeesa-title-sm-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-lg-bold-16{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-lg-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-md-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875em;line-height:16px;color:#000;letter-spacing:.03125em}.ieeesa-label-sm-13{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.8125em;line-height:16px;color:#000;letter-spacing:.03125em}.ieeesa-body-lg-bold-18{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1.125em;line-height:24px;color:#000;letter-spacing:.03125em}.ieeesa-body-lg-18{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.125em;line-height:24px;color:#000;letter-spacing:.03125em}.ieeesa-body-md-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1em;line-height:20px;color:#000;letter-spacing:.015625em}.ieeesa-body-sm-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875em;line-height:16px;color:#000;letter-spacing:.025em}.ieeesa-title-inter-lg-bold-24{font-family:Inter Bold;font-style:normal;font-weight:700;font-size:1.5em;line-height:29px;color:#000;letter-spacing:0}.mat-mdc-button.mat-mdc-button-base.mat-primary-button,.mat-mdc-button.mat-mdc-button-base.mat-secondary-button{min-width:103px;width:auto;min-height:40px;height:auto;border-radius:3px;text-align:center;padding:.625em 1.5em;border:none;font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.mat-mdc-button.mat-mdc-button-base>.mat-icon{margin-right:11px}.mat-mdc-button.mat-mdc-button-base.mat-primary-button{background-color:#00629b;color:#fff}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:hover{background-color:#003e65}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:active{background-color:#00629b}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:disabled{background-color:#1c1b1f1f}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button{color:#fff;background:#a7a8aa;box-shadow:0 1px 2px #0000004d,0 2px 6px 2px #00000026}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:hover{background:#a7a8aa}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:active{background:rgba(29,25,43,.12)}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:disabled{background:rgba(28,27,31,.12);color:#1c1b1f;opacity:.38}.ieeesa-text-button{color:#cac4d0;background:none;border:none}.flex-align-center{display:flex;align-items:center;justify-content:center}.mat-button-toggle-checked{background-color:#a7a8aa}.mat-button-toggle-checked .mat-button-toggle-label-content:before{font-family:\"Font Awesome 5 Free\";font-weight:900;content:\"\\f00c\";padding-right:.5625em}.mat-button-toggle-group .mat-button-toggle-label-content{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1em;line-height:20px;color:#1c1b1f;letter-spacing:.00625em}@media (max-width: 768px){.mat-button-toggle-group .mat-button-toggle-label-content{max-width:8ch;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;position:relative}}.cdk-overlay-pane{width:100%;min-width:312px}.ieeesa-dynamic-form__actions{display:flex;flex-direction:row-reverse;padding-top:15px}.ieeesa-dynamic-form__actions--left-btn{margin-right:2%}.ieeesa-dynamic-form__form-field{padding-top:20px}\n"] }]
1908
+ }], ctorParameters: function () { return [{ type: i3.FormBuilder }]; }, propDecorators: { formFields: [{
1719
1909
  type: ViewChildren,
1720
- args: [SearchComponent$1]
1721
- }], isSortNeeded: [{
1722
- type: Input
1723
- }], dropdownOptions: [{
1910
+ args: [DynamicFormFieldDirective]
1911
+ }], formGroups: [{
1724
1912
  type: Input
1725
- }], selectedOptions: [{
1913
+ }], submitResponse: [{
1726
1914
  type: Input
1727
- }], formControlName: [{
1915
+ }], searchResponse: [{
1728
1916
  type: Input
1729
- }], isMultiLevel: [{
1917
+ }], colWidth: [{
1730
1918
  type: Input
1731
- }], isLabelAlignedLeft: [{
1919
+ }], isLegendVisible: [{
1732
1920
  type: Input
1733
- }], selectLabel: [{
1921
+ }], rightButtonLabel: [{
1734
1922
  type: Input
1735
- }], isMultiSelect: [{
1923
+ }], leftButtonLabel: [{
1736
1924
  type: Input
1737
- }], isDisabled: [{
1925
+ }], isSubmitButtonDisabled: [{
1738
1926
  type: Input
1739
- }], isSearch: [{
1927
+ }], isLeftButtonDisabled: [{
1740
1928
  type: Input
1741
- }], placeholderText: [{
1929
+ }], isLeftButtonNeeded: [{
1742
1930
  type: Input
1743
- }], optionSelected: [{
1931
+ }], formSubmit: [{
1744
1932
  type: Output
1745
- }], optionSearched: [{
1933
+ }], formChange: [{
1934
+ type: Output
1935
+ }], formInput: [{
1936
+ type: Output
1937
+ }], formLeftButtonClicked: [{
1938
+ type: Output
1939
+ }], formSearchApply: [{
1940
+ type: Output
1941
+ }], formGroupsReference: [{
1942
+ type: Output
1943
+ }], dropdownChange: [{
1944
+ type: Output
1945
+ }], formDateSelected: [{
1946
+ type: Output
1947
+ }], formSelectSearch: [{
1948
+ type: Output
1949
+ }], formControlChange: [{
1950
+ type: Output
1951
+ }], formAutoCompleteSearch: [{
1952
+ type: Output
1953
+ }], autoCompleteOptionSelected: [{
1954
+ type: Output
1955
+ }], formAfterContentInit: [{
1956
+ type: Output
1957
+ }], formSelectedDateRange: [{
1746
1958
  type: Output
1747
1959
  }] } });
1748
1960
 
1749
- var SearchType;
1750
- (function (SearchType) {
1751
- // eslint-disable-next-line no-unused-vars
1752
- SearchType["EMAIL"] = "EMAIL";
1753
- // eslint-disable-next-line no-unused-vars
1754
- SearchType["AUTO"] = "AUTO";
1755
- // eslint-disable-next-line no-unused-vars
1756
- SearchType["ON_CLICK"] = "ON_CLICK";
1757
- })(SearchType || (SearchType = {}));
1758
-
1759
- var CalendarType;
1760
- (function (CalendarType) {
1761
- // eslint-disable-next-line no-unused-vars
1762
- CalendarType[CalendarType["SINGLE_DATE_SELECTION"] = 1] = "SINGLE_DATE_SELECTION";
1763
- // eslint-disable-next-line no-unused-vars
1764
- CalendarType[CalendarType["CALENDAR"] = 2] = "CALENDAR";
1765
- // eslint-disable-next-line no-unused-vars
1766
- CalendarType[CalendarType["DATE_RANGE_SELECTION"] = 3] = "DATE_RANGE_SELECTION";
1767
- })(CalendarType || (CalendarType = {}));
1768
-
1769
- var FormControlType;
1770
- (function (FormControlType) {
1771
- // eslint-disable-next-line no-unused-vars
1772
- FormControlType["INPUT"] = "INPUT";
1773
- // eslint-disable-next-line no-unused-vars
1774
- FormControlType["TEXT_AREA"] = "TEXT_AREA";
1775
- // eslint-disable-next-line no-unused-vars
1776
- FormControlType["SELECT"] = "SELECT";
1777
- // eslint-disable-next-line no-unused-vars
1778
- FormControlType["SEARCH"] = "SEARCH";
1779
- // eslint-disable-next-line no-unused-vars
1780
- FormControlType["DATE"] = "DATE";
1781
- // eslint-disable-next-line no-unused-vars
1782
- FormControlType["CHECKBOX"] = "CHECKBOX";
1783
- // eslint-disable-next-line no-unused-vars
1784
- FormControlType["RADIO"] = "RADIO";
1785
- // eslint-disable-next-line no-unused-vars
1786
- FormControlType["AUTO_COMPLETE"] = "AUTO_COMPLETE";
1787
- })(FormControlType || (FormControlType = {}));
1788
-
1789
- /**
1790
- * Creates form fields configuration and form group based on passed parameters.
1791
- * @export
1792
- * @class FormUtilityService
1793
- */
1794
- class FormUtilityService {
1795
- // eslint-disable-next-line no-unused-vars, no-empty-function
1796
- constructor(fb) {
1797
- this.fb = fb;
1798
- }
1799
- /**
1800
- * Returns form fields configuration based on passed control name and type.
1801
- * @param {string} controlName
1802
- * @param {string} controlType
1803
- * @return {FieldConfig}
1804
- * @memberof FormUtilityService
1805
- */
1806
- getFormFieldConfig(controlName, controlType) {
1807
- return {
1808
- controlName: controlName,
1809
- type: controlType,
1810
- };
1811
- }
1812
- /**
1813
- * Creates and returns form group with passed control name added.
1814
- * @param {string} controlName
1815
- * @return {FormGroup}
1816
- * @memberof FormUtilityService
1817
- */
1818
- getFormGroup(controlName) {
1819
- return this.fb.group({
1820
- [controlName]: [],
1821
- });
1822
- }
1823
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: FormUtilityService, deps: [{ token: i3.FormBuilder }], target: i0.ɵɵFactoryTarget.Injectable }); }
1824
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: FormUtilityService, providedIn: 'root' }); }
1825
- }
1826
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: FormUtilityService, decorators: [{
1827
- type: Injectable,
1828
- args: [{
1829
- providedIn: 'root',
1830
- }]
1831
- }], ctorParameters: function () { return [{ type: i3.FormBuilder }]; } });
1832
-
1833
1961
  /**
1834
- * DatepickerService is used in date-picker and date-picker-header component to get date range, isRangeSelection, and selected date(s).
1835
- * @export
1836
- * @class DatepickerService
1962
+ * The NotificationComponent displays a notification with a heading, title, content, and an optional button.
1963
+ * Component can be reused in page not found, access denied, session expired notification, logged out pages.
1964
+ * @class NotificationComponent
1837
1965
  */
1838
- class DatepickerService {
1966
+ class NotificationComponent {
1839
1967
  constructor() {
1840
- this.destroy$ = new Subject();
1841
- this.range = new Subject();
1842
- this.range$ = this.range.asObservable();
1843
- this.isRangeSelection = false;
1844
- this.range$?.pipe(takeUntil(this.destroy$)).subscribe((range) => {
1845
- this.selectedRange = {
1846
- start: range.start,
1847
- end: range.end,
1848
- };
1849
- });
1850
- }
1851
- /**
1852
- * Returns the calendar type.
1853
- * @return {boolean}
1854
- * @memberof DatepickerService
1855
- */
1856
- getCalendarType() {
1857
- return this.isRangeSelection;
1858
- }
1859
- /**
1860
- * Returns selected range
1861
- * @return {({ start: Date | string; end: Date | string })}
1862
- * @memberof DatepickerService
1863
- */
1864
- getSelectedRange() {
1865
- return this.selectedRange;
1968
+ this.buttonIcon = true;
1969
+ this.notify = new EventEmitter();
1866
1970
  }
1867
1971
  /**
1868
- * Implementation of ngOnDestroy lifecycle hook method to unsubscribe the open observable subscriptions.
1869
- * @memberof DatePickerHeaderComponent
1972
+ * Emits the notify event on clicking notify button.
1870
1973
  */
1871
- ngOnDestroy() {
1872
- this.destroy$.next(true);
1873
- this.destroy$.unsubscribe();
1974
+ onClick() {
1975
+ this.notify.emit();
1874
1976
  }
1875
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: DatepickerService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
1876
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: DatepickerService, providedIn: 'root' }); }
1977
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: NotificationComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
1978
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.3", type: NotificationComponent, isStandalone: true, selector: "ieeesa-notification", inputs: { heading: "heading", title: "title", content: "content", buttonLabel: "buttonLabel", buttonIcon: "buttonIcon" }, outputs: { notify: "notify" }, ngImport: i0, template: "<div class=\"ieeesa-notification flex-align-center row\">\r\n <div class=\"ieeesa-notification__body col-md-4 col-lg-4 p-4\">\r\n <h1\r\n class=\"ieeesa-notification__heading ieeesa-display-lg-57 text-capitalize\"\r\n *ngIf=\"heading\"\r\n >\r\n {{ heading }}\r\n </h1>\r\n <p class=\"ieeesa-notification__title ieeesa-title-lg-bold-24\">\r\n {{ title }}\r\n </p>\r\n <p class=\"ieeesa-notification__message ieeesa-title-md-18\">{{ content }}</p>\r\n <button\r\n mat-button\r\n color=\"primary\"\r\n class=\"ieeesa-notification__button ieeesa-label-lg-bold-16 mat-primary-button\"\r\n (click)=\"onClick()\"\r\n >\r\n <i *ngIf=\"buttonIcon\" class=\"fa-solid fa-arrow-left\"></i>\r\n {{ buttonLabel }}\r\n </button>\r\n </div>\r\n</div>\r\n", styles: [".ieeesa-subtitle{text-align:left;font-family:Calibri Regular;font-size:1.56em;letter-spacing:0;color:#000;opacity:1}.ieeesa-body{text-align:left;font-family:Calibri Regular;font-size:1.25em;letter-spacing:0;color:#000;opacity:1}.ieeesa-display-lg-57{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:3.5625em;line-height:64px;color:#000;letter-spacing:0}.ieeesa-display-md-47{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.9375em;line-height:52px;color:#000;letter-spacing:0}.ieeesa-display-sm-38{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.375em;line-height:44px;color:#000;letter-spacing:0}.ieeesa-headline-lg-34{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.125em;line-height:40px;color:#000;letter-spacing:0}.ieeesa-headline-md-30{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.875em;line-height:36px;color:#000;letter-spacing:0}.ieeesa-headline-sm-26{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.625em;line-height:32px;color:#000;letter-spacing:0}.ieeesa-title-lg-bold-24{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1.5em;line-height:28px;color:#000;letter-spacing:0}.ieeesa-title-lg-24{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.5em;line-height:28px;color:#000;letter-spacing:0}.ieeesa-title-md-18{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.125em;line-height:24px;color:#000;letter-spacing:.009375em}.ieeesa-title-sm-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-lg-bold-16{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-lg-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-md-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875em;line-height:16px;color:#000;letter-spacing:.03125em}.ieeesa-label-sm-13{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.8125em;line-height:16px;color:#000;letter-spacing:.03125em}.ieeesa-body-lg-bold-18{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1.125em;line-height:24px;color:#000;letter-spacing:.03125em}.ieeesa-body-lg-18{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.125em;line-height:24px;color:#000;letter-spacing:.03125em}.ieeesa-body-md-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1em;line-height:20px;color:#000;letter-spacing:.015625em}.ieeesa-body-sm-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875em;line-height:16px;color:#000;letter-spacing:.025em}.ieeesa-title-inter-lg-bold-24{font-family:Inter Bold;font-style:normal;font-weight:700;font-size:1.5em;line-height:29px;color:#000;letter-spacing:0}.mat-mdc-button.mat-mdc-button-base.mat-primary-button,.mat-mdc-button.mat-mdc-button-base.mat-secondary-button{min-width:103px;width:auto;min-height:40px;height:auto;border-radius:3px;text-align:center;padding:.625em 1.5em;border:none;font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.mat-mdc-button.mat-mdc-button-base>.mat-icon{margin-right:11px}.mat-mdc-button.mat-mdc-button-base.mat-primary-button{background-color:#00629b;color:#fff}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:hover{background-color:#003e65}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:active{background-color:#00629b}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:disabled{background-color:#1c1b1f1f}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button{color:#fff;background:#a7a8aa;box-shadow:0 1px 2px #0000004d,0 2px 6px 2px #00000026}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:hover{background:#a7a8aa}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:active{background:rgba(29,25,43,.12)}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:disabled{background:rgba(28,27,31,.12);color:#1c1b1f;opacity:.38}.ieeesa-text-button{color:#cac4d0;background:none;border:none}.flex-align-center{display:flex;align-items:center;justify-content:center}.mat-button-toggle-checked{background-color:#a7a8aa}.mat-button-toggle-checked .mat-button-toggle-label-content:before{font-family:\"Font Awesome 5 Free\";font-weight:900;content:\"\\f00c\";padding-right:.5625em}.mat-button-toggle-group .mat-button-toggle-label-content{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1em;line-height:20px;color:#1c1b1f;letter-spacing:.00625em}@media (max-width: 768px){.mat-button-toggle-group .mat-button-toggle-label-content{max-width:8ch;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;position:relative}}.cdk-overlay-pane{width:100%;min-width:312px}.ieeesa-notification{text-align:center}.ieeesa-notification__body{box-shadow:0 1px 2px #0000004d,0 2px 6px 2px #00000026;border-radius:.5rem;margin:0 auto;font-family:Calibri Regular;padding:2em 0;background-color:#fff;height:max-content;display:flex;flex-direction:column;align-items:center}.ieeesa-notification__heading{color:#0188aa;margin:0;padding-bottom:.5rem}.ieeesa-notification__title{color:#0188aa;padding-bottom:2.5rem;margin:0}.ieeesa-notification__message{color:#002c37;letter-spacing:.03125em;padding-bottom:1rem;margin:0}.ieeesa-notification__button{margin-bottom:.5rem;color:#fff}.ieeesa-notification__button i{padding-right:.5rem}@media screen and (max-width: 576px){.ieeesa-notification__body{width:80%}}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: MatIconModule }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i8.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }] }); }
1877
1979
  }
1878
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: DatepickerService, decorators: [{
1879
- type: Injectable,
1880
- args: [{
1881
- providedIn: 'root',
1882
- }]
1883
- }], ctorParameters: function () { return []; } });
1980
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: NotificationComponent, decorators: [{
1981
+ type: Component,
1982
+ args: [{ selector: 'ieeesa-notification', standalone: true, imports: [CommonModule, MatIconModule, MatButtonModule], template: "<div class=\"ieeesa-notification flex-align-center row\">\r\n <div class=\"ieeesa-notification__body col-md-4 col-lg-4 p-4\">\r\n <h1\r\n class=\"ieeesa-notification__heading ieeesa-display-lg-57 text-capitalize\"\r\n *ngIf=\"heading\"\r\n >\r\n {{ heading }}\r\n </h1>\r\n <p class=\"ieeesa-notification__title ieeesa-title-lg-bold-24\">\r\n {{ title }}\r\n </p>\r\n <p class=\"ieeesa-notification__message ieeesa-title-md-18\">{{ content }}</p>\r\n <button\r\n mat-button\r\n color=\"primary\"\r\n class=\"ieeesa-notification__button ieeesa-label-lg-bold-16 mat-primary-button\"\r\n (click)=\"onClick()\"\r\n >\r\n <i *ngIf=\"buttonIcon\" class=\"fa-solid fa-arrow-left\"></i>\r\n {{ buttonLabel }}\r\n </button>\r\n </div>\r\n</div>\r\n", styles: [".ieeesa-subtitle{text-align:left;font-family:Calibri Regular;font-size:1.56em;letter-spacing:0;color:#000;opacity:1}.ieeesa-body{text-align:left;font-family:Calibri Regular;font-size:1.25em;letter-spacing:0;color:#000;opacity:1}.ieeesa-display-lg-57{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:3.5625em;line-height:64px;color:#000;letter-spacing:0}.ieeesa-display-md-47{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.9375em;line-height:52px;color:#000;letter-spacing:0}.ieeesa-display-sm-38{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.375em;line-height:44px;color:#000;letter-spacing:0}.ieeesa-headline-lg-34{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.125em;line-height:40px;color:#000;letter-spacing:0}.ieeesa-headline-md-30{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.875em;line-height:36px;color:#000;letter-spacing:0}.ieeesa-headline-sm-26{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.625em;line-height:32px;color:#000;letter-spacing:0}.ieeesa-title-lg-bold-24{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1.5em;line-height:28px;color:#000;letter-spacing:0}.ieeesa-title-lg-24{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.5em;line-height:28px;color:#000;letter-spacing:0}.ieeesa-title-md-18{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.125em;line-height:24px;color:#000;letter-spacing:.009375em}.ieeesa-title-sm-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-lg-bold-16{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-lg-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-md-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875em;line-height:16px;color:#000;letter-spacing:.03125em}.ieeesa-label-sm-13{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.8125em;line-height:16px;color:#000;letter-spacing:.03125em}.ieeesa-body-lg-bold-18{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1.125em;line-height:24px;color:#000;letter-spacing:.03125em}.ieeesa-body-lg-18{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.125em;line-height:24px;color:#000;letter-spacing:.03125em}.ieeesa-body-md-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1em;line-height:20px;color:#000;letter-spacing:.015625em}.ieeesa-body-sm-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875em;line-height:16px;color:#000;letter-spacing:.025em}.ieeesa-title-inter-lg-bold-24{font-family:Inter Bold;font-style:normal;font-weight:700;font-size:1.5em;line-height:29px;color:#000;letter-spacing:0}.mat-mdc-button.mat-mdc-button-base.mat-primary-button,.mat-mdc-button.mat-mdc-button-base.mat-secondary-button{min-width:103px;width:auto;min-height:40px;height:auto;border-radius:3px;text-align:center;padding:.625em 1.5em;border:none;font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1em;line-height:20px;color:#000;letter-spacing:.00625em}.mat-mdc-button.mat-mdc-button-base>.mat-icon{margin-right:11px}.mat-mdc-button.mat-mdc-button-base.mat-primary-button{background-color:#00629b;color:#fff}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:hover{background-color:#003e65}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:active{background-color:#00629b}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:disabled{background-color:#1c1b1f1f}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button{color:#fff;background:#a7a8aa;box-shadow:0 1px 2px #0000004d,0 2px 6px 2px #00000026}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:hover{background:#a7a8aa}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:active{background:rgba(29,25,43,.12)}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:disabled{background:rgba(28,27,31,.12);color:#1c1b1f;opacity:.38}.ieeesa-text-button{color:#cac4d0;background:none;border:none}.flex-align-center{display:flex;align-items:center;justify-content:center}.mat-button-toggle-checked{background-color:#a7a8aa}.mat-button-toggle-checked .mat-button-toggle-label-content:before{font-family:\"Font Awesome 5 Free\";font-weight:900;content:\"\\f00c\";padding-right:.5625em}.mat-button-toggle-group .mat-button-toggle-label-content{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1em;line-height:20px;color:#1c1b1f;letter-spacing:.00625em}@media (max-width: 768px){.mat-button-toggle-group .mat-button-toggle-label-content{max-width:8ch;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;position:relative}}.cdk-overlay-pane{width:100%;min-width:312px}.ieeesa-notification{text-align:center}.ieeesa-notification__body{box-shadow:0 1px 2px #0000004d,0 2px 6px 2px #00000026;border-radius:.5rem;margin:0 auto;font-family:Calibri Regular;padding:2em 0;background-color:#fff;height:max-content;display:flex;flex-direction:column;align-items:center}.ieeesa-notification__heading{color:#0188aa;margin:0;padding-bottom:.5rem}.ieeesa-notification__title{color:#0188aa;padding-bottom:2.5rem;margin:0}.ieeesa-notification__message{color:#002c37;letter-spacing:.03125em;padding-bottom:1rem;margin:0}.ieeesa-notification__button{margin-bottom:.5rem;color:#fff}.ieeesa-notification__button i{padding-right:.5rem}@media screen and (max-width: 576px){.ieeesa-notification__body{width:80%}}\n"] }]
1983
+ }], propDecorators: { heading: [{
1984
+ type: Input
1985
+ }], title: [{
1986
+ type: Input
1987
+ }], content: [{
1988
+ type: Input
1989
+ }], buttonLabel: [{
1990
+ type: Input
1991
+ }], buttonIcon: [{
1992
+ type: Input
1993
+ }], notify: [{
1994
+ type: Output
1995
+ }] } });
1884
1996
 
1885
1997
  class PresentationModule {
1886
1998
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: PresentationModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }