refactor: lade OPC UA Daten direkt in NetworkInfo-Komponente statt global in _app.tsx

- Thunk `fetchOpcUaSettingsThunk` wird jetzt nur bei Anzeige von NetworkInfo ausgeführt
- Reduzierte Netzwerklast und bessere Trennung von Zuständigkeiten
- Entfernt globalen OPC UA-Aufruf aus _app.tsx
This commit is contained in:
ISA
2025-03-26 10:45:00 +01:00
parent 0bbc2a25a6
commit 7b85ebc730
9 changed files with 59 additions and 100 deletions

View File

@@ -1,3 +1,4 @@
// /redux/thunks/fetchLast20MessagesThunk.ts
import { createAsyncThunk } from "@reduxjs/toolkit";
import { fetchLast20MessagesFromWindow } from "../../services/fetchLast20Messages";
import { setLast20Messages } from "../slices/last20MessagesSlice";

View File

@@ -0,0 +1,24 @@
// ✅ 2. Thunk: /redux/thunks/fetchOpcUaSettingsThunk.ts
import { createAsyncThunk } from "@reduxjs/toolkit";
import { fetchOpcUaSettings } from "../../services/fetchOpcUaSettings";
import {
setOpcUaZustand,
setOpcUaEncryption,
setOpcUaActiveClientCount,
setOpcUaNodesetName,
setOpcUaUsers,
} from "../slices/opcuaSettingsSlice";
export const fetchOpcUaSettingsThunk = createAsyncThunk(
"opcuaSettings/fetch",
async (_, { dispatch }) => {
const data = await fetchOpcUaSettings();
if (!data) return;
dispatch(setOpcUaZustand(data.zustand));
dispatch(setOpcUaEncryption(data.encryption));
dispatch(setOpcUaActiveClientCount(data.clientCount));
dispatch(setOpcUaNodesetName(data.nodesetName));
dispatch(setOpcUaUsers(data.users));
}
);