refactor: Seitenkomponenten ausgelagert in View-Komponenten
- meldungen.tsx → MeldungenView.tsx erstellt → beinhaltet Filterleiste, Tabellenansicht und Datenabruf - system.tsx → SystemView.tsx ausgelagert → verbessert Lesbarkeit und Trennung von Routing und Inhalt - View-Suffix verwendet für klare Struktur (Page = Entry, View = Inhalt)
This commit is contained in:
109
redux/store.ts
109
redux/store.ts
@@ -1,6 +1,7 @@
|
||||
// /redux/store.ts
|
||||
import { configureStore } from "@reduxjs/toolkit";
|
||||
import { useDispatch } from "react-redux";
|
||||
import { persistReducer, persistStore } from "redux-persist";
|
||||
import storage from "redux-persist/lib/storage"; // = localStorage
|
||||
import authReducer from "./slices/authSlice";
|
||||
import kueChartModeReducer from "./slices/kueChartModeSlice";
|
||||
import webVersionReducer from "./slices/webVersionSlice";
|
||||
@@ -35,48 +36,78 @@ import systemspannung15VplusReducer from "./slices/systemspannung15VplusSlice";
|
||||
import systemspannung98VminusReducer from "./slices/systemspannung98VminusSlice";
|
||||
import temperaturAdWandlerReducer from "./slices/temperaturAdWandlerSlice";
|
||||
import temperaturProzessorReducer from "./slices/temperaturProzessorSlice";
|
||||
import { combineReducers } from "@reduxjs/toolkit";
|
||||
import { useDispatch, useSelector, TypedUseSelectorHook } from "react-redux";
|
||||
|
||||
const store = configureStore({
|
||||
reducer: {
|
||||
authSlice: authReducer,
|
||||
kueChartModeSlice: kueChartModeReducer,
|
||||
webVersionSlice: webVersionReducer,
|
||||
digitalInputsSlice: digitalInputsReducer,
|
||||
kabelueberwachungChartSlice: kabelueberwachungChartReducer,
|
||||
last20MessagesSlice: last20MessagesReducer,
|
||||
systemSettingsSlice: systemSettingsReducer,
|
||||
opcuaSettingsSlice: opcuaSettingsReducer,
|
||||
digitalOutputsSlice: digitalOutputsReducer,
|
||||
analogInputs: analogInputsSlice,
|
||||
brushSlice: brushReducer,
|
||||
tdrChartSlice: tdrChartReducer,
|
||||
tdrReferenceChartSlice: tdrReferenceChartReducer,
|
||||
loopChartSlice: loopChartReducer,
|
||||
tdmChartSlice: tdmChartReducer,
|
||||
tdrDataByIdSlice: tdrDataByIdReducer,
|
||||
kueDataSlice: kueDataReducer,
|
||||
selectedChartDataSlice: selectedChartDataReducer,
|
||||
tdmSingleChartSlice: tdmSingleChartReducer,
|
||||
tdrReferenceChartDataBySlotSlice: tdrReferenceChartDataBySlotReducer,
|
||||
loopChartType: loopChartTypeSlice,
|
||||
systemVoltTemp: systemVoltTempReducer,
|
||||
analogInputsHistory: analogInputsHistoryReducer,
|
||||
selectedAnalogInput: selectedAnalogInputReducer,
|
||||
messages: messagesReducer,
|
||||
firmwareUpdate: firmwareUpdateReducer,
|
||||
confirmModal: confirmModalReducer,
|
||||
firmwareProgress: firmwareProgressReducer,
|
||||
systemspannung5Vplus: systemspannung5VplusReducer,
|
||||
systemspannung15Vminus: systemspannung15VminusReducer,
|
||||
systemspannung15Vplus: systemspannung15VplusReducer,
|
||||
systemspannung98Vminus: systemspannung98VminusReducer,
|
||||
temperaturAdWandler: temperaturAdWandlerReducer,
|
||||
temperaturProzessor: temperaturProzessorReducer,
|
||||
},
|
||||
//---------------------------------------
|
||||
// 🧠 Nur diese Slices werden persistiert
|
||||
const persistConfig = {
|
||||
key: "root",
|
||||
storage,
|
||||
whitelist: [
|
||||
"systemspannung5Vplus",
|
||||
"systemspannung15Vplus",
|
||||
"systemspannung15Vminus",
|
||||
"systemspannung98Vminus",
|
||||
"temperaturAdWandler",
|
||||
"temperaturProzessor",
|
||||
],
|
||||
};
|
||||
|
||||
const rootReducer = combineReducers({
|
||||
systemspannung5Vplus: systemspannung5VplusReducer,
|
||||
systemspannung15Vplus: systemspannung15VplusReducer,
|
||||
systemspannung15Vminus: systemspannung15VminusReducer,
|
||||
systemspannung98Vminus: systemspannung98VminusReducer,
|
||||
temperaturAdWandler: temperaturAdWandlerReducer,
|
||||
temperaturProzessor: temperaturProzessorReducer,
|
||||
// Die restlichen Slices werden nicht persistiert, aber können hier auch aufgenommen werden,
|
||||
// falls sie Teil des globalen States sein sollen:
|
||||
authSlice: authReducer,
|
||||
kueChartModeSlice: kueChartModeReducer,
|
||||
webVersionSlice: webVersionReducer,
|
||||
digitalInputsSlice: digitalInputsReducer,
|
||||
kabelueberwachungChartSlice: kabelueberwachungChartReducer,
|
||||
last20MessagesSlice: last20MessagesReducer,
|
||||
systemSettingsSlice: systemSettingsReducer,
|
||||
opcuaSettingsSlice: opcuaSettingsReducer,
|
||||
digitalOutputsSlice: digitalOutputsReducer,
|
||||
analogInputs: analogInputsSlice,
|
||||
brushSlice: brushReducer,
|
||||
tdrChartSlice: tdrChartReducer,
|
||||
tdrReferenceChartSlice: tdrReferenceChartReducer,
|
||||
loopChartSlice: loopChartReducer,
|
||||
tdmChartSlice: tdmChartReducer,
|
||||
tdrDataByIdSlice: tdrDataByIdReducer,
|
||||
kueDataSlice: kueDataReducer,
|
||||
selectedChartDataSlice: selectedChartDataReducer,
|
||||
tdmSingleChartSlice: tdmSingleChartReducer,
|
||||
tdrReferenceChartDataBySlotSlice: tdrReferenceChartDataBySlotReducer,
|
||||
loopChartType: loopChartTypeSlice,
|
||||
systemVoltTemp: systemVoltTempReducer,
|
||||
analogInputsHistory: analogInputsHistoryReducer,
|
||||
selectedAnalogInput: selectedAnalogInputReducer,
|
||||
messages: messagesReducer,
|
||||
firmwareUpdate: firmwareUpdateReducer,
|
||||
confirmModal: confirmModalReducer,
|
||||
firmwareProgress: firmwareProgressReducer,
|
||||
});
|
||||
|
||||
const persistedReducer = persistReducer(persistConfig, rootReducer);
|
||||
|
||||
//-------------------------------------------
|
||||
|
||||
export const store = configureStore({
|
||||
reducer: persistedReducer,
|
||||
});
|
||||
|
||||
export const persistor = persistStore(store);
|
||||
|
||||
// Typisierte Hooks
|
||||
export type RootState = ReturnType<typeof store.getState>;
|
||||
export type AppDispatch = typeof store.dispatch;
|
||||
export const useAppDispatch: () => AppDispatch = useDispatch; // ✅ Typisierte Dispatch-Funktion
|
||||
|
||||
export const useAppDispatch = () => useDispatch<AppDispatch>();
|
||||
export const useAppSelector: TypedUseSelectorHook<RootState> = useSelector;
|
||||
|
||||
export default store;
|
||||
|
||||
Reference in New Issue
Block a user