91386fd6609f1251677b532a6ece3c923d46d433
[ccsdk/cds.git] /
1 <div class="scrollWrapper">
2     <div class="row m-0">
3         <div class="col">
4             <div class="form-group">
5                 <label for="exampleInputEmail1">Function Instance Name</label>
6                 <input type="text" class="form-control" placeholder="Function Instance Name">
7             </div>
8             <div class="form-group mb-0">
9                 <label>Function Type</label>
10                 <label class="attribute-value">component-resource-resolution</label>
11             </div>
12             <div class="form-group">
13                 <label for="exampleFormControlTextarea1">Description</label>
14                 <textarea class="form-control" id="exampleFormControlTextarea1" rows="3"></textarea>
15             </div>
16         </div>
17     </div>
18
19     <div class="accordion function-accordion" id="accordionExample">
20         <!--INTERFACES-->
21         <div class="card">
22             <div class="card-header" id="headingOne">
23                 <h2 class="mb-0">
24                     <button class="btn btn-link" type="button" data-toggle="collapse" data-target="#collapseOne"
25                         aria-expanded="true" aria-controls="collapseOne">
26                         Interfaces
27                     </button>
28                 </h2>
29             </div>
30
31             <div id="collapseOne" class="collapse show" aria-labelledby="headingOne" data-parent="#accordionExample">
32                 <div class="card-body">
33                     <!--Inputs & Outputs Tabs-->
34                     <ul class="nav nav-pills nav-fill mb-3" id="pills-tab" role="tablist">
35                         <li class="nav-item" role="presentation">
36                             <a class="nav-link active" id="pills-home-tab" data-toggle="pill" href="#pills-home"
37                                 role="tab" aria-controls="pills-home" aria-selected="true">Inputs</a>
38                         </li>
39                         <li class="nav-item" role="presentation">
40                             <a class="nav-link" id="pills-profile-tab" data-toggle="pill" href="#pills-profile"
41                                 role="tab" aria-controls="pills-profile" aria-selected="false">Outputs</a>
42                         </li>
43                     </ul>
44                     <div class="tab-content" id="pills-tabContent">
45                         <!--Inputs-->
46                         <div class="tab-pane fade show active" id="pills-home" role="tabpanel"
47                             aria-labelledby="pills-home-tab">
48                             <div class="row">
49                                 <div class="col">
50                                     <!--list-->
51                                     <div class="attribute-wrap">
52                                         <div class="form-group">
53                                             <label for="exampleFormControlTextarea1">artifact-prefix-names
54                                                 <i class="icon-required-star" type="button"
55                                                     aria-hidden="true"></i></label>
56                                         </div>
57                                         <div class="custom-control custom-radio custom-control-inline">
58                                             <input type="radio" id="customRadioInline1" name="customRadioInline1"
59                                                 class="custom-control-input">
60                                             <label class="custom-control-label" for="customRadioInline1">Pre-defined
61                                                 Template</label>
62                                         </div>
63                                         <div class="custom-control custom-radio custom-control-inline">
64                                             <input type="radio" id="customRadioInline2" name="customRadioInline1"
65                                                 class="custom-control-input">
66                                             <label class="custom-control-label" for="customRadioInline2">Input Drivin
67                                                 Template</label>
68                                         </div>
69                                         <br />
70                                         <button type="button" data-toggle="modal" data-target="#templateModal"
71                                             class="btn btn-select-template m-auto"><i class="icon-add-circle"
72                                                 type="button" aria-hidden="true"></i> Select Template</button>
73                                     </div>
74                                     <!--string-->
75                                     <div class="attribute-wrap" *ngFor="let requiredInput of requiredInputs">
76                                         <div class="form-group">
77                                             <label for="exampleInputEmail1">{{ getObjectKey(requiredInput)[0] }}<i
78                                                     class="icon-required-star" type="button"
79                                                     aria-hidden="true"></i></label>
80                                             <input type="text" class="form-control">
81                                         </div>
82                                     </div>
83                                     <!--integer-->
84                                     <!-- <div class="attribute-wrap">
85                                         <div class="form-group">
86                                             <label for="exampleInputEmail1">request-id <i class="icon-required-star"
87                                                     type="button" aria-hidden="true"></i></label>
88                                             <input type="number" class="form-control" placeholder="" value="356">
89                                         </div>
90                                     </div> -->
91                                     <!--boolean-->
92                                     <!-- <div class="attribute-wrap">
93                                         <div class="form-group">
94                                             <label for="exampleFormControlTextarea1">resolution-summary
95                                                 <i class="icon-required-star optional-attribute" type="button"
96                                                     aria-hidden="true"></i></label>
97                                         </div>
98                                         <div class="custom-control custom-radio custom-control-inline">
99                                             <input type="radio" id="customRadioInline1" name="customRadioInline1"
100                                                 class="custom-control-input">
101                                             <label class="custom-control-label" for="customRadioInline1">True</label>
102                                         </div>
103                                         <div class="custom-control custom-radio custom-control-inline">
104                                             <input type="radio" id="customRadioInline2" name="customRadioInline1"
105                                                 class="custom-control-input">
106                                             <label class="custom-control-label" for="customRadioInline2">False</label>
107                                         </div>
108                                     </div> -->
109                                 </div>
110                             </div>
111                             <!-- Add Optional Attributes button -->
112                             <div class="row">
113                                 <div class="col p-0">
114                                     <div class="optional-attributes-menu">
115                                         <div class="dropdown">
116                                             <input class="dropdown-toggle" type="text">
117                                             <div class="dropdown-text">
118                                                 <i class="icon-add-circle" type="button" aria-hidden="true"></i> Add
119                                                 Optional Attributes
120                                             </div>
121                                             <ul class="dropdown-content save-blueprint">
122                                                 <li>
123                                                     <a>resolution-key</a>
124                                                     <i class="icon-add-circle float-right" type="button"
125                                                         aria-hidden="true"></i>
126                                                 </li>
127                                                 <li>
128                                                     <a>occurrence</a>
129                                                     <i class="icon-add-circle float-right" type="button"
130                                                         aria-hidden="true"></i>
131                                                 </li>
132                                                 <li>
133                                                     <a>store-result</a>
134                                                     <i class="icon-add-circle float-right" type="button"
135                                                         aria-hidden="true"></i>
136                                                 </li>
137                                             </ul>
138                                         </div>
139                                     </div>
140                                 </div>
141                             </div>
142                         </div>
143                         <!--Outputs-->
144                         <!-- Optional params -->
145                         <div class="tab-pane fade" id="pills-profile" role="tabpanel"
146                             aria-labelledby="pills-profile-tab">
147                             <div class="attribute-wrap" *ngFor="let requiredOutput of requiredOutputs">
148                                 <div class="form-group">
149                                     <label for="exampleInputEmail1">{{ getObjectKey(requiredOutput)[0] }} <i
150                                             class="icon-required-star" type="button" aria-hidden="true"></i></label>
151                                     <input type="text" class="form-control">
152                                 </div>
153                             </div>
154                         </div>
155                     </div>
156                 </div>
157             </div>
158         </div>
159     <!--ARTIFACTS-->
160         <div class="card" [hidden]="selectedTemplates.size == 0" class="accordion" id="accordionExample1">
161             <div class="card-header" id="headingTwo">
162                 <h2 class="mb-0">
163                     <button class="btn btn-link" type="button" data-toggle="collapse" data-target="#collapseTwo"
164                         aria-expanded="true" aria-controls="collapseTwo">
165                         Artifacts
166                     </button>
167                 </h2>
168             </div>
169             <div id="collapseTwo" class="collapse show" aria-labelledby="headingTwo" data-parent="#accordionExample">
170                 <div class="card-body">
171                     <div class="row">
172                         <div class="col-12" *ngFor="let file of  getKeys(selectedTemplates)">
173                             <a class="template-mapping-list">
174                                 <p>{{file}}</p>
175                                 <span *ngIf="getValue(file).isMapping">Mapping</span>
176                                 <span *ngIf="getValue(file).isTemplate">Template</span>
177
178                                 <a data-toggle="modal" (click)="fileToDelete = file"
179                                     data-target="#templateDeletionModal" class="accordion-delete deleteTemplate"
180                                     title="Delete Template"><i class="icon-delete-sm"></i></a>
181                             </a>
182
183                         </div>
184                     </div>
185                 </div>
186             </div>
187         </div>
188     </div>
189 </div>
190
191 <!--function - Select Template - Modal-->
192 <div class="modal fade" id="templateModal" tabindex="-1" role="dialog" aria-labelledby="templateModalTitle"
193     aria-hidden="true">
194     <div class="modal-dialog modal-dialog-scrollable" role="document">
195         <div class="modal-content">
196             <div class="modal-header">
197                 <h5 class="modal-title" id="templateModalTitle">
198                     Select Pre-defined Tempalte Name</h5>
199                 <button type="button" class="close" data-dismiss="modal" aria-label="Close">
200                     <img src="assets/img/icon-close.svg" />
201                 </button>
202             </div>
203             <div class="modal-body createAttributeTabs">
204                 <div class="col-4" *ngFor="let file of  getKeys(templateAndMappingMap)">
205                     <a class="template-mapping-list float" [ngClass]="{'active':selectedTemplates.has(file)}">
206                         <p (click)="setTemplate(file)">{{file}}</p>
207                         <span *ngIf="getValue(file).isMapping">Mapping</span>
208                         <span *ngIf="getValue(file).isTemplate">Template</span>
209                     </a>
210
211                 </div>
212
213             </div>
214             <div class="modal-footer">
215                 <button type="button" class="btn btn-secondary" data-dismiss="modal">Cancel</button>
216                 <button type="button" class="btn btn-primary" data-dismiss="modal" (click)="addTemplates()">Add
217                     Templates</button>
218             </div>
219         </div>
220     </div>
221 </div>
222
223 <!-- Delete Modal -->
224 <div class="modal fade" id="templateDeletionModal" tabindex="-1" role="dialog"
225     aria-labelledby="templateDeletionModalLabel" aria-hidden="true">
226     <div class="modal-dialog" role="document">
227         <div class="modal-content">
228             <div class="modal-header">
229                 <h5 class="modal-title" id="templateDeletionModalLabel">Delete Script</h5>
230                 <button type="button" class="close" data-dismiss="modal" aria-label="Close">
231                     <img src="assets/img/icon-close.svg" />
232                 </button>
233             </div>
234             <div class="modal-body">
235                 <p>Are you sure you want to delete Template file
236                     <span>{{fileToDelete}}</span>?</p>
237             </div>
238             <div class="modal-footer">
239                 <button type="button" class="btn btn-secondary" data-dismiss="modal">Cancel</button>
240                 <button type="button" (click)="setTemplate(fileToDelete)" data-dismiss="modal"
241                     class="btn btn-primary">Delete</button>
242             </div>
243         </div>
244     </div>
245 </div>