reset form project's fields on submit
This commit is contained in:
committed by
Mrugesh Mohapatra
parent
d06ed20ef3
commit
960494b595
@ -8,12 +8,11 @@ import {
|
|||||||
} from 'redux';
|
} from 'redux';
|
||||||
import { combineEpics, createEpicMiddleware } from 'redux-observable';
|
import { combineEpics, createEpicMiddleware } from 'redux-observable';
|
||||||
|
|
||||||
import { reducer as formReducer } from 'redux-form';
|
|
||||||
|
|
||||||
import { reducer as app, epics as appEpics } from './app';
|
import { reducer as app, epics as appEpics } from './app';
|
||||||
import {
|
import {
|
||||||
reducer as challenge,
|
reducer as challenge,
|
||||||
epics as challengeEpics
|
epics as challengeEpics,
|
||||||
|
formReducer
|
||||||
} from '../templates/Challenges/redux';
|
} from '../templates/Challenges/redux';
|
||||||
import { reducer as map } from '../components/Map/redux';
|
import { reducer as map } from '../components/Map/redux';
|
||||||
import servicesCreator from './createServices';
|
import servicesCreator from './createServices';
|
||||||
|
@ -22,7 +22,8 @@ import {
|
|||||||
challengeMetaSelector,
|
challengeMetaSelector,
|
||||||
challengeTestsSelector,
|
challengeTestsSelector,
|
||||||
closeModal,
|
closeModal,
|
||||||
challengeFilesSelector
|
challengeFilesSelector,
|
||||||
|
updateProjectFormValues
|
||||||
} from './';
|
} from './';
|
||||||
import {
|
import {
|
||||||
userSelector,
|
userSelector,
|
||||||
@ -95,6 +96,8 @@ function submitProject(type, state) {
|
|||||||
username,
|
username,
|
||||||
csrfToken,
|
csrfToken,
|
||||||
challengeInfo
|
challengeInfo
|
||||||
|
).pipe(
|
||||||
|
concat(of(updateProjectFormValues({})))
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1,5 +1,7 @@
|
|||||||
import { createAction, handleActions } from 'redux-actions';
|
import { createAction, handleActions } from 'redux-actions';
|
||||||
|
|
||||||
|
import { reducer as reduxFormReducer } from 'redux-form';
|
||||||
|
|
||||||
import { createTypes } from '../../../../utils/stateManagment';
|
import { createTypes } from '../../../../utils/stateManagment';
|
||||||
import { createPoly } from '../utils/polyvinyl';
|
import { createPoly } from '../utils/polyvinyl';
|
||||||
import challengeModalEpic from './challenge-modal-epic';
|
import challengeModalEpic from './challenge-modal-epic';
|
||||||
@ -268,3 +270,23 @@ export const reducer = handleActions(
|
|||||||
},
|
},
|
||||||
initialState
|
initialState
|
||||||
);
|
);
|
||||||
|
|
||||||
|
const resetProjectFormValues = handleActions({
|
||||||
|
[types.updateProjectFormValues]: (state, { payload: { solution } }) => {
|
||||||
|
if (!solution) {
|
||||||
|
return {
|
||||||
|
...state,
|
||||||
|
solution: {},
|
||||||
|
githubLink: {}
|
||||||
|
};
|
||||||
|
}
|
||||||
|
return state;
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{}
|
||||||
|
);
|
||||||
|
|
||||||
|
export const formReducer = reduxFormReducer.plugin({
|
||||||
|
'frond-end-form': resetProjectFormValues,
|
||||||
|
'back-end-form': resetProjectFormValues
|
||||||
|
});
|
||||||
|
Reference in New Issue
Block a user