| import { Pipe, PipeTransform } from '@angular/core'; |
| import * as moment from 'moment'; |
| |
| @Pipe({ |
| name: 'formattedTimestamp' |
| }) |
| export class FormattedTimestampPipe implements PipeTransform { |
| transform(value: any, format: string = ''): string { |
| // Try and parse the passed value. |
| const momentDate = moment(value); |
| |
| if ( value === '' ) { |
| return ''; |
| } |
| |
| if ( value === 'xxx') { |
| return null; |
| } |
| |
| if ( value === null ) { |
| return ''; |
| } |
| |
| if ( value === undefined ) { |
| return ''; |
| } |
| |
| // If moment didn't understand the value, return it unformatted. |
| if (!momentDate.isValid()) { |
| return value; |
| } |
| // Otherwise, return the date formatted as requested. |
| return momentDate.format(format); |
| } |
| } |