Select Git revision
date.util.ts
date.util.ts 1.67 KiB
import { formatDate } from '@angular/common';
import { isNil } from 'lodash-es';
import * as moment from 'moment';
export function format(date: Date | moment.Moment): string {
const dateFormat: string = 'YYYY-MM-DD';
if (isNil(date)) {
return null;
}
if (date.hasOwnProperty('format')) {
return formatDate(<Date>date, dateFormat, 'de');
} else {
return moment(<moment.Moment>date).format(dateFormat);
}
}
export function formatWithTimeAndDay(date: Date): string {
return formatDate(date, 'EEEE, dd.MM.y, H:mm:ss', 'de');
}
export function formatWithTime(date: Date): string {
return formatDate(date, 'dd.MM.y, H:mm:ss', 'de');
}
export function formatForThisYear(date: Date): string {
return formatDate(date, 'd.MMM', 'de');
}
export function formatDMYDate(date: Date): string {
return formatDate(date, 'dd.MM.yyyy', 'de');
}
export function isToday(date: Date): boolean {
return moment().isSame(date, 'day');
}
export function isPast(date: Date): boolean {
return moment().diff(date) > 0;
}
export function isYesterday(date: Date): boolean {
return moment().subtract(1, 'days').isSame(date, 'day')
}
export function isDayBeforeYesterday(date: Date): boolean {
return moment().subtract(2, 'days').isSame(date, 'day')
}
export function isTomorrow(date: Date): boolean {
return moment().add(1, 'days').isSame(date, 'day')
}
export function isDayAfterTomorrow(date: Date): boolean {
return moment().add(2, 'days').isSame(date, 'day')
}
export function isThisYear(date: Date): boolean {
return moment().isSame(date, 'year')
}
export function createFutureDate(todayPlusDays: number): Date {
const date = new Date();
date.setDate(date.getDate() + todayPlusDays);
return date;
}