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 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 | 152x 71x 71x 71x 71x 71x 71x 71x 71x 32x 32x 71x 4x 4x 71x 110x 110x 110x | import { Pipe, PipeTransform } from '@angular/core';
@Pipe({
name: 'duration',
standalone: true
})
export class DurationPipe implements PipeTransform {
transform(seconds: number): string {
let duration = "";
const days = Math.floor(seconds / (3600 * 24));
const hours = Math.floor((seconds % (3600 * 24)) / 3600);
const minutes = Math.floor((seconds % 3600) / 60);
const remainingSeconds = Math.round(seconds % 60);
Iif (days > 0){
duration += `${days} day`;
if (days > 1){
duration += 's';
}
}
Iif (hours > 0){
duration += ` ${hours} hour`;
if (hours > 1){
duration += 's';
}
}
if (minutes > 0){
duration += ` ${minutes} minute`;
Iif (minutes > 1){
duration += 's';
}
}
if (remainingSeconds > 0){
duration += ` ${remainingSeconds} second`;
Iif (remainingSeconds > 1){
duration += 's';
}
}
return duration;
}
}
@Pipe({
name: 'duration-short',
standalone: true
})
export class ShortDurationPipe implements PipeTransform {
transform(seconds: number): string {
let duration = "";
seconds = Math.round(seconds);
const days = Math.floor(seconds / (3600 * 24));
const hours = Math.floor((seconds % (3600 * 24)) / 3600);
const minutes = Math.floor((seconds % 3600) / 60);
const remainingSeconds = seconds % 60;
if (days > 0){
duration += `${days}d`;
}
if (hours > 0){
duration += `${hours}hr`;
}
if (minutes > 0){
duration += `${minutes}mn`;
}
if (remainingSeconds > 0){
duration += `${remainingSeconds}s`;
}
if (duration === "" && remainingSeconds === 0) {
duration += "<1s";
}
return duration;
}
}
|