/** Angular2 */ import * as ng from "@angular/core"; /** Core */ import { CoreComponent } from "cmf.core/src/core"; import { DateTimeType } from "cmf.core/src/domain/extensions/formatter"; import { OnValidate, OnValidateArgs } from "../../directives/validator/validator"; import "node_modules/cmf.core.controls/assets/datetimepicker.min.js"; /** * @whatItDoes * DateTimePicker basic component is used to pick date or time (or both). It accepts different date-time formats. * The displayed value depends on the format property. * * @howToUse * This component is used with the inputs and outputs mentioned below. * * ### Inputs * `DateTimeType | string` : **picker-type** - The picker-type of this component (DateTime|Date|Time) ; * `string` : **date-time-format** - The date-time format of the date time picker (Ex: dd/MM/yyyy hh:mm:ss) ; * `any` : **value** - Current Value (moment) of the date-time picker (Date | Moment | string) ; * `boolean` : **required** - Defines if the control is mandatory or not . * `boolean` : **supportTokens** - Defines if the DateTimePicker accepts tokens as a valid value. Defaults to false. * `boolean` : **splitDateTime** - Indicates if the date picker should be separated from the time picker. Defaults to true; * * ### Outputs * `any` : **valueChange** - The value change event, so the picker can inform the upper components that the value has changed ; * `any` : **afterDateTimePickerInit** - The date time picker component after init event . * * ### Example * To use the component, assume this HTML Template as an example: * * ```HTML * * * ``` * */ export declare class DateTimePicker extends CoreComponent implements ng.AfterContentInit, ng.OnDestroy, OnValidate, ng.OnChanges { private _elementRef; /** * The Date Time Picker icon class */ private static DATE_CLASS; /** * The minimum date allowed in the date picker, because of the SqlDateTime.MinValue convention */ private static readonly MIN_SUPPORTED_DATE; /** * The Date Time Picker icon class */ private static TIME_CLASS; /** * Component error class */ private static ERROR_CLASS; /** * DateTimePicker Internal Value that is emited on the ValueChange event */ private _value; /** * Current Value (moment) of the date-time picker */ value: any; /** * Defines if the control is mandatory or not. */ private _isRequired; /** * The current object of the date-time picker */ private _dateTimePicker; /** * The current data of the date-time picker */ private _dateTimePickerData; private _inputRef; /** * The value change event, so the picker can inform the upper components that the value has changed */ valueChange: ng.EventEmitter; /** * The date time picker component after init event */ afterDateTimePickerInit: ng.EventEmitter; /** * Indicates if the date picker should be separeted from the time picker. */ splitDateTime: boolean; /** * If we are in mobile mode */ isMobile: boolean; /** * The current value of the date-time picker * Should not show seconds */ _dateTimePickerValue: string; /** * The current value of the date-time picker (mobile) */ dateTimePickerValueMobile: string; /** * The Date Time Format */ _dateTimeFormat: string; /** * The picker type of the date-time picker */ _pickerType: DateTimeType; /** * Input type */ inputType: string; /** * Browser format DateTime */ browserFormatDateTime: string; /** * If set to true, the date time picker will allow the use of special tokens such as @Today, @Now, etc. * Defaults to false. */ supportTokens: boolean; /** * Format value into a string following the standard GUI format for dates * @param value - value to format, of type moment * @param pickerType - used to format the value, can be of DateTime, Date, Time */ static format(value: any, pickerType: DateTimeType, currentCulture: string): string; /** * Gets the IsRequired Property. */ /** * Sets the IsRequiredProperty */ isRequired: boolean; /** * The date-time format of the date time picker */ /** * Gets the date time format to be used by the dateTime picker. */ dateTimeFormat: string; /** * Property pickerType getter */ /** * Property pickerType setter */ pickerType: DateTimeType | string; constructor(_elementRef: ng.ElementRef); /** * Creates the token container html template */ private createTokenContainer; /** * Creates the new calendar with selectors * @param widgetHTML the widget html to be featured in the widget container */ private createCalendarWithSelectorsContainer; /** * Set DateTimePicker component */ private setupDateTimePicker; /** * Destroy DateTimePicker value */ private destroyDateTimePicker; /** * Using component current value Set DateTimePicker value */ private setDateTimePickerFromValue; /** * Using date time picker current value (string) set value internal value * @param value - Can be of type string or moment */ private setValueFromDateTimePicker; /** * Check if a given data time string value is valid * @param value [string] - date time picker current value */ private isDateTimeValueValid; /** * Component internal validation */ private internalValidation; /** * Validation function triggered by a wizard. */ onValidate(context: OnValidateArgs): Promise; /** * Resets the styling option of the validation process * * @see OnValidate interface */ reset(): Promise; /** * Determines whether input blur on * Triggered when the validation (onblur) is triggered. * @param event * @param value */ onInputBlur(event: Event, value: any): void; /** * On mobile input change * @param event datePicker event * @param value datePicker value */ onMobileInputChange(event: Event): void; /** * After component content is initiated */ ngAfterContentInit(): void; /** * On component destruction - destroy datetimepicker. */ ngOnDestroy(): void; /** * When component changes - update * * @param {any} [changes] Complex object that contains a set of properties that have changed */ ngOnChanges(changes: any): void; } export declare class DateTimePickerModule { }