analytica-frontend-lib
Version:
Repositório público dos componentes utilizados nas plataformas da Analytica Ensino
1 lines • 4.16 kB
Source Map (JSON)
{"version":3,"sources":["../src/types/questions.ts"],"sourcesContent":["import { QUESTION_TYPE } from '../components/Quiz/useQuizStore';\n\n/**\n * Question difficulty enumerations\n * Defines the difficulty levels for questions and activities\n */\nexport enum DIFFICULTY_LEVEL_ENUM {\n FACIL = 'FACIL',\n MEDIO = 'MEDIO',\n DIFICIL = 'DIFICIL',\n}\n\n/**\n * Question status enumerations\n * Defines the possible statuses for questions in the system\n */\nexport enum QUESTION_STATUS_ENUM {\n APROVADO = 'APROVADO',\n REVISAR = 'REVISAR',\n REPROVADO = 'REPROVADO',\n DESATIVADO = 'DESATIVADO',\n CATEGORIZACAO = 'CATEGORIZACAO',\n DADOS_AUSENTES = 'DADOS AUSENTES',\n}\n\n/**\n * Question interface\n */\nexport interface Question {\n id: string;\n statement: string;\n description: string | null;\n questionType: QUESTION_TYPE;\n status: QUESTION_STATUS_ENUM;\n difficultyLevel: DIFFICULTY_LEVEL_ENUM;\n questionBankYearId: string;\n questionBankYear?: QuestionBankYearActivity;\n solutionExplanation: string | null;\n createdAt: string;\n updatedAt: string;\n knowledgeMatrix?: KnowledgeMatrixItemActivity[];\n options?: QuestionOptionActivity[];\n createdBy?: string;\n additionalContent?: string | null;\n}\n\n/**\n * Pagination interface\n */\nexport interface Pagination {\n page: number;\n pageSize: number;\n total: number;\n totalPages: number;\n hasNext: boolean;\n hasPrevious: boolean;\n}\n\n/**\n * Questions filter body interface\n */\nexport interface QuestionsFilterBody {\n questionType?: QUESTION_TYPE[];\n questionBankYearId?: string[];\n subjectId?: string[];\n topicId?: string[];\n subtopicId?: string[];\n contentId?: string[];\n page?: number;\n pageSize?: number;\n selectedQuestionsIds?: string[];\n randomQuestions?: number;\n /** Filter for questions without any subject association */\n noSubject?: boolean;\n [key: string]: unknown;\n}\n\n/**\n * Questions list response interface\n */\nexport interface QuestionsListResponse {\n message: string;\n data: {\n questions: Question[];\n pagination: Pagination;\n };\n}\n\n/**\n * Option interface for questions\n */\nexport interface QuestionOptionActivity {\n id: string;\n option: string;\n isCorrect?: boolean;\n correctValue?: string | null;\n}\n\n/**\n * Knowledge Matrix Item interface\n */\nexport interface KnowledgeMatrixItemActivity {\n areaKnowledge?: {\n id: string;\n name: string;\n } | null;\n subject?: {\n id: string;\n name: string;\n color: string;\n icon: string;\n } | null;\n topic?: {\n id: string;\n name: string;\n } | null;\n subtopic?: {\n id: string;\n name: string;\n } | null;\n content?: {\n id: string;\n name: string;\n } | null;\n}\n\n/**\n * Question Bank Year interface\n */\nexport interface QuestionBankYearActivity {\n id: string;\n year: string;\n questionBank: {\n id: string;\n name: string;\n };\n}\n\n/**\n * Pagination interface for questions list (API schema)\n * Based on paginationSchema - uses 'hasPrev' instead of 'hasPrevious'\n */\nexport interface PaginationActivity {\n page: number;\n limit: number;\n total: number;\n totalPages: number;\n hasNext: boolean;\n hasPrev: boolean;\n}\n\n/**\n * Questions list API response interface\n * Based on questionsListResponseSchema\n */\nexport interface QuestionsListResponseActivity {\n message?: string;\n data: {\n questions: Question[];\n pagination?: PaginationActivity;\n };\n}\n\n/**\n * Questions by IDs request body interface\n */\nexport interface QuestionsByIdsBody {\n questionsIds: string[];\n}\n\n/**\n * Questions by IDs response interface\n */\nexport interface QuestionsByIdsResponse {\n message?: string;\n data: {\n questions: Question[];\n };\n}\n"],"mappings":";AAMO,IAAK,wBAAL,kBAAKA,2BAAL;AACL,EAAAA,uBAAA,WAAQ;AACR,EAAAA,uBAAA,WAAQ;AACR,EAAAA,uBAAA,aAAU;AAHA,SAAAA;AAAA,GAAA;AAUL,IAAK,uBAAL,kBAAKC,0BAAL;AACL,EAAAA,sBAAA,cAAW;AACX,EAAAA,sBAAA,aAAU;AACV,EAAAA,sBAAA,eAAY;AACZ,EAAAA,sBAAA,gBAAa;AACb,EAAAA,sBAAA,mBAAgB;AAChB,EAAAA,sBAAA,oBAAiB;AANP,SAAAA;AAAA,GAAA;","names":["DIFFICULTY_LEVEL_ENUM","QUESTION_STATUS_ENUM"]}