WIP: KÜ Modal Einstellung Bezeichnung funktioniert, aber die andere Werte muss noch bearbeitet werden
This commit is contained in:
@@ -1,9 +1,11 @@
|
|||||||
"use client"; // KueEinstellung.tsx – komplett angepasst mit window.__kueCache zum Schutz vor Remount-Reset
|
// KueEinstellung.tsx – vollständige Version mit handleSave eingebunden
|
||||||
|
|
||||||
import { useEffect, useState } from "react";
|
"use client";
|
||||||
import { useDispatch, useSelector } from "react-redux";
|
|
||||||
|
import { useState } from "react";
|
||||||
|
import { useSelector, useDispatch } from "react-redux";
|
||||||
import type { RootState } from "../../../../../redux/store";
|
import type { RootState } from "../../../../../redux/store";
|
||||||
import { setKueData } from "../../../../../redux/slices/kueDataSlice";
|
import handleSave from "../handlers/handleSave";
|
||||||
import handleDisplayEinschalten from "../handlers/handleDisplayEinschalten";
|
import handleDisplayEinschalten from "../handlers/handleDisplayEinschalten";
|
||||||
import firmwareUpdate from "../handlers/firmwareUpdate";
|
import firmwareUpdate from "../handlers/firmwareUpdate";
|
||||||
import { useAdminAuth } from "../../../settingsPageComponents/hooks/useAdminAuth";
|
import { useAdminAuth } from "../../../settingsPageComponents/hooks/useAdminAuth";
|
||||||
@@ -31,8 +33,8 @@ export default function KueEinstellung({
|
|||||||
slot,
|
slot,
|
||||||
showModal,
|
showModal,
|
||||||
onClose = () => {},
|
onClose = () => {},
|
||||||
|
onModulNameChange,
|
||||||
}: Props) {
|
}: Props) {
|
||||||
const dispatch = useDispatch();
|
|
||||||
const {
|
const {
|
||||||
kueID,
|
kueID,
|
||||||
kueLimit1,
|
kueLimit1,
|
||||||
@@ -43,12 +45,12 @@ export default function KueEinstellung({
|
|||||||
} = useSelector((state: RootState) => state.kueDataSlice);
|
} = useSelector((state: RootState) => state.kueDataSlice);
|
||||||
|
|
||||||
const { isAdminLoggedIn } = useAdminAuth(true);
|
const { isAdminLoggedIn } = useAdminAuth(true);
|
||||||
|
const dispatch = useDispatch();
|
||||||
|
|
||||||
const formCacheKey = `slot_${slot}`;
|
const formCacheKey = `slot_${slot}`;
|
||||||
if (typeof window !== "undefined") {
|
if (typeof window !== "undefined") {
|
||||||
window.__kueCache = window.__kueCache || {};
|
window.__kueCache = window.__kueCache || {};
|
||||||
}
|
}
|
||||||
|
|
||||||
const cached =
|
const cached =
|
||||||
typeof window !== "undefined" ? window.__kueCache?.[formCacheKey] : null;
|
typeof window !== "undefined" ? window.__kueCache?.[formCacheKey] : null;
|
||||||
|
|
||||||
@@ -68,7 +70,7 @@ export default function KueEinstellung({
|
|||||||
const updated = { ...formData, [key]: value };
|
const updated = { ...formData, [key]: value };
|
||||||
setFormData(updated);
|
setFormData(updated);
|
||||||
if (typeof window !== "undefined") {
|
if (typeof window !== "undefined") {
|
||||||
window.__kueCache[formCacheKey] = updated;
|
window.__kueCache![formCacheKey] = updated;
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -91,22 +93,32 @@ export default function KueEinstellung({
|
|||||||
const updatedMemoryInterval = [...memoryInterval];
|
const updatedMemoryInterval = [...memoryInterval];
|
||||||
updatedMemoryInterval[slot] = Number(formData.memoryInterval);
|
updatedMemoryInterval[slot] = Number(formData.memoryInterval);
|
||||||
|
|
||||||
dispatch(
|
handleSave({
|
||||||
setKueData({
|
ids: updatedKueID,
|
||||||
kueID: updatedKueID,
|
isolationsgrenzwerte: updatedLimit1,
|
||||||
kueLimit1: updatedLimit1,
|
verzoegerung: updatedDelay1,
|
||||||
kueDelay1: updatedDelay1,
|
untereSchleifenGrenzwerte: updatedLimit2Low,
|
||||||
kueLimit2Low: updatedLimit2Low,
|
obereSchleifenGrenzwerte: updatedLimit2Low,
|
||||||
kueLoopInterval: updatedLoopInterval,
|
schleifenintervall: updatedLoopInterval,
|
||||||
memoryInterval: updatedMemoryInterval,
|
speicherintervall: updatedMemoryInterval,
|
||||||
})
|
originalValues: {
|
||||||
);
|
kueID,
|
||||||
|
isolationsgrenzwerte: kueLimit1,
|
||||||
|
verzoegerung: kueDelay1,
|
||||||
|
untereSchleifenGrenzwerte: kueLimit2Low,
|
||||||
|
obereSchleifenGrenzwerte: kueLimit2Low,
|
||||||
|
schleifenintervall: kueLoopInterval,
|
||||||
|
speicherintervall: memoryInterval,
|
||||||
|
},
|
||||||
|
slot,
|
||||||
|
dispatch, // du kannst dispatch hier übergeben, falls nötig
|
||||||
|
onModulNameChange: onModulNameChange ?? (() => {}),
|
||||||
|
onClose,
|
||||||
|
});
|
||||||
|
|
||||||
if (typeof window !== "undefined") {
|
if (typeof window !== "undefined") {
|
||||||
delete window.__kueCache[formCacheKey];
|
delete window.__kueCache?.[formCacheKey];
|
||||||
}
|
}
|
||||||
|
|
||||||
onClose();
|
|
||||||
};
|
};
|
||||||
|
|
||||||
return (
|
return (
|
||||||
|
|||||||
@@ -6,5 +6,5 @@
|
|||||||
2: Patch oder Hotfix (Bugfixes oder kleine Änderungen).
|
2: Patch oder Hotfix (Bugfixes oder kleine Änderungen).
|
||||||
|
|
||||||
*/
|
*/
|
||||||
const webVersion = "1.6.316";
|
const webVersion = "1.6.317";
|
||||||
export default webVersion;
|
export default webVersion;
|
||||||
|
|||||||
@@ -11,24 +11,11 @@
|
|||||||
"allowSyntheticDefaultImports": true,
|
"allowSyntheticDefaultImports": true,
|
||||||
"noEmit": true,
|
"noEmit": true,
|
||||||
"skipLibCheck": true,
|
"skipLibCheck": true,
|
||||||
"types": [
|
"types": ["cypress", "node"],
|
||||||
"cypress",
|
"lib": ["dom", "dom.iterable", "esnext"],
|
||||||
"node"
|
|
||||||
],
|
|
||||||
"lib": [
|
|
||||||
"dom",
|
|
||||||
"dom.iterable",
|
|
||||||
"esnext"
|
|
||||||
],
|
|
||||||
"allowJs": true,
|
"allowJs": true,
|
||||||
"incremental": true
|
"incremental": true
|
||||||
},
|
},
|
||||||
"include": [
|
"include": ["src", "**/*.test.ts", "**/*.test.tsx", "types/global.d.ts"],
|
||||||
"src",
|
"exclude": ["node_modules"]
|
||||||
"**/*.test.ts",
|
|
||||||
"**/*.test.tsx"
|
|
||||||
],
|
|
||||||
"exclude": [
|
|
||||||
"node_modules"
|
|
||||||
]
|
|
||||||
}
|
}
|
||||||
|
|||||||
9
types/global.d.ts
vendored
Normal file
9
types/global.d.ts
vendored
Normal file
@@ -0,0 +1,9 @@
|
|||||||
|
// types/global.d.ts
|
||||||
|
export {};
|
||||||
|
|
||||||
|
declare global {
|
||||||
|
interface Window {
|
||||||
|
__kueCache?: Record<string, any>;
|
||||||
|
kabelModalOpen?: boolean; // ✅ HIER NEU
|
||||||
|
}
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user