FunctionExamResultDialog({ open, onOpenChange, correct, total, passed, passLine }: Props)
src/components/exam/ExamResultDialog.tsx:15
FunctionExamResumeDialog({
open,
onOpenChange,
expiresInMs,
answeredCount,
total,
onResume,
onRestart,
}: Props)
src/components/exam/ExamResumeDialog.tsx:23
FunctionExamSubmitConfirmDialog({
open,
onOpenChange,
onConfirm,
total,
answeredCount,
flaggedCount,
}: Props)
src/components/exam/ExamSubmitConfirmDialog.tsx:23
FunctionMessageDialog({
open,
onOpenChange,
title = "提示",
description,
confirmText = "确定",
onConfirm,
variant = "defa
src/components/common/MessageDialog.tsx:24
FunctionPracticeResumeDialog({
open,
onOpenChange,
noPromptThisBank,
setNoPromptThisBank,
onRestart,
onResume,
}: Props)
src/components/practice/PracticeResumeDialog.tsx:25
FunctionPracticeSearchDialog({
open,
onOpenChange,
jumpInput,
setJumpInput,
computedMatches,
jumpLoading,
onPick,
onJump,
src/components/practice/PracticeSearchDialog.tsx:68
FunctionPracticeSettingsDialog({
open,
onOpenChange,
order,
onChangeOrder,
showAnswer,
onChangeShowAnswer,
showExplanation,
src/components/practice/PracticeSettingsDialog.tsx:27
FunctionPreviewableImage({
src,
alt,
title,
containerClassName,
previewHeightClassName = "h-[80vh]",
sizes = "(max-width:
src/components/common/PreviewableImage.tsx:18
FunctionQuestionBankSelector({
selectedVersion,
selectedBank,
onVersionChange,
onBankChange,
disabled = false,
}: QuestionBankSe
src/components/common/QuestionBankSelector.tsx:49
FunctionQuestionCard({
index,
total,
question,
selected,
onChange,
showImmediateAnswer,
readOnly,
}: Props)
src/components/exam/question-card.tsx:24