All files / src/app/teacher-page/page/question-bank TeacherCreateQuestionGate.jsx

0% Statements 0/5
0% Branches 0/2
0% Functions 0/1
0% Lines 0/5

Press n or j to go to the next uncovered block, b, p or k for the previous block.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31                                                             
import { Box } from "@mui/material";
import { useLocation } from "react-router-dom";
import FeatureAccessGate from "@/utils/components/feature-access/FeatureAccessGate";
import { TEACHER_CREATE_OWN_QUESTIONS_KEY } from "@/utils/features/featureAccess";
 
/**
 * Blocks new-question authoring when `teacher.create_own_questions` is off.
 * Edit flows (card → edit with `location.state.selectedQuestion`) stay available.
 */
export default function TeacherCreateQuestionGate({ children }) {
    const location = useLocation();
    const isEdit = Boolean(location.state?.selectedQuestion);
 
    if (isEdit) {
        return children;
    }
 
    return (
        <FeatureAccessGate
            userType="teacher"
            featureKey={TEACHER_CREATE_OWN_QUESTIONS_KEY}
            title="Create questions locked"
            featureLabel="Create your own questions"
            mockContent={<Box sx={{ minHeight: 480, bgcolor: "background.default" }} />}
            blurMinHeight={480}
        >
            {children}
        </FeatureAccessGate>
    );
}