Press n or j to go to the next uncovered block, b, p or k for the previous block.
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 | 4x 4x 4x 4x 4x 4x 4x 4x 4x 4x 16x 16x 16x 16x 27x 1x 21x 1x 1x 1x 1x 1x | import { Component, EventEmitter, Input, Output } from '@angular/core';
import { MatIcon } from '@angular/material/icon';
import { MatMenuModule } from '@angular/material/menu';
import { Job, JobStatus } from '@core/model/job.interface';
import { JobService } from '@core/services/job.service';
import { NotificationService } from '@core/services/notification.service';
import { StatusLabelPipe } from '@core/pipe/status-label.pipe';
import { DatePipe } from '@angular/common';
import { MatTooltip } from '@angular/material/tooltip';
@Component({
selector: 'app-job-status',
imports: [MatMenuModule, MatIcon, StatusLabelPipe, DatePipe, MatTooltip],
templateUrl: './job-status.component.html',
styleUrl: './job-status.component.scss'
})
export class JobStatusComponent {
@Input({ required: true }) job!: Job;
@Output() statusChanged = new EventEmitter<Job>();
statusKeys: string[] = [];
constructor(private jobService: JobService, private notificationService: NotificationService) {
this.statusKeys = Object.keys(JobStatus);
}
get icon(): string {
switch (this.job.status) {
case JobStatus.CREATED:
return 'library_add_check';
case JobStatus.PENDING:
return 'hourglass_top';
case JobStatus.RELAUNCHED:
return 'refresh';
case JobStatus.APPLICANT_REFUSED:
return 'block';
case JobStatus.COMPANY_REFUSED:
return 'cancel';
case JobStatus.ACCEPTED:
return 'check_circle';
default:
return 'help';
}
}
} |