Files
CPLv4.0/redux/slices/brushSlice.ts
Ismail Ali da28d64f8c feat(chart): X-Achsen-Labels optimiert für bessere Lesbarkeit
- Jahreszahl aus der X-Achse entfernt, um die Darstellung kompakter zu machen.
- Datumsformat von `TT.MM.YYYY` auf `TT.MM` geändert.
- Achsenbeschriftung um 25° gedreht (`angle: -25`) für bessere Übersicht.
- `dy: 5` hinzugefügt, um die Abstände der Labels anzupassen.
2025-03-15 11:42:17 +01:00

43 lines
1.1 KiB
TypeScript

// brushSlice.ts
import { createSlice } from "@reduxjs/toolkit";
interface BrushState {
startIndex: number;
endIndex: number;
startDate: string | null;
endDate: string | null;
isBrushReset: boolean; // 🆕 Hinzugefügt für zuverlässigen Reset
}
const initialState: BrushState = {
startIndex: 0,
endIndex: 0,
startDate: null,
endDate: null,
isBrushReset: false, // 🆕
};
const brushSlice = createSlice({
name: "brush",
initialState,
reducers: {
setBrushRange(state, action) {
state.startIndex = action.payload.startIndex;
state.endIndex = action.payload.endIndex;
state.startDate = action.payload.startDate || state.startDate;
state.endDate = action.payload.endDate || state.endDate;
state.isBrushReset = false; // 🆕 Sobald Brush gesetzt wird, Reset zurücksetzen
},
resetBrushRange(state) {
state.startIndex = 0;
state.endIndex = 0;
state.startDate = null;
state.endDate = null;
state.isBrushReset = true; // 🆕 Status für Reset setzen
},
},
});
export const { setBrushRange, resetBrushRange } = brushSlice.actions;
export default brushSlice.reducer;