import { DatePipe } from '@angular/common'; import { Pipe, PipeTransform } from '@angular/core'; @Pipe({ name: 'dateWaitTime', standalone: true, }) export class DateWaitTimePipe implements PipeTransform { constructor(private datePipe: DatePipe) {} transform( dateFrom: string, dateTo: string | null, timeFrom: string, timeTo: string | null ): string | null { let dateText = ''; let timeText = ''; const dateFromFormatted = this.datePipe.transform( dateFrom, 'dd/MM/yyyy' ); const dateToFormatted = this.datePipe.transform(dateTo, 'dd/MM/yyyy'); const isSameDate = dateFromFormatted === dateToFormatted; if (isSameDate || !dateToFormatted) dateText = dateFromFormatted!; else dateText = [dateFromFormatted, dateToFormatted].join(' - '); if (timeTo) timeText = [timeFrom, timeTo].join(' - '); else timeText = timeFrom; return [dateText, timeText].join(' | '); } }