[SDC] rebase 1710 code
[sdc.git] / catalog-ui / src / app / ng2 / components / inputs-table / inputs-table.component.ts
1 /*-
2  * ============LICENSE_START=======================================================
3  * SDC
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
10  * 
11  *      http://www.apache.org/licenses/LICENSE-2.0
12  * 
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=========================================================
19  */
20
21 /**
22  * Created by rc2122 on 5/4/2017.
23  */
24 import {Component, Input, Output, EventEmitter, ViewChild} from "@angular/core";
25 import {InputFEModel} from "app/models";
26 import { ModalService } from 'app/ng2/services/modal.service';
27
28
29
30 @Component({
31     selector: 'inputs-table',
32     templateUrl: './inputs-table.component.html',
33     styleUrls: ['../inputs-table/inputs-table.component.less']
34 })
35 export class InputsTableComponent {
36
37     @Input() inputs: Array<InputFEModel>;
38     @Input() instanceNamesMap: Map<string, string>;
39     @Input() readonly:boolean;
40     @Input() isLoading:boolean;
41     @Output() inputValueChanged: EventEmitter<any> = new EventEmitter<any>();
42     @Output() deleteInput: EventEmitter<any> = new EventEmitter<any>();
43
44     selectedInputToDelete:InputFEModel;
45
46     constructor(private modalService: ModalService){
47     }
48
49     onInputValueChanged = (input) => {
50         this.inputValueChanged.emit(input);
51     };
52
53     onDeleteInput = () => {
54         this.deleteInput.emit(this.selectedInputToDelete);
55         this.modalService.closeCurrentModal();
56     };
57
58     openDeleteModal = (input:InputFEModel) => {
59         this.selectedInputToDelete = input;
60         this.modalService.openActionModal("Delete Input", "Are you sure you want to delete this input?", "Delete", this.onDeleteInput, "Close");
61     }
62 }
63
64