1 // Copyright (C) The Arvados Authors. All rights reserved.
3 // SPDX-License-Identifier: AGPL-3.0
5 import * as React from 'react';
15 } from '@material-ui/core';
16 import { ArvadosTheme } from '~/common/custom-theme';
17 import { User } from "~/models/user";
18 import { formatDate }from "~/common/formatters";
20 type CssRules = 'root';// | 'gridItem' | 'label' | 'title' | 'actions';
22 const styles: StyleRulesCallback<CssRules> = (theme: ArvadosTheme) => ({
29 export interface LinkAccountPanelRootDataProps {
33 export interface LinkAccountPanelRootActionProps { }
35 type LinkAccountPanelRootProps = LinkAccountPanelRootDataProps & LinkAccountPanelRootActionProps & WithStyles<CssRules>;
37 export const LinkAccountPanelRoot = withStyles(styles) (
38 ({classes, user}: LinkAccountPanelRootProps) => {
39 return <Card className={classes.root}>
41 <Grid container spacing={24}>
42 { user && <Grid container item direction="column" spacing={24}>
44 You are currently logged in as <b>{user.email}</b> ({user.username}, {user.uuid}) created on <b>{formatDate(user.createdAt)}</b>
47 You can link Arvados accounts. After linking, either login will take you to the same account.
50 <Grid container item direction="row" spacing={24}>
52 <Button color="primary" variant="contained">Add another login to this account</Button>
55 <Button color="primary" variant="contained">Use this login to access another account</Button>