2 * ============LICENSE_START=======================================================
4 * ================================================================================
5 * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
6 * ================================================================================
7 * Licensed under the Apache License, Version 2.0 (the "License");
8 * you may not use this file except in compliance with the License.
9 * You may obtain a copy of the License at
11 * http://www.apache.org/licenses/LICENSE-2.0
13 * Unless required by applicable law or agreed to in writing, software
14 * distributed under the License is distributed on an "AS IS" BASIS,
15 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16 * See the License for the specific language governing permissions and
17 * limitations under the License.
18 * ============LICENSE_END=========================================================
21 import {Component, ViewChild, ElementRef} from '@angular/core';
22 import {ButtonsModelMap, ButtonModel} from "app/models";
23 import {PopoverContentComponent} from "../../popover/popover-content.component";
24 import {UiElementBase, UiElementBaseInterface} from "../ui-element-base.component";
27 selector: 'ui-element-popover-input',
28 templateUrl: './ui-element-popover-input.component.html',
29 styleUrls: ['./ui-element-popover-input.component.less']
31 export class UiElementPopoverInputComponent extends UiElementBase implements UiElementBaseInterface {
32 @ViewChild('textArea') textArea: ElementRef;
33 @ViewChild('popoverForm') popoverContentComponent: PopoverContentComponent;
36 saveButton: ButtonModel;
37 buttonsArray: ButtonsModelMap;
41 // Create Save button and insert to buttons map
42 this.saveButton = new ButtonModel('Set', 'blue', this.onChange.bind(this));
43 this.buttonsArray = { 'test': this.saveButton };
45 // Define the regex pattern for this controller
46 this.pattern = this.validation.validationPatterns.comment;
48 // Disable / Enable button according to validation
49 //this.control.valueChanges.subscribe(data => this.saveButton.disabled = this.control.invalid);
52 public setEditValue() {
54 this.editValue = angular.copy(this.value);
58 this.popoverContentComponent.hide();
59 this.value = this.editValue;