fix: stop modal appearing in steps (#43728)
* fix: stop showing completion modal on steps * feat: submit steps with ctrl+enter * fix: handle ctrl+enter when not focussing editor * fix: reset tests when user types * refactor: pass showCompletionModal as an option Otherwise we have to write executeChallenge(true) which does not mean what you might reasonably expect. * fix: always executeChallenge when not on step * fix: update frontend project show * fix: handle missing payload * refactor: isProjectStep -> hasEditableRegion * refactor: more renaming * fix: make meta.json control multifile editor use * fix: update the challengeSchema correctly * Update client/src/templates/Challenges/classic/editor.tsx Co-authored-by: Shaun Hamilton <shauhami020@gmail.com> * fix: remove logging Co-authored-by: Shaun Hamilton <shauhami020@gmail.com> Co-authored-by: Shaun Hamilton <shauhami020@gmail.com>
This commit is contained in:
committed by
GitHub
parent
9220bfedad
commit
22afdd1aad
@@ -47,7 +47,7 @@ export function* executeCancellableChallengeSaga(payload) {
|
||||
if (previewTask) {
|
||||
yield cancel(previewTask);
|
||||
}
|
||||
// executeChallenge with payload containing isShouldCompletionModalOpen
|
||||
// executeChallenge with payload containing {showCompletionModal}
|
||||
const task = yield fork(executeChallengeSaga, payload);
|
||||
previewTask = yield fork(previewChallengeSaga, { flushLogs: false });
|
||||
|
||||
@@ -59,9 +59,7 @@ export function* executeCancellablePreviewSaga() {
|
||||
previewTask = yield fork(previewChallengeSaga);
|
||||
}
|
||||
|
||||
export function* executeChallengeSaga({
|
||||
payload: isShouldCompletionModalOpen
|
||||
}) {
|
||||
export function* executeChallengeSaga({ payload }) {
|
||||
const isBuildEnabled = yield select(isBuildEnabledSelector);
|
||||
if (!isBuildEnabled) {
|
||||
return;
|
||||
@@ -99,7 +97,7 @@ export function* executeChallengeSaga({
|
||||
yield put(updateTests(testResults));
|
||||
|
||||
const challengeComplete = testResults.every(test => test.pass && !test.err);
|
||||
if (challengeComplete && isShouldCompletionModalOpen) {
|
||||
if (challengeComplete && payload?.showCompletionModal) {
|
||||
yield put(openModal('completion'));
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user