Raw
 1package adminui
 2
 3import (
 4	"context"
 5
 6	"tug/internal/service/admin"
 7	"tug/internal/transport/web"
 8)
 9
10func (b Backend) AddSSHKey(ctx context.Context, actor, id, key, label string) (web.SSHKey, error) {
11	added, err := b.service.AddSSHKey(ctx, actor, id, key, label)
12	if err != nil {
13		return web.SSHKey{}, mapError(err)
14	}
15	return web.SSHKey(added), nil
16}
17
18func (b Backend) RemoveSSHKey(ctx context.Context, actor, id, keyID string) (web.SSHKey, error) {
19	removed, err := b.service.RemoveSSHKey(ctx, actor, id, keyID)
20	if err != nil {
21		return web.SSHKey{}, mapError(err)
22	}
23	return web.SSHKey(removed), nil
24}
25
26func sshKeys(keys []admin.SSHKey) []web.SSHKey {
27	out := make([]web.SSHKey, 0, len(keys))
28	for _, k := range keys {
29		out = append(out, web.SSHKey(k))
30	}
31	return out
32}