// ✅ Slice: /redux/slices/kueDataSlice.ts import { createSlice, PayloadAction } from "@reduxjs/toolkit"; interface KueDataState { //--------------------- kueBezeichnungen: string[]; isolationsgrenzwerte: number[]; verzoegerung: number[]; untereSchleifenGrenzwerte: number[]; obereSchleifenGrenzwerte: number[]; schleifenintervall: number[]; //--------------- counter: number | null; flutter: string | null; //----------------------- //----------------------- kueOnline: number[]; kueID: string[]; kueName: string[]; kuePSTmMinus96V: number[]; kueAlarm1: number[]; kueAlarm2: number[]; kueIso: number[]; kueResidence: number[]; kueCableBreak: number[]; kueGroundFault: number[]; kueLimit1: number[]; kueLimit2Low: number[]; kueDelay1: number[]; kueLoopInterval: number[]; kueVersion: number[]; kueOverflow: number[]; tdrAtten: number[]; tdrPulse: number[]; tdrSpeed: number[]; tdrAmp: number[]; tdrTrigger: number[]; tdrLocation: number[]; tdrActive: number[]; tdrLast: string[]; tdrOverflow: number[]; kueLimit2High: number[]; memoryInterval: number[]; // Fallsensors win_fallSensorsActive: number[]; // KVZ System - 32 Slots mit je 4 LEDs kvzPresence: number[]; // 32 Werte: 1 = KVZ vorhanden, 0 = nicht vorhanden kvzActive: number[]; // 32 Werte: 1 = KVZ aktiviert, 0 = deaktiviert kvzStatus: number[]; // 128 Werte: 4 LEDs pro Slot (32 * 4) } const initialState: KueDataState = { //--------------------- kueBezeichnungen: [], isolationsgrenzwerte: [], verzoegerung: [], untereSchleifenGrenzwerte: [], obereSchleifenGrenzwerte: [], schleifenintervall: [], //--------------- counter: null, flutter: null, //----------------------- //----------------------- kueOnline: [], kueID: [], kueName: [], kuePSTmMinus96V: [], kueAlarm1: [], kueAlarm2: [], kueIso: [], kueResidence: [], kueCableBreak: [], kueGroundFault: [], kueLimit1: [], kueLimit2Low: [], kueDelay1: [], kueLoopInterval: [], kueVersion: [], kueOverflow: [], tdrAtten: [], tdrPulse: [], tdrSpeed: [], tdrAmp: [], tdrTrigger: [], tdrLocation: [], tdrActive: [], tdrLast: [], tdrOverflow: [], kueLimit2High: [], memoryInterval: [], // Fallsensors win_fallSensorsActive: [], // Fallsensors aktiv // KVZ System - 32 Slots mit je 4 LEDs kvzPresence: new Array(32).fill(0), // 32 Slots: 1 = KVZ vorhanden, 0 = nicht vorhanden kvzActive: new Array(32).fill(0), // 32 Slots: 1 = KVZ aktiviert, 0 = deaktiviert kvzStatus: new Array(128).fill(0), // 128 LEDs: 4 LEDs pro Slot (32 * 4) }; const kueDataSlice = createSlice({ name: "kueDataSlice", initialState, reducers: { setKueData: (state, action: PayloadAction>) => { return { ...state, ...action.payload }; }, }, }); export const { setKueData } = kueDataSlice.actions; export default kueDataSlice.reducer;