-
Tadeusz Miesiąc authoredTadeusz Miesiąc authored
Code owners
Assign users and groups as approvers for specific file changes. Learn more.
configuration.reducers.ts 782 B
import { ActionReducerMapBuilder } from '@reduxjs/toolkit';
import { getConfigurationOptions } from './configuration.thunks';
import { ConfigurationState, configurationAdapter } from './configuration.adapter';
export const getConfigurationOptionsReducer = (
builder: ActionReducerMapBuilder<ConfigurationState>,
): void => {
builder.addCase(getConfigurationOptions.pending, state => {
state.loading = 'pending';
});
builder.addCase(getConfigurationOptions.fulfilled, (state, action) => {
if (action.payload) {
state.loading = 'succeeded';
configurationAdapter.addMany(state, action.payload);
}
});
builder.addCase(getConfigurationOptions.rejected, state => {
state.loading = 'failed';
// TODO to discuss manage state of failure
});
};