Skip to content
Snippets Groups Projects
date.util.ts 1.28 KiB
Newer Older
  • Learn to ignore specific revisions
  • OZGCloud's avatar
    OZGCloud committed
    import { formatDate } from '@angular/common';
    
    import { isSameYear, isValid, parseISO } from 'date-fns';
    
    export function formatForDatabase(date: Date): string {
    
    	const dateFormat: string = 'yyyy-MM-dd';
    	return formatDate(date, dateFormat, 'de');
    
    OZGCloud's avatar
    OZGCloud committed
    
    export function formatFullDateWithTimeWithoutSeconds(date: Date): string {
    	return formatDate(date, 'dd.MM.yy HH:mm', 'de');
    
    OZGCloud's avatar
    OZGCloud committed
    export function formatFullDateWithTimeAndDay(date: Date): string {
    	return formatDate(date, 'EEEE, dd.MM.yyyy, HH:mm:ss', 'de');
    
    OZGCloud's avatar
    OZGCloud committed
    export function formatFullDate(date: Date): string {
    
    OZGCloud's avatar
    OZGCloud committed
    	return formatDate(date, 'dd.MM.yyyy', 'de');
    }
    
    
    OZGCloud's avatar
    OZGCloud committed
    export function formatWithoutYear(date: Date): string {
    
    	return formatDate(date, 'dd. MMM', 'de');
    
    export function formatFullDateWithoutSeperator(date: Date): string {
    	return formatDate(date, 'yyyyMMdd', 'de');
    }
    
    
    OZGCloud's avatar
    OZGCloud committed
    export function formatToPrettyDate(date: Date): string {
    
    	date = isValid(date) ? date : parseISO(date as unknown as string);
    
    	if (isSameYear(new Date(), date)) {
    
    OZGCloud's avatar
    OZGCloud committed
    		return formatWithoutYear(date)
    	}
    
    OZGCloud's avatar
    OZGCloud committed
    	return formatFullDate(date);
    }
    
    export function createFutureDate(todayPlusDays: number): Date {
    	const date = new Date();
    	date.setDate(date.getDate() + todayPlusDays);
    
    	return date;
    
    OZGCloud's avatar
    OZGCloud committed
    }
    
    export function isParsableToDate(date: string): boolean {
    	return !isNaN(Date.parse(date));