import { registerComponent } from 'meteor/vulcan:core'; import React from 'react'; import PropTypes from 'prop-types'; import Users from 'meteor/vulcan:users'; import { Link } from 'react-router'; const UsersAvatar = ({user, size, link}) => { const sizes = { small: "20px", medium: "30px", large: "50px" } const aStyle = { borderRadius: "100%", display: "inline-block", height: sizes[size], width: sizes[size] }; const imgStyle = { borderRadius: "100%", display: "block", height: sizes[size], width: sizes[size] }; const avatarUrl = user.avatarUrl || Users.avatar.getUrl(user); const img = {Users.getDisplayName(user)}; const initials = {Users.avatar.getInitials(user)}; const avatar = avatarUrl ? img : initials; return link ? {avatar} : avatar; } UsersAvatar.propTypes = { user: PropTypes.object.isRequired, size: PropTypes.string, link: PropTypes.bool } UsersAvatar.defaultProps = { size: 'medium', link: true } UsersAvatar.displayName = 'UsersAvatar'; registerComponent('UsersAvatar', UsersAvatar);