Move currentBrew/lastSavedBrew update after saving to common hook

This commit is contained in:
Trevor Buckner
2026-10-05 18:06:02 +00:00
parent c5e9e2f8e1
commit 766fc73dbc
4 changed files with 20 additions and 29 deletions
+3 -13
View File
@@ -103,23 +103,13 @@ const EditPage = (props)=>{
if(!res) return;
const updatedFields = {
googleId : res.body.googleId ?? null,
editId : res.body.editId,
googleId : res.body.googleId ?? null, //TODO: investigate if we can set googleId:null in server/update instead of undefined
editId : res.body.editId, //then, editPage can just apply res.body instead of breaking out these fields.
shareId : res.body.shareId,
version : res.body.version
};
lastSavedBrew.current = {
...brew,
...updatedFields
};
setCurrentBrew((prevBrew)=>({
...prevBrew,
...updatedFields
}));
return res.body;
return updatedFields;
};
const onSaveSuccess = (savedBrew)=>{
+3 -8
View File
@@ -22,9 +22,9 @@ const HomePage =(props)=>{
...props
};
const [currentBrew, setCurrentBrew] = useState(props.brew);
const [saveGoogle, setSaveGoogle] = useState(global.account?.googleId ? true : false);
const [error, setError] = useState(undefined);
const [currentBrew, setCurrentBrew] = useState(props.brew);
const [saveGoogle, setSaveGoogle] = useState(global.account?.googleId ? true : false);
const [error, setError] = useState(undefined);
const lastSavedBrew = useRef(_.cloneDeep(props.brew));
@@ -38,11 +38,6 @@ const HomePage =(props)=>{
});
if(!res) return;
setCurrentBrew((prevBrew)=>({
...prevBrew,
...res.body
}));
return res.body;
};
+2 -7
View File
@@ -23,8 +23,8 @@ const NewPage = (props)=>{
};
const [currentBrew, setCurrentBrew] = useState(props.brew);
const [saveGoogle, setSaveGoogle] = useState(global.account?.googleId ? true : false);
const [error, setError] = useState(null);
const [saveGoogle, setSaveGoogle] = useState(global.account?.googleId ? true : false);
const [error, setError] = useState(null);
const lastSavedBrew = useRef(_.cloneDeep(props.brew));
@@ -46,11 +46,6 @@ const NewPage = (props)=>{
});
if(!res) return;
setCurrentBrew((prevBrew)=>({
...prevBrew,
...res.body
}));
return res.body;
};
@@ -202,9 +202,20 @@ export default function useCommonEditPageFunctions(dependencies) {
setIsSaving(true);
setError(null);
setHTMLErrors(hbfm.validate(currentBrew.text));
let savedBrew = await save(currentBrew, saveToGoogle)
const brewToSave = currentBrew;
let savedBrew = await save(brewToSave, saveToGoogle)
.catch((err)=>{setError(err);});
if(savedBrew) {
lastSavedBrew.current = {
...brewToSave,
...savedBrew
};
setCurrentBrew((prevBrew)=>({
...prevBrew,
...savedBrew
}));
if(useLocalStorage) clearLocalStorage();
onSaveSuccess(savedBrew);
}