Skip to content

Commit 40e401c

Browse files
committed
front: remove StdcmConfSliceActions casts
Signed-off-by: Clara Ni <[email protected]>
1 parent 84d3624 commit 40e401c

File tree

12 files changed

+51
-54
lines changed

12 files changed

+51
-54
lines changed

front/src/applications/stdcm/components/StdcmForm/StdcmConfig.tsx

+2-3
Original file line numberDiff line numberDiff line change
@@ -12,11 +12,11 @@ import {
1212
validateTotalLength,
1313
validateTotalMass,
1414
} from 'applications/stdcm/utils/consistValidation';
15-
import { useOsrdConfActions, useOsrdConfSelectors } from 'common/osrdContext';
15+
import { useOsrdConfSelectors } from 'common/osrdContext';
1616
import useInfraStatus from 'modules/pathfinding/hooks/useInfraStatus';
1717
import { useStoreDataForRollingStockSelector } from 'modules/rollingStock/components/RollingStockSelector/useStoreDataForRollingStockSelector';
1818
import NewMap from 'modules/trainschedule/components/ManageTrainSchedule/NewMap';
19-
import { type StdcmConfSliceActions, resetMargins } from 'reducers/osrdconf/stdcmConf';
19+
import { resetMargins, restoreStdcmConfig, updateStdcmPathStep } from 'reducers/osrdconf/stdcmConf';
2020
import {
2121
getMaxSpeed,
2222
getStdcmDestination,
@@ -73,7 +73,6 @@ const StdcmConfig = ({
7373

7474
const { infra } = useInfraStatus();
7575
const dispatch = useAppDispatch();
76-
const { updateStdcmPathStep, restoreStdcmConfig } = useOsrdConfActions() as StdcmConfSliceActions;
7776

7877
const { getProjectID, getScenarioID, getStudyID } = useOsrdConfSelectors();
7978
const origin = useSelector(getStdcmOrigin);

front/src/applications/stdcm/components/StdcmForm/StdcmConsist.tsx

+2-3
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ import RollingStock2Img from 'modules/rollingStock/components/RollingStock2Img';
1616
import { useStoreDataForRollingStockSelector } from 'modules/rollingStock/components/RollingStockSelector/useStoreDataForRollingStockSelector';
1717
import useFilterRollingStock from 'modules/rollingStock/hooks/useFilterRollingStock';
1818
import useFilterTowedRollingStock from 'modules/towedRollingStock/hooks/useFilterTowedRollingStock';
19-
import { type StdcmConfSliceActions } from 'reducers/osrdconf/stdcmConf';
19+
import { updateTowedRollingStockID } from 'reducers/osrdconf/stdcmConf';
2020
import { useAppDispatch } from 'store';
2121
import { kgToT, kmhToMs, msToKmh } from 'utils/physics';
2222

@@ -48,8 +48,7 @@ const StdcmConsist = ({ isDebugMode, consistErrors = {}, disabled = false }: Std
4848
const { speedLimitByTag, speedLimitsByTags, dispatchUpdateSpeedLimitByTag } =
4949
useStoreDataForSpeedLimitByTagSelector({ isStdcm: true });
5050

51-
const { updateRollingStockID, updateTowedRollingStockID } =
52-
useOsrdConfActions() as StdcmConfSliceActions;
51+
const { updateRollingStockID } = useOsrdConfActions();
5352
const dispatch = useAppDispatch();
5453

5554
const { rollingStock } = useStoreDataForRollingStockSelector();

front/src/applications/stdcm/components/StdcmForm/StdcmLinkedTrainResults.tsx

+1-3
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,7 @@ import { RadioButton } from '@osrd-project/ui-core';
22
import cx from 'classnames';
33
import { useDispatch } from 'react-redux';
44

5-
import { useOsrdConfActions } from 'common/osrdContext';
6-
import type { StdcmConfSliceActions } from 'reducers/osrdconf/stdcmConf';
5+
import { updateLinkedTrainExtremity } from 'reducers/osrdconf/stdcmConf';
76

87
import type { StdcmLinkedTrainResult, ExtremityPathStepType } from '../../types';
98

@@ -17,7 +16,6 @@ const StdcmLinkedTrainResults = ({
1716
linkedOp: { extremityType, id },
1817
}: StdcmLinkedTrainResultsProps) => {
1918
const dispatch = useDispatch();
20-
const { updateLinkedTrainExtremity } = useOsrdConfActions() as StdcmConfSliceActions;
2119
return (
2220
<div className="stdcm-linked-train-results">
2321
{linkedTrainResults.map(({ trainName, origin, destination }, index) => (

front/src/applications/stdcm/components/StdcmForm/StdcmOpSchedule.tsx

+2-3
Original file line numberDiff line numberDiff line change
@@ -4,8 +4,8 @@ import { DatePicker, Select, TimePicker, TolerancePicker } from '@osrd-project/u
44
import { useTranslation } from 'react-i18next';
55
import { useSelector } from 'react-redux';
66

7-
import { useOsrdConfActions, useOsrdConfSelectors } from 'common/osrdContext';
8-
import type { StdcmConfSliceActions } from 'reducers/osrdconf/stdcmConf';
7+
import { useOsrdConfSelectors } from 'common/osrdContext';
8+
import { updateStdcmPathStep } from 'reducers/osrdconf/stdcmConf';
99
import type { StdcmPathStep } from 'reducers/osrdconf/types';
1010
import { useAppDispatch } from 'store';
1111
import { formatDateString } from 'utils/date';
@@ -24,7 +24,6 @@ const StdcmOpSchedule = ({ disabled, pathStep, opId, isOrigin = false }: StdcmOp
2424
const { t } = useTranslation('stdcm');
2525
const dispatch = useAppDispatch();
2626

27-
const { updateStdcmPathStep } = useOsrdConfActions() as StdcmConfSliceActions;
2827
const { getSearchDatetimeWindow } = useOsrdConfSelectors();
2928
const searchDatetimeWindow = useSelector(getSearchDatetimeWindow);
3029

front/src/applications/stdcm/components/StdcmForm/StdcmOperationalPoint.tsx

+1-4
Original file line numberDiff line numberDiff line change
@@ -5,8 +5,7 @@ import { useTranslation } from 'react-i18next';
55

66
import type { SearchResultItemOperationalPoint } from 'common/api/osrdEditoastApi';
77
import useSearchOperationalPoint from 'common/Map/Search/useSearchOperationalPoint';
8-
import { useOsrdConfActions } from 'common/osrdContext';
9-
import type { StdcmConfSliceActions } from 'reducers/osrdconf/stdcmConf';
8+
import { updateStdcmPathStep } from 'reducers/osrdconf/stdcmConf';
109
import type { StdcmPathStep } from 'reducers/osrdconf/types';
1110
import { useAppDispatch } from 'store';
1211
import { normalized } from 'utils/strings';
@@ -55,8 +54,6 @@ const StdcmOperationalPoint = ({ location, pathStepId, disabled }: StdcmOperatio
5554

5655
const [chSuggestions, setChSuggestions] = useState<CHOption[]>([]);
5756

58-
const { updateStdcmPathStep } = useOsrdConfActions() as StdcmConfSliceActions;
59-
6057
const selectedCi = useMemo(
6158
() =>
6259
location

front/src/applications/stdcm/components/StdcmForm/StdcmVias.tsx

+1-4
Original file line numberDiff line numberDiff line change
@@ -5,8 +5,7 @@ import { useTranslation } from 'react-i18next';
55
import { useSelector } from 'react-redux';
66

77
import IntermediatePointIcon from 'assets/pictures/mapMarkers/intermediate-point.svg';
8-
import { useOsrdConfActions } from 'common/osrdContext';
9-
import type { StdcmConfSliceActions } from 'reducers/osrdconf/stdcmConf';
8+
import { updateStdcmPathStep, deleteStdcmVia, addStdcmVia } from 'reducers/osrdconf/stdcmConf';
109
import { getStdcmPathSteps } from 'reducers/osrdconf/stdcmConf/selectors';
1110
import type { StdcmPathStep } from 'reducers/osrdconf/types';
1211
import { useAppDispatch } from 'store';
@@ -22,8 +21,6 @@ import type { StdcmConfigCardProps } from '../../types';
2221
const StdcmVias = ({ disabled = false }: StdcmConfigCardProps) => {
2322
const { t } = useTranslation('stdcm');
2423
const dispatch = useAppDispatch();
25-
const { updateStdcmPathStep, addStdcmVia, deleteStdcmVia } =
26-
useOsrdConfActions() as StdcmConfSliceActions;
2724
const pathSteps = useSelector(getStdcmPathSteps);
2825

2926
const [newIntermediateOpIndex, setNewIntermediateOpIndex] = useState<number>();

front/src/applications/stdcm/components/StdcmForm/StopDurationInput.tsx

+1-4
Original file line numberDiff line numberDiff line change
@@ -4,8 +4,7 @@ import { Input } from '@osrd-project/ui-core';
44
import type { Status } from '@osrd-project/ui-core/dist/components/inputs/StatusMessage';
55
import { useTranslation } from 'react-i18next';
66

7-
import { useOsrdConfActions } from 'common/osrdContext';
8-
import type { StdcmConfSliceActions } from 'reducers/osrdconf/stdcmConf';
7+
import { updateStdcmPathStep } from 'reducers/osrdconf/stdcmConf';
98
import type { StdcmPathStep } from 'reducers/osrdconf/types';
109
import { useAppDispatch } from 'store';
1110
import { useDebounce } from 'utils/helpers';
@@ -21,8 +20,6 @@ const StopDurationInput = ({ pathStep }: StopDurationInputProps) => {
2120
const dispatch = useAppDispatch();
2221
const { t } = useTranslation('stdcm');
2322

24-
const { updateStdcmPathStep } = useOsrdConfActions() as StdcmConfSliceActions;
25-
2623
const [stopDuration, setStopDuration] = useState(
2724
pathStep.stopFor !== undefined ? `${pathStep.stopFor}` : ''
2825
);

front/src/applications/stdcm/hooks/useStdcmConsist.ts

+1-5
Original file line numberDiff line numberDiff line change
@@ -4,8 +4,7 @@ import { min } from 'lodash';
44
import { useSelector } from 'react-redux';
55

66
import type { LightRollingStockWithLiveries, TowedRollingStock } from 'common/api/osrdEditoastApi';
7-
import { useOsrdConfActions } from 'common/osrdContext';
8-
import { type StdcmConfSliceActions } from 'reducers/osrdconf/stdcmConf';
7+
import { updateTotalMass, updateTotalLength, updateMaxSpeed } from 'reducers/osrdconf/stdcmConf';
98
import { getTotalMass, getTotalLength, getMaxSpeed } from 'reducers/osrdconf/stdcmConf/selectors';
109
import { useAppDispatch } from 'store';
1110
import { kgToT, kmhToMs, msToKmh } from 'utils/physics';
@@ -19,9 +18,6 @@ const useStdcmConsist = () => {
1918
const [totalLengthChanged, setTotalLengthChanged] = useState(false);
2019
const [maxSpeedChanged, setMaxSpeedChanged] = useState(false);
2120

22-
const { updateTotalMass, updateTotalLength, updateMaxSpeed } =
23-
useOsrdConfActions() as StdcmConfSliceActions;
24-
2521
const totalMass = useSelector(getTotalMass);
2622
const onTotalMassChange = (e: React.ChangeEvent<HTMLInputElement>) => {
2723
const totalMassValue = Number(e.target.value);

front/src/applications/stdcm/hooks/useStdcmEnv.tsx

+1-3
Original file line numberDiff line numberDiff line change
@@ -3,14 +3,12 @@ import { useCallback, useEffect, useState } from 'react';
33
import { useDispatch } from 'react-redux';
44

55
import { osrdEditoastApi } from 'common/api/osrdEditoastApi';
6-
import { useOsrdConfActions } from 'common/osrdContext';
7-
import type { StdcmConfSliceActions } from 'reducers/osrdconf/stdcmConf';
6+
import { updateStdcmEnvironment } from 'reducers/osrdconf/stdcmConf';
87

98
export const NO_CONFIG_FOUND_MSG = 'No configuration found';
109

1110
export default function useStdcmEnvironment() {
1211
const dispatch = useDispatch();
13-
const { updateStdcmEnvironment } = useOsrdConfActions() as StdcmConfSliceActions;
1412
const [getStdcmSearchEnvironment] =
1513
osrdEditoastApi.endpoints.getStdcmSearchEnvironment.useLazyQuery();
1614

front/src/modules/scenario/components/ScenarioExplorer/ScenarioExplorer.tsx

+2-3
Original file line numberDiff line numberDiff line change
@@ -13,9 +13,9 @@ import { getDocument } from 'common/api/documentApi';
1313
import { osrdEditoastApi } from 'common/api/osrdEditoastApi';
1414
import { useModal } from 'common/BootstrapSNCF/ModalSNCF';
1515
import { LoaderFill } from 'common/Loaders';
16-
import { useOsrdConfActions, useOsrdConfSelectors } from 'common/osrdContext';
16+
import { useOsrdConfSelectors } from 'common/osrdContext';
1717
import { getScenarioDatetimeWindow } from 'modules/scenario/helpers/utils';
18-
import type { StdcmConfSliceActions } from 'reducers/osrdconf/stdcmConf';
18+
import { updateStdcmEnvironment } from 'reducers/osrdconf/stdcmConf';
1919
import { useAppDispatch } from 'store';
2020

2121
import ScenarioExplorerModal, { type ScenarioExplorerProps } from './ScenarioExplorerModal';
@@ -35,7 +35,6 @@ const ScenarioExplorer = ({
3535
const timetableID = useSelector(getTimetableID);
3636
const [imageUrl, setImageUrl] = useState<string>();
3737

38-
const { updateStdcmEnvironment } = useOsrdConfActions() as StdcmConfSliceActions;
3938
const { data: projectDetails } = osrdEditoastApi.endpoints.getProjectsByProjectId.useQuery(
4039
{ projectId: globalProjectId! },
4140
{ skip: !globalProjectId }

front/src/reducers/osrdconf/stdcmConf/index.ts

+14-4
Original file line numberDiff line numberDiff line change
@@ -268,21 +268,31 @@ export const stdcmConfSlice = createSlice({
268268
},
269269
});
270270

271-
export const stdcmConfSliceActions = stdcmConfSlice.actions;
272-
273271
export const {
272+
resetStdcmConfig,
273+
restoreStdcmConfig,
274+
updateTotalMass,
275+
updateTotalLength,
276+
updateMaxSpeed,
277+
updateTowedRollingStockID,
274278
resetMargins,
275279
updateGridMarginAfter,
276280
updateGridMarginBefore,
277281
updateStandardAllowance,
282+
updateStdcmEnvironment,
283+
updateStdcmPathSteps,
284+
updateStdcmPathStep,
285+
addStdcmVia,
286+
deleteStdcmVia,
287+
updateLinkedTrainExtremity,
278288
addNewStdcmResult,
279289
updateLastStdcmResult,
280290
selectSimulation,
281291
retainSimulation,
282-
} = stdcmConfSliceActions;
292+
} = stdcmConfSlice.actions;
283293

284294
export type StdcmConfSlice = typeof stdcmConfSlice;
285295

286-
export type StdcmConfSliceActions = typeof stdcmConfSliceActions;
296+
export type StdcmConfSliceActions = typeof stdcmConfSlice.actions;
287297

288298
export default stdcmConfSlice.reducer;

front/src/reducers/osrdconf/stdcmConf/stdcmConfReducers.spec.ts

+23-15
Original file line numberDiff line numberDiff line change
@@ -2,13 +2,21 @@ import { describe, it, expect } from 'vitest';
22

33
import { ArrivalTimeTypes, StdcmStopTypes } from 'applications/stdcm/types';
44
import {
5-
addNewStdcmResult,
6-
retainSimulation,
7-
selectSimulation,
85
stdcmConfInitialState,
96
stdcmConfSlice,
10-
stdcmConfSliceActions,
117
updateLastStdcmResult,
8+
resetStdcmConfig,
9+
updateGridMarginAfter,
10+
updateGridMarginBefore,
11+
updateMaxSpeed,
12+
updateStandardAllowance,
13+
updateStdcmPathStep,
14+
updateTotalLength,
15+
updateTotalMass,
16+
updateTowedRollingStockID,
17+
addNewStdcmResult,
18+
retainSimulation,
19+
selectSimulation,
1220
} from 'reducers/osrdconf/stdcmConf';
1321
import type { OsrdStdcmConfState, StandardAllowance, StdcmPathStep } from 'reducers/osrdconf/types';
1422
import { createStoreWithoutMiddleware } from 'store';
@@ -83,7 +91,7 @@ describe('stdcmConfReducers', () => {
8391
expect(stateBefore.margins.standardAllowance).toBe(initialTimeStandardAllowance);
8492

8593
const newStandardAllowance = testDataBuilder.buildPercentageStandardAllowance(5);
86-
store.dispatch(stdcmConfSliceActions.updateStandardAllowance(newStandardAllowance));
94+
store.dispatch(updateStandardAllowance(newStandardAllowance));
8795

8896
const stateAfter = store.getState()[stdcmConfSlice.name];
8997
expect(stateAfter.margins.standardAllowance).toBe(newStandardAllowance);
@@ -92,23 +100,23 @@ describe('stdcmConfReducers', () => {
92100
it('should handle updateGridMarginBefore', () => {
93101
const newGridMarginBefore = 5;
94102
const store = createStore(initialStateSTDCMConfig);
95-
store.dispatch(stdcmConfSliceActions.updateGridMarginBefore(newGridMarginBefore));
103+
store.dispatch(updateGridMarginBefore(newGridMarginBefore));
96104
const state = store.getState()[stdcmConfSlice.name];
97105
expect(state.margins.gridMarginBefore).toStrictEqual(newGridMarginBefore);
98106
});
99107

100108
it('should handle updateGridMarginAfter', () => {
101109
const newGridMarginAfter = 5;
102110
const store = createStore(initialStateSTDCMConfig);
103-
store.dispatch(stdcmConfSliceActions.updateGridMarginAfter(newGridMarginAfter));
111+
store.dispatch(updateGridMarginAfter(newGridMarginAfter));
104112
const state = store.getState()[stdcmConfSlice.name];
105113
expect(state.margins.gridMarginAfter).toStrictEqual(newGridMarginAfter);
106114
});
107115
});
108116

109117
it('should handle resetStdcmConfig', () => {
110118
const store = createStore(initialStateSTDCMConfig);
111-
store.dispatch(stdcmConfSliceActions.resetStdcmConfig());
119+
store.dispatch(resetStdcmConfig());
112120

113121
const state = store.getState()[stdcmConfSlice.name];
114122
expect(state.rollingStockID).toBe(stdcmConfInitialState.rollingStockID);
@@ -119,23 +127,23 @@ describe('stdcmConfReducers', () => {
119127
describe('Consist updates', () => {
120128
const store = createStore();
121129
it('should handle totalMass', () => {
122-
store.dispatch(stdcmConfSliceActions.updateTotalMass(345));
130+
store.dispatch(updateTotalMass(345));
123131
const state = store.getState()[stdcmConfSlice.name];
124132
expect(state.totalMass).toEqual(345);
125133
});
126134

127135
it('should handle totalLength', () => {
128-
store.dispatch(stdcmConfSliceActions.updateTotalLength(345));
136+
store.dispatch(updateTotalLength(345));
129137
const state = store.getState()[stdcmConfSlice.name];
130138
expect(state.totalLength).toEqual(345);
131139
});
132140
it('should handle maxSpeed', () => {
133-
store.dispatch(stdcmConfSliceActions.updateMaxSpeed(110));
141+
store.dispatch(updateMaxSpeed(110));
134142
const state = store.getState()[stdcmConfSlice.name];
135143
expect(state.maxSpeed).toEqual(110);
136144
});
137145
it('should handle towedRollingStockID', () => {
138-
store.dispatch(stdcmConfSliceActions.updateTowedRollingStockID(11));
146+
store.dispatch(updateTowedRollingStockID(11));
139147
const state = store.getState()[stdcmConfSlice.name];
140148
expect(state.towedRollingStockID).toEqual(11);
141149
});
@@ -156,7 +164,7 @@ describe('stdcmConfReducers', () => {
156164
},
157165
};
158166

159-
store.dispatch(stdcmConfSliceActions.updateStdcmPathStep({ id: origin.id, updates }));
167+
store.dispatch(updateStdcmPathStep({ id: origin.id, updates }));
160168
const state = store.getState()[stdcmConfSlice.name];
161169
expect(state.stdcmPathSteps.at(0)).toEqual({ ...origin, ...updates });
162170
});
@@ -169,7 +177,7 @@ describe('stdcmConfReducers', () => {
169177
stopFor: 1,
170178
};
171179

172-
store.dispatch(stdcmConfSliceActions.updateStdcmPathStep({ id: via.id, updates }));
180+
store.dispatch(updateStdcmPathStep({ id: via.id, updates }));
173181
const state = store.getState()[stdcmConfSlice.name];
174182
expect(state.stdcmPathSteps.at(1)).toEqual({ ...via, ...updates });
175183
});
@@ -186,7 +194,7 @@ describe('stdcmConfReducers', () => {
186194
},
187195
};
188196

189-
store.dispatch(stdcmConfSliceActions.updateStdcmPathStep({ id: destination.id, updates }));
197+
store.dispatch(updateStdcmPathStep({ id: destination.id, updates }));
190198
const state = store.getState()[stdcmConfSlice.name];
191199
expect(state.stdcmPathSteps.at(-1)).toEqual({ ...destination, ...updates });
192200
});

0 commit comments

Comments
 (0)