CDS add vFW Use Case from Integration project
[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 then ENTER" type="input">
5             <a class="enter-link" href="#"><i class="icon-enter-link"></i></a>
6         </div>
7         <span tourAnchor="st-scriptsImport" class="import-container-span">Or you can also <a data-target="#scriptsModal"
8                 data-toggle="modal" (click)="resetTheUploadedFiles()" href="#"><b>Import File</b></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)" aria-expanded="false" class="btn btn-link collapsed"
24                             data-toggle="collapse">
25                             <i class="icon-file-code"></i> {{file.key}}
26                         </button>
27                         <a data-toggle="modal" (click)="initDelete(file)" data-target="#exampleModal"
28                             class="accordion-delete"><i class="icon-delete-sm"></i></a>
29                         <!-- <a (click)="removeFile(file.key,mapIndex)" data-toggle="modal" data-target="#exampleModal" class="accordion-delete"><i
30                                     class="icon-delete-sm"></i></a> -->
31                         <!-- Delete Modal -->
32                         <div class="modal fade" id="exampleModal" tabindex="-1" role="dialog"
33                             aria-labelledby="exampleModalLabel" aria-hidden="true">
34                             <div class="modal-dialog" role="document">
35                                 <div class="modal-content">
36                                     <div class="modal-header">
37                                         <h5 class="modal-title" id="exampleModalLabel">Delete Script</h5>
38                                         <button type="button" class="close" data-dismiss="modal" aria-label="Close">
39                                             <img src="assets/img/icon-close.svg" />
40                                         </button>
41                                     </div>
42                                     <div class="modal-body">
43                                         <p>Are you sure you want to delete script file
44                                             <span>{{fileToDelete?.key?.split('/')[2]}}</span>?</p>
45                                     </div>
46                                     <div class="modal-footer">
47                                         <button type="button" class="btn btn-secondary"
48                                             data-dismiss="modal">Cancel</button>
49                                         <button type="button" (click)="removeFile(fileToDelete?.key,0)"
50                                             data-dismiss="modal" class="btn btn-danger">Delete</button>
51                                     </div>
52                                 </div>
53                             </div>
54                         </div>
55
56
57                     </h5>
58                 </div>
59                 <div [attr.aria-labelledby]="'head-script-'+mapIndex" [id]="'id-script-'+mapIndex" class="collapse"
60                     data-parent="#accordion-script">
61                     <div class="card-body">
62                         <ace-editor [(text)]="file.value" (textChange)="textChanges($event,file.key)" [mode]="'kotlin'"
63                             [autoUpdateContent]="true" [durationBeforeCallback]="1000" [theme]="'eclipse'" #editor
64                             style="height:300px;">
65                         </ace-editor>
66                     </div>
67                 </div>
68             </div>
69
70         </div>
71     </div>
72
73 </div>
74
75 <div aria-hidden="true" aria-labelledby="scriptsModalLabel" class="modal fade" id="scriptsModal" role="dialog"
76     tabindex="-1">
77     <div class="modal-dialog" role="document">
78         <div class="modal-content">
79             <div class="modal-header">
80                 <h5 class="modal-title" id="scriptsModalLabel">Import File</h5>
81                 <button aria-label="Close" class="close" data-dismiss="modal" type="button">
82                     <img src="assets/img/icon-close.svg" />
83                 </button>
84             </div>
85             <div class="modal-body">
86                 <ngx-file-drop accept=".kt,.py" (onFileDrop)="dropped($event)" (onFileLeave)="fileLeave($event)"
87                     (onFileOver)="fileOver($event)" dropZoneLabel="Drop files here">
88                     <ng-template let-openFileSelector="openFileSelector" ngx-file-drop-content-tmp>
89                         <div class="folder-upload">
90                             <img src="assets/img/folder-upload.svg" />
91                         </div>
92                         <div class="folder-upload-text">
93                             Drag & Drop file
94                         </div>
95                         <div class="folder-upload-text">or
96                             <button (click)="openFileSelector()" class="btn btn-sm btn-primary" type="button">Browse
97                                 Files
98                             </button>
99                         </div>
100                         <div class="folder-upload-type">Allowed file type: Kotlin(kt), Python(py)</div>
101                     </ng-template>
102                 </ngx-file-drop>
103                 <div class="upload-table">
104                     <table class="table">
105                         <thead>
106                             <tr *ngFor="let item of uploadedFiles; let i=index">
107                                 <th width="40"><img src="assets/img/icon-file-code.svg" /></th>
108                                 <th>{{ item.name }}</th>
109                                 <th (click)="removeInitFile(i)" width="40" class="text-right"><img
110                                         src="assets/img/icon-remove-file.svg" /></th>
111                             </tr>
112                         </thead>
113                     </table>
114                 </div>
115             </div>
116             <div class="modal-footer">
117                 <button (click)="resetTheUploadedFiles()" class="btn btn-sm btn-secondary" data-dismiss="modal"
118                     type="button">Cancel
119                 </button>
120                 <button (click)="setFilesToStore()" class="btn btn-sm btn-primary" [disabled]="uploadedFiles?.length<=0"
121                     data-dismiss="modal" type="button">
122                     Import
123                 </button>
124             </div>
125         </div>
126     </div>
127 </div>