@skysoftware-co/bayan-hr-widgets-ui 1.0.27 → 1.0.29
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 +88 -10
- package/fesm2022/skysoftware-co-bayan-hr-widgets-ui.mjs +108 -21
- package/fesm2022/skysoftware-co-bayan-hr-widgets-ui.mjs.map +1 -1
- package/lib/my-vacation-team-widget/components/vacation-subordinates-popup/vacation-subordinates-popup.component.d.ts +38 -0
- package/lib/my-vacation-team-widget/my-vacation-team-widget.component.d.ts +33 -0
- package/lib/profile-experiences-widget/profile-experiences-widget-component.d.ts +8 -4
- package/lib/shared/types/common.d.ts +4 -4
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -31,7 +31,7 @@ components:
|
|
|
31
31
|
1. My Main Details Widget
|
|
32
32
|
2. My Upcoming Events Widget
|
|
33
33
|
3. My Calendar Widget
|
|
34
|
-
|
|
34
|
+
|
|
35
35
|
## Dependencies
|
|
36
36
|
This library depends on `@skysoftware-co/bayan-components-ui` package which provides:
|
|
37
37
|
- Employee Badge Component
|
|
@@ -243,6 +243,7 @@ This component displays an employee calendar showing vacations, public holidays,
|
|
|
243
243
|
|-------|------|---------------|-------------|
|
|
244
244
|
| `baseUrl` | string | `''` | Base URL for API calls |
|
|
245
245
|
| `headerContainerClass` | string | `''` | Additional CSS class for the header container |
|
|
246
|
+
| `datasource` | `ScheduleRequestsResponse \| null` | `null` | External datasource for pending requests. When provided, pending vacation requests are merged with calendar vacations (consecutive same-type vacations are combined), and pending event requests are added as events. The calendar reactively updates whenever this input changes after the initial calendar data has loaded. |
|
|
246
247
|
| `publicHolidayColor` | string | from `HRConstantsService`: `'#249EA0'` | Color for public holidays |
|
|
247
248
|
| `dayOffColor` | string | from `HRConstantsService`: `'#FCCF5A'` | Color for days off |
|
|
248
249
|
| `eventsColor` | string | from `HRConstantsService`: `'#e67e0f'` | Color for events |
|
|
@@ -271,15 +272,15 @@ The component calls `GET {baseUrl}/hr/employee-portal/calendar` with query param
|
|
|
271
272
|
- Header: `api-version: 2`
|
|
272
273
|
|
|
273
274
|
|
|
274
|
-
## My
|
|
275
|
+
## My Vacation Team Widget Component
|
|
275
276
|
|
|
276
277
|
### Usage
|
|
277
278
|
```html
|
|
278
|
-
<hr-my-
|
|
279
|
+
<hr-my-vacation-team-widget
|
|
279
280
|
[baseUrl]="environment.baseUrl"
|
|
280
281
|
[showProperty]="true"
|
|
281
282
|
(isLoadingChanged)="onLoadingChanged($event)">
|
|
282
|
-
</hr-my-
|
|
283
|
+
</hr-my-vacation-team-widget>
|
|
283
284
|
```
|
|
284
285
|
|
|
285
286
|
This component displays a "Next Week Vacation Insights" card showing two badges: **Upcoming Vacations** and **Expected To Return** counts for team subordinates. Clicking a badge opens a popup with a paginated, searchable data grid listing the relevant employees. It uses `SkyWidgetSectionItemComponent` from `@skysoftware-co/sky-components-ui` for badge display and `BayanEmployeeBadgeComponent` from `@skysoftware-co/bayan-components-ui` for employee photos in the popup.
|
|
@@ -289,20 +290,20 @@ This component displays a "Next Week Vacation Insights" card showing two badges:
|
|
|
289
290
|
|-------|------|---------------|-------------|
|
|
290
291
|
| `baseUrl` | string | `''` | Base URL for API calls |
|
|
291
292
|
| `showProperty` | boolean | `false` | Show employee property badge in the popup grid |
|
|
292
|
-
| `cardClass` | string | `'card rounded rounded-4 card-shadow border-top-0 h-100 p-4'` | Card container CSS class |
|
|
293
|
-
| `titleClass` | string | `'table-header-lg fw-meduim
|
|
293
|
+
| `cardClass` | string | `'card rounded rounded-4 card-shadow p-16 border-top-0 h-100 p-4'` | Card container CSS class |
|
|
294
|
+
| `titleClass` | string | `'table-header-lg fw-meduim'` | Card title CSS class |
|
|
294
295
|
| `valueClass` | string | `'fs-24 mt-1 link-dark hover-primary text-decoration-none'` | Badge value CSS class (clickable) |
|
|
295
296
|
| `disabledValueClass` | string | `'fs-24 mt-1 text-muted pe-none text-decoration-none'` | Badge value CSS class when count is 0 |
|
|
296
|
-
| `upcomingContainerClass` | string | `'border-start border-5 mb-
|
|
297
|
+
| `upcomingContainerClass` | string | `'border-start border-5 mb-3'` | Upcoming vacations badge container CSS class |
|
|
297
298
|
| `expectedContainerClass` | string | `'border-start border-5'` | Expected to return badge container CSS class |
|
|
298
299
|
|
|
299
300
|
### Output Events
|
|
300
301
|
- `isLoadingChanged: EventEmitter<boolean>` - Emitted when loading state changes
|
|
301
302
|
|
|
302
303
|
### API Endpoints
|
|
303
|
-
- **Summary**: `GET {baseUrl}/hr/widgets/me/team/
|
|
304
|
-
- **Upcoming list**: `GET {baseUrl}/hr/widgets/me/team/
|
|
305
|
-
- **Expected to return list**: `GET {baseUrl}/hr/widgets/me/team/
|
|
304
|
+
- **Summary**: `GET {baseUrl}/hr/widgets/me/team/subordinates/vacations/summary?ShowDirectSubordinatesOnly=false`
|
|
305
|
+
- **Upcoming list**: `GET {baseUrl}/hr/widgets/me/team/subordinates/vacations/upcoming`
|
|
306
|
+
- **Expected to return list**: `GET {baseUrl}/hr/widgets/me/team/subordinates/vacations/expected-to-return`
|
|
306
307
|
|
|
307
308
|
## Profile Widgets
|
|
308
309
|
|
|
@@ -343,6 +344,83 @@ The package also exports profile-focused widgets used in the employee profile pa
|
|
|
343
344
|
- `isLoadingChanged: EventEmitter<boolean>` - Emitted when loading state changes.
|
|
344
345
|
- `errorOccurred: EventEmitter<string>` - Emitted when API request fails.
|
|
345
346
|
|
|
347
|
+
## Profile Experiences Widget
|
|
348
|
+
|
|
349
|
+
### Usage
|
|
350
|
+
```html
|
|
351
|
+
<hr-profile-experiences-widget
|
|
352
|
+
[baseUrl]="baseUrl"
|
|
353
|
+
(isLoadingChanged)="onExperiencesLoadingChanged($event)">
|
|
354
|
+
</hr-profile-experiences-widget>
|
|
355
|
+
```
|
|
356
|
+
|
|
357
|
+
### Input Properties
|
|
358
|
+
| Input | Type | Default Value | Description |
|
|
359
|
+
|-------|------|---------------|-------------|
|
|
360
|
+
| `baseUrl` | string | `''` | Base URL for API calls. |
|
|
361
|
+
| `sectionTitle` | string | `'experiences'` | Section title translation key. |
|
|
362
|
+
| `experienceIcon` | IconDefinition | `faUsersRays` | Header icon. |
|
|
363
|
+
| `viewIcon` | IconDefinition | `faEye` | Attachment view icon. |
|
|
364
|
+
| `downloadIcon` | IconDefinition | `faFolderArrowDown` | Attachment download icon. |
|
|
365
|
+
| `headerIconClass` | string | `'primary-icon-xl'` | Header icon CSS class. |
|
|
366
|
+
| `headerTextClass` | string | `'fs-16 mt-2 text-secondary'` | Header text CSS class. |
|
|
367
|
+
| `headerDividerClass` | string | `'flex-grow-1 ms-2'` | Header divider CSS class. |
|
|
368
|
+
| `rowClass` | string | `'mt-4'` | Main row CSS class. |
|
|
369
|
+
| `itemRowClass` | string | `'row col-10 mt-3'` | Experience row CSS class. |
|
|
370
|
+
| `itemColumnClass` | string | `'col-3'` | Column CSS class. |
|
|
371
|
+
| `labelClass` | string | `'field-secondary-label-sm'` | `hr-info-field` label CSS class. |
|
|
372
|
+
| `valueClass` | string | `'text-dark-gray fs-14 text-ellipsis-one-line cursor-pointer'` | `hr-info-field` value CSS class. |
|
|
373
|
+
| `actionsColumnClass` | string | `'col-2 mt-3'` | Attachment action column CSS class. |
|
|
374
|
+
| `viewIconClass` | string | `'fs-15 text-dark cursor-pointer'` | View icon CSS class. |
|
|
375
|
+
| `downloadIconClass` | string | `'fs-15 text-dark cursor-pointer mx-2'` | Download icon CSS class. |
|
|
376
|
+
| `emptyStateContainerClass` | string | `'d-flex flex-column justify-content-center align-items-center my-5'` | Empty/loading container CSS class. |
|
|
377
|
+
| `emptyStateTextClass` | string | `'field-secondary-label-md'` | Empty/loading text CSS class. |
|
|
378
|
+
|
|
379
|
+
### Output Events
|
|
380
|
+
- `isLoadingChanged: EventEmitter<boolean>` - Emitted when loading state changes.
|
|
381
|
+
- `attachmentViewed: EventEmitter<any>` - Emitted when attachment view icon is clicked.
|
|
382
|
+
- `attachmentDownloaded: EventEmitter<any>` - Emitted when attachment download icon is clicked.
|
|
383
|
+
- `errorOccurred: EventEmitter<string>` - Emitted when API request fails.
|
|
384
|
+
|
|
385
|
+
## Profile Degrees Widget
|
|
386
|
+
|
|
387
|
+
### Usage
|
|
388
|
+
```html
|
|
389
|
+
<hr-profile-degrees-widget
|
|
390
|
+
[baseUrl]="baseUrl"
|
|
391
|
+
(isLoadingChanged)="onDegreesLoadingChanged($event)">
|
|
392
|
+
</hr-profile-degrees-widget>
|
|
393
|
+
```
|
|
394
|
+
|
|
395
|
+
### Input Properties
|
|
396
|
+
| Input | Type | Default Value | Description |
|
|
397
|
+
|-------|------|---------------|-------------|
|
|
398
|
+
| `baseUrl` | string | `''` | Base URL for API calls. |
|
|
399
|
+
| `sectionTitle` | string | `'degrees'` | Section title translation key. |
|
|
400
|
+
| `degreesIcon` | IconDefinition | `faFileCertificate` | Header icon. |
|
|
401
|
+
| `viewIcon` | IconDefinition | `faEye` | Attachment view icon. |
|
|
402
|
+
| `downloadIcon` | IconDefinition | `faFolderArrowDown` | Attachment download icon. |
|
|
403
|
+
| `headerIconClass` | string | `'primary-icon-xl'` | Header icon CSS class. |
|
|
404
|
+
| `headerTextClass` | string | `'fs-16 mt-2 text-secondary'` | Header text CSS class. |
|
|
405
|
+
| `headerDividerClass` | string | `'flex-grow-1 ms-2'` | Header divider CSS class. |
|
|
406
|
+
| `rowClass` | string | `'mt-4'` | Main row CSS class. |
|
|
407
|
+
| `itemRowClass` | string | `'row col-10 mt-3'` | Degree row CSS class. |
|
|
408
|
+
| `itemColumnClass` | string | `'col-3'` | Column CSS class. |
|
|
409
|
+
| `labelClass` | string | `'field-secondary-label-sm'` | `hr-info-field` label CSS class. |
|
|
410
|
+
| `valueClass` | string | `'text-dark-gray fs-14'` | `hr-info-field` main value CSS class. |
|
|
411
|
+
| `valueEllipsisClass` | string | `'text-dark-gray fs-14 text-ellipsis-one-line cursor-pointer'` | `hr-info-field` ellipsis value CSS class. |
|
|
412
|
+
| `actionsColumnClass` | string | `'col-2 align-items-end mt-3'` | Attachment action column CSS class. |
|
|
413
|
+
| `viewIconClass` | string | `'fs-15 text-dark cursor-pointer'` | View icon CSS class. |
|
|
414
|
+
| `downloadIconClass` | string | `'fs-15 mx-3 text-dark cursor-pointer'` | Download icon CSS class. |
|
|
415
|
+
| `emptyStateContainerClass` | string | `'d-flex flex-column justify-content-center align-items-center my-5'` | Empty/loading container CSS class. |
|
|
416
|
+
| `emptyStateTextClass` | string | `'field-secondary-label-md'` | Empty/loading text CSS class. |
|
|
417
|
+
|
|
418
|
+
### Output Events
|
|
419
|
+
- `isLoadingChanged: EventEmitter<boolean>` - Emitted when loading state changes.
|
|
420
|
+
- `attachmentViewed: EventEmitter<any>` - Emitted when attachment view icon is clicked.
|
|
421
|
+
- `attachmentDownloaded: EventEmitter<any>` - Emitted when attachment download icon is clicked.
|
|
422
|
+
- `errorOccurred: EventEmitter<string>` - Emitted when API request fails.
|
|
423
|
+
|
|
346
424
|
## Profile Personal Info Contact Widget
|
|
347
425
|
|
|
348
426
|
### Usage
|
|
@@ -177,6 +177,17 @@ var StartDate$2 = "Start date";
|
|
|
177
177
|
var EndDate$2 = "End date";
|
|
178
178
|
var ReturnDate$2 = "Return date";
|
|
179
179
|
var JobInformation$2 = "Job information";
|
|
180
|
+
var Degrees$2 = "Degrees";
|
|
181
|
+
var degrees$2 = "Degrees";
|
|
182
|
+
var experiences$2 = "Experiences";
|
|
183
|
+
var Country$2 = "Country";
|
|
184
|
+
var Specialty$2 = "Specialty";
|
|
185
|
+
var Institute$2 = "Institute";
|
|
186
|
+
var Period$2 = "Period";
|
|
187
|
+
var Employer$2 = "Employer";
|
|
188
|
+
var TerminationReason$2 = "Termination reason";
|
|
189
|
+
var ThereIsNoDegreesYet$2 = "There are no degrees yet";
|
|
190
|
+
var ThereIsNoExperiencesYet$2 = "There are no experiences yet";
|
|
180
191
|
var en = {
|
|
181
192
|
ReportingTo: ReportingTo$2,
|
|
182
193
|
NotAnknown: NotAnknown$2,
|
|
@@ -286,7 +297,19 @@ var en = {
|
|
|
286
297
|
EndDate: EndDate$2,
|
|
287
298
|
ReturnDate: ReturnDate$2,
|
|
288
299
|
"Search...": "Search...",
|
|
289
|
-
JobInformation: JobInformation$2
|
|
300
|
+
JobInformation: JobInformation$2,
|
|
301
|
+
Degrees: Degrees$2,
|
|
302
|
+
degrees: degrees$2,
|
|
303
|
+
experiences: experiences$2,
|
|
304
|
+
"Degree/Year": "Degree/Year",
|
|
305
|
+
Country: Country$2,
|
|
306
|
+
Specialty: Specialty$2,
|
|
307
|
+
Institute: Institute$2,
|
|
308
|
+
Period: Period$2,
|
|
309
|
+
Employer: Employer$2,
|
|
310
|
+
TerminationReason: TerminationReason$2,
|
|
311
|
+
ThereIsNoDegreesYet: ThereIsNoDegreesYet$2,
|
|
312
|
+
ThereIsNoExperiencesYet: ThereIsNoExperiencesYet$2
|
|
290
313
|
};
|
|
291
314
|
|
|
292
315
|
var ReportingTo$1 = "مفوض الى";
|
|
@@ -395,6 +418,17 @@ var StartDate$1 = "تاريخ البداية";
|
|
|
395
418
|
var EndDate$1 = "تاريخ النهاية";
|
|
396
419
|
var ReturnDate$1 = "تاريخ العودة";
|
|
397
420
|
var JobInformation$1 = "معلومات الوظيفة";
|
|
421
|
+
var Degrees$1 = "المؤهلات العلمية";
|
|
422
|
+
var degrees$1 = "المؤهلات العلمية";
|
|
423
|
+
var experiences$1 = "الخبرات";
|
|
424
|
+
var Country$1 = "الدولة";
|
|
425
|
+
var Specialty$1 = "التخصص";
|
|
426
|
+
var Institute$1 = "المعهد";
|
|
427
|
+
var Period$1 = "الفترة";
|
|
428
|
+
var Employer$1 = "جهة العمل";
|
|
429
|
+
var TerminationReason$1 = "سبب إنهاء الخدمة";
|
|
430
|
+
var ThereIsNoDegreesYet$1 = "لا توجد مؤهلات علمية بعد";
|
|
431
|
+
var ThereIsNoExperiencesYet$1 = "لا توجد خبرات بعد";
|
|
398
432
|
var ar = {
|
|
399
433
|
ReportingTo: ReportingTo$1,
|
|
400
434
|
NotAnknown: NotAnknown$1,
|
|
@@ -503,7 +537,19 @@ var ar = {
|
|
|
503
537
|
EndDate: EndDate$1,
|
|
504
538
|
ReturnDate: ReturnDate$1,
|
|
505
539
|
"Search...": "بحث...",
|
|
506
|
-
JobInformation: JobInformation$1
|
|
540
|
+
JobInformation: JobInformation$1,
|
|
541
|
+
Degrees: Degrees$1,
|
|
542
|
+
degrees: degrees$1,
|
|
543
|
+
experiences: experiences$1,
|
|
544
|
+
"Degree/Year": "الدرجة / السنة",
|
|
545
|
+
Country: Country$1,
|
|
546
|
+
Specialty: Specialty$1,
|
|
547
|
+
Institute: Institute$1,
|
|
548
|
+
Period: Period$1,
|
|
549
|
+
Employer: Employer$1,
|
|
550
|
+
TerminationReason: TerminationReason$1,
|
|
551
|
+
ThereIsNoDegreesYet: ThereIsNoDegreesYet$1,
|
|
552
|
+
ThereIsNoExperiencesYet: ThereIsNoExperiencesYet$1
|
|
507
553
|
};
|
|
508
554
|
|
|
509
555
|
var ReportingTo = "Rapport à";
|
|
@@ -613,6 +659,17 @@ var StartDate = "Date de début";
|
|
|
613
659
|
var EndDate = "Date de fin";
|
|
614
660
|
var ReturnDate = "Date de retour";
|
|
615
661
|
var JobInformation = "Informations sur l'emploi";
|
|
662
|
+
var Degrees = "Diplomes";
|
|
663
|
+
var degrees = "Diplomes";
|
|
664
|
+
var experiences = "Experiences";
|
|
665
|
+
var Country = "Pays";
|
|
666
|
+
var Specialty = "Specialite";
|
|
667
|
+
var Institute = "Institut";
|
|
668
|
+
var Period = "Periode";
|
|
669
|
+
var Employer = "Employeur";
|
|
670
|
+
var TerminationReason = "Motif de fin de service";
|
|
671
|
+
var ThereIsNoDegreesYet = "Il n'y a pas encore de diplomes";
|
|
672
|
+
var ThereIsNoExperiencesYet = "Il n'y a pas encore d'experiences";
|
|
616
673
|
var fr = {
|
|
617
674
|
ReportingTo: ReportingTo,
|
|
618
675
|
NotAnknown: NotAnknown,
|
|
@@ -722,7 +779,19 @@ var fr = {
|
|
|
722
779
|
EndDate: EndDate,
|
|
723
780
|
ReturnDate: ReturnDate,
|
|
724
781
|
"Search...": "Rechercher...",
|
|
725
|
-
JobInformation: JobInformation
|
|
782
|
+
JobInformation: JobInformation,
|
|
783
|
+
Degrees: Degrees,
|
|
784
|
+
degrees: degrees,
|
|
785
|
+
experiences: experiences,
|
|
786
|
+
"Degree/Year": "Diplome/Annee",
|
|
787
|
+
Country: Country,
|
|
788
|
+
Specialty: Specialty,
|
|
789
|
+
Institute: Institute,
|
|
790
|
+
Period: Period,
|
|
791
|
+
Employer: Employer,
|
|
792
|
+
TerminationReason: TerminationReason,
|
|
793
|
+
ThereIsNoDegreesYet: ThereIsNoDegreesYet,
|
|
794
|
+
ThereIsNoExperiencesYet: ThereIsNoExperiencesYet
|
|
726
795
|
};
|
|
727
796
|
|
|
728
797
|
const BUILT_IN_LEXICONS = { en, ar, fr };
|
|
@@ -1269,7 +1338,7 @@ class HRSelfWidgetsService {
|
|
|
1269
1338
|
}
|
|
1270
1339
|
getVacationSummary(baseUrl) {
|
|
1271
1340
|
const params = new HttpParams().set('ShowDirectSubordinatesOnly', 'false');
|
|
1272
|
-
return this.http.get(`${baseUrl}/hr/widgets/me/team/
|
|
1341
|
+
return this.http.get(`${baseUrl}/hr/widgets/me/team/subordinates/vacations/summary`, {
|
|
1273
1342
|
params,
|
|
1274
1343
|
headers: this.headers
|
|
1275
1344
|
});
|
|
@@ -2250,7 +2319,6 @@ class MyCalendarWidgetComponent {
|
|
|
2250
2319
|
headerContainerClass = '';
|
|
2251
2320
|
datasource = null;
|
|
2252
2321
|
isLoadingChanged = new EventEmitter();
|
|
2253
|
-
//test
|
|
2254
2322
|
calendarIcon = faCalendarDays;
|
|
2255
2323
|
legendContainerClass = 'row mb-2';
|
|
2256
2324
|
legendRowClass = 'd-flex';
|
|
@@ -2455,11 +2523,11 @@ class HRInfoFieldComponent {
|
|
|
2455
2523
|
valueClass = 'fs-14 fw-medium';
|
|
2456
2524
|
fallbackValue = '—';
|
|
2457
2525
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: HRInfoFieldComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
2458
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.20", type: HRInfoFieldComponent, isStandalone: true, selector: "hr-info-field", inputs: { labelKey: "labelKey", value: "value", labelClass: "labelClass", valueClass: "valueClass", fallbackValue: "fallbackValue" }, ngImport: i0, template: "<div [ngClass]=\"labelClass\">{{labelKey | HRTranslate}}</div>\r\n<div [ngClass]=\"valueClass\">{{value || fallbackValue}}</div>\r\n", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2$1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "pipe", type: HRTranslatePipe, name: "HRTranslate" }] });
|
|
2526
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.20", type: HRInfoFieldComponent, isStandalone: true, selector: "hr-info-field", inputs: { labelKey: "labelKey", value: "value", labelClass: "labelClass", valueClass: "valueClass", fallbackValue: "fallbackValue" }, ngImport: i0, template: "<div [ngClass]=\"labelClass\">{{labelKey | HRTranslate}}</div>\r\n<div [ngClass]=\"valueClass\" [title]=\"value|| fallbackValue\">{{value || fallbackValue}}</div>\r\n", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2$1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "pipe", type: HRTranslatePipe, name: "HRTranslate" }] });
|
|
2459
2527
|
}
|
|
2460
2528
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: HRInfoFieldComponent, decorators: [{
|
|
2461
2529
|
type: Component,
|
|
2462
|
-
args: [{ selector: 'hr-info-field', standalone: true, imports: [CommonModule, HRTranslatePipe], template: "<div [ngClass]=\"labelClass\">{{labelKey | HRTranslate}}</div>\r\n<div [ngClass]=\"valueClass\">{{value || fallbackValue}}</div>\r\n" }]
|
|
2530
|
+
args: [{ selector: 'hr-info-field', standalone: true, imports: [CommonModule, HRTranslatePipe], template: "<div [ngClass]=\"labelClass\">{{labelKey | HRTranslate}}</div>\r\n<div [ngClass]=\"valueClass\" [title]=\"value|| fallbackValue\">{{value || fallbackValue}}</div>\r\n" }]
|
|
2463
2531
|
}], propDecorators: { labelKey: [{
|
|
2464
2532
|
type: Input,
|
|
2465
2533
|
args: [{ required: true }]
|
|
@@ -3635,15 +3703,18 @@ class ProfileExperiencesWidgetComponent {
|
|
|
3635
3703
|
headerTextClass = 'fs-16 mt-2 text-secondary';
|
|
3636
3704
|
headerDividerClass = 'flex-grow-1 ms-2';
|
|
3637
3705
|
rowClass = 'mt-4';
|
|
3638
|
-
itemRowClass = 'row col-10 mt-3';
|
|
3639
|
-
itemColumnClass = 'col-3';
|
|
3640
3706
|
labelClass = 'field-secondary-label-sm';
|
|
3641
3707
|
valueClass = 'text-dark-gray fs-14 text-ellipsis-one-line cursor-pointer';
|
|
3642
|
-
actionsColumnClass = 'col-2 mt-3';
|
|
3643
3708
|
viewIconClass = 'fs-15 text-dark cursor-pointer';
|
|
3644
3709
|
downloadIconClass = 'fs-15 text-dark cursor-pointer mx-2';
|
|
3645
3710
|
emptyStateContainerClass = 'd-flex flex-column justify-content-center align-items-center my-5';
|
|
3646
3711
|
emptyStateTextClass = 'field-secondary-label-md';
|
|
3712
|
+
itemRowClass = 'row';
|
|
3713
|
+
itemColumnsWrapperClass = 'row col-10 mt-3';
|
|
3714
|
+
itemColumnClass = 'col-3';
|
|
3715
|
+
actionsColumnClass = 'align-items-end col-2 mt-4 pt-2';
|
|
3716
|
+
rowMarginBottomClass = 'mb-5';
|
|
3717
|
+
rowMarginBottomEmptyClass = 'mb-4';
|
|
3647
3718
|
isLoadingChanged = new EventEmitter();
|
|
3648
3719
|
attachmentViewed = new EventEmitter();
|
|
3649
3720
|
attachmentDownloaded = new EventEmitter();
|
|
@@ -3677,13 +3748,23 @@ class ProfileExperiencesWidgetComponent {
|
|
|
3677
3748
|
onAttachmentDownload(file) {
|
|
3678
3749
|
this.attachmentDownloaded.emit(file);
|
|
3679
3750
|
}
|
|
3751
|
+
get wrapperClass() {
|
|
3752
|
+
const classes = [this.rowClass];
|
|
3753
|
+
if (this.experiences.length > 0) {
|
|
3754
|
+
classes.push(this.rowMarginBottomClass);
|
|
3755
|
+
}
|
|
3756
|
+
else {
|
|
3757
|
+
classes.push(this.rowMarginBottomEmptyClass);
|
|
3758
|
+
}
|
|
3759
|
+
return classes.join(' ');
|
|
3760
|
+
}
|
|
3680
3761
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: ProfileExperiencesWidgetComponent, deps: [{ token: HRSelfWidgetsService }], target: i0.ɵɵFactoryTarget.Component });
|
|
3681
|
-
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",
|
|
3762
|
+
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", 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 @for (experience of experiences; track experience){\r\n\r\n <div [class]=\"itemRowClass\">\r\n\r\n <div [class]=\"itemColumnsWrapperClass\">\r\n\r\n <div [class]=\"itemColumnClass\">\r\n <hr-info-field labelKey=\"Period\"\r\n [value]=\"(experience.StartDate | date:'dd/MM/yyyy') + ' - ' + (experience.EndDate | 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]=\"itemColumnClass\">\r\n <hr-info-field labelKey=\"Employer\"\r\n [value]=\"experience.Employer\"\r\n [labelClass]=\"labelClass\"\r\n [valueClass]=\"valueClass\">\r\n </hr-info-field>\r\n </div>\r\n\r\n <div [class]=\"itemColumnClass\">\r\n <hr-info-field labelKey=\"Position\"\r\n [value]=\"experience.Position\"\r\n [labelClass]=\"labelClass\"\r\n [valueClass]=\"valueClass\">\r\n </hr-info-field>\r\n </div>\r\n\r\n <div [class]=\"itemColumnClass\">\r\n <hr-info-field labelKey=\"TerminationReason\"\r\n [value]=\"experience.TerminationReason\"\r\n [labelClass]=\"labelClass\"\r\n [valueClass]=\"valueClass\">\r\n </hr-info-field>\r\n </div>\r\n\r\n </div>\r\n <div [class]=\"actionsColumnClass\">\r\n @if(experience.Document){\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 }\r\n </div>\r\n\r\n </div>\r\n\r\n }\r\n\r\n\r\n}@else{\r\n\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"] }, { kind: "component", type: HRInfoFieldComponent, selector: "hr-info-field", inputs: ["labelKey", "value", "labelClass", "valueClass", "fallbackValue"] }] });
|
|
3682
3763
|
}
|
|
3683
3764
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: ProfileExperiencesWidgetComponent, decorators: [{
|
|
3684
3765
|
type: Component,
|
|
3685
3766
|
args: [{ selector: 'hr-profile-experiences-widget', standalone: true, imports: [CommonModule, SkySectionDividerComponent,
|
|
3686
|
-
HRTranslatePipe, SkyEmptyDesignCardComponent, FontAwesomeModule, HRInfoFieldComponent], 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@if(experiences.length > 0){\r\n\r\n
|
|
3767
|
+
HRTranslatePipe, SkyEmptyDesignCardComponent, FontAwesomeModule, HRInfoFieldComponent], 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 @for (experience of experiences; track experience){\r\n\r\n <div [class]=\"itemRowClass\">\r\n\r\n <div [class]=\"itemColumnsWrapperClass\">\r\n\r\n <div [class]=\"itemColumnClass\">\r\n <hr-info-field labelKey=\"Period\"\r\n [value]=\"(experience.StartDate | date:'dd/MM/yyyy') + ' - ' + (experience.EndDate | 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]=\"itemColumnClass\">\r\n <hr-info-field labelKey=\"Employer\"\r\n [value]=\"experience.Employer\"\r\n [labelClass]=\"labelClass\"\r\n [valueClass]=\"valueClass\">\r\n </hr-info-field>\r\n </div>\r\n\r\n <div [class]=\"itemColumnClass\">\r\n <hr-info-field labelKey=\"Position\"\r\n [value]=\"experience.Position\"\r\n [labelClass]=\"labelClass\"\r\n [valueClass]=\"valueClass\">\r\n </hr-info-field>\r\n </div>\r\n\r\n <div [class]=\"itemColumnClass\">\r\n <hr-info-field labelKey=\"TerminationReason\"\r\n [value]=\"experience.TerminationReason\"\r\n [labelClass]=\"labelClass\"\r\n [valueClass]=\"valueClass\">\r\n </hr-info-field>\r\n </div>\r\n\r\n </div>\r\n <div [class]=\"actionsColumnClass\">\r\n @if(experience.Document){\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 }\r\n </div>\r\n\r\n </div>\r\n\r\n }\r\n\r\n\r\n}@else{\r\n\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" }]
|
|
3687
3768
|
}], ctorParameters: () => [{ type: HRSelfWidgetsService }], propDecorators: { baseUrl: [{
|
|
3688
3769
|
type: Input
|
|
3689
3770
|
}], sectionTitle: [{
|
|
@@ -3702,16 +3783,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImpo
|
|
|
3702
3783
|
type: Input
|
|
3703
3784
|
}], rowClass: [{
|
|
3704
3785
|
type: Input
|
|
3705
|
-
}], itemRowClass: [{
|
|
3706
|
-
type: Input
|
|
3707
|
-
}], itemColumnClass: [{
|
|
3708
|
-
type: Input
|
|
3709
3786
|
}], labelClass: [{
|
|
3710
3787
|
type: Input
|
|
3711
3788
|
}], valueClass: [{
|
|
3712
3789
|
type: Input
|
|
3713
|
-
}], actionsColumnClass: [{
|
|
3714
|
-
type: Input
|
|
3715
3790
|
}], viewIconClass: [{
|
|
3716
3791
|
type: Input
|
|
3717
3792
|
}], downloadIconClass: [{
|
|
@@ -3720,6 +3795,18 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImpo
|
|
|
3720
3795
|
type: Input
|
|
3721
3796
|
}], emptyStateTextClass: [{
|
|
3722
3797
|
type: Input
|
|
3798
|
+
}], itemRowClass: [{
|
|
3799
|
+
type: Input
|
|
3800
|
+
}], itemColumnsWrapperClass: [{
|
|
3801
|
+
type: Input
|
|
3802
|
+
}], itemColumnClass: [{
|
|
3803
|
+
type: Input
|
|
3804
|
+
}], actionsColumnClass: [{
|
|
3805
|
+
type: Input
|
|
3806
|
+
}], rowMarginBottomClass: [{
|
|
3807
|
+
type: Input
|
|
3808
|
+
}], rowMarginBottomEmptyClass: [{
|
|
3809
|
+
type: Input
|
|
3723
3810
|
}], isLoadingChanged: [{
|
|
3724
3811
|
type: Output
|
|
3725
3812
|
}], attachmentViewed: [{
|
|
@@ -3757,7 +3844,7 @@ class ProfileDegreesWidgetComponent {
|
|
|
3757
3844
|
itemRowClass = 'row';
|
|
3758
3845
|
itemColumnsWrapperClass = 'row col-10 mt-3';
|
|
3759
3846
|
itemColumnClass = 'col-3';
|
|
3760
|
-
actionsColumnClass = '
|
|
3847
|
+
actionsColumnClass = 'align-items-end col-2 mt-4 pt-2';
|
|
3761
3848
|
isLoadingChanged = new EventEmitter();
|
|
3762
3849
|
attachmentViewed = new EventEmitter();
|
|
3763
3850
|
attachmentDownloaded = new EventEmitter();
|
|
@@ -3802,11 +3889,11 @@ class ProfileDegreesWidgetComponent {
|
|
|
3802
3889
|
this.attachmentDownloaded.emit(file);
|
|
3803
3890
|
}
|
|
3804
3891
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: ProfileDegreesWidgetComponent, deps: [{ token: HRSelfWidgetsService }], target: i0.ɵɵFactoryTarget.Component });
|
|
3805
|
-
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", valueEllipsisClass: "valueEllipsisClass", 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 @for (qualification of degrees; track qualification){\r\n \r\n <div [class]=\"itemRowClass\">\r\n \r\n <div [class]=\"itemColumnsWrapperClass\">\r\n<div [class]=\"itemColumnClass\">\r\n<hr-info-field labelKey=\"Degree/Year\"\r\n [value]=\"(qualification.DegreeName + ' / ' + qualification.DegreeYear)\"\r\n [labelClass]=\"labelClass\"\r\n [valueClass]=\"valueClass\">\r\n</hr-info-field>\r\n</div>\r\n<div [class]=\"itemColumnClass\">\r\n<hr-info-field labelKey=\"Country\"\r\n [value]=\"qualification.CountryName\"\r\n [labelClass]=\"labelClass\"\r\n [valueClass]=\"valueEllipsisClass\">\r\n</hr-info-field>\r\n</div>\r\n<div [class]=\"itemColumnClass\">\r\n<hr-info-field labelKey=\"Specialty\"\r\n [value]=\"qualification.Specialty\"\r\n [labelClass]=\"labelClass\"\r\n [valueClass]=\"valueEllipsisClass\">\r\n</hr-info-field>\r\n</div>\r\n<div [class]=\"itemColumnClass\">\r\n<hr-info-field labelKey=\"Institute\"\r\n [value]=\"qualification.Institute\"\r\n [labelClass]=\"labelClass\"\r\n [valueClass]=\"valueEllipsisClass\">\r\n</hr-info-field>\r\n</div>\r\n</div>\r\n \r\n <div [class]=\"actionsColumnClass\">\r\n @if(qualification.Document){\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 }\r\n</div>\r\n \r\n </div>\r\n \r\n }\r\n \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>", 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"] }, { kind: "component", type: HRInfoFieldComponent, selector: "hr-info-field", inputs: ["labelKey", "value", "labelClass", "valueClass", "fallbackValue"] }] });
|
|
3892
|
+
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", valueEllipsisClass: "valueEllipsisClass", 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 @for (qualification of degrees; track qualification){\r\n \r\n <div [class]=\"itemRowClass\">\r\n \r\n <div [class]=\"itemColumnsWrapperClass\">\r\n\r\n <div [class]=\"itemColumnClass\">\r\n<hr-info-field labelKey=\"Degree/Year\"\r\n [value]=\"(qualification.DegreeName + ' / ' + qualification.DegreeYear)\"\r\n [labelClass]=\"labelClass\"\r\n [valueClass]=\"valueClass\">\r\n</hr-info-field>\r\n</div>\r\n<div [class]=\"itemColumnClass\">\r\n<hr-info-field labelKey=\"Country\"\r\n [value]=\"qualification.CountryName\"\r\n [labelClass]=\"labelClass\"\r\n [valueClass]=\"valueEllipsisClass\">\r\n</hr-info-field>\r\n</div>\r\n<div [class]=\"itemColumnClass\">\r\n<hr-info-field labelKey=\"Specialty\"\r\n [value]=\"qualification.Specialty\"\r\n [labelClass]=\"labelClass\"\r\n [valueClass]=\"valueEllipsisClass\">\r\n</hr-info-field>\r\n</div>\r\n<div [class]=\"itemColumnClass\">\r\n<hr-info-field labelKey=\"Institute\"\r\n [value]=\"qualification.Institute\"\r\n [labelClass]=\"labelClass\"\r\n [valueClass]=\"valueEllipsisClass\">\r\n</hr-info-field>\r\n</div>\r\n</div>\r\n \r\n <div [class]=\"actionsColumnClass\">\r\n @if(qualification.Document){\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 }\r\n</div>\r\n \r\n </div>\r\n \r\n }\r\n \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>", 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"] }, { kind: "component", type: HRInfoFieldComponent, selector: "hr-info-field", inputs: ["labelKey", "value", "labelClass", "valueClass", "fallbackValue"] }] });
|
|
3806
3893
|
}
|
|
3807
3894
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: ProfileDegreesWidgetComponent, decorators: [{
|
|
3808
3895
|
type: Component,
|
|
3809
|
-
args: [{ selector: 'hr-profile-degrees-widget', standalone: true, imports: [CommonModule, SkySectionDividerComponent, HRTranslatePipe, SkyEmptyDesignCardComponent, FontAwesomeModule, HRInfoFieldComponent], 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 @for (qualification of degrees; track qualification){\r\n \r\n <div [class]=\"itemRowClass\">\r\n \r\n <div [class]=\"itemColumnsWrapperClass\">\r\n<div [class]=\"itemColumnClass\">\r\n<hr-info-field labelKey=\"Degree/Year\"\r\n [value]=\"(qualification.DegreeName + ' / ' + qualification.DegreeYear)\"\r\n [labelClass]=\"labelClass\"\r\n [valueClass]=\"valueClass\">\r\n</hr-info-field>\r\n</div>\r\n<div [class]=\"itemColumnClass\">\r\n<hr-info-field labelKey=\"Country\"\r\n [value]=\"qualification.CountryName\"\r\n [labelClass]=\"labelClass\"\r\n [valueClass]=\"valueEllipsisClass\">\r\n</hr-info-field>\r\n</div>\r\n<div [class]=\"itemColumnClass\">\r\n<hr-info-field labelKey=\"Specialty\"\r\n [value]=\"qualification.Specialty\"\r\n [labelClass]=\"labelClass\"\r\n [valueClass]=\"valueEllipsisClass\">\r\n</hr-info-field>\r\n</div>\r\n<div [class]=\"itemColumnClass\">\r\n<hr-info-field labelKey=\"Institute\"\r\n [value]=\"qualification.Institute\"\r\n [labelClass]=\"labelClass\"\r\n [valueClass]=\"valueEllipsisClass\">\r\n</hr-info-field>\r\n</div>\r\n</div>\r\n \r\n <div [class]=\"actionsColumnClass\">\r\n @if(qualification.Document){\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 }\r\n</div>\r\n \r\n </div>\r\n \r\n }\r\n \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>" }]
|
|
3896
|
+
args: [{ selector: 'hr-profile-degrees-widget', standalone: true, imports: [CommonModule, SkySectionDividerComponent, HRTranslatePipe, SkyEmptyDesignCardComponent, FontAwesomeModule, HRInfoFieldComponent], 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 @for (qualification of degrees; track qualification){\r\n \r\n <div [class]=\"itemRowClass\">\r\n \r\n <div [class]=\"itemColumnsWrapperClass\">\r\n\r\n <div [class]=\"itemColumnClass\">\r\n<hr-info-field labelKey=\"Degree/Year\"\r\n [value]=\"(qualification.DegreeName + ' / ' + qualification.DegreeYear)\"\r\n [labelClass]=\"labelClass\"\r\n [valueClass]=\"valueClass\">\r\n</hr-info-field>\r\n</div>\r\n<div [class]=\"itemColumnClass\">\r\n<hr-info-field labelKey=\"Country\"\r\n [value]=\"qualification.CountryName\"\r\n [labelClass]=\"labelClass\"\r\n [valueClass]=\"valueEllipsisClass\">\r\n</hr-info-field>\r\n</div>\r\n<div [class]=\"itemColumnClass\">\r\n<hr-info-field labelKey=\"Specialty\"\r\n [value]=\"qualification.Specialty\"\r\n [labelClass]=\"labelClass\"\r\n [valueClass]=\"valueEllipsisClass\">\r\n</hr-info-field>\r\n</div>\r\n<div [class]=\"itemColumnClass\">\r\n<hr-info-field labelKey=\"Institute\"\r\n [value]=\"qualification.Institute\"\r\n [labelClass]=\"labelClass\"\r\n [valueClass]=\"valueEllipsisClass\">\r\n</hr-info-field>\r\n</div>\r\n</div>\r\n \r\n <div [class]=\"actionsColumnClass\">\r\n @if(qualification.Document){\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 }\r\n</div>\r\n \r\n </div>\r\n \r\n }\r\n \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>" }]
|
|
3810
3897
|
}], ctorParameters: () => [{ type: HRSelfWidgetsService }], propDecorators: { baseUrl: [{
|
|
3811
3898
|
type: Input
|
|
3812
3899
|
}], sectionTitle: [{
|