aboutsummaryrefslogtreecommitdiffstats
path: root/webui/src/components/Author.tsx
diff options
context:
space:
mode:
authorQuentin Gliech <quentingliech@gmail.com>2020-02-13 00:53:29 +0100
committerQuentin Gliech <quentingliech@gmail.com>2020-02-13 00:53:29 +0100
commit8b85780d76ad45675582f4478eedb026b7ac25e1 (patch)
treeb6ffdc651259ec08ca608cb01acdf1dababccb55 /webui/src/components/Author.tsx
parent680dd91c0c0200bd4948173df0b601e16f511e6e (diff)
downloadgit-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.tsx32
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;