Web:Files:GlobalEvents: refactoring rename and create events

This commit is contained in:
TimofeyBoyko 2022-06-20 11:05:58 +03:00
parent 0bfa280c38
commit 991e3cc012
3 changed files with 23 additions and 125 deletions

View File

@ -41,7 +41,6 @@ const CreateEvent = ({
fileCopyAs,
setConvertPasswordDialogVisible,
setConvertItem,
setFormCreationInfo,
replaceFileStream,
@ -68,14 +67,6 @@ const CreateEvent = ({
setVisible(true);
}, [extension, title, fromTemplate]);
const completeAction = (id, item) => {
const isCancel =
(id.currentTarget && id.currentTarget.dataset.action === "cancel") ||
id.keyCode === 27;
editCompleteAction(id, item, isCancel, type);
};
const onSave = (e, value, open = true) => {
let item;
let createdFileId, createdFolderId;
@ -86,9 +77,6 @@ const CreateEvent = ({
const newValue = value;
// delete it later
// const itemId = e.currentTarget.dataset.itemid;
if (value.trim() === "") {
newValue =
templateId === null
@ -113,7 +101,7 @@ const CreateEvent = ({
createdFolderId = folder.id;
addActiveItems(null, [folder.id]);
})
.then(() => completeAction(id, item))
.then(() => editCompleteAction(id, item, false, type))
.catch((e) => toastr.error(e))
.finally(() => {
const folderIds = [+id];
@ -133,7 +121,7 @@ const CreateEvent = ({
open && openDocEditor(file.id, file.providerKey, tab);
})
.then(() => completeAction(id, item))
.then(() => editCompleteAction(id, item, false, type))
.catch((err) => {
console.log("err", err);
const isPasswordError = new RegExp("password");
@ -188,7 +176,7 @@ const CreateEvent = ({
return open && openDocEditor(file.id, file.providerKey, tab);
})
.then(() => completeAction(id, item))
.then(() => editCompleteAction(id, item, false, type))
.catch((e) => toastr.error(e))
.finally(() => {
const fileIds = [+id];
@ -223,7 +211,7 @@ const CreateEvent = ({
return open && openDocEditor(file.id, file.providerKey, tab);
})
.then(() => completeAction(id, item))
.then(() => editCompleteAction(id, item, false, type))
.catch((e) => toastr.error(e))
.finally(() => {
const fileIds = [+id];
@ -290,7 +278,7 @@ export default inject(
const {
setConvertPasswordDialogVisible,
setConvertItem,
setFormCreationInfo,
} = dialogsStore;
@ -314,7 +302,6 @@ export default inject(
fileCopyAs,
setConvertPasswordDialogVisible,
setConvertItem,
setFormCreationInfo,
replaceFileStream,

View File

@ -4,13 +4,7 @@ import { useTranslation } from "react-i18next";
import toastr from "studio/toastr";
import { AppServerConfig } from "@appserver/common/constants";
import { combineUrl } from "@appserver/common/utils";
import config from "../../../package.json";
import { getTitleWithoutExst } from "../../helpers/files-helpers";
import { getDefaultFileName } from "../../helpers/utils";
import Dialog from "./sub-components/Dialog";
@ -20,37 +14,19 @@ const RenameEvent = ({
onClose,
setIsLoading,
createFile,
createFolder,
addActiveItems,
openDocEditor,
setIsUpdatingRowItem,
gallerySelected,
updateFile,
renameFolder,
parentId,
isPrivacy,
isDesktop,
editCompleteAction,
clearActiveOperations,
fileCopyAs,
setConvertPasswordDialogVisible,
setConvertItem,
setFormCreationInfo,
replaceFileStream,
setEncryptionAccess,
}) => {
const [visible, setVisible] = React.useState(false);
const [startValue, setStartValue] = React.useState("");
const { t } = useTranslation(["Home", "Translations", "Common"]);
const { t } = useTranslation(["Home"]);
React.useEffect(() => {
setStartValue(getTitleWithoutExst(item, false));
@ -58,14 +34,6 @@ const RenameEvent = ({
setVisible(true);
}, [item]);
const completeAction = (id) => {
const isCancel =
(id.currentTarget && id.currentTarget.dataset.action === "cancel") ||
id.keyCode === 27;
editCompleteAction(id, item, isCancel, type);
};
const onUpdate = React.useCallback((e, value) => {
const originalTitle = getTitleWithoutExst(item);
@ -89,7 +57,7 @@ const RenameEvent = ({
isFile
? updateFile(item.id, value)
.then(() => completeAction(item.id))
.then(() => editCompleteAction(item.id, item, false, type))
.then(() =>
toastr.success(
t("FileRenamed", {
@ -100,7 +68,7 @@ const RenameEvent = ({
)
.catch((err) => {
toastr.error(err);
completeAction(item.id);
editCompleteAction(item.id, item, false, type);
})
.finally(() => {
clearTimeout(timerId);
@ -111,7 +79,7 @@ const RenameEvent = ({
onClose();
})
: renameFolder(item.id, value)
.then(() => completeAction(item.id))
.then(() => editCompleteAction(item.id, item, false, type))
.then(() =>
toastr.success(
t("FolderRenamed", {
@ -122,7 +90,7 @@ const RenameEvent = ({
)
.catch((err) => {
toastr.error(err);
completeAction(item.id);
editCompleteAction(item.id, item, false, type);
})
.finally(() => {
clearTimeout(timerId);
@ -153,75 +121,21 @@ const RenameEvent = ({
);
};
export default inject(
({
auth,
filesStore,
filesActionsStore,
selectedFolderStore,
treeFoldersStore,
uploadDataStore,
dialogsStore,
}) => {
const {
setIsLoading,
createFile,
createFolder,
addActiveItems,
openDocEditor,
setIsUpdatingRowItem,
gallerySelected,
export default inject(({ filesStore, filesActionsStore, uploadDataStore }) => {
const { setIsLoading, addActiveItems, updateFile, renameFolder } = filesStore;
updateFile,
renameFolder,
} = filesStore;
const { editCompleteAction } = filesActionsStore;
const { editCompleteAction } = filesActionsStore;
const { clearActiveOperations } = uploadDataStore;
const { clearActiveOperations, fileCopyAs } = uploadDataStore;
return {
setIsLoading,
addActiveItems,
updateFile,
renameFolder,
const { isRecycleBinFolder, isPrivacyFolder } = treeFoldersStore;
editCompleteAction,
const { id: parentId } = selectedFolderStore;
const { replaceFileStream, setEncryptionAccess } = auth;
const { isDesktopClient } = auth.settingsStore;
const {
setConvertPasswordDialogVisible,
setConvertItem,
setFormCreationInfo,
} = dialogsStore;
return {
setIsLoading,
createFile,
createFolder,
addActiveItems,
openDocEditor,
setIsUpdatingRowItem,
gallerySelected,
updateFile,
renameFolder,
parentId,
isDesktop: isDesktopClient,
isPrivacy: isPrivacyFolder,
isTrashFolder: isRecycleBinFolder,
editCompleteAction,
clearActiveOperations,
fileCopyAs,
setConvertPasswordDialogVisible,
setConvertItem,
setFormCreationInfo,
replaceFileStream,
setEncryptionAccess,
};
}
)(observer(RenameEvent));
clearActiveOperations,
};
})(observer(RenameEvent));

View File

@ -43,8 +43,6 @@ const Dialog = ({ title, startValue, visible, onSave, onCancel, onClose }) => {
e.target.select();
}, []);
const onBlur = React.useCallback((e) => {}, []);
const onSaveAction = React.useCallback(
(e) => {
setIsDisabled(true);
@ -76,7 +74,6 @@ const Dialog = ({ title, startValue, visible, onSave, onCancel, onClose }) => {
tabIndex={1}
onChange={onChange}
onFocus={onFocus}
onBlur={onBlur}
isDisabled={isDisabled}
/>
</ModalDialog.Body>