import { AnswerResponse, QuestionVariant } from "@/api/types";
import { useUserTest } from "@/api/userTests";
import Question from "@/components/question";
import Answer from "@/components/ui/answer";
import { Button, ButtonText } from "@/components/ui/button";
import Content from "@/components/ui/content";
import { Divider } from "@/components/ui/divider";
import UserTest from "@/components/user-test";
import { getUserTestStatus, TestStatus } from "@/utils/get-user-test-status";
import getUserTestTitle from "@/utils/get-user-test-title";
import { Stack, useLocalSearchParams } from "expo-router";
import { View } from "react-native";
const UserTestScreen = () => {
const { id: idParam } = useLocalSearchParams<{ id: string }>();
const id = +idParam;
const { data: userTest } = useUserTest(id);
if (!userTest)
return (
<>
>
);
const status = getUserTestStatus(userTest);
const displayCorrectAnswers = status !== TestStatus.InProgress;
const handleContinueTest = () => {
}
const isCorrectVariation = (answer: AnswerResponse, variant: QuestionVariant) => {
if(answer.is_correct) return true;
const isCorrectVariant = (answer.question.correct_answers as number[]).includes(variant.id);
const isUserAnsweredVariant = answer.answer ? (answer.answer as number[]).includes(variant.id) : false;
return isCorrectVariant === isUserAnsweredVariant;
}
return (
<>
{status === TestStatus.InProgress && }
{userTest.answers.map((answer) => (
{answer.question.type !== 'text' && answer.question.variants.map((variant) => (
))}
{answer.question.type === 'text' && (
)}
))}
>
)
}
export default UserTestScreen;