{"version":3,"file":"primeng-inputtextarea.umd.js","sources":["../../src/app/components/inputtextarea/inputtextarea.ts","../../src/app/components/inputtextarea/primeng-inputtextarea.ts"],"sourcesContent":["import {NgModule,Directive,ElementRef,HostListener,Input,Output, EventEmitter,Optional, AfterViewInit, OnInit, OnDestroy, ChangeDetectorRef} from '@angular/core';\nimport {NgModel, NgControl} from '@angular/forms';\nimport {CommonModule} from '@angular/common';\nimport { Subscription } from 'rxjs';\n\n@Directive({\n    selector: '[pInputTextarea]',\n    host: {\n        '[class.p-inputtextarea]': 'true',\n        '[class.p-inputtext]': 'true',\n        '[class.p-component]': 'true',\n        '[class.p-filled]': 'filled',\n        '[class.p-inputtextarea-resizable]': 'autoResize'\n    }\n})\nexport class InputTextarea implements OnInit, AfterViewInit, OnDestroy  {\n    \n    @Input() autoResize: boolean;\n    \n    @Output() onResize: EventEmitter<any> = new EventEmitter();\n        \n    filled: boolean;\n\n    cachedScrollHeight:number;\n\n    ngModelSubscription: Subscription;\n\n    ngControlSubscription: Subscription;\n\n    constructor(public el: ElementRef, @Optional() public ngModel: NgModel, @Optional() public control : NgControl, private cd: ChangeDetectorRef) {}\n        \n    ngOnInit() {\n        if (this.ngModel) {\n            this.ngModelSubscription = this.ngModel.valueChanges.subscribe(() =>{\n                this.updateState();\n            })\n        }\n\n        if (this.control) {\n            this.ngControlSubscription = this.control.valueChanges.subscribe(() => {\n                this.updateState();\n            });\n        }\n    }\n\n    ngAfterViewInit() {\n        if (this.autoResize)\n            this.resize();\n\n        this.updateFilledState();\n        this.cd.detectChanges();\n    }\n\n    @HostListener('input', ['$event'])\n    onInput(e) {\n        this.updateState();\n    }\n    \n    updateFilledState() {\n        this.filled = this.el.nativeElement.value && this.el.nativeElement.value.length;\n    }\n    \n    @HostListener('focus', ['$event'])\n    onFocus(e) {\n        if (this.autoResize) {\n            this.resize(e);\n        }\n    }\n    \n    @HostListener('blur', ['$event'])\n    onBlur(e) {\n        if (this.autoResize) {\n            this.resize(e);\n        }\n    }\n    \n    resize(event?: Event) {\n        this.el.nativeElement.style.height = 'auto';\n        this.el.nativeElement.style.height = this.el.nativeElement.scrollHeight + 'px';\n\n        if (parseFloat(this.el.nativeElement.style.height) >= parseFloat(this.el.nativeElement.style.maxHeight)) {\n            this.el.nativeElement.style.overflowY = \"scroll\";\n            this.el.nativeElement.style.height = this.el.nativeElement.style.maxHeight;\n        }\n        else {\n            this.el.nativeElement.style.overflow = \"hidden\";\n        }\n\n        this.onResize.emit(event||{});\n    }\n\n    updateState() {\n        this.updateFilledState();\n            \n        if (this.autoResize) {\n            this.resize();\n        }\n    }\n\n    ngOnDestroy() {\n        if (this.ngModelSubscription) {\n            this.ngModelSubscription.unsubscribe();\n        }\n\n        if (this.ngControlSubscription) {\n            this.ngControlSubscription.unsubscribe();\n        }\n    }\n}\n\n@NgModule({\n    imports: [CommonModule],\n    exports: [InputTextarea],\n    declarations: [InputTextarea]\n})\nexport class InputTextareaModule { }\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":["EventEmitter","Directive","Optional","Input","Output","HostListener","CommonModule","NgModule"],"mappings":"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"}