analytica-frontend-lib
Version:
Repositório público dos componentes utilizados nas plataformas da Analytica Ensino
44 lines • 2.19 kB
TypeScript
import { StatusBadgeConfig } from '../../types/activityDetails';
import { ANSWER_STATUS } from '../../Quiz/useQuizStore/index';
import { type QuestionStatus } from './constants';
import type { CorrectionQuestionData } from '../studentActivityCorrection_types/index';
/**
* Returns whether the answer is correct, incorrect, or null based on the answer status.
* @param answerStatus - Answer status from ANSWER_STATUS enum
* @returns Returns true for correct, false for incorrect, or null if undefined.
*/
export declare const getIsCorrect: (answerStatus: ANSWER_STATUS) => boolean | null;
/**
* Map ANSWER_STATUS from Quiz to QUESTION_STATUS for correction modal
* @param answerStatus - Answer status from QuestionResult
* @returns QuestionStatus for UI display
*/
export declare const mapAnswerStatusToQuestionStatus: (answerStatus: ANSWER_STATUS) => QuestionStatus;
/**
* Get question status badge configuration
* @param status - Question status
* @returns Badge configuration with label and colors
*/
export declare const getQuestionStatusBadgeConfig: (status: QuestionStatus) => StatusBadgeConfig;
/**
* Check if question can be auto-validated based on options
* All question types can be auto-validated except DISSERTATIVA (essay questions)
* @param questionData - Correction question data
* @returns true if can auto-validate, false otherwise
*/
export declare const canAutoValidate: (questionData: CorrectionQuestionData) => boolean;
/**
* Auto-validate question based on selected options vs correct options
* @param questionData - Correction question data
* @returns ANSWER_STATUS if can determine, null otherwise
*/
export declare const autoValidateQuestion: (questionData: CorrectionQuestionData) => ANSWER_STATUS | null;
/**
* Get question status from CorrectionQuestionData
* Maps the result's answerStatus to QuestionStatus
* If status is PENDENTE_AVALIACAO but can auto-validate, calculates status automatically
* @param questionData - Correction question data
* @returns QuestionStatus for UI display
*/
export declare const getQuestionStatusFromData: (questionData: CorrectionQuestionData) => QuestionStatus;
//# sourceMappingURL=utils.d.ts.map