Merge branch 'bug/cancel-removes-widgets' into 'main'

Fix state not being saved before entering edit or delete modes

See merge request vkuchenik/website-framework!61
This commit is contained in:
Dan Hansen
2025-08-12 21:03:54 +00:00
2 changed files with 7 additions and 4 deletions
+4 -2
View File
@@ -72,7 +72,8 @@ export default function Home({...props}) {
const onEditWidgets = () => {
console.log("widgets are now editable");
setOriginalLayout(layout); // Backup layout before editing
beginEditIfNeeded(); // Save state before anything else
// setOriginalLayout(layout); // Backup layout before editing
// Set all widgets to editable, static: false
setLayout(prevLayout =>
prevLayout.map(item => ({
@@ -100,7 +101,8 @@ export default function Home({...props}) {
const onDeleteWidgets = () => {
console.log("Start deleting widgets...");
setOriginalLayout(layout);
beginEditIfNeeded(); // Save state before anything else
// setOriginalLayout(layout);
setIsEditable(true);
setIsDelete(true);
}
+3 -2
View File
@@ -30,13 +30,14 @@ export default function Dashboard() {
const onCancel = () => {
console.log("canceling changes...");
console.log(originalWidgets);
if (originalLayout.length) {
setLayout(originalLayout.map(item => ({
...item,
static: true
})));
};
setWidgetArray(originalWidgets.length ? originalWidgets : []);
setWidgetArray(originalWidgets);
setIsEditable(false);
setIsDelete(false);
setOriginalLayout([]);
@@ -64,7 +65,7 @@ export default function Dashboard() {
// Prop Forwarding
const canvasProps = { view, layout, setLayout, setOriginalLayout, onLayoutChange, onChangeView: handleViewChange,
onCancel, isEditable, setIsEditable, isDelete, setIsDelete, widgetArray, setWidgetArray, setOriginalWidgets, beginEditIfNeeded
onCancel, isEditable, setIsEditable, isDelete, setIsDelete, widgetArray, setWidgetArray, originalWidgets, setOriginalWidgets, beginEditIfNeeded
};
const sidebarProps = { view, onChangeView: handleViewChange, darkMode, setDarkMode };
const headerProps = { onChangeView: handleViewChange };