import { IoReturnUpBack } from "react-icons/io5" const initialState = { grade: 8, groupId: 0, name: '', startDate: new Date(), endDate: new Date(), startTime: '19:0', endTime: '', description: '', type: 'bank', questionnaires: [ { id:1, name: 'عمومی', fileUrl: '', }, { id:2, name: 'اختصاصی', fileUrl: '', } ], questionairesCourses: [ { id: 0, questionnaireId: 1, questionsQuantity:20, name: 'دینی', coefficient: 4 }, { id: 1, questionnaireId: 2, questionsQuantity:20, name: 'ریاضی', coefficient: 4, }, ], answers: [ ], courseBank: [ { id: 1, title: 'ریاضی' }, { id: 2, title: 'شیمی' }, ], questionBank: [ { questionId: 1, courseId: 2, title:'تترا فلورید اسید چنتا اسید داره؟', answeredPercentage: '83%', score: 1, options: [ { id: 1, title:'تترا', isAnswer: false }, { id: 2, title:'سه ترا', isAnswer: false }, { id: 3, title:'هویج و گوجه فرنگی؟', isAnswer: true }, { id: 4, title:'فلور تا', isAnswer: false }, ] }, { questionId: 2, courseId: 2, title:'asdaw dsfsdfiermc', answeredPercentage: '83%', score: 1, options: [ { id: 1, title:'asdasd', isAnswer: false }, { id: 2, title:'asdasd2', isAnswer: false }, { id: 3, title:'', isAnswer: true }, { id: 4, title:'asdasd4', isAnswer: false }, ] }, { questionId: 3, courseId: 1, title:'برای حل مساءل مربوط به مساحت زیر نمودار باید از کدام مبحث ریاضی استفاده کرد؟', answeredPercentage: '43%', score: 1, options: [ { id: 1, title:'لگاریتم طبیعی', isAnswer: false }, { id: 2, title:'حد و مشتق', isAnswer: false }, { id: 3, title:'قدر مطلق', isAnswer: false }, { id: 4, title:'نخوندم 🗿', isAnswer: true }, ] }, ], courses: [ ], questions: [ ] } export default function addExamReduser(state = initialState, { type, payload }) { switch (type) { case 'ADD_EXAM_GRADE_AND_GROUP': return { ...state, grade: payload.grade, groupId: payload.groupId } case 'ADD_EXAM_DESCRIPTION': return { ...state, name: payload.name, startDate: new Date(), endDate: new Date(), startTime: '19:0', endTime: '', description: payload.description, type: payload.type } case 'ADD_EXAM_QUESTIONAIRES': return { ...state, questionnaires: [...state.questionnaires, payload] } case 'ADD_QUESTIONNAIRE_COURSES' : return { ...state, questionairesCourses: [ ...state.questionairesCourses, payload ] } case 'ADD_ANSWERS': return{ ...state, answers: [ ...state.answers, payload ] } case 'ADD_EXAM_COURSE': return { ...state, courses: [...state.courses, payload] } case 'REMOVE_EXAM_COURSE': return { ...state, courses: state.courses.filter(itm => itm.id !== payload.id) } case 'ADD_EXAM_QUESTIONS': return { ...state, questions : [...state.questions, payload] } case 'REMOVE_EXAM_QUESTIONS': return { ...state, questions: state.questions.filter(itm => itm.questionId !== payload.questionId) } case 'REMOVE_QUESTION_FROM_BANK': return { ...state, questionBank: state.questionBank.filter(itm => itm.questionId !== payload.questionId) } case 'GET_QUESTION_BACK_TO_BANK': return { ...state, questionBank : [...state.questionBank, payload] } default: return state; } }