From 421934195139035f4b83d9836ac04f30d21887f2 Mon Sep 17 00:00:00 2001 From: Carlos-Mesquita Date: Sun, 10 Nov 2024 06:19:19 +0000 Subject: [PATCH] Leftovers from the previous commit --- .../MatchSentences/ParagraphViewer.tsx | 2 +- .../SectionExercises/reading.tsx | 19 +++++++++++++++++++ .../SectionRenderer/SectionExercises/types.ts | 4 ++-- .../SettingsEditor/Shared/Generate.ts | 2 -- .../SettingsEditor/Shared/GenerateBtn.tsx | 2 +- .../ExamEditor/SettingsEditor/level.tsx | 2 +- .../Shared/ExercisePicker/index.tsx | 2 +- .../Shared/ImportExam/WordUploader.tsx | 2 +- src/components/Exercises/Speaking.tsx | 2 -- 9 files changed, 26 insertions(+), 11 deletions(-) diff --git a/src/components/ExamEditor/Exercises/MatchSentences/ParagraphViewer.tsx b/src/components/ExamEditor/Exercises/MatchSentences/ParagraphViewer.tsx index cdee19cc..dd9d854d 100644 --- a/src/components/ExamEditor/Exercises/MatchSentences/ParagraphViewer.tsx +++ b/src/components/ExamEditor/Exercises/MatchSentences/ParagraphViewer.tsx @@ -12,7 +12,7 @@ interface Props { const ReferenceViewer: React.FC = ({ showReference, selectedReference, options, setShowReference, headings = true}) => (
diff --git a/src/components/ExamEditor/SectionRenderer/SectionExercises/reading.tsx b/src/components/ExamEditor/SectionRenderer/SectionExercises/reading.tsx index 7b31d770..7a36757b 100644 --- a/src/components/ExamEditor/SectionRenderer/SectionExercises/reading.tsx +++ b/src/components/ExamEditor/SectionRenderer/SectionExercises/reading.tsx @@ -4,6 +4,7 @@ import ExerciseLabel from '../../Shared/ExerciseLabel'; import MatchSentences from '../../Exercises/MatchSentences'; import TrueFalse from '../../Exercises/TrueFalse'; import FillBlanksLetters from '../../Exercises/Blanks/Letters'; +import MultipleChoice from '../../Exercises/MultipleChoice'; const getExerciseItems = (exercises: ReadingExercise[], sectionId: number): ExerciseItem[] => { @@ -87,6 +88,24 @@ const getExerciseItems = (exercises: ReadingExercise[], sectionId: number): Exer ), content: }; + case "multipleChoice": + firstWordId = exercise.questions[0].id; + lastWordId = exercise.questions[exercise.questions.length - 1].id; + return { + id: index.toString(), + sectionId, + label: ( + + "{previewLabel(exercise.prompt)}..." + + } + /> + ), + content: + }; } }).filter(isExerciseItem); diff --git a/src/components/ExamEditor/SectionRenderer/SectionExercises/types.ts b/src/components/ExamEditor/SectionRenderer/SectionExercises/types.ts index 0a06164b..4a29c13b 100644 --- a/src/components/ExamEditor/SectionRenderer/SectionExercises/types.ts +++ b/src/components/ExamEditor/SectionRenderer/SectionExercises/types.ts @@ -1,4 +1,4 @@ -import { FillBlanksExercise, MatchSentencesExercise, TrueFalseExercise, WriteBlanksExercise } from "@/interfaces/exam"; +import { FillBlanksExercise, MatchSentencesExercise, MultipleChoiceExercise, TrueFalseExercise, WriteBlanksExercise } from "@/interfaces/exam"; export default interface ExerciseItem { id: string; @@ -7,7 +7,7 @@ export default interface ExerciseItem { content: React.ReactNode; } -export type ReadingExercise = FillBlanksExercise | TrueFalseExercise | MatchSentencesExercise | WriteBlanksExercise; +export type ReadingExercise = FillBlanksExercise | TrueFalseExercise | MatchSentencesExercise | WriteBlanksExercise | MultipleChoiceExercise; export function isExerciseItem(item: unknown): item is ExerciseItem { return item !== undefined && diff --git a/src/components/ExamEditor/SettingsEditor/Shared/Generate.ts b/src/components/ExamEditor/SettingsEditor/Shared/Generate.ts index 0fe09d76..e1f09bda 100644 --- a/src/components/ExamEditor/SettingsEditor/Shared/Generate.ts +++ b/src/components/ExamEditor/SettingsEditor/Shared/Generate.ts @@ -42,8 +42,6 @@ export function generate( const url = `/api/exam/generate/${module}/${sectionId}${queryString ? `?${queryString}` : ''}`; - console.log(config.body); - const request = config.method === 'POST' ? axios.post(url, config.body) : axios.get(url); diff --git a/src/components/ExamEditor/SettingsEditor/Shared/GenerateBtn.tsx b/src/components/ExamEditor/SettingsEditor/Shared/GenerateBtn.tsx index cdc3b36e..9a2f9583 100644 --- a/src/components/ExamEditor/SettingsEditor/Shared/GenerateBtn.tsx +++ b/src/components/ExamEditor/SettingsEditor/Shared/GenerateBtn.tsx @@ -15,7 +15,7 @@ interface Props { const GenerateBtn: React.FC = ({module, sectionId, genType, generateFnc, className}) => { const section = useExamEditorStore((store) => store.modules[module].sections.find((s)=> s.sectionId == sectionId)); - if (section === undefined) return; + if (section === undefined) return <>; const {generating} = section; diff --git a/src/components/ExamEditor/SettingsEditor/level.tsx b/src/components/ExamEditor/SettingsEditor/level.tsx index 8a6ca855..ccbfa485 100644 --- a/src/components/ExamEditor/SettingsEditor/level.tsx +++ b/src/components/ExamEditor/SettingsEditor/level.tsx @@ -42,7 +42,7 @@ const LevelSettings: React.FC = () => { ); const section = sections.find((section) => section.sectionId == focusedSection); - if (section === undefined) return; + if (section === undefined) return <>; const currentSection = section.state as LevelPart; diff --git a/src/components/ExamEditor/Shared/ExercisePicker/index.tsx b/src/components/ExamEditor/Shared/ExercisePicker/index.tsx index 8aed1d28..26623dd7 100644 --- a/src/components/ExamEditor/Shared/ExercisePicker/index.tsx +++ b/src/components/ExamEditor/Shared/ExercisePicker/index.tsx @@ -28,7 +28,7 @@ const ExercisePicker: React.FC = ({ const [pickerOpen, setPickerOpen] = useState(false); - if (section === undefined) return; + if (section === undefined) return <>; const { state, selectedExercises } = section; diff --git a/src/components/ExamEditor/Shared/ImportExam/WordUploader.tsx b/src/components/ExamEditor/Shared/ImportExam/WordUploader.tsx index de266eb1..c52a4620 100644 --- a/src/components/ExamEditor/Shared/ImportExam/WordUploader.tsx +++ b/src/components/ExamEditor/Shared/ImportExam/WordUploader.tsx @@ -112,7 +112,7 @@ const WordUploader: React.FC<{ module: Module }> = ({ module }) => { } } } catch (error) { - toast.error(`An unknown error has occured while import ${module} exam!`); + toast.error(`Make sure you've imported a valid word document (.docx)!`); } finally { dispatch({ type: "UPDATE_MODULE", payload: { updates: { importing: false }, module } }) } diff --git a/src/components/Exercises/Speaking.tsx b/src/components/Exercises/Speaking.tsx index 7875a626..b96714c9 100644 --- a/src/components/Exercises/Speaking.tsx +++ b/src/components/Exercises/Speaking.tsx @@ -115,8 +115,6 @@ export default function Speaking({ id, title, text, video_url, type, prompts, su } }; - console.log(preview); - return (