@skysoftware-co/bayan-hr-widgets-ui 1.0.40 → 1.0.42
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/fesm2022/skysoftware-co-bayan-hr-widgets-ui.mjs +279 -55
- package/fesm2022/skysoftware-co-bayan-hr-widgets-ui.mjs.map +1 -1
- package/lib/profile-documents-widgets/profile-official-documents-widget/profile-official-documents-widget.d.ts +41 -0
- package/lib/services/hr-self-widgets.service.d.ts +2 -1
- package/lib/shared/services/profile-documents-cache-service.d.ts +4 -1
- package/lib/shared/types/common.d.ts +7 -0
- package/package.json +1 -1
- package/public-api.d.ts +1 -0
|
@@ -215,6 +215,10 @@ 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
|
+
var ThereAreNoPersonalDocumentsYet$1 = "There are no personal documents yet";
|
|
220
|
+
var ThereAreNoDependentsDocumentsYet$1 = "There are no dependents' documents yet";
|
|
221
|
+
var DependentsDocuments$2 = "Dependents Documents";
|
|
218
222
|
var en = {
|
|
219
223
|
ReportingTo: ReportingTo$2,
|
|
220
224
|
NotAnknown: NotAnknown$2,
|
|
@@ -367,7 +371,11 @@ var en = {
|
|
|
367
371
|
NotEntitled: NotEntitled$2,
|
|
368
372
|
"TicketEvery{{value}}Months": "Ticket every {{value}} months",
|
|
369
373
|
"TicketEvery{{value}}Month": "Ticket every {{value}} month",
|
|
370
|
-
ThereAreNoDependentsYet: ThereAreNoDependentsYet$2
|
|
374
|
+
ThereAreNoDependentsYet: ThereAreNoDependentsYet$2,
|
|
375
|
+
PersonalDocuments: PersonalDocuments$2,
|
|
376
|
+
ThereAreNoPersonalDocumentsYet: ThereAreNoPersonalDocumentsYet$1,
|
|
377
|
+
ThereAreNoDependentsDocumentsYet: ThereAreNoDependentsDocumentsYet$1,
|
|
378
|
+
DependentsDocuments: DependentsDocuments$2
|
|
371
379
|
};
|
|
372
380
|
|
|
373
381
|
var ReportingTo$1 = "مفوض الى";
|
|
@@ -489,31 +497,38 @@ var ThereIsNoDegreesYet$1 = "لا توجد مؤهلات علمية بعد";
|
|
|
489
497
|
var ThereIsNoExperiencesYet$1 = "لا توجد خبرات بعد";
|
|
490
498
|
var ThereIsNoDependentsYet$1 = "لا يوجد معالون حتى الآن";
|
|
491
499
|
var DependentTypeName$1 = "نوع المعال";
|
|
492
|
-
var Vacations = "الاجازات";
|
|
493
|
-
var Indemnity = "التعويض";
|
|
494
|
-
var MedicalInsurance = "التأمين الطبي";
|
|
495
|
-
var Tickets = "تذاكر";
|
|
496
|
-
var Others = "آخرين";
|
|
497
|
-
var Type = "النوع";
|
|
498
|
-
var Entitlement = "الاستحقاق";
|
|
499
|
-
var IndemnityEligibility = "أهلية التعويض";
|
|
500
|
-
var OvertimeEligibility = "أهلية العمل الإضافي";
|
|
501
|
-
var SocialSecurityEligibility = "أهلية الضمان الاجتماعي";
|
|
502
|
-
var Class = "الفئة";
|
|
503
|
-
var Sector = "القطاع";
|
|
504
|
-
var Me = "أنا";
|
|
505
|
-
var Eligible = "مؤهل";
|
|
506
|
-
var NotEligible = "غير مؤهل";
|
|
507
|
-
var Member = "عضو";
|
|
508
|
-
var NotMember = "ليس عضوًا";
|
|
509
|
-
var NotCoveredByMedicalInsurance = "غير مشمول بالتأمين الطبي";
|
|
510
|
-
var NoTicketEntitlement = "لا يوجد استحقاق تذكرة";
|
|
511
|
-
var CoverageDate = "تاريخ التغطية";
|
|
512
|
-
var TotalEmployeeShare = "إجمالي حصة الموظف";
|
|
513
|
-
var TotalEmployerShare = "إجمالي حصة صاحب العمل";
|
|
514
|
-
var Dependents = "المعالون";
|
|
515
|
-
var NotEntitled = "غير مستحق";
|
|
516
|
-
var ThereAreNoDependentsYet = "لا يوجد معالون حتى الآن";
|
|
500
|
+
var Vacations$1 = "الاجازات";
|
|
501
|
+
var Indemnity$1 = "التعويض";
|
|
502
|
+
var MedicalInsurance$1 = "التأمين الطبي";
|
|
503
|
+
var Tickets$1 = "تذاكر";
|
|
504
|
+
var Others$1 = "آخرين";
|
|
505
|
+
var Type$1 = "النوع";
|
|
506
|
+
var Entitlement$1 = "الاستحقاق";
|
|
507
|
+
var IndemnityEligibility$1 = "أهلية التعويض";
|
|
508
|
+
var OvertimeEligibility$1 = "أهلية العمل الإضافي";
|
|
509
|
+
var SocialSecurityEligibility$1 = "أهلية الضمان الاجتماعي";
|
|
510
|
+
var Class$1 = "الفئة";
|
|
511
|
+
var Sector$1 = "القطاع";
|
|
512
|
+
var Me$1 = "أنا";
|
|
513
|
+
var Eligible$1 = "مؤهل";
|
|
514
|
+
var NotEligible$1 = "غير مؤهل";
|
|
515
|
+
var Member$1 = "عضو";
|
|
516
|
+
var NotMember$1 = "ليس عضوًا";
|
|
517
|
+
var NotCoveredByMedicalInsurance$1 = "غير مشمول بالتأمين الطبي";
|
|
518
|
+
var NoTicketEntitlement$1 = "لا يوجد استحقاق تذكرة";
|
|
519
|
+
var CoverageDate$1 = "تاريخ التغطية";
|
|
520
|
+
var TotalEmployeeShare$1 = "إجمالي حصة الموظف";
|
|
521
|
+
var TotalEmployerShare$1 = "إجمالي حصة صاحب العمل";
|
|
522
|
+
var Dependents$1 = "المعالون";
|
|
523
|
+
var NotEntitled$1 = "غير مستحق";
|
|
524
|
+
var ThereAreNoDependentsYet$1 = "لا يوجد معالون حتى الآن";
|
|
525
|
+
var PersonalDocuments = "المستندات الشخصية";
|
|
526
|
+
var ThereIsNoPersonalDocumentsYet = "لا توجد مستندات شخصية بعد";
|
|
527
|
+
var ThereIsNoDependentsDocumentsYet = "لا توجد مستندات للمعالون بعد";
|
|
528
|
+
var DependentsDocuments = "مستندات المعالون";
|
|
529
|
+
var IssueDate = "تاريخ الإصدار";
|
|
530
|
+
var ExpiryDate = "تاريخ انتهاء الصلاحية";
|
|
531
|
+
var DocumentNumber = "رقم الوثيقة";
|
|
517
532
|
var ar = {
|
|
518
533
|
ReportingTo: ReportingTo$1,
|
|
519
534
|
NotAnknown: NotAnknown$1,
|
|
@@ -637,35 +652,42 @@ var ar = {
|
|
|
637
652
|
ThereIsNoExperiencesYet: ThereIsNoExperiencesYet$1,
|
|
638
653
|
ThereIsNoDependentsYet: ThereIsNoDependentsYet$1,
|
|
639
654
|
DependentTypeName: DependentTypeName$1,
|
|
640
|
-
Vacations: Vacations,
|
|
641
|
-
Indemnity: Indemnity,
|
|
642
|
-
MedicalInsurance: MedicalInsurance,
|
|
643
|
-
Tickets: Tickets,
|
|
644
|
-
Others: Others,
|
|
645
|
-
Type: Type,
|
|
646
|
-
Entitlement: Entitlement,
|
|
647
|
-
IndemnityEligibility: IndemnityEligibility,
|
|
648
|
-
OvertimeEligibility: OvertimeEligibility,
|
|
649
|
-
SocialSecurityEligibility: SocialSecurityEligibility,
|
|
650
|
-
Class: Class,
|
|
651
|
-
Sector: Sector,
|
|
652
|
-
Me: Me,
|
|
653
|
-
Eligible: Eligible,
|
|
654
|
-
NotEligible: NotEligible,
|
|
655
|
-
Member: Member,
|
|
656
|
-
NotMember: NotMember,
|
|
655
|
+
Vacations: Vacations$1,
|
|
656
|
+
Indemnity: Indemnity$1,
|
|
657
|
+
MedicalInsurance: MedicalInsurance$1,
|
|
658
|
+
Tickets: Tickets$1,
|
|
659
|
+
Others: Others$1,
|
|
660
|
+
Type: Type$1,
|
|
661
|
+
Entitlement: Entitlement$1,
|
|
662
|
+
IndemnityEligibility: IndemnityEligibility$1,
|
|
663
|
+
OvertimeEligibility: OvertimeEligibility$1,
|
|
664
|
+
SocialSecurityEligibility: SocialSecurityEligibility$1,
|
|
665
|
+
Class: Class$1,
|
|
666
|
+
Sector: Sector$1,
|
|
667
|
+
Me: Me$1,
|
|
668
|
+
Eligible: Eligible$1,
|
|
669
|
+
NotEligible: NotEligible$1,
|
|
670
|
+
Member: Member$1,
|
|
671
|
+
NotMember: NotMember$1,
|
|
657
672
|
"There'sNoInformationInThisSectionYet": "لا توجد معلومات في هذا القسم حتى الآن",
|
|
658
|
-
NotCoveredByMedicalInsurance: NotCoveredByMedicalInsurance,
|
|
659
|
-
NoTicketEntitlement: NoTicketEntitlement,
|
|
673
|
+
NotCoveredByMedicalInsurance: NotCoveredByMedicalInsurance$1,
|
|
674
|
+
NoTicketEntitlement: NoTicketEntitlement$1,
|
|
660
675
|
"Number": "العدد",
|
|
661
|
-
CoverageDate: CoverageDate,
|
|
662
|
-
TotalEmployeeShare: TotalEmployeeShare,
|
|
663
|
-
TotalEmployerShare: TotalEmployerShare,
|
|
664
|
-
Dependents: Dependents,
|
|
665
|
-
NotEntitled: NotEntitled,
|
|
676
|
+
CoverageDate: CoverageDate$1,
|
|
677
|
+
TotalEmployeeShare: TotalEmployeeShare$1,
|
|
678
|
+
TotalEmployerShare: TotalEmployerShare$1,
|
|
679
|
+
Dependents: Dependents$1,
|
|
680
|
+
NotEntitled: NotEntitled$1,
|
|
666
681
|
"TicketEvery{{value}}Months": "تذكرة كل {{value}} شهر",
|
|
667
682
|
"TicketEvery{{value}}Month": "تذكرة كل {{value}} شهر",
|
|
668
|
-
ThereAreNoDependentsYet: ThereAreNoDependentsYet
|
|
683
|
+
ThereAreNoDependentsYet: ThereAreNoDependentsYet$1,
|
|
684
|
+
PersonalDocuments: PersonalDocuments,
|
|
685
|
+
ThereIsNoPersonalDocumentsYet: ThereIsNoPersonalDocumentsYet,
|
|
686
|
+
ThereIsNoDependentsDocumentsYet: ThereIsNoDependentsDocumentsYet,
|
|
687
|
+
DependentsDocuments: DependentsDocuments,
|
|
688
|
+
IssueDate: IssueDate,
|
|
689
|
+
ExpiryDate: ExpiryDate,
|
|
690
|
+
DocumentNumber: DocumentNumber
|
|
669
691
|
};
|
|
670
692
|
|
|
671
693
|
var ReportingTo = "Rapport à";
|
|
@@ -788,6 +810,31 @@ var ThereIsNoDegreesYet = "Il n'y a pas encore de diplomes";
|
|
|
788
810
|
var ThereIsNoExperiencesYet = "Il n'y a pas encore d'experiences";
|
|
789
811
|
var ThereIsNoDependentsYet = "Il n'y a pas encore de personnes à charge";
|
|
790
812
|
var DependentTypeName = "Type de personne à charge";
|
|
813
|
+
var Vacations = "Vacances";
|
|
814
|
+
var Indemnity = "Indemnité";
|
|
815
|
+
var MedicalInsurance = "Assurance médicale";
|
|
816
|
+
var Tickets = "Billets";
|
|
817
|
+
var Others = "Autres";
|
|
818
|
+
var Type = "Type";
|
|
819
|
+
var Entitlement = "Droit";
|
|
820
|
+
var IndemnityEligibility = "Admissibilité à l'indemnisation";
|
|
821
|
+
var OvertimeEligibility = "Admissibilité aux heures supplémentaires";
|
|
822
|
+
var SocialSecurityEligibility = "Admissibilité à la sécurité sociale";
|
|
823
|
+
var Class = "Classe";
|
|
824
|
+
var Sector = "Secteur";
|
|
825
|
+
var Me = "Moi";
|
|
826
|
+
var Eligible = "Admissible";
|
|
827
|
+
var NotEligible = "Non éligible";
|
|
828
|
+
var Member = "Membre";
|
|
829
|
+
var NotMember = "Non membre";
|
|
830
|
+
var NotCoveredByMedicalInsurance = "Non couvert par l'assurance médicale";
|
|
831
|
+
var NoTicketEntitlement = "Aucun droit au billet";
|
|
832
|
+
var CoverageDate = "Date de couverture";
|
|
833
|
+
var TotalEmployeeShare = "Part totale des employés";
|
|
834
|
+
var TotalEmployerShare = "Part totale de l'employeur";
|
|
835
|
+
var Dependents = "Personnes à charge";
|
|
836
|
+
var NotEntitled = "Non éligible au droit";
|
|
837
|
+
var ThereAreNoDependentsYet = "Il n'y a pas encore de personnes à charge";
|
|
791
838
|
var fr = {
|
|
792
839
|
ReportingTo: ReportingTo,
|
|
793
840
|
NotAnknown: NotAnknown,
|
|
@@ -911,7 +958,36 @@ var fr = {
|
|
|
911
958
|
ThereIsNoDegreesYet: ThereIsNoDegreesYet,
|
|
912
959
|
ThereIsNoExperiencesYet: ThereIsNoExperiencesYet,
|
|
913
960
|
ThereIsNoDependentsYet: ThereIsNoDependentsYet,
|
|
914
|
-
DependentTypeName: DependentTypeName
|
|
961
|
+
DependentTypeName: DependentTypeName,
|
|
962
|
+
Vacations: Vacations,
|
|
963
|
+
Indemnity: Indemnity,
|
|
964
|
+
MedicalInsurance: MedicalInsurance,
|
|
965
|
+
Tickets: Tickets,
|
|
966
|
+
Others: Others,
|
|
967
|
+
Type: Type,
|
|
968
|
+
Entitlement: Entitlement,
|
|
969
|
+
IndemnityEligibility: IndemnityEligibility,
|
|
970
|
+
OvertimeEligibility: OvertimeEligibility,
|
|
971
|
+
SocialSecurityEligibility: SocialSecurityEligibility,
|
|
972
|
+
Class: Class,
|
|
973
|
+
Sector: Sector,
|
|
974
|
+
Me: Me,
|
|
975
|
+
Eligible: Eligible,
|
|
976
|
+
NotEligible: NotEligible,
|
|
977
|
+
Member: Member,
|
|
978
|
+
NotMember: NotMember,
|
|
979
|
+
"There'sNoInformationInThisSectionYet": "Il n'y a pas encore d'informations dans cette section",
|
|
980
|
+
NotCoveredByMedicalInsurance: NotCoveredByMedicalInsurance,
|
|
981
|
+
NoTicketEntitlement: NoTicketEntitlement,
|
|
982
|
+
"Number": "Nombre",
|
|
983
|
+
CoverageDate: CoverageDate,
|
|
984
|
+
TotalEmployeeShare: TotalEmployeeShare,
|
|
985
|
+
TotalEmployerShare: TotalEmployerShare,
|
|
986
|
+
Dependents: Dependents,
|
|
987
|
+
NotEntitled: NotEntitled,
|
|
988
|
+
"TicketEvery{{value}}Months": "Billet tous les {{value}} mois",
|
|
989
|
+
"TicketEvery{{value}}Month": "Billet tous les {{value}} mois",
|
|
990
|
+
ThereAreNoDependentsYet: ThereAreNoDependentsYet
|
|
915
991
|
};
|
|
916
992
|
|
|
917
993
|
const BUILT_IN_LEXICONS = { en, ar, fr };
|
|
@@ -1282,6 +1358,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImpo
|
|
|
1282
1358
|
class ProfileDocumentsCacheService {
|
|
1283
1359
|
baseUrl = '';
|
|
1284
1360
|
dependentDocuments$ = null;
|
|
1361
|
+
personalDocuments$ = null;
|
|
1285
1362
|
getDependentDocuments(baseUrl) {
|
|
1286
1363
|
return this.baseUrl === baseUrl ? this.dependentDocuments$ : null;
|
|
1287
1364
|
}
|
|
@@ -1289,9 +1366,17 @@ class ProfileDocumentsCacheService {
|
|
|
1289
1366
|
this.ensureBaseUrl(baseUrl);
|
|
1290
1367
|
this.dependentDocuments$ = value;
|
|
1291
1368
|
}
|
|
1369
|
+
getPersonalDocuments(baseUrl) {
|
|
1370
|
+
return this.baseUrl === baseUrl ? this.personalDocuments$ : null;
|
|
1371
|
+
}
|
|
1372
|
+
setPersonalDocuments(baseUrl, value) {
|
|
1373
|
+
this.ensureBaseUrl(baseUrl);
|
|
1374
|
+
this.personalDocuments$ = value;
|
|
1375
|
+
}
|
|
1292
1376
|
clear() {
|
|
1293
1377
|
this.baseUrl = '';
|
|
1294
1378
|
this.dependentDocuments$ = null;
|
|
1379
|
+
this.personalDocuments$ = null;
|
|
1295
1380
|
}
|
|
1296
1381
|
ensureBaseUrl(baseUrl) {
|
|
1297
1382
|
if (this.baseUrl && this.baseUrl !== baseUrl) {
|
|
@@ -1714,6 +1799,21 @@ class HRSelfWidgetsService {
|
|
|
1714
1799
|
this.profileDocumentsCacheService.setDependentDocuments(baseUrl, request$);
|
|
1715
1800
|
return request$;
|
|
1716
1801
|
}
|
|
1802
|
+
getPersonalDocuments(baseUrl, forceRefresh = false) {
|
|
1803
|
+
if (!forceRefresh) {
|
|
1804
|
+
const cached$ = this.profileDocumentsCacheService.getPersonalDocuments(baseUrl);
|
|
1805
|
+
if (cached$)
|
|
1806
|
+
return cached$;
|
|
1807
|
+
}
|
|
1808
|
+
const request$ = this.http
|
|
1809
|
+
.get(`${baseUrl}/hr/widgets/me/profile/documents/personal`, { headers: this.headers })
|
|
1810
|
+
.pipe(map(res => res?.ResponseData ?? []), shareReplay(1), catchError(error => {
|
|
1811
|
+
this.profileDocumentsCacheService.clear();
|
|
1812
|
+
return throwError(() => error);
|
|
1813
|
+
}));
|
|
1814
|
+
this.profileDocumentsCacheService.setPersonalDocuments(baseUrl, request$);
|
|
1815
|
+
return request$;
|
|
1816
|
+
}
|
|
1717
1817
|
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 });
|
|
1718
1818
|
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: HRSelfWidgetsService, providedIn: 'root' });
|
|
1719
1819
|
}
|
|
@@ -4972,11 +5072,11 @@ class ProfileDependentsDocumentsWidgetComponent {
|
|
|
4972
5072
|
this.attachmentDownloaded.emit(attachments);
|
|
4973
5073
|
}
|
|
4974
5074
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: ProfileDependentsDocumentsWidgetComponent, deps: [{ token: HRSelfWidgetsService }], target: i0.ɵɵFactoryTarget.Component });
|
|
4975
|
-
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)) : ('
|
|
5075
|
+
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)) : ('ThereAreNoDependentsDocumentsYet' | 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"] }] });
|
|
4976
5076
|
}
|
|
4977
5077
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: ProfileDependentsDocumentsWidgetComponent, decorators: [{
|
|
4978
5078
|
type: Component,
|
|
4979
|
-
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)) : ('
|
|
5079
|
+
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)) : ('ThereAreNoDependentsDocumentsYet' | HRTranslate)\">\r\n </sky-empty-design-card>\r\n\r\n }\r\n\r\n</div>\r\n" }]
|
|
4980
5080
|
}], ctorParameters: () => [{ type: HRSelfWidgetsService }], propDecorators: { baseUrl: [{
|
|
4981
5081
|
type: Input
|
|
4982
5082
|
}], sectionTitle: [{
|
|
@@ -5029,6 +5129,130 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImpo
|
|
|
5029
5129
|
type: Output
|
|
5030
5130
|
}] } });
|
|
5031
5131
|
|
|
5132
|
+
class ProfilePersonalDocumentsWidgetComponent {
|
|
5133
|
+
service;
|
|
5134
|
+
documents = [];
|
|
5135
|
+
isLoading = true;
|
|
5136
|
+
baseUrl = '';
|
|
5137
|
+
employeeName = '';
|
|
5138
|
+
sectionTitle = 'PersonalDocuments';
|
|
5139
|
+
icon = faFileLines;
|
|
5140
|
+
viewIcon = faEye;
|
|
5141
|
+
downloadIcon = faFolderArrowDown;
|
|
5142
|
+
headerIconClass = 'primary-icon-xl';
|
|
5143
|
+
headerTextClass = 'fs-16 mt-2 text-secondary';
|
|
5144
|
+
headerDividerClass = 'flex-grow-1 ms-2';
|
|
5145
|
+
valueClass = 'text-dark-gray fs-14';
|
|
5146
|
+
viewIconClass = 'fs-15 text-dark cursor-pointer';
|
|
5147
|
+
downloadIconClass = 'fs-15 mx-3 text-dark cursor-pointer';
|
|
5148
|
+
emptyStateContainerClass = 'd-flex flex-column justify-content-center align-items-center my-5';
|
|
5149
|
+
emptyStateTextClass = 'field-secondary-label-md';
|
|
5150
|
+
cardClass = 'mt-4 card-shadow position-relative';
|
|
5151
|
+
rowClass = 'row px-4 pb-3';
|
|
5152
|
+
rowPtClass = 'pt-3';
|
|
5153
|
+
columnClass = 'col-md-3 col-6';
|
|
5154
|
+
responsiveTopSpacingColClass = 'col-md-3 col-6 mt-md-0 mt-4';
|
|
5155
|
+
topSpacingColClass = 'col-md-3 col-6 mt-4';
|
|
5156
|
+
labelClass = 'field-secondary-label-sm mb-1';
|
|
5157
|
+
actionsColumnClass = 'col-2 align-items-end mt-3';
|
|
5158
|
+
isLoadingChanged = new EventEmitter();
|
|
5159
|
+
attachmentViewed = new EventEmitter();
|
|
5160
|
+
attachmentDownloaded = new EventEmitter();
|
|
5161
|
+
errorOccurred = new EventEmitter();
|
|
5162
|
+
constructor(service) {
|
|
5163
|
+
this.service = service;
|
|
5164
|
+
}
|
|
5165
|
+
ngOnInit() {
|
|
5166
|
+
if (!this.baseUrl) {
|
|
5167
|
+
this.isLoading = false;
|
|
5168
|
+
return;
|
|
5169
|
+
}
|
|
5170
|
+
this.isLoadingChanged.emit(true);
|
|
5171
|
+
this.service.getPersonalDocuments(this.baseUrl).subscribe({
|
|
5172
|
+
next: (res) => {
|
|
5173
|
+
this.documents = res ?? [];
|
|
5174
|
+
this.isLoading = false;
|
|
5175
|
+
this.isLoadingChanged.emit(false);
|
|
5176
|
+
},
|
|
5177
|
+
error: (error) => {
|
|
5178
|
+
this.documents = [];
|
|
5179
|
+
this.isLoading = false;
|
|
5180
|
+
this.errorOccurred.emit(error.error.ResponseData.Errors[0].Message);
|
|
5181
|
+
this.isLoadingChanged.emit(false);
|
|
5182
|
+
}
|
|
5183
|
+
});
|
|
5184
|
+
}
|
|
5185
|
+
onAttachmentView(doc) {
|
|
5186
|
+
if (doc.Attachments?.length) {
|
|
5187
|
+
this.attachmentViewed.emit(doc.Attachments[0]);
|
|
5188
|
+
}
|
|
5189
|
+
}
|
|
5190
|
+
onDownload(doc) {
|
|
5191
|
+
const attachments = doc.Attachments ?? [];
|
|
5192
|
+
if (!attachments.length)
|
|
5193
|
+
return;
|
|
5194
|
+
this.attachmentDownloaded.emit(attachments);
|
|
5195
|
+
}
|
|
5196
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: ProfilePersonalDocumentsWidgetComponent, deps: [{ token: HRSelfWidgetsService }], target: i0.ɵɵFactoryTarget.Component });
|
|
5197
|
+
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", 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 @if(documents.length) {\r\n <div [class]=\"cardClass\">\r\n <div class=\"px-3 pt-3\">\r\n <span class=\"text-dark fs-16\">\r\n {{ employeeName }}\r\n </span>\r\n <span class=\"text-dark fs-16 mx-1\">\r\n ({{ 'Me' }})\r\n </span>\r\n </div>\r\n @for(doc of documents; track doc) {\r\n <div class=\"row px-4 pb-3 pt-3 align-items-center\">\r\n <div class=\"col-md-3 col-6\" [title]=\"doc.DocumentTypeName\">\r\n <div [class]=\"labelClass\">Type</div>\r\n <div [class]=\"valueClass\">{{ doc.DocumentTypeName || '-' }}</div>\r\n </div>\r\n <div class=\"col-md-3 col-6\" [title]=\"doc.DocumentNumber\">\r\n <div [class]=\"labelClass\">Document Number</div>\r\n <div [class]=\"valueClass\">{{ doc.DocumentNumber || '-' }}</div>\r\n </div>\r\n <div class=\"col-md-2 col-6 mt-md-0 mt-3\" [title]=\"doc.IssueDate\">\r\n <div [class]=\"labelClass\">Issue Date</div>\r\n <div [class]=\"valueClass\">{{ doc.IssueDate ? (doc.IssueDate | date:'dd/MM/yyyy') : '-' }}</div>\r\n </div>\r\n <div class=\"col-md-2 col-6 mt-md-0 mt-3\" [title]=\"doc.ExpiryDate\">\r\n <div [class]=\"labelClass\">Expiry Date</div>\r\n <div [class]=\"valueClass\">{{ doc.ExpiryDate ? (doc.ExpiryDate | date:'dd/MM/yyyy') : '-' }}</div>\r\n </div>\r\n <div class=\"col-md-2 col-12 d-flex align-items-center gap-3 mt-md-0 mt-3\">\r\n @if(doc.Attachments && doc.Attachments.length > 0) {\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 <fa-icon [icon]=\"downloadIcon\"\r\n [class]=\"downloadIconClass\"\r\n (click)=\"onDownload(doc)\">\r\n </fa-icon>\r\n }\r\n </div>\r\n </div>\r\n }\r\n </div>\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$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"] }] });
|
|
5198
|
+
}
|
|
5199
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: ProfilePersonalDocumentsWidgetComponent, decorators: [{
|
|
5200
|
+
type: Component,
|
|
5201
|
+
args: [{ selector: 'hr-profile-personal-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 @if(documents.length) {\r\n <div [class]=\"cardClass\">\r\n <div class=\"px-3 pt-3\">\r\n <span class=\"text-dark fs-16\">\r\n {{ employeeName }}\r\n </span>\r\n <span class=\"text-dark fs-16 mx-1\">\r\n ({{ 'Me' }})\r\n </span>\r\n </div>\r\n @for(doc of documents; track doc) {\r\n <div class=\"row px-4 pb-3 pt-3 align-items-center\">\r\n <div class=\"col-md-3 col-6\" [title]=\"doc.DocumentTypeName\">\r\n <div [class]=\"labelClass\">Type</div>\r\n <div [class]=\"valueClass\">{{ doc.DocumentTypeName || '-' }}</div>\r\n </div>\r\n <div class=\"col-md-3 col-6\" [title]=\"doc.DocumentNumber\">\r\n <div [class]=\"labelClass\">Document Number</div>\r\n <div [class]=\"valueClass\">{{ doc.DocumentNumber || '-' }}</div>\r\n </div>\r\n <div class=\"col-md-2 col-6 mt-md-0 mt-3\" [title]=\"doc.IssueDate\">\r\n <div [class]=\"labelClass\">Issue Date</div>\r\n <div [class]=\"valueClass\">{{ doc.IssueDate ? (doc.IssueDate | date:'dd/MM/yyyy') : '-' }}</div>\r\n </div>\r\n <div class=\"col-md-2 col-6 mt-md-0 mt-3\" [title]=\"doc.ExpiryDate\">\r\n <div [class]=\"labelClass\">Expiry Date</div>\r\n <div [class]=\"valueClass\">{{ doc.ExpiryDate ? (doc.ExpiryDate | date:'dd/MM/yyyy') : '-' }}</div>\r\n </div>\r\n <div class=\"col-md-2 col-12 d-flex align-items-center gap-3 mt-md-0 mt-3\">\r\n @if(doc.Attachments && doc.Attachments.length > 0) {\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 <fa-icon [icon]=\"downloadIcon\"\r\n [class]=\"downloadIconClass\"\r\n (click)=\"onDownload(doc)\">\r\n </fa-icon>\r\n }\r\n </div>\r\n </div>\r\n }\r\n </div>\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" }]
|
|
5202
|
+
}], ctorParameters: () => [{ type: HRSelfWidgetsService }], propDecorators: { baseUrl: [{
|
|
5203
|
+
type: Input
|
|
5204
|
+
}], employeeName: [{
|
|
5205
|
+
type: Input
|
|
5206
|
+
}], sectionTitle: [{
|
|
5207
|
+
type: Input
|
|
5208
|
+
}], icon: [{
|
|
5209
|
+
type: Input
|
|
5210
|
+
}], viewIcon: [{
|
|
5211
|
+
type: Input
|
|
5212
|
+
}], downloadIcon: [{
|
|
5213
|
+
type: Input
|
|
5214
|
+
}], headerIconClass: [{
|
|
5215
|
+
type: Input
|
|
5216
|
+
}], headerTextClass: [{
|
|
5217
|
+
type: Input
|
|
5218
|
+
}], headerDividerClass: [{
|
|
5219
|
+
type: Input
|
|
5220
|
+
}], valueClass: [{
|
|
5221
|
+
type: Input
|
|
5222
|
+
}], viewIconClass: [{
|
|
5223
|
+
type: Input
|
|
5224
|
+
}], downloadIconClass: [{
|
|
5225
|
+
type: Input
|
|
5226
|
+
}], emptyStateContainerClass: [{
|
|
5227
|
+
type: Input
|
|
5228
|
+
}], emptyStateTextClass: [{
|
|
5229
|
+
type: Input
|
|
5230
|
+
}], cardClass: [{
|
|
5231
|
+
type: Input
|
|
5232
|
+
}], rowClass: [{
|
|
5233
|
+
type: Input
|
|
5234
|
+
}], rowPtClass: [{
|
|
5235
|
+
type: Input
|
|
5236
|
+
}], columnClass: [{
|
|
5237
|
+
type: Input
|
|
5238
|
+
}], responsiveTopSpacingColClass: [{
|
|
5239
|
+
type: Input
|
|
5240
|
+
}], topSpacingColClass: [{
|
|
5241
|
+
type: Input
|
|
5242
|
+
}], labelClass: [{
|
|
5243
|
+
type: Input
|
|
5244
|
+
}], actionsColumnClass: [{
|
|
5245
|
+
type: Input
|
|
5246
|
+
}], isLoadingChanged: [{
|
|
5247
|
+
type: Output
|
|
5248
|
+
}], attachmentViewed: [{
|
|
5249
|
+
type: Output
|
|
5250
|
+
}], attachmentDownloaded: [{
|
|
5251
|
+
type: Output
|
|
5252
|
+
}], errorOccurred: [{
|
|
5253
|
+
type: Output
|
|
5254
|
+
}] } });
|
|
5255
|
+
|
|
5032
5256
|
/*
|
|
5033
5257
|
* Public API Surface of shared-ui
|
|
5034
5258
|
*/
|
|
@@ -5037,5 +5261,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImpo
|
|
|
5037
5261
|
* Generated bundle index. Do not edit.
|
|
5038
5262
|
*/
|
|
5039
5263
|
|
|
5040
|
-
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 };
|
|
5264
|
+
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, ProfilePersonalDocumentsWidgetComponent, ProfilePersonalInfoAddressWidgetComponent, ProfilePersonalInfoContactWidgetComponent, ProfilePersonalInfoLanguagesWidgetComponent, ProfilePersonalInfoMainWidgetComponent, ProfilePersonalInfoOtherNationalitiesWidgetComponent, PublicHolidayWeekContext, RelativeDay, ScheduleVacationTypes, ServiceChargeEntitlementMode, VacationPopupType };
|
|
5041
5265
|
//# sourceMappingURL=skysoftware-co-bayan-hr-widgets-ui.mjs.map
|