From 21bd1b42075ec93927769c6060d0591fc34bf5e4 Mon Sep 17 00:00:00 2001 From: Stuart Taylor Date: Mon, 29 Jan 2018 15:53:17 +0000 Subject: [PATCH] fix(code-reset): Listen for clickOnReset and remove code from storage (#16592) --- .../routes/Challenges/redux/code-storage-epic.js | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/common/app/routes/Challenges/redux/code-storage-epic.js b/common/app/routes/Challenges/redux/code-storage-epic.js index 52a8e39a69..d6eb129e87 100644 --- a/common/app/routes/Challenges/redux/code-storage-epic.js +++ b/common/app/routes/Challenges/redux/code-storage-epic.js @@ -58,8 +58,11 @@ function legacyToFile(code, files, key) { return { [key]: setContent(code, files[key]) }; } -export function clearCodeEpic(actions, { getState }) { - return actions::ofType(types.submitChallenge.complete) +function clearCodeEpic(actions, { getState }) { + return actions::ofType( + types.submitChallenge.complete, + types.clickOnReset + ) .do(() => { const { id } = challengeSelector(getState()); store.remove(id); @@ -67,7 +70,7 @@ export function clearCodeEpic(actions, { getState }) { .ignoreElements(); } -export function saveCodeEpic(actions, { getState }) { +function saveCodeEpic(actions, { getState }) { return actions::ofType(types.executeChallenge) // do not save challenge if code is locked .filter(() => !codeLockedSelector(getState())) @@ -79,7 +82,7 @@ export function saveCodeEpic(actions, { getState }) { .ignoreElements(); } -export function loadCodeEpic(actions, { getState }, { window, location }) { +function loadCodeEpic(actions, { getState }, { window, location }) { return Observable.merge( actions::ofType(app.appMounted), actions::ofType(types.onRouteChallenges) @@ -152,7 +155,7 @@ export function loadCodeEpic(actions, { getState }, { window, location }) { }); } -export function findPreviousSolutionEpic(actions, { getState }) { +function findPreviousSolutionEpic(actions, { getState }) { return Observable.combineLatest( actions::ofType(types.noStoredCodeFound), actions::ofType(app.fetchUser.complete)