Web: Client: InvitePanel: Fixed AddUsersPanel usage

This commit is contained in:
Ilya Oleshko 2022-09-02 15:36:29 +03:00
parent 7f18581cc8
commit ac5210c8f8
2 changed files with 16 additions and 63 deletions

View File

@ -6,7 +6,7 @@ import Backdrop from "@docspace/components/backdrop";
import Aside from "@docspace/components/aside";
import Button from "@docspace/components/button";
import { AddUsersPanel, EmbeddingPanel } from "../index";
import { EmbeddingPanel } from "../index";
import {
StyledBlock,
@ -14,7 +14,6 @@ import {
StyledInvitePanel,
StyledSubHeader,
StyledButtons,
StyledLink,
} from "./StyledInvitePanel";
import Items from "./items.js";
@ -25,25 +24,18 @@ const InvitePanel = ({
setInvitePanelOptions,
visible,
t,
theme,
tReady,
getUsersByQuery,
getFolderInfo,
folders,
getShareUsers,
setInviteItems,
inviteItems,
}) => {
const [selectedRoom, setSelectedRoom] = useState(null);
const [showUsersPanel, setShowUsersPanel] = useState(false);
const [hasErrors, setHasErrors] = useState(false);
const [roomUsers, setRoomUsers] = useState([]);
let shareUsers = [];
useEffect(() => {
const { id } = invitePanelOptions;
const room = folders.find((folder) => folder.id === id);
if (room) {
setSelectedRoom(room);
} else {
@ -51,21 +43,12 @@ const InvitePanel = ({
setSelectedRoom(info);
});
}
getShareUsers([id]).then((accesses) => {
shareUsers = accesses;
const users = accesses.map((user) => {
return {
id: user.sharedTo.id,
email: user.sharedTo.email,
access: user.access,
};
});
setRoomUsers(users);
});
}, [invitePanelOptions]);
const onClose = () => setInvitePanelOptions({ visible: false });
const onClose = () => {
setInvitePanelOptions({ visible: false });
setInviteItems([]);
};
const onKeyPress = (e) =>
(e.key === "Esc" || e.key === "Escape") && onClose();
@ -75,20 +58,11 @@ const InvitePanel = ({
return () => document.removeEventListener("keyup", onKeyPress);
});
const onSelectItemAccess = (selectedItem) => {
if (selectedItem.key === "delete") {
const newItems = inviteItems.filter(
(item) => item.id !== selectedItem.id
);
return setInviteItems(newItems);
}
};
const onClickSend = (e) => {
const toSend = inviteItems.map((item) => {
let newItem = { access: item.access };
item.avatar ? (newItem.id = item.id) : (newItem.email = item.email);
item.avatarSmall ? (newItem.id = item.id) : (newItem.email = item.email);
return newItem;
});
@ -96,10 +70,6 @@ const InvitePanel = ({
console.log("send", toSend);
};
const openUserPanel = () => {
setShowUsersPanel(true);
};
return (
<StyledInvitePanel>
<Backdrop
@ -117,18 +87,8 @@ const InvitePanel = ({
<StyledSubHeader>{t("SharingPanel:ExternalLink")}</StyledSubHeader>
</StyledBlock>
<StyledSubHeader>
{t("IndividualInvitation")}
<StyledLink
fontWeight="600"
type="action"
isHovered
onClick={openUserPanel}
>
{t("СhooseFromList")}
</StyledLink>
</StyledSubHeader>
<InviteInput t={t} roomUsers={roomUsers} />
<InviteInput t={t} onClose={onClose} />
{!!inviteItems.length && (
<>
<Items t={t} />
@ -150,20 +110,6 @@ const InvitePanel = ({
</StyledButtons>
</>
)}
{showUsersPanel && (
<AddUsersPanel
onSharingPanelClose={onClose}
onClose={() => setShowUsersPanel(false)}
visible={showUsersPanel}
shareDataItems={shareUsers}
setShareDataItems={(item) => console.log(item)}
//groupsCaption={groupsCaption}
accessOptions={["FullAccess"]}
isMultiSelect
//isEncrypted={isEncrypted}
/>
)}
</Aside>
</StyledInvitePanel>
);

View File

@ -34,31 +34,37 @@ const Item = ({ t, item, setInviteItems, inviteItems, changeInviteItem }) => {
key: "roomManager",
label: "Room manager",
access: ShareAccessRights.FullAccess,
id,
},
{
key: "editor",
label: "Editor",
access: ShareAccessRights.CustomFilter,
id,
},
{
key: "formFiller",
label: "Form filler",
access: ShareAccessRights.FormFilling,
id,
},
{
key: "reviewer",
label: "Reviewer",
access: ShareAccessRights.Review,
id,
},
{
key: "commentator",
label: "Commentator",
access: ShareAccessRights.Comment,
id,
},
{
key: "viewer",
label: "Viewer",
access: ShareAccessRights.ReadOnly,
id,
},
{
key: "sep",
@ -115,6 +121,7 @@ const Item = ({ t, item, setInviteItems, inviteItems, changeInviteItem }) => {
const selectItemAccess = (selected) => {
if (selected.key === "delete") return removeItem();
changeInviteItem(selected);
};