@porscheinformatik/clr-addons
Version:
Addon components for Clarity Angular
70 lines (69 loc) • 2.75 kB
TypeScript
import { InputDateDisplayFormat } from '../daterange.constants';
import { NullableDaterange } from '../interfaces/daterange.interface';
import { NullableTimerange } from '../interfaces/timerange.interface';
import * as i0 from "@angular/core";
/**
* Daterange parsing service.
* Heavy inspired by `date-io.service.ts` from Clarity.
* https://github.com/vmware-clarity/ng-clarity/blob/a21fe726fe91ae3c929b8f016359afe354bb89c6/projects/angular/src/forms/datepicker/providers/date-io.service.ts
*/
export declare class DaterangeParsingService {
private readonly locale;
readonly localeDisplayFormat: InputDateDisplayFormat;
readonly localeDelimiter: Array<string>;
/** Locale format. */
get localeFormat(): string;
constructor(locale: string);
/**
* Convert daterange to locale friendly text.
* @param daterange - Daterange.
* @param separator - Separator between 'from' and 'to' dates.
* @returns Friendly daterange text.
*/
toLocaleString(daterange: NullableDaterange, separator?: string): string;
toLocaleStringWithTime(daterange: NullableDaterange | NullableTimerange, separator?: string): string;
private toTimeString;
/**
* Convert date to locale display format string.
* @param date - Javascript Date object.
* @returns Locale display format string.
*/
private toLocaleDisplayFormatString;
/**
* String padding with zeros.
* @param num - Number to pad.
* @returns Padded string.
*/
private pad;
/**
* Parse daterange string to daterange object.
* @param daterangeString - Daterange string.
* @param separator - Separator text.
* @returns Daterange object.
*/
parse(daterangeString: string, separator?: string): NullableDaterange;
/**
* Get `DayModel` from date string.
* @param dateString - Date string.
* @returns DayModel.
*/
private getDayModelFromDateString;
/**
* Get `DayModel` from date string parts.
* @param yearString - Year string.
* @param monthString - Month string.
* @param dateString - Date string.
* @returns DayModel.
*/
private getDayModelFromDateParts;
/**
* Takes in a year and if it is a 2 digit year, returns the corresponding 4 digit year.
* Window of 80 years before and 20 years after the present year.
* Credit: https://github.com/globalizejs/globalize/blob/e1b31cd6a4f1cff75b185b68b7a32220aac5196f/src/date/parse.js
* @param year - Year.
* @returns Four-digit year.
*/
private parseToFourDigitYear;
static ɵfac: i0.ɵɵFactoryDeclaration<DaterangeParsingService, never>;
static ɵprov: i0.ɵɵInjectableDeclaration<DaterangeParsingService>;
}