implemented new api call in members view
This commit is contained in:
parent
c7603626f5
commit
6ed72264ef
@ -13,52 +13,39 @@ class MembersHelper {
|
||||
return {
|
||||
docSpaceAdmin: {
|
||||
key: "docSpaceAdmin",
|
||||
title: this.t("Common:DocSpaceAdmin"),
|
||||
label: this.t("Common:DocSpaceAdmin"),
|
||||
access: ShareAccessRights.FullAccess,
|
||||
},
|
||||
roomAdmin: {
|
||||
key: "roomAdmin",
|
||||
title: this.t("Common:RoomAdmin"),
|
||||
label: this.t("Common:RoomAdmin"),
|
||||
access: ShareAccessRights.RoomManager,
|
||||
},
|
||||
user: {
|
||||
key: "user",
|
||||
title: this.t("Common:User"),
|
||||
label: this.t("Common:User"),
|
||||
access: EmployeeType.Guest,
|
||||
viewer: {
|
||||
key: "viewer",
|
||||
label: this.t("Translations:RoleViewer"),
|
||||
access: ShareAccessRights.ReadOnly,
|
||||
},
|
||||
editor: {
|
||||
key: "editor",
|
||||
title: this.t("Translations:RoleEditor"),
|
||||
label: this.t("Translations:RoleEditor"),
|
||||
access: ShareAccessRights.Editing,
|
||||
},
|
||||
formFiller: {
|
||||
key: "formFiller",
|
||||
title: this.t("Translations:RoleFormFiller"),
|
||||
label: this.t("Translations:RoleFormFiller"),
|
||||
access: ShareAccessRights.FormFilling,
|
||||
},
|
||||
reviewer: {
|
||||
key: "reviewer",
|
||||
title: this.t("Translations:RoleReviewer"),
|
||||
label: this.t("Translations:RoleReviewer"),
|
||||
access: ShareAccessRights.Review,
|
||||
},
|
||||
commentator: {
|
||||
key: "commentator",
|
||||
title: this.t("Translations:RoleCommentator"),
|
||||
label: this.t("Translations:RoleCommentator"),
|
||||
access: ShareAccessRights.Comment,
|
||||
},
|
||||
viewer: {
|
||||
key: "viewer",
|
||||
title: this.t("Translations:RoleViewer"),
|
||||
label: this.t("Translations:RoleViewer"),
|
||||
access: ShareAccessRights.ReadOnly,
|
||||
},
|
||||
};
|
||||
};
|
||||
|
||||
|
@ -11,8 +11,10 @@ const User = ({
|
||||
user,
|
||||
isExpect,
|
||||
membersHelper,
|
||||
roomId,
|
||||
roomType,
|
||||
currentMember,
|
||||
updateRoomMemberRole,
|
||||
}) => {
|
||||
if (!user.displayName && !user.email) return null;
|
||||
|
||||
@ -30,6 +32,17 @@ const User = ({
|
||||
setUserRoleOptions(
|
||||
fullRoomRoleOptions.filter((role) => role.key !== option.key)
|
||||
);
|
||||
|
||||
updateRoomMemberRole(roomId, {
|
||||
invitations: [
|
||||
{
|
||||
id: user.id,
|
||||
access: option.access,
|
||||
},
|
||||
],
|
||||
notify: false,
|
||||
sharingMessage: "",
|
||||
});
|
||||
};
|
||||
|
||||
return (
|
||||
|
@ -27,13 +27,14 @@ const Members = ({
|
||||
setSelectionParentRoom,
|
||||
|
||||
getRoomMembers,
|
||||
updateRoomMemberRole,
|
||||
|
||||
setInvitePanelOptions,
|
||||
changeUserType,
|
||||
}) => {
|
||||
const membersHelper = new MembersHelper({ t });
|
||||
|
||||
const [members, setMembers] = useState(null);
|
||||
const [roomType, setRoomType] = useState(null);
|
||||
const [showLoader, setShowLoader] = useState(false);
|
||||
|
||||
const fetchMembers = async (roomId) => {
|
||||
@ -64,8 +65,6 @@ const Members = ({
|
||||
useEffect(async () => {
|
||||
if (!selectionParentRoom) return;
|
||||
|
||||
setRoomType(selectionParentRoom.roomType);
|
||||
|
||||
if (selectionParentRoom.members) {
|
||||
setMembers(selectionParentRoom.members);
|
||||
return;
|
||||
@ -80,7 +79,6 @@ const Members = ({
|
||||
|
||||
useEffect(async () => {
|
||||
if (!selection.isRoom) return;
|
||||
setRoomType(selection.roomType);
|
||||
if (selectionParentRoom && selectionParentRoom.id === selection.id) return;
|
||||
|
||||
const fetchedMembers = await fetchMembers(selection.id);
|
||||
@ -106,7 +104,7 @@ const Members = ({
|
||||
};
|
||||
|
||||
if (showLoader) return <Loaders.InfoPanelViewLoader view="members" />;
|
||||
if (!members) return null;
|
||||
if (!selectionParentRoom || !members) return null;
|
||||
|
||||
console.log(members);
|
||||
const [currentMember] = members.inRoom.filter(
|
||||
@ -136,8 +134,10 @@ const Members = ({
|
||||
t={t}
|
||||
user={user}
|
||||
membersHelper={membersHelper}
|
||||
roomType={roomType}
|
||||
currentMember={currentMember}
|
||||
updateRoomMemberRole={updateRoomMemberRole}
|
||||
roomId={selectionParentRoom.id}
|
||||
roomType={selectionParentRoom.roomType}
|
||||
/>
|
||||
))}
|
||||
</StyledUserList>
|
||||
@ -145,14 +145,14 @@ const Members = ({
|
||||
{!!members.expected.length && (
|
||||
<StyledUserTypeHeader isExpect>
|
||||
<Text className="title">{t("ExpectPeople")}</Text>
|
||||
<IconButton
|
||||
{/* <IconButton
|
||||
className={"icon"}
|
||||
title={t("Repeat invitation")}
|
||||
iconName="/static/images/e-mail+.react.svg"
|
||||
isFill={true}
|
||||
onClick={onRepeatInvitation}
|
||||
size={16}
|
||||
/>
|
||||
/> */}
|
||||
</StyledUserTypeHeader>
|
||||
)}
|
||||
|
||||
@ -164,8 +164,10 @@ const Members = ({
|
||||
t={t}
|
||||
user={user}
|
||||
membersHelper={membersHelper}
|
||||
roomType={roomType}
|
||||
currentMember={currentMember}
|
||||
updateRoomMemberRole={updateRoomMemberRole}
|
||||
roomId={selectionParentRoom.id}
|
||||
roomType={selectionParentRoom.roomType}
|
||||
/>
|
||||
))}
|
||||
</StyledUserList>
|
||||
@ -175,7 +177,7 @@ const Members = ({
|
||||
|
||||
export default inject(({ auth, filesStore, peopleStore, dialogsStore }) => {
|
||||
const { selectionParentRoom, setSelectionParentRoom } = auth.infoPanelStore;
|
||||
const { getRoomMembers } = filesStore;
|
||||
const { getRoomMembers, updateRoomMemberRole } = filesStore;
|
||||
const { isOwner, isAdmin, id: selfId } = auth.userStore.user;
|
||||
const { setInvitePanelOptions } = dialogsStore;
|
||||
const { changeType: changeUserType } = peopleStore;
|
||||
@ -183,7 +185,9 @@ export default inject(({ auth, filesStore, peopleStore, dialogsStore }) => {
|
||||
return {
|
||||
selectionParentRoom,
|
||||
setSelectionParentRoom,
|
||||
|
||||
getRoomMembers,
|
||||
updateRoomMemberRole,
|
||||
|
||||
isOwner,
|
||||
isAdmin,
|
||||
|
Loading…
Reference in New Issue
Block a user