import { Component , ElementRef , ViewContainerRef , ValueProvider , Renderer2 , Injector , ChangeDetectionStrategy , forwardRef } from '@angular/core' ; import { NG_VALUE_ACCESSOR } from '@angular/forms' ; import { ComponentBase , IComponentBase , applyMixins , ComponentMixins , PropertyCollectionInfo , FormBase , setValue } from '@syncfusion/ej2-angular-base' ; import { TimePicker } from '@syncfusion/ej2-calendars' ; export const inputs = [ 'allowEdit' , 'cssClass' , 'enableMask' , 'enablePersistence' , 'enableRtl' , 'enabled' , 'floatLabelType' , 'format' , 'htmlAttributes' , 'keyConfigs' , 'locale' , 'maskPlaceholder' , 'max' , 'min' , 'openOnFocus' , 'placeholder' , 'readonly' , 'scrollTo' , 'showClearButton' , 'step' , 'strictMode' , 'value' , 'width' , 'zIndex' ] ; export const outputs = [ 'blur' , 'change' , 'cleared' , 'close' , 'created' , 'destroyed' , 'focus' , 'itemRender' , 'open' , 'valueChange' ] ; export const twoWays = [ 'value' ] ; /**
 * Represents the Essential JS 2 Angular TimePicker Component.
 * ```html
 * <ejs-timepicker [value]='dateTime'></ejs-timepicker>
 * ```
 */ @ Component ( { selector : 'ejs-timepicker' , inputs : inputs , outputs : outputs , template : '' , changeDetection : ChangeDetectionStrategy . OnPush , providers : [ { provide : NG_VALUE_ACCESSOR , useExisting : forwardRef ( ( ) => TimePickerComponent ) , multi : true } ] , queries : { } } ) @ ComponentMixins ( [ ComponentBase , FormBase ] ) export class TimePickerComponent extends TimePicker implements IComponentBase { public formCompContext : any ; public formContext : any ; public tagObjects : any ; blur : any ; change : any ; cleared : any ; close : any ; created : any ; destroyed : any ; focus : any ; itemRender : any ; open : any ; public valueChange : any ; private skipFromEvent : boolean = true ; constructor ( private ngEle , private srenderer , private viewContainerRef , private injector ) { super ( ) ; this . element = this . ngEle . nativeElement ; this . injectedModules = this . injectedModules || [ ] ; try { let mod = this . injector . get ( 'CalendarsMaskedDateTime' ) ; if ( this . injectedModules . indexOf ( mod ) === - 1 ) { this . injectedModules . push ( mod ) ; } } catch { } this . registerEvents ( outputs ) ; this . addTwoWay . call ( this , twoWays ) ; setValue ( 'currentInstance' , this , this . viewContainerRef ) ; this . formContext = new FormBase ( ) ; this . formCompContext = new ComponentBase ( ) ; } public registerOnChange ( registerFunction ) { } public registerOnTouched ( registerFunction ) { } public writeValue ( value ) { } public setDisabledState ( disabled ) { } public ngOnInit ( ) { this . formCompContext . ngOnInit ( this ) ; } public ngAfterViewInit ( ) { this . formContext . ngAfterViewInit ( this ) ; } public ngOnDestroy ( ) { this . formCompContext . ngOnDestroy ( this ) ; } public ngAfterContentChecked ( ) { this . formCompContext . ngAfterContentChecked ( this ) ; } public registerEvents : ( eventList : string [ ] ) => void ; public addTwoWay : ( propList : string [ ] ) => void ; }