pm-controls
Version:
ProModel Controls
57 lines (49 loc) • 1.49 kB
text/typescript
import { Component,
Input,
Output,
ElementRef,
EventEmitter,
HostBinding,
SimpleChanges,
ViewChild } from '@angular/core';
({
selector: 'pm-textarea',
//templateUrl: './app/controls/components/textarea/textarea.html',
templateUrl: './textarea.html'
})
export class TextareaComponent {
() Text: string;
() Watermark: string;
() TextareaClass: string = "textarea-input";
('style.width')
() Width: string;
('style.max-width')
() MaxWidth: string;
() IsDisabled: boolean;
() TextChange: EventEmitter<string> = new EventEmitter<string>();
() BlurChange: EventEmitter<any> = new EventEmitter<any>();
() FocusChange: EventEmitter<any> = new EventEmitter<any>();
() KeyUp: EventEmitter<any> = new EventEmitter<any>();
() KeyDown: EventEmitter<any> = new EventEmitter<any>();
('textarea') textarea: ElementRef;
constructor() { }
onChange(newValue) {
this.Text = newValue;
this.TextChange.emit(this.Text);
}
onBlur(value) {
this.BlurChange.emit(value);
}
onFocus(value) {
this.FocusChange.emit(value);
}
onKeyUp(event: any) {
this.KeyUp.emit(event);
}
onKeyDown(event: any) {
this.KeyDown.emit(event);
}
public Focus() {
this.textarea.nativeElement.focus();
}
}