mirror of
https://github.com/Start9Labs/start-os.git
synced 2026-03-31 04:23:40 +00:00
* initial restructuring * very cool * new structure in place * delete unnecessary T * down the rabbit hole * getting better * dont like it * nice * very nice * sessions select all * nice * backup runs * fix targets and more * small improvements * mostly working * address PR comments * fix error * delete issue with merge * fix checkboxes and add API for deleting backup runs * better styling for checkboxes * small button in ssh kpage too * complete multiple UI launcher * fix actions * present error toast too * fix target forms
83 lines
2.5 KiB
HTML
83 lines
2.5 KiB
HTML
<ion-header>
|
|
<ion-toolbar>
|
|
<ion-buttons slot="start">
|
|
<ion-back-button defaultHref="system"></ion-back-button>
|
|
</ion-buttons>
|
|
<ion-title>SSH Keys</ion-title>
|
|
</ion-toolbar>
|
|
</ion-header>
|
|
|
|
<ion-content class="ion-padding-top with-widgets">
|
|
<ion-item-group>
|
|
<!-- always -->
|
|
<ion-item>
|
|
<ion-label>
|
|
<h2>
|
|
Adding SSH keys to StartOS is useful for command line access, as well
|
|
as for debugging purposes.
|
|
<a [href]="docsUrl" target="_blank" rel="noreferrer">
|
|
View instructions
|
|
</a>
|
|
</h2>
|
|
</ion-label>
|
|
</ion-item>
|
|
|
|
<ion-item-divider>
|
|
Saved Keys
|
|
<ion-button
|
|
class="ion-padding-start"
|
|
strong
|
|
size="small"
|
|
(click)="presentModalAdd()"
|
|
>
|
|
<ion-icon slot="start" name="add"></ion-icon>
|
|
Add New Key
|
|
</ion-button>
|
|
</ion-item-divider>
|
|
|
|
<div class="grid-fixed">
|
|
<ion-grid class="ion-padding">
|
|
<ion-row class="grid-headings">
|
|
<ion-col size="2">Hostname</ion-col>
|
|
<ion-col size="2.5">Created At</ion-col>
|
|
<ion-col size="2">Algorithm</ion-col>
|
|
<ion-col size="4.5">Fingerprint</ion-col>
|
|
<ion-col size="1"></ion-col>
|
|
</ion-row>
|
|
<!-- loading -->
|
|
<ng-container *ngIf="loading$ | async; else loaded">
|
|
<ion-row
|
|
*ngFor="let row of ['', '']"
|
|
class="ion-align-items-center grid-row-border"
|
|
>
|
|
<ion-col>
|
|
<ion-skeleton-text animated></ion-skeleton-text>
|
|
</ion-col>
|
|
</ion-row>
|
|
</ng-container>
|
|
<!-- loaded -->
|
|
<ng-template #loaded>
|
|
<ion-row
|
|
*ngFor="let ssh of sshKeys; let i = index"
|
|
class="ion-align-items-center grid-row-border"
|
|
>
|
|
<ion-col size="2">{{ ssh.hostname }}</ion-col>
|
|
<ion-col size="2.5">
|
|
{{ ssh['created-at'] | date: 'medium' }}
|
|
</ion-col>
|
|
<ion-col size="2">{{ ssh.alg }}</ion-col>
|
|
<ion-col size="4.5">{{ ssh.fingerprint }}</ion-col>
|
|
<ion-col size="1">
|
|
<ion-buttons style="float: right">
|
|
<ion-button size="small" (click)="presentAlertDelete(ssh, i)">
|
|
<ion-icon name="trash"></ion-icon>
|
|
</ion-button>
|
|
</ion-buttons>
|
|
</ion-col>
|
|
</ion-row>
|
|
</ng-template>
|
|
</ion-grid>
|
|
</div>
|
|
</ion-item-group>
|
|
</ion-content>
|