File tree Expand file tree Collapse file tree 4 files changed +23
-9
lines changed Expand file tree Collapse file tree 4 files changed +23
-9
lines changed Original file line number Diff line number Diff line change 1
1
import { Story } from "@storybook/react"
2
- import { Avatar , AvatarProps } from "./Avatar"
2
+ import { Avatar , AvatarIcon , AvatarProps } from "./Avatar"
3
3
import PauseIcon from "@material-ui/icons/PauseOutlined"
4
4
5
5
export default {
@@ -53,3 +53,9 @@ MuiIconXL.args = {
53
53
children : < PauseIcon /> ,
54
54
size : "xl" ,
55
55
}
56
+
57
+ export const AvatarIconDarken = Template . bind ( { } )
58
+ AvatarIconDarken . args = {
59
+ children : < AvatarIcon src = "/icon/database.svg" /> ,
60
+ colorScheme : "darken" ,
61
+ }
Original file line number Diff line number Diff line change @@ -4,7 +4,7 @@ import MuiAvatar, {
4
4
AvatarProps as MuiAvatarProps ,
5
5
} from "@material-ui/core/Avatar"
6
6
import { makeStyles } from "@material-ui/core/styles"
7
- import { cloneElement , FC } from "react"
7
+ import { FC } from "react"
8
8
import { combineClasses } from "util/combineClasses"
9
9
import { firstLetter } from "./firstLetter"
10
10
@@ -40,9 +40,12 @@ export const Avatar: FC<AvatarProps> = ({
40
40
)
41
41
}
42
42
43
- export const AvatarIcon : FC < { children : JSX . Element } > = ( { children } ) => {
43
+ /**
44
+ * Use it to make an img element behaves like a MaterialUI Icon component
45
+ */
46
+ export const AvatarIcon : FC < { src : string } > = ( { src } ) => {
44
47
const styles = useStyles ( )
45
- return cloneElement ( children , { className : styles . avatarIcon } )
48
+ return < img src = { src } alt = "" className = { styles . avatarIcon } />
46
49
}
47
50
48
51
const useStyles = makeStyles ( ( theme ) => ( {
Original file line number Diff line number Diff line change @@ -38,9 +38,7 @@ export const ResourceAvatar: FC<ResourceAvatarProps> = ({ resource }) => {
38
38
39
39
return (
40
40
< Avatar colorScheme = "darken" >
41
- < AvatarIcon >
42
- < img src = { avatarSrc } alt = "" />
43
- </ AvatarIcon >
41
+ < AvatarIcon src = { avatarSrc } />
44
42
</ Avatar >
45
43
)
46
44
}
Original file line number Diff line number Diff line change @@ -4,11 +4,18 @@ import { FC } from "react"
4
4
export interface UserAvatarProps {
5
5
username : string
6
6
avatarURL ?: string
7
+ // It is needed to work with the AvatarGroup so it can pass the
8
+ // MuiAvatarGroup-avatar className
9
+ className ?: string
7
10
}
8
11
9
- export const UserAvatar : FC < UserAvatarProps > = ( { username, avatarURL } ) => {
12
+ export const UserAvatar : FC < UserAvatarProps > = ( {
13
+ username,
14
+ avatarURL,
15
+ className,
16
+ } ) => {
10
17
return (
11
- < Avatar title = { username } src = { avatarURL } >
18
+ < Avatar title = { username } src = { avatarURL } className = { className } >
12
19
{ username }
13
20
</ Avatar >
14
21
)
You can’t perform that action at this time.
0 commit comments