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>
8 <div class="panel-body">
10 <div class="col-xs-12">
11 <table class="table table-condensed">
13 <!-- FIXME [XDS-Agent]
14 <tr [ngClass]="{'info': (agentStatus$ | async)?.connected, 'danger': !(agentStatus$ | async)?.connected}">
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>
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" [disabled]="xdsAgentZipUrl==''" class="btn btn-link">
24 <a *ngIf="xdsAgentZipUrl!=''" class="fa fa-download fa-size-x2" [href]="xdsAgentZipUrl" target="_blank"></a>
25 <a *ngIf="xdsAgentZipUrl==''" class="fa fa-download fa-size-x2" href="javascript:void(0);" target="_blank"></a>
30 <th><label>Local Agent connection retry</label></th>
31 <td> <input type="text" [(ngModel)]="xdsAgentRetry" (ngModelChange)="showApplyBtn['retry'] = true"></td>
33 <button *ngIf="showApplyBtn['retry']" class="btn btn-primary btn-xs" (click)="submitGlobConf('retry')">APPLY</button>
36 <tr [ngClass]="{'info': (localSTStatus$ | async)?.connected, 'danger': !(localSTStatus$ | async)?.connected}">
37 <th><label>Local Sync-tool URL</label></th>
38 <td> <input type="text" [(ngModel)]="syncToolUrl"></td>
40 <button class="btn btn-link" (click)="xdsAgentRestartConn()"><span class="fa fa-refresh fa-size-x2"></span></button>
44 <th><label>Local Projects root directory</label></th>
45 <td> <input type="text" [(ngModel)]="projectsRootDir" (ngModelChange)="showApplyBtn['rootDir'] = true"></td>
47 <button *ngIf="showApplyBtn['rootDir']" class="btn btn-primary btn-xs" (click)="submitGlobConf('rootDir')">APPLY</button>
57 <div class="panel panel-default">
58 <div class="panel-heading">
59 <h2 class="panel-title">Cross SDKs Configuration</h2>
61 <div class="panel-body">
62 <div class="row col-xs-12">
63 <sdks-list-accordion [sdks]="(sdks$ | async)"></sdks-list-accordion>
68 <div class="panel panel-default">
69 <div class="panel-heading">
70 <h2 class="panel-title">Projects Configuration</h2>
72 <div class="panel-body">
73 <form [formGroup]="addProjectForm" (ngSubmit)="onSubmit()">
75 <div class="col-xs-2">
76 <button class="btn btn-primary" type="submit" [disabled]="!addProjectForm.valid"><i class="fa fa-plus"></i> New Folder</button>
79 <div class="col-xs-6">
80 <label>Folder Path </label>
81 <input type="text" style="width:70%;" formControlName="path" placeholder="myProject">
83 <div class="col-xs-4">
85 <input type="text" formControlName="label" (keyup)="onKeyLabel($event)">
90 <div class="row col-xs-12">
91 <projects-list-accordion [projects]="(config$ | async).projects"></projects-list-accordion>
97 <!-- only for debug -->
98 <div *ngIf="false" class="row">
99 {{config$ | async | json}}