diff options
author | Quentin Gliech <quentingliech@gmail.com> | 2020-02-13 00:53:29 +0100 |
---|---|---|
committer | Quentin Gliech <quentingliech@gmail.com> | 2020-02-13 00:53:29 +0100 |
commit | 8b85780d76ad45675582f4478eedb026b7ac25e1 (patch) | |
tree | b6ffdc651259ec08ca608cb01acdf1dababccb55 /webui/src/components/Author.tsx | |
parent | 680dd91c0c0200bd4948173df0b601e16f511e6e (diff) | |
download | git-bug-8b85780d76ad45675582f4478eedb026b7ac25e1.tar.gz |
webui: start reorganizing the component structure
Diffstat (limited to 'webui/src/components/Author.tsx')
-rw-r--r-- | webui/src/components/Author.tsx | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/webui/src/components/Author.tsx b/webui/src/components/Author.tsx new file mode 100644 index 00000000..43fd108e --- /dev/null +++ b/webui/src/components/Author.tsx @@ -0,0 +1,32 @@ +import MAvatar from '@material-ui/core/Avatar'; +import Tooltip from '@material-ui/core/Tooltip/Tooltip'; +import React from 'react'; + +import { AuthoredFragment } from './fragments.generated'; + +type Props = AuthoredFragment & { + className?: string; + bold?: boolean; +}; + +const Author = ({ author, ...props }: Props) => { + if (!author.email) { + return <span {...props}>{author.displayName}</span>; + } + + return ( + <Tooltip title={author.email}> + <span {...props}>{author.displayName}</span> + </Tooltip> + ); +}; + +export const Avatar = ({ author, ...props }: Props) => { + if (author.avatarUrl) { + return <MAvatar src={author.avatarUrl} {...props} />; + } + + return <MAvatar {...props}>{author.displayName[0]}</MAvatar>; +}; + +export default Author; |