diff --git a/src/features/Profiles/Components/Avatar/Avatar.tsx b/src/features/Profiles/Components/Avatar/Avatar.tsx index 5ceae65..73d9518 100644 --- a/src/features/Profiles/Components/Avatar/Avatar.tsx +++ b/src/features/Profiles/Components/Avatar/Avatar.tsx @@ -16,7 +16,9 @@ export default function Avatar({ src, alt, className, width = 40, renderTooltip setTooltipRef, setTriggerRef, visible, - } = usePopperTooltip(); + } = usePopperTooltip({ + + }); return ( <> @@ -28,7 +30,7 @@ export default function Avatar({ src, alt, className, width = 40, renderTooltip (renderTooltip && visible) && (
{renderTooltip()} diff --git a/src/features/Projects/pages/ProjectPage/Components/MakersCard/MakersCard.tsx b/src/features/Projects/pages/ProjectPage/Components/MakersCard/MakersCard.tsx index 7a9e2b5..29c86f0 100644 --- a/src/features/Projects/pages/ProjectPage/Components/MakersCard/MakersCard.tsx +++ b/src/features/Projects/pages/ProjectPage/Components/MakersCard/MakersCard.tsx @@ -2,6 +2,7 @@ import { Link } from 'react-router-dom' import Badge from 'src/Components/Badge/Badge' import Card from 'src/Components/Card/Card' import Avatar from 'src/features/Profiles/Components/Avatar/Avatar' +import { sortMembersByRole } from 'src/features/Projects/utils/helperFunctions' import { ProjectDetailsQuery } from 'src/graphql' import { createRoute } from 'src/utils/routing' @@ -20,7 +21,7 @@ export default function MakersCard({ members, recruit_roles }: Props) {
{members.length === 0 &&

Not listed

} - {members.map(m => + {sortMembersByRole(members).map(m => } {project.members.length > 0 && -
+

MAKERS

- {project.members.map(m => + {sortMembersByRole(project.members).map(m =>
+ renderTooltip={() =>

{m.user.name}

diff --git a/src/features/Projects/utils/helperFunctions.ts b/src/features/Projects/utils/helperFunctions.ts new file mode 100644 index 0000000..0c44550 --- /dev/null +++ b/src/features/Projects/utils/helperFunctions.ts @@ -0,0 +1,11 @@ +import { Team_Member_Role } from "src/graphql"; + +export function sortMembersByRole(members: T[]) { + return [...members].sort((a, b) => { + if (a.role === b.role) return 0 + if (a.role === Team_Member_Role.Owner) return -1; + if (b.role === Team_Member_Role.Owner) return +1; + if (a.role === Team_Member_Role.Admin) return -1; + return +1; + }) +} \ No newline at end of file