77d90c5c8f8ede10fbaa60eae54f08458ed73d2d
[src/xds/xds-server.git] / webapp / src / app / config / config.component.html
1 <div class="panel panel-default">
2     <div class="panel-heading clearfix">
3         <h2 class="panel-title pull-left">Global Configuration</h2>
4         <div class="pull-right">
5             <span class="fa fa-fw fa-exchange fa-size-x2" [style.color]="((serverStatus$ | async)?.WS_connected)?'green':'red'"></span>
6         </div>
7     </div>
8     <div class="panel-body">
9         <div class="row">
10             <div class="col-xs-12">
11                 <table class="table table-condensed">
12                     <tbody>
13                         <!-- FIXME [XDS-Agent]
14                         <tr [ngClass]="{'info': (agentStatus$ | async)?.connected, 'danger': !(agentStatus$ | async)?.connected}">
15                         -->
16                         <tr [ngClass]="{'info': (localSTStatus$ | async)?.connected, 'danger': !(localSTStatus$ | async)?.connected}">
17                             <th><label>XDS local Agent URL</label></th>
18                             <td> <input type="text" [(ngModel)]="xdsAgentUrl"></td>
19                             <td>
20                                 <button class="btn btn-link" (click)="xdsAgentRestartConn()"><span class="fa fa-refresh fa-size-x2"></span></button>
21                                 <!-- FIXME [XDS-Agent]
22                                 <button  *ngIf="!(agentStatus$ | async)?.connected"  -->
23                                 <button  *ngIf="!(localSTStatus$ | async)?.connected"  class="btn btn-link"><a class="fa fa-download fa-size-x2" [href]="xdsAgentZipUrl" target="_blank"></a></button>
24                             </td>
25                         </tr>
26                         <tr class="info">
27                             <th><label>Local Agent connection retry</label></th>
28                             <td> <input type="text" [(ngModel)]="xdsAgentRetry" (ngModelChange)="showApplyBtn['retry'] = true"></td>
29                             <td>
30                                 <button *ngIf="showApplyBtn['retry']" class="btn btn-primary btn-xs" (click)="submitGlobConf('retry')">APPLY</button>
31                             </td>
32                         </tr>
33                         <tr [ngClass]="{'info': (localSTStatus$ | async)?.connected, 'danger': !(localSTStatus$ | async)?.connected}">
34                             <th><label>Local Sync-tool URL</label></th>
35                             <td> <input type="text" [(ngModel)]="syncToolUrl"></td>
36                             <td>
37                                 <button class="btn btn-link" (click)="xdsAgentRestartConn()"><span class="fa fa-refresh fa-size-x2"></span></button>
38                             </td>
39                         </tr>
40                         <tr class="info">
41                             <th><label>Local Projects root directory</label></th>
42                             <td> <input type="text" [(ngModel)]="projectsRootDir" (ngModelChange)="showApplyBtn['rootDir'] = true"></td>
43                             <td>
44                                 <button *ngIf="showApplyBtn['rootDir']" class="btn btn-primary btn-xs" (click)="submitGlobConf('rootDir')">APPLY</button>
45                             </td>
46                         </tr>
47                     </tbody>
48                 </table>
49             </div>
50         </div>
51     </div>
52 </div>
53
54 <div class="panel panel-default">
55     <div class="panel-heading">
56         <h2 class="panel-title">Cross SDKs Configuration</h2>
57     </div>
58     <div class="panel-body">
59         <div class="row col-xs-12">
60             <sdks-list-accordion [sdks]="(sdks$ | async)"></sdks-list-accordion>
61         </div>
62     </div>
63 </div>
64
65 <div class="panel panel-default">
66     <div class="panel-heading">
67         <h2 class="panel-title">Projects Configuration</h2>
68     </div>
69     <div class="panel-body">
70         <form [formGroup]="addProjectForm" (ngSubmit)="onSubmit()">
71             <div class="row ">
72                 <div class="col-xs-2">
73                     <button class="btn btn-primary" type="submit" [disabled]="!addProjectForm.valid"><i class="fa fa-plus"></i>&nbsp;New Folder</button>
74                 </div>
75
76                 <div class="col-xs-6">
77                     <label>Folder Path </label>
78                     <input type="text" style="width:70%;" formControlName="path" placeholder="myProject">
79                 </div>
80                 <div class="col-xs-4">
81                     <label>Label </label>
82                     <input type="text" formControlName="label" (keyup)="onKeyLabel($event)">
83                 </div>
84             </div>
85         </form>
86
87         <div class="row col-xs-12">
88             <projects-list-accordion [projects]="(config$ | async).projects"></projects-list-accordion>
89         </div>
90     </div>
91 </div>
92
93
94 <!-- only for debug -->
95 <div *ngIf="false" class="row">
96     {{config$ | async | json}}
97 </div>