Implemented the Reading and Listening initial screens according to the new designs, creating new components as needed

This commit is contained in:
Tiago Ribeiro
2023-06-15 14:43:29 +01:00
parent 65ebdd7dde
commit 2d46bad40f
13 changed files with 272 additions and 85 deletions

View File

@@ -12,17 +12,23 @@ export interface ExamState {
setExams: (exams: Exam[]) => void;
setShowSolutions: (showSolutions: boolean) => void;
setSelectedModules: (modules: Module[]) => void;
reset: () => void;
}
const useExamStore = create<ExamState>((set) => ({
export const initialState = {
exams: [],
userSolutions: [],
showSolutions: false,
selectedModules: [],
};
const useExamStore = create<ExamState>((set) => ({
...initialState,
setUserSolutions: (userSolutions: UserSolution[]) => set(() => ({userSolutions})),
setExams: (exams: Exam[]) => set(() => ({exams})),
setShowSolutions: (showSolutions: boolean) => set(() => ({showSolutions})),
setSelectedModules: (modules: Module[]) => set(() => ({selectedModules: modules})),
reset: () => set(() => initialState),
}));
export default useExamStore;