7a081743e541a1ee10e5cbb36b8aae0f0a882bac
[src/xds/xds-server.git] / webapp / src / app / config / downloadXdsAgent.component.ts
1 import { Component, Input, Pipe, PipeTransform } from '@angular/core';
2
3 import { IxdsAgentPackage } from "../services/config.service";
4
5 @Component({
6     selector: 'dl-xds-agent',
7     template: `
8         <template #popTemplate>
9             <h3>Download xds-agent packages:</h3>
10             <ul>
11                 <li *ngFor="let p of packageUrls">
12                     <a href="{{p.url}}">{{p.os | capitalize}} - {{p.arch}} ({{p.version}}) </a>
13                 </li>
14             </ul>
15             <button type="button" class="btn btn-sm" (click)="pop.hide()"> Cancel </button>
16         </template>
17         <button type="button" class="btn btn-link fa fa-download fa-size-x2"
18             [popover]="popTemplate"
19             #pop="bs-popover"
20             placement="left">
21         </button>
22     `,
23     styles: [`
24         .fa-size-x2 {
25             font-size: 20px;
26         }
27     `]
28 })
29
30 export class DlXdsAgentComponent {
31
32     @Input() packageUrls: IxdsAgentPackage[];
33
34 }
35
36 @Pipe({
37     name: 'capitalize'
38 })
39 export class CapitalizePipe implements PipeTransform {
40     transform(value: string): string {
41         if (value) {
42             return value.charAt(0).toUpperCase() + value.slice(1);
43         }
44         return value;
45     }
46 }