Files
start-os/frontend/projects/ui/src/app/pages/server-routes/ssh-keys/ssh-keys.page.html
Matt Hill e53c90f8f0 Feat/automated backups (#2142)
* 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
2023-07-06 15:10:56 -06:00

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>