From 6115df88cdbe55c8bae7e5cdf989c2ee050343f3 Mon Sep 17 00:00:00 2001 From: Ahmad Abdolsaheb Date: Mon, 8 May 2023 11:58:21 +0300 Subject: [PATCH] feat: replace code lock epic with saga (#50088) --- .../Challenges/redux/action-types.js | 2 -- .../src/templates/Challenges/redux/actions.js | 2 -- .../Challenges/redux/code-lock-epic.js | 11 ----------- .../Challenges/redux/code-storage-epic.js | 7 +------ .../src/templates/Challenges/redux/index.js | 19 +------------------ 5 files changed, 2 insertions(+), 39 deletions(-) delete mode 100644 client/src/templates/Challenges/redux/code-lock-epic.js diff --git a/client/src/templates/Challenges/redux/action-types.js b/client/src/templates/Challenges/redux/action-types.js index cf657efecd7..767e83fd4ac 100644 --- a/client/src/templates/Challenges/redux/action-types.js +++ b/client/src/templates/Challenges/redux/action-types.js @@ -22,8 +22,6 @@ export const actionTypes = createTypes( 'logsToConsole', - 'lockCode', - 'unlockCode', 'disableBuildOnError', 'storedCodeFound', 'noStoredCodeFound', diff --git a/client/src/templates/Challenges/redux/actions.js b/client/src/templates/Challenges/redux/actions.js index bdc38ca4373..0d513681ba4 100644 --- a/client/src/templates/Challenges/redux/actions.js +++ b/client/src/templates/Challenges/redux/actions.js @@ -43,8 +43,6 @@ export const setShowPreviewPane = createAction(actionTypes.setShowPreviewPane); export const logsToConsole = createAction(actionTypes.logsToConsole); -export const lockCode = createAction(actionTypes.lockCode); -export const unlockCode = createAction(actionTypes.unlockCode); export const disableBuildOnError = createAction( actionTypes.disableBuildOnError ); diff --git a/client/src/templates/Challenges/redux/code-lock-epic.js b/client/src/templates/Challenges/redux/code-lock-epic.js deleted file mode 100644 index 1955e645df1..00000000000 --- a/client/src/templates/Challenges/redux/code-lock-epic.js +++ /dev/null @@ -1,11 +0,0 @@ -import { ofType } from 'redux-observable'; -import { map } from 'rxjs/operators'; - -import { actionTypes } from './action-types'; -import { unlockCode } from './actions'; - -function codeLockEpic(action$) { - return action$.pipe(ofType(actionTypes.updateFile), map(unlockCode)); -} - -export default codeLockEpic; diff --git a/client/src/templates/Challenges/redux/code-storage-epic.js b/client/src/templates/Challenges/redux/code-storage-epic.js index dc5e4f27d74..0e0ce9f3b1e 100644 --- a/client/src/templates/Challenges/redux/code-storage-epic.js +++ b/client/src/templates/Challenges/redux/code-storage-epic.js @@ -10,11 +10,7 @@ import { savedChallengesSelector } from '../../../redux/selectors'; import { actionTypes as appTypes } from '../../../redux/action-types'; import { actionTypes } from './action-types'; import { noStoredCodeFound, storedCodeFound } from './actions'; -import { - challengeFilesSelector, - challengeMetaSelector, - isCodeLockedSelector -} from './selectors'; +import { challengeFilesSelector, challengeMetaSelector } from './selectors'; const legacyPrefixes = [ 'Bonfire: ', @@ -86,7 +82,6 @@ function saveCodeEpic(action$, state$) { return action$.pipe( ofType(actionTypes.executeChallenge, actionTypes.saveEditorContent), // do not save challenge if code is locked - filter(() => !isCodeLockedSelector(state$.value)), map(action => { const state = state$.value; const { id } = challengeMetaSelector(state); diff --git a/client/src/templates/Challenges/redux/index.js b/client/src/templates/Challenges/redux/index.js index e167a0c2eb4..eff85fa4cd7 100644 --- a/client/src/templates/Challenges/redux/index.js +++ b/client/src/templates/Challenges/redux/index.js @@ -4,7 +4,6 @@ import { handleActions } from 'redux-actions'; import { getLines } from '../../../../../utils/get-lines'; import { getTargetEditor } from '../utils/get-target-editor'; import { actionTypes, ns } from './action-types'; -import codeLockEpic from './code-lock-epic'; import codeStorageEpic from './code-storage-epic'; import completionEpic from './completion-epic'; import createQuestionEpic from './create-question-epic'; @@ -29,7 +28,6 @@ const initialState = { challengeTests: [], consoleOut: [], hasCompletedBlock: false, - isCodeLocked: false, isBuildEnabled: true, isResetting: false, logsOut: [], @@ -49,12 +47,7 @@ const initialState = { isAdvancing: false }; -export const epics = [ - codeLockEpic, - completionEpic, - createQuestionEpic, - codeStorageEpic -]; +export const epics = [completionEpic, createQuestionEpic, codeStorageEpic]; export const sagas = [ ...createExecuteChallengeSaga(actionTypes), @@ -167,16 +160,6 @@ export const reducer = handleActions( ...state, projectFormValues: payload }), - - [actionTypes.lockCode]: state => ({ - ...state, - isCodeLocked: true - }), - [actionTypes.unlockCode]: state => ({ - ...state, - isBuildEnabled: true, - isCodeLocked: false - }), [actionTypes.disableBuildOnError]: state => ({ ...state, isBuildEnabled: false