@skysoftware-co/bayan-hr-widgets-ui 1.0.48 → 1.0.50

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -50,6 +50,8 @@ components:
50
50
  20. Profile Entitlements Ticket Widget
51
51
  21. Profile Entitlements Medical Insurance Widget
52
52
  22. Profile Entitlements Others Widget
53
+ 23. Profile Employee Documents Widget
54
+ 24. Profile Dependents Documents Widget
53
55
 
54
56
  ## Dependencies
55
57
  This library depends on `@skysoftware-co/bayan-components-ui` package which provides:
@@ -960,3 +962,132 @@ This component displays two fields: overtime eligibility (Eligible/NotEligible)
960
962
  - `isLoadingChanged: EventEmitter<boolean>` - Emitted when loading state changes.
961
963
  - `errorOccurred: EventEmitter<string>` - Emitted when API request fails.
962
964
 
965
+ ## Profile Employee Documents Widget
966
+
967
+ ### Usage
968
+ ```html
969
+ <hr-profile-personal-documents-widget
970
+ [baseUrl]="baseUrl"
971
+ [employeeName]="employeeName"
972
+ (isLoadingChanged)="onLoadingChanged($event)"
973
+ (attachmentViewed)="onAttachmentViewed($event)"
974
+ (attachmentDownloaded)="onAttachmentDownloaded($event)">
975
+ </hr-profile-personal-documents-widget>
976
+ ```
977
+
978
+ This component displays employee personal/official documents in a table layout (desktop) or card grid layout (tablet/mobile). Each document shows type, number, issue date, expiry date, and attachment actions. Uses shared `hr-document-card` and `hr-document-tablet-card` sub-components.
979
+
980
+ ### Input Properties
981
+ | Input | Type | Default Value | Description |
982
+ |-------|------|---------------|-------------|
983
+ | `baseUrl` | string | `''` | Base URL for API calls (required) |
984
+ | `employeeName` | string | `''` | Employee name displayed as card title |
985
+ | `sectionTitle` | string | `'EmployeeDocuments'` | Section title translation key |
986
+ | `icon` | IconDefinition | `faFileLines` | Header icon |
987
+ | `viewIcon` | IconDefinition | `faEye` | Attachment view icon |
988
+ | `downloadIcon` | IconDefinition | `faFolderArrowDown` | Attachment download icon |
989
+ | `headerIconClass` | string | `'primary-icon-xl'` | Header icon CSS class |
990
+ | `headerTextClass` | string | `'fs-16 mt-2 text-secondary'` | Header text CSS class |
991
+ | `headerDividerClass` | string | `'flex-grow-1 ms-2'` | Header divider CSS class |
992
+ | `valueClass` | string | `'text-dark-gray fs-14'` | Value text CSS class |
993
+ | `viewIconClass` | string | `'fs-15 text-dark cursor-pointer'` | View icon CSS class |
994
+ | `downloadIconClass` | string | `'fs-15 text-dark cursor-pointer'` | Download icon CSS class |
995
+ | `emptyStateContainerClass` | string | `'d-flex flex-column justify-content-center align-items-center my-5'` | Empty/loading container CSS class |
996
+ | `emptyStateTextClass` | string | `'field-secondary-label-md'` | Empty/loading text CSS class |
997
+ | `cardClass` | string | `'mt-4 card-shadow position-relative p-4'` | Card container CSS class (desktop only) |
998
+ | `topSpacingColClass` | string | `'col-md-3 col-6 mt-4'` | Top spacing column CSS class |
999
+ | `titleContainerClass` | string | `'mb-3'` | Title container CSS class |
1000
+ | `titleClass` | string | `'text-dark fs-16 mb-0'` | Title text CSS class |
1001
+ | `labelClass` | string | `'field-secondary-label-sm mb-1'` | Label CSS class |
1002
+ | `actionsColumnClass` | string | `'col-2 d-flex flex-column mt-3'` | Actions column CSS class |
1003
+ | `rowClass` | string | `'row'` | Row CSS class |
1004
+ | `dataColClass` | string | `'col-10'` | Data column CSS class |
1005
+ | `dataColSpacingClass` | string | `'mt-2'` | Data column spacing CSS class |
1006
+ | `dataRowClass` | string | `'row align-items-center py-1 gx-0'` | Data row CSS class |
1007
+ | `typeColClass` | string | `'col-3'` | Type column CSS class |
1008
+ | `numberColClass` | string | `'col-3'` | Number column CSS class |
1009
+ | `issueDateColClass` | string | `'col-3'` | Issue date column CSS class |
1010
+ | `expiryDateColClass` | string | `'col-3'` | Expiry date column CSS class |
1011
+ | `actionsColClass` | string | `'col-2 d-flex align-items-center'` | Actions column CSS class |
1012
+ | `actionsWrapperClass` | string | `'d-flex align-items-center gap-2'` | Actions wrapper CSS class |
1013
+ | `downloadContainerClass` | string | `'bg-light-gray rounded-3 d-flex align-items-center justify-content-center px-1 cursor-pointer'` | Download container CSS class |
1014
+ | `tabletContainerClass` | string | `'mt-3'` | Tablet card container CSS class |
1015
+ | `tabletCardClass` | string | `'row px-4 py-3 card-shadow'` | Tablet card CSS class |
1016
+ | `tabletCardHeight` | string | `'155px'` | Tablet card fixed height |
1017
+ | `tabletColWithAttachmentClass` | string | `'col-5'` | Tablet column class when attachments exist |
1018
+ | `tabletColWithoutAttachmentClass` | string | `'col-6'` | Tablet column class when no attachments |
1019
+ | `tabletActionsColClass` | string | `'col-1 d-flex align-items-center'` | Tablet actions column CSS class |
1020
+ | `tabletBottomRowSpacingClass` | string | `'mt-4'` | Tablet bottom row spacing CSS class |
1021
+ | `tabletDownloadCountClass` | string | `'text-dark fs-12 fw-bold ps-2'` | Tablet download count CSS class |
1022
+ | `isMobile` | boolean | `false` | Mobile responsive mode |
1023
+ | `isTablet` | boolean | `false` | Tablet responsive mode |
1024
+
1025
+ ### Output Events
1026
+ - `isLoadingChanged: EventEmitter<boolean>` - Emitted when loading state changes.
1027
+ - `attachmentViewed: EventEmitter<any>` - Emitted when attachment view icon is clicked.
1028
+ - `attachmentDownloaded: EventEmitter<any>` - Emitted when attachment download icon is clicked.
1029
+ - `errorOccurred: EventEmitter<string>` - Emitted when API request fails.
1030
+
1031
+ ## Profile Dependents Documents Widget
1032
+
1033
+ ### Usage
1034
+ ```html
1035
+ <hr-profile-dependents-documents-widget
1036
+ [baseUrl]="baseUrl"
1037
+ (isLoadingChanged)="onLoadingChanged($event)"
1038
+ (attachmentViewed)="onAttachmentViewed($event)"
1039
+ (attachmentDownloaded)="onAttachmentDownloaded($event)">
1040
+ </hr-profile-dependents-documents-widget>
1041
+ ```
1042
+
1043
+ This component displays dependent documents grouped by dependent. Each group shows the dependent name and type as a title, followed by document rows (desktop) or card grid (tablet/mobile). Uses shared `hr-document-card` and `hr-document-tablet-card` sub-components.
1044
+
1045
+ ### Input Properties
1046
+ | Input | Type | Default Value | Description |
1047
+ |-------|------|---------------|-------------|
1048
+ | `baseUrl` | string | `''` | Base URL for API calls (required) |
1049
+ | `sectionTitle` | string | `'DependentsDocuments'` | Section title translation key |
1050
+ | `icon` | IconDefinition | `faFileLines` | Header icon |
1051
+ | `viewIcon` | IconDefinition | `faEye` | Attachment view icon |
1052
+ | `downloadIcon` | IconDefinition | `faFolderArrowDown` | Attachment download icon |
1053
+ | `headerIconClass` | string | `'primary-icon-xl'` | Header icon CSS class |
1054
+ | `headerTextClass` | string | `'fs-16 mt-2 text-secondary'` | Header text CSS class |
1055
+ | `headerDividerClass` | string | `'flex-grow-1 ms-2'` | Header divider CSS class |
1056
+ | `valueClass` | string | `'text-dark-gray fs-14'` | Value text CSS class |
1057
+ | `viewIconClass` | string | `'fs-15 text-dark cursor-pointer'` | View icon CSS class |
1058
+ | `downloadIconClass` | string | `'fs-15 text-dark cursor-pointer'` | Download icon CSS class |
1059
+ | `emptyStateContainerClass` | string | `'d-flex flex-column justify-content-center align-items-center my-5'` | Empty/loading container CSS class |
1060
+ | `emptyStateTextClass` | string | `'field-secondary-label-md'` | Empty/loading text CSS class |
1061
+ | `cardClass` | string | `'mt-4 card-shadow position-relative p-4'` | Card container CSS class (desktop only) |
1062
+ | `topSpacingColClass` | string | `'col-md-3 col-6 mt-4'` | Top spacing column CSS class |
1063
+ | `titleContainerClass` | string | `'mb-3'` | Title container CSS class |
1064
+ | `titleClass` | string | `'text-dark fs-16 mb-0'` | Title text CSS class |
1065
+ | `labelClass` | string | `'field-secondary-label-sm mb-1'` | Label CSS class |
1066
+ | `actionsColumnClass` | string | `'col-2 d-flex flex-column mt-3'` | Actions column CSS class |
1067
+ | `rowClass` | string | `'row'` | Row CSS class |
1068
+ | `dataColClass` | string | `'col-10'` | Data column CSS class |
1069
+ | `dataColSpacingClass` | string | `'mt-2'` | Data column spacing CSS class |
1070
+ | `dataRowClass` | string | `'row align-items-center py-1 gx-0'` | Data row CSS class |
1071
+ | `typeColClass` | string | `'col-3'` | Type column CSS class |
1072
+ | `numberColClass` | string | `'col-3'` | Number column CSS class |
1073
+ | `issueDateColClass` | string | `'col-3'` | Issue date column CSS class |
1074
+ | `expiryDateColClass` | string | `'col-3'` | Expiry date column CSS class |
1075
+ | `actionsColClass` | string | `'col-2 d-flex align-items-center'` | Actions column CSS class |
1076
+ | `actionsWrapperClass` | string | `'d-flex align-items-center gap-2'` | Actions wrapper CSS class |
1077
+ | `downloadContainerClass` | string | `'bg-light-gray rounded-3 d-flex align-items-center justify-content-center px-1 cursor-pointer'` | Download container CSS class |
1078
+ | `tabletContainerClass` | string | `'mt-3'` | Tablet card container CSS class |
1079
+ | `tabletCardClass` | string | `'row px-4 py-3 card-shadow'` | Tablet card CSS class |
1080
+ | `tabletCardHeight` | string | `'155px'` | Tablet card fixed height |
1081
+ | `tabletColWithAttachmentClass` | string | `'col-5'` | Tablet column class when attachments exist |
1082
+ | `tabletColWithoutAttachmentClass` | string | `'col-6'` | Tablet column class when no attachments |
1083
+ | `tabletActionsColClass` | string | `'col-1 d-flex align-items-center'` | Tablet actions column CSS class |
1084
+ | `tabletBottomRowSpacingClass` | string | `'mt-4'` | Tablet bottom row spacing CSS class |
1085
+ | `tabletDownloadCountClass` | string | `'text-dark fs-12 fw-bold ps-2'` | Tablet download count CSS class |
1086
+ | `isMobile` | boolean | `false` | Mobile responsive mode |
1087
+ | `isTablet` | boolean | `false` | Tablet responsive mode |
1088
+
1089
+ ### Output Events
1090
+ - `isLoadingChanged: EventEmitter<boolean>` - Emitted when loading state changes.
1091
+ - `attachmentViewed: EventEmitter<any>` - Emitted when attachment view icon is clicked.
1092
+ - `attachmentDownloaded: EventEmitter<any>` - Emitted when attachment download icon is clicked.
1093
+ - `errorOccurred: EventEmitter<string>` - Emitted when API request fails.
@@ -215,13 +215,14 @@ var TotalEmployerShare$2 = "Total employer share";
215
215
  var Dependents$2 = "Dependents";
216
216
  var NotEntitled$2 = "Not entitled";
217
217
  var ThereAreNoDependentsYet$2 = "There are no dependents yet";
218
- var PersonalDocuments$2 = "Personal Documents";
219
218
  var ThereAreNoPersonalDocumentsYet$1 = "There are no personal documents yet";
220
- var ThereAreNoDependentsDocumentsYet$1 = "There are no dependents' documents yet";
219
+ var ThereAreNoDependentsDocumentsYet$2 = "There are no dependents documents yet";
221
220
  var DependentsDocuments$2 = "Dependents Documents";
222
221
  var IssueDate$2 = "Issue Date";
223
222
  var ExpiryDate$2 = "Expiry Date";
224
223
  var DocumentNumber$2 = "Document Number";
224
+ var EmployeeDocuments$2 = "Employee Documents";
225
+ var ThereAreNoEmployeeDocumentsYet$2 = "There are no employee documents yet";
225
226
  var en = {
226
227
  ReportingTo: ReportingTo$2,
227
228
  NotAnknown: NotAnknown$2,
@@ -375,13 +376,14 @@ var en = {
375
376
  "TicketEvery{{value}}Months": "Ticket every {{value}} months",
376
377
  "TicketEvery{{value}}Month": "Ticket every {{value}} month",
377
378
  ThereAreNoDependentsYet: ThereAreNoDependentsYet$2,
378
- PersonalDocuments: PersonalDocuments$2,
379
379
  ThereAreNoPersonalDocumentsYet: ThereAreNoPersonalDocumentsYet$1,
380
- ThereAreNoDependentsDocumentsYet: ThereAreNoDependentsDocumentsYet$1,
380
+ ThereAreNoDependentsDocumentsYet: ThereAreNoDependentsDocumentsYet$2,
381
381
  DependentsDocuments: DependentsDocuments$2,
382
382
  IssueDate: IssueDate$2,
383
383
  ExpiryDate: ExpiryDate$2,
384
- DocumentNumber: DocumentNumber$2
384
+ DocumentNumber: DocumentNumber$2,
385
+ EmployeeDocuments: EmployeeDocuments$2,
386
+ ThereAreNoEmployeeDocumentsYet: ThereAreNoEmployeeDocumentsYet$2
385
387
  };
386
388
 
387
389
  var ReportingTo$1 = "مفوض الى";
@@ -528,13 +530,15 @@ var TotalEmployerShare$1 = "إجمالي حصة صاحب العمل";
528
530
  var Dependents$1 = "المعالون";
529
531
  var NotEntitled$1 = "غير مستحق";
530
532
  var ThereAreNoDependentsYet$1 = "لا يوجد معالون حتى الآن";
531
- var PersonalDocuments$1 = "المستندات الشخصية";
532
- var ThereIsNoPersonalDocumentsYet = "لا توجد مستندات شخصية بعد";
533
- var ThereIsNoDependentsDocumentsYet = "لا توجد مستندات للمعالون بعد";
534
- var DependentsDocuments$1 = "مستندات المعالون";
533
+ var ThereIsNoPersonalDocumentsYet = "لا توجد وثائق شخصية بعد";
534
+ var ThereIsNoDependentsDocumentsYet = "لا توجد وثائق للمعالون بعد";
535
+ var DependentsDocuments$1 = "وثائق المعالون";
536
+ var ThereAreNoDependentsDocumentsYet$1 = "لا توجد وثائق للمعالون بعد";
535
537
  var IssueDate$1 = "تاريخ الإصدار";
536
538
  var ExpiryDate$1 = "تاريخ انتهاء الصلاحية";
537
539
  var DocumentNumber$1 = "رقم الوثيقة";
540
+ var EmployeeDocuments$1 = "وثائق الموظف";
541
+ var ThereAreNoEmployeeDocumentsYet$1 = "لا توجد وثائق للموظف بعد";
538
542
  var ar = {
539
543
  ReportingTo: ReportingTo$1,
540
544
  NotAnknown: NotAnknown$1,
@@ -687,13 +691,15 @@ var ar = {
687
691
  "TicketEvery{{value}}Months": "تذكرة كل {{value}} شهر",
688
692
  "TicketEvery{{value}}Month": "تذكرة كل {{value}} شهر",
689
693
  ThereAreNoDependentsYet: ThereAreNoDependentsYet$1,
690
- PersonalDocuments: PersonalDocuments$1,
691
694
  ThereIsNoPersonalDocumentsYet: ThereIsNoPersonalDocumentsYet,
692
695
  ThereIsNoDependentsDocumentsYet: ThereIsNoDependentsDocumentsYet,
693
696
  DependentsDocuments: DependentsDocuments$1,
697
+ ThereAreNoDependentsDocumentsYet: ThereAreNoDependentsDocumentsYet$1,
694
698
  IssueDate: IssueDate$1,
695
699
  ExpiryDate: ExpiryDate$1,
696
- DocumentNumber: DocumentNumber$1
700
+ DocumentNumber: DocumentNumber$1,
701
+ EmployeeDocuments: EmployeeDocuments$1,
702
+ ThereAreNoEmployeeDocumentsYet: ThereAreNoEmployeeDocumentsYet$1
697
703
  };
698
704
 
699
705
  var ReportingTo = "Rapport à";
@@ -841,13 +847,14 @@ var TotalEmployerShare = "Part totale de l'employeur";
841
847
  var Dependents = "Personnes à charge";
842
848
  var NotEntitled = "Non éligible au droit";
843
849
  var ThereAreNoDependentsYet = "Il n'y a pas encore de personnes à charge";
844
- var PersonalDocuments = "Documents personnels";
845
850
  var ThereAreNoPersonalDocumentsYet = "Il n'y a pas encore de documents personnels";
846
851
  var ThereAreNoDependentsDocumentsYet = "Il n'y a pas encore de documents pour les personnes à charge";
847
852
  var DependentsDocuments = "Documents des personnes à charge";
848
853
  var IssueDate = "Date d'émission";
849
854
  var ExpiryDate = "Date d'expiration";
850
855
  var DocumentNumber = "Numéro de document";
856
+ var EmployeeDocuments = "Documents de l'employé";
857
+ var ThereAreNoEmployeeDocumentsYet = "Il n'y a pas encore de documents de l'employé";
851
858
  var fr = {
852
859
  ReportingTo: ReportingTo,
853
860
  NotAnknown: NotAnknown,
@@ -1001,13 +1008,14 @@ var fr = {
1001
1008
  "TicketEvery{{value}}Months": "Billet tous les {{value}} mois",
1002
1009
  "TicketEvery{{value}}Month": "Billet tous les {{value}} mois",
1003
1010
  ThereAreNoDependentsYet: ThereAreNoDependentsYet,
1004
- PersonalDocuments: PersonalDocuments,
1005
1011
  ThereAreNoPersonalDocumentsYet: ThereAreNoPersonalDocumentsYet,
1006
1012
  ThereAreNoDependentsDocumentsYet: ThereAreNoDependentsDocumentsYet,
1007
1013
  DependentsDocuments: DependentsDocuments,
1008
1014
  IssueDate: IssueDate,
1009
1015
  ExpiryDate: ExpiryDate,
1010
- DocumentNumber: DocumentNumber
1016
+ DocumentNumber: DocumentNumber,
1017
+ EmployeeDocuments: EmployeeDocuments,
1018
+ ThereAreNoEmployeeDocumentsYet: ThereAreNoEmployeeDocumentsYet
1011
1019
  };
1012
1020
 
1013
1021
  const BUILT_IN_LEXICONS = { en, ar, fr };
@@ -5188,7 +5196,7 @@ class HrDocumentTabletCardComponent {
5188
5196
  cardHeight = '155px';
5189
5197
  // Shared classes (same as large screen)
5190
5198
  labelClass = 'field-secondary-label-sm';
5191
- valueClass = 'table-cell-md';
5199
+ valueClass = 'table-cell-md text-break';
5192
5200
  downloadIconClass = 'fs-6 text-dark';
5193
5201
  downloadContainerClass = 'bg-light-gray rounded-3 d-flex justify-content-center align-items-center cursor-pointer px-2';
5194
5202
  downloadCountClass = 'text-dark fs-12 fw-bold ps-2';
@@ -5437,14 +5445,14 @@ class ProfilePersonalDocumentsWidgetComponent {
5437
5445
  isLoading = true;
5438
5446
  baseUrl = '';
5439
5447
  employeeName = '';
5440
- sectionTitle = 'PersonalDocuments';
5448
+ sectionTitle = 'EmployeeDocuments';
5441
5449
  icon = faFileLines;
5442
5450
  viewIcon = faEye;
5443
5451
  downloadIcon = faFolderArrowDown;
5444
5452
  headerIconClass = 'primary-icon-xl';
5445
5453
  headerTextClass = 'fs-16 mt-2 text-secondary';
5446
5454
  headerDividerClass = 'flex-grow-1 ms-2';
5447
- valueClass = 'text-dark-gray fs-14';
5455
+ valueClass = 'text-dark-gray fs-14 text-break';
5448
5456
  viewIconClass = 'fs-15 text-dark cursor-pointer';
5449
5457
  downloadIconClass = 'fs-15 text-dark cursor-pointer';
5450
5458
  emptyStateContainerClass = 'd-flex flex-column justify-content-center align-items-center my-5';
@@ -5515,11 +5523,11 @@ class ProfilePersonalDocumentsWidgetComponent {
5515
5523
  this.attachmentDownloaded.emit(attachments);
5516
5524
  }
5517
5525
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: ProfilePersonalDocumentsWidgetComponent, deps: [{ token: HRSelfWidgetsService }], target: i0.ɵɵFactoryTarget.Component });
5518
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.20", type: ProfilePersonalDocumentsWidgetComponent, isStandalone: true, selector: "hr-profile-personal-documents-widget", inputs: { baseUrl: "baseUrl", employeeName: "employeeName", 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", topSpacingColClass: "topSpacingColClass", titleContainerClass: "titleContainerClass", titleClass: "titleClass", labelClass: "labelClass", actionsColumnClass: "actionsColumnClass", rowClass: "rowClass", dataColClass: "dataColClass", dataColSpacingClass: "dataColSpacingClass", dataRowClass: "dataRowClass", typeColClass: "typeColClass", numberColClass: "numberColClass", issueDateColClass: "issueDateColClass", expiryDateColClass: "expiryDateColClass", actionsColClass: "actionsColClass", actionsWrapperClass: "actionsWrapperClass", downloadContainerClass: "downloadContainerClass", tabletContainerClass: "tabletContainerClass", tabletCardClass: "tabletCardClass", tabletCardHeight: "tabletCardHeight", tabletColWithAttachmentClass: "tabletColWithAttachmentClass", tabletColWithoutAttachmentClass: "tabletColWithoutAttachmentClass", tabletActionsColClass: "tabletActionsColClass", tabletBottomRowSpacingClass: "tabletBottomRowSpacingClass", tabletDownloadCountClass: "tabletDownloadCountClass", isMobile: "isMobile", isTablet: "isTablet" }, 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(documents.length) {\r\n\r\n <div [class]=\"!(isTablet || isMobile) ? cardClass : ''\">\r\n @if(!(isTablet || isMobile)) {\r\n\r\n <hr-document-card [title]=\"employeeName + ' (' + ('Me' | HRTranslate) + ')'\"\r\n [documents]=\"documents\"\r\n [valueClass]=\"valueClass\"\r\n [viewIcon]=\"viewIcon\"\r\n [downloadIcon]=\"downloadIcon\"\r\n [viewIconClass]=\"viewIconClass\"\r\n [downloadIconClass]=\"downloadIconClass\"\r\n [titleContainerClass]=\"titleContainerClass\"\r\n [titleClass]=\"titleClass\"\r\n [labelClass]=\"labelClass\"\r\n [rowClass]=\"rowClass\"\r\n [dataColClass]=\"dataColClass\"\r\n [dataColSpacingClass]=\"dataColSpacingClass\"\r\n [dataRowClass]=\"dataRowClass\"\r\n [typeColClass]=\"typeColClass\"\r\n [numberColClass]=\"numberColClass\"\r\n [issueDateColClass]=\"issueDateColClass\"\r\n [expiryDateColClass]=\"expiryDateColClass\"\r\n [actionsColClass]=\"actionsColClass\"\r\n [actionsWrapperClass]=\"actionsWrapperClass\"\r\n [downloadContainerClass]=\"downloadContainerClass\"\r\n (attachmentView)=\"onAttachmentView($event)\"\r\n (download)=\"onDownload($event)\">\r\n </hr-document-card>\r\n }\r\n @else {\r\n <div [class]=\"titleContainerClass\">\r\n <p [class]=\"titleClass\">\r\n {{ employeeName }} ({{ 'Me' | HRTranslate}})\r\n </p>\r\n </div>\r\n\r\n <div class=\"row mx-1\">\r\n @for(doc of documents; track doc; let odd = $odd) {\r\n <div class=\"col-6 mb-2\">\r\n <hr-document-tablet-card [doc]=\"doc\"\r\n [isOdd]=\"odd\"\r\n [viewIcon]=\"viewIcon\"\r\n [downloadIcon]=\"downloadIcon\"\r\n [labelClass]=\"labelClass\"\r\n [valueClass]=\"valueClass\"\r\n [downloadIconClass]=\"downloadIconClass\"\r\n [downloadContainerClass]=\"downloadContainerClass\"\r\n [downloadCountClass]=\"tabletDownloadCountClass\"\r\n [tabletContainerClass]=\"tabletContainerClass\"\r\n [tabletCardClass]=\"tabletCardClass\"\r\n [cardHeight]=\"tabletCardHeight\"\r\n [tabletColWithAttachmentClass]=\"tabletColWithAttachmentClass\"\r\n [tabletColWithoutAttachmentClass]=\"tabletColWithoutAttachmentClass\"\r\n [tabletActionsColClass]=\"tabletActionsColClass\"\r\n [tabletBottomRowSpacingClass]=\"tabletBottomRowSpacingClass\"\r\n (view)=\"onAttachmentView(doc)\"\r\n (download)=\"onDownload(doc)\">\r\n </hr-document-tablet-card>\r\n </div>\r\n }\r\n </div>\r\n\r\n }\r\n </div>\r\n\r\n\r\n } @else {\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)) : ('ThereAreNoPersonalDocumentsYet' | HRTranslate)\">\r\n </sky-empty-design-card>\r\n }\r\n</div>\r\n", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "pipe", type: i2$2.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: HRDocumentCardComponent, selector: "hr-document-card", inputs: ["title", "documents", "titleContainerClass", "titleClass", "valueClass", "viewIcon", "downloadIcon", "viewIconClass", "downloadIconClass", "labelClass", "rowClass", "dataColClass", "dataColSpacingClass", "dataRowClass", "typeColClass", "numberColClass", "issueDateColClass", "expiryDateColClass", "actionsColClass", "actionsWrapperClass", "downloadContainerClass"], outputs: ["attachmentView", "download"] }, { kind: "component", type: HrDocumentTabletCardComponent, selector: "hr-document-tablet-card", inputs: ["doc", "isOdd", "downloadIcon", "viewIcon", "cardHeight", "labelClass", "valueClass", "downloadIconClass", "downloadContainerClass", "downloadCountClass", "tabletContainerClass", "tabletCardClass", "tabletColWithAttachmentClass", "tabletColWithoutAttachmentClass", "tabletActionsColClass", "tabletBottomRowSpacingClass"], outputs: ["view", "download"] }] });
5526
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.20", type: ProfilePersonalDocumentsWidgetComponent, isStandalone: true, selector: "hr-profile-personal-documents-widget", inputs: { baseUrl: "baseUrl", employeeName: "employeeName", 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", topSpacingColClass: "topSpacingColClass", titleContainerClass: "titleContainerClass", titleClass: "titleClass", labelClass: "labelClass", actionsColumnClass: "actionsColumnClass", rowClass: "rowClass", dataColClass: "dataColClass", dataColSpacingClass: "dataColSpacingClass", dataRowClass: "dataRowClass", typeColClass: "typeColClass", numberColClass: "numberColClass", issueDateColClass: "issueDateColClass", expiryDateColClass: "expiryDateColClass", actionsColClass: "actionsColClass", actionsWrapperClass: "actionsWrapperClass", downloadContainerClass: "downloadContainerClass", tabletContainerClass: "tabletContainerClass", tabletCardClass: "tabletCardClass", tabletCardHeight: "tabletCardHeight", tabletColWithAttachmentClass: "tabletColWithAttachmentClass", tabletColWithoutAttachmentClass: "tabletColWithoutAttachmentClass", tabletActionsColClass: "tabletActionsColClass", tabletBottomRowSpacingClass: "tabletBottomRowSpacingClass", tabletDownloadCountClass: "tabletDownloadCountClass", isMobile: "isMobile", isTablet: "isTablet" }, 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(documents.length) {\r\n\r\n <div [class]=\"!(isTablet || isMobile) ? cardClass : ''\">\r\n @if(!(isTablet || isMobile)) {\r\n\r\n <hr-document-card [title]=\"employeeName + ' (' + ('Me' | HRTranslate) + ')'\"\r\n [documents]=\"documents\"\r\n [valueClass]=\"valueClass\"\r\n [viewIcon]=\"viewIcon\"\r\n [downloadIcon]=\"downloadIcon\"\r\n [viewIconClass]=\"viewIconClass\"\r\n [downloadIconClass]=\"downloadIconClass\"\r\n [titleContainerClass]=\"titleContainerClass\"\r\n [titleClass]=\"titleClass\"\r\n [labelClass]=\"labelClass\"\r\n [rowClass]=\"rowClass\"\r\n [dataColClass]=\"dataColClass\"\r\n [dataColSpacingClass]=\"dataColSpacingClass\"\r\n [dataRowClass]=\"dataRowClass\"\r\n [typeColClass]=\"typeColClass\"\r\n [numberColClass]=\"numberColClass\"\r\n [issueDateColClass]=\"issueDateColClass\"\r\n [expiryDateColClass]=\"expiryDateColClass\"\r\n [actionsColClass]=\"actionsColClass\"\r\n [actionsWrapperClass]=\"actionsWrapperClass\"\r\n [downloadContainerClass]=\"downloadContainerClass\"\r\n (attachmentView)=\"onAttachmentView($event)\"\r\n (download)=\"onDownload($event)\">\r\n </hr-document-card>\r\n }\r\n @else {\r\n <div [class]=\"titleContainerClass\">\r\n <p [class]=\"titleClass\">\r\n {{ employeeName }} ({{ 'Me' | HRTranslate}})\r\n </p>\r\n </div>\r\n\r\n <div class=\"row mx-1\">\r\n @for(doc of documents; track doc; let odd = $odd) {\r\n <div class=\"col-6 mb-2\">\r\n <hr-document-tablet-card [doc]=\"doc\"\r\n [isOdd]=\"odd\"\r\n [viewIcon]=\"viewIcon\"\r\n [downloadIcon]=\"downloadIcon\"\r\n [labelClass]=\"labelClass\"\r\n [valueClass]=\"valueClass\"\r\n [downloadIconClass]=\"downloadIconClass\"\r\n [downloadContainerClass]=\"downloadContainerClass\"\r\n [downloadCountClass]=\"tabletDownloadCountClass\"\r\n [tabletContainerClass]=\"tabletContainerClass\"\r\n [tabletCardClass]=\"tabletCardClass\"\r\n [cardHeight]=\"tabletCardHeight\"\r\n [tabletColWithAttachmentClass]=\"tabletColWithAttachmentClass\"\r\n [tabletColWithoutAttachmentClass]=\"tabletColWithoutAttachmentClass\"\r\n [tabletActionsColClass]=\"tabletActionsColClass\"\r\n [tabletBottomRowSpacingClass]=\"tabletBottomRowSpacingClass\"\r\n (view)=\"onAttachmentView(doc)\"\r\n (download)=\"onDownload(doc)\">\r\n </hr-document-tablet-card>\r\n </div>\r\n }\r\n </div>\r\n\r\n }\r\n </div>\r\n\r\n\r\n } @else {\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)) : ('ThereAreNoEmployeeDocumentsYet' | HRTranslate)\">\r\n </sky-empty-design-card>\r\n }\r\n</div>\r\n", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "pipe", type: i2$2.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: HRDocumentCardComponent, selector: "hr-document-card", inputs: ["title", "documents", "titleContainerClass", "titleClass", "valueClass", "viewIcon", "downloadIcon", "viewIconClass", "downloadIconClass", "labelClass", "rowClass", "dataColClass", "dataColSpacingClass", "dataRowClass", "typeColClass", "numberColClass", "issueDateColClass", "expiryDateColClass", "actionsColClass", "actionsWrapperClass", "downloadContainerClass"], outputs: ["attachmentView", "download"] }, { kind: "component", type: HrDocumentTabletCardComponent, selector: "hr-document-tablet-card", inputs: ["doc", "isOdd", "downloadIcon", "viewIcon", "cardHeight", "labelClass", "valueClass", "downloadIconClass", "downloadContainerClass", "downloadCountClass", "tabletContainerClass", "tabletCardClass", "tabletColWithAttachmentClass", "tabletColWithoutAttachmentClass", "tabletActionsColClass", "tabletBottomRowSpacingClass"], outputs: ["view", "download"] }] });
5519
5527
  }
5520
5528
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: ProfilePersonalDocumentsWidgetComponent, decorators: [{
5521
5529
  type: Component,
5522
- args: [{ selector: 'hr-profile-personal-documents-widget', standalone: true, imports: [CommonModule, SkySectionDividerComponent, HRTranslatePipe, SkyEmptyDesignCardComponent, FontAwesomeModule, HRInfoFieldComponent, HRDocumentCardComponent, HrDocumentTabletCardComponent], 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(documents.length) {\r\n\r\n <div [class]=\"!(isTablet || isMobile) ? cardClass : ''\">\r\n @if(!(isTablet || isMobile)) {\r\n\r\n <hr-document-card [title]=\"employeeName + ' (' + ('Me' | HRTranslate) + ')'\"\r\n [documents]=\"documents\"\r\n [valueClass]=\"valueClass\"\r\n [viewIcon]=\"viewIcon\"\r\n [downloadIcon]=\"downloadIcon\"\r\n [viewIconClass]=\"viewIconClass\"\r\n [downloadIconClass]=\"downloadIconClass\"\r\n [titleContainerClass]=\"titleContainerClass\"\r\n [titleClass]=\"titleClass\"\r\n [labelClass]=\"labelClass\"\r\n [rowClass]=\"rowClass\"\r\n [dataColClass]=\"dataColClass\"\r\n [dataColSpacingClass]=\"dataColSpacingClass\"\r\n [dataRowClass]=\"dataRowClass\"\r\n [typeColClass]=\"typeColClass\"\r\n [numberColClass]=\"numberColClass\"\r\n [issueDateColClass]=\"issueDateColClass\"\r\n [expiryDateColClass]=\"expiryDateColClass\"\r\n [actionsColClass]=\"actionsColClass\"\r\n [actionsWrapperClass]=\"actionsWrapperClass\"\r\n [downloadContainerClass]=\"downloadContainerClass\"\r\n (attachmentView)=\"onAttachmentView($event)\"\r\n (download)=\"onDownload($event)\">\r\n </hr-document-card>\r\n }\r\n @else {\r\n <div [class]=\"titleContainerClass\">\r\n <p [class]=\"titleClass\">\r\n {{ employeeName }} ({{ 'Me' | HRTranslate}})\r\n </p>\r\n </div>\r\n\r\n <div class=\"row mx-1\">\r\n @for(doc of documents; track doc; let odd = $odd) {\r\n <div class=\"col-6 mb-2\">\r\n <hr-document-tablet-card [doc]=\"doc\"\r\n [isOdd]=\"odd\"\r\n [viewIcon]=\"viewIcon\"\r\n [downloadIcon]=\"downloadIcon\"\r\n [labelClass]=\"labelClass\"\r\n [valueClass]=\"valueClass\"\r\n [downloadIconClass]=\"downloadIconClass\"\r\n [downloadContainerClass]=\"downloadContainerClass\"\r\n [downloadCountClass]=\"tabletDownloadCountClass\"\r\n [tabletContainerClass]=\"tabletContainerClass\"\r\n [tabletCardClass]=\"tabletCardClass\"\r\n [cardHeight]=\"tabletCardHeight\"\r\n [tabletColWithAttachmentClass]=\"tabletColWithAttachmentClass\"\r\n [tabletColWithoutAttachmentClass]=\"tabletColWithoutAttachmentClass\"\r\n [tabletActionsColClass]=\"tabletActionsColClass\"\r\n [tabletBottomRowSpacingClass]=\"tabletBottomRowSpacingClass\"\r\n (view)=\"onAttachmentView(doc)\"\r\n (download)=\"onDownload(doc)\">\r\n </hr-document-tablet-card>\r\n </div>\r\n }\r\n </div>\r\n\r\n }\r\n </div>\r\n\r\n\r\n } @else {\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)) : ('ThereAreNoPersonalDocumentsYet' | HRTranslate)\">\r\n </sky-empty-design-card>\r\n }\r\n</div>\r\n" }]
5530
+ args: [{ selector: 'hr-profile-personal-documents-widget', standalone: true, imports: [CommonModule, SkySectionDividerComponent, HRTranslatePipe, SkyEmptyDesignCardComponent, FontAwesomeModule, HRInfoFieldComponent, HRDocumentCardComponent, HrDocumentTabletCardComponent], 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(documents.length) {\r\n\r\n <div [class]=\"!(isTablet || isMobile) ? cardClass : ''\">\r\n @if(!(isTablet || isMobile)) {\r\n\r\n <hr-document-card [title]=\"employeeName + ' (' + ('Me' | HRTranslate) + ')'\"\r\n [documents]=\"documents\"\r\n [valueClass]=\"valueClass\"\r\n [viewIcon]=\"viewIcon\"\r\n [downloadIcon]=\"downloadIcon\"\r\n [viewIconClass]=\"viewIconClass\"\r\n [downloadIconClass]=\"downloadIconClass\"\r\n [titleContainerClass]=\"titleContainerClass\"\r\n [titleClass]=\"titleClass\"\r\n [labelClass]=\"labelClass\"\r\n [rowClass]=\"rowClass\"\r\n [dataColClass]=\"dataColClass\"\r\n [dataColSpacingClass]=\"dataColSpacingClass\"\r\n [dataRowClass]=\"dataRowClass\"\r\n [typeColClass]=\"typeColClass\"\r\n [numberColClass]=\"numberColClass\"\r\n [issueDateColClass]=\"issueDateColClass\"\r\n [expiryDateColClass]=\"expiryDateColClass\"\r\n [actionsColClass]=\"actionsColClass\"\r\n [actionsWrapperClass]=\"actionsWrapperClass\"\r\n [downloadContainerClass]=\"downloadContainerClass\"\r\n (attachmentView)=\"onAttachmentView($event)\"\r\n (download)=\"onDownload($event)\">\r\n </hr-document-card>\r\n }\r\n @else {\r\n <div [class]=\"titleContainerClass\">\r\n <p [class]=\"titleClass\">\r\n {{ employeeName }} ({{ 'Me' | HRTranslate}})\r\n </p>\r\n </div>\r\n\r\n <div class=\"row mx-1\">\r\n @for(doc of documents; track doc; let odd = $odd) {\r\n <div class=\"col-6 mb-2\">\r\n <hr-document-tablet-card [doc]=\"doc\"\r\n [isOdd]=\"odd\"\r\n [viewIcon]=\"viewIcon\"\r\n [downloadIcon]=\"downloadIcon\"\r\n [labelClass]=\"labelClass\"\r\n [valueClass]=\"valueClass\"\r\n [downloadIconClass]=\"downloadIconClass\"\r\n [downloadContainerClass]=\"downloadContainerClass\"\r\n [downloadCountClass]=\"tabletDownloadCountClass\"\r\n [tabletContainerClass]=\"tabletContainerClass\"\r\n [tabletCardClass]=\"tabletCardClass\"\r\n [cardHeight]=\"tabletCardHeight\"\r\n [tabletColWithAttachmentClass]=\"tabletColWithAttachmentClass\"\r\n [tabletColWithoutAttachmentClass]=\"tabletColWithoutAttachmentClass\"\r\n [tabletActionsColClass]=\"tabletActionsColClass\"\r\n [tabletBottomRowSpacingClass]=\"tabletBottomRowSpacingClass\"\r\n (view)=\"onAttachmentView(doc)\"\r\n (download)=\"onDownload(doc)\">\r\n </hr-document-tablet-card>\r\n </div>\r\n }\r\n </div>\r\n\r\n }\r\n </div>\r\n\r\n\r\n } @else {\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)) : ('ThereAreNoEmployeeDocumentsYet' | HRTranslate)\">\r\n </sky-empty-design-card>\r\n }\r\n</div>\r\n" }]
5523
5531
  }], ctorParameters: () => [{ type: HRSelfWidgetsService }], propDecorators: { baseUrl: [{
5524
5532
  type: Input
5525
5533
  }], employeeName: [{