Merge branch 'release/v2.0.0' of github.com:ONLYOFFICE/DocSpace-client into release/v2.0.0
This commit is contained in:
commit
3612bff47f
@ -1,4 +1,4 @@
|
||||
import React, { useState, useEffect, useCallback } from "react";
|
||||
import React, { useState, useEffect, useRef, useCallback } from "react";
|
||||
|
||||
import TagHandler from "./handlers/TagHandler";
|
||||
import SetRoomParams from "./sub-components/SetRoomParams";
|
||||
@ -25,8 +25,23 @@ const EditRoomDialog = ({
|
||||
...fetchedRoomParams,
|
||||
});
|
||||
|
||||
const setRoomTags = (newTags) =>
|
||||
setRoomParams({ ...roomParams, tags: newTags });
|
||||
const prevRoomParams = useRef(
|
||||
Object.freeze({
|
||||
...roomParams,
|
||||
}),
|
||||
);
|
||||
|
||||
const compareRoomParams = (prevParams, currentParams) => {
|
||||
return (
|
||||
prevParams.title === currentParams.title &&
|
||||
prevParams.roomOwner.id === currentParams.roomOwner.id &&
|
||||
prevParams.tags.sort().toString() === currentParams.tags.sort().toString() &&
|
||||
((prevParams.icon.uploadedFile === "" && currentParams.icon.uploadedFile === null) ||
|
||||
prevParams.icon.uploadedFile === currentParams.icon.uploadedFile)
|
||||
);
|
||||
};
|
||||
|
||||
const setRoomTags = (newTags) => setRoomParams({ ...roomParams, tags: newTags });
|
||||
|
||||
const tagHandler = new TagHandler(roomParams.tags, setRoomTags, fetchedTags);
|
||||
|
||||
@ -50,11 +65,16 @@ const EditRoomDialog = ({
|
||||
};
|
||||
|
||||
useEffect(() => {
|
||||
if (fetchedImage)
|
||||
if (fetchedImage) {
|
||||
setRoomParams({
|
||||
...roomParams,
|
||||
icon: { ...roomParams.icon, uploadedFile: fetchedImage },
|
||||
});
|
||||
prevRoomParams.current = {
|
||||
...roomParams,
|
||||
icon: { ...roomParams.icon, uploadedFile: fetchedImage },
|
||||
};
|
||||
}
|
||||
}, [fetchedImage]);
|
||||
|
||||
const onCloseAction = () => {
|
||||
@ -70,8 +90,7 @@ const EditRoomDialog = ({
|
||||
visible={visible}
|
||||
onClose={onCloseAction}
|
||||
isScrollLocked={isScrollLocked}
|
||||
withFooterBorder
|
||||
>
|
||||
withFooterBorder>
|
||||
<ModalDialog.Header>
|
||||
<DialogHeader isEdit />
|
||||
</ModalDialog.Header>
|
||||
@ -102,7 +121,7 @@ const EditRoomDialog = ({
|
||||
primary
|
||||
scale
|
||||
onClick={onEditRoom}
|
||||
isDisabled={isWrongTitle}
|
||||
isDisabled={isWrongTitle || compareRoomParams(prevRoomParams.current, roomParams)}
|
||||
isLoading={isLoading}
|
||||
/>
|
||||
<Button
|
||||
|
@ -6,6 +6,7 @@ import Text from "@docspace/components/text";
|
||||
|
||||
import { parseAddresses } from "@docspace/components/utils/email";
|
||||
import { getAccessOptions } from "../utils";
|
||||
import { getUserRole } from "@docspace/common/utils";
|
||||
|
||||
import {
|
||||
StyledEditInput,
|
||||
@ -35,6 +36,7 @@ const Item = ({
|
||||
|
||||
const name = !!avatar ? (displayName !== "" ? displayName : email) : email;
|
||||
const source = !!avatar ? avatar : AtReactSvgUrl;
|
||||
const role = getUserRole(item);
|
||||
|
||||
const [edit, setEdit] = useState(false);
|
||||
const [inputValue, setInputValue] = useState(name);
|
||||
@ -168,7 +170,7 @@ const Item = ({
|
||||
|
||||
return (
|
||||
<>
|
||||
<Avatar size="min" role="user" source={source} />
|
||||
<Avatar size="min" role={role} source={source} />
|
||||
{edit ? editBody : displayBody}
|
||||
</>
|
||||
);
|
||||
|
@ -125,19 +125,6 @@ export const StyledInfo = styled.div`
|
||||
height: 36px;
|
||||
margin-top: 7px;
|
||||
}
|
||||
|
||||
.language-combo-box {
|
||||
.combo-button {
|
||||
${(props) =>
|
||||
props.theme.interfaceDirection === "rtl"
|
||||
? css`
|
||||
margin-right: -16px;
|
||||
`
|
||||
: css`
|
||||
margin-left: -16px;
|
||||
`}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -191,7 +191,7 @@ class InfoPanelStore {
|
||||
|
||||
const currentFolderRoomId =
|
||||
this.selectedFolderStore.pathParts &&
|
||||
this.selectedFolderStore.pathParts[1].id;
|
||||
this.selectedFolderStore.pathParts[1]?.id;
|
||||
const prevRoomId = this.selectionParentRoom?.id;
|
||||
|
||||
if (!currentFolderRoomId || currentFolderRoomId === prevRoomId) return;
|
||||
|
Loading…
Reference in New Issue
Block a user