From fd108d9a66c2b944a9d2016c088900016aae704a Mon Sep 17 00:00:00 2001 From: Elyor Djalilov Date: Tue, 10 Jan 2023 21:35:59 +0500 Subject: [PATCH] added functionality to create a file without a dialog --- .../components/GlobalEvents/CreateEvent.js | 18 ++- .../src/components/GlobalEvents/index.js | 3 + .../GlobalEvents/sub-components/Dialog.js | 29 ++--- .../Settings/Section/Body/CommonSettings.js | 103 +++++++++--------- packages/client/src/store/FilesStore.js | 7 ++ 5 files changed, 94 insertions(+), 66 deletions(-) diff --git a/packages/client/src/components/GlobalEvents/CreateEvent.js b/packages/client/src/components/GlobalEvents/CreateEvent.js index a08a60a1e5..deae9bed1a 100644 --- a/packages/client/src/components/GlobalEvents/CreateEvent.js +++ b/packages/client/src/components/GlobalEvents/CreateEvent.js @@ -21,7 +21,7 @@ const CreateEvent = ({ templateId, fromTemplate, onClose, - + onCreate, setIsLoading, createFile, createFolder, @@ -49,6 +49,8 @@ const CreateEvent = ({ setEventDialogVisible, eventDialogVisible, + setIsChecked, + isChecked, }) => { const [headerTitle, setHeaderTitle] = React.useState(null); const [startValue, setStartValue] = React.useState(""); @@ -74,7 +76,13 @@ const CreateEvent = ({ } setHeaderTitle(defaultName); - setEventDialogVisible(true); + + if (!isChecked) { + setEventDialogVisible(true); + } else { + onSave(null, defaultName); + setIsChecked(true); + } return () => { setEventDialogVisible(false); @@ -198,7 +206,6 @@ const CreateEvent = ({ createdFileId = file.id; setCreatedItem({ id: createdFileId, type: "file" }); addActiveItems([file.id]); - return open && openDocEditor(file.id, file.providerKey, tab); }) .then(() => editCompleteAction(item, type)) @@ -267,6 +274,7 @@ const CreateEvent = ({ onSave={onSave} onCancel={onCancel} onClose={onCloseAction} + onCreate={onCreate} /> ); }; @@ -313,6 +321,8 @@ export default inject( eventDialogVisible, } = dialogsStore; + const { setIsChecked, isChecked } = filesStore; + return { setEventDialogVisible, eventDialogVisible, @@ -341,6 +351,8 @@ export default inject( replaceFileStream, setEncryptionAccess, + setIsChecked, + isChecked, }; } )(observer(CreateEvent)); diff --git a/packages/client/src/components/GlobalEvents/index.js b/packages/client/src/components/GlobalEvents/index.js index a54cbe24cd..f6f46a172f 100644 --- a/packages/client/src/components/GlobalEvents/index.js +++ b/packages/client/src/components/GlobalEvents/index.js @@ -11,6 +11,7 @@ import EditRoomEvent from "./EditRoomEvent"; const GlobalEvents = () => { const [createDialogProps, setCreateDialogProps] = useState({ visible: false, + onCreate: false, id: null, type: null, extension: null, @@ -44,6 +45,7 @@ const GlobalEvents = () => { setCreateDialogProps({ visible: visible, + onCreate: true, id: payload.id, type: FileAction.Create, extension: payload.extension, @@ -53,6 +55,7 @@ const GlobalEvents = () => { onClose: () => { setCreateDialogProps({ visible: false, + onCreate: false, id: null, type: null, extension: null, diff --git a/packages/client/src/components/GlobalEvents/sub-components/Dialog.js b/packages/client/src/components/GlobalEvents/sub-components/Dialog.js index 5bd93af596..f6570495a2 100644 --- a/packages/client/src/components/GlobalEvents/sub-components/Dialog.js +++ b/packages/client/src/components/GlobalEvents/sub-components/Dialog.js @@ -21,12 +21,12 @@ const Dialog = ({ onSave, onCancel, onClose, + onCreate, + isChecked, + setIsChecked, }) => { const [value, setValue] = useState(""); const [isDisabled, setIsDisabled] = useState(false); - const [isChecked, setIsChecked] = useState( - localStorage.getItem("checked") === "false" - ); useEffect(() => { let input = document?.getElementById("create-text-input"); @@ -91,8 +91,7 @@ const Dialog = ({ ); const onChangeCheckbox = () => { - setIsChecked((prev) => !prev); - localStorage.setItem("checked", `${isChecked}`); + setIsChecked(!isChecked); }; return ( @@ -114,12 +113,15 @@ const Dialog = ({ tabIndex={1} onChange={onChange} onFocus={onFocus} - isDisabled={isChecked} + isDisabled={isDisabled} /> - - - {t("Common:DontAskAgain")} - + {onCreate && ( + + + {t("Common:DontAskAgain")} + + )} + {options && (