1 <h1 class=
"d-flex justify-content-between">
2 <span class=
"text-nowrap me-2">
3 <my-global-icon iconName=
"codesandbox" aria-hidden=
"true"></my-global-icon>
4 <ng-container i18n
>Remote runners
</ng-container>
7 <a routerLink=
"/admin/system/runners/registration-tokens-list" class=
"peertube-button-link peertube-button-icon grey-button">
8 <my-global-icon iconName=
"cog" aria-hidden=
"true"></my-global-icon>
9 <ng-container i18n
>Runner registration tokens
</ng-container>
14 [value]=
"runners" [paginator]=
"totalRecords > 0" [totalRecords]=
"totalRecords" [rows]=
"rowsPerPage" [first]=
"pagination.start"
15 [rowsPerPageOptions]=
"rowsPerPageOptions" [sortField]=
"sort.field" [sortOrder]=
"sort.order"
16 [lazy]=
"true" (onLazyLoad)=
"loadLazy($event)"
17 [showCurrentPageReport]=
"true" i18n-currentPageReportTemplate
18 currentPageReportTemplate=
"Showing {{'{first}'}} to {{'{last}'}} of {{'{totalRecords}'}} remote runners"
20 <ng-template pTemplate=
"header">
22 <th style=
"width: 120px;"></th>
24 <th i18n
>Description
</th>
26 <th i18n
>Last contact
</th>
27 <th style=
"width: 150px;" i18n
pSortableColumn=
"createdAt">Created
<p-sortIcon field=
"createdAt"></p-sortIcon></th>
31 <ng-template pTemplate=
"body" let-runner
>
33 <td class=
"action-cell">
35 placement=
"bottom-right top-right left auto" container=
"body"
36 i18n-label
label=
"Actions" [actions]=
"actions" [entry]=
"runner"
37 ></my-action-dropdown>
40 <td>{{ runner.name }}
</td>
42 <td>{{ runner.description }}
</td>
44 <td>{{ runner.ip }}
</td>
46 <td>{{ runner.lastContact | date: 'short' }}
</td>
48 <td>{{ runner.createdAt | date: 'short' }}
</td>
52 <ng-template pTemplate=
"emptymessage">
55 <div class=
"no-results">
56 <ng-container i18n
>No remote runners found.
</ng-container>