Display keys in login screen

This commit is contained in:
Pierre HUBERT 2021-05-14 11:25:50 +02:00
parent 9516190084
commit 34c07bfac8
2 changed files with 28 additions and 8 deletions

View File

@ -10,8 +10,14 @@ import {
} from "../utils/Base64Utils"; } from "../utils/Base64Utils";
import { serverRequest } from "./APIHelper"; import { serverRequest } from "./APIHelper";
export interface AuthKey {
name: string;
id: number;
}
export interface AuthOptions { export interface AuthOptions {
reset_token: string; reset_token: string;
keys: AuthKey[];
} }
export interface AdminAccount { export interface AdminAccount {

View File

@ -217,6 +217,7 @@ class AuthOptionsWidget extends React.Component<
this.state = {}; this.state = {};
this.loginWithResetToken = this.loginWithResetToken.bind(this); this.loginWithResetToken = this.loginWithResetToken.bind(this);
this.loginWithSecurityKey = this.loginWithSecurityKey.bind(this);
} }
async loginWithResetToken() { async loginWithResetToken() {
@ -237,6 +238,10 @@ class AuthOptionsWidget extends React.Component<
} }
} }
async loginWithSecurityKey(id: number) {
console.info(id);
}
render() { render() {
return ( return (
<Paper style={{ width: "100%", marginTop: "10px" }}> <Paper style={{ width: "100%", marginTop: "10px" }}>
@ -258,14 +263,23 @@ class AuthOptionsWidget extends React.Component<
<span></span> <span></span>
)} )}
<ListItem> {this.props.options.keys.map((key) => (
<ListItem
button
onClick={() => this.loginWithSecurityKey(key.id)}
key={key.id}
>
<ListItemAvatar> <ListItemAvatar>
<Avatar> <Avatar>
<VpnKey /> <VpnKey />
</Avatar> </Avatar>
</ListItemAvatar> </ListItemAvatar>
<ListItemText primary="Work" secondary="Jan 7, 2014" /> <ListItemText
primary={key.name}
secondary="Sign in using this security key"
/>
</ListItem> </ListItem>
))}
</List> </List>
</Paper> </Paper>
); );