Merge "Publish execution input/output into Kafka topics"
[ccsdk/cds.git] / cds-ui / designer-client / src / app / modules / feature-modules / packages / package-creation / scripts-tab / scripts-tab.component.html
1 <div class="import-container-all">
2     <div class="import-container">
3         <div class="import-container-input">
4             <input class="ng-pristine ng-valid ng-touched" placeholder="Enter file URL" type="input">
5             <a class="enter-link" href="#"><i class="icon-enter"></i></a>
6         </div>
7         <span class="import-container-span">Or you can also <a data-target="#scriptsModal" data-toggle="modal"
8                 (click)="resetTheUploadedFiles()" href="#">Import File</a></span>
9
10     </div>
11
12     <div class="accordion">
13         <div class="card creat-card">
14             <div class="single-line">
15                 <label class="label-name">File</label>
16             </div>
17         </div>
18         <div *ngFor="let file of scriptsFiles | keyvalue; let mapIndex = index" id="accordion-script">
19
20             <div class="card">
21                 <div [id]="'head-script-'+mapIndex" class="card-header">
22                     <h5 class="mb-0 d-flex justify-content-between">
23                         <button (click)="changeDivShow(mapIndex)"
24                             aria-expanded="false" class="btn btn-link collapsed" data-toggle="collapse">
25                             <i class="icon-file-code"></i> {{file.key}}
26                         </button>
27                         <a (click)="removeFile(file.key,mapIndex)" class="accordion-delete"><i
28                                 class="icon-delete"></i></a>
29                     </h5>
30                 </div>
31                 <div [attr.aria-labelledby]="'head-script-'+mapIndex" [id]="'id-script-'+mapIndex" class="collapse"
32                     data-parent="#accordion-script">
33                     <div class="card-body">
34                         <ace-editor [(text)]="file.value" (textChange)="textChanges($event,file.key)" [mode]="'kotlin'"
35                             [autoUpdateContent]="true" [durationBeforeCallback]="1000" [theme]="'tomorrow_night_bright'"
36                             #editor style="height:300px;">
37                         </ace-editor>
38                     </div>
39                 </div>
40             </div>
41
42         </div>
43     </div>
44
45 </div>
46
47 <div aria-hidden="true" aria-labelledby="scriptsModalLabel" class="modal fade" id="scriptsModal" role="dialog"
48     tabindex="-1">
49     <div class="modal-dialog" role="document">
50         <div class="modal-content">
51             <div class="modal-header">
52                 <h5 class="modal-title" id="scriptsModalLabel">Import File</h5>
53                 <button aria-label="Close" class="close" data-dismiss="modal" type="button">
54                     <span aria-hidden="true">&times;</span>
55                 </button>
56             </div>
57             <div class="modal-body">
58                 <ngx-file-drop accept=".kt,.py" (onFileDrop)="dropped($event)" (onFileLeave)="fileLeave($event)"
59                     (onFileOver)="fileOver($event)" dropZoneLabel="Drop files here">
60                     <ng-template let-openFileSelector="openFileSelector" ngx-file-drop-content-tmp>
61                         <div class="folder-upload">
62                             <img src="assets/img/folder-upload.svg" />
63                         </div>
64                         <div class="folder-upload-text">
65                             Drag & Drop file
66                         </div>
67                         <div class="folder-upload-text">or
68                             <button (click)="openFileSelector()" class="btn btn-sm btn-primary" type="button">Browse
69                                 Files
70                             </button>
71                         </div>
72                         <div class="folder-upload-type">Allowed file type: Kotlin(kt), Python(py)</div>
73                     </ng-template>
74                 </ngx-file-drop>
75                 <div *ngFor="let item of uploadedFiles; let i=index" class="upload-table">
76                     <table class="table">
77                         <thead>
78                             <tr>
79                                 <th>Name : {{ item.name }}</th>
80                             </tr>
81                         </thead>
82                     </table>
83                 </div>
84             </div>
85             <div class="modal-footer">
86                 <button (click)="resetTheUploadedFiles()" class="btn btn-sm btn-secondary" data-dismiss="modal"
87                     type="button">Cancel
88                 </button>
89                 <button (click)="setFilesToStore()" class="btn btn-sm btn-primary" data-dismiss="modal" type="button">
90                     Import
91                 </button>
92             </div>
93         </div>
94     </div>
95 </div>