Add base logic to configure two factor on account

This commit is contained in:
Dane Everitt 2019-12-22 17:03:44 -08:00
parent edf27a5542
commit eb39826f46
No known key found for this signature in database
GPG key ID: EEA66103B3D71F53
15 changed files with 389 additions and 54 deletions

View file

@ -0,0 +1,38 @@
import React, { useState } from 'react';
import { useStoreState } from 'easy-peasy';
import { ApplicationStore } from '@/state';
import SetupTwoFactorModal from '@/components/dashboard/forms/SetupTwoFactorModal';
export default () => {
const user = useStoreState((state: ApplicationStore) => state.user.data!);
const [visible, setVisible] = useState(false);
return user.useTotp ?
<div>
<p className={'text-sm'}>
Two-factor authentication is currently enabled on your account.
</p>
<div className={'mt-6'}>
<button className={'btn btn-red btn-secondary btn-sm'}>
Disable
</button>
</div>
</div>
:
<div>
<SetupTwoFactorModal visible={visible} onDismissed={() => setVisible(false)}/>
<p className={'text-sm'}>
You do not currently have two-factor authentication enabled on your account. Click
the button below to begin configuring it.
</p>
<div className={'mt-6'}>
<button
onClick={() => setVisible(true)}
className={'btn btn-green btn-secondary btn-sm'}
>
Begin Setup
</button>
</div>
</div>
;
};