7300417686311776122e8606b39efa58acee4e4f
[sdc.git] /
1 import {Component, ViewChild, ElementRef} from '@angular/core';
2 import {UiElementBase, UiElementBaseInterface} from "../ui-element-base.component";
3 import {ButtonsModelMap, ButtonModel} from "app/models";
4 import { PopoverContentComponent } from "app/ng2/components/popover/popover-content.component"
5 import { PopoverComponent } from "app/ng2/components/popover/popover.component"
6
7 @Component({
8     selector: 'ui-element-popover-input',
9     templateUrl: './ui-element-popover-input.component.html',
10     styleUrls: ['./ui-element-popover-input.component.less']
11 })
12 export class UiElementPopoverInputComponent extends UiElementBase implements UiElementBaseInterface {
13
14     @ViewChild('textArea') textArea: ElementRef;
15     @ViewChild('popoverForm') popoverContentComponent: PopoverContentComponent;
16
17     saveButton: ButtonModel;
18     buttonsArray: ButtonsModelMap;
19
20     onSave = ():void => {
21         if (!this.control.invalid){
22             this.baseEmitter.emit(this.value);
23             this.popoverContentComponent.hide();
24         }
25     }
26
27     constructor() {
28         super();
29         // Create Save button and insert to buttons map
30         this.saveButton = new ButtonModel('save', 'blue', this.onSave);
31         this.buttonsArray = { 'test': this.saveButton };
32
33         // Define the regex pattern for this controller
34         this.pattern = this.validation.validationPatterns.comment;
35
36         // Disable / Enable button according to validation
37         //this.control.valueChanges.subscribe(data => this.saveButton.disabled = this.control.invalid);
38     }
39 }