analytica-frontend-lib 1.1.61 → 1.1.63

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