aboutsummaryrefslogtreecommitdiffstats
path: root/webui/src/Author.tsx
diff options
context:
space:
mode:
authorQuentin Gliech <quentingliech@gmail.com>2020-02-04 22:03:21 +0100
committerQuentin Gliech <quentingliech@gmail.com>2020-02-11 20:54:37 +0100
commit022f510369688084af5bcf314a97fd332d7ee265 (patch)
tree0adf3ac82d487712f095a7692b51aaefb680be72 /webui/src/Author.tsx
parent6a502c145bd8f2e2e1a9c0b103c11f0433c60737 (diff)
downloadgit-bug-022f510369688084af5bcf314a97fd332d7ee265.tar.gz
webui: convert more things to typescript
Diffstat (limited to 'webui/src/Author.tsx')
-rw-r--r--webui/src/Author.tsx28
1 files changed, 28 insertions, 0 deletions
diff --git a/webui/src/Author.tsx b/webui/src/Author.tsx
new file mode 100644
index 00000000..475244db
--- /dev/null
+++ b/webui/src/Author.tsx
@@ -0,0 +1,28 @@
+import Tooltip from '@material-ui/core/Tooltip/Tooltip';
+import MAvatar from '@material-ui/core/Avatar';
+import React from 'react';
+
+import { AuthoredFragment } from './Author.generated';
+
+type Props = AuthoredFragment;
+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;