analytica-frontend-lib 1.0.96 → 1.0.97

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -22,8 +22,10 @@ var Quiz_exports = {};
22
22
  __export(Quiz_exports, {
23
23
  Quiz: () => Quiz,
24
24
  QuizAlternative: () => QuizAlternative,
25
+ QuizConnectDots: () => QuizConnectDots,
25
26
  QuizContent: () => QuizContent,
26
27
  QuizDissertative: () => QuizDissertative,
28
+ QuizFill: () => QuizFill,
27
29
  QuizFooter: () => QuizFooter,
28
30
  QuizHeader: () => QuizHeader,
29
31
  QuizHeaderResult: () => QuizHeaderResult,
@@ -34,7 +36,9 @@ __export(Quiz_exports, {
34
36
  QuizResultHeaderTitle: () => QuizResultHeaderTitle,
35
37
  QuizResultPerformance: () => QuizResultPerformance,
36
38
  QuizResultTitle: () => QuizResultTitle,
37
- QuizTitle: () => QuizTitle
39
+ QuizTitle: () => QuizTitle,
40
+ QuizTrueOrFalse: () => QuizTrueOrFalse,
41
+ getStatusBadge: () => getStatusBadge
38
42
  });
39
43
  module.exports = __toCommonJS(Quiz_exports);
40
44
  var import_phosphor_react9 = require("phosphor-react");
@@ -601,7 +605,7 @@ var AlternativesList = ({
601
605
  const groupName = name || `alternatives-${uniqueId}`;
602
606
  const [actualValue, setActualValue] = (0, import_react2.useState)(value);
603
607
  const isReadonly = mode === "readonly";
604
- const getStatusStyles = (status, isReadonly2) => {
608
+ const getStatusStyles2 = (status, isReadonly2) => {
605
609
  const hoverClass = isReadonly2 ? "" : "hover:bg-background-50";
606
610
  switch (status) {
607
611
  case "correct":
@@ -612,7 +616,7 @@ var AlternativesList = ({
612
616
  return `bg-background border-border-100 ${hoverClass}`;
613
617
  }
614
618
  };
615
- const getStatusBadge = (status) => {
619
+ const getStatusBadge2 = (status) => {
616
620
  switch (status) {
617
621
  case "correct":
618
622
  return /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(Badge_default, { variant: "solid", action: "success", iconLeft: /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(import_phosphor_react2.CheckCircle, {}), children: "Resposta correta" });
@@ -642,8 +646,8 @@ var AlternativesList = ({
642
646
  } else if (isCorrectAnswer) {
643
647
  displayStatus = "correct";
644
648
  }
645
- const statusStyles = getStatusStyles(displayStatus, true);
646
- const statusBadge = getStatusBadge(displayStatus);
649
+ const statusStyles = getStatusStyles2(displayStatus, true);
650
+ const statusBadge = getStatusBadge2(displayStatus);
647
651
  const renderRadio = () => {
648
652
  const radioClasses = `w-6 h-6 rounded-full border-2 cursor-default transition-all duration-200 flex items-center justify-center ${isUserSelected ? "border-primary-950 bg-background" : "border-border-400 bg-background"}`;
649
653
  const dotClasses = "w-3 h-3 rounded-full bg-primary-950 transition-all duration-200";
@@ -734,8 +738,8 @@ var AlternativesList = ({
734
738
  className: cn("flex flex-col", getLayoutClasses(), className),
735
739
  children: alternatives.map((alternative, index) => {
736
740
  const alternativeId = alternative.value || `alt-${index}`;
737
- const statusStyles = getStatusStyles(alternative.status, false);
738
- const statusBadge = getStatusBadge(alternative.status);
741
+ const statusStyles = getStatusStyles2(alternative.status, false);
742
+ const statusBadge = getStatusBadge2(alternative.status);
739
743
  if (layout === "detailed") {
740
744
  return /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(
741
745
  "div",
@@ -1830,7 +1834,7 @@ var Select = ({
1830
1834
  }
1831
1835
  }, [propValue]);
1832
1836
  const sizeClasses = SIZE_CLASSES6[size];
1833
- return /* @__PURE__ */ (0, import_jsx_runtime9.jsxs)("div", { className: cn("w-auto", className), children: [
1837
+ return /* @__PURE__ */ (0, import_jsx_runtime9.jsxs)("div", { className: cn("w-fit", className), children: [
1834
1838
  label && /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(
1835
1839
  "label",
1836
1840
  {
@@ -1839,7 +1843,7 @@ var Select = ({
1839
1843
  children: label
1840
1844
  }
1841
1845
  ),
1842
- /* @__PURE__ */ (0, import_jsx_runtime9.jsx)("div", { className: cn("relative"), ref: selectRef, children: injectStore2(children, store, size, selectId) }),
1846
+ /* @__PURE__ */ (0, import_jsx_runtime9.jsx)("div", { className: cn("relative w-fit"), ref: selectRef, children: injectStore2(children, store, size, selectId) }),
1843
1847
  (helperText || errorMessage) && /* @__PURE__ */ (0, import_jsx_runtime9.jsxs)("div", { className: "mt-1.5 gap-1.5", children: [
1844
1848
  helperText && /* @__PURE__ */ (0, import_jsx_runtime9.jsx)("p", { className: "text-sm text-text-500", children: helperText }),
1845
1849
  errorMessage && /* @__PURE__ */ (0, import_jsx_runtime9.jsxs)("p", { className: "flex gap-1 items-center text-sm text-indicator-error", children: [
@@ -1932,7 +1936,7 @@ var SelectContent = (0, import_react6.forwardRef)(
1932
1936
  role: "menu",
1933
1937
  ref,
1934
1938
  className: cn(
1935
- "bg-secondary z-50 min-w-[210px] overflow-hidden rounded-md border p-1 shadow-md border-border-100",
1939
+ "bg-secondary z-50 min-w-[210px] max-h-[300px] overflow-y-auto overflow-x-hidden rounded-md border p-1 shadow-md border-border-100",
1936
1940
  getPositionClasses(),
1937
1941
  className
1938
1942
  ),
@@ -4211,7 +4215,7 @@ var MultipleChoiceList = ({
4211
4215
  (0, import_react10.useEffect)(() => {
4212
4216
  setActualValue(selectedValues);
4213
4217
  }, [selectedValues]);
4214
- const getStatusBadge = (status) => {
4218
+ const getStatusBadge2 = (status) => {
4215
4219
  switch (status) {
4216
4220
  case "correct":
4217
4221
  return /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(Badge_default, { variant: "solid", action: "success", iconLeft: /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(import_phosphor_react7.CheckCircle, {}), children: "Resposta correta" });
@@ -4221,7 +4225,7 @@ var MultipleChoiceList = ({
4221
4225
  return null;
4222
4226
  }
4223
4227
  };
4224
- const getStatusStyles = (status) => {
4228
+ const getStatusStyles2 = (status) => {
4225
4229
  switch (status) {
4226
4230
  case "correct":
4227
4231
  return "bg-success-background border-success-300";
@@ -4242,8 +4246,8 @@ var MultipleChoiceList = ({
4242
4246
  if (mode === "readonly") {
4243
4247
  return /* @__PURE__ */ (0, import_jsx_runtime15.jsx)("div", { className: cn("flex flex-col gap-2", className), children: choices.map((choice, i) => {
4244
4248
  const isSelected = actualValue?.includes(choice.value) || false;
4245
- const statusStyles = getStatusStyles(choice.status);
4246
- const statusBadge = getStatusBadge(choice.status);
4249
+ const statusStyles = getStatusStyles2(choice.status);
4250
+ const statusBadge = getStatusBadge2(choice.status);
4247
4251
  return /* @__PURE__ */ (0, import_jsx_runtime15.jsxs)(
4248
4252
  "div",
4249
4253
  {
@@ -4465,6 +4469,24 @@ var TextArea_default = TextArea;
4465
4469
 
4466
4470
  // src/components/Quiz/Quiz.tsx
4467
4471
  var import_jsx_runtime17 = require("react/jsx-runtime");
4472
+ var getStatusBadge = (status) => {
4473
+ switch (status) {
4474
+ case "correct":
4475
+ return /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(Badge_default, { variant: "solid", action: "success", iconLeft: /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(import_phosphor_react9.CheckCircle, {}), children: "Resposta correta" });
4476
+ case "incorrect":
4477
+ return /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(Badge_default, { variant: "solid", action: "error", iconLeft: /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(import_phosphor_react9.XCircle, {}), children: "Resposta incorreta" });
4478
+ default:
4479
+ return null;
4480
+ }
4481
+ };
4482
+ var getStatusStyles = (variantCorrect) => {
4483
+ switch (variantCorrect) {
4484
+ case "correct":
4485
+ return "bg-success-background border-success-300";
4486
+ case "incorrect":
4487
+ return "bg-error-background border-error-300";
4488
+ }
4489
+ };
4468
4490
  var Quiz = (0, import_react12.forwardRef)(({ children, className, ...props }, ref) => {
4469
4491
  return /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(
4470
4492
  "div",
@@ -4543,6 +4565,11 @@ var QuizTitle = (0, import_react12.forwardRef)(
4543
4565
  );
4544
4566
  }
4545
4567
  );
4568
+ var QuizSubTitle = (0, import_react12.forwardRef)(
4569
+ ({ subTitle, ...props }, ref) => {
4570
+ return /* @__PURE__ */ (0, import_jsx_runtime17.jsx)("div", { className: "px-4 pb-2 pt-6", ...props, ref, children: /* @__PURE__ */ (0, import_jsx_runtime17.jsx)("p", { className: "font-bold text-lg text-text-950", children: subTitle }) });
4571
+ }
4572
+ );
4546
4573
  var QuizHeader = () => {
4547
4574
  const { getCurrentQuestion } = useQuizStore();
4548
4575
  const currentQuestion = getCurrentQuestion();
@@ -4555,46 +4582,38 @@ var QuizHeader = () => {
4555
4582
  }
4556
4583
  );
4557
4584
  };
4558
- var QuizContent = (0, import_react12.forwardRef)(({ type = "Alternativas", className, variant, ...props }, ref) => {
4559
- const { getCurrentQuestion, getCurrentAnswer } = useQuizStore();
4585
+ var QuizContainer = (0, import_react12.forwardRef)(({ children, className, ...props }, ref) => {
4586
+ return /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(
4587
+ "div",
4588
+ {
4589
+ ref,
4590
+ className: cn(
4591
+ "bg-background rounded-t-xl px-4 pt-4 pb-[80px] h-auto flex flex-col gap-4 mb-auto",
4592
+ className
4593
+ ),
4594
+ ...props,
4595
+ children
4596
+ }
4597
+ );
4598
+ });
4599
+ var QuizContent = (0, import_react12.forwardRef)(({ variant, paddingBottom }) => {
4600
+ const { getCurrentQuestion } = useQuizStore();
4560
4601
  const currentQuestion = getCurrentQuestion();
4561
- const currentAnswer = getCurrentAnswer();
4562
- return /* @__PURE__ */ (0, import_jsx_runtime17.jsxs)(import_jsx_runtime17.Fragment, { children: [
4563
- /* @__PURE__ */ (0, import_jsx_runtime17.jsx)("div", { className: "px-4 pb-2 pt-6", children: /* @__PURE__ */ (0, import_jsx_runtime17.jsx)("p", { className: "font-bold text-lg text-text-950", children: type }) }),
4564
- /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(
4565
- "div",
4566
- {
4567
- ref,
4568
- className: cn(
4569
- "bg-background rounded-t-xl px-4 pt-4 pb-[80px] h-full flex flex-col gap-4 mb-auto",
4570
- className
4571
- ),
4572
- ...props,
4573
- children: currentQuestion && /* @__PURE__ */ (0, import_jsx_runtime17.jsxs)(import_jsx_runtime17.Fragment, { children: [
4574
- currentQuestion.type === "ALTERNATIVA" /* ALTERNATIVA */ && /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(QuizAlternative, { variant }),
4575
- currentQuestion.type === "MULTIPLA_CHOICE" /* MULTIPLA_CHOICE */ && /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(QuizMultipleChoice, { variant }),
4576
- currentQuestion.type === "DISSERTATIVA" /* DISSERTATIVA */ && /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(QuizDissertative, { variant })
4577
- ] })
4578
- }
4579
- ),
4580
- currentQuestion?.type === "DISSERTATIVA" /* DISSERTATIVA */ && variant === "result" && currentAnswer?.answerStatus == "RESPOSTA_INCORRETA" /* RESPOSTA_INCORRETA */ && /* @__PURE__ */ (0, import_jsx_runtime17.jsxs)(import_jsx_runtime17.Fragment, { children: [
4581
- /* @__PURE__ */ (0, import_jsx_runtime17.jsx)("div", { className: "px-4 pb-2 pt-6", children: /* @__PURE__ */ (0, import_jsx_runtime17.jsx)("p", { className: "font-bold text-lg text-text-950", children: "Observa\xE7\xE3o do professor" }) }),
4582
- /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(
4583
- "div",
4584
- {
4585
- ref,
4586
- className: cn(
4587
- "bg-background rounded-t-xl px-4 pt-4 pb-[80px] h-full flex flex-col gap-4 mb-auto",
4588
- className
4589
- ),
4590
- ...props,
4591
- children: /* @__PURE__ */ (0, import_jsx_runtime17.jsx)("p", { className: "text-text-600 text-md whitespace-pre-wrap", children: "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed euismod, urna eu tincidunt consectetur, nisi nisl aliquam nunc, eget aliquam massa nisl quis neque. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia curae; Integer euismod, urna eu tincidunt consectetur, nisi nisl aliquam nunc, eget aliquam massa nisl quis neque. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Suspendisse potenti. Nullam ac urna eu felis dapibus condimentum sit amet a augue. Sed non neque elit. Sed ut imperdiet nisi. Proin condimentum fermentum nunc. Etiam pharetra, erat sed fermentum feugiat, velit mauris egestas quam, ut aliquam massa nisl quis neque. Suspendisse in orci enim. Mauris euismod, urna eu tincidunt consectetur, nisi nisl aliquam nunc, eget aliquam massa nisl quis neque. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia curae; Integer euismod, urna eu tincidunt consectetur, nisi nisl aliquam nunc, eget aliquam massa nisl quis neque. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Suspendisse potenti. Nullam ac urna eu felis dapibus condimentum sit amet a augue. Sed non neque elit. Sed ut imperdiet nisi. Proin condimentum fermentum nunc. Etiam pharetra, erat sed fermentum feugiat, velit mauris egestas quam, ut aliquam massa nisl quis neque. Suspendisse in orci enim. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia curae; Integer euismod, urna eu tincidunt consectetur, nisi nisl aliquam nunc, eget aliquam massa nisl quis neque. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Suspendisse potenti. Nullam ac urna eu felis dapibus condimentum sit amet a augue. Sed non neque elit. Sed ut imperdiet nisi. Proin condimentum fermentum nunc. Etiam pharetra, erat sed fermentum feugiat, velit mauris egestas quam, ut aliquam massa nisl quis neque. Suspendisse in orci enim." })
4592
- }
4593
- )
4594
- ] })
4595
- ] });
4602
+ const questionComponents = {
4603
+ ["ALTERNATIVA" /* ALTERNATIVA */]: QuizAlternative,
4604
+ ["MULTIPLA_CHOICE" /* MULTIPLA_CHOICE */]: QuizMultipleChoice,
4605
+ ["DISSERTATIVA" /* DISSERTATIVA */]: QuizDissertative,
4606
+ ["VERDADEIRO_FALSO" /* VERDADEIRO_FALSO */]: QuizTrueOrFalse,
4607
+ ["LIGAR_PONTOS" /* LIGAR_PONTOS */]: QuizConnectDots,
4608
+ ["PREENCHER" /* PREENCHER */]: QuizFill
4609
+ };
4610
+ const QuestionComponent = currentQuestion ? questionComponents[currentQuestion.type] : null;
4611
+ return QuestionComponent ? /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(QuestionComponent, { variant, paddingBottom }) : null;
4596
4612
  });
4597
- var QuizAlternative = ({ variant = "default" }) => {
4613
+ var QuizAlternative = ({
4614
+ variant = "default",
4615
+ paddingBottom
4616
+ }) => {
4598
4617
  const { getCurrentQuestion, selectAnswer, getCurrentAnswer } = useQuizStore();
4599
4618
  const currentQuestion = getCurrentQuestion();
4600
4619
  const currentAnswer = getCurrentAnswer();
@@ -4618,26 +4637,30 @@ var QuizAlternative = ({ variant = "default" }) => {
4618
4637
  });
4619
4638
  if (!alternatives)
4620
4639
  return /* @__PURE__ */ (0, import_jsx_runtime17.jsx)("div", { children: /* @__PURE__ */ (0, import_jsx_runtime17.jsx)("p", { children: "N\xE3o h\xE1 Alternativas" }) });
4621
- return /* @__PURE__ */ (0, import_jsx_runtime17.jsx)("div", { className: "space-y-4", children: /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(
4622
- AlternativesList,
4623
- {
4624
- mode: variant === "default" ? "interactive" : "readonly",
4625
- name: `question-${currentQuestion?.id || "1"}`,
4626
- layout: "compact",
4627
- alternatives,
4628
- value: currentAnswer?.optionId || "",
4629
- selectedValue: currentAnswer?.optionId || "",
4630
- onValueChange: (value) => {
4631
- if (currentQuestion) {
4632
- selectAnswer(currentQuestion.id, value);
4640
+ return /* @__PURE__ */ (0, import_jsx_runtime17.jsxs)(import_jsx_runtime17.Fragment, { children: [
4641
+ /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(QuizSubTitle, { subTitle: "Alternativas" }),
4642
+ /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(QuizContainer, { className: cn("", paddingBottom), children: /* @__PURE__ */ (0, import_jsx_runtime17.jsx)("div", { className: "space-y-4", children: /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(
4643
+ AlternativesList,
4644
+ {
4645
+ mode: variant === "default" ? "interactive" : "readonly",
4646
+ name: `question-${currentQuestion?.id || "1"}`,
4647
+ layout: "compact",
4648
+ alternatives,
4649
+ value: currentAnswer?.optionId || "",
4650
+ selectedValue: currentAnswer?.optionId || "",
4651
+ onValueChange: (value) => {
4652
+ if (currentQuestion) {
4653
+ selectAnswer(currentQuestion.id, value);
4654
+ }
4633
4655
  }
4634
- }
4635
- },
4636
- `question-${currentQuestion?.id || "1"}`
4637
- ) });
4656
+ },
4657
+ `question-${currentQuestion?.id || "1"}`
4658
+ ) }) })
4659
+ ] });
4638
4660
  };
4639
4661
  var QuizMultipleChoice = ({
4640
- variant = "default"
4662
+ variant = "default",
4663
+ paddingBottom
4641
4664
  }) => {
4642
4665
  const { getCurrentQuestion, selectMultipleAnswer, getAllCurrentAnswer } = useQuizStore();
4643
4666
  const currentQuestion = getCurrentQuestion();
@@ -4695,20 +4718,24 @@ var QuizMultipleChoice = ({
4695
4718
  });
4696
4719
  if (!choices)
4697
4720
  return /* @__PURE__ */ (0, import_jsx_runtime17.jsx)("div", { children: /* @__PURE__ */ (0, import_jsx_runtime17.jsx)("p", { children: "N\xE3o h\xE1 Escolhas Multiplas" }) });
4698
- return /* @__PURE__ */ (0, import_jsx_runtime17.jsx)("div", { className: "space-y-4", children: /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(
4699
- MultipleChoiceList,
4700
- {
4701
- choices,
4702
- name: questionKey,
4703
- selectedValues: stableSelectedValues,
4704
- onHandleSelectedValues: handleSelectedValues,
4705
- mode: variant === "default" ? "interactive" : "readonly"
4706
- },
4707
- questionKey
4708
- ) });
4721
+ return /* @__PURE__ */ (0, import_jsx_runtime17.jsxs)(import_jsx_runtime17.Fragment, { children: [
4722
+ /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(QuizSubTitle, { subTitle: "Alternativas" }),
4723
+ /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(QuizContainer, { className: cn("", paddingBottom), children: /* @__PURE__ */ (0, import_jsx_runtime17.jsx)("div", { className: "space-y-4", children: /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(
4724
+ MultipleChoiceList,
4725
+ {
4726
+ choices,
4727
+ name: questionKey,
4728
+ selectedValues: stableSelectedValues,
4729
+ onHandleSelectedValues: handleSelectedValues,
4730
+ mode: variant === "default" ? "interactive" : "readonly"
4731
+ },
4732
+ questionKey
4733
+ ) }) })
4734
+ ] });
4709
4735
  };
4710
4736
  var QuizDissertative = ({
4711
- variant = "default"
4737
+ variant = "default",
4738
+ paddingBottom
4712
4739
  }) => {
4713
4740
  const { getCurrentQuestion, getCurrentAnswer, selectDissertativeAnswer } = useQuizStore();
4714
4741
  const currentQuestion = getCurrentQuestion();
@@ -4735,17 +4762,388 @@ var QuizDissertative = ({
4735
4762
  if (!currentQuestion) {
4736
4763
  return /* @__PURE__ */ (0, import_jsx_runtime17.jsx)("div", { className: "space-y-4", children: /* @__PURE__ */ (0, import_jsx_runtime17.jsx)("p", { className: "text-text-600 text-md", children: "Nenhuma quest\xE3o dispon\xEDvel" }) });
4737
4764
  }
4738
- return /* @__PURE__ */ (0, import_jsx_runtime17.jsx)("div", { className: "space-y-4 max-h-[600px] overflow-y-auto", children: variant === "default" ? /* @__PURE__ */ (0, import_jsx_runtime17.jsx)("div", { className: "space-y-4", children: /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(
4739
- TextArea_default,
4765
+ return /* @__PURE__ */ (0, import_jsx_runtime17.jsxs)(import_jsx_runtime17.Fragment, { children: [
4766
+ /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(QuizSubTitle, { subTitle: "Resposta" }),
4767
+ /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(QuizContainer, { className: cn(variant != "result" && paddingBottom), children: /* @__PURE__ */ (0, import_jsx_runtime17.jsx)("div", { className: "space-y-4 max-h-[600px] overflow-y-auto", children: variant === "default" ? /* @__PURE__ */ (0, import_jsx_runtime17.jsx)("div", { className: "space-y-4", children: /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(
4768
+ TextArea_default,
4769
+ {
4770
+ ref: textareaRef,
4771
+ placeholder: "Escreva sua resposta",
4772
+ value: currentAnswer?.answer || "",
4773
+ onChange: (e) => handleAnswerChange(e.target.value),
4774
+ rows: 4,
4775
+ className: "min-h-[120px] max-h-[400px] resize-none overflow-y-auto"
4776
+ }
4777
+ ) }) : /* @__PURE__ */ (0, import_jsx_runtime17.jsx)("div", { className: "space-y-4", children: /* @__PURE__ */ (0, import_jsx_runtime17.jsx)("p", { className: "text-text-600 text-md whitespace-pre-wrap", children: currentAnswer?.answer || "Nenhuma resposta fornecida" }) }) }) }),
4778
+ variant === "result" && currentAnswer?.answerStatus == "RESPOSTA_INCORRETA" /* RESPOSTA_INCORRETA */ && /* @__PURE__ */ (0, import_jsx_runtime17.jsxs)(import_jsx_runtime17.Fragment, { children: [
4779
+ /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(QuizSubTitle, { subTitle: "Observa\xE7\xE3o do professor" }),
4780
+ /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(QuizContainer, { className: cn("", paddingBottom), children: /* @__PURE__ */ (0, import_jsx_runtime17.jsx)("p", { className: "text-text-600 text-md whitespace-pre-wrap", children: "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed euismod, urna eu tincidunt consectetur, nisi nisl aliquam nunc, eget aliquam massa nisl quis neque. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia curae; Integer euismod, urna eu tincidunt consectetur, nisi nisl aliquam nunc, eget aliquam massa nisl quis neque. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Suspendisse potenti. Nullam ac urna eu felis dapibus condimentum sit amet a augue. Sed non neque elit. Sed ut imperdiet nisi. Proin condimentum fermentum nunc. Etiam pharetra, erat sed fermentum feugiat, velit mauris egestas quam, ut aliquam massa nisl quis neque. Suspendisse in orci enim. Mauris euismod, urna eu tincidunt consectetur, nisi nisl aliquam nunc, eget aliquam massa nisl quis neque. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia curae; Integer euismod, urna eu tincidunt consectetur, nisi nisl aliquam nunc, eget aliquam massa nisl quis neque. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Suspendisse potenti. Nullam ac urna eu felis dapibus condimentum sit amet a augue. Sed non neque elit. Sed ut imperdiet nisi. Proin condimentum fermentum nunc. Etiam pharetra, erat sed fermentum feugiat, velit mauris egestas quam, ut aliquam massa nisl quis neque. Suspendisse in orci enim. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia curae; Integer euismod, urna eu tincidunt consectetur, nisi nisl aliquam nunc, eget aliquam massa nisl quis neque. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Suspendisse potenti. Nullam ac urna eu felis dapibus condimentum sit amet a augue. Sed non neque elit. Sed ut imperdiet nisi. Proin condimentum fermentum nunc. Etiam pharetra, erat sed fermentum feugiat, velit mauris egestas quam, ut aliquam massa nisl quis neque. Suspendisse in orci enim." }) })
4781
+ ] })
4782
+ ] });
4783
+ };
4784
+ var QuizTrueOrFalse = ({
4785
+ variant = "default",
4786
+ paddingBottom
4787
+ }) => {
4788
+ const options = [
4740
4789
  {
4741
- ref: textareaRef,
4742
- placeholder: "Escreva sua resposta",
4743
- value: currentAnswer?.answer || "",
4744
- onChange: (e) => handleAnswerChange(e.target.value),
4745
- rows: 4,
4746
- className: "min-h-[120px] max-h-[400px] resize-none overflow-y-auto"
4790
+ label: "25 metros",
4791
+ isCorrect: true
4792
+ },
4793
+ {
4794
+ label: "30 metros",
4795
+ isCorrect: false
4796
+ },
4797
+ {
4798
+ label: "40 metros",
4799
+ isCorrect: false
4800
+ },
4801
+ {
4802
+ label: "50 metros",
4803
+ isCorrect: false
4747
4804
  }
4748
- ) }) : /* @__PURE__ */ (0, import_jsx_runtime17.jsx)("div", { className: "space-y-4", children: /* @__PURE__ */ (0, import_jsx_runtime17.jsx)("p", { className: "text-text-600 text-md whitespace-pre-wrap", children: currentAnswer?.answer || "Nenhuma resposta fornecida" }) }) });
4805
+ ];
4806
+ const getLetterByIndex = (index) => String.fromCharCode(97 + index);
4807
+ const isDefaultVariant = variant == "default";
4808
+ return /* @__PURE__ */ (0, import_jsx_runtime17.jsxs)(import_jsx_runtime17.Fragment, { children: [
4809
+ /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(QuizSubTitle, { subTitle: "Alternativas" }),
4810
+ /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(QuizContainer, { className: cn("", paddingBottom), children: /* @__PURE__ */ (0, import_jsx_runtime17.jsx)("div", { className: "flex flex-col gap-3.5", children: options.map((option, index) => {
4811
+ const variantCorrect = option.isCorrect ? "correct" : "incorrect";
4812
+ return /* @__PURE__ */ (0, import_jsx_runtime17.jsxs)(
4813
+ "section",
4814
+ {
4815
+ className: "flex flex-col gap-2",
4816
+ children: [
4817
+ /* @__PURE__ */ (0, import_jsx_runtime17.jsxs)(
4818
+ "div",
4819
+ {
4820
+ className: cn(
4821
+ "flex flex-row justify-between items-center gap-2 p-2 rounded-md",
4822
+ !isDefaultVariant ? getStatusStyles(variantCorrect) : ""
4823
+ ),
4824
+ children: [
4825
+ /* @__PURE__ */ (0, import_jsx_runtime17.jsx)("p", { className: "text-text-900 text-sm", children: getLetterByIndex(index).concat(") ").concat(option.label) }),
4826
+ isDefaultVariant ? /* @__PURE__ */ (0, import_jsx_runtime17.jsxs)(Select_default, { size: "medium", children: [
4827
+ /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(SelectTrigger, { className: "w-[180px]", children: /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(SelectValue, { placeholder: "Selecione opc\xE3o" }) }),
4828
+ /* @__PURE__ */ (0, import_jsx_runtime17.jsxs)(SelectContent, { children: [
4829
+ /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(SelectItem, { value: "V", children: "Verdadeiro" }),
4830
+ /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(SelectItem, { value: "F", children: "Falso" })
4831
+ ] })
4832
+ ] }) : /* @__PURE__ */ (0, import_jsx_runtime17.jsx)("div", { className: "flex-shrink-0", children: getStatusBadge(variantCorrect) })
4833
+ ]
4834
+ }
4835
+ ),
4836
+ !isDefaultVariant && /* @__PURE__ */ (0, import_jsx_runtime17.jsxs)("span", { className: "flex flex-row gap-2 items-center", children: [
4837
+ /* @__PURE__ */ (0, import_jsx_runtime17.jsx)("p", { className: "text-text-800 text-2xs", children: "Resposta selecionada: V" }),
4838
+ !option.isCorrect && /* @__PURE__ */ (0, import_jsx_runtime17.jsx)("p", { className: "text-text-800 text-2xs", children: "Resposta correta: F" })
4839
+ ] })
4840
+ ]
4841
+ },
4842
+ option.label.concat(`-${index}`)
4843
+ );
4844
+ }) }) })
4845
+ ] });
4846
+ };
4847
+ var QuizConnectDots = ({
4848
+ variant = "default",
4849
+ paddingBottom
4850
+ }) => {
4851
+ const dotsOptions = [
4852
+ { label: "Ra\xE7\xE3o" },
4853
+ { label: "Rato" },
4854
+ { label: "Grama" },
4855
+ { label: "Peixe" }
4856
+ ];
4857
+ const options = [
4858
+ {
4859
+ label: "Cachorro",
4860
+ correctOption: "Ra\xE7\xE3o"
4861
+ },
4862
+ {
4863
+ label: "Gato",
4864
+ correctOption: "Rato"
4865
+ },
4866
+ {
4867
+ label: "Cabra",
4868
+ correctOption: "Grama"
4869
+ },
4870
+ {
4871
+ label: "Baleia",
4872
+ correctOption: "Peixe"
4873
+ }
4874
+ ];
4875
+ const mockUserAnswers = [
4876
+ {
4877
+ option: "Cachorro",
4878
+ dotOption: "Ra\xE7\xE3o",
4879
+ correctOption: "Ra\xE7\xE3o",
4880
+ isCorrect: true
4881
+ },
4882
+ {
4883
+ option: "Gato",
4884
+ dotOption: "Rato",
4885
+ correctOption: "Rato",
4886
+ isCorrect: true
4887
+ },
4888
+ {
4889
+ option: "Cabra",
4890
+ dotOption: "Peixe",
4891
+ correctOption: "Grama",
4892
+ isCorrect: false
4893
+ },
4894
+ {
4895
+ option: "Baleia",
4896
+ dotOption: "Grama",
4897
+ correctOption: "Peixe",
4898
+ isCorrect: false
4899
+ }
4900
+ ];
4901
+ const [userAnswers, setUserAnswers] = (0, import_react12.useState)(() => {
4902
+ if (variant === "result") {
4903
+ return mockUserAnswers;
4904
+ }
4905
+ return options.map((option) => ({
4906
+ option: option.label,
4907
+ dotOption: null,
4908
+ correctOption: option.correctOption,
4909
+ isCorrect: null
4910
+ }));
4911
+ });
4912
+ const handleSelectDot = (optionIndex, dotValue) => {
4913
+ setUserAnswers((prev) => {
4914
+ const next = [...prev];
4915
+ const { label: optionLabel, correctOption } = options[optionIndex];
4916
+ next[optionIndex] = {
4917
+ option: optionLabel,
4918
+ dotOption: dotValue,
4919
+ correctOption,
4920
+ isCorrect: dotValue ? dotValue === correctOption : null
4921
+ };
4922
+ return next;
4923
+ });
4924
+ };
4925
+ const getLetterByIndex = (index) => String.fromCharCode(97 + index);
4926
+ const isDefaultVariant = variant === "default";
4927
+ const assignedDots = new Set(
4928
+ userAnswers.map((a) => a.dotOption).filter(Boolean)
4929
+ );
4930
+ return /* @__PURE__ */ (0, import_jsx_runtime17.jsxs)(import_jsx_runtime17.Fragment, { children: [
4931
+ /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(QuizSubTitle, { subTitle: "Alternativas" }),
4932
+ /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(QuizContainer, { className: cn("", paddingBottom), children: /* @__PURE__ */ (0, import_jsx_runtime17.jsx)("div", { className: "flex flex-col gap-3.5", children: options.map((option, index) => {
4933
+ const answer = userAnswers[index];
4934
+ const variantCorrect = answer.isCorrect ? "correct" : "incorrect";
4935
+ return /* @__PURE__ */ (0, import_jsx_runtime17.jsxs)("section", { className: "flex flex-col gap-2", children: [
4936
+ /* @__PURE__ */ (0, import_jsx_runtime17.jsxs)(
4937
+ "div",
4938
+ {
4939
+ className: cn(
4940
+ "flex flex-row justify-between items-center gap-2 p-2 rounded-md",
4941
+ !isDefaultVariant ? getStatusStyles(variantCorrect) : ""
4942
+ ),
4943
+ children: [
4944
+ /* @__PURE__ */ (0, import_jsx_runtime17.jsx)("p", { className: "text-text-900 text-sm", children: getLetterByIndex(index) + ") " + option.label }),
4945
+ isDefaultVariant ? /* @__PURE__ */ (0, import_jsx_runtime17.jsxs)(
4946
+ Select_default,
4947
+ {
4948
+ size: "medium",
4949
+ value: answer.dotOption || void 0,
4950
+ onValueChange: (value) => handleSelectDot(index, value),
4951
+ children: [
4952
+ /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(SelectTrigger, { className: "w-[180px]", children: /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(SelectValue, { placeholder: "Selecione op\xE7\xE3o" }) }),
4953
+ /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(SelectContent, { children: dotsOptions.filter(
4954
+ (dot) => !assignedDots.has(dot.label) || answer.dotOption === dot.label
4955
+ ).map((dot) => /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(SelectItem, { value: dot.label, children: dot.label }, dot.label)) })
4956
+ ]
4957
+ }
4958
+ ) : /* @__PURE__ */ (0, import_jsx_runtime17.jsx)("div", { className: "flex-shrink-0", children: answer.isCorrect === null ? null : getStatusBadge(variantCorrect) })
4959
+ ]
4960
+ }
4961
+ ),
4962
+ !isDefaultVariant && /* @__PURE__ */ (0, import_jsx_runtime17.jsxs)("span", { className: "flex flex-row gap-2 items-center", children: [
4963
+ /* @__PURE__ */ (0, import_jsx_runtime17.jsxs)("p", { className: "text-text-800 text-2xs", children: [
4964
+ "Resposta selecionada: ",
4965
+ answer.dotOption || "Nenhuma"
4966
+ ] }),
4967
+ !answer.isCorrect && /* @__PURE__ */ (0, import_jsx_runtime17.jsxs)("p", { className: "text-text-800 text-2xs", children: [
4968
+ "Resposta correta: ",
4969
+ answer.correctOption
4970
+ ] })
4971
+ ] })
4972
+ ] }, option.label);
4973
+ }) }) })
4974
+ ] });
4975
+ };
4976
+ var QuizFill = ({
4977
+ variant = "default",
4978
+ paddingBottom = "pb-[80px]"
4979
+ }) => {
4980
+ const options = [
4981
+ "ci\xEAncia",
4982
+ "disciplina",
4983
+ "\xE1rea",
4984
+ "especialidade",
4985
+ "varia\xE7\xF5es"
4986
+ ];
4987
+ const exampleText = `A meteorologia \xE9 a {{ciencia}} que estuda os fen\xF4menos atmosf\xE9ricos e suas {{varia\xE7\xF5es}}. Esta disciplina cient\xEDfica tem como objetivo principal {{objetivo}} o comportamento da atmosfera terrestre.
4988
+
4989
+ Os meteorologistas utilizam diversos {{instrumentos}} para coletar dados atmosf\xE9ricos, incluindo term\xF4metros, bar\xF4metros e {{equipamentos}} modernos como radares meteorol\xF3gicos.`;
4990
+ const mockUserAnswers = [
4991
+ {
4992
+ selectId: "ciencia",
4993
+ userAnswer: "tecnologia",
4994
+ correctAnswer: "ci\xEAncia",
4995
+ isCorrect: false
4996
+ },
4997
+ {
4998
+ selectId: "varia\xE7\xF5es",
4999
+ userAnswer: "varia\xE7\xF5es",
5000
+ correctAnswer: "varia\xE7\xF5es",
5001
+ isCorrect: true
5002
+ },
5003
+ {
5004
+ selectId: "objetivo",
5005
+ userAnswer: "estudar",
5006
+ correctAnswer: "compreender",
5007
+ isCorrect: false
5008
+ },
5009
+ {
5010
+ selectId: "instrumentos",
5011
+ userAnswer: "ferramentas",
5012
+ correctAnswer: "instrumentos",
5013
+ isCorrect: false
5014
+ },
5015
+ {
5016
+ selectId: "equipamentos",
5017
+ userAnswer: "equipamentos",
5018
+ correctAnswer: "equipamentos",
5019
+ isCorrect: true
5020
+ }
5021
+ ];
5022
+ const [answers, setAnswers] = (0, import_react12.useState)({});
5023
+ const baseId = (0, import_react12.useId)();
5024
+ const getAvailableOptionsForSelect = (selectId) => {
5025
+ const usedOptions = Object.entries(answers).filter(([key]) => key !== selectId).map(([, value]) => value);
5026
+ return options.filter((option) => !usedOptions.includes(option));
5027
+ };
5028
+ const handleSelectChange = (selectId, value) => {
5029
+ const newAnswers = { ...answers, [selectId]: value };
5030
+ setAnswers(newAnswers);
5031
+ };
5032
+ const renderResolutionElement = (selectId) => {
5033
+ const mockAnswer = mockUserAnswers.find(
5034
+ (answer) => answer.selectId === selectId
5035
+ );
5036
+ return /* @__PURE__ */ (0, import_jsx_runtime17.jsx)("p", { className: "inline-flex mb-2.5 text-success-600 font-semibold text-md border-b-2 border-success-600", children: mockAnswer?.correctAnswer });
5037
+ };
5038
+ const renderDefaultElement = (selectId, startIndex, selectedValue, availableOptionsForThisSelect) => {
5039
+ return /* @__PURE__ */ (0, import_jsx_runtime17.jsxs)(
5040
+ Select_default,
5041
+ {
5042
+ value: selectedValue,
5043
+ onValueChange: (value) => handleSelectChange(selectId, value),
5044
+ className: "inline-flex mb-2.5",
5045
+ children: [
5046
+ /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(SelectTrigger, { className: "inline-flex w-auto min-w-[140px] h-8 mx-1 bg-white border-gray-300", children: /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(SelectValue, { placeholder: "Selecione op\xE7\xE3o" }) }),
5047
+ /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(SelectContent, { children: availableOptionsForThisSelect.map((option, index) => /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(SelectItem, { value: option, children: option }, `${option}-${index}`)) })
5048
+ ]
5049
+ },
5050
+ `${selectId}-${startIndex}`
5051
+ );
5052
+ };
5053
+ const renderResultElement = (selectId) => {
5054
+ const mockAnswer = mockUserAnswers.find(
5055
+ (answer) => answer.selectId === selectId
5056
+ );
5057
+ if (!mockAnswer) return null;
5058
+ const action = mockAnswer.isCorrect ? "success" : "error";
5059
+ const icon = mockAnswer.isCorrect ? /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(import_phosphor_react9.CheckCircle, {}) : /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(import_phosphor_react9.XCircle, {});
5060
+ return /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(
5061
+ Badge_default,
5062
+ {
5063
+ variant: "solid",
5064
+ action,
5065
+ iconRight: icon,
5066
+ size: "large",
5067
+ className: "py-3 w-[180px] justify-between mb-2.5",
5068
+ children: /* @__PURE__ */ (0, import_jsx_runtime17.jsx)("span", { className: "text-text-900", children: mockAnswer.userAnswer })
5069
+ },
5070
+ selectId
5071
+ );
5072
+ };
5073
+ const renderTextWithSelects = (text, isResolution) => {
5074
+ const elements = [];
5075
+ let lastIndex = 0;
5076
+ let elementCounter = 0;
5077
+ const regex = /\{\{([\p{L}\p{M}\d_]+)\}\}/gu;
5078
+ let match;
5079
+ while ((match = regex.exec(text)) !== null) {
5080
+ const [fullMatch, selectId] = match;
5081
+ const startIndex = match.index;
5082
+ if (startIndex > lastIndex) {
5083
+ elements.push({
5084
+ element: text.slice(lastIndex, startIndex),
5085
+ id: `${baseId}-text-${++elementCounter}`
5086
+ });
5087
+ }
5088
+ const selectedValue = answers[selectId];
5089
+ const availableOptionsForThisSelect = getAvailableOptionsForSelect(selectId);
5090
+ if (isResolution) {
5091
+ elements.push({
5092
+ element: renderResolutionElement(selectId),
5093
+ id: `${baseId}-resolution-${++elementCounter}`
5094
+ });
5095
+ } else if (variant === "default") {
5096
+ elements.push({
5097
+ element: renderDefaultElement(
5098
+ selectId,
5099
+ startIndex,
5100
+ selectedValue,
5101
+ availableOptionsForThisSelect
5102
+ ),
5103
+ id: `${baseId}-select-${++elementCounter}`
5104
+ });
5105
+ } else {
5106
+ const resultElement = renderResultElement(selectId);
5107
+ if (resultElement) {
5108
+ elements.push({
5109
+ element: resultElement,
5110
+ id: `${baseId}-result-${++elementCounter}`
5111
+ });
5112
+ }
5113
+ }
5114
+ lastIndex = match.index + fullMatch.length;
5115
+ }
5116
+ if (lastIndex < text.length) {
5117
+ elements.push({
5118
+ element: text.slice(lastIndex),
5119
+ id: `${baseId}-text-${++elementCounter}`
5120
+ });
5121
+ }
5122
+ return elements;
5123
+ };
5124
+ return /* @__PURE__ */ (0, import_jsx_runtime17.jsxs)(import_jsx_runtime17.Fragment, { children: [
5125
+ /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(QuizSubTitle, { subTitle: "Alternativas" }),
5126
+ /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(QuizContainer, { className: "h-auto pb-0", children: /* @__PURE__ */ (0, import_jsx_runtime17.jsx)("div", { className: "space-y-6 px-4 h-auto", children: /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(
5127
+ "div",
5128
+ {
5129
+ className: cn(
5130
+ "text-lg text-text-900 leading-8 h-auto",
5131
+ variant != "result" && paddingBottom
5132
+ ),
5133
+ children: renderTextWithSelects(exampleText).map((element) => /* @__PURE__ */ (0, import_jsx_runtime17.jsx)("span", { children: element.element }, element.id))
5134
+ }
5135
+ ) }) }),
5136
+ variant === "result" && /* @__PURE__ */ (0, import_jsx_runtime17.jsxs)(import_jsx_runtime17.Fragment, { children: [
5137
+ /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(QuizSubTitle, { subTitle: "Resultado" }),
5138
+ /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(QuizContainer, { className: "h-auto pb-0", children: /* @__PURE__ */ (0, import_jsx_runtime17.jsx)("div", { className: "space-y-6 px-4", children: /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(
5139
+ "div",
5140
+ {
5141
+ className: cn("text-lg text-text-900 leading-8", paddingBottom),
5142
+ children: renderTextWithSelects(exampleText, true).map((element) => /* @__PURE__ */ (0, import_jsx_runtime17.jsx)("span", { children: element.element }, element.id))
5143
+ }
5144
+ ) }) })
5145
+ ] })
5146
+ ] });
4749
5147
  };
4750
5148
  var QuizQuestionList = ({
4751
5149
  filterType = "all",
@@ -5289,8 +5687,10 @@ var QuizListResultByMateria = ({
5289
5687
  0 && (module.exports = {
5290
5688
  Quiz,
5291
5689
  QuizAlternative,
5690
+ QuizConnectDots,
5292
5691
  QuizContent,
5293
5692
  QuizDissertative,
5693
+ QuizFill,
5294
5694
  QuizFooter,
5295
5695
  QuizHeader,
5296
5696
  QuizHeaderResult,
@@ -5301,6 +5701,8 @@ var QuizListResultByMateria = ({
5301
5701
  QuizResultHeaderTitle,
5302
5702
  QuizResultPerformance,
5303
5703
  QuizResultTitle,
5304
- QuizTitle
5704
+ QuizTitle,
5705
+ QuizTrueOrFalse,
5706
+ getStatusBadge
5305
5707
  });
5306
5708
  //# sourceMappingURL=index.js.map