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 <tr [ngClass]="{'info': (agentStatus$ | async)?.connected, 'danger': !(agentStatus$ | async)?.connected}">
14 <th><label>XDS local Agent URL</label></th>
15 <td> <input type="text" [(ngModel)]="xdsAgentUrl"></td>
16 <td style="white-space: nowrap">
17 <div class="btn-group">
18 <button class="btn btn-link" (click)="xdsAgentRestartConn()"><span class="fa fa-refresh fa-size-x2"></span></button>
19 <dl-xds-agent class="button" [packageUrls]="(config$ | async).xdsAgentPackages"></dl-xds-agent>
24 <th><label>Local Agent connection retry</label></th>
25 <td> <input type="text" [(ngModel)]="xdsAgentRetry" (ngModelChange)="showApplyBtn['retry'] = true"></td>
27 <button *ngIf="showApplyBtn['retry']" class="btn btn-primary btn-xs" (click)="submitGlobConf('retry')">APPLY</button>
30 <tr [ngClass]="{'info': (localSTStatus$ | async)?.connected, 'danger': !(localSTStatus$ | async)?.connected}">
31 <th><label>Local Sync-tool URL</label></th>
32 <td> <input type="text" [(ngModel)]="syncToolUrl"></td>
34 <button class="btn btn-link" (click)="xdsAgentRestartConn()"><span class="fa fa-refresh fa-size-x2"></span></button>
38 <th><label>Local Projects root directory</label></th>
39 <td> <input type="text" [(ngModel)]="projectsRootDir" (ngModelChange)="showApplyBtn['rootDir'] = true"></td>
41 <button *ngIf="showApplyBtn['rootDir']" class="btn btn-primary btn-xs" (click)="submitGlobConf('rootDir')">APPLY</button>
51 <div class="panel panel-default">
52 <div class="panel-heading">
53 <h2 class="panel-title">Cross SDKs Configuration</h2>
55 <div class="panel-body">
56 <div class="row col-xs-12">
57 <sdks-list-accordion [sdks]="(sdks$ | async)"></sdks-list-accordion>
62 <div class="panel panel-default">
63 <div class="panel-heading">
64 <h2 class="panel-title">Projects Configuration</h2>
66 <div class="panel-body">
67 <form [formGroup]="addProjectForm" (ngSubmit)="onSubmit()">
69 <div class="col-xs-2">
70 <button class="btn btn-primary" type="submit" [disabled]="!addProjectForm.valid"><i class="fa fa-plus"></i> Add Folder</button>
73 <div class="col-xs-6">
74 <label>Folder Path </label>
75 <input type="text" style="width:70%;" formControlName="path" placeholder="myProject">
77 <div class="col-xs-4">
79 <input type="text" formControlName="label" (keyup)="onKeyLabel($event)">
84 <div class="row col-xs-12">
85 <projects-list-accordion [projects]="(config$ | async).projects"></projects-list-accordion>
91 <!-- only for debug -->
92 <div *ngIf="false" class="row">
93 {{config$ | async | json}}