@skysoftware-co/bayan-hr-widgets-ui 1.0.38 → 1.0.39

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.
@@ -4,14 +4,14 @@ import * as i1$1 from 'devextreme-angular';
4
4
  import { DxTooltipModule, DxPopupModule, DxScrollViewModule, DxLoadPanelModule, DxCalendarModule, DxDataGridModule, DxTextBoxModule, DxDataGridComponent } from 'devextreme-angular';
5
5
  import * as i2$1 from '@angular/common';
6
6
  import { NgClass, DecimalPipe, DatePipe, LowerCasePipe, CommonModule } from '@angular/common';
7
- import * as i1$2 from '@fortawesome/angular-fontawesome';
7
+ import * as i3 from '@fortawesome/angular-fontawesome';
8
8
  import { FontAwesomeModule } from '@fortawesome/angular-fontawesome';
9
9
  import { BayanEmployeeBadgeComponent } from '@skysoftware-co/bayan-components-ui';
10
10
  import { SkyShortcutIconComponent, SkySectionDividerComponent, SkyEmptyDesignCardComponent, SkyWidgetSectionItemComponent } from '@skysoftware-co/sky-components-ui';
11
11
  import * as i1 from '@angular/common/http';
12
12
  import { HttpParams } from '@angular/common/http';
13
13
  import { map, shareReplay, catchError, throwError, lastValueFrom, forkJoin } from 'rxjs';
14
- import { faCakeCandles, faTreePalm, faCalendarStar, faMoneyCheckDollarPen, faMemoCircleInfo, faPhone, faBolt, faLanguage, faEarthAfrica, faHouse, faFileSignature, faSackDollar, faEnvelopeOpenDollar, faXmark, faFolderArrowDown, faUsersRays, faFileCertificate, faUsersLine, faIslandTropical, faTicketsAirline, faNotesMedical, faGrid2Plus } from '@fortawesome/pro-light-svg-icons';
14
+ import { faCakeCandles, faTreePalm, faCalendarStar, faMoneyCheckDollarPen, faMemoCircleInfo, faPhone, faBolt, faLanguage, faEarthAfrica, faHouse, faFileSignature, faSackDollar, faEnvelopeOpenDollar, faXmark, faFolderArrowDown, faUsersRays, faFileCertificate, faUsersLine, faIslandTropical, faTicketsAirline, faNotesMedical, faGrid2Plus, faFileLines } from '@fortawesome/pro-light-svg-icons';
15
15
  import * as i2 from 'devextreme-angular/core';
16
16
  import { faCircle, faCalendarDays, faEye } from '@fortawesome/pro-regular-svg-icons';
17
17
  import moment from 'moment';
@@ -788,31 +788,6 @@ var ThereIsNoDegreesYet = "Il n'y a pas encore de diplomes";
788
788
  var ThereIsNoExperiencesYet = "Il n'y a pas encore d'experiences";
789
789
  var ThereIsNoDependentsYet = "Il n'y a pas encore de personnes à charge";
790
790
  var DependentTypeName = "Type de personne à charge";
791
- var Vacations = "Vacances";
792
- var Indemnity = "Indemnité";
793
- var MedicalInsurance = "Assurance médicale";
794
- var Tickets = "Billets";
795
- var Others = "Autres";
796
- var Type = "Type";
797
- var Entitlement = "Droit";
798
- var IndemnityEligibility = "Admissibilité à l'indemnisation";
799
- var OvertimeEligibility = "Admissibilité aux heures supplémentaires";
800
- var SocialSecurityEligibility = "Admissibilité à la sécurité sociale";
801
- var Class = "Classe";
802
- var Sector = "Secteur";
803
- var Me = "Moi";
804
- var Eligible = "Admissible";
805
- var NotEligible = "Non éligible";
806
- var Member = "Membre";
807
- var NotMember = "Non membre";
808
- var NotCoveredByMedicalInsurance = "Non couvert par l'assurance médicale";
809
- var NoTicketEntitlement = "Aucun droit au billet";
810
- var CoverageDate = "Date de couverture";
811
- var TotalEmployeeShare = "Part totale des employés";
812
- var TotalEmployerShare = "Part totale de l'employeur";
813
- var Dependents = "Personnes à charge";
814
- var NotEntitled = "Non éligible au droit";
815
- var ThereAreNoDependentsYet = "Il n'y a pas encore de personnes à charge";
816
791
  var fr = {
817
792
  ReportingTo: ReportingTo,
818
793
  NotAnknown: NotAnknown,
@@ -936,36 +911,7 @@ var fr = {
936
911
  ThereIsNoDegreesYet: ThereIsNoDegreesYet,
937
912
  ThereIsNoExperiencesYet: ThereIsNoExperiencesYet,
938
913
  ThereIsNoDependentsYet: ThereIsNoDependentsYet,
939
- DependentTypeName: DependentTypeName,
940
- Vacations: Vacations,
941
- Indemnity: Indemnity,
942
- MedicalInsurance: MedicalInsurance,
943
- Tickets: Tickets,
944
- Others: Others,
945
- Type: Type,
946
- Entitlement: Entitlement,
947
- IndemnityEligibility: IndemnityEligibility,
948
- OvertimeEligibility: OvertimeEligibility,
949
- SocialSecurityEligibility: SocialSecurityEligibility,
950
- Class: Class,
951
- Sector: Sector,
952
- Me: Me,
953
- Eligible: Eligible,
954
- NotEligible: NotEligible,
955
- Member: Member,
956
- NotMember: NotMember,
957
- "There'sNoInformationInThisSectionYet": "Il n'y a pas encore d'informations dans cette section",
958
- NotCoveredByMedicalInsurance: NotCoveredByMedicalInsurance,
959
- NoTicketEntitlement: NoTicketEntitlement,
960
- "Number": "Nombre",
961
- CoverageDate: CoverageDate,
962
- TotalEmployeeShare: TotalEmployeeShare,
963
- TotalEmployerShare: TotalEmployerShare,
964
- Dependents: Dependents,
965
- NotEntitled: NotEntitled,
966
- "TicketEvery{{value}}Months": "Billet tous les {{value}} mois",
967
- "TicketEvery{{value}}Month": "Billet tous les {{value}} mois",
968
- ThereAreNoDependentsYet: ThereAreNoDependentsYet
914
+ DependentTypeName: DependentTypeName
969
915
  };
970
916
 
971
917
  const BUILT_IN_LEXICONS = { en, ar, fr };
@@ -1333,6 +1279,36 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImpo
1333
1279
  }]
1334
1280
  }] });
1335
1281
 
1282
+ class ProfileDocumentsCacheService {
1283
+ baseUrl = '';
1284
+ dependentDocuments$ = null;
1285
+ getDependentDocuments(baseUrl) {
1286
+ return this.baseUrl === baseUrl ? this.dependentDocuments$ : null;
1287
+ }
1288
+ setDependentDocuments(baseUrl, value) {
1289
+ this.ensureBaseUrl(baseUrl);
1290
+ this.dependentDocuments$ = value;
1291
+ }
1292
+ clear() {
1293
+ this.baseUrl = '';
1294
+ this.dependentDocuments$ = null;
1295
+ }
1296
+ ensureBaseUrl(baseUrl) {
1297
+ if (this.baseUrl && this.baseUrl !== baseUrl) {
1298
+ this.clear();
1299
+ }
1300
+ this.baseUrl = baseUrl;
1301
+ }
1302
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: ProfileDocumentsCacheService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
1303
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: ProfileDocumentsCacheService, providedIn: 'root' });
1304
+ }
1305
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: ProfileDocumentsCacheService, decorators: [{
1306
+ type: Injectable,
1307
+ args: [{
1308
+ providedIn: 'root'
1309
+ }]
1310
+ }] });
1311
+
1336
1312
  class HRSelfWidgetsService {
1337
1313
  http;
1338
1314
  bankInformationCacheService;
@@ -1341,8 +1317,9 @@ class HRSelfWidgetsService {
1341
1317
  personalInformationCacheService;
1342
1318
  qualificationsCacheService;
1343
1319
  profileEmployeeDependentsCachService;
1320
+ profileDocumentsCacheService;
1344
1321
  headers = { 'api-version': '1' };
1345
- constructor(http, bankInformationCacheService, entitlementsCacheService, jobInformationCacheService, personalInformationCacheService, qualificationsCacheService, profileEmployeeDependentsCachService) {
1322
+ constructor(http, bankInformationCacheService, entitlementsCacheService, jobInformationCacheService, personalInformationCacheService, qualificationsCacheService, profileEmployeeDependentsCachService, profileDocumentsCacheService) {
1346
1323
  this.http = http;
1347
1324
  this.bankInformationCacheService = bankInformationCacheService;
1348
1325
  this.entitlementsCacheService = entitlementsCacheService;
@@ -1350,6 +1327,7 @@ class HRSelfWidgetsService {
1350
1327
  this.personalInformationCacheService = personalInformationCacheService;
1351
1328
  this.qualificationsCacheService = qualificationsCacheService;
1352
1329
  this.profileEmployeeDependentsCachService = profileEmployeeDependentsCachService;
1330
+ this.profileDocumentsCacheService = profileDocumentsCacheService;
1353
1331
  }
1354
1332
  getMainDetails(baseUrl) {
1355
1333
  return this.http.get(`${baseUrl}/hr/widgets/me/main-details`, {
@@ -1721,7 +1699,22 @@ class HRSelfWidgetsService {
1721
1699
  this.qualificationsCacheService.setExperiences(baseUrl, request$);
1722
1700
  return request$;
1723
1701
  }
1724
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: HRSelfWidgetsService, deps: [{ token: i1.HttpClient }, { token: BankInformationCacheService }, { token: EntitlementsCacheService }, { token: JobInformationCacheService }, { token: PersonalInformationCacheService }, { token: QualificationsCacheService }, { token: ProfileEmployeeDependentsCach }], target: i0.ɵɵFactoryTarget.Injectable });
1702
+ getDependentDocuments(baseUrl, forceRefresh = false) {
1703
+ if (!forceRefresh) {
1704
+ const cached$ = this.profileDocumentsCacheService.getDependentDocuments(baseUrl);
1705
+ if (cached$)
1706
+ return cached$;
1707
+ }
1708
+ const request$ = this.http
1709
+ .get(`${baseUrl}/api/hr/widgets/me/profile/documents/dependents`, { headers: this.headers })
1710
+ .pipe(map(res => res?.ResponseData ?? []), shareReplay(1), catchError(error => {
1711
+ this.profileDocumentsCacheService.clear();
1712
+ return throwError(() => error);
1713
+ }));
1714
+ this.profileDocumentsCacheService.setDependentDocuments(baseUrl, request$);
1715
+ return request$;
1716
+ }
1717
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: HRSelfWidgetsService, deps: [{ token: i1.HttpClient }, { token: BankInformationCacheService }, { token: EntitlementsCacheService }, { token: JobInformationCacheService }, { token: PersonalInformationCacheService }, { token: QualificationsCacheService }, { token: ProfileEmployeeDependentsCach }, { token: ProfileDocumentsCacheService }], target: i0.ɵɵFactoryTarget.Injectable });
1725
1718
  static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: HRSelfWidgetsService, providedIn: 'root' });
1726
1719
  }
1727
1720
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: HRSelfWidgetsService, decorators: [{
@@ -1729,7 +1722,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImpo
1729
1722
  args: [{
1730
1723
  providedIn: 'root'
1731
1724
  }]
1732
- }], ctorParameters: () => [{ type: i1.HttpClient }, { type: BankInformationCacheService }, { type: EntitlementsCacheService }, { type: JobInformationCacheService }, { type: PersonalInformationCacheService }, { type: QualificationsCacheService }, { type: ProfileEmployeeDependentsCach }] });
1725
+ }], ctorParameters: () => [{ type: i1.HttpClient }, { type: BankInformationCacheService }, { type: EntitlementsCacheService }, { type: JobInformationCacheService }, { type: PersonalInformationCacheService }, { type: QualificationsCacheService }, { type: ProfileEmployeeDependentsCach }, { type: ProfileDocumentsCacheService }] });
1733
1726
 
1734
1727
  class HRConstantsService {
1735
1728
  defaultVacationBalanceColor = '#727070';
@@ -1965,7 +1958,7 @@ class HRCardHeaderComponent {
1965
1958
  iconClass = 'fs-6 text-primary pe-2';
1966
1959
  titleClass = 'text-center table-header-lg fw-medium';
1967
1960
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: HRCardHeaderComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
1968
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.20", type: HRCardHeaderComponent, isStandalone: true, selector: "hr-card-header", inputs: { icon: "icon", title: "title", containerClass: "containerClass", iconClass: "iconClass", titleClass: "titleClass" }, ngImport: i0, template: "<div [class]=\"containerClass\">\r\n <fa-icon [icon]=\"icon\" [class]=\"iconClass\"></fa-icon>\r\n <span [class]=\"titleClass\">{{ title }}</span>\r\n</div>\r\n", dependencies: [{ kind: "ngmodule", type: FontAwesomeModule }, { kind: "component", type: i1$2.FaIconComponent, selector: "fa-icon", inputs: ["icon", "title", "animation", "mask", "flip", "size", "pull", "border", "inverse", "symbol", "rotate", "fixedWidth", "transform", "a11yRole"] }] });
1961
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.20", type: HRCardHeaderComponent, isStandalone: true, selector: "hr-card-header", inputs: { icon: "icon", title: "title", containerClass: "containerClass", iconClass: "iconClass", titleClass: "titleClass" }, ngImport: i0, template: "<div [class]=\"containerClass\">\r\n <fa-icon [icon]=\"icon\" [class]=\"iconClass\"></fa-icon>\r\n <span [class]=\"titleClass\">{{ title }}</span>\r\n</div>\r\n", dependencies: [{ kind: "ngmodule", type: FontAwesomeModule }, { kind: "component", type: i3.FaIconComponent, selector: "fa-icon", inputs: ["icon", "title", "animation", "mask", "flip", "size", "pull", "border", "inverse", "symbol", "rotate", "fixedWidth", "transform", "a11yRole"] }] });
1969
1962
  }
1970
1963
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: HRCardHeaderComponent, decorators: [{
1971
1964
  type: Component,
@@ -2003,7 +1996,7 @@ class HREventItemComponent {
2003
1996
  isBirthday(event) { return event.EventType === EventTypeEnum.Birthdays; }
2004
1997
  hasPropertyBadge(event) { return this.showProperty && !!event.PropertySymbol; }
2005
1998
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: HREventItemComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
2006
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.20", type: HREventItemComponent, isStandalone: true, selector: "hr-event-item", inputs: { events: "events", showDates: "showDates", showProperty: "showProperty", selectedLanguage: "selectedLanguage", selectedEventType: "selectedEventType", weekendWarningDescription: "weekendWarningDescription", eventIconClass: "eventIconClass", eventNameBoldClass: "eventNameBoldClass", eventDescriptionClass: "eventDescriptionClass", propertyBadgeClass: "propertyBadgeClass", noEventsTextClass: "noEventsTextClass", warningTextClass: "warningTextClass", dateFormat: "dateFormat" }, ngImport: i0, template: "@if (events.length > 0) {\r\n<div>\r\n @for (event of events; track event) {\r\n <div [class]=\"'d-flex lh-base ' + (showDates ? 'my-3' : 'my-1')\">\r\n <fa-icon [icon]=\"isBirthday(event) ? cakeCandles : treePalm\"\r\n [class]=\"eventIconClass\"\r\n [title]=\"isBirthday(event) ? ('Birthday' | HRTranslate) : ('PublicHoliday' | HRTranslate)\">\r\n </fa-icon>\r\n\r\n <div>\r\n @if (isBirthday(event)) {\r\n @if (hasPropertyBadge(event)) {\r\n <span [class]=\"propertyBadgeClass\" [title]=\"event.PropertyName!\">{{ event.PropertySymbol }}</span>\r\n }\r\n @if (isArabic) {\r\n <span>{{ 'Birthday' | HRTranslate }}</span>\r\n <span [class]=\"eventNameBoldClass\">{{ ' ' + event.Name + ' ' }}</span>\r\n @if (event.IsIn2Days) { <span>{{ 'During' | HRTranslate }} </span> }\r\n } @else {\r\n <span [class]=\"eventNameBoldClass\">{{ event.Name }}'s </span>\r\n <span>{{ ('Birthday' | HRTranslate) + ' ' + ((event.IsIn2Days ? ('isIn' | HRTranslate) : ('is' | HRTranslate)) | lowercase) }} </span>\r\n }\r\n } @else {\r\n @if (isArabic) {\r\n <span [class]=\"eventNameBoldClass\">{{ event.Name }}</span> <span> {{ ('In' | HRTranslate) + ' ' }}</span>\r\n } @else {\r\n <span [class]=\"eventNameBoldClass\">{{ event.Name }} </span><span>{{ ' ' + (('is' | HRTranslate) | lowercase) }} </span>\r\n }\r\n }\r\n\r\n <span [class]=\"eventDescriptionClass\">{{ event.Description | HRTranslate }}</span>\r\n\r\n @if (!isBirthday(event) && showDates && event.StartDate && event.EndDate) {\r\n <span>{{ ' (' + (event.StartDate | date:dateFormat) + ' - ' + (event.EndDate | date:dateFormat) + ')' }}</span>\r\n }\r\n </div>\r\n </div>\r\n }\r\n</div>\r\n} @else {\r\n@if (weekendWarningDescription) {\r\n<div [class]=\"warningTextClass + (showDates ? ' pt-5 my-5' : '')\">{{ weekendWarningDescription | HRTranslate }}</div>\r\n} @else {\r\n<div [class]=\"noEventsTextClass + (showDates ? ' pt-5 my-5' : '')\">{{ 'NoEvents' | HRTranslate }}</div>\r\n}\r\n}\r\n", dependencies: [{ kind: "ngmodule", type: FontAwesomeModule }, { kind: "component", type: i1$2.FaIconComponent, selector: "fa-icon", inputs: ["icon", "title", "animation", "mask", "flip", "size", "pull", "border", "inverse", "symbol", "rotate", "fixedWidth", "transform", "a11yRole"] }, { kind: "pipe", type: DatePipe, name: "date" }, { kind: "pipe", type: LowerCasePipe, name: "lowercase" }, { kind: "pipe", type: HRTranslatePipe, name: "HRTranslate" }] });
1999
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.20", type: HREventItemComponent, isStandalone: true, selector: "hr-event-item", inputs: { events: "events", showDates: "showDates", showProperty: "showProperty", selectedLanguage: "selectedLanguage", selectedEventType: "selectedEventType", weekendWarningDescription: "weekendWarningDescription", eventIconClass: "eventIconClass", eventNameBoldClass: "eventNameBoldClass", eventDescriptionClass: "eventDescriptionClass", propertyBadgeClass: "propertyBadgeClass", noEventsTextClass: "noEventsTextClass", warningTextClass: "warningTextClass", dateFormat: "dateFormat" }, ngImport: i0, template: "@if (events.length > 0) {\r\n<div>\r\n @for (event of events; track event) {\r\n <div [class]=\"'d-flex lh-base ' + (showDates ? 'my-3' : 'my-1')\">\r\n <fa-icon [icon]=\"isBirthday(event) ? cakeCandles : treePalm\"\r\n [class]=\"eventIconClass\"\r\n [title]=\"isBirthday(event) ? ('Birthday' | HRTranslate) : ('PublicHoliday' | HRTranslate)\">\r\n </fa-icon>\r\n\r\n <div>\r\n @if (isBirthday(event)) {\r\n @if (hasPropertyBadge(event)) {\r\n <span [class]=\"propertyBadgeClass\" [title]=\"event.PropertyName!\">{{ event.PropertySymbol }}</span>\r\n }\r\n @if (isArabic) {\r\n <span>{{ 'Birthday' | HRTranslate }}</span>\r\n <span [class]=\"eventNameBoldClass\">{{ ' ' + event.Name + ' ' }}</span>\r\n @if (event.IsIn2Days) { <span>{{ 'During' | HRTranslate }} </span> }\r\n } @else {\r\n <span [class]=\"eventNameBoldClass\">{{ event.Name }}'s </span>\r\n <span>{{ ('Birthday' | HRTranslate) + ' ' + ((event.IsIn2Days ? ('isIn' | HRTranslate) : ('is' | HRTranslate)) | lowercase) }} </span>\r\n }\r\n } @else {\r\n @if (isArabic) {\r\n <span [class]=\"eventNameBoldClass\">{{ event.Name }}</span> <span> {{ ('In' | HRTranslate) + ' ' }}</span>\r\n } @else {\r\n <span [class]=\"eventNameBoldClass\">{{ event.Name }} </span><span>{{ ' ' + (('is' | HRTranslate) | lowercase) }} </span>\r\n }\r\n }\r\n\r\n <span [class]=\"eventDescriptionClass\">{{ event.Description | HRTranslate }}</span>\r\n\r\n @if (!isBirthday(event) && showDates && event.StartDate && event.EndDate) {\r\n <span>{{ ' (' + (event.StartDate | date:dateFormat) + ' - ' + (event.EndDate | date:dateFormat) + ')' }}</span>\r\n }\r\n </div>\r\n </div>\r\n }\r\n</div>\r\n} @else {\r\n@if (weekendWarningDescription) {\r\n<div [class]=\"warningTextClass + (showDates ? ' pt-5 my-5' : '')\">{{ weekendWarningDescription | HRTranslate }}</div>\r\n} @else {\r\n<div [class]=\"noEventsTextClass + (showDates ? ' pt-5 my-5' : '')\">{{ 'NoEvents' | HRTranslate }}</div>\r\n}\r\n}\r\n", dependencies: [{ kind: "ngmodule", type: FontAwesomeModule }, { kind: "component", type: i3.FaIconComponent, selector: "fa-icon", inputs: ["icon", "title", "animation", "mask", "flip", "size", "pull", "border", "inverse", "symbol", "rotate", "fixedWidth", "transform", "a11yRole"] }, { kind: "pipe", type: DatePipe, name: "date" }, { kind: "pipe", type: LowerCasePipe, name: "lowercase" }, { kind: "pipe", type: HRTranslatePipe, name: "HRTranslate" }] });
2007
2000
  }
2008
2001
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: HREventItemComponent, decorators: [{
2009
2002
  type: Component,
@@ -2065,7 +2058,7 @@ class HREventTabBarComponent {
2065
2058
  return this.translatePipe.transform('PublicHoliday');
2066
2059
  }
2067
2060
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: HREventTabBarComponent, deps: [{ token: HRTranslatePipe }], target: i0.ɵɵFactoryTarget.Component });
2068
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.20", type: HREventTabBarComponent, isStandalone: true, selector: "hr-event-tab-bar", inputs: { selectedType: "selectedType", selectedLanguage: "selectedLanguage", tabSelectedClass: "tabSelectedClass", tabNotSelectedClass: "tabNotSelectedClass", tabTextSelectedClass: "tabTextSelectedClass", tabTextNotSelectedClass: "tabTextNotSelectedClass", containerClass: "containerClass", tabItemClass: "tabItemClass", tabTextClass: "tabTextClass", tabIconClass: "tabIconClass" }, outputs: { tabSelected: "tabSelected" }, ngImport: i0, template: "<div [class]=\"containerClass\">\r\n @for (tab of tabList; track tab) {\r\n <div [class]=\"tabItemClass + ' ' + (selectedType == tab.id ? tabSelectedClass : tabNotSelectedClass)\"\r\n [ngClass]=\"{'w-25': (selectedLanguage == 'fr' && !tab?.icon)}\"\r\n (click)=\"tabSelected.emit(tab.id)\">\r\n @if (!tab?.icon) {\r\n <span [class]=\"tabTextClass + ' ' + (selectedType == tab.id ? tabTextSelectedClass : tabTextNotSelectedClass)\">{{ getTabText(tab) }}</span>\r\n } @else {\r\n <fa-icon [icon]=\"tab.icon!\" [class]=\"tabIconClass + ' ' + (selectedType == tab.id ? tabTextSelectedClass : tabTextNotSelectedClass)\" [title]=\"getTabText(tab)\"></fa-icon>\r\n }\r\n </div>\r\n }\r\n</div>\r\n", dependencies: [{ kind: "ngmodule", type: FontAwesomeModule }, { kind: "component", type: i1$2.FaIconComponent, selector: "fa-icon", inputs: ["icon", "title", "animation", "mask", "flip", "size", "pull", "border", "inverse", "symbol", "rotate", "fixedWidth", "transform", "a11yRole"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }] });
2061
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.20", type: HREventTabBarComponent, isStandalone: true, selector: "hr-event-tab-bar", inputs: { selectedType: "selectedType", selectedLanguage: "selectedLanguage", tabSelectedClass: "tabSelectedClass", tabNotSelectedClass: "tabNotSelectedClass", tabTextSelectedClass: "tabTextSelectedClass", tabTextNotSelectedClass: "tabTextNotSelectedClass", containerClass: "containerClass", tabItemClass: "tabItemClass", tabTextClass: "tabTextClass", tabIconClass: "tabIconClass" }, outputs: { tabSelected: "tabSelected" }, ngImport: i0, template: "<div [class]=\"containerClass\">\r\n @for (tab of tabList; track tab) {\r\n <div [class]=\"tabItemClass + ' ' + (selectedType == tab.id ? tabSelectedClass : tabNotSelectedClass)\"\r\n [ngClass]=\"{'w-25': (selectedLanguage == 'fr' && !tab?.icon)}\"\r\n (click)=\"tabSelected.emit(tab.id)\">\r\n @if (!tab?.icon) {\r\n <span [class]=\"tabTextClass + ' ' + (selectedType == tab.id ? tabTextSelectedClass : tabTextNotSelectedClass)\">{{ getTabText(tab) }}</span>\r\n } @else {\r\n <fa-icon [icon]=\"tab.icon!\" [class]=\"tabIconClass + ' ' + (selectedType == tab.id ? tabTextSelectedClass : tabTextNotSelectedClass)\" [title]=\"getTabText(tab)\"></fa-icon>\r\n }\r\n </div>\r\n }\r\n</div>\r\n", dependencies: [{ kind: "ngmodule", type: FontAwesomeModule }, { kind: "component", type: i3.FaIconComponent, selector: "fa-icon", inputs: ["icon", "title", "animation", "mask", "flip", "size", "pull", "border", "inverse", "symbol", "rotate", "fixedWidth", "transform", "a11yRole"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }] });
2069
2062
  }
2070
2063
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: HREventTabBarComponent, decorators: [{
2071
2064
  type: Component,
@@ -2564,7 +2557,7 @@ class HREmployeeCalendarComponent {
2564
2557
  event.component.option('value', null);
2565
2558
  }
2566
2559
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: HREmployeeCalendarComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
2567
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.20", type: HREmployeeCalendarComponent, isStandalone: true, selector: "hr-employee-calendar", inputs: { showEvents: "showEvents", showUpComingVacations: "showUpComingVacations", scheduleCalenderVacation: "scheduleCalenderVacation", minDate: "minDate", maxDate: "maxDate", legendContainerClass: "legendContainerClass", legendRowClass: "legendRowClass", legendItemClass: "legendItemClass", legendDotClass: "legendDotClass", legendLabelClass: "legendLabelClass", publicHolidayDotClass: "publicHolidayDotClass", dayOffDotClass: "dayOffDotClass", eventsDotClass: "eventsDotClass", vacationsContainerClass: "vacationsContainerClass", vacationsItemClass: "vacationsItemClass", vacationsIconClass: "vacationsIconClass", calendarContainerClass: "calendarContainerClass", calendarClass: "calendarClass" }, viewQueries: [{ propertyName: "calendar", first: true, predicate: ["calendar"], descendants: true }], ngImport: i0, template: "<div [class]=\"legendContainerClass\">\r\n <div [class]=\"legendRowClass\">\r\n <div [class]=\"legendItemClass + ' me-4'\">\r\n <div [class]=\"legendDotClass + ' ' + publicHolidayDotClass\"></div>\r\n <div [class]=\"legendLabelClass\"><p>{{'PublicHoliday' | HRTranslate}}</p></div>\r\n </div>\r\n <div [class]=\"legendItemClass\">\r\n <div [class]=\"legendDotClass + ' ' + dayOffDotClass\"></div>\r\n <div [class]=\"legendLabelClass\"><p>{{'DayOff' | HRTranslate}}</p></div>\r\n </div>\r\n @if(showEvents){\r\n <div [class]=\"legendItemClass + ' ms-4'\">\r\n <div [class]=\"legendDotClass + ' ' + eventsDotClass\"></div>\r\n <div [class]=\"legendLabelClass\"><p>{{'Events' | HRTranslate}}</p></div>\r\n </div>\r\n }\r\n </div>\r\n @if(showUpComingVacations){\r\n <div [class]=\"vacationsContainerClass\">\r\n <div [class]=\"vacationsItemClass\">\r\n <fa-icon [icon]=\"squreCheckIcon\" [class]=\"vacationsIconClass\"></fa-icon>\r\n <div [class]=\"legendLabelClass\"><p>{{'ScheduledVacations' | HRTranslate}}</p></div>\r\n </div>\r\n </div>\r\n }\r\n</div>\r\n\r\n <div [class]=\"calendarContainerClass\">\r\n <dx-calendar #calendar [class]=\"calendarClass\" [selectionMode]=\"'multiple'\"\r\n [cellTemplate]=\"customCellTemplate\"\r\n [showWeekNumbers]=\"false\"\r\n [min]=\"minDate\"\r\n [max]=\"maxDate\"\r\n (onValueChanged)=\"preventInteraction($event)\">\r\n </dx-calendar>\r\n </div>\r\n", dependencies: [{ kind: "ngmodule", type: DxCalendarModule }, { kind: "component", type: i1$1.DxCalendarComponent, selector: "dx-calendar", inputs: ["accessKey", "activeStateEnabled", "cellTemplate", "dateSerializationFormat", "disabled", "disabledDates", "elementAttr", "firstDayOfWeek", "focusStateEnabled", "height", "hint", "hoverStateEnabled", "isDirty", "isValid", "max", "maxZoomLevel", "min", "minZoomLevel", "name", "readOnly", "rtlEnabled", "selectionMode", "selectWeekOnClick", "showTodayButton", "showWeekNumbers", "tabIndex", "validationError", "validationErrors", "validationMessageMode", "validationMessagePosition", "validationStatus", "value", "visible", "weekNumberRule", "width", "zoomLevel"], outputs: ["onDisposing", "onInitialized", "onOptionChanged", "onValueChanged", "accessKeyChange", "activeStateEnabledChange", "cellTemplateChange", "dateSerializationFormatChange", "disabledChange", "disabledDatesChange", "elementAttrChange", "firstDayOfWeekChange", "focusStateEnabledChange", "heightChange", "hintChange", "hoverStateEnabledChange", "isDirtyChange", "isValidChange", "maxChange", "maxZoomLevelChange", "minChange", "minZoomLevelChange", "nameChange", "readOnlyChange", "rtlEnabledChange", "selectionModeChange", "selectWeekOnClickChange", "showTodayButtonChange", "showWeekNumbersChange", "tabIndexChange", "validationErrorChange", "validationErrorsChange", "validationMessageModeChange", "validationMessagePositionChange", "validationStatusChange", "valueChange", "visibleChange", "weekNumberRuleChange", "widthChange", "zoomLevelChange", "onBlur"] }, { kind: "pipe", type: HRTranslatePipe, name: "HRTranslate" }, { kind: "ngmodule", type: FontAwesomeModule }, { kind: "component", type: i1$2.FaIconComponent, selector: "fa-icon", inputs: ["icon", "title", "animation", "mask", "flip", "size", "pull", "border", "inverse", "symbol", "rotate", "fixedWidth", "transform", "a11yRole"] }] });
2560
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.20", type: HREmployeeCalendarComponent, isStandalone: true, selector: "hr-employee-calendar", inputs: { showEvents: "showEvents", showUpComingVacations: "showUpComingVacations", scheduleCalenderVacation: "scheduleCalenderVacation", minDate: "minDate", maxDate: "maxDate", legendContainerClass: "legendContainerClass", legendRowClass: "legendRowClass", legendItemClass: "legendItemClass", legendDotClass: "legendDotClass", legendLabelClass: "legendLabelClass", publicHolidayDotClass: "publicHolidayDotClass", dayOffDotClass: "dayOffDotClass", eventsDotClass: "eventsDotClass", vacationsContainerClass: "vacationsContainerClass", vacationsItemClass: "vacationsItemClass", vacationsIconClass: "vacationsIconClass", calendarContainerClass: "calendarContainerClass", calendarClass: "calendarClass" }, viewQueries: [{ propertyName: "calendar", first: true, predicate: ["calendar"], descendants: true }], ngImport: i0, template: "<div [class]=\"legendContainerClass\">\r\n <div [class]=\"legendRowClass\">\r\n <div [class]=\"legendItemClass + ' me-4'\">\r\n <div [class]=\"legendDotClass + ' ' + publicHolidayDotClass\"></div>\r\n <div [class]=\"legendLabelClass\"><p>{{'PublicHoliday' | HRTranslate}}</p></div>\r\n </div>\r\n <div [class]=\"legendItemClass\">\r\n <div [class]=\"legendDotClass + ' ' + dayOffDotClass\"></div>\r\n <div [class]=\"legendLabelClass\"><p>{{'DayOff' | HRTranslate}}</p></div>\r\n </div>\r\n @if(showEvents){\r\n <div [class]=\"legendItemClass + ' ms-4'\">\r\n <div [class]=\"legendDotClass + ' ' + eventsDotClass\"></div>\r\n <div [class]=\"legendLabelClass\"><p>{{'Events' | HRTranslate}}</p></div>\r\n </div>\r\n }\r\n </div>\r\n @if(showUpComingVacations){\r\n <div [class]=\"vacationsContainerClass\">\r\n <div [class]=\"vacationsItemClass\">\r\n <fa-icon [icon]=\"squreCheckIcon\" [class]=\"vacationsIconClass\"></fa-icon>\r\n <div [class]=\"legendLabelClass\"><p>{{'ScheduledVacations' | HRTranslate}}</p></div>\r\n </div>\r\n </div>\r\n }\r\n</div>\r\n\r\n <div [class]=\"calendarContainerClass\">\r\n <dx-calendar #calendar [class]=\"calendarClass\" [selectionMode]=\"'multiple'\"\r\n [cellTemplate]=\"customCellTemplate\"\r\n [showWeekNumbers]=\"false\"\r\n [min]=\"minDate\"\r\n [max]=\"maxDate\"\r\n (onValueChanged)=\"preventInteraction($event)\">\r\n </dx-calendar>\r\n </div>\r\n", dependencies: [{ kind: "ngmodule", type: DxCalendarModule }, { kind: "component", type: i1$1.DxCalendarComponent, selector: "dx-calendar", inputs: ["accessKey", "activeStateEnabled", "cellTemplate", "dateSerializationFormat", "disabled", "disabledDates", "elementAttr", "firstDayOfWeek", "focusStateEnabled", "height", "hint", "hoverStateEnabled", "isDirty", "isValid", "max", "maxZoomLevel", "min", "minZoomLevel", "name", "readOnly", "rtlEnabled", "selectionMode", "selectWeekOnClick", "showTodayButton", "showWeekNumbers", "tabIndex", "validationError", "validationErrors", "validationMessageMode", "validationMessagePosition", "validationStatus", "value", "visible", "weekNumberRule", "width", "zoomLevel"], outputs: ["onDisposing", "onInitialized", "onOptionChanged", "onValueChanged", "accessKeyChange", "activeStateEnabledChange", "cellTemplateChange", "dateSerializationFormatChange", "disabledChange", "disabledDatesChange", "elementAttrChange", "firstDayOfWeekChange", "focusStateEnabledChange", "heightChange", "hintChange", "hoverStateEnabledChange", "isDirtyChange", "isValidChange", "maxChange", "maxZoomLevelChange", "minChange", "minZoomLevelChange", "nameChange", "readOnlyChange", "rtlEnabledChange", "selectionModeChange", "selectWeekOnClickChange", "showTodayButtonChange", "showWeekNumbersChange", "tabIndexChange", "validationErrorChange", "validationErrorsChange", "validationMessageModeChange", "validationMessagePositionChange", "validationStatusChange", "valueChange", "visibleChange", "weekNumberRuleChange", "widthChange", "zoomLevelChange", "onBlur"] }, { kind: "pipe", type: HRTranslatePipe, name: "HRTranslate" }, { kind: "ngmodule", type: FontAwesomeModule }, { kind: "component", type: i3.FaIconComponent, selector: "fa-icon", inputs: ["icon", "title", "animation", "mask", "flip", "size", "pull", "border", "inverse", "symbol", "rotate", "fixedWidth", "transform", "a11yRole"] }] });
2568
2561
  }
2569
2562
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: HREmployeeCalendarComponent, decorators: [{
2570
2563
  type: Component,
@@ -3061,18 +3054,16 @@ class ProfilePersonalInfoContactWidgetComponent {
3061
3054
  isLoading = true;
3062
3055
  baseUrl = '';
3063
3056
  headerIconClass = 'primary-icon-xl';
3064
- headerTextClass = 'mt-2 field-secondary-label-lg';
3057
+ headerTextClass = 'fs-16 mt-2 text-secondary';
3065
3058
  headerDividerClass = 'flex-grow-1 ms-2';
3066
3059
  rowClass = 'row mt-4';
3067
- columnClass = 'col-4';
3068
- responsiveTopSpacingColumnClass = 'col-6 mt-4';
3060
+ columnClass = 'col-md-4 col-6';
3061
+ responsiveTopSpacingColumnClass = 'col-md-4 col-6 mt-md-0 mt-4';
3069
3062
  topSpacingBottomMdSpacingColumnClass = 'col-md-4 col-6 mt-4 mb-md-5';
3070
3063
  topSpacingBottomSpacingColumnClass = 'col-md-4 col-6 mt-4 mb-5';
3071
3064
  labelClass = 'field-secondary-label-sm';
3072
3065
  valueClass = 'fs-14 fw-medium text-ellipsis-one-line';
3073
3066
  emergencyContactLabelClass = 'fs-14 fw-semibold';
3074
- emergencyContactColumnClass = 'col-md-4 col-6';
3075
- emergencyContactResponsiveColumnClass = 'col-md-4 col-6 mt-md-0 mt-4';
3076
3067
  emptyStateContainerClass = 'd-flex flex-column justify-content-center align-items-center my-5';
3077
3068
  emptyStateTextClass = 'field-secondary-label-md';
3078
3069
  contactIcon = faPhone;
@@ -3106,11 +3097,11 @@ class ProfilePersonalInfoContactWidgetComponent {
3106
3097
  });
3107
3098
  }
3108
3099
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: ProfilePersonalInfoContactWidgetComponent, deps: [{ token: HRSelfWidgetsService }], target: i0.ɵɵFactoryTarget.Component });
3109
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.20", type: ProfilePersonalInfoContactWidgetComponent, isStandalone: true, selector: "hr-profile-personal-info-contact-widget", inputs: { baseUrl: "baseUrl", headerIconClass: "headerIconClass", headerTextClass: "headerTextClass", headerDividerClass: "headerDividerClass", rowClass: "rowClass", columnClass: "columnClass", responsiveTopSpacingColumnClass: "responsiveTopSpacingColumnClass", topSpacingBottomMdSpacingColumnClass: "topSpacingBottomMdSpacingColumnClass", topSpacingBottomSpacingColumnClass: "topSpacingBottomSpacingColumnClass", labelClass: "labelClass", valueClass: "valueClass", emergencyContactLabelClass: "emergencyContactLabelClass", emergencyContactColumnClass: "emergencyContactColumnClass", emergencyContactResponsiveColumnClass: "emergencyContactResponsiveColumnClass", emptyStateContainerClass: "emptyStateContainerClass", emptyStateTextClass: "emptyStateTextClass", contactIcon: "contactIcon", emergencyContactIcon: "emergencyContactIcon", sectionTitle: "sectionTitle", showEmergencyContact: "showEmergencyContact", emergencyContactRowClass: "emergencyContactRowClass" }, outputs: { isLoadingChanged: "isLoadingChanged", errorOccurred: "errorOccurred" }, ngImport: i0, template: "<sky-section-divider [fontAwesomeIcon]=\"contactIcon\"\r\n [text]=\"(sectionTitle | HRTranslate|uppercase)\"\r\n [iconClass]=\"headerIconClass\"\r\n [textClass]=\"headerTextClass\"\r\n [dividerClass]=\"headerDividerClass\">\r\n</sky-section-divider>\r\n\r\n@if(employeePersonalInfoContactDetails){\r\n<div [ngClass]=\"rowClass\">\r\n <div [ngClass]=\"columnClass\">\r\n <hr-info-field [labelKey]=\"'MobileNumber'\"\r\n [value]=\"employeePersonalInfoContactDetails.MobileNumber\"\r\n [labelClass]=\"labelClass\"\r\n [valueClass]=\"valueClass\">\r\n </hr-info-field>\r\n <div class=\"mt-4\">\r\n <hr-info-field [labelKey]=\"'Email'\"\r\n [value]=\"employeePersonalInfoContactDetails.Email\"\r\n [labelClass]=\"labelClass\"\r\n [valueClass]=\"valueClass\">\r\n </hr-info-field>\r\n </div>\r\n </div>\r\n <div [ngClass]=\"columnClass\">\r\n <hr-info-field [labelKey]=\"'HomePhone'\"\r\n [value]=\"employeePersonalInfoContactDetails.HomePhone\"\r\n [labelClass]=\"labelClass\"\r\n [valueClass]=\"valueClass\">\r\n </hr-info-field>\r\n <div class=\"mt-4\">\r\n <hr-info-field [labelKey]=\"'BusinessEmail'\"\r\n [value]=\"employeePersonalInfoContactDetails.BusinessEmail\"\r\n [labelClass]=\"labelClass\"\r\n [valueClass]=\"valueClass\">\r\n </hr-info-field>\r\n </div>\r\n </div>\r\n</div>\r\n@if(showEmergencyContact)\r\n{\r\n<div [ngClass]=\"rowClass\">\r\n <div class=\"col-12\">\r\n <div [ngClass]=\"emergencyContactLabelClass\">\r\n &#x2022; {{'EmergencyContact' | HRTranslate}}\r\n </div>\r\n </div>\r\n</div>\r\n<div [ngClass]=\"emergencyContactRowClass\">\r\n <div [ngClass]=\"emergencyContactColumnClass\">\r\n <hr-info-field [labelKey]=\"'Name'\"\r\n [value]=\"employeePersonalInfoContactDetails.EmergencyContact?.Name || employeePersonalInfoContactDetails.EmergencyContactLegacy\"\r\n [labelClass]=\"labelClass\"\r\n [valueClass]=\"valueClass\">\r\n </hr-info-field>\r\n </div>\r\n <div [ngClass]=\"emergencyContactColumnClass\">\r\n <hr-info-field [labelKey]=\"'Relation'\"\r\n [value]=\"employeePersonalInfoContactDetails.EmergencyContact?.Relation\"\r\n [labelClass]=\"labelClass\"\r\n [valueClass]=\"valueClass\">\r\n </hr-info-field>\r\n </div>\r\n <div [ngClass]=\"emergencyContactResponsiveColumnClass\">\r\n <hr-info-field [labelKey]=\"'Phone'\"\r\n [value]=\"employeePersonalInfoContactDetails.EmergencyContact?.PhoneNumber\"\r\n [labelClass]=\"labelClass\"\r\n [valueClass]=\"valueClass\">\r\n </hr-info-field>\r\n </div>\r\n</div>\r\n}\r\n}@else{\r\n<sky-empty-design-card [containerClass]=\"emptyStateContainerClass\"\r\n [cardBodyClass]=\"''\"\r\n [cardBodyContainerClass]=\"''\"\r\n [visibleIcon]=\"false\"\r\n [visibleQuickAction]=\"false\"\r\n [emptyTextClass]=\"emptyStateTextClass\"\r\n [emptyText]=\"isLoading ? ((sectionTitle | HRTranslate) + ' ' + ('IsLoading' | HRTranslate)) : ('ThereIsNoContactYet' | HRTranslate)\">\r\n</sky-empty-design-card>\r\n}", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2$1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "pipe", type: i2$1.UpperCasePipe, name: "uppercase" }, { kind: "ngmodule", type: FontAwesomeModule }, { kind: "pipe", type: HRTranslatePipe, name: "HRTranslate" }, { kind: "component", type: SkySectionDividerComponent, selector: "sky-section-divider", inputs: ["text", "fontAwesomeIcon", "textClass", "dividerClass", "iconClass"] }, { kind: "component", type: SkyEmptyDesignCardComponent, selector: "sky-empty-design-card", inputs: ["emptyIcon", "emptyIconClass", "emptyText", "emptyTextClass", "actionTitle", "actionIcon", "actionDisabled", "textColor", "disabledTitleClass", "activeTitleClass", "disabledIconClass", "activeIconClass", "actionClass", "containerClass", "cardBodyClass", "cardBodyContainerClass", "visibleIcon", "visibleQuickAction"], outputs: ["onActionClick"] }, { kind: "component", type: HRInfoFieldComponent, selector: "hr-info-field", inputs: ["labelKey", "value", "labelClass", "valueClass", "fallbackValue"] }] });
3100
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.20", type: ProfilePersonalInfoContactWidgetComponent, isStandalone: true, selector: "hr-profile-personal-info-contact-widget", inputs: { baseUrl: "baseUrl", headerIconClass: "headerIconClass", headerTextClass: "headerTextClass", headerDividerClass: "headerDividerClass", rowClass: "rowClass", columnClass: "columnClass", responsiveTopSpacingColumnClass: "responsiveTopSpacingColumnClass", topSpacingBottomMdSpacingColumnClass: "topSpacingBottomMdSpacingColumnClass", topSpacingBottomSpacingColumnClass: "topSpacingBottomSpacingColumnClass", labelClass: "labelClass", valueClass: "valueClass", emergencyContactLabelClass: "emergencyContactLabelClass", emptyStateContainerClass: "emptyStateContainerClass", emptyStateTextClass: "emptyStateTextClass", contactIcon: "contactIcon", emergencyContactIcon: "emergencyContactIcon", sectionTitle: "sectionTitle", showEmergencyContact: "showEmergencyContact", emergencyContactRowClass: "emergencyContactRowClass" }, outputs: { isLoadingChanged: "isLoadingChanged", errorOccurred: "errorOccurred" }, ngImport: i0, template: "<sky-section-divider [fontAwesomeIcon]=\"contactIcon\"\r\n [text]=\"(sectionTitle | HRTranslate|uppercase)\"\r\n [iconClass]=\"headerIconClass\"\r\n [textClass]=\"headerTextClass\"\r\n [dividerClass]=\"headerDividerClass\">\r\n</sky-section-divider>\r\n\r\n@if(employeePersonalInfoContactDetails){\r\n<div [ngClass]=\"rowClass\">\r\n <div [ngClass]=\"columnClass\">\r\n <hr-info-field [labelKey]=\"'MobileNumber'\"\r\n [value]=\"employeePersonalInfoContactDetails.MobileNumber\"\r\n [labelClass]=\"labelClass\"\r\n [valueClass]=\"valueClass\">\r\n </hr-info-field>\r\n </div>\r\n <div [ngClass]=\"columnClass\">\r\n <hr-info-field [labelKey]=\"'HomePhone'\"\r\n [value]=\"employeePersonalInfoContactDetails.HomePhone\"\r\n [labelClass]=\"labelClass\"\r\n [valueClass]=\"valueClass\">\r\n </hr-info-field>\r\n </div>\r\n \r\n <div [ngClass]=\"responsiveTopSpacingColumnClass\">\r\n <hr-info-field [labelKey]=\"'Email'\"\r\n [value]=\"employeePersonalInfoContactDetails.Email\"\r\n [labelClass]=\"labelClass\"\r\n [valueClass]=\"valueClass\">\r\n </hr-info-field>\r\n </div>\r\n</div>\r\n@if(showEmergencyContact)\r\n{\r\n<div [ngClass]=\"rowClass\">\r\n <div class=\"col-12\">\r\n <div [ngClass]=\"emergencyContactLabelClass\">\r\n &#x2022; {{'EmergencyContact' | HRTranslate}}\r\n </div>\r\n </div>\r\n</div>\r\n<div [ngClass]=\"emergencyContactRowClass\">\r\n <div [ngClass]=\"columnClass\">\r\n <hr-info-field [labelKey]=\"'Name'\"\r\n [value]=\"employeePersonalInfoContactDetails.EmergencyContact?.Name || employeePersonalInfoContactDetails.EmergencyContactLegacy\"\r\n [labelClass]=\"labelClass\"\r\n [valueClass]=\"valueClass\">\r\n </hr-info-field>\r\n </div>\r\n <div [ngClass]=\"columnClass\">\r\n <hr-info-field [labelKey]=\"'Relation'\"\r\n [value]=\"employeePersonalInfoContactDetails.EmergencyContact?.Relation\"\r\n [labelClass]=\"labelClass\"\r\n [valueClass]=\"valueClass\">\r\n </hr-info-field>\r\n </div>\r\n <div [ngClass]=\"responsiveTopSpacingColumnClass\">\r\n <hr-info-field [labelKey]=\"'Phone'\"\r\n [value]=\"employeePersonalInfoContactDetails.EmergencyContact?.PhoneNumber\"\r\n [labelClass]=\"labelClass\"\r\n [valueClass]=\"valueClass\">\r\n </hr-info-field>\r\n </div>\r\n</div>\r\n}\r\n}@else{\r\n<sky-empty-design-card [containerClass]=\"emptyStateContainerClass\"\r\n [cardBodyClass]=\"''\"\r\n [cardBodyContainerClass]=\"''\"\r\n [visibleIcon]=\"false\"\r\n [visibleQuickAction]=\"false\"\r\n [emptyTextClass]=\"emptyStateTextClass\"\r\n [emptyText]=\"isLoading ? ((sectionTitle | HRTranslate) + ' ' + ('IsLoading' | HRTranslate)) : ('ThereIsNoContactYet' | HRTranslate)\">\r\n</sky-empty-design-card>\r\n}", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2$1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "pipe", type: i2$1.UpperCasePipe, name: "uppercase" }, { kind: "ngmodule", type: FontAwesomeModule }, { kind: "pipe", type: HRTranslatePipe, name: "HRTranslate" }, { kind: "component", type: SkySectionDividerComponent, selector: "sky-section-divider", inputs: ["text", "fontAwesomeIcon", "textClass", "dividerClass", "iconClass"] }, { kind: "component", type: SkyEmptyDesignCardComponent, selector: "sky-empty-design-card", inputs: ["emptyIcon", "emptyIconClass", "emptyText", "emptyTextClass", "actionTitle", "actionIcon", "actionDisabled", "textColor", "disabledTitleClass", "activeTitleClass", "disabledIconClass", "activeIconClass", "actionClass", "containerClass", "cardBodyClass", "cardBodyContainerClass", "visibleIcon", "visibleQuickAction"], outputs: ["onActionClick"] }, { kind: "component", type: HRInfoFieldComponent, selector: "hr-info-field", inputs: ["labelKey", "value", "labelClass", "valueClass", "fallbackValue"] }] });
3110
3101
  }
3111
3102
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: ProfilePersonalInfoContactWidgetComponent, decorators: [{
3112
3103
  type: Component,
3113
- args: [{ selector: 'hr-profile-personal-info-contact-widget', standalone: true, imports: [CommonModule, FontAwesomeModule, HRTranslatePipe, SkySectionDividerComponent, SkyEmptyDesignCardComponent, HRInfoFieldComponent], template: "<sky-section-divider [fontAwesomeIcon]=\"contactIcon\"\r\n [text]=\"(sectionTitle | HRTranslate|uppercase)\"\r\n [iconClass]=\"headerIconClass\"\r\n [textClass]=\"headerTextClass\"\r\n [dividerClass]=\"headerDividerClass\">\r\n</sky-section-divider>\r\n\r\n@if(employeePersonalInfoContactDetails){\r\n<div [ngClass]=\"rowClass\">\r\n <div [ngClass]=\"columnClass\">\r\n <hr-info-field [labelKey]=\"'MobileNumber'\"\r\n [value]=\"employeePersonalInfoContactDetails.MobileNumber\"\r\n [labelClass]=\"labelClass\"\r\n [valueClass]=\"valueClass\">\r\n </hr-info-field>\r\n <div class=\"mt-4\">\r\n <hr-info-field [labelKey]=\"'Email'\"\r\n [value]=\"employeePersonalInfoContactDetails.Email\"\r\n [labelClass]=\"labelClass\"\r\n [valueClass]=\"valueClass\">\r\n </hr-info-field>\r\n </div>\r\n </div>\r\n <div [ngClass]=\"columnClass\">\r\n <hr-info-field [labelKey]=\"'HomePhone'\"\r\n [value]=\"employeePersonalInfoContactDetails.HomePhone\"\r\n [labelClass]=\"labelClass\"\r\n [valueClass]=\"valueClass\">\r\n </hr-info-field>\r\n <div class=\"mt-4\">\r\n <hr-info-field [labelKey]=\"'BusinessEmail'\"\r\n [value]=\"employeePersonalInfoContactDetails.BusinessEmail\"\r\n [labelClass]=\"labelClass\"\r\n [valueClass]=\"valueClass\">\r\n </hr-info-field>\r\n </div>\r\n </div>\r\n</div>\r\n@if(showEmergencyContact)\r\n{\r\n<div [ngClass]=\"rowClass\">\r\n <div class=\"col-12\">\r\n <div [ngClass]=\"emergencyContactLabelClass\">\r\n &#x2022; {{'EmergencyContact' | HRTranslate}}\r\n </div>\r\n </div>\r\n</div>\r\n<div [ngClass]=\"emergencyContactRowClass\">\r\n <div [ngClass]=\"emergencyContactColumnClass\">\r\n <hr-info-field [labelKey]=\"'Name'\"\r\n [value]=\"employeePersonalInfoContactDetails.EmergencyContact?.Name || employeePersonalInfoContactDetails.EmergencyContactLegacy\"\r\n [labelClass]=\"labelClass\"\r\n [valueClass]=\"valueClass\">\r\n </hr-info-field>\r\n </div>\r\n <div [ngClass]=\"emergencyContactColumnClass\">\r\n <hr-info-field [labelKey]=\"'Relation'\"\r\n [value]=\"employeePersonalInfoContactDetails.EmergencyContact?.Relation\"\r\n [labelClass]=\"labelClass\"\r\n [valueClass]=\"valueClass\">\r\n </hr-info-field>\r\n </div>\r\n <div [ngClass]=\"emergencyContactResponsiveColumnClass\">\r\n <hr-info-field [labelKey]=\"'Phone'\"\r\n [value]=\"employeePersonalInfoContactDetails.EmergencyContact?.PhoneNumber\"\r\n [labelClass]=\"labelClass\"\r\n [valueClass]=\"valueClass\">\r\n </hr-info-field>\r\n </div>\r\n</div>\r\n}\r\n}@else{\r\n<sky-empty-design-card [containerClass]=\"emptyStateContainerClass\"\r\n [cardBodyClass]=\"''\"\r\n [cardBodyContainerClass]=\"''\"\r\n [visibleIcon]=\"false\"\r\n [visibleQuickAction]=\"false\"\r\n [emptyTextClass]=\"emptyStateTextClass\"\r\n [emptyText]=\"isLoading ? ((sectionTitle | HRTranslate) + ' ' + ('IsLoading' | HRTranslate)) : ('ThereIsNoContactYet' | HRTranslate)\">\r\n</sky-empty-design-card>\r\n}" }]
3104
+ args: [{ selector: 'hr-profile-personal-info-contact-widget', standalone: true, imports: [CommonModule, FontAwesomeModule, HRTranslatePipe, SkySectionDividerComponent, SkyEmptyDesignCardComponent, HRInfoFieldComponent], template: "<sky-section-divider [fontAwesomeIcon]=\"contactIcon\"\r\n [text]=\"(sectionTitle | HRTranslate|uppercase)\"\r\n [iconClass]=\"headerIconClass\"\r\n [textClass]=\"headerTextClass\"\r\n [dividerClass]=\"headerDividerClass\">\r\n</sky-section-divider>\r\n\r\n@if(employeePersonalInfoContactDetails){\r\n<div [ngClass]=\"rowClass\">\r\n <div [ngClass]=\"columnClass\">\r\n <hr-info-field [labelKey]=\"'MobileNumber'\"\r\n [value]=\"employeePersonalInfoContactDetails.MobileNumber\"\r\n [labelClass]=\"labelClass\"\r\n [valueClass]=\"valueClass\">\r\n </hr-info-field>\r\n </div>\r\n <div [ngClass]=\"columnClass\">\r\n <hr-info-field [labelKey]=\"'HomePhone'\"\r\n [value]=\"employeePersonalInfoContactDetails.HomePhone\"\r\n [labelClass]=\"labelClass\"\r\n [valueClass]=\"valueClass\">\r\n </hr-info-field>\r\n </div>\r\n \r\n <div [ngClass]=\"responsiveTopSpacingColumnClass\">\r\n <hr-info-field [labelKey]=\"'Email'\"\r\n [value]=\"employeePersonalInfoContactDetails.Email\"\r\n [labelClass]=\"labelClass\"\r\n [valueClass]=\"valueClass\">\r\n </hr-info-field>\r\n </div>\r\n</div>\r\n@if(showEmergencyContact)\r\n{\r\n<div [ngClass]=\"rowClass\">\r\n <div class=\"col-12\">\r\n <div [ngClass]=\"emergencyContactLabelClass\">\r\n &#x2022; {{'EmergencyContact' | HRTranslate}}\r\n </div>\r\n </div>\r\n</div>\r\n<div [ngClass]=\"emergencyContactRowClass\">\r\n <div [ngClass]=\"columnClass\">\r\n <hr-info-field [labelKey]=\"'Name'\"\r\n [value]=\"employeePersonalInfoContactDetails.EmergencyContact?.Name || employeePersonalInfoContactDetails.EmergencyContactLegacy\"\r\n [labelClass]=\"labelClass\"\r\n [valueClass]=\"valueClass\">\r\n </hr-info-field>\r\n </div>\r\n <div [ngClass]=\"columnClass\">\r\n <hr-info-field [labelKey]=\"'Relation'\"\r\n [value]=\"employeePersonalInfoContactDetails.EmergencyContact?.Relation\"\r\n [labelClass]=\"labelClass\"\r\n [valueClass]=\"valueClass\">\r\n </hr-info-field>\r\n </div>\r\n <div [ngClass]=\"responsiveTopSpacingColumnClass\">\r\n <hr-info-field [labelKey]=\"'Phone'\"\r\n [value]=\"employeePersonalInfoContactDetails.EmergencyContact?.PhoneNumber\"\r\n [labelClass]=\"labelClass\"\r\n [valueClass]=\"valueClass\">\r\n </hr-info-field>\r\n </div>\r\n</div>\r\n}\r\n}@else{\r\n<sky-empty-design-card [containerClass]=\"emptyStateContainerClass\"\r\n [cardBodyClass]=\"''\"\r\n [cardBodyContainerClass]=\"''\"\r\n [visibleIcon]=\"false\"\r\n [visibleQuickAction]=\"false\"\r\n [emptyTextClass]=\"emptyStateTextClass\"\r\n [emptyText]=\"isLoading ? ((sectionTitle | HRTranslate) + ' ' + ('IsLoading' | HRTranslate)) : ('ThereIsNoContactYet' | HRTranslate)\">\r\n</sky-empty-design-card>\r\n}" }]
3114
3105
  }], ctorParameters: () => [{ type: HRSelfWidgetsService }], propDecorators: { baseUrl: [{
3115
3106
  type: Input,
3116
3107
  args: [{ required: true }]
@@ -3136,10 +3127,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImpo
3136
3127
  type: Input
3137
3128
  }], emergencyContactLabelClass: [{
3138
3129
  type: Input
3139
- }], emergencyContactColumnClass: [{
3140
- type: Input
3141
- }], emergencyContactResponsiveColumnClass: [{
3142
- type: Input
3143
3130
  }], emptyStateContainerClass: [{
3144
3131
  type: Input
3145
3132
  }], emptyStateTextClass: [{
@@ -3868,7 +3855,7 @@ class HRNextWeekVacationInsightsPopupComponent {
3868
3855
  employee.FailedToLoadPhoto = true;
3869
3856
  }
3870
3857
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: HRNextWeekVacationInsightsPopupComponent, deps: [{ token: i1.HttpClient }], target: i0.ɵɵFactoryTarget.Component });
3871
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.20", type: HRNextWeekVacationInsightsPopupComponent, isStandalone: true, selector: "hr-next-week-vacation-insights-popup", inputs: { popupVisible: "popupVisible", popupType: "popupType", baseUrl: "baseUrl", width: "width", height: "height", gridHeight: "gridHeight", pageSize: "pageSize", showProperty: "showProperty" }, outputs: { closePopupClickHandler: "closePopupClickHandler" }, viewQueries: [{ propertyName: "dataGrid", first: true, predicate: DxDataGridComponent, descendants: true }], ngImport: i0, template: "<dx-popup [visible]=\"popupVisible\"\r\n [height]=\"height\"\r\n [minHeight]=\"'40%'\"\r\n [maxHeight]=\"'70%'\"\r\n [width]=\"width\"\r\n contentTemplate=\"popup-content\"\r\n [showCloseButton]=\"false\"\r\n shadingColor=\"rgba(0,0,0,0.4)\"\r\n titleTemplate=\"title\"\r\n [showTitle]=\"true\"\r\n (onShown)=\"onShown()\"\r\n (onHidden)=\"onHidden()\">\r\n\r\n <div *dxTemplate=\"let data of 'title'\">\r\n <div class=\"d-flex justify-content-between align-items-center my-0\">\r\n <p class=\"mx-3 fs-16 fw-meduim text-ellipsis-one-line\">\r\n <span class=\"text-dark-gray\">{{popupTitle ? (popupTitle | HRTranslate) : ('NextWeekVacationInsights' | HRTranslate)}}</span>\r\n <span class=\"mx-2 text-primary\">({{getPopupTitle() | HRTranslate}})</span>\r\n </p>\r\n <div class=\"p-2\" (click)=\"onPopupClose()\">\r\n <fa-icon [icon]=\"xMarkIcon\" class=\"fs-18 me-1 text-dark-gray cursor-pointer\"></fa-icon>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <div *dxTemplate=\"let d of 'popup-content'\">\r\n <div class=\"mb-2 d-flex justify-content-end\">\r\n <dx-text-box [width]=\"'250px'\"\r\n mode=\"search\"\r\n [value]=\"searchValue\"\r\n [placeholder]=\"'Search...' | HRTranslate\"\r\n (onValueChanged)=\"onSearchValueChanged($event)\">\r\n </dx-text-box>\r\n </div>\r\n @if(dataSource){\r\n <dx-data-grid class=\"popup-data-grid\"\r\n [dataSource]=\"dataSource\"\r\n [showBorders]=\"false\"\r\n [showRowLines]=\"false\"\r\n [showColumnLines]=\"false\"\r\n [columnAutoWidth]=\"true\"\r\n [wordWrapEnabled]=\"true\"\r\n [height]=\"gridHeight\"\r\n [allowColumnReordering]=\"false\"\r\n [remoteOperations]=\"{paging: true}\">\r\n\r\n <dxo-sorting mode=\"none\"></dxo-sorting>\r\n\r\n <dxo-scrolling mode=\"infinite\"\r\n [useNative]=\"false\"\r\n [scrollByContent]=\"true\"\r\n [scrollByThumb]=\"true\"\r\n showScrollbar=\"always\">\r\n </dxo-scrolling>\r\n\r\n <dxo-paging [enabled]=\"true\" [pageSize]=\"pageSize\"></dxo-paging>\r\n\r\n <dxi-column caption=\"{{'Employee' | HRTranslate}}\"\r\n dataField=\"EmployeeName\"\r\n cellTemplate=\"employeeCellTemplate\"\r\n [minWidth]=\"250\">\r\n </dxi-column>\r\n\r\n @if(popupType === VacationPopupType.Upcoming){\r\n <dxi-column caption=\"{{'StartDate' | HRTranslate}}\"\r\n dataField=\"VacationStartDate\"\r\n dataType=\"date\"\r\n format=\"dd/MM/yyyy\"\r\n [width]=\"120\"\r\n alignment=\"start\">\r\n </dxi-column>\r\n <dxi-column caption=\"{{'EndDate' | HRTranslate}}\"\r\n dataField=\"VacationEndDate\"\r\n dataType=\"date\"\r\n format=\"dd/MM/yyyy\"\r\n [width]=\"120\"\r\n alignment=\"start\">\r\n </dxi-column>\r\n }@else{\r\n <dxi-column caption=\"{{'ReturnDate' | HRTranslate}}\"\r\n dataField=\"ReturnDate\"\r\n dataType=\"date\"\r\n format=\"dd/MM/yyyy\"\r\n [width]=\"120\"\r\n alignment=\"start\">\r\n </dxi-column>\r\n }\r\n\r\n <div *dxTemplate=\"let cell of 'employeeCellTemplate'\">\r\n <div class=\"d-flex align-items-center\">\r\n <bayan-employee-badge\r\n [badge]=\"getEmployeeBadge(cell.data)\"\r\n badgeClass=\"badge employee-rounded-badge-xl fs-6\"\r\n imageClass=\"rounded-circle\"\r\n [width]=\"'40px'\"\r\n [height]=\"'40px'\"\r\n (employeePhotoError)=\"handleEmployeePhotoError(cell.data)\">\r\n </bayan-employee-badge>\r\n <div class=\"d-flex flex-column ms-1\">\r\n <div class=\"d-flex flex-row ms-2\">\r\n @if(showProperty){\r\n <span class=\"property-badge cursor-pointer me-1\" [title]=\"cell.data.PropertyName\" [innerHTML]=\"cell.data.PropertySymbol\"></span>\r\n }\r\n <span class=\"text-ellipsis-one-line fs-14 text-dark-gray fw-normal\"\r\n [title]=\"cell.data.EmployeeNumber + ' | ' + cell.data.EmployeeName\"\r\n [innerHTML]=\"(cell.data.EmployeeNumber + ' | ' + cell.data.EmployeeName) | HRHighlight:searchValue\">\r\n </span>\r\n </div>\r\n <p class=\"ms-2 mt-1 text-ellipsis-one-line fs-12 text-dark-gray fw-normal mb-0\"\r\n [innerHTML]=\"cell.data.EmployeeAdminUnitName | HRHighlight:searchValue\">\r\n </p>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n </dx-data-grid>\r\n }\r\n </div>\r\n</dx-popup>\r\n", dependencies: [{ kind: "ngmodule", type: DxPopupModule }, { kind: "component", type: i1$1.DxPopupComponent, selector: "dx-popup", inputs: ["accessKey", "animation", "closeOnOutsideClick", "container", "contentTemplate", "deferRendering", "disabled", "dragAndResizeArea", "dragEnabled", "dragOutsideBoundary", "enableBodyScroll", "focusStateEnabled", "fullScreen", "height", "hideOnOutsideClick", "hideOnParentScroll", "hint", "hoverStateEnabled", "maxHeight", "maxWidth", "minHeight", "minWidth", "position", "resizeEnabled", "restorePosition", "rtlEnabled", "shading", "shadingColor", "showCloseButton", "showTitle", "tabIndex", "title", "titleTemplate", "toolbarItems", "visible", "width", "wrapperAttr"], outputs: ["onContentReady", "onDisposing", "onHidden", "onHiding", "onInitialized", "onOptionChanged", "onResize", "onResizeEnd", "onResizeStart", "onShowing", "onShown", "onTitleRendered", "accessKeyChange", "animationChange", "closeOnOutsideClickChange", "containerChange", "contentTemplateChange", "deferRenderingChange", "disabledChange", "dragAndResizeAreaChange", "dragEnabledChange", "dragOutsideBoundaryChange", "enableBodyScrollChange", "focusStateEnabledChange", "fullScreenChange", "heightChange", "hideOnOutsideClickChange", "hideOnParentScrollChange", "hintChange", "hoverStateEnabledChange", "maxHeightChange", "maxWidthChange", "minHeightChange", "minWidthChange", "positionChange", "resizeEnabledChange", "restorePositionChange", "rtlEnabledChange", "shadingChange", "shadingColorChange", "showCloseButtonChange", "showTitleChange", "tabIndexChange", "titleChange", "titleTemplateChange", "toolbarItemsChange", "visibleChange", "widthChange", "wrapperAttrChange"] }, { kind: "directive", type: i2.DxTemplateDirective, selector: "[dxTemplate]", inputs: ["dxTemplateOf"] }, { kind: "pipe", type: HRTranslatePipe, name: "HRTranslate" }, { kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: FontAwesomeModule }, { kind: "component", type: i1$2.FaIconComponent, selector: "fa-icon", inputs: ["icon", "title", "animation", "mask", "flip", "size", "pull", "border", "inverse", "symbol", "rotate", "fixedWidth", "transform", "a11yRole"] }, { kind: "ngmodule", type: DxDataGridModule }, { kind: "component", type: i1$1.DxDataGridComponent, selector: "dx-data-grid", inputs: ["accessKey", "activeStateEnabled", "allowColumnReordering", "allowColumnResizing", "autoNavigateToFocusedRow", "cacheEnabled", "cellHintEnabled", "columnAutoWidth", "columnChooser", "columnFixing", "columnHidingEnabled", "columnMinWidth", "columnResizingMode", "columns", "columnWidth", "customizeColumns", "dataRowTemplate", "dataSource", "dateSerializationFormat", "disabled", "editing", "elementAttr", "errorRowEnabled", "export", "filterBuilder", "filterBuilderPopup", "filterPanel", "filterRow", "filterSyncEnabled", "filterValue", "focusedColumnIndex", "focusedRowEnabled", "focusedRowIndex", "focusedRowKey", "grouping", "groupPanel", "headerFilter", "height", "highlightChanges", "hint", "hoverStateEnabled", "keyboardNavigation", "keyExpr", "loadPanel", "masterDetail", "noDataText", "pager", "paging", "remoteOperations", "renderAsync", "repaintChangesOnly", "rowAlternationEnabled", "rowDragging", "rowTemplate", "rtlEnabled", "scrolling", "searchPanel", "selectedRowKeys", "selection", "selectionFilter", "showBorders", "showColumnHeaders", "showColumnLines", "showRowLines", "sortByGroupSummaryInfo", "sorting", "stateStoring", "summary", "syncLookupFilterValues", "tabIndex", "toolbar", "twoWayBindingEnabled", "visible", "width", "wordWrapEnabled"], outputs: ["onAdaptiveDetailRowPreparing", "onCellClick", "onCellDblClick", "onCellHoverChanged", "onCellPrepared", "onContentReady", "onContextMenuPreparing", "onDataErrorOccurred", "onDisposing", "onEditCanceled", "onEditCanceling", "onEditingStart", "onEditorPrepared", "onEditorPreparing", "onExporting", "onFocusedCellChanged", "onFocusedCellChanging", "onFocusedRowChanged", "onFocusedRowChanging", "onInitialized", "onInitNewRow", "onKeyDown", "onOptionChanged", "onRowClick", "onRowCollapsed", "onRowCollapsing", "onRowDblClick", "onRowExpanded", "onRowExpanding", "onRowInserted", "onRowInserting", "onRowPrepared", "onRowRemoved", "onRowRemoving", "onRowUpdated", "onRowUpdating", "onRowValidating", "onSaved", "onSaving", "onSelectionChanged", "onToolbarPreparing", "accessKeyChange", "activeStateEnabledChange", "allowColumnReorderingChange", "allowColumnResizingChange", "autoNavigateToFocusedRowChange", "cacheEnabledChange", "cellHintEnabledChange", "columnAutoWidthChange", "columnChooserChange", "columnFixingChange", "columnHidingEnabledChange", "columnMinWidthChange", "columnResizingModeChange", "columnsChange", "columnWidthChange", "customizeColumnsChange", "dataRowTemplateChange", "dataSourceChange", "dateSerializationFormatChange", "disabledChange", "editingChange", "elementAttrChange", "errorRowEnabledChange", "exportChange", "filterBuilderChange", "filterBuilderPopupChange", "filterPanelChange", "filterRowChange", "filterSyncEnabledChange", "filterValueChange", "focusedColumnIndexChange", "focusedRowEnabledChange", "focusedRowIndexChange", "focusedRowKeyChange", "groupingChange", "groupPanelChange", "headerFilterChange", "heightChange", "highlightChangesChange", "hintChange", "hoverStateEnabledChange", "keyboardNavigationChange", "keyExprChange", "loadPanelChange", "masterDetailChange", "noDataTextChange", "pagerChange", "pagingChange", "remoteOperationsChange", "renderAsyncChange", "repaintChangesOnlyChange", "rowAlternationEnabledChange", "rowDraggingChange", "rowTemplateChange", "rtlEnabledChange", "scrollingChange", "searchPanelChange", "selectedRowKeysChange", "selectionChange", "selectionFilterChange", "showBordersChange", "showColumnHeadersChange", "showColumnLinesChange", "showRowLinesChange", "sortByGroupSummaryInfoChange", "sortingChange", "stateStoringChange", "summaryChange", "syncLookupFilterValuesChange", "tabIndexChange", "toolbarChange", "twoWayBindingEnabledChange", "visibleChange", "widthChange", "wordWrapEnabledChange"] }, { kind: "component", type: i5.DxiColumnComponent, selector: "dxi-column", inputs: ["alignment", "allowEditing", "allowExporting", "allowFiltering", "allowFixing", "allowGrouping", "allowHeaderFiltering", "allowHiding", "allowReordering", "allowResizing", "allowSearch", "allowSorting", "autoExpandGroup", "buttons", "calculateCellValue", "calculateDisplayValue", "calculateFilterExpression", "calculateGroupValue", "calculateSortValue", "caption", "cellTemplate", "columns", "cssClass", "customizeText", "dataField", "dataType", "editCellTemplate", "editorOptions", "encodeHtml", "falseText", "filterOperations", "filterType", "filterValue", "filterValues", "fixed", "fixedPosition", "format", "formItem", "groupCellTemplate", "groupIndex", "headerCellTemplate", "headerFilter", "hidingPriority", "isBand", "lookup", "minWidth", "name", "ownerBand", "renderAsync", "selectedFilterOperation", "setCellValue", "showEditorAlways", "showInColumnChooser", "showWhenGrouped", "sortIndex", "sortingMethod", "sortOrder", "trueText", "type", "validationRules", "visible", "visibleIndex", "width"], outputs: ["filterValueChange", "filterValuesChange", "groupIndexChange", "selectedFilterOperationChange", "sortIndexChange", "sortOrderChange", "visibleChange", "visibleIndexChange"] }, { kind: "component", type: i5.DxoPagingComponent, selector: "dxo-paging", inputs: ["enabled", "pageIndex", "pageSize"], outputs: ["pageIndexChange", "pageSizeChange"] }, { kind: "component", type: i5.DxoScrollingComponent, selector: "dxo-scrolling", inputs: ["columnRenderingMode", "mode", "preloadEnabled", "renderAsync", "rowRenderingMode", "scrollByContent", "scrollByThumb", "showScrollbar", "useNative"] }, { kind: "component", type: i5.DxoSortingComponent, selector: "dxo-sorting", inputs: ["ascendingText", "clearText", "descendingText", "mode", "showSortIndexes"] }, { kind: "component", type: BayanEmployeeBadgeComponent, selector: "bayan-employee-badge", inputs: ["badge", "width", "height", "imageClass", "badgeClass"], outputs: ["employeePhotoError"] }, { kind: "ngmodule", type: DxTextBoxModule }, { kind: "component", type: i1$1.DxTextBoxComponent, selector: "dx-text-box", inputs: ["accessKey", "activeStateEnabled", "buttons", "disabled", "elementAttr", "focusStateEnabled", "height", "hint", "hoverStateEnabled", "inputAttr", "isDirty", "isValid", "label", "labelMode", "mask", "maskChar", "maskInvalidMessage", "maskRules", "maxLength", "mode", "name", "placeholder", "readOnly", "rtlEnabled", "showClearButton", "showMaskMode", "spellcheck", "stylingMode", "tabIndex", "text", "useMaskedValue", "validationError", "validationErrors", "validationMessageMode", "validationMessagePosition", "validationStatus", "value", "valueChangeEvent", "visible", "width"], outputs: ["onChange", "onContentReady", "onCopy", "onCut", "onDisposing", "onEnterKey", "onFocusIn", "onFocusOut", "onInitialized", "onInput", "onKeyDown", "onKeyUp", "onOptionChanged", "onPaste", "onValueChanged", "accessKeyChange", "activeStateEnabledChange", "buttonsChange", "disabledChange", "elementAttrChange", "focusStateEnabledChange", "heightChange", "hintChange", "hoverStateEnabledChange", "inputAttrChange", "isDirtyChange", "isValidChange", "labelChange", "labelModeChange", "maskChange", "maskCharChange", "maskInvalidMessageChange", "maskRulesChange", "maxLengthChange", "modeChange", "nameChange", "placeholderChange", "readOnlyChange", "rtlEnabledChange", "showClearButtonChange", "showMaskModeChange", "spellcheckChange", "stylingModeChange", "tabIndexChange", "textChange", "useMaskedValueChange", "validationErrorChange", "validationErrorsChange", "validationMessageModeChange", "validationMessagePositionChange", "validationStatusChange", "valueChange", "valueChangeEventChange", "visibleChange", "widthChange", "onBlur"] }, { kind: "pipe", type: HRHighlightPipe, name: "HRHighlight" }] });
3858
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.20", type: HRNextWeekVacationInsightsPopupComponent, isStandalone: true, selector: "hr-next-week-vacation-insights-popup", inputs: { popupVisible: "popupVisible", popupType: "popupType", baseUrl: "baseUrl", width: "width", height: "height", gridHeight: "gridHeight", pageSize: "pageSize", showProperty: "showProperty" }, outputs: { closePopupClickHandler: "closePopupClickHandler" }, viewQueries: [{ propertyName: "dataGrid", first: true, predicate: DxDataGridComponent, descendants: true }], ngImport: i0, template: "<dx-popup [visible]=\"popupVisible\"\r\n [height]=\"height\"\r\n [minHeight]=\"'40%'\"\r\n [maxHeight]=\"'70%'\"\r\n [width]=\"width\"\r\n contentTemplate=\"popup-content\"\r\n [showCloseButton]=\"false\"\r\n shadingColor=\"rgba(0,0,0,0.4)\"\r\n titleTemplate=\"title\"\r\n [showTitle]=\"true\"\r\n (onShown)=\"onShown()\"\r\n (onHidden)=\"onHidden()\">\r\n\r\n <div *dxTemplate=\"let data of 'title'\">\r\n <div class=\"d-flex justify-content-between align-items-center my-0\">\r\n <p class=\"mx-3 fs-16 fw-meduim text-ellipsis-one-line\">\r\n <span class=\"text-dark-gray\">{{popupTitle ? (popupTitle | HRTranslate) : ('NextWeekVacationInsights' | HRTranslate)}}</span>\r\n <span class=\"mx-2 text-primary\">({{getPopupTitle() | HRTranslate}})</span>\r\n </p>\r\n <div class=\"p-2\" (click)=\"onPopupClose()\">\r\n <fa-icon [icon]=\"xMarkIcon\" class=\"fs-18 me-1 text-dark-gray cursor-pointer\"></fa-icon>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <div *dxTemplate=\"let d of 'popup-content'\">\r\n <div class=\"mb-2 d-flex justify-content-end\">\r\n <dx-text-box [width]=\"'250px'\"\r\n mode=\"search\"\r\n [value]=\"searchValue\"\r\n [placeholder]=\"'Search...' | HRTranslate\"\r\n (onValueChanged)=\"onSearchValueChanged($event)\">\r\n </dx-text-box>\r\n </div>\r\n @if(dataSource){\r\n <dx-data-grid class=\"popup-data-grid\"\r\n [dataSource]=\"dataSource\"\r\n [showBorders]=\"false\"\r\n [showRowLines]=\"false\"\r\n [showColumnLines]=\"false\"\r\n [columnAutoWidth]=\"true\"\r\n [wordWrapEnabled]=\"true\"\r\n [height]=\"gridHeight\"\r\n [allowColumnReordering]=\"false\"\r\n [remoteOperations]=\"{paging: true}\">\r\n\r\n <dxo-sorting mode=\"none\"></dxo-sorting>\r\n\r\n <dxo-scrolling mode=\"infinite\"\r\n [useNative]=\"false\"\r\n [scrollByContent]=\"true\"\r\n [scrollByThumb]=\"true\"\r\n showScrollbar=\"always\">\r\n </dxo-scrolling>\r\n\r\n <dxo-paging [enabled]=\"true\" [pageSize]=\"pageSize\"></dxo-paging>\r\n\r\n <dxi-column caption=\"{{'Employee' | HRTranslate}}\"\r\n dataField=\"EmployeeName\"\r\n cellTemplate=\"employeeCellTemplate\"\r\n [minWidth]=\"250\">\r\n </dxi-column>\r\n\r\n @if(popupType === VacationPopupType.Upcoming){\r\n <dxi-column caption=\"{{'StartDate' | HRTranslate}}\"\r\n dataField=\"VacationStartDate\"\r\n dataType=\"date\"\r\n format=\"dd/MM/yyyy\"\r\n [width]=\"120\"\r\n alignment=\"start\">\r\n </dxi-column>\r\n <dxi-column caption=\"{{'EndDate' | HRTranslate}}\"\r\n dataField=\"VacationEndDate\"\r\n dataType=\"date\"\r\n format=\"dd/MM/yyyy\"\r\n [width]=\"120\"\r\n alignment=\"start\">\r\n </dxi-column>\r\n }@else{\r\n <dxi-column caption=\"{{'ReturnDate' | HRTranslate}}\"\r\n dataField=\"ReturnDate\"\r\n dataType=\"date\"\r\n format=\"dd/MM/yyyy\"\r\n [width]=\"120\"\r\n alignment=\"start\">\r\n </dxi-column>\r\n }\r\n\r\n <div *dxTemplate=\"let cell of 'employeeCellTemplate'\">\r\n <div class=\"d-flex align-items-center\">\r\n <bayan-employee-badge\r\n [badge]=\"getEmployeeBadge(cell.data)\"\r\n badgeClass=\"badge employee-rounded-badge-xl fs-6\"\r\n imageClass=\"rounded-circle\"\r\n [width]=\"'40px'\"\r\n [height]=\"'40px'\"\r\n (employeePhotoError)=\"handleEmployeePhotoError(cell.data)\">\r\n </bayan-employee-badge>\r\n <div class=\"d-flex flex-column ms-1\">\r\n <div class=\"d-flex flex-row ms-2\">\r\n @if(showProperty){\r\n <span class=\"property-badge cursor-pointer me-1\" [title]=\"cell.data.PropertyName\" [innerHTML]=\"cell.data.PropertySymbol\"></span>\r\n }\r\n <span class=\"text-ellipsis-one-line fs-14 text-dark-gray fw-normal\"\r\n [title]=\"cell.data.EmployeeNumber + ' | ' + cell.data.EmployeeName\"\r\n [innerHTML]=\"(cell.data.EmployeeNumber + ' | ' + cell.data.EmployeeName) | HRHighlight:searchValue\">\r\n </span>\r\n </div>\r\n <p class=\"ms-2 mt-1 text-ellipsis-one-line fs-12 text-dark-gray fw-normal mb-0\"\r\n [innerHTML]=\"cell.data.EmployeeAdminUnitName | HRHighlight:searchValue\">\r\n </p>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n </dx-data-grid>\r\n }\r\n </div>\r\n</dx-popup>\r\n", dependencies: [{ kind: "ngmodule", type: DxPopupModule }, { kind: "component", type: i1$1.DxPopupComponent, selector: "dx-popup", inputs: ["accessKey", "animation", "closeOnOutsideClick", "container", "contentTemplate", "deferRendering", "disabled", "dragAndResizeArea", "dragEnabled", "dragOutsideBoundary", "enableBodyScroll", "focusStateEnabled", "fullScreen", "height", "hideOnOutsideClick", "hideOnParentScroll", "hint", "hoverStateEnabled", "maxHeight", "maxWidth", "minHeight", "minWidth", "position", "resizeEnabled", "restorePosition", "rtlEnabled", "shading", "shadingColor", "showCloseButton", "showTitle", "tabIndex", "title", "titleTemplate", "toolbarItems", "visible", "width", "wrapperAttr"], outputs: ["onContentReady", "onDisposing", "onHidden", "onHiding", "onInitialized", "onOptionChanged", "onResize", "onResizeEnd", "onResizeStart", "onShowing", "onShown", "onTitleRendered", "accessKeyChange", "animationChange", "closeOnOutsideClickChange", "containerChange", "contentTemplateChange", "deferRenderingChange", "disabledChange", "dragAndResizeAreaChange", "dragEnabledChange", "dragOutsideBoundaryChange", "enableBodyScrollChange", "focusStateEnabledChange", "fullScreenChange", "heightChange", "hideOnOutsideClickChange", "hideOnParentScrollChange", "hintChange", "hoverStateEnabledChange", "maxHeightChange", "maxWidthChange", "minHeightChange", "minWidthChange", "positionChange", "resizeEnabledChange", "restorePositionChange", "rtlEnabledChange", "shadingChange", "shadingColorChange", "showCloseButtonChange", "showTitleChange", "tabIndexChange", "titleChange", "titleTemplateChange", "toolbarItemsChange", "visibleChange", "widthChange", "wrapperAttrChange"] }, { kind: "directive", type: i2.DxTemplateDirective, selector: "[dxTemplate]", inputs: ["dxTemplateOf"] }, { kind: "pipe", type: HRTranslatePipe, name: "HRTranslate" }, { kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: FontAwesomeModule }, { kind: "component", type: i3.FaIconComponent, selector: "fa-icon", inputs: ["icon", "title", "animation", "mask", "flip", "size", "pull", "border", "inverse", "symbol", "rotate", "fixedWidth", "transform", "a11yRole"] }, { kind: "ngmodule", type: DxDataGridModule }, { kind: "component", type: i1$1.DxDataGridComponent, selector: "dx-data-grid", inputs: ["accessKey", "activeStateEnabled", "allowColumnReordering", "allowColumnResizing", "autoNavigateToFocusedRow", "cacheEnabled", "cellHintEnabled", "columnAutoWidth", "columnChooser", "columnFixing", "columnHidingEnabled", "columnMinWidth", "columnResizingMode", "columns", "columnWidth", "customizeColumns", "dataRowTemplate", "dataSource", "dateSerializationFormat", "disabled", "editing", "elementAttr", "errorRowEnabled", "export", "filterBuilder", "filterBuilderPopup", "filterPanel", "filterRow", "filterSyncEnabled", "filterValue", "focusedColumnIndex", "focusedRowEnabled", "focusedRowIndex", "focusedRowKey", "grouping", "groupPanel", "headerFilter", "height", "highlightChanges", "hint", "hoverStateEnabled", "keyboardNavigation", "keyExpr", "loadPanel", "masterDetail", "noDataText", "pager", "paging", "remoteOperations", "renderAsync", "repaintChangesOnly", "rowAlternationEnabled", "rowDragging", "rowTemplate", "rtlEnabled", "scrolling", "searchPanel", "selectedRowKeys", "selection", "selectionFilter", "showBorders", "showColumnHeaders", "showColumnLines", "showRowLines", "sortByGroupSummaryInfo", "sorting", "stateStoring", "summary", "syncLookupFilterValues", "tabIndex", "toolbar", "twoWayBindingEnabled", "visible", "width", "wordWrapEnabled"], outputs: ["onAdaptiveDetailRowPreparing", "onCellClick", "onCellDblClick", "onCellHoverChanged", "onCellPrepared", "onContentReady", "onContextMenuPreparing", "onDataErrorOccurred", "onDisposing", "onEditCanceled", "onEditCanceling", "onEditingStart", "onEditorPrepared", "onEditorPreparing", "onExporting", "onFocusedCellChanged", "onFocusedCellChanging", "onFocusedRowChanged", "onFocusedRowChanging", "onInitialized", "onInitNewRow", "onKeyDown", "onOptionChanged", "onRowClick", "onRowCollapsed", "onRowCollapsing", "onRowDblClick", "onRowExpanded", "onRowExpanding", "onRowInserted", "onRowInserting", "onRowPrepared", "onRowRemoved", "onRowRemoving", "onRowUpdated", "onRowUpdating", "onRowValidating", "onSaved", "onSaving", "onSelectionChanged", "onToolbarPreparing", "accessKeyChange", "activeStateEnabledChange", "allowColumnReorderingChange", "allowColumnResizingChange", "autoNavigateToFocusedRowChange", "cacheEnabledChange", "cellHintEnabledChange", "columnAutoWidthChange", "columnChooserChange", "columnFixingChange", "columnHidingEnabledChange", "columnMinWidthChange", "columnResizingModeChange", "columnsChange", "columnWidthChange", "customizeColumnsChange", "dataRowTemplateChange", "dataSourceChange", "dateSerializationFormatChange", "disabledChange", "editingChange", "elementAttrChange", "errorRowEnabledChange", "exportChange", "filterBuilderChange", "filterBuilderPopupChange", "filterPanelChange", "filterRowChange", "filterSyncEnabledChange", "filterValueChange", "focusedColumnIndexChange", "focusedRowEnabledChange", "focusedRowIndexChange", "focusedRowKeyChange", "groupingChange", "groupPanelChange", "headerFilterChange", "heightChange", "highlightChangesChange", "hintChange", "hoverStateEnabledChange", "keyboardNavigationChange", "keyExprChange", "loadPanelChange", "masterDetailChange", "noDataTextChange", "pagerChange", "pagingChange", "remoteOperationsChange", "renderAsyncChange", "repaintChangesOnlyChange", "rowAlternationEnabledChange", "rowDraggingChange", "rowTemplateChange", "rtlEnabledChange", "scrollingChange", "searchPanelChange", "selectedRowKeysChange", "selectionChange", "selectionFilterChange", "showBordersChange", "showColumnHeadersChange", "showColumnLinesChange", "showRowLinesChange", "sortByGroupSummaryInfoChange", "sortingChange", "stateStoringChange", "summaryChange", "syncLookupFilterValuesChange", "tabIndexChange", "toolbarChange", "twoWayBindingEnabledChange", "visibleChange", "widthChange", "wordWrapEnabledChange"] }, { kind: "component", type: i5.DxiColumnComponent, selector: "dxi-column", inputs: ["alignment", "allowEditing", "allowExporting", "allowFiltering", "allowFixing", "allowGrouping", "allowHeaderFiltering", "allowHiding", "allowReordering", "allowResizing", "allowSearch", "allowSorting", "autoExpandGroup", "buttons", "calculateCellValue", "calculateDisplayValue", "calculateFilterExpression", "calculateGroupValue", "calculateSortValue", "caption", "cellTemplate", "columns", "cssClass", "customizeText", "dataField", "dataType", "editCellTemplate", "editorOptions", "encodeHtml", "falseText", "filterOperations", "filterType", "filterValue", "filterValues", "fixed", "fixedPosition", "format", "formItem", "groupCellTemplate", "groupIndex", "headerCellTemplate", "headerFilter", "hidingPriority", "isBand", "lookup", "minWidth", "name", "ownerBand", "renderAsync", "selectedFilterOperation", "setCellValue", "showEditorAlways", "showInColumnChooser", "showWhenGrouped", "sortIndex", "sortingMethod", "sortOrder", "trueText", "type", "validationRules", "visible", "visibleIndex", "width"], outputs: ["filterValueChange", "filterValuesChange", "groupIndexChange", "selectedFilterOperationChange", "sortIndexChange", "sortOrderChange", "visibleChange", "visibleIndexChange"] }, { kind: "component", type: i5.DxoPagingComponent, selector: "dxo-paging", inputs: ["enabled", "pageIndex", "pageSize"], outputs: ["pageIndexChange", "pageSizeChange"] }, { kind: "component", type: i5.DxoScrollingComponent, selector: "dxo-scrolling", inputs: ["columnRenderingMode", "mode", "preloadEnabled", "renderAsync", "rowRenderingMode", "scrollByContent", "scrollByThumb", "showScrollbar", "useNative"] }, { kind: "component", type: i5.DxoSortingComponent, selector: "dxo-sorting", inputs: ["ascendingText", "clearText", "descendingText", "mode", "showSortIndexes"] }, { kind: "component", type: BayanEmployeeBadgeComponent, selector: "bayan-employee-badge", inputs: ["badge", "width", "height", "imageClass", "badgeClass"], outputs: ["employeePhotoError"] }, { kind: "ngmodule", type: DxTextBoxModule }, { kind: "component", type: i1$1.DxTextBoxComponent, selector: "dx-text-box", inputs: ["accessKey", "activeStateEnabled", "buttons", "disabled", "elementAttr", "focusStateEnabled", "height", "hint", "hoverStateEnabled", "inputAttr", "isDirty", "isValid", "label", "labelMode", "mask", "maskChar", "maskInvalidMessage", "maskRules", "maxLength", "mode", "name", "placeholder", "readOnly", "rtlEnabled", "showClearButton", "showMaskMode", "spellcheck", "stylingMode", "tabIndex", "text", "useMaskedValue", "validationError", "validationErrors", "validationMessageMode", "validationMessagePosition", "validationStatus", "value", "valueChangeEvent", "visible", "width"], outputs: ["onChange", "onContentReady", "onCopy", "onCut", "onDisposing", "onEnterKey", "onFocusIn", "onFocusOut", "onInitialized", "onInput", "onKeyDown", "onKeyUp", "onOptionChanged", "onPaste", "onValueChanged", "accessKeyChange", "activeStateEnabledChange", "buttonsChange", "disabledChange", "elementAttrChange", "focusStateEnabledChange", "heightChange", "hintChange", "hoverStateEnabledChange", "inputAttrChange", "isDirtyChange", "isValidChange", "labelChange", "labelModeChange", "maskChange", "maskCharChange", "maskInvalidMessageChange", "maskRulesChange", "maxLengthChange", "modeChange", "nameChange", "placeholderChange", "readOnlyChange", "rtlEnabledChange", "showClearButtonChange", "showMaskModeChange", "spellcheckChange", "stylingModeChange", "tabIndexChange", "textChange", "useMaskedValueChange", "validationErrorChange", "validationErrorsChange", "validationMessageModeChange", "validationMessagePositionChange", "validationStatusChange", "valueChange", "valueChangeEventChange", "visibleChange", "widthChange", "onBlur"] }, { kind: "pipe", type: HRHighlightPipe, name: "HRHighlight" }] });
3872
3859
  }
3873
3860
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: HRNextWeekVacationInsightsPopupComponent, decorators: [{
3874
3861
  type: Component,
@@ -4070,7 +4057,7 @@ class ProfileExperiencesWidgetComponent {
4070
4057
  return classes.join(' ');
4071
4058
  }
4072
4059
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: ProfileExperiencesWidgetComponent, deps: [{ token: HRSelfWidgetsService }], target: i0.ɵɵFactoryTarget.Component });
4073
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.20", type: ProfileExperiencesWidgetComponent, isStandalone: true, selector: "hr-profile-experiences-widget", inputs: { baseUrl: "baseUrl", sectionTitle: "sectionTitle", viewIcon: "viewIcon", downloadIcon: "downloadIcon", experienceIcon: "experienceIcon", headerIconClass: "headerIconClass", headerTextClass: "headerTextClass", headerDividerClass: "headerDividerClass", rowClass: "rowClass", headerRowClass: "headerRowClass", actionsSpacerClass: "actionsSpacerClass", labelClass: "labelClass", valueClass: "valueClass", viewIconClass: "viewIconClass", downloadIconClass: "downloadIconClass", emptyStateContainerClass: "emptyStateContainerClass", emptyStateTextClass: "emptyStateTextClass", itemRowClass: "itemRowClass", itemColumnsWrapperClass: "itemColumnsWrapperClass", itemColumnClass: "itemColumnClass", actionsColumnClass: "actionsColumnClass", rowMarginBottomClass: "rowMarginBottomClass", rowMarginBottomEmptyClass: "rowMarginBottomEmptyClass" }, outputs: { isLoadingChanged: "isLoadingChanged", attachmentViewed: "attachmentViewed", attachmentDownloaded: "attachmentDownloaded", errorOccurred: "errorOccurred" }, ngImport: i0, template: "<sky-section-divider [fontAwesomeIcon]=\"experienceIcon\"\r\n [text]=\"(sectionTitle | HRTranslate | uppercase)\"\r\n [iconClass]=\"headerIconClass\"\r\n [textClass]=\"headerTextClass\"\r\n [dividerClass]=\"headerDividerClass\">\r\n</sky-section-divider>\r\n\r\n<div [class]=\"wrapperClass\">\r\n\r\n @if(experiences.length > 0){\r\n\r\n <div class=\"row\">\r\n <div [class]=\"headerRowClass\">\r\n <div [class]=\"itemColumnClass\">\r\n <p [class]=\"labelClass\">{{'Period' | HRTranslate}}</p>\r\n </div>\r\n\r\n <div [class]=\"itemColumnClass\">\r\n <p [class]=\"labelClass\">{{'Employer' | HRTranslate}}</p>\r\n </div>\r\n\r\n <div [class]=\"itemColumnClass\">\r\n <p [class]=\"labelClass\">{{'Position' | HRTranslate}}</p>\r\n </div>\r\n\r\n <div [class]=\"itemColumnClass\">\r\n <p [class]=\"labelClass\">{{'TerminationReason' | HRTranslate}}</p>\r\n </div>\r\n </div>\r\n\r\n <div [class]=\"actionsSpacerClass\"></div>\r\n\r\n @for (experience of experiences; track experience){\r\n <div [class]=\"itemColumnsWrapperClass\">\r\n <div [class]=\"itemColumnClass\">\r\n <p [class]=\"valueClass\" [title]=\"(experience.StartDate | date:'dd/MM/yyyy') + ' - ' + (experience.EndDate | date:'dd/MM/yyyy')\">{{(experience.StartDate | date:'dd/MM/yyyy') + ' - ' + (experience.EndDate | date:'dd/MM/yyyy')}}</p>\r\n </div>\r\n\r\n <div [class]=\"itemColumnClass\">\r\n <p [class]=\"valueClass\" [title]=\"experience.Employer ? experience.Employer : ''\">\r\n @if(experience.Employer){\r\n {{experience.Employer}}\r\n }@else{\r\n {{'\u2014'}}\r\n }\r\n </p>\r\n </div>\r\n\r\n <div [class]=\"itemColumnClass\">\r\n <p [class]=\"valueClass\" [title]=\"experience.Position ? experience.Position : ''\">\r\n @if(experience.Position){\r\n {{experience.Position}}\r\n }@else{\r\n {{'\u2014'}}\r\n }\r\n </p>\r\n </div>\r\n\r\n <div [class]=\"itemColumnClass\">\r\n <p [class]=\"valueClass\" [title]=\"experience.TerminationReason ? experience.TerminationReason : ''\">\r\n @if(experience.TerminationReason){\r\n {{experience.TerminationReason}}\r\n }@else{\r\n {{'\u2014'}}\r\n }\r\n </p>\r\n </div>\r\n </div>\r\n\r\n @if(experience.Document){\r\n <div [class]=\"actionsColumnClass\">\r\n <fa-icon [icon]=\"viewIcon\" [class]=\"viewIconClass\" (click)=\"onAttachmentView(experience.Document)\"></fa-icon>\r\n <fa-icon [icon]=\"downloadIcon\" [class]=\"downloadIconClass\" (click)=\"onAttachmentDownload(experience.Document)\"></fa-icon>\r\n </div>\r\n }\r\n\r\n }\r\n\r\n </div>\r\n }@else{\r\n\r\n <sky-empty-design-card [containerClass]=\"emptyStateContainerClass\"\r\n [cardBodyClass]=\"''\"\r\n [cardBodyContainerClass]=\"''\"\r\n [visibleIcon]=\"false\"\r\n [visibleQuickAction]=\"false\"\r\n [emptyTextClass]=\"emptyStateTextClass\"\r\n [emptyText]=\"isLoading ? ((sectionTitle | HRTranslate) + ' ' + ('IsLoading' | HRTranslate)) : ('ThereIsNoExperiencesYet' | HRTranslate)\">\r\n</sky-empty-design-card>\r\n\r\n }\r\n</div>\r\n", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "pipe", type: i2$1.UpperCasePipe, name: "uppercase" }, { kind: "pipe", type: i2$1.DatePipe, name: "date" }, { kind: "component", type: SkySectionDividerComponent, selector: "sky-section-divider", inputs: ["text", "fontAwesomeIcon", "textClass", "dividerClass", "iconClass"] }, { kind: "pipe", type: HRTranslatePipe, name: "HRTranslate" }, { kind: "component", type: SkyEmptyDesignCardComponent, selector: "sky-empty-design-card", inputs: ["emptyIcon", "emptyIconClass", "emptyText", "emptyTextClass", "actionTitle", "actionIcon", "actionDisabled", "textColor", "disabledTitleClass", "activeTitleClass", "disabledIconClass", "activeIconClass", "actionClass", "containerClass", "cardBodyClass", "cardBodyContainerClass", "visibleIcon", "visibleQuickAction"], outputs: ["onActionClick"] }, { kind: "ngmodule", type: FontAwesomeModule }, { kind: "component", type: i1$2.FaIconComponent, selector: "fa-icon", inputs: ["icon", "title", "animation", "mask", "flip", "size", "pull", "border", "inverse", "symbol", "rotate", "fixedWidth", "transform", "a11yRole"] }] });
4060
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.20", type: ProfileExperiencesWidgetComponent, isStandalone: true, selector: "hr-profile-experiences-widget", inputs: { baseUrl: "baseUrl", sectionTitle: "sectionTitle", viewIcon: "viewIcon", downloadIcon: "downloadIcon", experienceIcon: "experienceIcon", headerIconClass: "headerIconClass", headerTextClass: "headerTextClass", headerDividerClass: "headerDividerClass", rowClass: "rowClass", headerRowClass: "headerRowClass", actionsSpacerClass: "actionsSpacerClass", labelClass: "labelClass", valueClass: "valueClass", viewIconClass: "viewIconClass", downloadIconClass: "downloadIconClass", emptyStateContainerClass: "emptyStateContainerClass", emptyStateTextClass: "emptyStateTextClass", itemRowClass: "itemRowClass", itemColumnsWrapperClass: "itemColumnsWrapperClass", itemColumnClass: "itemColumnClass", actionsColumnClass: "actionsColumnClass", rowMarginBottomClass: "rowMarginBottomClass", rowMarginBottomEmptyClass: "rowMarginBottomEmptyClass" }, outputs: { isLoadingChanged: "isLoadingChanged", attachmentViewed: "attachmentViewed", attachmentDownloaded: "attachmentDownloaded", errorOccurred: "errorOccurred" }, ngImport: i0, template: "<sky-section-divider [fontAwesomeIcon]=\"experienceIcon\"\r\n [text]=\"(sectionTitle | HRTranslate | uppercase)\"\r\n [iconClass]=\"headerIconClass\"\r\n [textClass]=\"headerTextClass\"\r\n [dividerClass]=\"headerDividerClass\">\r\n</sky-section-divider>\r\n\r\n<div [class]=\"wrapperClass\">\r\n\r\n @if(experiences.length > 0){\r\n\r\n <div class=\"row\">\r\n <div [class]=\"headerRowClass\">\r\n <div [class]=\"itemColumnClass\">\r\n <p [class]=\"labelClass\">{{'Period' | HRTranslate}}</p>\r\n </div>\r\n\r\n <div [class]=\"itemColumnClass\">\r\n <p [class]=\"labelClass\">{{'Employer' | HRTranslate}}</p>\r\n </div>\r\n\r\n <div [class]=\"itemColumnClass\">\r\n <p [class]=\"labelClass\">{{'Position' | HRTranslate}}</p>\r\n </div>\r\n\r\n <div [class]=\"itemColumnClass\">\r\n <p [class]=\"labelClass\">{{'TerminationReason' | HRTranslate}}</p>\r\n </div>\r\n </div>\r\n\r\n <div [class]=\"actionsSpacerClass\"></div>\r\n\r\n @for (experience of experiences; track experience){\r\n <div [class]=\"itemColumnsWrapperClass\">\r\n <div [class]=\"itemColumnClass\">\r\n <p [class]=\"valueClass\" [title]=\"(experience.StartDate | date:'dd/MM/yyyy') + ' - ' + (experience.EndDate | date:'dd/MM/yyyy')\">{{(experience.StartDate | date:'dd/MM/yyyy') + ' - ' + (experience.EndDate | date:'dd/MM/yyyy')}}</p>\r\n </div>\r\n\r\n <div [class]=\"itemColumnClass\">\r\n <p [class]=\"valueClass\" [title]=\"experience.Employer ? experience.Employer : ''\">\r\n @if(experience.Employer){\r\n {{experience.Employer}}\r\n }@else{\r\n {{'\u2014'}}\r\n }\r\n </p>\r\n </div>\r\n\r\n <div [class]=\"itemColumnClass\">\r\n <p [class]=\"valueClass\" [title]=\"experience.Position ? experience.Position : ''\">\r\n @if(experience.Position){\r\n {{experience.Position}}\r\n }@else{\r\n {{'\u2014'}}\r\n }\r\n </p>\r\n </div>\r\n\r\n <div [class]=\"itemColumnClass\">\r\n <p [class]=\"valueClass\" [title]=\"experience.TerminationReason ? experience.TerminationReason : ''\">\r\n @if(experience.TerminationReason){\r\n {{experience.TerminationReason}}\r\n }@else{\r\n {{'\u2014'}}\r\n }\r\n </p>\r\n </div>\r\n </div>\r\n\r\n @if(experience.Document){\r\n <div [class]=\"actionsColumnClass\">\r\n <fa-icon [icon]=\"viewIcon\" [class]=\"viewIconClass\" (click)=\"onAttachmentView(experience.Document)\"></fa-icon>\r\n <fa-icon [icon]=\"downloadIcon\" [class]=\"downloadIconClass\" (click)=\"onAttachmentDownload(experience.Document)\"></fa-icon>\r\n </div>\r\n }\r\n\r\n }\r\n\r\n </div>\r\n }@else{\r\n\r\n <sky-empty-design-card [containerClass]=\"emptyStateContainerClass\"\r\n [cardBodyClass]=\"''\"\r\n [cardBodyContainerClass]=\"''\"\r\n [visibleIcon]=\"false\"\r\n [visibleQuickAction]=\"false\"\r\n [emptyTextClass]=\"emptyStateTextClass\"\r\n [emptyText]=\"isLoading ? ((sectionTitle | HRTranslate) + ' ' + ('IsLoading' | HRTranslate)) : ('ThereIsNoExperiencesYet' | HRTranslate)\">\r\n</sky-empty-design-card>\r\n\r\n }\r\n</div>\r\n", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "pipe", type: i2$1.UpperCasePipe, name: "uppercase" }, { kind: "pipe", type: i2$1.DatePipe, name: "date" }, { kind: "component", type: SkySectionDividerComponent, selector: "sky-section-divider", inputs: ["text", "fontAwesomeIcon", "textClass", "dividerClass", "iconClass"] }, { kind: "pipe", type: HRTranslatePipe, name: "HRTranslate" }, { kind: "component", type: SkyEmptyDesignCardComponent, selector: "sky-empty-design-card", inputs: ["emptyIcon", "emptyIconClass", "emptyText", "emptyTextClass", "actionTitle", "actionIcon", "actionDisabled", "textColor", "disabledTitleClass", "activeTitleClass", "disabledIconClass", "activeIconClass", "actionClass", "containerClass", "cardBodyClass", "cardBodyContainerClass", "visibleIcon", "visibleQuickAction"], outputs: ["onActionClick"] }, { kind: "ngmodule", type: FontAwesomeModule }, { kind: "component", type: i3.FaIconComponent, selector: "fa-icon", inputs: ["icon", "title", "animation", "mask", "flip", "size", "pull", "border", "inverse", "symbol", "rotate", "fixedWidth", "transform", "a11yRole"] }] });
4074
4061
  }
4075
4062
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: ProfileExperiencesWidgetComponent, decorators: [{
4076
4063
  type: Component,
@@ -4203,7 +4190,7 @@ class ProfileDegreesWidgetComponent {
4203
4190
  this.attachmentDownloaded.emit(file);
4204
4191
  }
4205
4192
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: ProfileDegreesWidgetComponent, deps: [{ token: HRSelfWidgetsService }], target: i0.ɵɵFactoryTarget.Component });
4206
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.20", type: ProfileDegreesWidgetComponent, isStandalone: true, selector: "hr-profile-degrees-widget", inputs: { baseUrl: "baseUrl", sectionTitle: "sectionTitle", degreesIcon: "degreesIcon", viewIcon: "viewIcon", downloadIcon: "downloadIcon", headerIconClass: "headerIconClass", headerTextClass: "headerTextClass", headerDividerClass: "headerDividerClass", rowClass: "rowClass", rowMarginBottomClass: "rowMarginBottomClass", rowMarginBottomEmptyClass: "rowMarginBottomEmptyClass", headerRowClass: "headerRowClass", actionsSpacerClass: "actionsSpacerClass", labelClass: "labelClass", valueClass: "valueClass", viewIconClass: "viewIconClass", downloadIconClass: "downloadIconClass", emptyStateContainerClass: "emptyStateContainerClass", emptyStateTextClass: "emptyStateTextClass", itemRowClass: "itemRowClass", itemColumnsWrapperClass: "itemColumnsWrapperClass", itemColumnClass: "itemColumnClass", actionsColumnClass: "actionsColumnClass" }, outputs: { isLoadingChanged: "isLoadingChanged", attachmentViewed: "attachmentViewed", attachmentDownloaded: "attachmentDownloaded", errorOccurred: "errorOccurred" }, ngImport: i0, template: "<sky-section-divider [fontAwesomeIcon]=\"degreesIcon\"\r\n [text]=\"(sectionTitle | HRTranslate | uppercase)\"\r\n [iconClass]=\"headerIconClass\"\r\n [textClass]=\"headerTextClass\"\r\n [dividerClass]=\"headerDividerClass\">\r\n</sky-section-divider>\r\n\r\n<div [class]=\"wrapperClass\">\r\n\r\n @if(degrees.length > 0){\r\n\r\n <div class=\"row\">\r\n <div [class]=\"headerRowClass\">\r\n <div [class]=\"itemColumnClass\">\r\n <p [class]=\"labelClass\">{{'Degree/Year' | HRTranslate}}</p>\r\n </div>\r\n\r\n <div [class]=\"itemColumnClass\">\r\n <p [class]=\"labelClass\">{{'Country' | HRTranslate}}</p>\r\n </div>\r\n\r\n <div [class]=\"itemColumnClass\">\r\n <p [class]=\"labelClass\">{{'Specialty' | HRTranslate}}</p>\r\n </div>\r\n\r\n <div [class]=\"itemColumnClass\">\r\n <p [class]=\"labelClass\">{{'Institute' | HRTranslate}}</p>\r\n </div>\r\n </div>\r\n\r\n <div [class]=\"actionsSpacerClass\"></div>\r\n\r\n @for (qualification of degrees; track qualification){\r\n <div [class]=\"itemColumnsWrapperClass\">\r\n <div [class]=\"itemColumnClass\">\r\n <p [class]=\"valueClass\" [title]=\"qualification.DegreeName + ' / ' + qualification.DegreeYear\">{{qualification.DegreeName + ' / ' + qualification.DegreeYear}}</p>\r\n </div>\r\n\r\n <div [class]=\"itemColumnClass\">\r\n <p [class]=\"valueClass\" [title]=\"qualification.CountryName ? qualification.CountryName : ''\">{{qualification.CountryName}}</p>\r\n </div>\r\n\r\n <div [class]=\"itemColumnClass\">\r\n <p [class]=\"valueClass\" [title]=\"qualification.Specialty ? qualification.Specialty : ''\">\r\n @if(qualification.Specialty){\r\n {{qualification.Specialty}}\r\n }@else{\r\n {{'\u2014'}}\r\n }\r\n </p>\r\n </div>\r\n\r\n <div [class]=\"itemColumnClass\">\r\n <p [class]=\"valueClass\" [title]=\"qualification.Institute ? qualification.Institute : ''\">\r\n @if(qualification.Institute){\r\n {{qualification.Institute}}\r\n }@else{\r\n {{'\u2014'}}\r\n }\r\n </p>\r\n </div>\r\n </div>\r\n\r\n @if(qualification.Document){\r\n <div [class]=\"actionsColumnClass\">\r\n <fa-icon [icon]=\"viewIcon\" [class]=\"viewIconClass\" (click)=\"onAttachmentView(qualification.Document)\"></fa-icon>\r\n <fa-icon [icon]=\"downloadIcon\" [class]=\"downloadIconClass\" (click)=\"onAttachmentDownload(qualification.Document)\"></fa-icon>\r\n </div>\r\n }\r\n }\r\n </div>\r\n }@else{\r\n\r\n <sky-empty-design-card [containerClass]=\"emptyStateContainerClass\"\r\n [cardBodyClass]=\"''\"\r\n [cardBodyContainerClass]=\"''\"\r\n [visibleIcon]=\"false\"\r\n [visibleQuickAction]=\"false\"\r\n [emptyTextClass]=\"emptyStateTextClass\"\r\n [emptyText]=\"isLoading ? ((sectionTitle | HRTranslate) + ' ' + ('IsLoading' | HRTranslate)) : ('ThereIsNoDegreesYet' | HRTranslate)\">\r\n</sky-empty-design-card>\r\n\r\n }\r\n\r\n</div>\r\n", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "pipe", type: i2$1.UpperCasePipe, name: "uppercase" }, { kind: "component", type: SkySectionDividerComponent, selector: "sky-section-divider", inputs: ["text", "fontAwesomeIcon", "textClass", "dividerClass", "iconClass"] }, { kind: "pipe", type: HRTranslatePipe, name: "HRTranslate" }, { kind: "component", type: SkyEmptyDesignCardComponent, selector: "sky-empty-design-card", inputs: ["emptyIcon", "emptyIconClass", "emptyText", "emptyTextClass", "actionTitle", "actionIcon", "actionDisabled", "textColor", "disabledTitleClass", "activeTitleClass", "disabledIconClass", "activeIconClass", "actionClass", "containerClass", "cardBodyClass", "cardBodyContainerClass", "visibleIcon", "visibleQuickAction"], outputs: ["onActionClick"] }, { kind: "ngmodule", type: FontAwesomeModule }, { kind: "component", type: i1$2.FaIconComponent, selector: "fa-icon", inputs: ["icon", "title", "animation", "mask", "flip", "size", "pull", "border", "inverse", "symbol", "rotate", "fixedWidth", "transform", "a11yRole"] }] });
4193
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.20", type: ProfileDegreesWidgetComponent, isStandalone: true, selector: "hr-profile-degrees-widget", inputs: { baseUrl: "baseUrl", sectionTitle: "sectionTitle", degreesIcon: "degreesIcon", viewIcon: "viewIcon", downloadIcon: "downloadIcon", headerIconClass: "headerIconClass", headerTextClass: "headerTextClass", headerDividerClass: "headerDividerClass", rowClass: "rowClass", rowMarginBottomClass: "rowMarginBottomClass", rowMarginBottomEmptyClass: "rowMarginBottomEmptyClass", headerRowClass: "headerRowClass", actionsSpacerClass: "actionsSpacerClass", labelClass: "labelClass", valueClass: "valueClass", viewIconClass: "viewIconClass", downloadIconClass: "downloadIconClass", emptyStateContainerClass: "emptyStateContainerClass", emptyStateTextClass: "emptyStateTextClass", itemRowClass: "itemRowClass", itemColumnsWrapperClass: "itemColumnsWrapperClass", itemColumnClass: "itemColumnClass", actionsColumnClass: "actionsColumnClass" }, outputs: { isLoadingChanged: "isLoadingChanged", attachmentViewed: "attachmentViewed", attachmentDownloaded: "attachmentDownloaded", errorOccurred: "errorOccurred" }, ngImport: i0, template: "<sky-section-divider [fontAwesomeIcon]=\"degreesIcon\"\r\n [text]=\"(sectionTitle | HRTranslate | uppercase)\"\r\n [iconClass]=\"headerIconClass\"\r\n [textClass]=\"headerTextClass\"\r\n [dividerClass]=\"headerDividerClass\">\r\n</sky-section-divider>\r\n\r\n<div [class]=\"wrapperClass\">\r\n\r\n @if(degrees.length > 0){\r\n\r\n <div class=\"row\">\r\n <div [class]=\"headerRowClass\">\r\n <div [class]=\"itemColumnClass\">\r\n <p [class]=\"labelClass\">{{'Degree/Year' | HRTranslate}}</p>\r\n </div>\r\n\r\n <div [class]=\"itemColumnClass\">\r\n <p [class]=\"labelClass\">{{'Country' | HRTranslate}}</p>\r\n </div>\r\n\r\n <div [class]=\"itemColumnClass\">\r\n <p [class]=\"labelClass\">{{'Specialty' | HRTranslate}}</p>\r\n </div>\r\n\r\n <div [class]=\"itemColumnClass\">\r\n <p [class]=\"labelClass\">{{'Institute' | HRTranslate}}</p>\r\n </div>\r\n </div>\r\n\r\n <div [class]=\"actionsSpacerClass\"></div>\r\n\r\n @for (qualification of degrees; track qualification){\r\n <div [class]=\"itemColumnsWrapperClass\">\r\n <div [class]=\"itemColumnClass\">\r\n <p [class]=\"valueClass\" [title]=\"qualification.DegreeName + ' / ' + qualification.DegreeYear\">{{qualification.DegreeName + ' / ' + qualification.DegreeYear}}</p>\r\n </div>\r\n\r\n <div [class]=\"itemColumnClass\">\r\n <p [class]=\"valueClass\" [title]=\"qualification.CountryName ? qualification.CountryName : ''\">{{qualification.CountryName}}</p>\r\n </div>\r\n\r\n <div [class]=\"itemColumnClass\">\r\n <p [class]=\"valueClass\" [title]=\"qualification.Specialty ? qualification.Specialty : ''\">\r\n @if(qualification.Specialty){\r\n {{qualification.Specialty}}\r\n }@else{\r\n {{'\u2014'}}\r\n }\r\n </p>\r\n </div>\r\n\r\n <div [class]=\"itemColumnClass\">\r\n <p [class]=\"valueClass\" [title]=\"qualification.Institute ? qualification.Institute : ''\">\r\n @if(qualification.Institute){\r\n {{qualification.Institute}}\r\n }@else{\r\n {{'\u2014'}}\r\n }\r\n </p>\r\n </div>\r\n </div>\r\n\r\n @if(qualification.Document){\r\n <div [class]=\"actionsColumnClass\">\r\n <fa-icon [icon]=\"viewIcon\" [class]=\"viewIconClass\" (click)=\"onAttachmentView(qualification.Document)\"></fa-icon>\r\n <fa-icon [icon]=\"downloadIcon\" [class]=\"downloadIconClass\" (click)=\"onAttachmentDownload(qualification.Document)\"></fa-icon>\r\n </div>\r\n }\r\n }\r\n </div>\r\n }@else{\r\n\r\n <sky-empty-design-card [containerClass]=\"emptyStateContainerClass\"\r\n [cardBodyClass]=\"''\"\r\n [cardBodyContainerClass]=\"''\"\r\n [visibleIcon]=\"false\"\r\n [visibleQuickAction]=\"false\"\r\n [emptyTextClass]=\"emptyStateTextClass\"\r\n [emptyText]=\"isLoading ? ((sectionTitle | HRTranslate) + ' ' + ('IsLoading' | HRTranslate)) : ('ThereIsNoDegreesYet' | HRTranslate)\">\r\n</sky-empty-design-card>\r\n\r\n }\r\n\r\n</div>\r\n", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "pipe", type: i2$1.UpperCasePipe, name: "uppercase" }, { kind: "component", type: SkySectionDividerComponent, selector: "sky-section-divider", inputs: ["text", "fontAwesomeIcon", "textClass", "dividerClass", "iconClass"] }, { kind: "pipe", type: HRTranslatePipe, name: "HRTranslate" }, { kind: "component", type: SkyEmptyDesignCardComponent, selector: "sky-empty-design-card", inputs: ["emptyIcon", "emptyIconClass", "emptyText", "emptyTextClass", "actionTitle", "actionIcon", "actionDisabled", "textColor", "disabledTitleClass", "activeTitleClass", "disabledIconClass", "activeIconClass", "actionClass", "containerClass", "cardBodyClass", "cardBodyContainerClass", "visibleIcon", "visibleQuickAction"], outputs: ["onActionClick"] }, { kind: "ngmodule", type: FontAwesomeModule }, { kind: "component", type: i3.FaIconComponent, selector: "fa-icon", inputs: ["icon", "title", "animation", "mask", "flip", "size", "pull", "border", "inverse", "symbol", "rotate", "fixedWidth", "transform", "a11yRole"] }] });
4207
4194
  }
4208
4195
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: ProfileDegreesWidgetComponent, decorators: [{
4209
4196
  type: Component,
@@ -4903,6 +4890,131 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImpo
4903
4890
  type: Output
4904
4891
  }] } });
4905
4892
 
4893
+ class ProfileDependentsDocumentsWidgetComponent {
4894
+ service;
4895
+ documents = [];
4896
+ groupedDocuments = [];
4897
+ isLoading = true;
4898
+ baseUrl = '';
4899
+ sectionTitle = 'DependentsDocuments';
4900
+ icon = faFileLines;
4901
+ viewIcon = faEye;
4902
+ downloadIcon = faFolderArrowDown;
4903
+ headerIconClass = 'primary-icon-xl';
4904
+ headerTextClass = 'fs-16 mt-2 text-secondary';
4905
+ headerDividerClass = 'flex-grow-1 ms-2';
4906
+ valueClass = 'text-dark-gray fs-14';
4907
+ viewIconClass = 'fs-15 text-dark cursor-pointer';
4908
+ downloadIconClass = 'fs-15 mx-3 text-dark cursor-pointer';
4909
+ emptyStateContainerClass = 'd-flex flex-column justify-content-center align-items-center my-5';
4910
+ emptyStateTextClass = 'field-secondary-label-md';
4911
+ cardClass = 'mt-4 card-shadow position-relative';
4912
+ rowClass = 'row px-4 pb-3';
4913
+ rowPtClass = 'pt-3';
4914
+ columnClass = 'col-md-3 col-6';
4915
+ responsiveTopSpacingColClass = 'col-md-3 col-6 mt-md-0 mt-4';
4916
+ topSpacingColClass = 'col-md-3 col-6 mt-4';
4917
+ labelClass = 'field-secondary-label-sm mb-1';
4918
+ actionsColumnClass = 'col-2 align-items-end mt-3';
4919
+ isLoadingChanged = new EventEmitter();
4920
+ attachmentViewed = new EventEmitter();
4921
+ attachmentDownloaded = new EventEmitter();
4922
+ errorOccurred = new EventEmitter();
4923
+ constructor(service) {
4924
+ this.service = service;
4925
+ }
4926
+ groups = [];
4927
+ ngOnInit() {
4928
+ if (!this.baseUrl) {
4929
+ this.isLoading = false;
4930
+ return;
4931
+ }
4932
+ this.isLoadingChanged.emit(true);
4933
+ this.service.getDependentDocuments(this.baseUrl).subscribe({
4934
+ next: (res) => {
4935
+ this.groups = res ?? [];
4936
+ this.isLoading = false;
4937
+ this.isLoadingChanged.emit(false);
4938
+ },
4939
+ error: (error) => {
4940
+ this.groups = [];
4941
+ this.isLoading = false;
4942
+ this.errorOccurred.emit(error.error.ResponseData.Errors[0].Message);
4943
+ this.isLoadingChanged.emit(false);
4944
+ }
4945
+ });
4946
+ }
4947
+ onAttachmentView(doc) {
4948
+ if (doc.Attachments?.length) {
4949
+ this.attachmentViewed.emit(doc.Attachments[0]);
4950
+ }
4951
+ }
4952
+ onDownload(group) {
4953
+ const attachments = group.Documents
4954
+ .flatMap((d) => d.Attachments ?? [])
4955
+ .filter((a) => a);
4956
+ if (!attachments.length)
4957
+ return;
4958
+ this.attachmentDownloaded.emit(attachments);
4959
+ }
4960
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: ProfileDependentsDocumentsWidgetComponent, deps: [{ token: HRSelfWidgetsService }], target: i0.ɵɵFactoryTarget.Component });
4961
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.20", type: ProfileDependentsDocumentsWidgetComponent, isStandalone: true, selector: "hr-profile-dependents-documents-widget", inputs: { baseUrl: "baseUrl", sectionTitle: "sectionTitle", icon: "icon", viewIcon: "viewIcon", downloadIcon: "downloadIcon", headerIconClass: "headerIconClass", headerTextClass: "headerTextClass", headerDividerClass: "headerDividerClass", valueClass: "valueClass", viewIconClass: "viewIconClass", downloadIconClass: "downloadIconClass", emptyStateContainerClass: "emptyStateContainerClass", emptyStateTextClass: "emptyStateTextClass", cardClass: "cardClass", rowClass: "rowClass", rowPtClass: "rowPtClass", columnClass: "columnClass", responsiveTopSpacingColClass: "responsiveTopSpacingColClass", topSpacingColClass: "topSpacingColClass", labelClass: "labelClass", actionsColumnClass: "actionsColumnClass" }, outputs: { isLoadingChanged: "isLoadingChanged", attachmentViewed: "attachmentViewed", attachmentDownloaded: "attachmentDownloaded", errorOccurred: "errorOccurred" }, ngImport: i0, template: "<sky-section-divider [fontAwesomeIcon]=\"icon\"\r\n [text]=\"(sectionTitle | HRTranslate | uppercase)\"\r\n [iconClass]=\"headerIconClass\"\r\n [textClass]=\"headerTextClass\"\r\n [dividerClass]=\"headerDividerClass\">\r\n</sky-section-divider>\r\n\r\n<div class=\"mt-4\">\r\n\r\n @if(groups.length) {\r\n\r\n @for(group of groups; track group; let first = $first) {\r\n\r\n <div [class]=\"cardClass\" [class.mt-3]=\"!first\">\r\n\r\n <div class=\"px-3 pt-3\">\r\n <span class=\"text-dark fs-16\" [title]=\"group.DependentName\">\r\n {{ group.DependentName }}\r\n </span>\r\n <span class=\"text-dark fs-16 mx-1\">\r\n ({{ group.DependentTypeName }})\r\n </span>\r\n\r\n </div>\r\n\r\n @for(doc of group.Documents; track doc; let last = $last) {\r\n\r\n <div [ngClass]=\"[rowClass, rowPtClass]\">\r\n\r\n <div [class]=\"columnClass\">\r\n <hr-info-field [labelKey]=\"'Type'\"\r\n [value]=\"doc.DocumentTypeName\"\r\n [labelClass]=\"labelClass\"\r\n [valueClass]=\"valueClass\">\r\n </hr-info-field>\r\n </div>\r\n\r\n <div [class]=\"columnClass\">\r\n <hr-info-field [labelKey]=\"'IssueDate'\"\r\n [value]=\"doc.IssueDate ? (doc.IssueDate | date:'dd/MM/yyyy') : '-'\"\r\n [labelClass]=\"labelClass\"\r\n [valueClass]=\"valueClass\">\r\n </hr-info-field>\r\n </div>\r\n\r\n <div [class]=\"responsiveTopSpacingColClass\">\r\n <hr-info-field [labelKey]=\"'ExpiryDate'\"\r\n [value]=\"doc.ExpiryDate ? (doc.ExpiryDate | date:'dd/MM/yyyy') : '-'\"\r\n [labelClass]=\"labelClass\"\r\n [valueClass]=\"valueClass\">\r\n </hr-info-field>\r\n </div>\r\n @if(last) {\r\n <div [class]=\"actionsColumnClass\">\r\n @if(doc.Attachments?.length) {\r\n\r\n @if(doc.Attachments.length === 1) {\r\n <fa-icon [icon]=\"viewIcon\"\r\n [class]=\"viewIconClass\"\r\n (click)=\"onAttachmentView(doc)\">\r\n </fa-icon>\r\n }\r\n\r\n <fa-icon [icon]=\"downloadIcon\"\r\n [class]=\"downloadIconClass\"\r\n (click)=\"onDownload(group)\">\r\n </fa-icon>\r\n\r\n }\r\n\r\n </div>\r\n }\r\n\r\n </div>\r\n\r\n }\r\n\r\n </div>\r\n\r\n }\r\n\r\n } @else {\r\n\r\n <sky-empty-design-card [visibleIcon]=\"false\"\r\n [visibleQuickAction]=\"false\"\r\n [containerClass]=\"emptyStateContainerClass\"\r\n [emptyTextClass]=\"emptyStateTextClass\"\r\n [emptyText]=\"isLoading ? ((sectionTitle | HRTranslate) + ' ' + ('IsLoading' | HRTranslate)) : ('ThereIsNoDependentsDocumentsYet' | HRTranslate)\">\r\n </sky-empty-design-card>\r\n\r\n }\r\n\r\n</div>\r\n", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2$1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "pipe", type: i2$1.UpperCasePipe, name: "uppercase" }, { kind: "pipe", type: i2$1.DatePipe, name: "date" }, { kind: "component", type: SkySectionDividerComponent, selector: "sky-section-divider", inputs: ["text", "fontAwesomeIcon", "textClass", "dividerClass", "iconClass"] }, { kind: "pipe", type: HRTranslatePipe, name: "HRTranslate" }, { kind: "component", type: SkyEmptyDesignCardComponent, selector: "sky-empty-design-card", inputs: ["emptyIcon", "emptyIconClass", "emptyText", "emptyTextClass", "actionTitle", "actionIcon", "actionDisabled", "textColor", "disabledTitleClass", "activeTitleClass", "disabledIconClass", "activeIconClass", "actionClass", "containerClass", "cardBodyClass", "cardBodyContainerClass", "visibleIcon", "visibleQuickAction"], outputs: ["onActionClick"] }, { kind: "ngmodule", type: FontAwesomeModule }, { kind: "component", type: i3.FaIconComponent, selector: "fa-icon", inputs: ["icon", "title", "animation", "mask", "flip", "size", "pull", "border", "inverse", "symbol", "rotate", "fixedWidth", "transform", "a11yRole"] }, { kind: "component", type: HRInfoFieldComponent, selector: "hr-info-field", inputs: ["labelKey", "value", "labelClass", "valueClass", "fallbackValue"] }] });
4962
+ }
4963
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: ProfileDependentsDocumentsWidgetComponent, decorators: [{
4964
+ type: Component,
4965
+ args: [{ selector: 'hr-profile-dependents-documents-widget', standalone: true, imports: [CommonModule, SkySectionDividerComponent, HRTranslatePipe, SkyEmptyDesignCardComponent, FontAwesomeModule, HRInfoFieldComponent], template: "<sky-section-divider [fontAwesomeIcon]=\"icon\"\r\n [text]=\"(sectionTitle | HRTranslate | uppercase)\"\r\n [iconClass]=\"headerIconClass\"\r\n [textClass]=\"headerTextClass\"\r\n [dividerClass]=\"headerDividerClass\">\r\n</sky-section-divider>\r\n\r\n<div class=\"mt-4\">\r\n\r\n @if(groups.length) {\r\n\r\n @for(group of groups; track group; let first = $first) {\r\n\r\n <div [class]=\"cardClass\" [class.mt-3]=\"!first\">\r\n\r\n <div class=\"px-3 pt-3\">\r\n <span class=\"text-dark fs-16\" [title]=\"group.DependentName\">\r\n {{ group.DependentName }}\r\n </span>\r\n <span class=\"text-dark fs-16 mx-1\">\r\n ({{ group.DependentTypeName }})\r\n </span>\r\n\r\n </div>\r\n\r\n @for(doc of group.Documents; track doc; let last = $last) {\r\n\r\n <div [ngClass]=\"[rowClass, rowPtClass]\">\r\n\r\n <div [class]=\"columnClass\">\r\n <hr-info-field [labelKey]=\"'Type'\"\r\n [value]=\"doc.DocumentTypeName\"\r\n [labelClass]=\"labelClass\"\r\n [valueClass]=\"valueClass\">\r\n </hr-info-field>\r\n </div>\r\n\r\n <div [class]=\"columnClass\">\r\n <hr-info-field [labelKey]=\"'IssueDate'\"\r\n [value]=\"doc.IssueDate ? (doc.IssueDate | date:'dd/MM/yyyy') : '-'\"\r\n [labelClass]=\"labelClass\"\r\n [valueClass]=\"valueClass\">\r\n </hr-info-field>\r\n </div>\r\n\r\n <div [class]=\"responsiveTopSpacingColClass\">\r\n <hr-info-field [labelKey]=\"'ExpiryDate'\"\r\n [value]=\"doc.ExpiryDate ? (doc.ExpiryDate | date:'dd/MM/yyyy') : '-'\"\r\n [labelClass]=\"labelClass\"\r\n [valueClass]=\"valueClass\">\r\n </hr-info-field>\r\n </div>\r\n @if(last) {\r\n <div [class]=\"actionsColumnClass\">\r\n @if(doc.Attachments?.length) {\r\n\r\n @if(doc.Attachments.length === 1) {\r\n <fa-icon [icon]=\"viewIcon\"\r\n [class]=\"viewIconClass\"\r\n (click)=\"onAttachmentView(doc)\">\r\n </fa-icon>\r\n }\r\n\r\n <fa-icon [icon]=\"downloadIcon\"\r\n [class]=\"downloadIconClass\"\r\n (click)=\"onDownload(group)\">\r\n </fa-icon>\r\n\r\n }\r\n\r\n </div>\r\n }\r\n\r\n </div>\r\n\r\n }\r\n\r\n </div>\r\n\r\n }\r\n\r\n } @else {\r\n\r\n <sky-empty-design-card [visibleIcon]=\"false\"\r\n [visibleQuickAction]=\"false\"\r\n [containerClass]=\"emptyStateContainerClass\"\r\n [emptyTextClass]=\"emptyStateTextClass\"\r\n [emptyText]=\"isLoading ? ((sectionTitle | HRTranslate) + ' ' + ('IsLoading' | HRTranslate)) : ('ThereIsNoDependentsDocumentsYet' | HRTranslate)\">\r\n </sky-empty-design-card>\r\n\r\n }\r\n\r\n</div>\r\n" }]
4966
+ }], ctorParameters: () => [{ type: HRSelfWidgetsService }], propDecorators: { baseUrl: [{
4967
+ type: Input
4968
+ }], sectionTitle: [{
4969
+ type: Input
4970
+ }], icon: [{
4971
+ type: Input
4972
+ }], viewIcon: [{
4973
+ type: Input
4974
+ }], downloadIcon: [{
4975
+ type: Input
4976
+ }], headerIconClass: [{
4977
+ type: Input
4978
+ }], headerTextClass: [{
4979
+ type: Input
4980
+ }], headerDividerClass: [{
4981
+ type: Input
4982
+ }], valueClass: [{
4983
+ type: Input
4984
+ }], viewIconClass: [{
4985
+ type: Input
4986
+ }], downloadIconClass: [{
4987
+ type: Input
4988
+ }], emptyStateContainerClass: [{
4989
+ type: Input
4990
+ }], emptyStateTextClass: [{
4991
+ type: Input
4992
+ }], cardClass: [{
4993
+ type: Input
4994
+ }], rowClass: [{
4995
+ type: Input
4996
+ }], rowPtClass: [{
4997
+ type: Input
4998
+ }], columnClass: [{
4999
+ type: Input
5000
+ }], responsiveTopSpacingColClass: [{
5001
+ type: Input
5002
+ }], topSpacingColClass: [{
5003
+ type: Input
5004
+ }], labelClass: [{
5005
+ type: Input
5006
+ }], actionsColumnClass: [{
5007
+ type: Input
5008
+ }], isLoadingChanged: [{
5009
+ type: Output
5010
+ }], attachmentViewed: [{
5011
+ type: Output
5012
+ }], attachmentDownloaded: [{
5013
+ type: Output
5014
+ }], errorOccurred: [{
5015
+ type: Output
5016
+ }] } });
5017
+
4906
5018
  /*
4907
5019
  * Public API Surface of shared-ui
4908
5020
  */
@@ -4911,5 +5023,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImpo
4911
5023
  * Generated bundle index. Do not edit.
4912
5024
  */
4913
5025
 
4914
- export { DependentsWidgetComponent, EventOption, EventTypeEnum, HRCardHeaderComponent, HRConstantsService, HREmployeeCalendarComponent, HRHighlightPipe, HRMedicalInsuranceCardComponent, HRTranslatePipe, HRTranslateService, MainWidgetShortcut, MyCalendarWidgetComponent, MyMainDetailsWidgetComponent, MyNextWeekVacationInsightsWidgetComponent, MyUpcomingEventsWidgetComponent, ProfileBankInfoWidgetComponent, ProfileDegreesWidgetComponent, ProfileEntitlementsIndemnityWidgetComponent, ProfileEntitlementsMedicalInsuranceWidgetComponent, ProfileEntitlementsOthersWidgetComponent, ProfileEntitlementsTicketWidgetComponent, ProfileEntitlementsVacationsWidgetComponent, ProfileExperiencesWidgetComponent, ProfileJobInfoContractWidgetComponent, ProfileJobInfoMainWidgetComponent, ProfileJobInfoSalaryWidgetComponent, ProfileJobInfoServiceChargeWidgetComponent, ProfilePersonalInfoAddressWidgetComponent, ProfilePersonalInfoContactWidgetComponent, ProfilePersonalInfoLanguagesWidgetComponent, ProfilePersonalInfoMainWidgetComponent, ProfilePersonalInfoOtherNationalitiesWidgetComponent, PublicHolidayWeekContext, RelativeDay, ScheduleVacationTypes, ServiceChargeEntitlementMode, VacationPopupType };
5026
+ export { DependentsWidgetComponent, EventOption, EventTypeEnum, HRCardHeaderComponent, HRConstantsService, HREmployeeCalendarComponent, HRHighlightPipe, HRMedicalInsuranceCardComponent, HRTranslatePipe, HRTranslateService, MainWidgetShortcut, MyCalendarWidgetComponent, MyMainDetailsWidgetComponent, MyNextWeekVacationInsightsWidgetComponent, MyUpcomingEventsWidgetComponent, ProfileBankInfoWidgetComponent, ProfileDegreesWidgetComponent, ProfileDependentsDocumentsWidgetComponent, ProfileEntitlementsIndemnityWidgetComponent, ProfileEntitlementsMedicalInsuranceWidgetComponent, ProfileEntitlementsOthersWidgetComponent, ProfileEntitlementsTicketWidgetComponent, ProfileEntitlementsVacationsWidgetComponent, ProfileExperiencesWidgetComponent, ProfileJobInfoContractWidgetComponent, ProfileJobInfoMainWidgetComponent, ProfileJobInfoSalaryWidgetComponent, ProfileJobInfoServiceChargeWidgetComponent, ProfilePersonalInfoAddressWidgetComponent, ProfilePersonalInfoContactWidgetComponent, ProfilePersonalInfoLanguagesWidgetComponent, ProfilePersonalInfoMainWidgetComponent, ProfilePersonalInfoOtherNationalitiesWidgetComponent, PublicHolidayWeekContext, RelativeDay, ScheduleVacationTypes, ServiceChargeEntitlementMode, VacationPopupType };
4915
5027
  //# sourceMappingURL=skysoftware-co-bayan-hr-widgets-ui.mjs.map