From d4403940678f38e9db9ccd22ebfb3d14b5a9488f Mon Sep 17 00:00:00 2001
From: Muhammad Anas <88967643+Anas12091101@users.noreply.github.com>
Date: Tue, 10 Jun 2025 16:59:23 +0100
Subject: [PATCH] fix: remove duplicate markdown_edited save request (#2112)
Removes the unnecessary duplicate save request of markdown_edited
value to the backend.
Part of: https://github.com/openedx/frontend-app-authoring/issues/2099
Will be backported to Teak.
---
.../data/redux/thunkActions/problem.test.ts | 14 ++------------
src/editors/data/redux/thunkActions/problem.ts | 16 ++++++++--------
2 files changed, 10 insertions(+), 20 deletions(-)
diff --git a/src/editors/data/redux/thunkActions/problem.test.ts b/src/editors/data/redux/thunkActions/problem.test.ts
index 17f7f85b0..3c7edbe52 100644
--- a/src/editors/data/redux/thunkActions/problem.test.ts
+++ b/src/editors/data/redux/thunkActions/problem.test.ts
@@ -10,7 +10,6 @@ import {
} from './problem';
import { checkboxesOLXWithFeedbackAndHintsOLX, advancedProblemOlX, blankProblemOLX } from '../../../containers/ProblemEditor/data/mockData/olxTestData';
import { ProblemTypeKeys } from '../../constants/problem';
-import * as requests from './requests';
const mockOlx = 'SOmEVALue';
const mockBuildOlx = jest.fn(() => mockOlx);
@@ -72,22 +71,13 @@ describe('problem thunkActions', () => {
);
});
test('switchToMarkdownEditor dispatches correct actions', () => {
- switchToMarkdownEditor()(dispatch, getState);
+ switchToMarkdownEditor()(dispatch);
expect(dispatch).toHaveBeenCalledWith(
actions.problem.updateField({
isMarkdownEditorEnabled: true,
}),
);
-
- expect(dispatch).toHaveBeenCalledWith(
- requests.saveBlock({
- content: {
- settings: { markdown_edited: true },
- olx: blockValue.data.data,
- },
- }),
- );
});
describe('switchEditor', () => {
@@ -110,7 +100,7 @@ describe('problem thunkActions', () => {
test('dispatches switchToMarkdownEditor when editorType is markdown', () => {
switchEditor('markdown')(dispatch, getState);
- expect(switchToMarkdownEditorMock).toHaveBeenCalledWith(dispatch, getState);
+ expect(switchToMarkdownEditorMock).toHaveBeenCalledWith(dispatch);
});
});
diff --git a/src/editors/data/redux/thunkActions/problem.ts b/src/editors/data/redux/thunkActions/problem.ts
index 28ba7b34f..74876fdb1 100644
--- a/src/editors/data/redux/thunkActions/problem.ts
+++ b/src/editors/data/redux/thunkActions/problem.ts
@@ -24,17 +24,17 @@ export const switchToAdvancedEditor = () => (dispatch, getState) => {
dispatch(actions.problem.updateField({ problemType: ProblemTypeKeys.ADVANCED, rawOLX }));
};
-export const switchToMarkdownEditor = () => (dispatch, getState) => {
- const state = getState();
+export const switchToMarkdownEditor = () => (dispatch) => {
dispatch(actions.problem.updateField({ isMarkdownEditorEnabled: true }));
- const { blockValue } = state.app;
- const olx = get(blockValue, 'data.data', '');
- const content = { settings: { markdown_edited: true }, olx };
- // Sending a request to save the problem block with the updated markdown_edited value
- dispatch(requests.saveBlock({ content }));
};
-export const switchEditor = (editorType) => (dispatch, getState) => (editorType === 'advanced' ? switchToAdvancedEditor : switchToMarkdownEditor)()(dispatch, getState);
+export const switchEditor = (editorType) => (dispatch, getState) => {
+ if (editorType === 'advanced') {
+ switchToAdvancedEditor()(dispatch, getState);
+ } else {
+ switchToMarkdownEditor()(dispatch);
+ }
+};
export const isBlankProblem = ({ rawOLX }) => {
if (['', ''].includes(rawOLX.replace(/\s/g, ''))) {