diff --git a/src/assets/icons/owner.svg b/src/assets/icons/owner.svg
new file mode 100644
index 00000000..9f373f44
--- /dev/null
+++ b/src/assets/icons/owner.svg
@@ -0,0 +1,10 @@
+
diff --git a/src/common/component/Contact.js b/src/common/component/Contact.js
index 7a3b7939..b2684ee4 100644
--- a/src/common/component/Contact.js
+++ b/src/common/component/Contact.js
@@ -3,6 +3,7 @@ import styled from "styled-components";
import { useSelector } from "react-redux";
import { useNavigate } from "react-router-dom";
import Tippy from "@tippyjs/react";
+import IconOwner from "../../assets/icons/owner.svg";
import Avatar from "./Avatar";
import Profile from "./Profile";
@@ -62,6 +63,7 @@ const StyledWrapper = styled.div`
}
`;
export default function Contact({
+ owner = false,
dm = false,
interactive = true,
uid = "",
@@ -96,6 +98,7 @@ export default function Contact({
{!compact && {curr?.name}}
+ {owner && }
);
diff --git a/src/common/component/ManageMembers.js b/src/common/component/ManageMembers.js
index db29654f..4ecc5b08 100644
--- a/src/common/component/ManageMembers.js
+++ b/src/common/component/ManageMembers.js
@@ -12,6 +12,7 @@ import Contact from "./Contact";
import StyledMenu from "./styled/Menu";
import InviteLink from "./InviteLink";
import moreIcon from "../../assets/icons/more.svg?url";
+import IconOwner from "../../assets/icons/owner.svg";
const StyledWrapper = styled.section`
display: flex;
flex-direction: column;
@@ -58,6 +59,9 @@ const StyledWrapper = styled.section`
font-size: 14px;
line-height: 20px;
color: #52525b;
+ display: flex;
+ align-items: center;
+ gap: 4px;
}
.email {
font-weight: normal;
@@ -154,12 +158,15 @@ export default function ManageMembers({ cid = null }) {
{uids.map((uid) => {
const { name, email, is_admin } = contacts.byId[uid];
+ const owner = channel && channel.owner == uid;
return (
-
- {name}
+
+ {name} {owner && }
+
{email}
diff --git a/src/routes/chat/ChannelChat/index.js b/src/routes/chat/ChannelChat/index.js
index c99b3c10..413f8f5a 100644
--- a/src/routes/chat/ChannelChat/index.js
+++ b/src/routes/chat/ChannelChat/index.js
@@ -79,7 +79,9 @@ export default function ChannelChat({ cid = "", dropFiles = [] }) {
};
const { name, description, is_public, members = [], owner } = data;
- const memberIds = is_public ? userIds : members;
+ const memberIds = is_public
+ ? userIds
+ : members.sort((n) => (n == owner ? -1 : 0));
const addVisible = loginUser?.is_admin || owner == loginUid;
console.log("channel message list", msgIds);
const readIndex = footprint.readChannels[cid];
@@ -214,7 +216,15 @@ export default function ChannelChat({ cid = "", dropFiles = [] }) {
)}
{memberIds.map((uid) => {
- return ;
+ return (
+
+ );
})}
>