Skip to content
This repository was archived by the owner on Mar 13, 2025. It is now read-only.

fix: issue #135 #136

Merged
merged 2 commits into from
Mar 3, 2021
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 4 additions & 1 deletion src/components/User/index.jsx
Original file line number Diff line number Diff line change
Expand Up @@ -9,12 +9,14 @@ import PT from "prop-types";
import "./styles.module.scss";
import { formatFullName } from "utils/format";
import { TOPCODER_COMMUNITY_WEBSITE_URL } from "../../../config";
import IconDirectArrow from "../../assets/images/icon-direct-arrow.svg";
import { Link } from "@reach/router";

const User = ({ user, hideFullName = false, handleLinkTo }) => {
const User = ({ showArrow, user, hideFullName = false, handleLinkTo }) => {
return (
<div styleName="user">
<Avatar {...user} />
{showArrow ? <IconDirectArrow styleName="direct-arrow" /> : null}
<div styleName="user-details">
{/* if "handleLinkTo" is provided, use it as internal link, otherwise as external profile link */}
{handleLinkTo ? (
Expand Down Expand Up @@ -47,6 +49,7 @@ User.propTypes = {
}),
hideFullName: PT.bool,
handleLinkTo: PT.string,
showArrow: PT.bool,
};

export default User;
16 changes: 16 additions & 0 deletions src/components/User/styles.module.scss
Original file line number Diff line number Diff line change
Expand Up @@ -3,8 +3,24 @@
.user {
align-items: center;
display: flex;
position: relative;
}

.direct-arrow {
position: absolute;
left: 20px;
top: 24px;
bottom: 0;
text-align: center;
background-color: #404041;
border-radius: 80%;
width: 14px;
height: 14px;
padding: 3px;
path {
fill: white;
}
}
.user-details {
margin-left: 16px;
}
39 changes: 16 additions & 23 deletions src/routes/TeamAccess/components/MemberList/index.jsx
Original file line number Diff line number Diff line change
Expand Up @@ -7,11 +7,9 @@ import PT from "prop-types";
import CardHeader from "components/CardHeader";
import Button from "components/Button";
import "./styles.module.scss";
import Avatar from "components/Avatar";
import { Link } from "@reach/router";
import User from "components/User";
import TimeSection from "../TimeSection";
import { formatInviteTime } from "utils/format";
import IconDirectArrow from "../../../../assets/images/icon-direct-arrow.svg";
import DeleteModal from "../DeleteModal";
import AddModalContainer from "../AddModalContainer";

Expand Down Expand Up @@ -41,16 +39,14 @@ const MemberList = ({ teamId, members, invitees }) => {
<div styleName="table-row">
<div styleName="table-group avatar-name">
<div styleName="table-cell">
<Avatar
photoUrl={member.photoURL}
handle={member.handle || member.email}
<User
user={{
...member,
photoUrl: member.photoURL,
}}
hideFullName
/>
</div>
<div styleName="table-cell">
<Link to={`/taas/myteams/${teamId}/rb/${member.id}`}>
{member.handle || member.email}
</Link>
</div>
</div>
<TimeSection
start={member.workingHourStart}
Expand All @@ -71,18 +67,15 @@ const MemberList = ({ teamId, members, invitees }) => {
<div styleName="table-row">
<div styleName="table-group avatar-name">
<div styleName="table-cell">
<div styleName="invite-avatar">
<Avatar
photoUrl={invitee.photoURL}
handle={invitee.handle || invitee.email}
/>
<IconDirectArrow styleName="direct-arrow" />
</div>
</div>
<div styleName="table-cell">
<Link to={`/taas/myteams/${teamId}/rb/${invitee.id}`}>
{invitee.handle || invitee.email}
</Link>
<User
user={{
...invitee,
photoUrl: invitee.photoURL,
handle: invitee.handle || invitee.email,
}}
showArrow
hideFullName
/>
</div>
</div>
<div styleName="table-group invite-date">
Expand Down
19 changes: 0 additions & 19 deletions src/routes/TeamAccess/components/MemberList/styles.module.scss
Original file line number Diff line number Diff line change
Expand Up @@ -67,25 +67,6 @@
flex: 1 2 320px;
}

.invite-avatar {
position: relative;
}

.direct-arrow {
position: absolute;
right: 0;
bottom: 0;
text-align: center;
background-color: #404041;
border-radius: 80%;
width: 14px;
height: 14px;
padding: 3px;
path {
fill: white;
}
}

.row-container {
position: relative;
}
Expand Down