analytica-frontend-lib 1.1.61 → 1.1.62

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.
Files changed (51) hide show
  1. package/dist/Accordation/index.js +230 -211
  2. package/dist/Accordation/index.js.map +1 -1
  3. package/dist/Accordation/index.mjs +199 -180
  4. package/dist/Accordation/index.mjs.map +1 -1
  5. package/dist/Card/index.js +220 -201
  6. package/dist/Card/index.js.map +1 -1
  7. package/dist/Card/index.mjs +193 -174
  8. package/dist/Card/index.mjs.map +1 -1
  9. package/dist/CheckBox/index.d.mts +1 -1
  10. package/dist/CheckBox/index.d.ts +1 -1
  11. package/dist/DropdownMenu/index.js.map +1 -1
  12. package/dist/DropdownMenu/index.mjs.map +1 -1
  13. package/dist/IconRender/index.d.mts +2 -2
  14. package/dist/IconRender/index.d.ts +2 -2
  15. package/dist/IconRender/index.js +37 -18
  16. package/dist/IconRender/index.js.map +1 -1
  17. package/dist/IconRender/index.mjs +37 -18
  18. package/dist/IconRender/index.mjs.map +1 -1
  19. package/dist/NotificationCard/index.js.map +1 -1
  20. package/dist/NotificationCard/index.mjs.map +1 -1
  21. package/dist/Quiz/index.js +495 -476
  22. package/dist/Quiz/index.js.map +1 -1
  23. package/dist/Quiz/index.mjs +412 -393
  24. package/dist/Quiz/index.mjs.map +1 -1
  25. package/dist/Radio/index.d.mts +2 -2
  26. package/dist/Radio/index.d.ts +2 -2
  27. package/dist/Search/index.d.mts +1 -1
  28. package/dist/Search/index.d.ts +1 -1
  29. package/dist/Search/index.js.map +1 -1
  30. package/dist/Search/index.mjs.map +1 -1
  31. package/dist/SubjectInfo/index.d.mts +1 -1
  32. package/dist/SubjectInfo/index.d.ts +1 -1
  33. package/dist/SubjectInfo/index.js +8 -4
  34. package/dist/SubjectInfo/index.js.map +1 -1
  35. package/dist/SubjectInfo/index.mjs +8 -3
  36. package/dist/SubjectInfo/index.mjs.map +1 -1
  37. package/dist/{SubjectInfo-DZvZ5alE.d.mts → SubjectInfo-Dvt0OodP.d.mts} +2 -2
  38. package/dist/{SubjectInfo-DZvZ5alE.d.ts → SubjectInfo-Dvt0OodP.d.ts} +2 -2
  39. package/dist/ThemeToggle/index.js.map +1 -1
  40. package/dist/ThemeToggle/index.mjs.map +1 -1
  41. package/dist/index.css +15 -0
  42. package/dist/index.css.map +1 -1
  43. package/dist/index.d.mts +2 -2
  44. package/dist/index.d.ts +2 -2
  45. package/dist/index.js +473 -558
  46. package/dist/index.js.map +1 -1
  47. package/dist/index.mjs +391 -475
  48. package/dist/index.mjs.map +1 -1
  49. package/dist/styles.css +15 -0
  50. package/dist/styles.css.map +1 -1
  51. package/package.json +1 -1
package/dist/index.js CHANGED
@@ -146,8 +146,8 @@ __export(src_exports, {
146
146
  getRootDomain: () => getRootDomain,
147
147
  getStatusBadge: () => getStatusBadge,
148
148
  getSubjectColorClass: () => getSubjectColorClass,
149
- getSubjectData: () => getSubjectData,
150
149
  getSubjectIcon: () => getSubjectIcon,
150
+ getSubjectInfo: () => getSubjectInfo,
151
151
  getSubjectName: () => getSubjectName,
152
152
  useApiConfig: () => useApiConfig,
153
153
  useAuth: () => useAuth,
@@ -4428,14 +4428,17 @@ var Calendar = ({
4428
4428
  var Calendar_default = Calendar;
4429
4429
 
4430
4430
  // src/components/Accordation/Accordation.tsx
4431
- var import_react17 = require("react");
4431
+ var import_react18 = require("react");
4432
4432
 
4433
4433
  // src/components/Card/Card.tsx
4434
- var import_react16 = require("react");
4434
+ var import_react17 = require("react");
4435
4435
  var import_phosphor_react13 = require("phosphor-react");
4436
4436
 
4437
4437
  // src/components/IconRender/IconRender.tsx
4438
+ var import_react16 = require("react");
4438
4439
  var PhosphorIcons = __toESM(require("phosphor-react"));
4440
+
4441
+ // src/assets/icons/subjects/ChatPT.tsx
4439
4442
  var import_jsx_runtime27 = require("react/jsx-runtime");
4440
4443
  var ChatPT = ({ size, color }) => /* @__PURE__ */ (0, import_jsx_runtime27.jsxs)(
4441
4444
  "svg",
@@ -4470,7 +4473,10 @@ var ChatPT = ({ size, color }) => /* @__PURE__ */ (0, import_jsx_runtime27.jsxs)
4470
4473
  ]
4471
4474
  }
4472
4475
  );
4473
- var ChatEN = ({ size, color }) => /* @__PURE__ */ (0, import_jsx_runtime27.jsxs)(
4476
+
4477
+ // src/assets/icons/subjects/ChatEN.tsx
4478
+ var import_jsx_runtime28 = require("react/jsx-runtime");
4479
+ var ChatEN = ({ size, color }) => /* @__PURE__ */ (0, import_jsx_runtime28.jsxs)(
4474
4480
  "svg",
4475
4481
  {
4476
4482
  width: size,
@@ -4479,21 +4485,21 @@ var ChatEN = ({ size, color }) => /* @__PURE__ */ (0, import_jsx_runtime27.jsxs)
4479
4485
  fill: "none",
4480
4486
  xmlns: "http://www.w3.org/2000/svg",
4481
4487
  children: [
4482
- /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(
4488
+ /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(
4483
4489
  "path",
4484
4490
  {
4485
4491
  d: "M27 6H5.00004C4.4696 6 3.9609 6.21071 3.58582 6.58579C3.21075 6.96086 3.00004 7.46957 3.00004 8V28C2.99773 28.3814 3.10562 28.7553 3.31074 29.0768C3.51585 29.3984 3.80947 29.6538 4.15629 29.8125C4.42057 29.9356 4.7085 29.9995 5.00004 30C5.46954 29.9989 5.92347 29.8315 6.28129 29.5275L6.29254 29.5187L10.375 26H27C27.5305 26 28.0392 25.7893 28.4142 25.4142C28.7893 25.0391 29 24.5304 29 24V8C29 7.46957 28.7893 6.96086 28.4142 6.58579C28.0392 6.21071 27.5305 6 27 6ZM27 24H10C9.75992 24.0001 9.52787 24.0866 9.34629 24.2437L5.00004 28V8H27V24Z",
4486
4492
  fill: color
4487
4493
  }
4488
4494
  ),
4489
- /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(
4495
+ /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(
4490
4496
  "path",
4491
4497
  {
4492
4498
  d: "M22.5488 12V20.5312H21.0781L17.252 14.4199V20.5312H15.7812V12H17.252L21.0898 18.123V12H22.5488Z",
4493
4499
  fill: color
4494
4500
  }
4495
4501
  ),
4496
- /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(
4502
+ /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(
4497
4503
  "path",
4498
4504
  {
4499
4505
  d: "M14.584 19.3652V20.5312H10.0547V19.3652H14.584ZM10.4707 12V20.5312H9V12H10.4707ZM13.9922 15.5625V16.7109H10.0547V15.5625H13.9922ZM14.5547 12V13.1719H10.0547V12H14.5547Z",
@@ -4503,7 +4509,10 @@ var ChatEN = ({ size, color }) => /* @__PURE__ */ (0, import_jsx_runtime27.jsxs)
4503
4509
  ]
4504
4510
  }
4505
4511
  );
4506
- var ChatES = ({ size, color }) => /* @__PURE__ */ (0, import_jsx_runtime27.jsxs)(
4512
+
4513
+ // src/assets/icons/subjects/ChatES.tsx
4514
+ var import_jsx_runtime29 = require("react/jsx-runtime");
4515
+ var ChatES = ({ size, color }) => /* @__PURE__ */ (0, import_jsx_runtime29.jsxs)(
4507
4516
  "svg",
4508
4517
  {
4509
4518
  width: size,
@@ -4512,21 +4521,21 @@ var ChatES = ({ size, color }) => /* @__PURE__ */ (0, import_jsx_runtime27.jsxs)
4512
4521
  fill: "none",
4513
4522
  xmlns: "http://www.w3.org/2000/svg",
4514
4523
  children: [
4515
- /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(
4524
+ /* @__PURE__ */ (0, import_jsx_runtime29.jsx)(
4516
4525
  "path",
4517
4526
  {
4518
4527
  d: "M27 6H5.00004C4.4696 6 3.9609 6.21071 3.58582 6.58579C3.21075 6.96086 3.00004 7.46957 3.00004 8V28C2.99773 28.3814 3.10562 28.7553 3.31074 29.0768C3.51585 29.3984 3.80947 29.6538 4.15629 29.8125C4.42057 29.9356 4.7085 29.9995 5.00004 30C5.46954 29.9989 5.92347 29.8315 6.28129 29.5275L6.29254 29.5187L10.375 26H27C27.5305 26 28.0392 25.7893 28.4142 25.4142C28.7893 25.0391 29 24.5304 29 24V8C29 7.46957 28.7893 6.96086 28.4142 6.58579C28.0392 6.21071 27.5305 6 27 6ZM27 24H10C9.75992 24.0001 9.52787 24.0866 9.34629 24.2437L5.00004 28V8H27V24Z",
4519
4528
  fill: color
4520
4529
  }
4521
4530
  ),
4522
- /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(
4531
+ /* @__PURE__ */ (0, import_jsx_runtime29.jsx)(
4523
4532
  "path",
4524
4533
  {
4525
4534
  d: "M21.1426 17.8027C21.1426 17.627 21.1152 17.4707 21.0605 17.334C21.0098 17.1973 20.918 17.0723 20.7852 16.959C20.6523 16.8457 20.4648 16.7363 20.2227 16.6309C19.9844 16.5215 19.6797 16.4102 19.3086 16.2969C18.9023 16.1719 18.5273 16.0332 18.1836 15.8809C17.8438 15.7246 17.5469 15.5449 17.293 15.3418C17.0391 15.1348 16.8418 14.8984 16.7012 14.6328C16.5605 14.3633 16.4902 14.0527 16.4902 13.7012C16.4902 13.3535 16.5625 13.0371 16.707 12.752C16.8555 12.4668 17.0645 12.2207 17.334 12.0137C17.6074 11.8027 17.9297 11.6406 18.3008 11.5273C18.6719 11.4102 19.082 11.3516 19.5312 11.3516C20.1641 11.3516 20.709 11.4688 21.166 11.7031C21.627 11.9375 21.9805 12.252 22.2266 12.6465C22.4766 13.041 22.6016 13.4766 22.6016 13.9531H21.1426C21.1426 13.6719 21.082 13.4238 20.9609 13.209C20.8438 12.9902 20.6641 12.8184 20.4219 12.6934C20.1836 12.5684 19.8809 12.5059 19.5137 12.5059C19.166 12.5059 18.877 12.5586 18.6465 12.6641C18.416 12.7695 18.2441 12.9121 18.1309 13.0918C18.0176 13.2715 17.9609 13.4746 17.9609 13.7012C17.9609 13.8613 17.998 14.0078 18.0723 14.1406C18.1465 14.2695 18.2598 14.3906 18.4121 14.5039C18.5645 14.6133 18.7559 14.7168 18.9863 14.8145C19.2168 14.9121 19.4883 15.0059 19.8008 15.0957C20.2734 15.2363 20.6855 15.3926 21.0371 15.5645C21.3887 15.7324 21.6816 15.9238 21.916 16.1387C22.1504 16.3535 22.3262 16.5977 22.4434 16.8711C22.5605 17.1406 22.6191 17.4473 22.6191 17.791C22.6191 18.1504 22.5469 18.4746 22.4023 18.7637C22.2578 19.0488 22.0508 19.293 21.7812 19.4961C21.5156 19.6953 21.1953 19.8496 20.8203 19.959C20.4492 20.0645 20.0352 20.1172 19.5781 20.1172C19.168 20.1172 18.7637 20.0625 18.3652 19.9531C17.9707 19.8438 17.6113 19.6777 17.2871 19.4551C16.9629 19.2285 16.7051 18.9473 16.5137 18.6113C16.3223 18.2715 16.2266 17.875 16.2266 17.4219H17.6973C17.6973 17.6992 17.7441 17.9355 17.8379 18.1309C17.9355 18.3262 18.0703 18.4863 18.2422 18.6113C18.4141 18.7324 18.6133 18.8223 18.8398 18.8809C19.0703 18.9395 19.3164 18.9688 19.5781 18.9688C19.9219 18.9688 20.209 18.9199 20.4395 18.8223C20.6738 18.7246 20.8496 18.5879 20.9668 18.4121C21.084 18.2363 21.1426 18.0332 21.1426 17.8027Z",
4526
4535
  fill: color
4527
4536
  }
4528
4537
  ),
4529
- /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(
4538
+ /* @__PURE__ */ (0, import_jsx_runtime29.jsx)(
4530
4539
  "path",
4531
4540
  {
4532
4541
  d: "M15.4512 18.834V20H10.9219V18.834H15.4512ZM11.3379 11.4688V20H9.86719V11.4688H11.3379ZM14.8594 15.0312V16.1797H10.9219V15.0312H14.8594ZM15.4219 11.4688V12.6406H10.9219V11.4688H15.4219Z",
@@ -4536,29 +4545,39 @@ var ChatES = ({ size, color }) => /* @__PURE__ */ (0, import_jsx_runtime27.jsxs)
4536
4545
  ]
4537
4546
  }
4538
4547
  );
4548
+
4549
+ // src/components/IconRender/IconRender.tsx
4550
+ var import_jsx_runtime30 = require("react/jsx-runtime");
4539
4551
  var IconRender = ({
4540
4552
  iconName,
4541
4553
  color = "#000000",
4542
4554
  size = 24,
4543
4555
  weight = "regular"
4544
4556
  }) => {
4545
- switch (iconName) {
4546
- case "Chat_PT":
4547
- return /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(ChatPT, { size, color });
4548
- case "Chat_EN":
4549
- return /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(ChatEN, { size, color });
4550
- case "Chat_ES":
4551
- return /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(ChatES, { size, color });
4552
- default: {
4553
- const IconComponent = PhosphorIcons[iconName] || PhosphorIcons.Question;
4554
- return /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(IconComponent, { size, color, weight });
4557
+ if (typeof iconName === "string") {
4558
+ switch (iconName) {
4559
+ case "Chat_PT":
4560
+ return /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(ChatPT, { size, color });
4561
+ case "Chat_EN":
4562
+ return /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(ChatEN, { size, color });
4563
+ case "Chat_ES":
4564
+ return /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(ChatES, { size, color });
4565
+ default: {
4566
+ const IconComponent = PhosphorIcons[iconName] || PhosphorIcons.Question;
4567
+ return /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(IconComponent, { size, color, weight });
4568
+ }
4555
4569
  }
4570
+ } else {
4571
+ return (0, import_react16.cloneElement)(iconName, {
4572
+ size,
4573
+ color: "currentColor"
4574
+ });
4556
4575
  }
4557
4576
  };
4558
4577
  var IconRender_default = IconRender;
4559
4578
 
4560
4579
  // src/components/Card/Card.tsx
4561
- var import_jsx_runtime28 = require("react/jsx-runtime");
4580
+ var import_jsx_runtime31 = require("react/jsx-runtime");
4562
4581
  var CARD_BASE_CLASSES = {
4563
4582
  default: "w-full bg-background border border-border-50 rounded-xl",
4564
4583
  compact: "w-full bg-background border border-border-50 rounded-lg",
@@ -4584,7 +4603,7 @@ var CARD_CURSOR_CLASSES = {
4584
4603
  default: "",
4585
4604
  pointer: "cursor-pointer"
4586
4605
  };
4587
- var CardBase = (0, import_react16.forwardRef)(
4606
+ var CardBase = (0, import_react17.forwardRef)(
4588
4607
  ({
4589
4608
  children,
4590
4609
  variant = "default",
@@ -4600,7 +4619,7 @@ var CardBase = (0, import_react16.forwardRef)(
4600
4619
  const minHeightClasses = CARD_MIN_HEIGHT_CLASSES[minHeight];
4601
4620
  const layoutClasses = CARD_LAYOUT_CLASSES[layout];
4602
4621
  const cursorClasses = CARD_CURSOR_CLASSES[cursor];
4603
- return /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(
4622
+ return /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(
4604
4623
  "div",
4605
4624
  {
4606
4625
  ref,
@@ -4642,7 +4661,7 @@ var ACTION_HEADER_CLASSES = {
4642
4661
  error: "text-error-300",
4643
4662
  info: "text-info-300"
4644
4663
  };
4645
- var CardActivitiesResults = (0, import_react16.forwardRef)(
4664
+ var CardActivitiesResults = (0, import_react17.forwardRef)(
4646
4665
  ({
4647
4666
  icon,
4648
4667
  title,
@@ -4658,7 +4677,7 @@ var CardActivitiesResults = (0, import_react16.forwardRef)(
4658
4677
  const actionIconClasses = ACTION_ICON_CLASSES[action];
4659
4678
  const actionSubTitleClasses = ACTION_SUBTITLE_CLASSES[action];
4660
4679
  const actionHeaderClasses = ACTION_HEADER_CLASSES[action];
4661
- return /* @__PURE__ */ (0, import_jsx_runtime28.jsxs)(
4680
+ return /* @__PURE__ */ (0, import_jsx_runtime31.jsxs)(
4662
4681
  "div",
4663
4682
  {
4664
4683
  ref,
@@ -4668,7 +4687,7 @@ var CardActivitiesResults = (0, import_react16.forwardRef)(
4668
4687
  ),
4669
4688
  ...props,
4670
4689
  children: [
4671
- /* @__PURE__ */ (0, import_jsx_runtime28.jsxs)(
4690
+ /* @__PURE__ */ (0, import_jsx_runtime31.jsxs)(
4672
4691
  "div",
4673
4692
  {
4674
4693
  className: cn(
@@ -4677,7 +4696,7 @@ var CardActivitiesResults = (0, import_react16.forwardRef)(
4677
4696
  extended ? "rounded-t-xl" : "rounded-xl"
4678
4697
  ),
4679
4698
  children: [
4680
- /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(
4699
+ /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(
4681
4700
  "span",
4682
4701
  {
4683
4702
  className: cn(
@@ -4687,7 +4706,7 @@ var CardActivitiesResults = (0, import_react16.forwardRef)(
4687
4706
  children: icon
4688
4707
  }
4689
4708
  ),
4690
- /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(
4709
+ /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(
4691
4710
  Text_default,
4692
4711
  {
4693
4712
  size: "2xs",
@@ -4696,7 +4715,7 @@ var CardActivitiesResults = (0, import_react16.forwardRef)(
4696
4715
  children: title
4697
4716
  }
4698
4717
  ),
4699
- /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(
4718
+ /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(
4700
4719
  "p",
4701
4720
  {
4702
4721
  className: cn("text-lg font-bold truncate", actionSubTitleClasses),
@@ -4706,8 +4725,8 @@ var CardActivitiesResults = (0, import_react16.forwardRef)(
4706
4725
  ]
4707
4726
  }
4708
4727
  ),
4709
- extended && /* @__PURE__ */ (0, import_jsx_runtime28.jsxs)("div", { className: "flex flex-col items-center gap-2.5 pb-9.5 pt-2.5", children: [
4710
- /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(
4728
+ extended && /* @__PURE__ */ (0, import_jsx_runtime31.jsxs)("div", { className: "flex flex-col items-center gap-2.5 pb-9.5 pt-2.5", children: [
4729
+ /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(
4711
4730
  "p",
4712
4731
  {
4713
4732
  className: cn(
@@ -4717,14 +4736,14 @@ var CardActivitiesResults = (0, import_react16.forwardRef)(
4717
4736
  children: header
4718
4737
  }
4719
4738
  ),
4720
- /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(Badge_default, { size: "large", action: "info", children: description })
4739
+ /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(Badge_default, { size: "large", action: "info", children: description })
4721
4740
  ] })
4722
4741
  ]
4723
4742
  }
4724
4743
  );
4725
4744
  }
4726
4745
  );
4727
- var CardQuestions = (0, import_react16.forwardRef)(
4746
+ var CardQuestions = (0, import_react17.forwardRef)(
4728
4747
  ({
4729
4748
  header,
4730
4749
  state = "undone",
@@ -4736,7 +4755,7 @@ var CardQuestions = (0, import_react16.forwardRef)(
4736
4755
  const isDone = state === "done";
4737
4756
  const stateLabel = isDone ? "Realizado" : "N\xE3o Realizado";
4738
4757
  const buttonLabel = isDone ? "Ver Quest\xE3o" : "Responder";
4739
- return /* @__PURE__ */ (0, import_jsx_runtime28.jsxs)(
4758
+ return /* @__PURE__ */ (0, import_jsx_runtime31.jsxs)(
4740
4759
  CardBase,
4741
4760
  {
4742
4761
  ref,
@@ -4746,10 +4765,10 @@ var CardQuestions = (0, import_react16.forwardRef)(
4746
4765
  className: cn("justify-between gap-4", className),
4747
4766
  ...props,
4748
4767
  children: [
4749
- /* @__PURE__ */ (0, import_jsx_runtime28.jsxs)("section", { className: "flex flex-col gap-1 flex-1 min-w-0", children: [
4750
- /* @__PURE__ */ (0, import_jsx_runtime28.jsx)("p", { className: "font-bold text-xs text-text-950 truncate", children: header }),
4751
- /* @__PURE__ */ (0, import_jsx_runtime28.jsxs)("div", { className: "flex flex-row gap-6 items-center", children: [
4752
- /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(
4768
+ /* @__PURE__ */ (0, import_jsx_runtime31.jsxs)("section", { className: "flex flex-col gap-1 flex-1 min-w-0", children: [
4769
+ /* @__PURE__ */ (0, import_jsx_runtime31.jsx)("p", { className: "font-bold text-xs text-text-950 truncate", children: header }),
4770
+ /* @__PURE__ */ (0, import_jsx_runtime31.jsxs)("div", { className: "flex flex-row gap-6 items-center", children: [
4771
+ /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(
4753
4772
  Badge_default,
4754
4773
  {
4755
4774
  size: "medium",
@@ -4758,13 +4777,13 @@ var CardQuestions = (0, import_react16.forwardRef)(
4758
4777
  children: stateLabel
4759
4778
  }
4760
4779
  ),
4761
- /* @__PURE__ */ (0, import_jsx_runtime28.jsxs)("span", { className: "flex flex-row items-center gap-1 text-text-700 text-xs", children: [
4780
+ /* @__PURE__ */ (0, import_jsx_runtime31.jsxs)("span", { className: "flex flex-row items-center gap-1 text-text-700 text-xs", children: [
4762
4781
  isDone ? "Nota" : "Sem nota",
4763
- isDone && /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(Badge_default, { size: "medium", action: "success", children: "00" })
4782
+ isDone && /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(Badge_default, { size: "medium", action: "success", children: "00" })
4764
4783
  ] })
4765
4784
  ] })
4766
4785
  ] }),
4767
- /* @__PURE__ */ (0, import_jsx_runtime28.jsx)("span", { className: "flex-shrink-0", children: /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(
4786
+ /* @__PURE__ */ (0, import_jsx_runtime31.jsx)("span", { className: "flex-shrink-0", children: /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(
4768
4787
  Button_default,
4769
4788
  {
4770
4789
  size: "extra-small",
@@ -4778,7 +4797,7 @@ var CardQuestions = (0, import_react16.forwardRef)(
4778
4797
  );
4779
4798
  }
4780
4799
  );
4781
- var CardProgress = (0, import_react16.forwardRef)(
4800
+ var CardProgress = (0, import_react17.forwardRef)(
4782
4801
  ({
4783
4802
  header,
4784
4803
  subhead,
@@ -4795,19 +4814,19 @@ var CardProgress = (0, import_react16.forwardRef)(
4795
4814
  }, ref) => {
4796
4815
  const isHorizontal = direction === "horizontal";
4797
4816
  const contentComponent = {
4798
- horizontal: /* @__PURE__ */ (0, import_jsx_runtime28.jsxs)(import_jsx_runtime28.Fragment, { children: [
4799
- showDates && /* @__PURE__ */ (0, import_jsx_runtime28.jsxs)("div", { className: "flex flex-row gap-6 items-center", children: [
4800
- initialDate && /* @__PURE__ */ (0, import_jsx_runtime28.jsxs)("span", { className: "flex flex-row gap-1 items-center text-2xs", children: [
4801
- /* @__PURE__ */ (0, import_jsx_runtime28.jsx)("p", { className: "text-text-800 font-semibold", children: "In\xEDcio" }),
4802
- /* @__PURE__ */ (0, import_jsx_runtime28.jsx)("p", { className: "text-text-600", children: initialDate })
4817
+ horizontal: /* @__PURE__ */ (0, import_jsx_runtime31.jsxs)(import_jsx_runtime31.Fragment, { children: [
4818
+ showDates && /* @__PURE__ */ (0, import_jsx_runtime31.jsxs)("div", { className: "flex flex-row gap-6 items-center", children: [
4819
+ initialDate && /* @__PURE__ */ (0, import_jsx_runtime31.jsxs)("span", { className: "flex flex-row gap-1 items-center text-2xs", children: [
4820
+ /* @__PURE__ */ (0, import_jsx_runtime31.jsx)("p", { className: "text-text-800 font-semibold", children: "In\xEDcio" }),
4821
+ /* @__PURE__ */ (0, import_jsx_runtime31.jsx)("p", { className: "text-text-600", children: initialDate })
4803
4822
  ] }),
4804
- endDate && /* @__PURE__ */ (0, import_jsx_runtime28.jsxs)("span", { className: "flex flex-row gap-1 items-center text-2xs", children: [
4805
- /* @__PURE__ */ (0, import_jsx_runtime28.jsx)("p", { className: "text-text-800 font-semibold", children: "Fim" }),
4806
- /* @__PURE__ */ (0, import_jsx_runtime28.jsx)("p", { className: "text-text-600", children: endDate })
4823
+ endDate && /* @__PURE__ */ (0, import_jsx_runtime31.jsxs)("span", { className: "flex flex-row gap-1 items-center text-2xs", children: [
4824
+ /* @__PURE__ */ (0, import_jsx_runtime31.jsx)("p", { className: "text-text-800 font-semibold", children: "Fim" }),
4825
+ /* @__PURE__ */ (0, import_jsx_runtime31.jsx)("p", { className: "text-text-600", children: endDate })
4807
4826
  ] })
4808
4827
  ] }),
4809
- /* @__PURE__ */ (0, import_jsx_runtime28.jsxs)("span", { className: "grid grid-cols-[1fr_auto] items-center gap-2", children: [
4810
- /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(
4828
+ /* @__PURE__ */ (0, import_jsx_runtime31.jsxs)("span", { className: "grid grid-cols-[1fr_auto] items-center gap-2", children: [
4829
+ /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(
4811
4830
  ProgressBar_default,
4812
4831
  {
4813
4832
  size: "small",
@@ -4816,7 +4835,7 @@ var CardProgress = (0, import_react16.forwardRef)(
4816
4835
  "data-testid": "progress-bar"
4817
4836
  }
4818
4837
  ),
4819
- /* @__PURE__ */ (0, import_jsx_runtime28.jsxs)(
4838
+ /* @__PURE__ */ (0, import_jsx_runtime31.jsxs)(
4820
4839
  Text_default,
4821
4840
  {
4822
4841
  size: "xs",
@@ -4832,9 +4851,9 @@ var CardProgress = (0, import_react16.forwardRef)(
4832
4851
  )
4833
4852
  ] })
4834
4853
  ] }),
4835
- vertical: /* @__PURE__ */ (0, import_jsx_runtime28.jsx)("p", { className: "text-sm text-text-800", children: subhead })
4854
+ vertical: /* @__PURE__ */ (0, import_jsx_runtime31.jsx)("p", { className: "text-sm text-text-800", children: subhead })
4836
4855
  };
4837
- return /* @__PURE__ */ (0, import_jsx_runtime28.jsxs)(
4856
+ return /* @__PURE__ */ (0, import_jsx_runtime31.jsxs)(
4838
4857
  CardBase,
4839
4858
  {
4840
4859
  ref,
@@ -4845,20 +4864,20 @@ var CardProgress = (0, import_react16.forwardRef)(
4845
4864
  className: cn(isHorizontal ? "h-20" : "", className),
4846
4865
  ...props,
4847
4866
  children: [
4848
- /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(
4867
+ /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(
4849
4868
  "div",
4850
4869
  {
4851
4870
  className: cn(
4852
4871
  "flex justify-center items-center [&>svg]:size-6 text-text-950",
4853
4872
  isHorizontal ? "min-w-[80px] min-h-[80px] rounded-l-xl" : "min-h-[50px] w-full rounded-t-xl",
4854
- !color.startsWith("#") ? `bg-${color}` : ""
4873
+ !color.startsWith("#") ? `${color}` : ""
4855
4874
  ),
4856
4875
  style: color.startsWith("#") ? { backgroundColor: color } : void 0,
4857
4876
  "data-testid": "icon-container",
4858
4877
  children: icon
4859
4878
  }
4860
4879
  ),
4861
- /* @__PURE__ */ (0, import_jsx_runtime28.jsxs)(
4880
+ /* @__PURE__ */ (0, import_jsx_runtime31.jsxs)(
4862
4881
  "div",
4863
4882
  {
4864
4883
  className: cn(
@@ -4866,7 +4885,7 @@ var CardProgress = (0, import_react16.forwardRef)(
4866
4885
  !isHorizontal && "gap-4"
4867
4886
  ),
4868
4887
  children: [
4869
- /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(Text_default, { size: "sm", weight: "bold", className: "text-text-950 truncate", children: header }),
4888
+ /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(Text_default, { size: "sm", weight: "bold", className: "text-text-950 truncate", children: header }),
4870
4889
  contentComponent[direction]
4871
4890
  ]
4872
4891
  }
@@ -4876,7 +4895,7 @@ var CardProgress = (0, import_react16.forwardRef)(
4876
4895
  );
4877
4896
  }
4878
4897
  );
4879
- var CardTopic = (0, import_react16.forwardRef)(
4898
+ var CardTopic = (0, import_react17.forwardRef)(
4880
4899
  ({
4881
4900
  header,
4882
4901
  subHead,
@@ -4886,7 +4905,7 @@ var CardTopic = (0, import_react16.forwardRef)(
4886
4905
  className = "",
4887
4906
  ...props
4888
4907
  }, ref) => {
4889
- return /* @__PURE__ */ (0, import_jsx_runtime28.jsxs)(
4908
+ return /* @__PURE__ */ (0, import_jsx_runtime31.jsxs)(
4890
4909
  CardBase,
4891
4910
  {
4892
4911
  ref,
@@ -4897,13 +4916,13 @@ var CardTopic = (0, import_react16.forwardRef)(
4897
4916
  className: cn("justify-center gap-2 py-2 px-4", className),
4898
4917
  ...props,
4899
4918
  children: [
4900
- subHead && /* @__PURE__ */ (0, import_jsx_runtime28.jsx)("span", { className: "text-text-600 text-2xs flex flex-row gap-1", children: subHead.map((text, index) => /* @__PURE__ */ (0, import_jsx_runtime28.jsxs)(import_react16.Fragment, { children: [
4901
- /* @__PURE__ */ (0, import_jsx_runtime28.jsx)("p", { children: text }),
4902
- index < subHead.length - 1 && /* @__PURE__ */ (0, import_jsx_runtime28.jsx)("p", { children: "\u2022" })
4919
+ subHead && /* @__PURE__ */ (0, import_jsx_runtime31.jsx)("span", { className: "text-text-600 text-2xs flex flex-row gap-1", children: subHead.map((text, index) => /* @__PURE__ */ (0, import_jsx_runtime31.jsxs)(import_react17.Fragment, { children: [
4920
+ /* @__PURE__ */ (0, import_jsx_runtime31.jsx)("p", { children: text }),
4921
+ index < subHead.length - 1 && /* @__PURE__ */ (0, import_jsx_runtime31.jsx)("p", { children: "\u2022" })
4903
4922
  ] }, `${text} - ${index}`)) }),
4904
- /* @__PURE__ */ (0, import_jsx_runtime28.jsx)("p", { className: "text-sm text-text-950 font-bold truncate", children: header }),
4905
- /* @__PURE__ */ (0, import_jsx_runtime28.jsxs)("span", { className: "grid grid-cols-[1fr_auto] items-center gap-2", children: [
4906
- /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(
4923
+ /* @__PURE__ */ (0, import_jsx_runtime31.jsx)("p", { className: "text-sm text-text-950 font-bold truncate", children: header }),
4924
+ /* @__PURE__ */ (0, import_jsx_runtime31.jsxs)("span", { className: "grid grid-cols-[1fr_auto] items-center gap-2", children: [
4925
+ /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(
4907
4926
  ProgressBar_default,
4908
4927
  {
4909
4928
  size: "small",
@@ -4912,7 +4931,7 @@ var CardTopic = (0, import_react16.forwardRef)(
4912
4931
  "data-testid": "progress-bar"
4913
4932
  }
4914
4933
  ),
4915
- showPercentage && /* @__PURE__ */ (0, import_jsx_runtime28.jsxs)(
4934
+ showPercentage && /* @__PURE__ */ (0, import_jsx_runtime31.jsxs)(
4916
4935
  Text_default,
4917
4936
  {
4918
4937
  size: "xs",
@@ -4932,7 +4951,7 @@ var CardTopic = (0, import_react16.forwardRef)(
4932
4951
  );
4933
4952
  }
4934
4953
  );
4935
- var CardPerformance = (0, import_react16.forwardRef)(
4954
+ var CardPerformance = (0, import_react17.forwardRef)(
4936
4955
  ({
4937
4956
  header,
4938
4957
  progress,
@@ -4946,7 +4965,7 @@ var CardPerformance = (0, import_react16.forwardRef)(
4946
4965
  ...props
4947
4966
  }, ref) => {
4948
4967
  const hasProgress = progress !== void 0;
4949
- return /* @__PURE__ */ (0, import_jsx_runtime28.jsxs)(
4968
+ return /* @__PURE__ */ (0, import_jsx_runtime31.jsxs)(
4950
4969
  CardBase,
4951
4970
  {
4952
4971
  ref,
@@ -4960,10 +4979,10 @@ var CardPerformance = (0, import_react16.forwardRef)(
4960
4979
  onClick: () => actionVariant == "caret" && onClickButton?.(valueButton),
4961
4980
  ...props,
4962
4981
  children: [
4963
- /* @__PURE__ */ (0, import_jsx_runtime28.jsxs)("div", { className: "w-full flex flex-col justify-between gap-2", children: [
4964
- /* @__PURE__ */ (0, import_jsx_runtime28.jsxs)("div", { className: "flex flex-row justify-between items-center gap-2", children: [
4965
- /* @__PURE__ */ (0, import_jsx_runtime28.jsx)("p", { className: "text-lg font-bold text-text-950 truncate flex-1 min-w-0", children: header }),
4966
- actionVariant === "button" && /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(
4982
+ /* @__PURE__ */ (0, import_jsx_runtime31.jsxs)("div", { className: "w-full flex flex-col justify-between gap-2", children: [
4983
+ /* @__PURE__ */ (0, import_jsx_runtime31.jsxs)("div", { className: "flex flex-row justify-between items-center gap-2", children: [
4984
+ /* @__PURE__ */ (0, import_jsx_runtime31.jsx)("p", { className: "text-lg font-bold text-text-950 truncate flex-1 min-w-0", children: header }),
4985
+ actionVariant === "button" && /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(
4967
4986
  Button_default,
4968
4987
  {
4969
4988
  variant: "outline",
@@ -4974,16 +4993,16 @@ var CardPerformance = (0, import_react16.forwardRef)(
4974
4993
  }
4975
4994
  )
4976
4995
  ] }),
4977
- /* @__PURE__ */ (0, import_jsx_runtime28.jsx)("div", { className: "w-full", children: hasProgress ? /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(
4996
+ /* @__PURE__ */ (0, import_jsx_runtime31.jsx)("div", { className: "w-full", children: hasProgress ? /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(
4978
4997
  ProgressBar_default,
4979
4998
  {
4980
4999
  value: progress,
4981
5000
  label: `${progress}% ${labelProgress}`,
4982
5001
  variant: progressVariant
4983
5002
  }
4984
- ) : /* @__PURE__ */ (0, import_jsx_runtime28.jsx)("p", { className: "text-xs text-text-600 truncate", children: description }) })
5003
+ ) : /* @__PURE__ */ (0, import_jsx_runtime31.jsx)("p", { className: "text-xs text-text-600 truncate", children: description }) })
4985
5004
  ] }),
4986
- actionVariant == "caret" && /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(
5005
+ actionVariant == "caret" && /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(
4987
5006
  import_phosphor_react13.CaretRight,
4988
5007
  {
4989
5008
  className: "size-4.5 text-text-800 cursor-pointer",
@@ -4995,7 +5014,7 @@ var CardPerformance = (0, import_react16.forwardRef)(
4995
5014
  );
4996
5015
  }
4997
5016
  );
4998
- var CardResults = (0, import_react16.forwardRef)(
5017
+ var CardResults = (0, import_react17.forwardRef)(
4999
5018
  ({
5000
5019
  header,
5001
5020
  correct_answers,
@@ -5007,7 +5026,7 @@ var CardResults = (0, import_react16.forwardRef)(
5007
5026
  ...props
5008
5027
  }, ref) => {
5009
5028
  const isRow = direction == "row";
5010
- return /* @__PURE__ */ (0, import_jsx_runtime28.jsxs)(
5029
+ return /* @__PURE__ */ (0, import_jsx_runtime31.jsxs)(
5011
5030
  CardBase,
5012
5031
  {
5013
5032
  ref,
@@ -5017,7 +5036,7 @@ var CardResults = (0, import_react16.forwardRef)(
5017
5036
  className: cn("items-stretch cursor-pointer pr-4", className),
5018
5037
  ...props,
5019
5038
  children: [
5020
- /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(
5039
+ /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(
5021
5040
  "div",
5022
5041
  {
5023
5042
  className: cn(
@@ -5026,11 +5045,11 @@ var CardResults = (0, import_react16.forwardRef)(
5026
5045
  style: {
5027
5046
  backgroundColor: color
5028
5047
  },
5029
- children: /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(IconRender_default, { iconName: icon, color: "currentColor", size: 20 })
5048
+ children: /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(IconRender_default, { iconName: icon, color: "currentColor", size: 20 })
5030
5049
  }
5031
5050
  ),
5032
- /* @__PURE__ */ (0, import_jsx_runtime28.jsxs)("div", { className: "w-full flex flex-row justify-between items-center", children: [
5033
- /* @__PURE__ */ (0, import_jsx_runtime28.jsxs)(
5051
+ /* @__PURE__ */ (0, import_jsx_runtime31.jsxs)("div", { className: "w-full flex flex-row justify-between items-center", children: [
5052
+ /* @__PURE__ */ (0, import_jsx_runtime31.jsxs)(
5034
5053
  "div",
5035
5054
  {
5036
5055
  className: cn(
@@ -5038,28 +5057,28 @@ var CardResults = (0, import_react16.forwardRef)(
5038
5057
  isRow ? "flex-row items-center gap-2" : "flex-col"
5039
5058
  ),
5040
5059
  children: [
5041
- /* @__PURE__ */ (0, import_jsx_runtime28.jsx)("p", { className: "text-sm font-bold text-text-950 flex-1", children: header }),
5042
- /* @__PURE__ */ (0, import_jsx_runtime28.jsxs)("span", { className: "flex flex-wrap flex-row gap-1 items-center", children: [
5043
- /* @__PURE__ */ (0, import_jsx_runtime28.jsxs)(
5060
+ /* @__PURE__ */ (0, import_jsx_runtime31.jsx)("p", { className: "text-sm font-bold text-text-950 flex-1", children: header }),
5061
+ /* @__PURE__ */ (0, import_jsx_runtime31.jsxs)("span", { className: "flex flex-wrap flex-row gap-1 items-center", children: [
5062
+ /* @__PURE__ */ (0, import_jsx_runtime31.jsxs)(
5044
5063
  Badge_default,
5045
5064
  {
5046
5065
  action: "success",
5047
5066
  variant: "solid",
5048
5067
  size: "large",
5049
- iconLeft: /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(import_phosphor_react13.CheckCircle, {}),
5068
+ iconLeft: /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(import_phosphor_react13.CheckCircle, {}),
5050
5069
  children: [
5051
5070
  correct_answers,
5052
5071
  " Corretas"
5053
5072
  ]
5054
5073
  }
5055
5074
  ),
5056
- /* @__PURE__ */ (0, import_jsx_runtime28.jsxs)(
5075
+ /* @__PURE__ */ (0, import_jsx_runtime31.jsxs)(
5057
5076
  Badge_default,
5058
5077
  {
5059
5078
  action: "error",
5060
5079
  variant: "solid",
5061
5080
  size: "large",
5062
- iconLeft: /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(import_phosphor_react13.XCircle, {}),
5081
+ iconLeft: /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(import_phosphor_react13.XCircle, {}),
5063
5082
  children: [
5064
5083
  incorrect_answers,
5065
5084
  " Incorretas"
@@ -5070,14 +5089,14 @@ var CardResults = (0, import_react16.forwardRef)(
5070
5089
  ]
5071
5090
  }
5072
5091
  ),
5073
- /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(import_phosphor_react13.CaretRight, { className: "min-w-6 min-h-6 text-text-800" })
5092
+ /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(import_phosphor_react13.CaretRight, { className: "min-w-6 min-h-6 text-text-800" })
5074
5093
  ] })
5075
5094
  ]
5076
5095
  }
5077
5096
  );
5078
5097
  }
5079
5098
  );
5080
- var CardStatus = (0, import_react16.forwardRef)(
5099
+ var CardStatus = (0, import_react17.forwardRef)(
5081
5100
  ({ header, className, status, label, ...props }, ref) => {
5082
5101
  const getLabelBadge = (status2) => {
5083
5102
  switch (status2) {
@@ -5091,7 +5110,7 @@ var CardStatus = (0, import_react16.forwardRef)(
5091
5110
  return "Em branco";
5092
5111
  }
5093
5112
  };
5094
- return /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(
5113
+ return /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(
5095
5114
  CardBase,
5096
5115
  {
5097
5116
  ref,
@@ -5100,30 +5119,30 @@ var CardStatus = (0, import_react16.forwardRef)(
5100
5119
  minHeight: "medium",
5101
5120
  className: cn("items-center cursor-pointer", className),
5102
5121
  ...props,
5103
- children: /* @__PURE__ */ (0, import_jsx_runtime28.jsxs)("div", { className: "flex justify-between w-full h-full flex-row items-center gap-2", children: [
5104
- /* @__PURE__ */ (0, import_jsx_runtime28.jsx)("p", { className: "text-sm font-bold text-text-950 truncate flex-1 min-w-0", children: header }),
5105
- /* @__PURE__ */ (0, import_jsx_runtime28.jsxs)("span", { className: "flex flex-row gap-1 items-center flex-shrink-0", children: [
5106
- status && /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(
5122
+ children: /* @__PURE__ */ (0, import_jsx_runtime31.jsxs)("div", { className: "flex justify-between w-full h-full flex-row items-center gap-2", children: [
5123
+ /* @__PURE__ */ (0, import_jsx_runtime31.jsx)("p", { className: "text-sm font-bold text-text-950 truncate flex-1 min-w-0", children: header }),
5124
+ /* @__PURE__ */ (0, import_jsx_runtime31.jsxs)("span", { className: "flex flex-row gap-1 items-center flex-shrink-0", children: [
5125
+ status && /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(
5107
5126
  Badge_default,
5108
5127
  {
5109
5128
  action: status == "correct" ? "success" : "error",
5110
5129
  variant: "solid",
5111
5130
  size: "medium",
5112
- iconLeft: status == "correct" ? /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(import_phosphor_react13.CheckCircle, {}) : /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(import_phosphor_react13.XCircle, {}),
5131
+ iconLeft: status == "correct" ? /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(import_phosphor_react13.CheckCircle, {}) : /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(import_phosphor_react13.XCircle, {}),
5113
5132
  children: getLabelBadge(status)
5114
5133
  }
5115
5134
  ),
5116
- label && /* @__PURE__ */ (0, import_jsx_runtime28.jsx)("p", { className: "text-sm text-text-800", children: label })
5135
+ label && /* @__PURE__ */ (0, import_jsx_runtime31.jsx)("p", { className: "text-sm text-text-800", children: label })
5117
5136
  ] }),
5118
- /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(import_phosphor_react13.CaretRight, { className: "min-w-6 min-h-6 text-text-800 cursor-pointer flex-shrink-0 ml-2" })
5137
+ /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(import_phosphor_react13.CaretRight, { className: "min-w-6 min-h-6 text-text-800 cursor-pointer flex-shrink-0 ml-2" })
5119
5138
  ] })
5120
5139
  }
5121
5140
  );
5122
5141
  }
5123
5142
  );
5124
- var CardSettings = (0, import_react16.forwardRef)(
5143
+ var CardSettings = (0, import_react17.forwardRef)(
5125
5144
  ({ header, className, icon, ...props }, ref) => {
5126
- return /* @__PURE__ */ (0, import_jsx_runtime28.jsxs)(
5145
+ return /* @__PURE__ */ (0, import_jsx_runtime31.jsxs)(
5127
5146
  CardBase,
5128
5147
  {
5129
5148
  ref,
@@ -5136,17 +5155,17 @@ var CardSettings = (0, import_react16.forwardRef)(
5136
5155
  ),
5137
5156
  ...props,
5138
5157
  children: [
5139
- /* @__PURE__ */ (0, import_jsx_runtime28.jsx)("span", { className: "[&>svg]:size-6", children: icon }),
5140
- /* @__PURE__ */ (0, import_jsx_runtime28.jsx)("p", { className: "w-full text-sm truncate", children: header }),
5141
- /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(import_phosphor_react13.CaretRight, { size: 24, className: "cursor-pointer" })
5158
+ /* @__PURE__ */ (0, import_jsx_runtime31.jsx)("span", { className: "[&>svg]:size-6", children: icon }),
5159
+ /* @__PURE__ */ (0, import_jsx_runtime31.jsx)("p", { className: "w-full text-sm truncate", children: header }),
5160
+ /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(import_phosphor_react13.CaretRight, { size: 24, className: "cursor-pointer" })
5142
5161
  ]
5143
5162
  }
5144
5163
  );
5145
5164
  }
5146
5165
  );
5147
- var CardSupport = (0, import_react16.forwardRef)(
5166
+ var CardSupport = (0, import_react17.forwardRef)(
5148
5167
  ({ header, className, direction = "col", children, ...props }, ref) => {
5149
- return /* @__PURE__ */ (0, import_jsx_runtime28.jsxs)(
5168
+ return /* @__PURE__ */ (0, import_jsx_runtime31.jsxs)(
5150
5169
  CardBase,
5151
5170
  {
5152
5171
  ref,
@@ -5159,7 +5178,7 @@ var CardSupport = (0, import_react16.forwardRef)(
5159
5178
  ),
5160
5179
  ...props,
5161
5180
  children: [
5162
- /* @__PURE__ */ (0, import_jsx_runtime28.jsxs)(
5181
+ /* @__PURE__ */ (0, import_jsx_runtime31.jsxs)(
5163
5182
  "div",
5164
5183
  {
5165
5184
  className: cn(
@@ -5167,18 +5186,18 @@ var CardSupport = (0, import_react16.forwardRef)(
5167
5186
  direction == "col" ? "flex-col" : "flex-row items-center"
5168
5187
  ),
5169
5188
  children: [
5170
- /* @__PURE__ */ (0, import_jsx_runtime28.jsx)("span", { className: "w-full min-w-0", children: /* @__PURE__ */ (0, import_jsx_runtime28.jsx)("p", { className: "text-sm text-text-950 font-bold truncate", children: header }) }),
5171
- /* @__PURE__ */ (0, import_jsx_runtime28.jsx)("span", { className: "flex flex-row gap-1", children })
5189
+ /* @__PURE__ */ (0, import_jsx_runtime31.jsx)("span", { className: "w-full min-w-0", children: /* @__PURE__ */ (0, import_jsx_runtime31.jsx)("p", { className: "text-sm text-text-950 font-bold truncate", children: header }) }),
5190
+ /* @__PURE__ */ (0, import_jsx_runtime31.jsx)("span", { className: "flex flex-row gap-1", children })
5172
5191
  ]
5173
5192
  }
5174
5193
  ),
5175
- /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(import_phosphor_react13.CaretRight, { className: "text-text-800 cursor-pointer", size: 24 })
5194
+ /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(import_phosphor_react13.CaretRight, { className: "text-text-800 cursor-pointer", size: 24 })
5176
5195
  ]
5177
5196
  }
5178
5197
  );
5179
5198
  }
5180
5199
  );
5181
- var CardForum = (0, import_react16.forwardRef)(
5200
+ var CardForum = (0, import_react17.forwardRef)(
5182
5201
  ({
5183
5202
  title,
5184
5203
  content,
@@ -5192,7 +5211,7 @@ var CardForum = (0, import_react16.forwardRef)(
5192
5211
  hour,
5193
5212
  ...props
5194
5213
  }, ref) => {
5195
- return /* @__PURE__ */ (0, import_jsx_runtime28.jsxs)(
5214
+ return /* @__PURE__ */ (0, import_jsx_runtime31.jsxs)(
5196
5215
  CardBase,
5197
5216
  {
5198
5217
  ref,
@@ -5203,7 +5222,7 @@ var CardForum = (0, import_react16.forwardRef)(
5203
5222
  className: cn("w-auto h-auto gap-3", className),
5204
5223
  ...props,
5205
5224
  children: [
5206
- /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(
5225
+ /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(
5207
5226
  "button",
5208
5227
  {
5209
5228
  type: "button",
@@ -5212,18 +5231,18 @@ var CardForum = (0, import_react16.forwardRef)(
5212
5231
  className: "min-w-8 h-8 rounded-full bg-background-950"
5213
5232
  }
5214
5233
  ),
5215
- /* @__PURE__ */ (0, import_jsx_runtime28.jsxs)("div", { className: "flex flex-col gap-2 flex-1 min-w-0", children: [
5216
- /* @__PURE__ */ (0, import_jsx_runtime28.jsxs)("div", { className: "flex flex-row gap-1 items-center flex-wrap", children: [
5217
- /* @__PURE__ */ (0, import_jsx_runtime28.jsx)("p", { className: "text-xs font-semibold text-primary-700 truncate", children: title }),
5218
- /* @__PURE__ */ (0, import_jsx_runtime28.jsxs)("p", { className: "text-xs text-text-600", children: [
5234
+ /* @__PURE__ */ (0, import_jsx_runtime31.jsxs)("div", { className: "flex flex-col gap-2 flex-1 min-w-0", children: [
5235
+ /* @__PURE__ */ (0, import_jsx_runtime31.jsxs)("div", { className: "flex flex-row gap-1 items-center flex-wrap", children: [
5236
+ /* @__PURE__ */ (0, import_jsx_runtime31.jsx)("p", { className: "text-xs font-semibold text-primary-700 truncate", children: title }),
5237
+ /* @__PURE__ */ (0, import_jsx_runtime31.jsxs)("p", { className: "text-xs text-text-600", children: [
5219
5238
  "\u2022 ",
5220
5239
  date,
5221
5240
  " \u2022 ",
5222
5241
  hour
5223
5242
  ] })
5224
5243
  ] }),
5225
- /* @__PURE__ */ (0, import_jsx_runtime28.jsx)("p", { className: "text-text-950 text-sm line-clamp-2 truncate", children: content }),
5226
- /* @__PURE__ */ (0, import_jsx_runtime28.jsxs)(
5244
+ /* @__PURE__ */ (0, import_jsx_runtime31.jsx)("p", { className: "text-text-950 text-sm line-clamp-2 truncate", children: content }),
5245
+ /* @__PURE__ */ (0, import_jsx_runtime31.jsxs)(
5227
5246
  "button",
5228
5247
  {
5229
5248
  type: "button",
@@ -5231,8 +5250,8 @@ var CardForum = (0, import_react16.forwardRef)(
5231
5250
  onClick: () => onClickComments?.(valueComments),
5232
5251
  className: "text-text-600 flex flex-row gap-2 items-center",
5233
5252
  children: [
5234
- /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(import_phosphor_react13.ChatCircleText, { "aria-hidden": "true", size: 16 }),
5235
- /* @__PURE__ */ (0, import_jsx_runtime28.jsxs)("p", { className: "text-xs", children: [
5253
+ /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(import_phosphor_react13.ChatCircleText, { "aria-hidden": "true", size: 16 }),
5254
+ /* @__PURE__ */ (0, import_jsx_runtime31.jsxs)("p", { className: "text-xs", children: [
5236
5255
  comments,
5237
5256
  " respostas"
5238
5257
  ] })
@@ -5245,7 +5264,7 @@ var CardForum = (0, import_react16.forwardRef)(
5245
5264
  );
5246
5265
  }
5247
5266
  );
5248
- var CardAudio = (0, import_react16.forwardRef)(
5267
+ var CardAudio = (0, import_react17.forwardRef)(
5249
5268
  ({
5250
5269
  src,
5251
5270
  title,
@@ -5259,16 +5278,16 @@ var CardAudio = (0, import_react16.forwardRef)(
5259
5278
  className,
5260
5279
  ...props
5261
5280
  }, ref) => {
5262
- const [isPlaying, setIsPlaying] = (0, import_react16.useState)(false);
5263
- const [currentTime, setCurrentTime] = (0, import_react16.useState)(0);
5264
- const [duration, setDuration] = (0, import_react16.useState)(0);
5265
- const [volume, setVolume] = (0, import_react16.useState)(1);
5266
- const [showVolumeControl, setShowVolumeControl] = (0, import_react16.useState)(false);
5267
- const [showSpeedMenu, setShowSpeedMenu] = (0, import_react16.useState)(false);
5268
- const [playbackRate, setPlaybackRate] = (0, import_react16.useState)(1);
5269
- const audioRef = (0, import_react16.useRef)(null);
5270
- const volumeControlRef = (0, import_react16.useRef)(null);
5271
- const speedMenuRef = (0, import_react16.useRef)(null);
5281
+ const [isPlaying, setIsPlaying] = (0, import_react17.useState)(false);
5282
+ const [currentTime, setCurrentTime] = (0, import_react17.useState)(0);
5283
+ const [duration, setDuration] = (0, import_react17.useState)(0);
5284
+ const [volume, setVolume] = (0, import_react17.useState)(1);
5285
+ const [showVolumeControl, setShowVolumeControl] = (0, import_react17.useState)(false);
5286
+ const [showSpeedMenu, setShowSpeedMenu] = (0, import_react17.useState)(false);
5287
+ const [playbackRate, setPlaybackRate] = (0, import_react17.useState)(1);
5288
+ const audioRef = (0, import_react17.useRef)(null);
5289
+ const volumeControlRef = (0, import_react17.useRef)(null);
5290
+ const speedMenuRef = (0, import_react17.useRef)(null);
5272
5291
  const formatTime2 = (time) => {
5273
5292
  const minutes = Math.floor(time / 60);
5274
5293
  const seconds = Math.floor(time % 60);
@@ -5335,14 +5354,14 @@ var CardAudio = (0, import_react16.forwardRef)(
5335
5354
  };
5336
5355
  const getVolumeIcon = () => {
5337
5356
  if (volume === 0) {
5338
- return /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(import_phosphor_react13.SpeakerSimpleX, { size: 24 });
5357
+ return /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(import_phosphor_react13.SpeakerSimpleX, { size: 24 });
5339
5358
  }
5340
5359
  if (volume < 0.5) {
5341
- return /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(import_phosphor_react13.SpeakerLow, { size: 24 });
5360
+ return /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(import_phosphor_react13.SpeakerLow, { size: 24 });
5342
5361
  }
5343
- return /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(import_phosphor_react13.SpeakerHigh, { size: 24 });
5362
+ return /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(import_phosphor_react13.SpeakerHigh, { size: 24 });
5344
5363
  };
5345
- (0, import_react16.useEffect)(() => {
5364
+ (0, import_react17.useEffect)(() => {
5346
5365
  const handleClickOutside = (event) => {
5347
5366
  if (volumeControlRef.current && !volumeControlRef.current.contains(event.target)) {
5348
5367
  setShowVolumeControl(false);
@@ -5356,7 +5375,7 @@ var CardAudio = (0, import_react16.forwardRef)(
5356
5375
  document.removeEventListener("mousedown", handleClickOutside);
5357
5376
  };
5358
5377
  }, []);
5359
- return /* @__PURE__ */ (0, import_jsx_runtime28.jsxs)(
5378
+ return /* @__PURE__ */ (0, import_jsx_runtime31.jsxs)(
5360
5379
  CardBase,
5361
5380
  {
5362
5381
  ref,
@@ -5369,7 +5388,7 @@ var CardAudio = (0, import_react16.forwardRef)(
5369
5388
  ),
5370
5389
  ...props,
5371
5390
  children: [
5372
- /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(
5391
+ /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(
5373
5392
  "audio",
5374
5393
  {
5375
5394
  ref: audioRef,
@@ -5381,7 +5400,7 @@ var CardAudio = (0, import_react16.forwardRef)(
5381
5400
  onEnded: handleEnded,
5382
5401
  "data-testid": "audio-element",
5383
5402
  "aria-label": title,
5384
- children: tracks ? tracks.map((track) => /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(
5403
+ children: tracks ? tracks.map((track) => /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(
5385
5404
  "track",
5386
5405
  {
5387
5406
  kind: track.kind,
@@ -5391,7 +5410,7 @@ var CardAudio = (0, import_react16.forwardRef)(
5391
5410
  default: track.default
5392
5411
  },
5393
5412
  track.src
5394
- )) : /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(
5413
+ )) : /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(
5395
5414
  "track",
5396
5415
  {
5397
5416
  kind: "captions",
@@ -5402,7 +5421,7 @@ var CardAudio = (0, import_react16.forwardRef)(
5402
5421
  )
5403
5422
  }
5404
5423
  ),
5405
- /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(
5424
+ /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(
5406
5425
  "button",
5407
5426
  {
5408
5427
  type: "button",
@@ -5410,14 +5429,14 @@ var CardAudio = (0, import_react16.forwardRef)(
5410
5429
  disabled: !src,
5411
5430
  className: "cursor-pointer text-text-950 hover:text-primary-600 disabled:text-text-400 disabled:cursor-not-allowed",
5412
5431
  "aria-label": isPlaying ? "Pausar" : "Reproduzir",
5413
- children: isPlaying ? /* @__PURE__ */ (0, import_jsx_runtime28.jsx)("div", { className: "w-6 h-6 flex items-center justify-center", children: /* @__PURE__ */ (0, import_jsx_runtime28.jsxs)("div", { className: "flex gap-0.5", children: [
5414
- /* @__PURE__ */ (0, import_jsx_runtime28.jsx)("div", { className: "w-1 h-4 bg-current rounded-sm" }),
5415
- /* @__PURE__ */ (0, import_jsx_runtime28.jsx)("div", { className: "w-1 h-4 bg-current rounded-sm" })
5416
- ] }) }) : /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(import_phosphor_react13.Play, { size: 24 })
5432
+ children: isPlaying ? /* @__PURE__ */ (0, import_jsx_runtime31.jsx)("div", { className: "w-6 h-6 flex items-center justify-center", children: /* @__PURE__ */ (0, import_jsx_runtime31.jsxs)("div", { className: "flex gap-0.5", children: [
5433
+ /* @__PURE__ */ (0, import_jsx_runtime31.jsx)("div", { className: "w-1 h-4 bg-current rounded-sm" }),
5434
+ /* @__PURE__ */ (0, import_jsx_runtime31.jsx)("div", { className: "w-1 h-4 bg-current rounded-sm" })
5435
+ ] }) }) : /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(import_phosphor_react13.Play, { size: 24 })
5417
5436
  }
5418
5437
  ),
5419
- /* @__PURE__ */ (0, import_jsx_runtime28.jsx)("p", { className: "text-text-800 text-md font-medium min-w-[2.5rem]", children: formatTime2(currentTime) }),
5420
- /* @__PURE__ */ (0, import_jsx_runtime28.jsx)("div", { className: "flex-1 relative", "data-testid": "progress-bar", children: /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(
5438
+ /* @__PURE__ */ (0, import_jsx_runtime31.jsx)("p", { className: "text-text-800 text-md font-medium min-w-[2.5rem]", children: formatTime2(currentTime) }),
5439
+ /* @__PURE__ */ (0, import_jsx_runtime31.jsx)("div", { className: "flex-1 relative", "data-testid": "progress-bar", children: /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(
5421
5440
  "button",
5422
5441
  {
5423
5442
  type: "button",
@@ -5432,7 +5451,7 @@ var CardAudio = (0, import_react16.forwardRef)(
5432
5451
  }
5433
5452
  },
5434
5453
  "aria-label": "Barra de progresso do \xE1udio",
5435
- children: /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(
5454
+ children: /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(
5436
5455
  "div",
5437
5456
  {
5438
5457
  className: "h-full bg-primary-600 rounded-full transition-all duration-100",
@@ -5443,19 +5462,19 @@ var CardAudio = (0, import_react16.forwardRef)(
5443
5462
  )
5444
5463
  }
5445
5464
  ) }),
5446
- /* @__PURE__ */ (0, import_jsx_runtime28.jsx)("p", { className: "text-text-800 text-md font-medium min-w-[2.5rem]", children: formatTime2(duration) }),
5447
- /* @__PURE__ */ (0, import_jsx_runtime28.jsxs)("div", { className: "relative h-6", ref: volumeControlRef, children: [
5448
- /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(
5465
+ /* @__PURE__ */ (0, import_jsx_runtime31.jsx)("p", { className: "text-text-800 text-md font-medium min-w-[2.5rem]", children: formatTime2(duration) }),
5466
+ /* @__PURE__ */ (0, import_jsx_runtime31.jsxs)("div", { className: "relative h-6", ref: volumeControlRef, children: [
5467
+ /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(
5449
5468
  "button",
5450
5469
  {
5451
5470
  type: "button",
5452
5471
  onClick: toggleVolumeControl,
5453
5472
  className: "cursor-pointer text-text-950 hover:text-primary-600",
5454
5473
  "aria-label": "Controle de volume",
5455
- children: /* @__PURE__ */ (0, import_jsx_runtime28.jsx)("div", { className: "w-6 h-6 flex items-center justify-center", children: getVolumeIcon() })
5474
+ children: /* @__PURE__ */ (0, import_jsx_runtime31.jsx)("div", { className: "w-6 h-6 flex items-center justify-center", children: getVolumeIcon() })
5456
5475
  }
5457
5476
  ),
5458
- showVolumeControl && /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(
5477
+ showVolumeControl && /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(
5459
5478
  "button",
5460
5479
  {
5461
5480
  type: "button",
@@ -5465,7 +5484,7 @@ var CardAudio = (0, import_react16.forwardRef)(
5465
5484
  setShowVolumeControl(false);
5466
5485
  }
5467
5486
  },
5468
- children: /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(
5487
+ children: /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(
5469
5488
  "input",
5470
5489
  {
5471
5490
  type: "range",
@@ -5506,22 +5525,22 @@ var CardAudio = (0, import_react16.forwardRef)(
5506
5525
  }
5507
5526
  )
5508
5527
  ] }),
5509
- /* @__PURE__ */ (0, import_jsx_runtime28.jsxs)("div", { className: "relative h-6", ref: speedMenuRef, children: [
5510
- /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(
5528
+ /* @__PURE__ */ (0, import_jsx_runtime31.jsxs)("div", { className: "relative h-6", ref: speedMenuRef, children: [
5529
+ /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(
5511
5530
  "button",
5512
5531
  {
5513
5532
  type: "button",
5514
5533
  onClick: toggleSpeedMenu,
5515
5534
  className: "cursor-pointer text-text-950 hover:text-primary-600",
5516
5535
  "aria-label": "Op\xE7\xF5es de velocidade",
5517
- children: /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(import_phosphor_react13.DotsThreeVertical, { size: 24 })
5536
+ children: /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(import_phosphor_react13.DotsThreeVertical, { size: 24 })
5518
5537
  }
5519
5538
  ),
5520
- showSpeedMenu && /* @__PURE__ */ (0, import_jsx_runtime28.jsx)("div", { className: "absolute bottom-full right-0 mb-2 p-2 bg-background border border-border-100 rounded-lg shadow-lg min-w-24 z-10", children: /* @__PURE__ */ (0, import_jsx_runtime28.jsx)("div", { className: "flex flex-col gap-1", children: [
5539
+ showSpeedMenu && /* @__PURE__ */ (0, import_jsx_runtime31.jsx)("div", { className: "absolute bottom-full right-0 mb-2 p-2 bg-background border border-border-100 rounded-lg shadow-lg min-w-24 z-10", children: /* @__PURE__ */ (0, import_jsx_runtime31.jsx)("div", { className: "flex flex-col gap-1", children: [
5521
5540
  { speed: 1, label: "1x" },
5522
5541
  { speed: 1.5, label: "1.5x" },
5523
5542
  { speed: 2, label: "2x" }
5524
- ].map(({ speed, label }) => /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(
5543
+ ].map(({ speed, label }) => /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(
5525
5544
  "button",
5526
5545
  {
5527
5546
  type: "button",
@@ -5546,10 +5565,10 @@ var SIMULADO_BACKGROUND_CLASSES = {
5546
5565
  simuladao: "bg-exam-3",
5547
5566
  vestibular: "bg-exam-4"
5548
5567
  };
5549
- var CardSimulado = (0, import_react16.forwardRef)(
5568
+ var CardSimulado = (0, import_react17.forwardRef)(
5550
5569
  ({ title, duration, info, backgroundColor, className, ...props }, ref) => {
5551
5570
  const backgroundClass = SIMULADO_BACKGROUND_CLASSES[backgroundColor];
5552
- return /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(
5571
+ return /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(
5553
5572
  CardBase,
5554
5573
  {
5555
5574
  ref,
@@ -5562,18 +5581,18 @@ var CardSimulado = (0, import_react16.forwardRef)(
5562
5581
  className
5563
5582
  ),
5564
5583
  ...props,
5565
- children: /* @__PURE__ */ (0, import_jsx_runtime28.jsxs)("div", { className: "flex justify-between items-center w-full gap-4", children: [
5566
- /* @__PURE__ */ (0, import_jsx_runtime28.jsxs)("div", { className: "flex flex-col gap-1 flex-1 min-w-0", children: [
5567
- /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(Text_default, { size: "lg", weight: "bold", className: "text-text-950 truncate", children: title }),
5568
- /* @__PURE__ */ (0, import_jsx_runtime28.jsxs)("div", { className: "flex items-center gap-4 text-text-700", children: [
5569
- duration && /* @__PURE__ */ (0, import_jsx_runtime28.jsxs)("div", { className: "flex items-center gap-1", children: [
5570
- /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(import_phosphor_react13.Clock, { size: 16, className: "flex-shrink-0" }),
5571
- /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(Text_default, { size: "sm", children: duration })
5584
+ children: /* @__PURE__ */ (0, import_jsx_runtime31.jsxs)("div", { className: "flex justify-between items-center w-full gap-4", children: [
5585
+ /* @__PURE__ */ (0, import_jsx_runtime31.jsxs)("div", { className: "flex flex-col gap-1 flex-1 min-w-0", children: [
5586
+ /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(Text_default, { size: "lg", weight: "bold", className: "text-text-950 truncate", children: title }),
5587
+ /* @__PURE__ */ (0, import_jsx_runtime31.jsxs)("div", { className: "flex items-center gap-4 text-text-700", children: [
5588
+ duration && /* @__PURE__ */ (0, import_jsx_runtime31.jsxs)("div", { className: "flex items-center gap-1", children: [
5589
+ /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(import_phosphor_react13.Clock, { size: 16, className: "flex-shrink-0" }),
5590
+ /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(Text_default, { size: "sm", children: duration })
5572
5591
  ] }),
5573
- /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(Text_default, { size: "sm", className: "truncate", children: info })
5592
+ /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(Text_default, { size: "sm", className: "truncate", children: info })
5574
5593
  ] })
5575
5594
  ] }),
5576
- /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(
5595
+ /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(
5577
5596
  import_phosphor_react13.CaretRight,
5578
5597
  {
5579
5598
  size: 24,
@@ -5586,7 +5605,7 @@ var CardSimulado = (0, import_react16.forwardRef)(
5586
5605
  );
5587
5606
  }
5588
5607
  );
5589
- var CardTest = (0, import_react16.forwardRef)(
5608
+ var CardTest = (0, import_react17.forwardRef)(
5590
5609
  ({
5591
5610
  title,
5592
5611
  duration,
@@ -5618,7 +5637,7 @@ var CardTest = (0, import_react16.forwardRef)(
5618
5637
  const interactiveClasses = isSelectable ? "cursor-pointer focus:outline-none focus:ring-2 focus:ring-primary-950 focus:ring-offset-2" : "";
5619
5638
  const selectedClasses = selected ? "ring-2 ring-primary-950 ring-offset-2" : "";
5620
5639
  if (isSelectable) {
5621
- return /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(
5640
+ return /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(
5622
5641
  "button",
5623
5642
  {
5624
5643
  ref,
@@ -5630,8 +5649,8 @@ var CardTest = (0, import_react16.forwardRef)(
5630
5649
  onKeyDown: handleKeyDown,
5631
5650
  "aria-pressed": selected,
5632
5651
  ...props,
5633
- children: /* @__PURE__ */ (0, import_jsx_runtime28.jsxs)("div", { className: "flex flex-col justify-between gap-[27px] flex-grow min-h-[67px] w-full min-w-0", children: [
5634
- /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(
5652
+ children: /* @__PURE__ */ (0, import_jsx_runtime31.jsxs)("div", { className: "flex flex-col justify-between gap-[27px] flex-grow min-h-[67px] w-full min-w-0", children: [
5653
+ /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(
5635
5654
  Text_default,
5636
5655
  {
5637
5656
  size: "md",
@@ -5640,10 +5659,10 @@ var CardTest = (0, import_react16.forwardRef)(
5640
5659
  children: title
5641
5660
  }
5642
5661
  ),
5643
- /* @__PURE__ */ (0, import_jsx_runtime28.jsxs)("div", { className: "flex flex-row justify-start items-end gap-4 w-full", children: [
5644
- duration && /* @__PURE__ */ (0, import_jsx_runtime28.jsxs)("div", { className: "flex flex-row items-center gap-1 flex-shrink-0", children: [
5645
- /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(import_phosphor_react13.Clock, { size: 16, className: "text-text-700" }),
5646
- /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(
5662
+ /* @__PURE__ */ (0, import_jsx_runtime31.jsxs)("div", { className: "flex flex-row justify-start items-end gap-4 w-full", children: [
5663
+ duration && /* @__PURE__ */ (0, import_jsx_runtime31.jsxs)("div", { className: "flex flex-row items-center gap-1 flex-shrink-0", children: [
5664
+ /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(import_phosphor_react13.Clock, { size: 16, className: "text-text-700" }),
5665
+ /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(
5647
5666
  Text_default,
5648
5667
  {
5649
5668
  size: "sm",
@@ -5652,7 +5671,7 @@ var CardTest = (0, import_react16.forwardRef)(
5652
5671
  }
5653
5672
  )
5654
5673
  ] }),
5655
- /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(
5674
+ /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(
5656
5675
  Text_default,
5657
5676
  {
5658
5677
  size: "sm",
@@ -5665,14 +5684,14 @@ var CardTest = (0, import_react16.forwardRef)(
5665
5684
  }
5666
5685
  );
5667
5686
  }
5668
- return /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(
5687
+ return /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(
5669
5688
  "div",
5670
5689
  {
5671
5690
  ref,
5672
5691
  className: cn(`${baseClasses} ${className}`.trim()),
5673
5692
  ...props,
5674
- children: /* @__PURE__ */ (0, import_jsx_runtime28.jsxs)("div", { className: "flex flex-col justify-between gap-[27px] flex-grow min-h-[67px] w-full min-w-0", children: [
5675
- /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(
5693
+ children: /* @__PURE__ */ (0, import_jsx_runtime31.jsxs)("div", { className: "flex flex-col justify-between gap-[27px] flex-grow min-h-[67px] w-full min-w-0", children: [
5694
+ /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(
5676
5695
  Text_default,
5677
5696
  {
5678
5697
  size: "md",
@@ -5681,10 +5700,10 @@ var CardTest = (0, import_react16.forwardRef)(
5681
5700
  children: title
5682
5701
  }
5683
5702
  ),
5684
- /* @__PURE__ */ (0, import_jsx_runtime28.jsxs)("div", { className: "flex flex-row justify-start items-end gap-4 w-full", children: [
5685
- duration && /* @__PURE__ */ (0, import_jsx_runtime28.jsxs)("div", { className: "flex flex-row items-center gap-1 flex-shrink-0", children: [
5686
- /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(import_phosphor_react13.Clock, { size: 16, className: "text-text-700" }),
5687
- /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(
5703
+ /* @__PURE__ */ (0, import_jsx_runtime31.jsxs)("div", { className: "flex flex-row justify-start items-end gap-4 w-full", children: [
5704
+ duration && /* @__PURE__ */ (0, import_jsx_runtime31.jsxs)("div", { className: "flex flex-row items-center gap-1 flex-shrink-0", children: [
5705
+ /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(import_phosphor_react13.Clock, { size: 16, className: "text-text-700" }),
5706
+ /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(
5688
5707
  Text_default,
5689
5708
  {
5690
5709
  size: "sm",
@@ -5693,7 +5712,7 @@ var CardTest = (0, import_react16.forwardRef)(
5693
5712
  }
5694
5713
  )
5695
5714
  ] }),
5696
- /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(
5715
+ /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(
5697
5716
  Text_default,
5698
5717
  {
5699
5718
  size: "sm",
@@ -5729,15 +5748,15 @@ var SIMULATION_TYPE_STYLES = {
5729
5748
  text: "Vestibular"
5730
5749
  }
5731
5750
  };
5732
- var CardSimulationHistory = (0, import_react16.forwardRef)(({ data, onSimulationClick, className, ...props }, ref) => {
5733
- return /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(
5751
+ var CardSimulationHistory = (0, import_react17.forwardRef)(({ data, onSimulationClick, className, ...props }, ref) => {
5752
+ return /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(
5734
5753
  "div",
5735
5754
  {
5736
5755
  ref,
5737
5756
  className: cn("w-full max-w-[992px] h-auto", className),
5738
5757
  ...props,
5739
- children: /* @__PURE__ */ (0, import_jsx_runtime28.jsxs)("div", { className: "flex flex-col gap-0", children: [
5740
- data.map((section, sectionIndex) => /* @__PURE__ */ (0, import_jsx_runtime28.jsx)("div", { className: "flex flex-col", children: /* @__PURE__ */ (0, import_jsx_runtime28.jsxs)(
5758
+ children: /* @__PURE__ */ (0, import_jsx_runtime31.jsxs)("div", { className: "flex flex-col gap-0", children: [
5759
+ data.map((section, sectionIndex) => /* @__PURE__ */ (0, import_jsx_runtime31.jsx)("div", { className: "flex flex-col", children: /* @__PURE__ */ (0, import_jsx_runtime31.jsxs)(
5741
5760
  "div",
5742
5761
  {
5743
5762
  className: cn(
@@ -5745,7 +5764,7 @@ var CardSimulationHistory = (0, import_react16.forwardRef)(({ data, onSimulation
5745
5764
  sectionIndex === 0 ? "rounded-t-3xl" : ""
5746
5765
  ),
5747
5766
  children: [
5748
- /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(
5767
+ /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(
5749
5768
  Text_default,
5750
5769
  {
5751
5770
  size: "xs",
@@ -5754,9 +5773,9 @@ var CardSimulationHistory = (0, import_react16.forwardRef)(({ data, onSimulation
5754
5773
  children: section.date
5755
5774
  }
5756
5775
  ),
5757
- /* @__PURE__ */ (0, import_jsx_runtime28.jsx)("div", { className: "flex flex-col gap-2 flex-1", children: section.simulations.map((simulation) => {
5776
+ /* @__PURE__ */ (0, import_jsx_runtime31.jsx)("div", { className: "flex flex-col gap-2 flex-1", children: section.simulations.map((simulation) => {
5758
5777
  const typeStyles = SIMULATION_TYPE_STYLES[simulation.type];
5759
- return /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(
5778
+ return /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(
5760
5779
  CardBase,
5761
5780
  {
5762
5781
  layout: "horizontal",
@@ -5768,9 +5787,9 @@ var CardSimulationHistory = (0, import_react16.forwardRef)(({ data, onSimulation
5768
5787
  transition-shadow duration-200 h-auto min-h-[61px]`
5769
5788
  ),
5770
5789
  onClick: () => onSimulationClick?.(simulation),
5771
- children: /* @__PURE__ */ (0, import_jsx_runtime28.jsxs)("div", { className: "flex justify-between items-center w-full gap-2", children: [
5772
- /* @__PURE__ */ (0, import_jsx_runtime28.jsxs)("div", { className: "flex flex-wrap flex-col justify-between sm:flex-row gap-2 flex-1 min-w-0", children: [
5773
- /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(
5790
+ children: /* @__PURE__ */ (0, import_jsx_runtime31.jsxs)("div", { className: "flex justify-between items-center w-full gap-2", children: [
5791
+ /* @__PURE__ */ (0, import_jsx_runtime31.jsxs)("div", { className: "flex flex-wrap flex-col justify-between sm:flex-row gap-2 flex-1 min-w-0", children: [
5792
+ /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(
5774
5793
  Text_default,
5775
5794
  {
5776
5795
  size: "lg",
@@ -5779,8 +5798,8 @@ var CardSimulationHistory = (0, import_react16.forwardRef)(({ data, onSimulation
5779
5798
  children: simulation.title
5780
5799
  }
5781
5800
  ),
5782
- /* @__PURE__ */ (0, import_jsx_runtime28.jsxs)("div", { className: "flex items-center gap-2", children: [
5783
- /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(
5801
+ /* @__PURE__ */ (0, import_jsx_runtime31.jsxs)("div", { className: "flex items-center gap-2", children: [
5802
+ /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(
5784
5803
  Badge_default,
5785
5804
  {
5786
5805
  variant: "examsOutlined",
@@ -5789,10 +5808,10 @@ var CardSimulationHistory = (0, import_react16.forwardRef)(({ data, onSimulation
5789
5808
  children: typeStyles.text
5790
5809
  }
5791
5810
  ),
5792
- /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(Text_default, { size: "sm", className: "text-text-800 truncate", children: simulation.info })
5811
+ /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(Text_default, { size: "sm", className: "text-text-800 truncate", children: simulation.info })
5793
5812
  ] })
5794
5813
  ] }),
5795
- /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(
5814
+ /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(
5796
5815
  import_phosphor_react13.CaretRight,
5797
5816
  {
5798
5817
  size: 24,
@@ -5808,7 +5827,7 @@ var CardSimulationHistory = (0, import_react16.forwardRef)(({ data, onSimulation
5808
5827
  ]
5809
5828
  }
5810
5829
  ) }, section.date)),
5811
- data.length > 0 && /* @__PURE__ */ (0, import_jsx_runtime28.jsx)("div", { className: "w-full h-6 bg-white rounded-b-3xl" })
5830
+ data.length > 0 && /* @__PURE__ */ (0, import_jsx_runtime31.jsx)("div", { className: "w-full h-6 bg-white rounded-b-3xl" })
5812
5831
  ] })
5813
5832
  }
5814
5833
  );
@@ -5816,8 +5835,8 @@ var CardSimulationHistory = (0, import_react16.forwardRef)(({ data, onSimulation
5816
5835
 
5817
5836
  // src/components/Accordation/Accordation.tsx
5818
5837
  var import_phosphor_react14 = require("phosphor-react");
5819
- var import_jsx_runtime29 = require("react/jsx-runtime");
5820
- var CardAccordation = (0, import_react17.forwardRef)(
5838
+ var import_jsx_runtime32 = require("react/jsx-runtime");
5839
+ var CardAccordation = (0, import_react18.forwardRef)(
5821
5840
  ({
5822
5841
  trigger,
5823
5842
  children,
@@ -5826,8 +5845,8 @@ var CardAccordation = (0, import_react17.forwardRef)(
5826
5845
  onToggleExpanded,
5827
5846
  ...props
5828
5847
  }, ref) => {
5829
- const [isExpanded, setIsExpanded] = (0, import_react17.useState)(defaultExpanded);
5830
- const contentId = (0, import_react17.useId)();
5848
+ const [isExpanded, setIsExpanded] = (0, import_react18.useState)(defaultExpanded);
5849
+ const contentId = (0, import_react18.useId)();
5831
5850
  const handleToggle = () => {
5832
5851
  const newExpanded = !isExpanded;
5833
5852
  setIsExpanded(newExpanded);
@@ -5839,7 +5858,7 @@ var CardAccordation = (0, import_react17.forwardRef)(
5839
5858
  handleToggle();
5840
5859
  }
5841
5860
  };
5842
- return /* @__PURE__ */ (0, import_jsx_runtime29.jsxs)(
5861
+ return /* @__PURE__ */ (0, import_jsx_runtime32.jsxs)(
5843
5862
  CardBase,
5844
5863
  {
5845
5864
  ref,
@@ -5849,7 +5868,7 @@ var CardAccordation = (0, import_react17.forwardRef)(
5849
5868
  className: cn("overflow-hidden", className),
5850
5869
  ...props,
5851
5870
  children: [
5852
- /* @__PURE__ */ (0, import_jsx_runtime29.jsxs)(
5871
+ /* @__PURE__ */ (0, import_jsx_runtime32.jsxs)(
5853
5872
  "button",
5854
5873
  {
5855
5874
  onClick: handleToggle,
@@ -5859,7 +5878,7 @@ var CardAccordation = (0, import_react17.forwardRef)(
5859
5878
  "aria-controls": "accordion-content",
5860
5879
  children: [
5861
5880
  trigger,
5862
- /* @__PURE__ */ (0, import_jsx_runtime29.jsx)(
5881
+ /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(
5863
5882
  import_phosphor_react14.CaretRight,
5864
5883
  {
5865
5884
  size: 20,
@@ -5873,7 +5892,7 @@ var CardAccordation = (0, import_react17.forwardRef)(
5873
5892
  ]
5874
5893
  }
5875
5894
  ),
5876
- /* @__PURE__ */ (0, import_jsx_runtime29.jsx)(
5895
+ /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(
5877
5896
  "div",
5878
5897
  {
5879
5898
  id: contentId,
@@ -5882,7 +5901,7 @@ var CardAccordation = (0, import_react17.forwardRef)(
5882
5901
  isExpanded ? "max-h-screen opacity-100" : "max-h-0 opacity-0"
5883
5902
  ),
5884
5903
  "data-testid": "accordion-content",
5885
- children: /* @__PURE__ */ (0, import_jsx_runtime29.jsx)("div", { className: "p-4 pt-0 border-border-50", children })
5904
+ children: /* @__PURE__ */ (0, import_jsx_runtime32.jsx)("div", { className: "p-4 pt-0 border-border-50", children })
5886
5905
  }
5887
5906
  )
5888
5907
  ]
@@ -5893,8 +5912,8 @@ var CardAccordation = (0, import_react17.forwardRef)(
5893
5912
 
5894
5913
  // src/components/Alternative/Alternative.tsx
5895
5914
  var import_phosphor_react15 = require("phosphor-react");
5896
- var import_react18 = require("react");
5897
- var import_jsx_runtime30 = require("react/jsx-runtime");
5915
+ var import_react19 = require("react");
5916
+ var import_jsx_runtime33 = require("react/jsx-runtime");
5898
5917
  var AlternativesList = ({
5899
5918
  alternatives,
5900
5919
  name,
@@ -5907,9 +5926,9 @@ var AlternativesList = ({
5907
5926
  mode = "interactive",
5908
5927
  selectedValue
5909
5928
  }) => {
5910
- const uniqueId = (0, import_react18.useId)();
5929
+ const uniqueId = (0, import_react19.useId)();
5911
5930
  const groupName = name || `alternatives-${uniqueId}`;
5912
- const [actualValue, setActualValue] = (0, import_react18.useState)(value);
5931
+ const [actualValue, setActualValue] = (0, import_react19.useState)(value);
5913
5932
  const isReadonly = mode === "readonly";
5914
5933
  const getStatusStyles2 = (status, isReadonly2) => {
5915
5934
  const hoverClass = isReadonly2 ? "" : "hover:bg-background-50";
@@ -5925,9 +5944,9 @@ var AlternativesList = ({
5925
5944
  const getStatusBadge2 = (status) => {
5926
5945
  switch (status) {
5927
5946
  case "correct":
5928
- return /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(Badge_default, { variant: "solid", action: "success", iconLeft: /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(import_phosphor_react15.CheckCircle, {}), children: "Resposta correta" });
5947
+ return /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(Badge_default, { variant: "solid", action: "success", iconLeft: /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(import_phosphor_react15.CheckCircle, {}), children: "Resposta correta" });
5929
5948
  case "incorrect":
5930
- return /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(Badge_default, { variant: "solid", action: "error", iconLeft: /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(import_phosphor_react15.XCircle, {}), children: "Resposta incorreta" });
5949
+ return /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(Badge_default, { variant: "solid", action: "error", iconLeft: /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(import_phosphor_react15.XCircle, {}), children: "Resposta incorreta" });
5931
5950
  default:
5932
5951
  return null;
5933
5952
  }
@@ -5957,10 +5976,10 @@ var AlternativesList = ({
5957
5976
  const renderRadio = () => {
5958
5977
  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"}`;
5959
5978
  const dotClasses = "w-3 h-3 rounded-full bg-primary-950 transition-all duration-200";
5960
- return /* @__PURE__ */ (0, import_jsx_runtime30.jsx)("div", { className: radioClasses, children: isUserSelected && /* @__PURE__ */ (0, import_jsx_runtime30.jsx)("div", { className: dotClasses }) });
5979
+ return /* @__PURE__ */ (0, import_jsx_runtime33.jsx)("div", { className: radioClasses, children: isUserSelected && /* @__PURE__ */ (0, import_jsx_runtime33.jsx)("div", { className: dotClasses }) });
5961
5980
  };
5962
5981
  if (layout === "detailed") {
5963
- return /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(
5982
+ return /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(
5964
5983
  "div",
5965
5984
  {
5966
5985
  className: cn(
@@ -5968,11 +5987,11 @@ var AlternativesList = ({
5968
5987
  statusStyles,
5969
5988
  alternative.disabled ? "opacity-50" : ""
5970
5989
  ),
5971
- children: /* @__PURE__ */ (0, import_jsx_runtime30.jsxs)("div", { className: "flex items-start justify-between gap-3", children: [
5972
- /* @__PURE__ */ (0, import_jsx_runtime30.jsxs)("div", { className: "flex items-start gap-3 flex-1", children: [
5973
- /* @__PURE__ */ (0, import_jsx_runtime30.jsx)("div", { className: "mt-1", children: renderRadio() }),
5974
- /* @__PURE__ */ (0, import_jsx_runtime30.jsxs)("div", { className: "flex-1", children: [
5975
- /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(
5990
+ children: /* @__PURE__ */ (0, import_jsx_runtime33.jsxs)("div", { className: "flex items-start justify-between gap-3", children: [
5991
+ /* @__PURE__ */ (0, import_jsx_runtime33.jsxs)("div", { className: "flex items-start gap-3 flex-1", children: [
5992
+ /* @__PURE__ */ (0, import_jsx_runtime33.jsx)("div", { className: "mt-1", children: renderRadio() }),
5993
+ /* @__PURE__ */ (0, import_jsx_runtime33.jsxs)("div", { className: "flex-1", children: [
5994
+ /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(
5976
5995
  "p",
5977
5996
  {
5978
5997
  className: cn(
@@ -5982,16 +6001,16 @@ var AlternativesList = ({
5982
6001
  children: alternative.label
5983
6002
  }
5984
6003
  ),
5985
- alternative.description && /* @__PURE__ */ (0, import_jsx_runtime30.jsx)("p", { className: "text-sm text-text-600 mt-1", children: alternative.description })
6004
+ alternative.description && /* @__PURE__ */ (0, import_jsx_runtime33.jsx)("p", { className: "text-sm text-text-600 mt-1", children: alternative.description })
5986
6005
  ] })
5987
6006
  ] }),
5988
- statusBadge && /* @__PURE__ */ (0, import_jsx_runtime30.jsx)("div", { className: "flex-shrink-0", children: statusBadge })
6007
+ statusBadge && /* @__PURE__ */ (0, import_jsx_runtime33.jsx)("div", { className: "flex-shrink-0", children: statusBadge })
5989
6008
  ] })
5990
6009
  },
5991
6010
  alternativeId
5992
6011
  );
5993
6012
  }
5994
- return /* @__PURE__ */ (0, import_jsx_runtime30.jsxs)(
6013
+ return /* @__PURE__ */ (0, import_jsx_runtime33.jsxs)(
5995
6014
  "div",
5996
6015
  {
5997
6016
  className: cn(
@@ -6000,9 +6019,9 @@ var AlternativesList = ({
6000
6019
  alternative.disabled ? "opacity-50" : ""
6001
6020
  ),
6002
6021
  children: [
6003
- /* @__PURE__ */ (0, import_jsx_runtime30.jsxs)("div", { className: "flex items-center gap-2 flex-1", children: [
6022
+ /* @__PURE__ */ (0, import_jsx_runtime33.jsxs)("div", { className: "flex items-center gap-2 flex-1", children: [
6004
6023
  renderRadio(),
6005
- /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(
6024
+ /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(
6006
6025
  "span",
6007
6026
  {
6008
6027
  className: cn(
@@ -6013,14 +6032,14 @@ var AlternativesList = ({
6013
6032
  }
6014
6033
  )
6015
6034
  ] }),
6016
- statusBadge && /* @__PURE__ */ (0, import_jsx_runtime30.jsx)("div", { className: "flex-shrink-0", children: statusBadge })
6035
+ statusBadge && /* @__PURE__ */ (0, import_jsx_runtime33.jsx)("div", { className: "flex-shrink-0", children: statusBadge })
6017
6036
  ]
6018
6037
  },
6019
6038
  alternativeId
6020
6039
  );
6021
6040
  };
6022
6041
  if (isReadonly) {
6023
- return /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(
6042
+ return /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(
6024
6043
  "div",
6025
6044
  {
6026
6045
  className: cn("flex flex-col", getLayoutClasses(), "w-full", className),
@@ -6030,7 +6049,7 @@ var AlternativesList = ({
6030
6049
  }
6031
6050
  );
6032
6051
  }
6033
- return /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(
6052
+ return /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(
6034
6053
  RadioGroup,
6035
6054
  {
6036
6055
  name: groupName,
@@ -6047,7 +6066,7 @@ var AlternativesList = ({
6047
6066
  const statusStyles = getStatusStyles2(alternative.status, false);
6048
6067
  const statusBadge = getStatusBadge2(alternative.status);
6049
6068
  if (layout === "detailed") {
6050
- return /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(
6069
+ return /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(
6051
6070
  "div",
6052
6071
  {
6053
6072
  className: cn(
@@ -6055,9 +6074,9 @@ var AlternativesList = ({
6055
6074
  statusStyles,
6056
6075
  alternative.disabled ? "opacity-50 cursor-not-allowed" : "cursor-pointer"
6057
6076
  ),
6058
- children: /* @__PURE__ */ (0, import_jsx_runtime30.jsxs)("div", { className: "flex items-start justify-between gap-3", children: [
6059
- /* @__PURE__ */ (0, import_jsx_runtime30.jsxs)("div", { className: "flex items-start gap-3 flex-1", children: [
6060
- /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(
6077
+ children: /* @__PURE__ */ (0, import_jsx_runtime33.jsxs)("div", { className: "flex items-start justify-between gap-3", children: [
6078
+ /* @__PURE__ */ (0, import_jsx_runtime33.jsxs)("div", { className: "flex items-start gap-3 flex-1", children: [
6079
+ /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(
6061
6080
  RadioGroupItem,
6062
6081
  {
6063
6082
  value: alternative.value,
@@ -6066,8 +6085,8 @@ var AlternativesList = ({
6066
6085
  className: "mt-1"
6067
6086
  }
6068
6087
  ),
6069
- /* @__PURE__ */ (0, import_jsx_runtime30.jsxs)("div", { className: "flex-1", children: [
6070
- /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(
6088
+ /* @__PURE__ */ (0, import_jsx_runtime33.jsxs)("div", { className: "flex-1", children: [
6089
+ /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(
6071
6090
  "label",
6072
6091
  {
6073
6092
  htmlFor: alternativeId,
@@ -6079,16 +6098,16 @@ var AlternativesList = ({
6079
6098
  children: alternative.label
6080
6099
  }
6081
6100
  ),
6082
- alternative.description && /* @__PURE__ */ (0, import_jsx_runtime30.jsx)("p", { className: "text-sm text-text-600 mt-1", children: alternative.description })
6101
+ alternative.description && /* @__PURE__ */ (0, import_jsx_runtime33.jsx)("p", { className: "text-sm text-text-600 mt-1", children: alternative.description })
6083
6102
  ] })
6084
6103
  ] }),
6085
- statusBadge && /* @__PURE__ */ (0, import_jsx_runtime30.jsx)("div", { className: "flex-shrink-0", children: statusBadge })
6104
+ statusBadge && /* @__PURE__ */ (0, import_jsx_runtime33.jsx)("div", { className: "flex-shrink-0", children: statusBadge })
6086
6105
  ] })
6087
6106
  },
6088
6107
  alternativeId
6089
6108
  );
6090
6109
  }
6091
- return /* @__PURE__ */ (0, import_jsx_runtime30.jsxs)(
6110
+ return /* @__PURE__ */ (0, import_jsx_runtime33.jsxs)(
6092
6111
  "div",
6093
6112
  {
6094
6113
  className: cn(
@@ -6097,8 +6116,8 @@ var AlternativesList = ({
6097
6116
  alternative.disabled ? "opacity-50 cursor-not-allowed" : ""
6098
6117
  ),
6099
6118
  children: [
6100
- /* @__PURE__ */ (0, import_jsx_runtime30.jsxs)("div", { className: "flex items-center gap-2 flex-1", children: [
6101
- /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(
6119
+ /* @__PURE__ */ (0, import_jsx_runtime33.jsxs)("div", { className: "flex items-center gap-2 flex-1", children: [
6120
+ /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(
6102
6121
  RadioGroupItem,
6103
6122
  {
6104
6123
  value: alternative.value,
@@ -6106,7 +6125,7 @@ var AlternativesList = ({
6106
6125
  disabled: alternative.disabled
6107
6126
  }
6108
6127
  ),
6109
- /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(
6128
+ /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(
6110
6129
  "label",
6111
6130
  {
6112
6131
  htmlFor: alternativeId,
@@ -6119,7 +6138,7 @@ var AlternativesList = ({
6119
6138
  }
6120
6139
  )
6121
6140
  ] }),
6122
- statusBadge && /* @__PURE__ */ (0, import_jsx_runtime30.jsx)("div", { className: "flex-shrink-0", children: statusBadge })
6141
+ statusBadge && /* @__PURE__ */ (0, import_jsx_runtime33.jsx)("div", { className: "flex-shrink-0", children: statusBadge })
6123
6142
  ]
6124
6143
  },
6125
6144
  alternativeId
@@ -6128,9 +6147,9 @@ var AlternativesList = ({
6128
6147
  }
6129
6148
  );
6130
6149
  };
6131
- var HeaderAlternative = (0, import_react18.forwardRef)(
6150
+ var HeaderAlternative = (0, import_react19.forwardRef)(
6132
6151
  ({ className, title, subTitle, content, ...props }, ref) => {
6133
- return /* @__PURE__ */ (0, import_jsx_runtime30.jsxs)(
6152
+ return /* @__PURE__ */ (0, import_jsx_runtime33.jsxs)(
6134
6153
  "div",
6135
6154
  {
6136
6155
  ref,
@@ -6140,11 +6159,11 @@ var HeaderAlternative = (0, import_react18.forwardRef)(
6140
6159
  ),
6141
6160
  ...props,
6142
6161
  children: [
6143
- /* @__PURE__ */ (0, import_jsx_runtime30.jsxs)("span", { className: "flex flex-col", children: [
6144
- /* @__PURE__ */ (0, import_jsx_runtime30.jsx)("p", { className: "text-text-950 font-bold text-lg", children: title }),
6145
- /* @__PURE__ */ (0, import_jsx_runtime30.jsx)("p", { className: "text-text-700 text-sm ", children: subTitle })
6162
+ /* @__PURE__ */ (0, import_jsx_runtime33.jsxs)("span", { className: "flex flex-col", children: [
6163
+ /* @__PURE__ */ (0, import_jsx_runtime33.jsx)("p", { className: "text-text-950 font-bold text-lg", children: title }),
6164
+ /* @__PURE__ */ (0, import_jsx_runtime33.jsx)("p", { className: "text-text-700 text-sm ", children: subTitle })
6146
6165
  ] }),
6147
- /* @__PURE__ */ (0, import_jsx_runtime30.jsx)("p", { className: "text-text-950 text-md", children: content })
6166
+ /* @__PURE__ */ (0, import_jsx_runtime33.jsx)("p", { className: "text-text-950 text-md", children: content })
6148
6167
  ]
6149
6168
  }
6150
6169
  );
@@ -6152,8 +6171,8 @@ var HeaderAlternative = (0, import_react18.forwardRef)(
6152
6171
  );
6153
6172
 
6154
6173
  // src/components/AlertDialog/AlertDialog.tsx
6155
- var import_react19 = require("react");
6156
- var import_jsx_runtime31 = require("react/jsx-runtime");
6174
+ var import_react20 = require("react");
6175
+ var import_jsx_runtime34 = require("react/jsx-runtime");
6157
6176
  var SIZE_CLASSES11 = {
6158
6177
  "extra-small": "w-screen max-w-[324px]",
6159
6178
  small: "w-screen max-w-[378px]",
@@ -6161,7 +6180,7 @@ var SIZE_CLASSES11 = {
6161
6180
  large: "w-screen max-w-[578px]",
6162
6181
  "extra-large": "w-screen max-w-[912px]"
6163
6182
  };
6164
- var AlertDialog = (0, import_react19.forwardRef)(
6183
+ var AlertDialog = (0, import_react20.forwardRef)(
6165
6184
  ({
6166
6185
  description,
6167
6186
  cancelButtonLabel = "Cancelar",
@@ -6179,7 +6198,7 @@ var AlertDialog = (0, import_react19.forwardRef)(
6179
6198
  size = "medium",
6180
6199
  ...props
6181
6200
  }, ref) => {
6182
- (0, import_react19.useEffect)(() => {
6201
+ (0, import_react20.useEffect)(() => {
6183
6202
  if (!isOpen || !closeOnEscape) return;
6184
6203
  const handleEscape = (event) => {
6185
6204
  if (event.key === "Escape") {
@@ -6189,7 +6208,7 @@ var AlertDialog = (0, import_react19.forwardRef)(
6189
6208
  document.addEventListener("keydown", handleEscape);
6190
6209
  return () => document.removeEventListener("keydown", handleEscape);
6191
6210
  }, [isOpen, closeOnEscape]);
6192
- (0, import_react19.useEffect)(() => {
6211
+ (0, import_react20.useEffect)(() => {
6193
6212
  if (isOpen) {
6194
6213
  document.body.style.overflow = "hidden";
6195
6214
  } else {
@@ -6218,14 +6237,14 @@ var AlertDialog = (0, import_react19.forwardRef)(
6218
6237
  onCancel?.(cancelValue);
6219
6238
  };
6220
6239
  const sizeClasses = SIZE_CLASSES11[size];
6221
- return /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(import_jsx_runtime31.Fragment, { children: isOpen && /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(
6240
+ return /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(import_jsx_runtime34.Fragment, { children: isOpen && /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(
6222
6241
  "div",
6223
6242
  {
6224
6243
  className: "fixed inset-0 z-50 flex items-center justify-center bg-black/50 backdrop-blur-sm",
6225
6244
  onClick: handleBackdropClick,
6226
6245
  onKeyDown: handleBackdropKeyDown,
6227
6246
  "data-testid": "alert-dialog-overlay",
6228
- children: /* @__PURE__ */ (0, import_jsx_runtime31.jsxs)(
6247
+ children: /* @__PURE__ */ (0, import_jsx_runtime34.jsxs)(
6229
6248
  "div",
6230
6249
  {
6231
6250
  ref,
@@ -6236,7 +6255,7 @@ var AlertDialog = (0, import_react19.forwardRef)(
6236
6255
  ),
6237
6256
  ...props,
6238
6257
  children: [
6239
- /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(
6258
+ /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(
6240
6259
  "h2",
6241
6260
  {
6242
6261
  id: "alert-dialog-title",
@@ -6244,7 +6263,7 @@ var AlertDialog = (0, import_react19.forwardRef)(
6244
6263
  children: title
6245
6264
  }
6246
6265
  ),
6247
- /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(
6266
+ /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(
6248
6267
  "p",
6249
6268
  {
6250
6269
  id: "alert-dialog-description",
@@ -6252,9 +6271,9 @@ var AlertDialog = (0, import_react19.forwardRef)(
6252
6271
  children: description
6253
6272
  }
6254
6273
  ),
6255
- /* @__PURE__ */ (0, import_jsx_runtime31.jsxs)("div", { className: "flex flex-row items-center justify-end pt-4 gap-3", children: [
6256
- /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(Button_default, { variant: "outline", size: "small", onClick: handleCancel, children: cancelButtonLabel }),
6257
- /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(
6274
+ /* @__PURE__ */ (0, import_jsx_runtime34.jsxs)("div", { className: "flex flex-row items-center justify-end pt-4 gap-3", children: [
6275
+ /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(Button_default, { variant: "outline", size: "small", onClick: handleCancel, children: cancelButtonLabel }),
6276
+ /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(
6258
6277
  Button_default,
6259
6278
  {
6260
6279
  variant: "solid",
@@ -6275,9 +6294,9 @@ var AlertDialog = (0, import_react19.forwardRef)(
6275
6294
  AlertDialog.displayName = "AlertDialog";
6276
6295
 
6277
6296
  // src/components/MultipleChoice/MultipleChoice.tsx
6278
- var import_react20 = require("react");
6297
+ var import_react21 = require("react");
6279
6298
  var import_phosphor_react16 = require("phosphor-react");
6280
- var import_jsx_runtime32 = require("react/jsx-runtime");
6299
+ var import_jsx_runtime35 = require("react/jsx-runtime");
6281
6300
  var MultipleChoiceList = ({
6282
6301
  disabled = false,
6283
6302
  className = "",
@@ -6287,16 +6306,16 @@ var MultipleChoiceList = ({
6287
6306
  onHandleSelectedValues,
6288
6307
  mode = "interactive"
6289
6308
  }) => {
6290
- const [actualValue, setActualValue] = (0, import_react20.useState)(selectedValues);
6291
- (0, import_react20.useEffect)(() => {
6309
+ const [actualValue, setActualValue] = (0, import_react21.useState)(selectedValues);
6310
+ (0, import_react21.useEffect)(() => {
6292
6311
  setActualValue(selectedValues);
6293
6312
  }, [selectedValues]);
6294
6313
  const getStatusBadge2 = (status) => {
6295
6314
  switch (status) {
6296
6315
  case "correct":
6297
- return /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(Badge_default, { variant: "solid", action: "success", iconLeft: /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(import_phosphor_react16.CheckCircle, {}), children: "Resposta correta" });
6316
+ return /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(Badge_default, { variant: "solid", action: "success", iconLeft: /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(import_phosphor_react16.CheckCircle, {}), children: "Resposta correta" });
6298
6317
  case "incorrect":
6299
- return /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(Badge_default, { variant: "solid", action: "error", iconLeft: /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(import_phosphor_react16.XCircle, {}), children: "Resposta incorreta" });
6318
+ return /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(Badge_default, { variant: "solid", action: "error", iconLeft: /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(import_phosphor_react16.XCircle, {}), children: "Resposta incorreta" });
6300
6319
  default:
6301
6320
  return null;
6302
6321
  }
@@ -6317,14 +6336,14 @@ var MultipleChoiceList = ({
6317
6336
  isSelected ? "border-primary-950 bg-primary-950 text-text" : "border-border-400 bg-background",
6318
6337
  isDisabled && "opacity-40 cursor-not-allowed"
6319
6338
  );
6320
- return /* @__PURE__ */ (0, import_jsx_runtime32.jsx)("div", { className: checkboxClasses, children: isSelected && /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(import_phosphor_react16.Check, { size: 16, weight: "bold" }) });
6339
+ return /* @__PURE__ */ (0, import_jsx_runtime35.jsx)("div", { className: checkboxClasses, children: isSelected && /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(import_phosphor_react16.Check, { size: 16, weight: "bold" }) });
6321
6340
  };
6322
6341
  if (mode === "readonly") {
6323
- return /* @__PURE__ */ (0, import_jsx_runtime32.jsx)("div", { className: cn("flex flex-col gap-2", className), children: choices.map((choice, i) => {
6342
+ return /* @__PURE__ */ (0, import_jsx_runtime35.jsx)("div", { className: cn("flex flex-col gap-2", className), children: choices.map((choice, i) => {
6324
6343
  const isSelected = actualValue?.includes(choice.value) || false;
6325
6344
  const statusStyles = getStatusStyles2(choice.status);
6326
6345
  const statusBadge = getStatusBadge2(choice.status);
6327
- return /* @__PURE__ */ (0, import_jsx_runtime32.jsxs)(
6346
+ return /* @__PURE__ */ (0, import_jsx_runtime35.jsxs)(
6328
6347
  "div",
6329
6348
  {
6330
6349
  className: cn(
@@ -6333,9 +6352,9 @@ var MultipleChoiceList = ({
6333
6352
  choice.disabled ? "opacity-50 cursor-not-allowed" : ""
6334
6353
  ),
6335
6354
  children: [
6336
- /* @__PURE__ */ (0, import_jsx_runtime32.jsxs)("div", { className: "flex items-center gap-2 flex-1", children: [
6355
+ /* @__PURE__ */ (0, import_jsx_runtime35.jsxs)("div", { className: "flex items-center gap-2 flex-1", children: [
6337
6356
  renderVisualCheckbox(isSelected, choice.disabled || disabled),
6338
- /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(
6357
+ /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(
6339
6358
  "span",
6340
6359
  {
6341
6360
  className: cn(
@@ -6347,14 +6366,14 @@ var MultipleChoiceList = ({
6347
6366
  }
6348
6367
  )
6349
6368
  ] }),
6350
- statusBadge && /* @__PURE__ */ (0, import_jsx_runtime32.jsx)("div", { className: "flex-shrink-0", children: statusBadge })
6369
+ statusBadge && /* @__PURE__ */ (0, import_jsx_runtime35.jsx)("div", { className: "flex-shrink-0", children: statusBadge })
6351
6370
  ]
6352
6371
  },
6353
6372
  `readonly-${choice.value}-${i}`
6354
6373
  );
6355
6374
  }) });
6356
6375
  }
6357
- return /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(
6376
+ return /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(
6358
6377
  "div",
6359
6378
  {
6360
6379
  className: cn(
@@ -6362,7 +6381,7 @@ var MultipleChoiceList = ({
6362
6381
  disabled ? "opacity-50 cursor-not-allowed" : "",
6363
6382
  className
6364
6383
  ),
6365
- children: /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(
6384
+ children: /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(
6366
6385
  CheckboxList_default,
6367
6386
  {
6368
6387
  name,
@@ -6372,12 +6391,12 @@ var MultipleChoiceList = ({
6372
6391
  onHandleSelectedValues?.(v);
6373
6392
  },
6374
6393
  disabled,
6375
- children: choices.map((choice, i) => /* @__PURE__ */ (0, import_jsx_runtime32.jsxs)(
6394
+ children: choices.map((choice, i) => /* @__PURE__ */ (0, import_jsx_runtime35.jsxs)(
6376
6395
  "div",
6377
6396
  {
6378
6397
  className: "flex flex-row gap-2 items-center",
6379
6398
  children: [
6380
- /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(
6399
+ /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(
6381
6400
  CheckboxListItem,
6382
6401
  {
6383
6402
  value: choice.value,
@@ -6385,7 +6404,7 @@ var MultipleChoiceList = ({
6385
6404
  disabled: choice.disabled || disabled
6386
6405
  }
6387
6406
  ),
6388
- /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(
6407
+ /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(
6389
6408
  "label",
6390
6409
  {
6391
6410
  htmlFor: `interactive-${choice.value}-${i}`,
@@ -6408,11 +6427,11 @@ var MultipleChoiceList = ({
6408
6427
  };
6409
6428
 
6410
6429
  // src/assets/icons/subjects/BookOpenText.tsx
6411
- var import_jsx_runtime33 = require("react/jsx-runtime");
6430
+ var import_jsx_runtime36 = require("react/jsx-runtime");
6412
6431
  var BookOpenText = ({
6413
6432
  size,
6414
6433
  color
6415
- }) => /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(
6434
+ }) => /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(
6416
6435
  "svg",
6417
6436
  {
6418
6437
  width: size,
@@ -6420,7 +6439,7 @@ var BookOpenText = ({
6420
6439
  viewBox: "0 0 32 32",
6421
6440
  fill: "none",
6422
6441
  xmlns: "http://www.w3.org/2000/svg",
6423
- children: /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(
6442
+ children: /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(
6424
6443
  "path",
6425
6444
  {
6426
6445
  d: "M29 6H20C19.2238 6 18.4582 6.18073 17.7639 6.52786C17.0697 6.875 16.4657 7.37902 16 8C15.5343 7.37902 14.9303 6.875 14.2361 6.52786C13.5418 6.18073 12.7762 6 12 6H3C2.73478 6 2.48043 6.10536 2.29289 6.29289C2.10536 6.48043 2 6.73478 2 7V25C2 25.2652 2.10536 25.5196 2.29289 25.7071C2.48043 25.8946 2.73478 26 3 26H12C12.7956 26 13.5587 26.3161 14.1213 26.8787C14.6839 27.4413 15 28.2044 15 29C15 29.2652 15.1054 29.5196 15.2929 29.7071C15.4804 29.8946 15.7348 30 16 30C16.2652 30 16.5196 29.8946 16.7071 29.7071C16.8946 29.5196 17 29.2652 17 29C17 28.2044 17.3161 27.4413 17.8787 26.8787C18.4413 26.3161 19.2044 26 20 26H29C29.2652 26 29.5196 25.8946 29.7071 25.7071C29.8946 25.5196 30 25.2652 30 25V7C30 6.73478 29.8946 6.48043 29.7071 6.29289C29.5196 6.10536 29.2652 6 29 6ZM12 24H4V8H12C12.7956 8 13.5587 8.31607 14.1213 8.87868C14.6839 9.44129 15 10.2044 15 11V25C14.1353 24.3493 13.0821 23.9983 12 24ZM28 24H20C18.9179 23.9983 17.8647 24.3493 17 25V11C17 10.2044 17.3161 9.44129 17.8787 8.87868C18.4413 8.31607 19.2044 8 20 8H28V24ZM20 11H25C25.2652 11 25.5196 11.1054 25.7071 11.2929C25.8946 11.4804 26 11.7348 26 12C26 12.2652 25.8946 12.5196 25.7071 12.7071C25.5196 12.8946 25.2652 13 25 13H20C19.7348 13 19.4804 12.8946 19.2929 12.7071C19.1054 12.5196 19 12.2652 19 12C19 11.7348 19.1054 11.4804 19.2929 11.2929C19.4804 11.1054 19.7348 11 20 11ZM26 16C26 16.2652 25.8946 16.5196 25.7071 16.7071C25.5196 16.8946 25.2652 17 25 17H20C19.7348 17 19.4804 16.8946 19.2929 16.7071C19.1054 16.5196 19 16.2652 19 16C19 15.7348 19.1054 15.4804 19.2929 15.2929C19.4804 15.1054 19.7348 15 20 15H25C25.2652 15 25.5196 15.1054 25.7071 15.2929C25.8946 15.4804 26 15.7348 26 16ZM26 20C26 20.2652 25.8946 20.5196 25.7071 20.7071C25.5196 20.8946 25.2652 21 25 21H20C19.7348 21 19.4804 20.8946 19.2929 20.7071C19.1054 20.5196 19 20.2652 19 20C19 19.7348 19.1054 19.4804 19.2929 19.2929C19.4804 19.1054 19.7348 19 20 19H25C25.2652 19 25.5196 19.1054 25.7071 19.2929C25.8946 19.4804 26 19.7348 26 20Z",
@@ -6430,114 +6449,6 @@ var BookOpenText = ({
6430
6449
  }
6431
6450
  );
6432
6451
 
6433
- // src/assets/icons/subjects/ChatEN.tsx
6434
- var import_jsx_runtime34 = require("react/jsx-runtime");
6435
- var ChatEN2 = ({ size, color }) => /* @__PURE__ */ (0, import_jsx_runtime34.jsxs)(
6436
- "svg",
6437
- {
6438
- width: size,
6439
- height: size,
6440
- viewBox: "0 0 32 32",
6441
- fill: "none",
6442
- xmlns: "http://www.w3.org/2000/svg",
6443
- children: [
6444
- /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(
6445
- "path",
6446
- {
6447
- d: "M27 6H5.00004C4.4696 6 3.9609 6.21071 3.58582 6.58579C3.21075 6.96086 3.00004 7.46957 3.00004 8V28C2.99773 28.3814 3.10562 28.7553 3.31074 29.0768C3.51585 29.3984 3.80947 29.6538 4.15629 29.8125C4.42057 29.9356 4.7085 29.9995 5.00004 30C5.46954 29.9989 5.92347 29.8315 6.28129 29.5275L6.29254 29.5187L10.375 26H27C27.5305 26 28.0392 25.7893 28.4142 25.4142C28.7893 25.0391 29 24.5304 29 24V8C29 7.46957 28.7893 6.96086 28.4142 6.58579C28.0392 6.21071 27.5305 6 27 6ZM27 24H10C9.75992 24.0001 9.52787 24.0866 9.34629 24.2437L5.00004 28V8H27V24Z",
6448
- fill: color
6449
- }
6450
- ),
6451
- /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(
6452
- "path",
6453
- {
6454
- d: "M22.5488 12V20.5312H21.0781L17.252 14.4199V20.5312H15.7812V12H17.252L21.0898 18.123V12H22.5488Z",
6455
- fill: color
6456
- }
6457
- ),
6458
- /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(
6459
- "path",
6460
- {
6461
- d: "M14.584 19.3652V20.5312H10.0547V19.3652H14.584ZM10.4707 12V20.5312H9V12H10.4707ZM13.9922 15.5625V16.7109H10.0547V15.5625H13.9922ZM14.5547 12V13.1719H10.0547V12H14.5547Z",
6462
- fill: color
6463
- }
6464
- )
6465
- ]
6466
- }
6467
- );
6468
-
6469
- // src/assets/icons/subjects/ChatES.tsx
6470
- var import_jsx_runtime35 = require("react/jsx-runtime");
6471
- var ChatES2 = ({ size, color }) => /* @__PURE__ */ (0, import_jsx_runtime35.jsxs)(
6472
- "svg",
6473
- {
6474
- width: size,
6475
- height: size,
6476
- viewBox: "0 0 32 32",
6477
- fill: "none",
6478
- xmlns: "http://www.w3.org/2000/svg",
6479
- children: [
6480
- /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(
6481
- "path",
6482
- {
6483
- d: "M27 6H5.00004C4.4696 6 3.9609 6.21071 3.58582 6.58579C3.21075 6.96086 3.00004 7.46957 3.00004 8V28C2.99773 28.3814 3.10562 28.7553 3.31074 29.0768C3.51585 29.3984 3.80947 29.6538 4.15629 29.8125C4.42057 29.9356 4.7085 29.9995 5.00004 30C5.46954 29.9989 5.92347 29.8315 6.28129 29.5275L6.29254 29.5187L10.375 26H27C27.5305 26 28.0392 25.7893 28.4142 25.4142C28.7893 25.0391 29 24.5304 29 24V8C29 7.46957 28.7893 6.96086 28.4142 6.58579C28.0392 6.21071 27.5305 6 27 6ZM27 24H10C9.75992 24.0001 9.52787 24.0866 9.34629 24.2437L5.00004 28V8H27V24Z",
6484
- fill: color
6485
- }
6486
- ),
6487
- /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(
6488
- "path",
6489
- {
6490
- d: "M21.1426 17.8027C21.1426 17.627 21.1152 17.4707 21.0605 17.334C21.0098 17.1973 20.918 17.0723 20.7852 16.959C20.6523 16.8457 20.4648 16.7363 20.2227 16.6309C19.9844 16.5215 19.6797 16.4102 19.3086 16.2969C18.9023 16.1719 18.5273 16.0332 18.1836 15.8809C17.8438 15.7246 17.5469 15.5449 17.293 15.3418C17.0391 15.1348 16.8418 14.8984 16.7012 14.6328C16.5605 14.3633 16.4902 14.0527 16.4902 13.7012C16.4902 13.3535 16.5625 13.0371 16.707 12.752C16.8555 12.4668 17.0645 12.2207 17.334 12.0137C17.6074 11.8027 17.9297 11.6406 18.3008 11.5273C18.6719 11.4102 19.082 11.3516 19.5312 11.3516C20.1641 11.3516 20.709 11.4688 21.166 11.7031C21.627 11.9375 21.9805 12.252 22.2266 12.6465C22.4766 13.041 22.6016 13.4766 22.6016 13.9531H21.1426C21.1426 13.6719 21.082 13.4238 20.9609 13.209C20.8438 12.9902 20.6641 12.8184 20.4219 12.6934C20.1836 12.5684 19.8809 12.5059 19.5137 12.5059C19.166 12.5059 18.877 12.5586 18.6465 12.6641C18.416 12.7695 18.2441 12.9121 18.1309 13.0918C18.0176 13.2715 17.9609 13.4746 17.9609 13.7012C17.9609 13.8613 17.998 14.0078 18.0723 14.1406C18.1465 14.2695 18.2598 14.3906 18.4121 14.5039C18.5645 14.6133 18.7559 14.7168 18.9863 14.8145C19.2168 14.9121 19.4883 15.0059 19.8008 15.0957C20.2734 15.2363 20.6855 15.3926 21.0371 15.5645C21.3887 15.7324 21.6816 15.9238 21.916 16.1387C22.1504 16.3535 22.3262 16.5977 22.4434 16.8711C22.5605 17.1406 22.6191 17.4473 22.6191 17.791C22.6191 18.1504 22.5469 18.4746 22.4023 18.7637C22.2578 19.0488 22.0508 19.293 21.7812 19.4961C21.5156 19.6953 21.1953 19.8496 20.8203 19.959C20.4492 20.0645 20.0352 20.1172 19.5781 20.1172C19.168 20.1172 18.7637 20.0625 18.3652 19.9531C17.9707 19.8438 17.6113 19.6777 17.2871 19.4551C16.9629 19.2285 16.7051 18.9473 16.5137 18.6113C16.3223 18.2715 16.2266 17.875 16.2266 17.4219H17.6973C17.6973 17.6992 17.7441 17.9355 17.8379 18.1309C17.9355 18.3262 18.0703 18.4863 18.2422 18.6113C18.4141 18.7324 18.6133 18.8223 18.8398 18.8809C19.0703 18.9395 19.3164 18.9688 19.5781 18.9688C19.9219 18.9688 20.209 18.9199 20.4395 18.8223C20.6738 18.7246 20.8496 18.5879 20.9668 18.4121C21.084 18.2363 21.1426 18.0332 21.1426 17.8027Z",
6491
- fill: color
6492
- }
6493
- ),
6494
- /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(
6495
- "path",
6496
- {
6497
- d: "M15.4512 18.834V20H10.9219V18.834H15.4512ZM11.3379 11.4688V20H9.86719V11.4688H11.3379ZM14.8594 15.0312V16.1797H10.9219V15.0312H14.8594ZM15.4219 11.4688V12.6406H10.9219V11.4688H15.4219Z",
6498
- fill: color
6499
- }
6500
- )
6501
- ]
6502
- }
6503
- );
6504
-
6505
- // src/assets/icons/subjects/ChatPT.tsx
6506
- var import_jsx_runtime36 = require("react/jsx-runtime");
6507
- var ChatPT2 = ({ size, color }) => /* @__PURE__ */ (0, import_jsx_runtime36.jsxs)(
6508
- "svg",
6509
- {
6510
- width: size,
6511
- height: size,
6512
- viewBox: "0 0 32 32",
6513
- fill: "none",
6514
- xmlns: "http://www.w3.org/2000/svg",
6515
- children: [
6516
- /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(
6517
- "path",
6518
- {
6519
- d: "M27 6H5.00004C4.4696 6 3.9609 6.21071 3.58582 6.58579C3.21075 6.96086 3.00004 7.46957 3.00004 8V28C2.99773 28.3814 3.10562 28.7553 3.31074 29.0768C3.51585 29.3984 3.80947 29.6538 4.15629 29.8125C4.42057 29.9356 4.7085 29.9995 5.00004 30C5.46954 29.9989 5.92347 29.8315 6.28129 29.5275L6.29254 29.5187L10.375 26H27C27.5305 26 28.0392 25.7893 28.4142 25.4142C28.7893 25.0391 29 24.5304 29 24V8C29 7.46957 28.7893 6.96086 28.4142 6.58579C28.0392 6.21071 27.5305 6 27 6ZM27 24H10C9.75992 24.0001 9.52787 24.0866 9.34629 24.2437L5.00004 28V8H27V24Z",
6520
- fill: color
6521
- }
6522
- ),
6523
- /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(
6524
- "path",
6525
- {
6526
- d: "M21.1758 12V20.5312H19.7168V12H21.1758ZM23.8535 12V13.1719H17.0625V12H23.8535Z",
6527
- fill: color
6528
- }
6529
- ),
6530
- /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(
6531
- "path",
6532
- {
6533
- d: "M13.2402 17.3496H11.0195V16.1836H13.2402C13.627 16.1836 13.9395 16.1211 14.1777 15.9961C14.416 15.8711 14.5898 15.6992 14.6992 15.4805C14.8125 15.2578 14.8691 15.0039 14.8691 14.7188C14.8691 14.4492 14.8125 14.1973 14.6992 13.9629C14.5898 13.7246 14.416 13.5332 14.1777 13.3887C13.9395 13.2441 13.627 13.1719 13.2402 13.1719H11.4707V20.5312H10V12H13.2402C13.9004 12 14.4609 12.1172 14.9219 12.3516C15.3867 12.582 15.7402 12.9023 15.9824 13.3125C16.2246 13.7188 16.3457 14.1836 16.3457 14.707C16.3457 15.2578 16.2246 15.7305 15.9824 16.125C15.7402 16.5195 15.3867 16.8223 14.9219 17.0332C14.4609 17.2441 13.9004 17.3496 13.2402 17.3496Z",
6534
- fill: color
6535
- }
6536
- )
6537
- ]
6538
- }
6539
- );
6540
-
6541
6452
  // src/assets/icons/subjects/HeadCircuit.tsx
6542
6453
  var import_jsx_runtime37 = require("react/jsx-runtime");
6543
6454
  var HeadCircuit = ({
@@ -6635,7 +6546,7 @@ var SubjectInfo = {
6635
6546
  name: "Biologia" /* BIOLOGIA */
6636
6547
  },
6637
6548
  ["Portugu\xEAs" /* PORTUGUES */]: {
6638
- icon: /* @__PURE__ */ (0, import_jsx_runtime39.jsx)(ChatPT2, { size: 17, color: "currentColor" }),
6549
+ icon: /* @__PURE__ */ (0, import_jsx_runtime39.jsx)(ChatPT, { size: 17, color: "currentColor" }),
6639
6550
  colorClass: "bg-subject-6",
6640
6551
  name: "Portugu\xEAs" /* PORTUGUES */
6641
6552
  },
@@ -6660,7 +6571,7 @@ var SubjectInfo = {
6660
6571
  name: "Filosofia" /* FILOSOFIA */
6661
6572
  },
6662
6573
  ["Espanhol" /* ESPANHOL */]: {
6663
- icon: /* @__PURE__ */ (0, import_jsx_runtime39.jsx)(ChatES2, { size: 17, color: "currentColor" }),
6574
+ icon: /* @__PURE__ */ (0, import_jsx_runtime39.jsx)(ChatES, { size: 17, color: "currentColor" }),
6664
6575
  colorClass: "bg-subject-11",
6665
6576
  name: "Espanhol" /* ESPANHOL */
6666
6577
  },
@@ -6675,7 +6586,7 @@ var SubjectInfo = {
6675
6586
  name: "Sociologia" /* SOCIOLOGIA */
6676
6587
  },
6677
6588
  ["Ingl\xEAs" /* INGLES */]: {
6678
- icon: /* @__PURE__ */ (0, import_jsx_runtime39.jsx)(ChatEN2, { size: 17, color: "currentColor" }),
6589
+ icon: /* @__PURE__ */ (0, import_jsx_runtime39.jsx)(ChatEN, { size: 17, color: "currentColor" }),
6679
6590
  colorClass: "bg-subject-14",
6680
6591
  name: "Ingl\xEAs" /* INGLES */
6681
6592
  },
@@ -6690,8 +6601,12 @@ var SubjectInfo = {
6690
6601
  name: "Trilhas" /* TRILHAS */
6691
6602
  }
6692
6603
  };
6693
- var getSubjectData = (subject) => {
6694
- return SubjectInfo[subject];
6604
+ var getSubjectInfo = (subject) => {
6605
+ return SubjectInfo[subject] || {
6606
+ icon: /* @__PURE__ */ (0, import_jsx_runtime39.jsx)(import_phosphor_react17.Book, { size: 17, color: "currentColor" }),
6607
+ colorClass: "bg-subject-16",
6608
+ name: subject
6609
+ };
6695
6610
  };
6696
6611
  var getSubjectIcon = (subject) => {
6697
6612
  return SubjectInfo[subject].icon;
@@ -6704,7 +6619,7 @@ var getSubjectName = (subject) => {
6704
6619
  };
6705
6620
 
6706
6621
  // src/hooks/useMobile.ts
6707
- var import_react21 = require("react");
6622
+ var import_react22 = require("react");
6708
6623
  var MOBILE_WIDTH = 500;
6709
6624
  var TABLET_WIDTH = 931;
6710
6625
  var DEFAULT_WIDTH = 1200;
@@ -6719,9 +6634,9 @@ var getDeviceType = () => {
6719
6634
  return width < TABLET_WIDTH ? "responsive" : "desktop";
6720
6635
  };
6721
6636
  var useMobile = () => {
6722
- const [isMobile, setIsMobile] = (0, import_react21.useState)(false);
6723
- const [isTablet, setIsTablet] = (0, import_react21.useState)(false);
6724
- (0, import_react21.useEffect)(() => {
6637
+ const [isMobile, setIsMobile] = (0, import_react22.useState)(false);
6638
+ const [isTablet, setIsTablet] = (0, import_react22.useState)(false);
6639
+ (0, import_react22.useEffect)(() => {
6725
6640
  const checkScreenSize = () => {
6726
6641
  const width = getWindowWidth();
6727
6642
  setIsMobile(width < MOBILE_WIDTH);
@@ -6762,7 +6677,7 @@ var useMobile = () => {
6762
6677
 
6763
6678
  // src/components/Select/Select.tsx
6764
6679
  var import_zustand5 = require("zustand");
6765
- var import_react22 = require("react");
6680
+ var import_react23 = require("react");
6766
6681
  var import_phosphor_react18 = require("phosphor-react");
6767
6682
  var import_jsx_runtime40 = require("react/jsx-runtime");
6768
6683
  var VARIANT_CLASSES4 = {
@@ -6822,13 +6737,13 @@ function getLabelAsNode(children) {
6822
6737
  if (typeof children === "string" || typeof children === "number") {
6823
6738
  return children;
6824
6739
  }
6825
- const flattened = import_react22.Children.toArray(children);
6740
+ const flattened = import_react23.Children.toArray(children);
6826
6741
  if (flattened.length === 1) return flattened[0];
6827
6742
  return /* @__PURE__ */ (0, import_jsx_runtime40.jsx)(import_jsx_runtime40.Fragment, { children: flattened });
6828
6743
  }
6829
6744
  var injectStore4 = (children, store, size, selectId) => {
6830
- return import_react22.Children.map(children, (child) => {
6831
- if ((0, import_react22.isValidElement)(child)) {
6745
+ return import_react23.Children.map(children, (child) => {
6746
+ if ((0, import_react23.isValidElement)(child)) {
6832
6747
  const typedChild = child;
6833
6748
  const newProps = {
6834
6749
  store
@@ -6845,7 +6760,7 @@ var injectStore4 = (children, store, size, selectId) => {
6845
6760
  selectId
6846
6761
  );
6847
6762
  }
6848
- return (0, import_react22.cloneElement)(typedChild, newProps);
6763
+ return (0, import_react23.cloneElement)(typedChild, newProps);
6849
6764
  }
6850
6765
  return child;
6851
6766
  });
@@ -6862,18 +6777,18 @@ var Select = ({
6862
6777
  errorMessage,
6863
6778
  id
6864
6779
  }) => {
6865
- const storeRef = (0, import_react22.useRef)(null);
6780
+ const storeRef = (0, import_react23.useRef)(null);
6866
6781
  storeRef.current ??= createSelectStore(onValueChange);
6867
6782
  const store = storeRef.current;
6868
- const selectRef = (0, import_react22.useRef)(null);
6783
+ const selectRef = (0, import_react23.useRef)(null);
6869
6784
  const { open, setOpen, setValue, selectedLabel } = (0, import_zustand5.useStore)(store, (s) => s);
6870
- const generatedId = (0, import_react22.useId)();
6785
+ const generatedId = (0, import_react23.useId)();
6871
6786
  const selectId = id ?? `select-${generatedId}`;
6872
6787
  const findLabelForValue = (children2, targetValue) => {
6873
6788
  let found = null;
6874
6789
  const search = (nodes) => {
6875
- import_react22.Children.forEach(nodes, (child) => {
6876
- if (!(0, import_react22.isValidElement)(child)) return;
6790
+ import_react23.Children.forEach(nodes, (child) => {
6791
+ if (!(0, import_react23.isValidElement)(child)) return;
6877
6792
  const typedChild = child;
6878
6793
  if (typedChild.type === SelectItem && typedChild.props.value === targetValue) {
6879
6794
  if (typeof typedChild.props.children === "string")
@@ -6886,13 +6801,13 @@ var Select = ({
6886
6801
  search(children2);
6887
6802
  return found;
6888
6803
  };
6889
- (0, import_react22.useEffect)(() => {
6804
+ (0, import_react23.useEffect)(() => {
6890
6805
  if (!selectedLabel && defaultValue) {
6891
6806
  const label2 = findLabelForValue(children, defaultValue);
6892
6807
  if (label2) store.setState({ selectedLabel: label2 });
6893
6808
  }
6894
6809
  }, [children, defaultValue, selectedLabel]);
6895
- (0, import_react22.useEffect)(() => {
6810
+ (0, import_react23.useEffect)(() => {
6896
6811
  const handleClickOutside = (event) => {
6897
6812
  if (selectRef.current && !selectRef.current.contains(event.target)) {
6898
6813
  setOpen(false);
@@ -6927,7 +6842,7 @@ var Select = ({
6927
6842
  document.removeEventListener("keydown", handleArrowKeys);
6928
6843
  };
6929
6844
  }, [open]);
6930
- (0, import_react22.useEffect)(() => {
6845
+ (0, import_react23.useEffect)(() => {
6931
6846
  if (propValue) {
6932
6847
  setValue(propValue);
6933
6848
  const label2 = findLabelForValue(children, propValue);
@@ -6964,7 +6879,7 @@ var SelectValue = ({
6964
6879
  const value = (0, import_zustand5.useStore)(store, (s) => s.value);
6965
6880
  return /* @__PURE__ */ (0, import_jsx_runtime40.jsx)("span", { className: "text-inherit flex gap-2 items-center", children: selectedLabel || placeholder || value });
6966
6881
  };
6967
- var SelectTrigger = (0, import_react22.forwardRef)(
6882
+ var SelectTrigger = (0, import_react23.forwardRef)(
6968
6883
  ({
6969
6884
  className,
6970
6885
  invalid = false,
@@ -7018,7 +6933,7 @@ var SelectTrigger = (0, import_react22.forwardRef)(
7018
6933
  }
7019
6934
  );
7020
6935
  SelectTrigger.displayName = "SelectTrigger";
7021
- var SelectContent = (0, import_react22.forwardRef)(
6936
+ var SelectContent = (0, import_react23.forwardRef)(
7022
6937
  ({
7023
6938
  children,
7024
6939
  className,
@@ -7048,7 +6963,7 @@ var SelectContent = (0, import_react22.forwardRef)(
7048
6963
  }
7049
6964
  );
7050
6965
  SelectContent.displayName = "SelectContent";
7051
- var SelectItem = (0, import_react22.forwardRef)(
6966
+ var SelectItem = (0, import_react23.forwardRef)(
7052
6967
  ({
7053
6968
  className,
7054
6969
  children,
@@ -7107,7 +7022,7 @@ var Select_default = Select;
7107
7022
 
7108
7023
  // src/components/Menu/Menu.tsx
7109
7024
  var import_zustand6 = require("zustand");
7110
- var import_react23 = require("react");
7025
+ var import_react24 = require("react");
7111
7026
  var import_phosphor_react19 = require("phosphor-react");
7112
7027
  var import_jsx_runtime41 = require("react/jsx-runtime");
7113
7028
  var createMenuStore = (onValueChange) => (0, import_zustand6.create)((set) => ({
@@ -7128,7 +7043,7 @@ var VARIANT_CLASSES5 = {
7128
7043
  "menu-overflow": "",
7129
7044
  breadcrumb: "bg-transparent shadow-none !px-0"
7130
7045
  };
7131
- var Menu = (0, import_react23.forwardRef)(
7046
+ var Menu = (0, import_react24.forwardRef)(
7132
7047
  ({
7133
7048
  className,
7134
7049
  children,
@@ -7138,11 +7053,11 @@ var Menu = (0, import_react23.forwardRef)(
7138
7053
  onValueChange,
7139
7054
  ...props
7140
7055
  }, ref) => {
7141
- const storeRef = (0, import_react23.useRef)(null);
7056
+ const storeRef = (0, import_react24.useRef)(null);
7142
7057
  storeRef.current ??= createMenuStore(onValueChange);
7143
7058
  const store = storeRef.current;
7144
7059
  const { setValue } = (0, import_zustand6.useStore)(store, (s) => s);
7145
- (0, import_react23.useEffect)(() => {
7060
+ (0, import_react24.useEffect)(() => {
7146
7061
  setValue(propValue ?? defaultValue);
7147
7062
  }, [defaultValue, propValue, setValue]);
7148
7063
  const baseClasses = variant === "menu-overflow" ? "w-fit py-2 flex flex-row items-center justify-center" : "w-full py-2 flex flex-row items-center justify-center";
@@ -7163,7 +7078,7 @@ var Menu = (0, import_react23.forwardRef)(
7163
7078
  }
7164
7079
  );
7165
7080
  Menu.displayName = "Menu";
7166
- var MenuContent = (0, import_react23.forwardRef)(
7081
+ var MenuContent = (0, import_react24.forwardRef)(
7167
7082
  ({ className, children, variant = "menu", ...props }, ref) => {
7168
7083
  const baseClasses = "w-full flex flex-row items-center gap-2";
7169
7084
  const variantClasses = variant === "menu2" || variant === "menu-overflow" ? "overflow-x-auto scroll-smooth" : "";
@@ -7185,7 +7100,7 @@ var MenuContent = (0, import_react23.forwardRef)(
7185
7100
  }
7186
7101
  );
7187
7102
  MenuContent.displayName = "MenuContent";
7188
- var MenuItem = (0, import_react23.forwardRef)(
7103
+ var MenuItem = (0, import_react24.forwardRef)(
7189
7104
  ({
7190
7105
  className,
7191
7106
  children,
@@ -7343,10 +7258,10 @@ var MenuOverflow = ({
7343
7258
  onValueChange,
7344
7259
  ...props
7345
7260
  }) => {
7346
- const containerRef = (0, import_react23.useRef)(null);
7347
- const [showLeftArrow, setShowLeftArrow] = (0, import_react23.useState)(false);
7348
- const [showRightArrow, setShowRightArrow] = (0, import_react23.useState)(false);
7349
- (0, import_react23.useEffect)(() => {
7261
+ const containerRef = (0, import_react24.useRef)(null);
7262
+ const [showLeftArrow, setShowLeftArrow] = (0, import_react24.useState)(false);
7263
+ const [showRightArrow, setShowRightArrow] = (0, import_react24.useState)(false);
7264
+ (0, import_react24.useEffect)(() => {
7350
7265
  const checkScroll = () => internalCheckScroll(
7351
7266
  containerRef.current,
7352
7267
  setShowLeftArrow,
@@ -7406,11 +7321,11 @@ var MenuOverflow = ({
7406
7321
  }
7407
7322
  );
7408
7323
  };
7409
- var injectStore5 = (children, store) => import_react23.Children.map(children, (child) => {
7410
- if (!(0, import_react23.isValidElement)(child)) return child;
7324
+ var injectStore5 = (children, store) => import_react24.Children.map(children, (child) => {
7325
+ if (!(0, import_react24.isValidElement)(child)) return child;
7411
7326
  const typedChild = child;
7412
7327
  const shouldInject = typedChild.type === MenuItem;
7413
- return (0, import_react23.cloneElement)(typedChild, {
7328
+ return (0, import_react24.cloneElement)(typedChild, {
7414
7329
  ...shouldInject ? { store } : {},
7415
7330
  ...typedChild.props.children ? { children: injectStore5(typedChild.props.children, store) } : {}
7416
7331
  });
@@ -7418,7 +7333,7 @@ var injectStore5 = (children, store) => import_react23.Children.map(children, (c
7418
7333
  var Menu_default = Menu;
7419
7334
 
7420
7335
  // src/components/Skeleton/Skeleton.tsx
7421
- var import_react24 = require("react");
7336
+ var import_react25 = require("react");
7422
7337
  var import_jsx_runtime42 = require("react/jsx-runtime");
7423
7338
  var SKELETON_ANIMATION_CLASSES = {
7424
7339
  pulse: "animate-pulse",
@@ -7436,7 +7351,7 @@ var SPACING_CLASSES = {
7436
7351
  medium: "space-y-2",
7437
7352
  large: "space-y-3"
7438
7353
  };
7439
- var Skeleton = (0, import_react24.forwardRef)(
7354
+ var Skeleton = (0, import_react25.forwardRef)(
7440
7355
  ({
7441
7356
  variant = "text",
7442
7357
  width,
@@ -7485,13 +7400,13 @@ var Skeleton = (0, import_react24.forwardRef)(
7485
7400
  );
7486
7401
  }
7487
7402
  );
7488
- var SkeletonText = (0, import_react24.forwardRef)(
7403
+ var SkeletonText = (0, import_react25.forwardRef)(
7489
7404
  (props, ref) => /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(Skeleton, { ref, variant: "text", ...props })
7490
7405
  );
7491
- var SkeletonCircle = (0, import_react24.forwardRef)((props, ref) => /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(Skeleton, { ref, variant: "circular", ...props }));
7492
- var SkeletonRectangle = (0, import_react24.forwardRef)((props, ref) => /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(Skeleton, { ref, variant: "rectangular", ...props }));
7493
- var SkeletonRounded = (0, import_react24.forwardRef)((props, ref) => /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(Skeleton, { ref, variant: "rounded", ...props }));
7494
- var SkeletonCard = (0, import_react24.forwardRef)(
7406
+ var SkeletonCircle = (0, import_react25.forwardRef)((props, ref) => /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(Skeleton, { ref, variant: "circular", ...props }));
7407
+ var SkeletonRectangle = (0, import_react25.forwardRef)((props, ref) => /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(Skeleton, { ref, variant: "rectangular", ...props }));
7408
+ var SkeletonRounded = (0, import_react25.forwardRef)((props, ref) => /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(Skeleton, { ref, variant: "rounded", ...props }));
7409
+ var SkeletonCard = (0, import_react25.forwardRef)(
7495
7410
  ({
7496
7411
  showAvatar = true,
7497
7412
  showTitle = true,
@@ -7527,7 +7442,7 @@ var SkeletonCard = (0, import_react24.forwardRef)(
7527
7442
  );
7528
7443
  }
7529
7444
  );
7530
- var SkeletonList = (0, import_react24.forwardRef)(
7445
+ var SkeletonList = (0, import_react25.forwardRef)(
7531
7446
  ({
7532
7447
  items = 3,
7533
7448
  showAvatar = true,
@@ -7546,7 +7461,7 @@ var SkeletonList = (0, import_react24.forwardRef)(
7546
7461
  ] }, index)) });
7547
7462
  }
7548
7463
  );
7549
- var SkeletonTable = (0, import_react24.forwardRef)(
7464
+ var SkeletonTable = (0, import_react25.forwardRef)(
7550
7465
  ({ rows = 5, columns = 4, showHeader = true, className = "", ...props }, ref) => {
7551
7466
  return /* @__PURE__ */ (0, import_jsx_runtime42.jsxs)("div", { ref, className: cn("w-full", className), ...props, children: [
7552
7467
  showHeader && /* @__PURE__ */ (0, import_jsx_runtime42.jsx)("div", { className: "flex space-x-2 mb-3", children: Array.from({ length: columns }, (_, index) => /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(
@@ -7671,7 +7586,7 @@ var NotFound = ({
7671
7586
  var NotFound_default = NotFound;
7672
7587
 
7673
7588
  // src/components/VideoPlayer/VideoPlayer.tsx
7674
- var import_react25 = require("react");
7589
+ var import_react26 = require("react");
7675
7590
  var import_react_dom = require("react-dom");
7676
7591
  var import_phosphor_react20 = require("phosphor-react");
7677
7592
  var import_jsx_runtime44 = require("react/jsx-runtime");
@@ -7742,9 +7657,9 @@ var SpeedMenu = ({
7742
7657
  onSpeedChange,
7743
7658
  isFullscreen
7744
7659
  }) => {
7745
- const buttonRef = (0, import_react25.useRef)(null);
7746
- const speedMenuContainerRef = (0, import_react25.useRef)(null);
7747
- const speedMenuRef = (0, import_react25.useRef)(null);
7660
+ const buttonRef = (0, import_react26.useRef)(null);
7661
+ const speedMenuContainerRef = (0, import_react26.useRef)(null);
7662
+ const speedMenuRef = (0, import_react26.useRef)(null);
7748
7663
  const getMenuPosition = () => {
7749
7664
  if (!buttonRef.current) return { top: 0, left: 0 };
7750
7665
  const rect = buttonRef.current.getBoundingClientRect();
@@ -7755,7 +7670,7 @@ var SpeedMenu = ({
7755
7670
  };
7756
7671
  };
7757
7672
  const position = getMenuPosition();
7758
- (0, import_react25.useEffect)(() => {
7673
+ (0, import_react26.useEffect)(() => {
7759
7674
  const handleClickOutside = (event) => {
7760
7675
  const target = event.target;
7761
7676
  const isOutsideContainer = speedMenuContainerRef.current && !speedMenuContainerRef.current.contains(target);
@@ -7829,26 +7744,26 @@ var VideoPlayer = ({
7829
7744
  autoSave = true,
7830
7745
  storageKey = "video-progress"
7831
7746
  }) => {
7832
- const videoRef = (0, import_react25.useRef)(null);
7833
- const [isPlaying, setIsPlaying] = (0, import_react25.useState)(false);
7834
- const [currentTime, setCurrentTime] = (0, import_react25.useState)(0);
7835
- const [duration, setDuration] = (0, import_react25.useState)(0);
7836
- const [isMuted, setIsMuted] = (0, import_react25.useState)(false);
7837
- const [volume, setVolume] = (0, import_react25.useState)(1);
7838
- const [isFullscreen, setIsFullscreen] = (0, import_react25.useState)(false);
7839
- const [showControls, setShowControls] = (0, import_react25.useState)(true);
7840
- const [hasCompleted, setHasCompleted] = (0, import_react25.useState)(false);
7841
- const [showCaptions, setShowCaptions] = (0, import_react25.useState)(false);
7842
- (0, import_react25.useEffect)(() => {
7747
+ const videoRef = (0, import_react26.useRef)(null);
7748
+ const [isPlaying, setIsPlaying] = (0, import_react26.useState)(false);
7749
+ const [currentTime, setCurrentTime] = (0, import_react26.useState)(0);
7750
+ const [duration, setDuration] = (0, import_react26.useState)(0);
7751
+ const [isMuted, setIsMuted] = (0, import_react26.useState)(false);
7752
+ const [volume, setVolume] = (0, import_react26.useState)(1);
7753
+ const [isFullscreen, setIsFullscreen] = (0, import_react26.useState)(false);
7754
+ const [showControls, setShowControls] = (0, import_react26.useState)(true);
7755
+ const [hasCompleted, setHasCompleted] = (0, import_react26.useState)(false);
7756
+ const [showCaptions, setShowCaptions] = (0, import_react26.useState)(false);
7757
+ (0, import_react26.useEffect)(() => {
7843
7758
  setHasCompleted(false);
7844
7759
  }, [src]);
7845
- const [playbackRate, setPlaybackRate] = (0, import_react25.useState)(1);
7846
- const [showSpeedMenu, setShowSpeedMenu] = (0, import_react25.useState)(false);
7847
- const lastSaveTimeRef = (0, import_react25.useRef)(0);
7848
- const trackRef = (0, import_react25.useRef)(null);
7849
- const controlsTimeoutRef = (0, import_react25.useRef)(null);
7850
- const lastMousePositionRef = (0, import_react25.useRef)({ x: 0, y: 0 });
7851
- const isUserInteracting = (0, import_react25.useCallback)(() => {
7760
+ const [playbackRate, setPlaybackRate] = (0, import_react26.useState)(1);
7761
+ const [showSpeedMenu, setShowSpeedMenu] = (0, import_react26.useState)(false);
7762
+ const lastSaveTimeRef = (0, import_react26.useRef)(0);
7763
+ const trackRef = (0, import_react26.useRef)(null);
7764
+ const controlsTimeoutRef = (0, import_react26.useRef)(null);
7765
+ const lastMousePositionRef = (0, import_react26.useRef)({ x: 0, y: 0 });
7766
+ const isUserInteracting = (0, import_react26.useCallback)(() => {
7852
7767
  if (showSpeedMenu) {
7853
7768
  return true;
7854
7769
  }
@@ -7865,13 +7780,13 @@ var VideoPlayer = ({
7865
7780
  }
7866
7781
  return false;
7867
7782
  }, [showSpeedMenu]);
7868
- const clearControlsTimeout = (0, import_react25.useCallback)(() => {
7783
+ const clearControlsTimeout = (0, import_react26.useCallback)(() => {
7869
7784
  if (controlsTimeoutRef.current) {
7870
7785
  clearTimeout(controlsTimeoutRef.current);
7871
7786
  controlsTimeoutRef.current = null;
7872
7787
  }
7873
7788
  }, []);
7874
- const showControlsWithTimer = (0, import_react25.useCallback)(() => {
7789
+ const showControlsWithTimer = (0, import_react26.useCallback)(() => {
7875
7790
  setShowControls(true);
7876
7791
  clearControlsTimeout();
7877
7792
  if (isFullscreen) {
@@ -7886,7 +7801,7 @@ var VideoPlayer = ({
7886
7801
  }, CONTROLS_HIDE_TIMEOUT);
7887
7802
  }
7888
7803
  }, [isFullscreen, isPlaying, clearControlsTimeout]);
7889
- const handleMouseMove = (0, import_react25.useCallback)(
7804
+ const handleMouseMove = (0, import_react26.useCallback)(
7890
7805
  (event) => {
7891
7806
  const currentX = event.clientX;
7892
7807
  const currentY = event.clientY;
@@ -7899,10 +7814,10 @@ var VideoPlayer = ({
7899
7814
  },
7900
7815
  [showControlsWithTimer]
7901
7816
  );
7902
- const handleMouseEnter = (0, import_react25.useCallback)(() => {
7817
+ const handleMouseEnter = (0, import_react26.useCallback)(() => {
7903
7818
  showControlsWithTimer();
7904
7819
  }, [showControlsWithTimer]);
7905
- const handleMouseLeave = (0, import_react25.useCallback)(() => {
7820
+ const handleMouseLeave = (0, import_react26.useCallback)(() => {
7906
7821
  const userInteracting = isUserInteracting();
7907
7822
  clearControlsTimeout();
7908
7823
  if (!isFullscreen && !userInteracting) {
@@ -7911,13 +7826,13 @@ var VideoPlayer = ({
7911
7826
  }, LEAVE_HIDE_TIMEOUT);
7912
7827
  }
7913
7828
  }, [isFullscreen, clearControlsTimeout, isUserInteracting]);
7914
- (0, import_react25.useEffect)(() => {
7829
+ (0, import_react26.useEffect)(() => {
7915
7830
  if (videoRef.current) {
7916
7831
  videoRef.current.volume = volume;
7917
7832
  videoRef.current.muted = isMuted;
7918
7833
  }
7919
7834
  }, [volume, isMuted]);
7920
- (0, import_react25.useEffect)(() => {
7835
+ (0, import_react26.useEffect)(() => {
7921
7836
  const video = videoRef.current;
7922
7837
  if (!video) return;
7923
7838
  const onPlay = () => setIsPlaying(true);
@@ -7932,7 +7847,7 @@ var VideoPlayer = ({
7932
7847
  video.removeEventListener("ended", onEnded);
7933
7848
  };
7934
7849
  }, []);
7935
- (0, import_react25.useEffect)(() => {
7850
+ (0, import_react26.useEffect)(() => {
7936
7851
  if (isPlaying) {
7937
7852
  showControlsWithTimer();
7938
7853
  } else {
@@ -7944,7 +7859,7 @@ var VideoPlayer = ({
7944
7859
  }
7945
7860
  }
7946
7861
  }, [isPlaying, isFullscreen, showControlsWithTimer, clearControlsTimeout]);
7947
- (0, import_react25.useEffect)(() => {
7862
+ (0, import_react26.useEffect)(() => {
7948
7863
  const handleFullscreenChange = () => {
7949
7864
  const isCurrentlyFullscreen = !!document.fullscreenElement;
7950
7865
  setIsFullscreen(isCurrentlyFullscreen);
@@ -7957,7 +7872,7 @@ var VideoPlayer = ({
7957
7872
  document.removeEventListener("fullscreenchange", handleFullscreenChange);
7958
7873
  };
7959
7874
  }, [showControlsWithTimer]);
7960
- (0, import_react25.useEffect)(() => {
7875
+ (0, import_react26.useEffect)(() => {
7961
7876
  const init = () => {
7962
7877
  if (!isFullscreen) {
7963
7878
  showControlsWithTimer();
@@ -7979,7 +7894,7 @@ var VideoPlayer = ({
7979
7894
  };
7980
7895
  }
7981
7896
  }, []);
7982
- const getInitialTime = (0, import_react25.useCallback)(() => {
7897
+ const getInitialTime = (0, import_react26.useCallback)(() => {
7983
7898
  if (!autoSave || !storageKey) {
7984
7899
  return Number.isFinite(initialTime) && initialTime >= 0 ? initialTime : void 0;
7985
7900
  }
@@ -7990,14 +7905,14 @@ var VideoPlayer = ({
7990
7905
  if (hasValidSaved) return saved;
7991
7906
  return void 0;
7992
7907
  }, [autoSave, storageKey, src, initialTime]);
7993
- (0, import_react25.useEffect)(() => {
7908
+ (0, import_react26.useEffect)(() => {
7994
7909
  const start = getInitialTime();
7995
7910
  if (start !== void 0 && videoRef.current) {
7996
7911
  videoRef.current.currentTime = start;
7997
7912
  setCurrentTime(start);
7998
7913
  }
7999
7914
  }, [getInitialTime]);
8000
- const saveProgress = (0, import_react25.useCallback)(
7915
+ const saveProgress = (0, import_react26.useCallback)(
8001
7916
  (time) => {
8002
7917
  if (!autoSave || !storageKey) return;
8003
7918
  const now = Date.now();
@@ -8008,7 +7923,7 @@ var VideoPlayer = ({
8008
7923
  },
8009
7924
  [autoSave, storageKey, src]
8010
7925
  );
8011
- const togglePlayPause = (0, import_react25.useCallback)(async () => {
7926
+ const togglePlayPause = (0, import_react26.useCallback)(async () => {
8012
7927
  const video = videoRef.current;
8013
7928
  if (!video) return;
8014
7929
  if (!video.paused) {
@@ -8020,7 +7935,7 @@ var VideoPlayer = ({
8020
7935
  } catch {
8021
7936
  }
8022
7937
  }, []);
8023
- const handleVolumeChange = (0, import_react25.useCallback)(
7938
+ const handleVolumeChange = (0, import_react26.useCallback)(
8024
7939
  (newVolume) => {
8025
7940
  const video = videoRef.current;
8026
7941
  if (!video) return;
@@ -8039,7 +7954,7 @@ var VideoPlayer = ({
8039
7954
  },
8040
7955
  [isMuted]
8041
7956
  );
8042
- const toggleMute = (0, import_react25.useCallback)(() => {
7957
+ const toggleMute = (0, import_react26.useCallback)(() => {
8043
7958
  const video = videoRef.current;
8044
7959
  if (!video) return;
8045
7960
  if (isMuted) {
@@ -8053,13 +7968,13 @@ var VideoPlayer = ({
8053
7968
  setIsMuted(true);
8054
7969
  }
8055
7970
  }, [isMuted, volume]);
8056
- const handleSeek = (0, import_react25.useCallback)((newTime) => {
7971
+ const handleSeek = (0, import_react26.useCallback)((newTime) => {
8057
7972
  const video = videoRef.current;
8058
7973
  if (video) {
8059
7974
  video.currentTime = newTime;
8060
7975
  }
8061
7976
  }, []);
8062
- const toggleFullscreen = (0, import_react25.useCallback)(() => {
7977
+ const toggleFullscreen = (0, import_react26.useCallback)(() => {
8063
7978
  const container = videoRef.current?.parentElement;
8064
7979
  if (!container) return;
8065
7980
  if (!isFullscreen && container.requestFullscreen) {
@@ -8068,23 +7983,23 @@ var VideoPlayer = ({
8068
7983
  document.exitFullscreen();
8069
7984
  }
8070
7985
  }, [isFullscreen]);
8071
- const handleSpeedChange = (0, import_react25.useCallback)((speed) => {
7986
+ const handleSpeedChange = (0, import_react26.useCallback)((speed) => {
8072
7987
  if (videoRef.current) {
8073
7988
  videoRef.current.playbackRate = speed;
8074
7989
  setPlaybackRate(speed);
8075
7990
  setShowSpeedMenu(false);
8076
7991
  }
8077
7992
  }, []);
8078
- const toggleSpeedMenu = (0, import_react25.useCallback)(() => {
7993
+ const toggleSpeedMenu = (0, import_react26.useCallback)(() => {
8079
7994
  setShowSpeedMenu(!showSpeedMenu);
8080
7995
  }, [showSpeedMenu]);
8081
- const toggleCaptions = (0, import_react25.useCallback)(() => {
7996
+ const toggleCaptions = (0, import_react26.useCallback)(() => {
8082
7997
  if (!trackRef.current?.track || !subtitles) return;
8083
7998
  const newShowCaptions = !showCaptions;
8084
7999
  setShowCaptions(newShowCaptions);
8085
8000
  trackRef.current.track.mode = newShowCaptions && subtitles ? "showing" : "hidden";
8086
8001
  }, [showCaptions, subtitles]);
8087
- const checkVideoCompletion = (0, import_react25.useCallback)(
8002
+ const checkVideoCompletion = (0, import_react26.useCallback)(
8088
8003
  (progressPercent) => {
8089
8004
  if (progressPercent >= 95 && !hasCompleted) {
8090
8005
  setHasCompleted(true);
@@ -8093,7 +8008,7 @@ var VideoPlayer = ({
8093
8008
  },
8094
8009
  [hasCompleted, onVideoComplete]
8095
8010
  );
8096
- const handleTimeUpdate = (0, import_react25.useCallback)(() => {
8011
+ const handleTimeUpdate = (0, import_react26.useCallback)(() => {
8097
8012
  const video = videoRef.current;
8098
8013
  if (!video) return;
8099
8014
  const current = video.currentTime;
@@ -8106,17 +8021,17 @@ var VideoPlayer = ({
8106
8021
  checkVideoCompletion(progressPercent);
8107
8022
  }
8108
8023
  }, [duration, saveProgress, onTimeUpdate, onProgress, checkVideoCompletion]);
8109
- const handleLoadedMetadata = (0, import_react25.useCallback)(() => {
8024
+ const handleLoadedMetadata = (0, import_react26.useCallback)(() => {
8110
8025
  if (videoRef.current) {
8111
8026
  setDuration(videoRef.current.duration);
8112
8027
  }
8113
8028
  }, []);
8114
- (0, import_react25.useEffect)(() => {
8029
+ (0, import_react26.useEffect)(() => {
8115
8030
  if (trackRef.current?.track) {
8116
8031
  trackRef.current.track.mode = showCaptions && subtitles ? "showing" : "hidden";
8117
8032
  }
8118
8033
  }, [subtitles, showCaptions]);
8119
- (0, import_react25.useEffect)(() => {
8034
+ (0, import_react26.useEffect)(() => {
8120
8035
  const handleVisibilityChange = () => {
8121
8036
  if (document.hidden && isPlaying && videoRef.current) {
8122
8037
  videoRef.current.pause();
@@ -8138,13 +8053,13 @@ var VideoPlayer = ({
8138
8053
  };
8139
8054
  }, [isPlaying, clearControlsTimeout]);
8140
8055
  const progressPercentage = duration > 0 ? currentTime / duration * 100 : 0;
8141
- const getTopControlsOpacity = (0, import_react25.useCallback)(() => {
8056
+ const getTopControlsOpacity = (0, import_react26.useCallback)(() => {
8142
8057
  return showControls ? "opacity-100" : "opacity-0";
8143
8058
  }, [showControls]);
8144
- const getBottomControlsOpacity = (0, import_react25.useCallback)(() => {
8059
+ const getBottomControlsOpacity = (0, import_react26.useCallback)(() => {
8145
8060
  return showControls ? "opacity-100" : "opacity-0";
8146
8061
  }, [showControls]);
8147
- const handleVideoKeyDown = (0, import_react25.useCallback)(
8062
+ const handleVideoKeyDown = (0, import_react26.useCallback)(
8148
8063
  (e) => {
8149
8064
  if (e.key) {
8150
8065
  e.stopPropagation();
@@ -8370,7 +8285,7 @@ var VideoPlayer = ({
8370
8285
  var VideoPlayer_default = VideoPlayer;
8371
8286
 
8372
8287
  // src/components/Whiteboard/Whiteboard.tsx
8373
- var import_react26 = require("react");
8288
+ var import_react27 = require("react");
8374
8289
  var import_phosphor_react21 = require("phosphor-react");
8375
8290
  var import_jsx_runtime45 = require("react/jsx-runtime");
8376
8291
  var IMAGE_WIDTH = 225;
@@ -8383,8 +8298,8 @@ var Whiteboard = ({
8383
8298
  imagesPerRow = 2,
8384
8299
  ...rest
8385
8300
  }) => {
8386
- const [imageErrors, setImageErrors] = (0, import_react26.useState)(/* @__PURE__ */ new Set());
8387
- const handleDownload = (0, import_react26.useCallback)(
8301
+ const [imageErrors, setImageErrors] = (0, import_react27.useState)(/* @__PURE__ */ new Set());
8302
+ const handleDownload = (0, import_react27.useCallback)(
8388
8303
  (image) => {
8389
8304
  if (onDownload) {
8390
8305
  onDownload(image);
@@ -8401,7 +8316,7 @@ var Whiteboard = ({
8401
8316
  },
8402
8317
  [onDownload]
8403
8318
  );
8404
- const handleImageError = (0, import_react26.useCallback)((imageId) => {
8319
+ const handleImageError = (0, import_react27.useCallback)((imageId) => {
8405
8320
  setImageErrors((prev) => new Set(prev).add(imageId));
8406
8321
  }, []);
8407
8322
  const gridColsClass = images?.length === 1 ? "grid-cols-1" : {
@@ -8488,10 +8403,10 @@ var Whiteboard = ({
8488
8403
  var Whiteboard_default = Whiteboard;
8489
8404
 
8490
8405
  // src/components/Auth/Auth.tsx
8491
- var import_react27 = require("react");
8406
+ var import_react28 = require("react");
8492
8407
  var import_react_router_dom = require("react-router-dom");
8493
8408
  var import_jsx_runtime46 = require("react/jsx-runtime");
8494
- var AuthContext = (0, import_react27.createContext)(void 0);
8409
+ var AuthContext = (0, import_react28.createContext)(void 0);
8495
8410
  var AuthProvider = ({
8496
8411
  children,
8497
8412
  checkAuthFn,
@@ -8501,12 +8416,12 @@ var AuthProvider = ({
8501
8416
  getSessionFn,
8502
8417
  getTokensFn
8503
8418
  }) => {
8504
- const [authState, setAuthState] = (0, import_react27.useState)({
8419
+ const [authState, setAuthState] = (0, import_react28.useState)({
8505
8420
  isAuthenticated: false,
8506
8421
  isLoading: true,
8507
8422
  ...initialAuthState
8508
8423
  });
8509
- const checkAuth = (0, import_react27.useCallback)(async () => {
8424
+ const checkAuth = (0, import_react28.useCallback)(async () => {
8510
8425
  try {
8511
8426
  setAuthState((prev) => ({ ...prev, isLoading: true }));
8512
8427
  if (!checkAuthFn) {
@@ -8537,7 +8452,7 @@ var AuthProvider = ({
8537
8452
  return false;
8538
8453
  }
8539
8454
  }, [checkAuthFn, getUserFn, getSessionFn, getTokensFn]);
8540
- const signOut = (0, import_react27.useCallback)(() => {
8455
+ const signOut = (0, import_react28.useCallback)(() => {
8541
8456
  if (signOutFn) {
8542
8457
  signOutFn();
8543
8458
  }
@@ -8549,10 +8464,10 @@ var AuthProvider = ({
8549
8464
  tokens: void 0
8550
8465
  }));
8551
8466
  }, [signOutFn]);
8552
- (0, import_react27.useEffect)(() => {
8467
+ (0, import_react28.useEffect)(() => {
8553
8468
  checkAuth();
8554
8469
  }, [checkAuth]);
8555
- const contextValue = (0, import_react27.useMemo)(
8470
+ const contextValue = (0, import_react28.useMemo)(
8556
8471
  () => ({
8557
8472
  ...authState,
8558
8473
  checkAuth,
@@ -8563,7 +8478,7 @@ var AuthProvider = ({
8563
8478
  return /* @__PURE__ */ (0, import_jsx_runtime46.jsx)(AuthContext.Provider, { value: contextValue, children });
8564
8479
  };
8565
8480
  var useAuth = () => {
8566
- const context = (0, import_react27.useContext)(AuthContext);
8481
+ const context = (0, import_react28.useContext)(AuthContext);
8567
8482
  if (context === void 0) {
8568
8483
  throw new Error("useAuth deve ser usado dentro de um AuthProvider");
8569
8484
  }
@@ -8703,7 +8618,7 @@ function createZustandAuthAdapter(useAuthStore) {
8703
8618
  }
8704
8619
 
8705
8620
  // src/components/Auth/useUrlAuthentication.ts
8706
- var import_react28 = require("react");
8621
+ var import_react29 = require("react");
8707
8622
  var import_react_router_dom2 = require("react-router-dom");
8708
8623
  var getAuthParams = (location, extractParams) => {
8709
8624
  const searchParams = new URLSearchParams(location.search);
@@ -8751,8 +8666,8 @@ var handleUserData = (responseData, setUser) => {
8751
8666
  };
8752
8667
  function useUrlAuthentication(options) {
8753
8668
  const location = (0, import_react_router_dom2.useLocation)();
8754
- const processedRef = (0, import_react28.useRef)(false);
8755
- (0, import_react28.useEffect)(() => {
8669
+ const processedRef = (0, import_react29.useRef)(false);
8670
+ (0, import_react29.useEffect)(() => {
8756
8671
  const handleAuthentication = async () => {
8757
8672
  if (processedRef.current) {
8758
8673
  return;
@@ -8823,9 +8738,9 @@ function useUrlAuthentication(options) {
8823
8738
  }
8824
8739
 
8825
8740
  // src/components/Auth/useApiConfig.ts
8826
- var import_react29 = require("react");
8741
+ var import_react30 = require("react");
8827
8742
  function useApiConfig(api) {
8828
- return (0, import_react29.useMemo)(
8743
+ return (0, import_react30.useMemo)(
8829
8744
  () => ({
8830
8745
  get: (endpoint, config) => api.get(endpoint, config)
8831
8746
  }),
@@ -8835,7 +8750,7 @@ function useApiConfig(api) {
8835
8750
 
8836
8751
  // src/components/Quiz/Quiz.tsx
8837
8752
  var import_phosphor_react22 = require("phosphor-react");
8838
- var import_react30 = require("react");
8753
+ var import_react31 = require("react");
8839
8754
 
8840
8755
  // src/components/Quiz/useQuizStore.ts
8841
8756
  var import_zustand7 = require("zustand");
@@ -9490,18 +9405,18 @@ var getStatusStyles = (variantCorrect) => {
9490
9405
  return "bg-error-background border-error-300";
9491
9406
  }
9492
9407
  };
9493
- var Quiz = (0, import_react30.forwardRef)(({ children, className, variant = "default", ...props }, ref) => {
9408
+ var Quiz = (0, import_react31.forwardRef)(({ children, className, variant = "default", ...props }, ref) => {
9494
9409
  const { setVariant } = useQuizStore();
9495
- (0, import_react30.useEffect)(() => {
9410
+ (0, import_react31.useEffect)(() => {
9496
9411
  setVariant(variant);
9497
9412
  }, [variant, setVariant]);
9498
9413
  return /* @__PURE__ */ (0, import_jsx_runtime47.jsx)("div", { ref, className: cn("flex flex-col", className), ...props, children });
9499
9414
  });
9500
- var QuizHeaderResult = (0, import_react30.forwardRef)(
9415
+ var QuizHeaderResult = (0, import_react31.forwardRef)(
9501
9416
  ({ className, ...props }, ref) => {
9502
9417
  const { getQuestionResultByQuestionId, getCurrentQuestion } = useQuizStore();
9503
- const [status, setStatus] = (0, import_react30.useState)(void 0);
9504
- (0, import_react30.useEffect)(() => {
9418
+ const [status, setStatus] = (0, import_react31.useState)(void 0);
9419
+ (0, import_react31.useEffect)(() => {
9505
9420
  const cq = getCurrentQuestion();
9506
9421
  if (!cq) {
9507
9422
  setStatus(void 0);
@@ -9554,7 +9469,7 @@ var QuizHeaderResult = (0, import_react30.forwardRef)(
9554
9469
  );
9555
9470
  }
9556
9471
  );
9557
- var QuizTitle = (0, import_react30.forwardRef)(
9472
+ var QuizTitle = (0, import_react31.forwardRef)(
9558
9473
  ({ className, ...props }, ref) => {
9559
9474
  const {
9560
9475
  currentQuestionIndex,
@@ -9564,7 +9479,7 @@ var QuizTitle = (0, import_react30.forwardRef)(
9564
9479
  formatTime: formatTime2,
9565
9480
  isStarted
9566
9481
  } = useQuizStore();
9567
- const [showExitConfirmation, setShowExitConfirmation] = (0, import_react30.useState)(false);
9482
+ const [showExitConfirmation, setShowExitConfirmation] = (0, import_react31.useState)(false);
9568
9483
  const totalQuestions = getTotalQuestions();
9569
9484
  const quizTitle = getQuizTitle();
9570
9485
  const handleBackClick = () => {
@@ -9625,7 +9540,7 @@ var QuizTitle = (0, import_react30.forwardRef)(
9625
9540
  ] });
9626
9541
  }
9627
9542
  );
9628
- var QuizSubTitle = (0, import_react30.forwardRef)(
9543
+ var QuizSubTitle = (0, import_react31.forwardRef)(
9629
9544
  ({ subTitle, ...props }, ref) => {
9630
9545
  return /* @__PURE__ */ (0, import_jsx_runtime47.jsx)("div", { className: "px-4 pb-2 pt-6", ...props, ref, children: /* @__PURE__ */ (0, import_jsx_runtime47.jsx)("p", { className: "font-bold text-lg text-text-950", children: subTitle }) });
9631
9546
  }
@@ -9642,7 +9557,7 @@ var QuizHeader = () => {
9642
9557
  }
9643
9558
  );
9644
9559
  };
9645
- var QuizContainer = (0, import_react30.forwardRef)(({ children, className, ...props }, ref) => {
9560
+ var QuizContainer = (0, import_react31.forwardRef)(({ children, className, ...props }, ref) => {
9646
9561
  return /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(
9647
9562
  "div",
9648
9563
  {
@@ -9656,7 +9571,7 @@ var QuizContainer = (0, import_react30.forwardRef)(({ children, className, ...pr
9656
9571
  }
9657
9572
  );
9658
9573
  });
9659
- var QuizContent = (0, import_react30.forwardRef)(({ paddingBottom }) => {
9574
+ var QuizContent = (0, import_react31.forwardRef)(({ paddingBottom }) => {
9660
9575
  const { getCurrentQuestion } = useQuizStore();
9661
9576
  const currentQuestion = getCurrentQuestion();
9662
9577
  const questionComponents = {
@@ -9741,15 +9656,15 @@ var QuizMultipleChoice = ({ paddingBottom }) => {
9741
9656
  const currentQuestionResult = getQuestionResultByQuestionId(
9742
9657
  currentQuestion?.id || ""
9743
9658
  );
9744
- const prevSelectedValuesRef = (0, import_react30.useRef)([]);
9745
- const prevQuestionIdRef = (0, import_react30.useRef)("");
9746
- const allCurrentAnswerIds = (0, import_react30.useMemo)(() => {
9659
+ const prevSelectedValuesRef = (0, import_react31.useRef)([]);
9660
+ const prevQuestionIdRef = (0, import_react31.useRef)("");
9661
+ const allCurrentAnswerIds = (0, import_react31.useMemo)(() => {
9747
9662
  return allCurrentAnswers?.map((answer) => answer.optionId) || [];
9748
9663
  }, [allCurrentAnswers]);
9749
- const selectedValues = (0, import_react30.useMemo)(() => {
9664
+ const selectedValues = (0, import_react31.useMemo)(() => {
9750
9665
  return allCurrentAnswerIds?.filter((id) => id !== null) || [];
9751
9666
  }, [allCurrentAnswerIds]);
9752
- const stableSelectedValues = (0, import_react30.useMemo)(() => {
9667
+ const stableSelectedValues = (0, import_react31.useMemo)(() => {
9753
9668
  const currentQuestionId = currentQuestion?.id || "";
9754
9669
  const hasQuestionChanged = prevQuestionIdRef.current !== currentQuestionId;
9755
9670
  if (hasQuestionChanged) {
@@ -9773,7 +9688,7 @@ var QuizMultipleChoice = ({ paddingBottom }) => {
9773
9688
  variant,
9774
9689
  currentQuestionResult?.selectedOptions
9775
9690
  ]);
9776
- const handleSelectedValues = (0, import_react30.useCallback)(
9691
+ const handleSelectedValues = (0, import_react31.useCallback)(
9777
9692
  (values) => {
9778
9693
  if (currentQuestion) {
9779
9694
  selectMultipleAnswer(currentQuestion.id, values);
@@ -9781,7 +9696,7 @@ var QuizMultipleChoice = ({ paddingBottom }) => {
9781
9696
  },
9782
9697
  [currentQuestion, selectMultipleAnswer]
9783
9698
  );
9784
- const questionKey = (0, import_react30.useMemo)(
9699
+ const questionKey = (0, import_react31.useMemo)(
9785
9700
  () => `question-${currentQuestion?.id || "1"}`,
9786
9701
  [currentQuestion?.id]
9787
9702
  );
@@ -9836,13 +9751,13 @@ var QuizDissertative = ({ paddingBottom }) => {
9836
9751
  currentQuestion?.id || ""
9837
9752
  );
9838
9753
  const currentAnswer = getCurrentAnswer();
9839
- const textareaRef = (0, import_react30.useRef)(null);
9754
+ const textareaRef = (0, import_react31.useRef)(null);
9840
9755
  const handleAnswerChange = (value) => {
9841
9756
  if (currentQuestion) {
9842
9757
  selectDissertativeAnswer(currentQuestion.id, value);
9843
9758
  }
9844
9759
  };
9845
- const adjustTextareaHeight = (0, import_react30.useCallback)(() => {
9760
+ const adjustTextareaHeight = (0, import_react31.useCallback)(() => {
9846
9761
  if (textareaRef.current) {
9847
9762
  textareaRef.current.style.height = "auto";
9848
9763
  const scrollHeight = textareaRef.current.scrollHeight;
@@ -9852,7 +9767,7 @@ var QuizDissertative = ({ paddingBottom }) => {
9852
9767
  textareaRef.current.style.height = `${newHeight}px`;
9853
9768
  }
9854
9769
  }, []);
9855
- (0, import_react30.useEffect)(() => {
9770
+ (0, import_react31.useEffect)(() => {
9856
9771
  adjustTextareaHeight();
9857
9772
  }, [currentAnswer, adjustTextareaHeight]);
9858
9773
  if (!currentQuestion) {
@@ -9991,7 +9906,7 @@ var QuizConnectDots = ({ paddingBottom }) => {
9991
9906
  isCorrect: false
9992
9907
  }
9993
9908
  ];
9994
- const [userAnswers, setUserAnswers] = (0, import_react30.useState)(() => {
9909
+ const [userAnswers, setUserAnswers] = (0, import_react31.useState)(() => {
9995
9910
  if (variant === "result") {
9996
9911
  return mockUserAnswers;
9997
9912
  }
@@ -10110,8 +10025,8 @@ var QuizFill = ({ paddingBottom }) => {
10110
10025
  isCorrect: true
10111
10026
  }
10112
10027
  ];
10113
- const [answers, setAnswers] = (0, import_react30.useState)({});
10114
- const baseId = (0, import_react30.useId)();
10028
+ const [answers, setAnswers] = (0, import_react31.useState)({});
10029
+ const baseId = (0, import_react31.useId)();
10115
10030
  const getAvailableOptionsForSelect = (selectId) => {
10116
10031
  const usedOptions = Object.entries(answers).filter(([key]) => key !== selectId).map(([, value]) => value);
10117
10032
  return options.filter((option) => !usedOptions.includes(option));
@@ -10248,7 +10163,7 @@ var QuizImageQuestion = ({ paddingBottom }) => {
10248
10163
  };
10249
10164
  const correctRadiusRelative = calculateCorrectRadiusRelative();
10250
10165
  const mockUserAnswerRelative = { x: 0.72, y: 0.348 };
10251
- const [clickPositionRelative, setClickPositionRelative] = (0, import_react30.useState)(variant == "result" ? mockUserAnswerRelative : null);
10166
+ const [clickPositionRelative, setClickPositionRelative] = (0, import_react31.useState)(variant == "result" ? mockUserAnswerRelative : null);
10252
10167
  const convertToRelativeCoordinates = (x, y, rect) => {
10253
10168
  const safeWidth = Math.max(rect.width, 1e-3);
10254
10169
  const safeHeight = Math.max(rect.height, 1e-3);
@@ -10448,7 +10363,7 @@ var QuizQuestionList = ({
10448
10363
  )
10449
10364
  ] });
10450
10365
  };
10451
- var QuizFooter = (0, import_react30.forwardRef)(
10366
+ var QuizFooter = (0, import_react31.forwardRef)(
10452
10367
  ({
10453
10368
  className,
10454
10369
  onGoToSimulated,
@@ -10476,11 +10391,11 @@ var QuizFooter = (0, import_react30.forwardRef)(
10476
10391
  const currentAnswer = getCurrentAnswer();
10477
10392
  const currentQuestion = getCurrentQuestion();
10478
10393
  const isCurrentQuestionSkipped = currentQuestion ? getQuestionStatusFromUserAnswers(currentQuestion.id) === "skipped" : false;
10479
- const [alertDialogOpen, setAlertDialogOpen] = (0, import_react30.useState)(false);
10480
- const [modalResultOpen, setModalResultOpen] = (0, import_react30.useState)(false);
10481
- const [modalNavigateOpen, setModalNavigateOpen] = (0, import_react30.useState)(false);
10482
- const [modalResolutionOpen, setModalResolutionOpen] = (0, import_react30.useState)(false);
10483
- const [filterType, setFilterType] = (0, import_react30.useState)("all");
10394
+ const [alertDialogOpen, setAlertDialogOpen] = (0, import_react31.useState)(false);
10395
+ const [modalResultOpen, setModalResultOpen] = (0, import_react31.useState)(false);
10396
+ const [modalNavigateOpen, setModalNavigateOpen] = (0, import_react31.useState)(false);
10397
+ const [modalResolutionOpen, setModalResolutionOpen] = (0, import_react31.useState)(false);
10398
+ const [filterType, setFilterType] = (0, import_react31.useState)("all");
10484
10399
  const unansweredQuestions = getUnansweredQuestionsFromUserAnswers();
10485
10400
  const allQuestions = getTotalQuestions();
10486
10401
  const handleFinishQuiz = async () => {
@@ -10724,7 +10639,7 @@ var QuizBadge = ({
10724
10639
  return /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(Badge_default, { variant: "solid", action: "info", "data-testid": "quiz-badge", children: subtype });
10725
10640
  }
10726
10641
  };
10727
- var QuizResultHeaderTitle = (0, import_react30.forwardRef)(({ className, ...props }, ref) => {
10642
+ var QuizResultHeaderTitle = (0, import_react31.forwardRef)(({ className, ...props }, ref) => {
10728
10643
  const { getActiveQuiz } = useQuizStore();
10729
10644
  const activeQuiz = getActiveQuiz();
10730
10645
  return /* @__PURE__ */ (0, import_jsx_runtime47.jsxs)(
@@ -10740,7 +10655,7 @@ var QuizResultHeaderTitle = (0, import_react30.forwardRef)(({ className, ...prop
10740
10655
  }
10741
10656
  );
10742
10657
  });
10743
- var QuizResultTitle = (0, import_react30.forwardRef)(({ className, ...props }, ref) => {
10658
+ var QuizResultTitle = (0, import_react31.forwardRef)(({ className, ...props }, ref) => {
10744
10659
  const { getQuizTitle } = useQuizStore();
10745
10660
  const quizTitle = getQuizTitle();
10746
10661
  return /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(
@@ -10753,7 +10668,7 @@ var QuizResultTitle = (0, import_react30.forwardRef)(({ className, ...props }, r
10753
10668
  }
10754
10669
  );
10755
10670
  });
10756
- var QuizResultPerformance = (0, import_react30.forwardRef)(
10671
+ var QuizResultPerformance = (0, import_react31.forwardRef)(
10757
10672
  ({ ...props }, ref) => {
10758
10673
  const {
10759
10674
  getTotalQuestions,
@@ -10878,7 +10793,7 @@ var QuizResultPerformance = (0, import_react30.forwardRef)(
10878
10793
  );
10879
10794
  }
10880
10795
  );
10881
- var QuizListResult = (0, import_react30.forwardRef)(({ className, onSubjectClick, ...props }, ref) => {
10796
+ var QuizListResult = (0, import_react31.forwardRef)(({ className, onSubjectClick, ...props }, ref) => {
10882
10797
  const { getQuestionsGroupedBySubject } = useQuizStore();
10883
10798
  const groupedQuestions = getQuestionsGroupedBySubject();
10884
10799
  const subjectsStats = Object.entries(groupedQuestions).map(
@@ -10961,9 +10876,9 @@ var QuizListResultByMateria = ({
10961
10876
  };
10962
10877
 
10963
10878
  // src/components/LoadingModal/loadingModal.tsx
10964
- var import_react31 = require("react");
10879
+ var import_react32 = require("react");
10965
10880
  var import_jsx_runtime48 = require("react/jsx-runtime");
10966
- var LoadingModal = (0, import_react31.forwardRef)(
10881
+ var LoadingModal = (0, import_react32.forwardRef)(
10967
10882
  ({ open, title = "Titulo...", subtitle = "Subtitulo...", ...props }, ref) => {
10968
10883
  if (!open) return null;
10969
10884
  return /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
@@ -11017,7 +10932,7 @@ var loadingModal_default = LoadingModal;
11017
10932
 
11018
10933
  // src/components/NotificationCard/NotificationCard.tsx
11019
10934
  var import_phosphor_react23 = require("phosphor-react");
11020
- var import_react32 = require("react");
10935
+ var import_react33 = require("react");
11021
10936
 
11022
10937
  // src/store/notificationStore.ts
11023
10938
  var import_zustand8 = require("zustand");
@@ -11398,7 +11313,7 @@ var NotificationList = ({
11398
11313
  className,
11399
11314
  emptyStateImage
11400
11315
  }) => {
11401
- const [globalNotificationModal, setGlobalNotificationModal] = (0, import_react32.useState)({ isOpen: false, notification: null });
11316
+ const [globalNotificationModal, setGlobalNotificationModal] = (0, import_react33.useState)({ isOpen: false, notification: null });
11402
11317
  const handleGlobalNotificationClick = (notification) => {
11403
11318
  if (onGlobalNotificationClick) {
11404
11319
  onGlobalNotificationClick(notification);
@@ -11512,8 +11427,8 @@ var NotificationCenter = ({
11512
11427
  className
11513
11428
  }) => {
11514
11429
  const { isMobile } = useMobile();
11515
- const [isModalOpen, setIsModalOpen] = (0, import_react32.useState)(false);
11516
- const [globalNotificationModal, setGlobalNotificationModal] = (0, import_react32.useState)({ isOpen: false, notification: null });
11430
+ const [isModalOpen, setIsModalOpen] = (0, import_react33.useState)(false);
11431
+ const [globalNotificationModal, setGlobalNotificationModal] = (0, import_react33.useState)({ isOpen: false, notification: null });
11517
11432
  const handleMobileClick = () => {
11518
11433
  setIsModalOpen(true);
11519
11434
  onFetchNotifications?.();
@@ -11528,7 +11443,7 @@ var NotificationCenter = ({
11528
11443
  onToggleActive?.();
11529
11444
  }
11530
11445
  };
11531
- (0, import_react32.useEffect)(() => {
11446
+ (0, import_react33.useEffect)(() => {
11532
11447
  if (isActive) {
11533
11448
  onFetchNotifications?.();
11534
11449
  }
@@ -11747,7 +11662,7 @@ var createUseNotificationStore = (apiClient) => {
11747
11662
  };
11748
11663
 
11749
11664
  // src/hooks/useNotifications.ts
11750
- var import_react33 = require("react");
11665
+ var import_react34 = require("react");
11751
11666
  var createUseNotifications = (apiClient) => {
11752
11667
  const useNotificationStore = createUseNotificationStore(apiClient);
11753
11668
  return () => {
@@ -11766,7 +11681,7 @@ var createUseNotifications = (apiClient) => {
11766
11681
  resetError,
11767
11682
  getGroupedNotifications
11768
11683
  } = useNotificationStore();
11769
- const handleNavigate = (0, import_react33.useCallback)(
11684
+ const handleNavigate = (0, import_react34.useCallback)(
11770
11685
  (entityType, entityId, onAfterNavigate) => {
11771
11686
  if (entityType && entityId) {
11772
11687
  switch (entityType.toUpperCase()) {
@@ -11784,7 +11699,7 @@ var createUseNotifications = (apiClient) => {
11784
11699
  },
11785
11700
  []
11786
11701
  );
11787
- const getActionLabel = (0, import_react33.useCallback)(
11702
+ const getActionLabel = (0, import_react34.useCallback)(
11788
11703
  (entityType) => {
11789
11704
  if (!entityType) return "Ver mais";
11790
11705
  switch (entityType.toUpperCase()) {
@@ -11798,7 +11713,7 @@ var createUseNotifications = (apiClient) => {
11798
11713
  },
11799
11714
  []
11800
11715
  );
11801
- const markAsReadAndNavigate = (0, import_react33.useCallback)(
11716
+ const markAsReadAndNavigate = (0, import_react34.useCallback)(
11802
11717
  async (id, entityType, entityId, onAfterNavigate) => {
11803
11718
  await markAsRead(id);
11804
11719
  if (entityType && entityId) {
@@ -11807,11 +11722,11 @@ var createUseNotifications = (apiClient) => {
11807
11722
  },
11808
11723
  [markAsRead, handleNavigate]
11809
11724
  );
11810
- const refreshNotifications = (0, import_react33.useCallback)(async () => {
11725
+ const refreshNotifications = (0, import_react34.useCallback)(async () => {
11811
11726
  resetError();
11812
11727
  await fetchNotifications();
11813
11728
  }, [resetError, fetchNotifications]);
11814
- const formatNotification = (0, import_react33.useCallback)(
11729
+ const formatNotification = (0, import_react34.useCallback)(
11815
11730
  (notification) => ({
11816
11731
  ...notification,
11817
11732
  time: formatTimeAgo(notification.createdAt),
@@ -11820,7 +11735,7 @@ var createUseNotifications = (apiClient) => {
11820
11735
  }),
11821
11736
  []
11822
11737
  );
11823
- const getFormattedGroupedNotifications = (0, import_react33.useCallback)(() => {
11738
+ const getFormattedGroupedNotifications = (0, import_react34.useCallback)(() => {
11824
11739
  const groups = getGroupedNotifications();
11825
11740
  return groups.map((group) => ({
11826
11741
  ...group,
@@ -11974,8 +11889,8 @@ var createNotificationsHook = (apiClient) => {
11974
11889
  getRootDomain,
11975
11890
  getStatusBadge,
11976
11891
  getSubjectColorClass,
11977
- getSubjectData,
11978
11892
  getSubjectIcon,
11893
+ getSubjectInfo,
11979
11894
  getSubjectName,
11980
11895
  useApiConfig,
11981
11896
  useAuth,