@vismaux/ngx-nordic-cool
Version:
Common Nordic-Cool components for Angular.
50 lines (49 loc) • 2.16 kB
TypeScript
import { NcDateStruct } from './datepicker.model';
import * as i0 from "@angular/core";
export declare function NC_DATEPICKER_PARSER_FORMATTER_FACTORY(localeId: string): NcDateParserFormatterDefault;
/**
* Converts between the internal `NcDateStruct` model presentation and a `string` that is displayed in the
* input element.
*
* When user types something in the input this service attempts to parse it into a `NcDateStruct` object.
* And vice versa, when users selects a date in the calendar with the mouse, it must be displayed as a `string`
* in the input.
*
* Default implementation uses the ISO 8601 format, but you can provide another implementation via DI
* to use an alternative string format or a custom parsing logic.
*/
export declare abstract class NcDateParserFormatter {
/**
* Parses the given `string` to an `NcDateStruct`.
*
* Implementations should try their best to provide a result, even
* partial. They must return `null` if the value can't be parsed.
*/
abstract parse(value: string): NcDateStruct | null;
/**
* Formats the given `NcDateStruct` to a `string`.
*
* Implementations should return an empty string if the given date is `null`,
* and try their best to provide a partial result if the given date is incomplete or invalid.
*/
abstract format(date: NcDateStruct | null): string;
static ɵfac: i0.ɵɵFactoryDeclaration<NcDateParserFormatter, never>;
static ɵprov: i0.ɵɵInjectableDeclaration<NcDateParserFormatter>;
}
export declare const DATE_INPUT_FORMATS: {
[key: string]: string[];
};
export declare const DATE_OUTPUT_FORMATS: {
[key: string]: string;
};
export declare class NcDateParserFormatterDefault extends NcDateParserFormatter {
private locale;
constructor(locale: string);
parse(value: string): NcDateStruct;
format(date: NcDateStruct): string;
private dateFormatToRegexp;
private addYearPadding;
private printUnkownLocaleWarning;
static ɵfac: i0.ɵɵFactoryDeclaration<NcDateParserFormatterDefault, never>;
static ɵprov: i0.ɵɵInjectableDeclaration<NcDateParserFormatterDefault>;
}