analytica-frontend-lib 1.1.54 → 1.1.56

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.
package/dist/index.mjs CHANGED
@@ -1786,29 +1786,412 @@ var Input = forwardRef9(
1786
1786
  var Input_default = Input;
1787
1787
 
1788
1788
  // src/components/Search/Search.tsx
1789
- import { CaretLeft, X as X2 } from "phosphor-react";
1789
+ import { CaretLeft, X as X3 } from "phosphor-react";
1790
1790
  import {
1791
1791
  forwardRef as forwardRef11,
1792
- useState as useState6,
1793
- useId as useId6,
1792
+ useState as useState8,
1793
+ useId as useId7,
1794
1794
  useMemo as useMemo2,
1795
- useEffect as useEffect4,
1796
- useRef as useRef4
1795
+ useEffect as useEffect7,
1796
+ useRef as useRef5
1797
1797
  } from "react";
1798
1798
 
1799
1799
  // src/components/DropdownMenu/DropdownMenu.tsx
1800
- import { SignOut, User } from "phosphor-react";
1800
+ import { CaretRight, SignOut, User } from "phosphor-react";
1801
1801
  import {
1802
1802
  forwardRef as forwardRef10,
1803
- useEffect as useEffect3,
1804
- useRef as useRef3,
1803
+ useEffect as useEffect6,
1804
+ useRef as useRef4,
1805
1805
  isValidElement as isValidElement3,
1806
1806
  Children as Children3,
1807
1807
  cloneElement as cloneElement3,
1808
- useState as useState5
1808
+ useState as useState7
1809
1809
  } from "react";
1810
1810
  import { create as create4, useStore as useStore3 } from "zustand";
1811
+
1812
+ // src/components/Modal/Modal.tsx
1813
+ import { useEffect as useEffect3, useId as useId6 } from "react";
1814
+ import { X as X2 } from "phosphor-react";
1815
+
1816
+ // src/components/Modal/utils/videoUtils.ts
1817
+ var isYouTubeUrl = (url) => {
1818
+ const youtubeRegex = /^(https?:\/\/)?((www|m|music)\.)?(youtube\.com|youtu\.be|youtube-nocookie\.com)\/.+/i;
1819
+ return youtubeRegex.test(url);
1820
+ };
1821
+ var isValidYouTubeHost = (host) => {
1822
+ if (host === "youtu.be") return "youtu.be";
1823
+ const isValidYouTubeCom = host === "youtube.com" || host.endsWith(".youtube.com") && /^(www|m|music)\.youtube\.com$/.test(host);
1824
+ if (isValidYouTubeCom) return "youtube";
1825
+ const isValidNoCookie = host === "youtube-nocookie.com" || host.endsWith(".youtube-nocookie.com") && /^(www|m|music)\.youtube-nocookie\.com$/.test(host);
1826
+ if (isValidNoCookie) return "nocookie";
1827
+ return null;
1828
+ };
1829
+ var extractYoutuBeId = (pathname) => {
1830
+ const firstSeg = pathname.split("/").filter(Boolean)[0];
1831
+ return firstSeg || null;
1832
+ };
1833
+ var extractYouTubeId = (pathname, searchParams) => {
1834
+ const parts = pathname.split("/").filter(Boolean);
1835
+ const [first, second] = parts;
1836
+ if (first === "embed" && second) return second;
1837
+ if (first === "shorts" && second) return second;
1838
+ if (first === "live" && second) return second;
1839
+ const v = searchParams.get("v");
1840
+ if (v) return v;
1841
+ return null;
1842
+ };
1843
+ var getYouTubeVideoId = (url) => {
1844
+ try {
1845
+ const u = new URL(url);
1846
+ const hostType = isValidYouTubeHost(u.hostname.toLowerCase());
1847
+ if (!hostType) return null;
1848
+ if (hostType === "youtu.be") {
1849
+ return extractYoutuBeId(u.pathname);
1850
+ }
1851
+ return extractYouTubeId(u.pathname, u.searchParams);
1852
+ } catch {
1853
+ return null;
1854
+ }
1855
+ };
1856
+ var getYouTubeEmbedUrl = (videoId) => {
1857
+ return `https://www.youtube-nocookie.com/embed/${videoId}?autoplay=0&rel=0&modestbranding=1`;
1858
+ };
1859
+
1860
+ // src/components/Modal/Modal.tsx
1811
1861
  import { jsx as jsx18, jsxs as jsxs12 } from "react/jsx-runtime";
1862
+ var SIZE_CLASSES7 = {
1863
+ xs: "max-w-[360px]",
1864
+ sm: "max-w-[420px]",
1865
+ md: "max-w-[510px]",
1866
+ lg: "max-w-[640px]",
1867
+ xl: "max-w-[970px]"
1868
+ };
1869
+ var Modal = ({
1870
+ isOpen,
1871
+ onClose,
1872
+ title,
1873
+ children,
1874
+ size = "md",
1875
+ className = "",
1876
+ closeOnEscape = true,
1877
+ footer,
1878
+ hideCloseButton = false,
1879
+ variant = "default",
1880
+ description,
1881
+ image,
1882
+ imageAlt,
1883
+ actionLink,
1884
+ actionLabel
1885
+ }) => {
1886
+ const titleId = useId6();
1887
+ useEffect3(() => {
1888
+ if (!isOpen || !closeOnEscape) return;
1889
+ const handleEscape = (event) => {
1890
+ if (event.key === "Escape") {
1891
+ onClose();
1892
+ }
1893
+ };
1894
+ document.addEventListener("keydown", handleEscape);
1895
+ return () => document.removeEventListener("keydown", handleEscape);
1896
+ }, [isOpen, closeOnEscape, onClose]);
1897
+ useEffect3(() => {
1898
+ const originalOverflow = document.body.style.overflow;
1899
+ if (isOpen) {
1900
+ document.body.style.overflow = "hidden";
1901
+ } else {
1902
+ document.body.style.overflow = originalOverflow;
1903
+ }
1904
+ return () => {
1905
+ document.body.style.overflow = originalOverflow;
1906
+ };
1907
+ }, [isOpen]);
1908
+ if (!isOpen) return null;
1909
+ const sizeClasses = SIZE_CLASSES7[size];
1910
+ const baseClasses = "bg-secondary-50 rounded-3xl shadow-hard-shadow-2 border border-border-100 w-full mx-4";
1911
+ const dialogResetClasses = "p-0 m-0 border-none outline-none max-h-none static";
1912
+ const modalClasses = cn(
1913
+ baseClasses,
1914
+ sizeClasses,
1915
+ dialogResetClasses,
1916
+ className
1917
+ );
1918
+ const normalizeUrl = (href) => /^https?:\/\//i.test(href) ? href : `https://${href}`;
1919
+ const handleActionClick = () => {
1920
+ if (actionLink) {
1921
+ window.open(normalizeUrl(actionLink), "_blank", "noopener,noreferrer");
1922
+ }
1923
+ };
1924
+ if (variant === "activity") {
1925
+ return /* @__PURE__ */ jsx18("div", { className: "fixed inset-0 z-50 flex items-center justify-center bg-black/60 backdrop-blur-xs border-none p-0 m-0 w-full cursor-default", children: /* @__PURE__ */ jsxs12(
1926
+ "dialog",
1927
+ {
1928
+ className: modalClasses,
1929
+ "aria-labelledby": titleId,
1930
+ "aria-modal": "true",
1931
+ open: true,
1932
+ children: [
1933
+ /* @__PURE__ */ jsx18("div", { className: "flex justify-end p-6 pb-0", children: !hideCloseButton && /* @__PURE__ */ jsx18(
1934
+ "button",
1935
+ {
1936
+ onClick: onClose,
1937
+ className: "p-1 text-text-500 hover:text-text-700 hover:bg-background-50 rounded-md transition-colors focus:outline-none focus:ring-2 focus:ring-indicator-info focus:ring-offset-2",
1938
+ "aria-label": "Fechar modal",
1939
+ children: /* @__PURE__ */ jsx18(X2, { size: 18 })
1940
+ }
1941
+ ) }),
1942
+ /* @__PURE__ */ jsxs12("div", { className: "flex flex-col items-center px-6 pb-6 gap-5", children: [
1943
+ image && /* @__PURE__ */ jsx18("div", { className: "flex justify-center", children: /* @__PURE__ */ jsx18(
1944
+ "img",
1945
+ {
1946
+ src: image,
1947
+ alt: imageAlt ?? "",
1948
+ className: "w-[122px] h-[122px] object-contain"
1949
+ }
1950
+ ) }),
1951
+ /* @__PURE__ */ jsx18(
1952
+ "h2",
1953
+ {
1954
+ id: titleId,
1955
+ className: "text-lg font-semibold text-text-950 text-center",
1956
+ children: title
1957
+ }
1958
+ ),
1959
+ description && /* @__PURE__ */ jsx18("p", { className: "text-sm font-normal text-text-400 text-center max-w-md leading-[21px]", children: description }),
1960
+ actionLink && /* @__PURE__ */ jsxs12("div", { className: "w-full", children: [
1961
+ (() => {
1962
+ const normalized = normalizeUrl(actionLink);
1963
+ const isYT = isYouTubeUrl(normalized);
1964
+ if (!isYT) return null;
1965
+ const id = getYouTubeVideoId(normalized);
1966
+ if (!id) {
1967
+ return /* @__PURE__ */ jsx18(
1968
+ Button_default,
1969
+ {
1970
+ variant: "solid",
1971
+ action: "primary",
1972
+ size: "large",
1973
+ className: "w-full",
1974
+ onClick: handleActionClick,
1975
+ children: actionLabel || "Iniciar Atividade"
1976
+ }
1977
+ );
1978
+ }
1979
+ return /* @__PURE__ */ jsx18(
1980
+ "iframe",
1981
+ {
1982
+ src: getYouTubeEmbedUrl(id),
1983
+ className: "w-full aspect-video rounded-lg",
1984
+ allowFullScreen: true,
1985
+ allow: "accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture",
1986
+ title: "V\xEDdeo YouTube"
1987
+ }
1988
+ );
1989
+ })(),
1990
+ !isYouTubeUrl(normalizeUrl(actionLink)) && /* @__PURE__ */ jsx18(
1991
+ Button_default,
1992
+ {
1993
+ variant: "solid",
1994
+ action: "primary",
1995
+ size: "large",
1996
+ className: "w-full",
1997
+ onClick: handleActionClick,
1998
+ children: actionLabel || "Iniciar Atividade"
1999
+ }
2000
+ )
2001
+ ] })
2002
+ ] })
2003
+ ]
2004
+ }
2005
+ ) });
2006
+ }
2007
+ return /* @__PURE__ */ jsx18("div", { className: "fixed inset-0 z-50 flex items-center justify-center bg-black/60 backdrop-blur-xs border-none p-0 m-0 w-full cursor-default", children: /* @__PURE__ */ jsxs12(
2008
+ "dialog",
2009
+ {
2010
+ className: modalClasses,
2011
+ "aria-labelledby": titleId,
2012
+ "aria-modal": "true",
2013
+ open: true,
2014
+ children: [
2015
+ /* @__PURE__ */ jsxs12("div", { className: "flex items-center justify-between px-6 py-6", children: [
2016
+ /* @__PURE__ */ jsx18("h2", { id: titleId, className: "text-lg font-semibold text-text-950", children: title }),
2017
+ !hideCloseButton && /* @__PURE__ */ jsx18(
2018
+ "button",
2019
+ {
2020
+ onClick: onClose,
2021
+ className: "p-1 text-text-500 hover:text-text-700 hover:bg-background-50 rounded-md transition-colors focus:outline-none focus:ring-2 focus:ring-indicator-info focus:ring-offset-2",
2022
+ "aria-label": "Fechar modal",
2023
+ children: /* @__PURE__ */ jsx18(X2, { size: 18 })
2024
+ }
2025
+ )
2026
+ ] }),
2027
+ children && /* @__PURE__ */ jsx18("div", { className: "px-6 pb-6", children: /* @__PURE__ */ jsx18("div", { className: "text-text-500 font-normal text-sm leading-6", children }) }),
2028
+ footer && /* @__PURE__ */ jsx18("div", { className: "flex justify-end gap-3 px-6 pb-6", children: footer })
2029
+ ]
2030
+ }
2031
+ ) });
2032
+ };
2033
+ var Modal_default = Modal;
2034
+
2035
+ // src/components/ThemeToggle/ThemeToggle.tsx
2036
+ import { Moon, Sun } from "phosphor-react";
2037
+ import { useState as useState6, useEffect as useEffect5 } from "react";
2038
+
2039
+ // src/hooks/useTheme.ts
2040
+ import { useEffect as useEffect4, useState as useState5, useCallback, useRef as useRef3 } from "react";
2041
+ var useTheme = () => {
2042
+ const [themeMode, setThemeMode] = useState5("system");
2043
+ const [isDark, setIsDark] = useState5(false);
2044
+ const themeModeRef = useRef3("system");
2045
+ const applyTheme = useCallback((mode) => {
2046
+ const htmlElement = document.documentElement;
2047
+ const originalTheme = htmlElement.getAttribute("data-original-theme");
2048
+ if (mode === "dark") {
2049
+ htmlElement.setAttribute("data-theme", "dark");
2050
+ setIsDark(true);
2051
+ } else if (mode === "light") {
2052
+ if (originalTheme) {
2053
+ htmlElement.setAttribute("data-theme", originalTheme);
2054
+ }
2055
+ setIsDark(false);
2056
+ } else if (mode === "system") {
2057
+ const isSystemDark = window.matchMedia(
2058
+ "(prefers-color-scheme: dark)"
2059
+ ).matches;
2060
+ if (isSystemDark) {
2061
+ htmlElement.setAttribute("data-theme", "dark");
2062
+ setIsDark(true);
2063
+ } else if (originalTheme) {
2064
+ htmlElement.setAttribute("data-theme", originalTheme);
2065
+ setIsDark(false);
2066
+ }
2067
+ }
2068
+ }, []);
2069
+ const toggleTheme = useCallback(() => {
2070
+ let newMode;
2071
+ if (themeMode === "light") {
2072
+ newMode = "dark";
2073
+ } else if (themeMode === "dark") {
2074
+ newMode = "light";
2075
+ } else {
2076
+ newMode = "dark";
2077
+ }
2078
+ setThemeMode(newMode);
2079
+ themeModeRef.current = newMode;
2080
+ applyTheme(newMode);
2081
+ localStorage.setItem("theme-mode", newMode);
2082
+ }, [themeMode, applyTheme]);
2083
+ const setTheme = useCallback(
2084
+ (mode) => {
2085
+ setThemeMode(mode);
2086
+ themeModeRef.current = mode;
2087
+ applyTheme(mode);
2088
+ localStorage.setItem("theme-mode", mode);
2089
+ },
2090
+ [applyTheme]
2091
+ );
2092
+ useEffect4(() => {
2093
+ const htmlElement = document.documentElement;
2094
+ const currentTheme = htmlElement.getAttribute("data-theme");
2095
+ if (currentTheme && !htmlElement.getAttribute("data-original-theme")) {
2096
+ htmlElement.setAttribute("data-original-theme", currentTheme);
2097
+ }
2098
+ const savedThemeMode = localStorage.getItem("theme-mode");
2099
+ const initialMode = savedThemeMode || "system";
2100
+ if (!savedThemeMode) {
2101
+ localStorage.setItem("theme-mode", "system");
2102
+ }
2103
+ setThemeMode(initialMode);
2104
+ themeModeRef.current = initialMode;
2105
+ applyTheme(initialMode);
2106
+ const mediaQuery = window.matchMedia("(prefers-color-scheme: dark)");
2107
+ const handleSystemThemeChange = () => {
2108
+ if (themeModeRef.current === "system") {
2109
+ applyTheme("system");
2110
+ }
2111
+ };
2112
+ mediaQuery.addEventListener("change", handleSystemThemeChange);
2113
+ return () => {
2114
+ mediaQuery.removeEventListener("change", handleSystemThemeChange);
2115
+ };
2116
+ }, [applyTheme]);
2117
+ return {
2118
+ themeMode,
2119
+ isDark,
2120
+ toggleTheme,
2121
+ setTheme
2122
+ };
2123
+ };
2124
+
2125
+ // src/components/ThemeToggle/ThemeToggle.tsx
2126
+ import { jsx as jsx19 } from "react/jsx-runtime";
2127
+ var ThemeToggle = ({
2128
+ variant = "default",
2129
+ onToggle
2130
+ }) => {
2131
+ const { themeMode, setTheme } = useTheme();
2132
+ const [tempTheme, setTempTheme] = useState6(themeMode);
2133
+ useEffect5(() => {
2134
+ setTempTheme(themeMode);
2135
+ }, [themeMode]);
2136
+ const problemTypes = [
2137
+ {
2138
+ id: "light",
2139
+ title: "Claro",
2140
+ icon: /* @__PURE__ */ jsx19(Sun, { size: 24 })
2141
+ },
2142
+ {
2143
+ id: "dark",
2144
+ title: "Escuro",
2145
+ icon: /* @__PURE__ */ jsx19(Moon, { size: 24 })
2146
+ },
2147
+ {
2148
+ id: "system",
2149
+ title: "Sistema",
2150
+ icon: /* @__PURE__ */ jsx19(
2151
+ "svg",
2152
+ {
2153
+ width: "25",
2154
+ height: "25",
2155
+ viewBox: "0 0 25 25",
2156
+ fill: "none",
2157
+ xmlns: "http://www.w3.org/2000/svg",
2158
+ children: /* @__PURE__ */ jsx19(
2159
+ "path",
2160
+ {
2161
+ d: "M12.5 2.75C15.085 2.75276 17.5637 3.78054 19.3916 5.6084C21.2195 7.43628 22.2473 9.915 22.25 12.5C22.25 14.4284 21.6778 16.3136 20.6064 17.917C19.5352 19.5201 18.0128 20.7699 16.2314 21.5078C14.4499 22.2458 12.489 22.4387 10.5977 22.0625C8.70642 21.6863 6.96899 20.758 5.60547 19.3945C4.24197 18.031 3.31374 16.2936 2.9375 14.4023C2.56129 12.511 2.75423 10.5501 3.49219 8.76855C4.23012 6.98718 5.47982 5.46483 7.08301 4.39355C8.68639 3.32221 10.5716 2.75 12.5 2.75ZM11.75 4.28516C9.70145 4.47452 7.7973 5.42115 6.41016 6.94043C5.02299 8.4599 4.25247 10.4426 4.25 12.5C4.25247 14.5574 5.02299 16.5401 6.41016 18.0596C7.7973 19.5789 9.70145 20.5255 11.75 20.7148V4.28516Z",
2162
+ fill: "#525252"
2163
+ }
2164
+ )
2165
+ }
2166
+ )
2167
+ }
2168
+ ];
2169
+ const handleThemeSelect = (selectedTheme) => {
2170
+ if (variant === "with-save") {
2171
+ setTempTheme(selectedTheme);
2172
+ } else {
2173
+ setTheme(selectedTheme);
2174
+ }
2175
+ if (onToggle) {
2176
+ onToggle(selectedTheme);
2177
+ }
2178
+ };
2179
+ const currentTheme = variant === "with-save" ? tempTheme : themeMode;
2180
+ return /* @__PURE__ */ jsx19("div", { className: "flex flex-row gap-2 sm:gap-4 py-2", children: problemTypes.map((type) => /* @__PURE__ */ jsx19(
2181
+ SelectionButton_default,
2182
+ {
2183
+ icon: type.icon,
2184
+ label: type.title,
2185
+ selected: currentTheme === type.id,
2186
+ onClick: () => handleThemeSelect(type.id),
2187
+ className: "w-full p-2 sm:p-4"
2188
+ },
2189
+ type.id
2190
+ )) });
2191
+ };
2192
+
2193
+ // src/components/DropdownMenu/DropdownMenu.tsx
2194
+ import { Fragment as Fragment2, jsx as jsx20, jsxs as jsxs13 } from "react/jsx-runtime";
1812
2195
  function createDropdownStore() {
1813
2196
  return create4((set) => ({
1814
2197
  open: false,
@@ -1843,14 +2226,14 @@ var DropdownMenu = ({
1843
2226
  open: propOpen,
1844
2227
  onOpenChange
1845
2228
  }) => {
1846
- const storeRef = useRef3(null);
2229
+ const storeRef = useRef4(null);
1847
2230
  storeRef.current ??= createDropdownStore();
1848
2231
  const store = storeRef.current;
1849
2232
  const { open, setOpen: storeSetOpen } = useStore3(store, (s) => s);
1850
2233
  const setOpen = (newOpen) => {
1851
2234
  storeSetOpen(newOpen);
1852
2235
  };
1853
- const menuRef = useRef3(null);
2236
+ const menuRef = useRef4(null);
1854
2237
  const handleArrowDownOrArrowUp = (event) => {
1855
2238
  const menuContent = menuRef.current?.querySelector('[role="menu"]');
1856
2239
  if (menuContent) {
@@ -1884,7 +2267,7 @@ var DropdownMenu = ({
1884
2267
  setOpen(false);
1885
2268
  }
1886
2269
  };
1887
- useEffect3(() => {
2270
+ useEffect6(() => {
1888
2271
  if (open) {
1889
2272
  document.addEventListener("mousedown", handleClickOutside);
1890
2273
  document.addEventListener("keydown", handleDownkey);
@@ -1894,16 +2277,16 @@ var DropdownMenu = ({
1894
2277
  document.removeEventListener("keydown", handleDownkey);
1895
2278
  };
1896
2279
  }, [open]);
1897
- useEffect3(() => {
2280
+ useEffect6(() => {
1898
2281
  setOpen(open);
1899
2282
  onOpenChange?.(open);
1900
2283
  }, [open, onOpenChange]);
1901
- useEffect3(() => {
2284
+ useEffect6(() => {
1902
2285
  if (propOpen) {
1903
2286
  setOpen(propOpen);
1904
2287
  }
1905
2288
  }, [propOpen]);
1906
- return /* @__PURE__ */ jsx18("div", { className: "relative", ref: menuRef, children: injectStore3(children, store) });
2289
+ return /* @__PURE__ */ jsx20("div", { className: "relative", ref: menuRef, children: injectStore3(children, store) });
1907
2290
  };
1908
2291
  var DropdownMenuTrigger = ({
1909
2292
  className,
@@ -1915,7 +2298,7 @@ var DropdownMenuTrigger = ({
1915
2298
  const store = useDropdownStore(externalStore);
1916
2299
  const open = useStore3(store, (s) => s.open);
1917
2300
  const toggleOpen = () => store.setState({ open: !open });
1918
- return /* @__PURE__ */ jsx18(
2301
+ return /* @__PURE__ */ jsx20(
1919
2302
  "button",
1920
2303
  {
1921
2304
  onClick: (e) => {
@@ -1951,7 +2334,7 @@ var MENUCONTENT_VARIANT_CLASSES = {
1951
2334
  profile: "p-6"
1952
2335
  };
1953
2336
  var MenuLabel = forwardRef10(({ className, inset, store: _store, ...props }, ref) => {
1954
- return /* @__PURE__ */ jsx18(
2337
+ return /* @__PURE__ */ jsx20(
1955
2338
  "div",
1956
2339
  {
1957
2340
  ref,
@@ -1974,8 +2357,8 @@ var DropdownMenuContent = forwardRef10(
1974
2357
  }, ref) => {
1975
2358
  const store = useDropdownStore(externalStore);
1976
2359
  const open = useStore3(store, (s) => s.open);
1977
- const [isVisible, setIsVisible] = useState5(open);
1978
- useEffect3(() => {
2360
+ const [isVisible, setIsVisible] = useState7(open);
2361
+ useEffect6(() => {
1979
2362
  if (open) {
1980
2363
  setIsVisible(true);
1981
2364
  } else {
@@ -1990,7 +2373,7 @@ var DropdownMenuContent = forwardRef10(
1990
2373
  return `absolute ${vertical} ${horizontal}`;
1991
2374
  };
1992
2375
  const variantClasses = MENUCONTENT_VARIANT_CLASSES[variant];
1993
- return /* @__PURE__ */ jsx18(
2376
+ return /* @__PURE__ */ jsx20(
1994
2377
  "div",
1995
2378
  {
1996
2379
  ref,
@@ -2049,7 +2432,7 @@ var DropdownMenuItem = forwardRef10(
2049
2432
  const getVariantProps = () => {
2050
2433
  return variant === "profile" ? { "data-variant": "profile" } : {};
2051
2434
  };
2052
- return /* @__PURE__ */ jsxs12(
2435
+ return /* @__PURE__ */ jsxs13(
2053
2436
  "div",
2054
2437
  {
2055
2438
  ref,
@@ -2071,7 +2454,7 @@ var DropdownMenuItem = forwardRef10(
2071
2454
  ...props,
2072
2455
  children: [
2073
2456
  iconLeft,
2074
- /* @__PURE__ */ jsx18("span", { className: "w-full text-md", children }),
2457
+ /* @__PURE__ */ jsx20("div", { className: "w-full", children }),
2075
2458
  iconRight
2076
2459
  ]
2077
2460
  }
@@ -2079,7 +2462,7 @@ var DropdownMenuItem = forwardRef10(
2079
2462
  }
2080
2463
  );
2081
2464
  DropdownMenuItem.displayName = "DropdownMenuItem";
2082
- var DropdownMenuSeparator = forwardRef10(({ className, store: _store, ...props }, ref) => /* @__PURE__ */ jsx18(
2465
+ var DropdownMenuSeparator = forwardRef10(({ className, store: _store, ...props }, ref) => /* @__PURE__ */ jsx20(
2083
2466
  "div",
2084
2467
  {
2085
2468
  ref,
@@ -2092,7 +2475,7 @@ var ProfileMenuTrigger = forwardRef10(({ className, onClick, store: externalStor
2092
2475
  const store = useDropdownStore(externalStore);
2093
2476
  const open = useStore3(store, (s) => s.open);
2094
2477
  const toggleOpen = () => store.setState({ open: !open });
2095
- return /* @__PURE__ */ jsx18(
2478
+ return /* @__PURE__ */ jsx20(
2096
2479
  "button",
2097
2480
  {
2098
2481
  ref,
@@ -2107,13 +2490,13 @@ var ProfileMenuTrigger = forwardRef10(({ className, onClick, store: externalStor
2107
2490
  },
2108
2491
  "aria-expanded": open,
2109
2492
  ...props,
2110
- children: /* @__PURE__ */ jsx18("span", { className: "size-6 rounded-full bg-primary-100 flex items-center justify-center", children: /* @__PURE__ */ jsx18(User, { className: "text-primary-950", size: 18 }) })
2493
+ children: /* @__PURE__ */ jsx20("span", { className: "size-6 rounded-full bg-primary-100 flex items-center justify-center", children: /* @__PURE__ */ jsx20(User, { className: "text-primary-950", size: 18 }) })
2111
2494
  }
2112
2495
  );
2113
2496
  });
2114
2497
  ProfileMenuTrigger.displayName = "ProfileMenuTrigger";
2115
2498
  var ProfileMenuHeader = forwardRef10(({ className, name, email, store: _store, ...props }, ref) => {
2116
- return /* @__PURE__ */ jsxs12(
2499
+ return /* @__PURE__ */ jsxs13(
2117
2500
  "div",
2118
2501
  {
2119
2502
  ref,
@@ -2121,18 +2504,98 @@ var ProfileMenuHeader = forwardRef10(({ className, name, email, store: _store, .
2121
2504
  className: cn("flex flex-row gap-4 items-center", className),
2122
2505
  ...props,
2123
2506
  children: [
2124
- /* @__PURE__ */ jsx18("span", { className: "size-16 bg-primary-100 rounded-full flex items-center justify-center", children: /* @__PURE__ */ jsx18(User, { size: 34, className: "text-primary-950" }) }),
2125
- /* @__PURE__ */ jsxs12("div", { className: "flex flex-col ", children: [
2126
- /* @__PURE__ */ jsx18("p", { className: "text-xl font-bold text-text-950", children: name }),
2127
- /* @__PURE__ */ jsx18("p", { className: "text-md text-text-600", children: email })
2507
+ /* @__PURE__ */ jsx20("span", { className: "size-16 bg-primary-100 rounded-full flex items-center justify-center", children: /* @__PURE__ */ jsx20(User, { size: 34, className: "text-primary-950" }) }),
2508
+ /* @__PURE__ */ jsxs13("div", { className: "flex flex-col ", children: [
2509
+ /* @__PURE__ */ jsx20(Text_default, { size: "xl", weight: "bold", color: "text-text-950", children: name }),
2510
+ /* @__PURE__ */ jsx20(Text_default, { size: "md", color: "text-text-600", children: email })
2128
2511
  ] })
2129
2512
  ]
2130
2513
  }
2131
2514
  );
2132
2515
  });
2133
2516
  ProfileMenuHeader.displayName = "ProfileMenuHeader";
2517
+ var ProfileToggleTheme = ({ ...props }) => {
2518
+ const { themeMode, setTheme } = useTheme();
2519
+ const [modalThemeToggle, setModalThemeToggle] = useState7(false);
2520
+ const [selectedTheme, setSelectedTheme] = useState7(themeMode);
2521
+ const handleClick = (e) => {
2522
+ e.preventDefault();
2523
+ e.stopPropagation();
2524
+ setModalThemeToggle(true);
2525
+ };
2526
+ const handleSave = () => {
2527
+ setTheme(selectedTheme);
2528
+ setModalThemeToggle(false);
2529
+ };
2530
+ return /* @__PURE__ */ jsxs13(Fragment2, { children: [
2531
+ /* @__PURE__ */ jsxs13(
2532
+ "div",
2533
+ {
2534
+ role: "menuitem",
2535
+ "data-variant": "profile",
2536
+ className: "relative flex flex-row justify-between select-none items-center gap-2 rounded-sm p-4 text-sm outline-none transition-colors [&>svg]:size-6 [&>svg]:shrink-0 cursor-pointer hover:bg-background-50 text-text-700 focus:bg-accent focus:text-accent-foreground hover:bg-accent hover:text-accent-foreground",
2537
+ onClick: handleClick,
2538
+ onKeyDown: (e) => {
2539
+ if (e.key === "Enter" || e.key === " ") {
2540
+ e.preventDefault();
2541
+ e.stopPropagation();
2542
+ setModalThemeToggle(true);
2543
+ }
2544
+ },
2545
+ tabIndex: 0,
2546
+ ...props,
2547
+ children: [
2548
+ /* @__PURE__ */ jsx20(
2549
+ "svg",
2550
+ {
2551
+ width: "25",
2552
+ height: "25",
2553
+ viewBox: "0 0 25 25",
2554
+ fill: "none",
2555
+ xmlns: "http://www.w3.org/2000/svg",
2556
+ children: /* @__PURE__ */ jsx20(
2557
+ "path",
2558
+ {
2559
+ d: "M12.5 2.75C15.085 2.75276 17.5637 3.78054 19.3916 5.6084C21.2195 7.43628 22.2473 9.915 22.25 12.5C22.25 14.4284 21.6778 16.3136 20.6064 17.917C19.5352 19.5201 18.0128 20.7699 16.2314 21.5078C14.4499 22.2458 12.489 22.4387 10.5977 22.0625C8.70642 21.6863 6.96899 20.758 5.60547 19.3945C4.24197 18.031 3.31374 16.2936 2.9375 14.4023C2.56129 12.511 2.75423 10.5501 3.49219 8.76855C4.23012 6.98718 5.47982 5.46483 7.08301 4.39355C8.68639 3.32221 10.5716 2.75 12.5 2.75ZM11.75 4.28516C9.70145 4.47452 7.7973 5.42115 6.41016 6.94043C5.02299 8.4599 4.25247 10.4426 4.25 12.5C4.25247 14.5574 5.02299 16.5401 6.41016 18.0596C7.7973 19.5789 9.70145 20.5255 11.75 20.7148V4.28516Z",
2560
+ fill: "#525252"
2561
+ }
2562
+ )
2563
+ }
2564
+ ),
2565
+ /* @__PURE__ */ jsx20(Text_default, { className: "w-full", size: "md", children: "Apar\xEAncia" }),
2566
+ /* @__PURE__ */ jsx20(CaretRight, {})
2567
+ ]
2568
+ }
2569
+ ),
2570
+ /* @__PURE__ */ jsx20(
2571
+ Modal_default,
2572
+ {
2573
+ isOpen: modalThemeToggle,
2574
+ onClose: () => setModalThemeToggle(false),
2575
+ title: "Apar\xEAncia",
2576
+ size: "md",
2577
+ footer: /* @__PURE__ */ jsxs13("div", { className: "flex gap-3", children: [
2578
+ /* @__PURE__ */ jsx20(
2579
+ Button_default,
2580
+ {
2581
+ variant: "outline",
2582
+ onClick: () => setModalThemeToggle(false),
2583
+ children: "Cancelar"
2584
+ }
2585
+ ),
2586
+ /* @__PURE__ */ jsx20(Button_default, { variant: "solid", onClick: () => handleSave(), children: "Salvar" })
2587
+ ] }),
2588
+ children: /* @__PURE__ */ jsxs13("div", { className: "flex flex-col", children: [
2589
+ /* @__PURE__ */ jsx20("p", { className: "text-sm text-text-500", children: "Escolha o tema:" }),
2590
+ /* @__PURE__ */ jsx20(ThemeToggle, { variant: "with-save", onToggle: setSelectedTheme })
2591
+ ] })
2592
+ }
2593
+ )
2594
+ ] });
2595
+ };
2596
+ ProfileToggleTheme.displayName = "ProfileToggleTheme";
2134
2597
  var ProfileMenuSection = forwardRef10(({ className, children, store: _store, ...props }, ref) => {
2135
- return /* @__PURE__ */ jsx18("div", { ref, className: cn("flex flex-col p-2", className), ...props, children });
2598
+ return /* @__PURE__ */ jsx20("div", { ref, className: cn("flex flex-col p-2", className), ...props, children });
2136
2599
  });
2137
2600
  ProfileMenuSection.displayName = "ProfileMenuSection";
2138
2601
  var ProfileMenuFooter = ({
@@ -2144,7 +2607,7 @@ var ProfileMenuFooter = ({
2144
2607
  }) => {
2145
2608
  const store = useDropdownStore(externalStore);
2146
2609
  const setOpen = useStore3(store, (s) => s.setOpen);
2147
- return /* @__PURE__ */ jsxs12(
2610
+ return /* @__PURE__ */ jsxs13(
2148
2611
  Button_default,
2149
2612
  {
2150
2613
  variant: "outline",
@@ -2156,8 +2619,8 @@ var ProfileMenuFooter = ({
2156
2619
  },
2157
2620
  ...props,
2158
2621
  children: [
2159
- /* @__PURE__ */ jsx18("span", { className: "mr-2 flex items-center", children: /* @__PURE__ */ jsx18(SignOut, {}) }),
2160
- /* @__PURE__ */ jsx18("span", { children: "Sair" })
2622
+ /* @__PURE__ */ jsx20("span", { className: "mr-2 flex items-center", children: /* @__PURE__ */ jsx20(SignOut, {}) }),
2623
+ /* @__PURE__ */ jsx20(Text_default, { children: "Sair" })
2161
2624
  ]
2162
2625
  }
2163
2626
  );
@@ -2166,7 +2629,7 @@ ProfileMenuFooter.displayName = "ProfileMenuFooter";
2166
2629
  var DropdownMenu_default = DropdownMenu;
2167
2630
 
2168
2631
  // src/components/Search/Search.tsx
2169
- import { jsx as jsx19, jsxs as jsxs13 } from "react/jsx-runtime";
2632
+ import { jsx as jsx21, jsxs as jsxs14 } from "react/jsx-runtime";
2170
2633
  var filterOptions = (options, query) => {
2171
2634
  if (!query || query.length < 1) return [];
2172
2635
  return options.filter(
@@ -2211,9 +2674,9 @@ var Search = forwardRef11(
2211
2674
  placeholder = "Buscar...",
2212
2675
  ...props
2213
2676
  }, ref) => {
2214
- const [dropdownOpen, setDropdownOpen] = useState6(false);
2215
- const dropdownStore = useRef4(createDropdownStore()).current;
2216
- const dropdownRef = useRef4(null);
2677
+ const [dropdownOpen, setDropdownOpen] = useState8(false);
2678
+ const dropdownStore = useRef5(createDropdownStore()).current;
2679
+ const dropdownRef = useRef5(null);
2217
2680
  const filteredOptions = useMemo2(() => {
2218
2681
  if (!options.length) {
2219
2682
  return [];
@@ -2222,7 +2685,7 @@ var Search = forwardRef11(
2222
2685
  return filtered;
2223
2686
  }, [options, value]);
2224
2687
  const showDropdown = controlledShowDropdown ?? (dropdownOpen && value && String(value).length > 0);
2225
- useEffect4(() => {
2688
+ useEffect7(() => {
2226
2689
  const shouldShow = Boolean(value && String(value).length > 0);
2227
2690
  setDropdownOpen(shouldShow);
2228
2691
  dropdownStore.setState({ open: shouldShow });
@@ -2234,7 +2697,7 @@ var Search = forwardRef11(
2234
2697
  dropdownStore.setState({ open: false });
2235
2698
  updateInputValue(option, ref, onChange);
2236
2699
  };
2237
- useEffect4(() => {
2700
+ useEffect7(() => {
2238
2701
  const handleClickOutside = (event) => {
2239
2702
  if (dropdownRef.current && !dropdownRef.current.contains(event.target)) {
2240
2703
  setDropdownOpen(false);
@@ -2248,7 +2711,7 @@ var Search = forwardRef11(
2248
2711
  document.removeEventListener("mousedown", handleClickOutside);
2249
2712
  };
2250
2713
  }, [showDropdown, dropdownStore]);
2251
- const generatedId = useId6();
2714
+ const generatedId = useId7();
2252
2715
  const inputId = id ?? `search-${generatedId}`;
2253
2716
  const handleClear = () => {
2254
2717
  if (onClear) {
@@ -2277,24 +2740,24 @@ var Search = forwardRef11(
2277
2740
  return "hover:border-border-400";
2278
2741
  };
2279
2742
  const showClearButton = value && !disabled && !readOnly;
2280
- return /* @__PURE__ */ jsxs13(
2743
+ return /* @__PURE__ */ jsxs14(
2281
2744
  "div",
2282
2745
  {
2283
2746
  ref: dropdownRef,
2284
2747
  className: `w-full max-w-lg md:w-[488px] ${containerClassName}`,
2285
2748
  children: [
2286
- /* @__PURE__ */ jsxs13("div", { className: "relative flex items-center", children: [
2287
- /* @__PURE__ */ jsx19("div", { className: "absolute left-3 top-1/2 transform -translate-y-1/2", children: /* @__PURE__ */ jsx19(
2749
+ /* @__PURE__ */ jsxs14("div", { className: "relative flex items-center", children: [
2750
+ /* @__PURE__ */ jsx21("div", { className: "absolute left-3 top-1/2 transform -translate-y-1/2", children: /* @__PURE__ */ jsx21(
2288
2751
  "button",
2289
2752
  {
2290
2753
  type: "button",
2291
2754
  className: "w-6 h-6 text-text-800 flex items-center justify-center bg-transparent border-0 p-0 cursor-pointer hover:text-text-600 transition-colors",
2292
2755
  onClick: handleLeftIconClick,
2293
2756
  "aria-label": "Voltar",
2294
- children: /* @__PURE__ */ jsx19(CaretLeft, {})
2757
+ children: /* @__PURE__ */ jsx21(CaretLeft, {})
2295
2758
  }
2296
2759
  ) }),
2297
- /* @__PURE__ */ jsx19(
2760
+ /* @__PURE__ */ jsx21(
2298
2761
  "input",
2299
2762
  {
2300
2763
  ref,
@@ -2312,24 +2775,24 @@ var Search = forwardRef11(
2312
2775
  ...props
2313
2776
  }
2314
2777
  ),
2315
- showClearButton && /* @__PURE__ */ jsx19("div", { className: "absolute right-3 top-1/2 transform -translate-y-1/2", children: /* @__PURE__ */ jsx19(
2778
+ showClearButton && /* @__PURE__ */ jsx21("div", { className: "absolute right-3 top-1/2 transform -translate-y-1/2", children: /* @__PURE__ */ jsx21(
2316
2779
  "button",
2317
2780
  {
2318
2781
  type: "button",
2319
2782
  className: "p-0 border-0 bg-transparent cursor-pointer",
2320
2783
  onMouseDown: handleClearClick,
2321
2784
  "aria-label": "Limpar busca",
2322
- children: /* @__PURE__ */ jsx19("span", { className: "w-6 h-6 text-text-800 flex items-center justify-center hover:text-text-600 transition-colors", children: /* @__PURE__ */ jsx19(X2, {}) })
2785
+ children: /* @__PURE__ */ jsx21("span", { className: "w-6 h-6 text-text-800 flex items-center justify-center hover:text-text-600 transition-colors", children: /* @__PURE__ */ jsx21(X3, {}) })
2323
2786
  }
2324
2787
  ) })
2325
2788
  ] }),
2326
- showDropdown && /* @__PURE__ */ jsx19(DropdownMenu_default, { open: showDropdown, onOpenChange: setDropdownOpen, children: /* @__PURE__ */ jsx19(
2789
+ showDropdown && /* @__PURE__ */ jsx21(DropdownMenu_default, { open: showDropdown, onOpenChange: setDropdownOpen, children: /* @__PURE__ */ jsx21(
2327
2790
  DropdownMenuContent,
2328
2791
  {
2329
2792
  className: "w-full mt-1",
2330
2793
  style: { maxHeight: dropdownMaxHeight },
2331
2794
  align: "start",
2332
- children: filteredOptions.length > 0 ? filteredOptions.map((option) => /* @__PURE__ */ jsx19(
2795
+ children: filteredOptions.length > 0 ? filteredOptions.map((option) => /* @__PURE__ */ jsx21(
2333
2796
  DropdownMenuItem,
2334
2797
  {
2335
2798
  onClick: () => handleSelectOption(option),
@@ -2337,7 +2800,7 @@ var Search = forwardRef11(
2337
2800
  children: option
2338
2801
  },
2339
2802
  option
2340
- )) : /* @__PURE__ */ jsx19("div", { className: "px-3 py-3 text-text-700 text-base", children: noResultsText })
2803
+ )) : /* @__PURE__ */ jsx21("div", { className: "px-3 py-3 text-text-700 text-base", children: noResultsText })
2341
2804
  }
2342
2805
  ) })
2343
2806
  ]
@@ -2350,7 +2813,7 @@ var Search_default = Search;
2350
2813
 
2351
2814
  // src/components/Chips/Chips.tsx
2352
2815
  import { Check as Check2 } from "phosphor-react";
2353
- import { jsx as jsx20, jsxs as jsxs14 } from "react/jsx-runtime";
2816
+ import { jsx as jsx22, jsxs as jsxs15 } from "react/jsx-runtime";
2354
2817
  var STATE_CLASSES5 = {
2355
2818
  default: "bg-background text-text-950 border border-border-100 hover:bg-secondary-50 hover:border-border-300",
2356
2819
  selected: "bg-info-background text-primary-950 border-2 border-primary-950 hover:bg-secondary-50 focus-visible:border-0"
@@ -2365,7 +2828,7 @@ var Chips = ({
2365
2828
  }) => {
2366
2829
  const stateClasses = selected ? STATE_CLASSES5.selected : STATE_CLASSES5.default;
2367
2830
  const baseClasses = "inline-flex items-center justify-center rounded-full cursor-pointer font-normal text-sm px-4 py-2 gap-2 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-offset-0 focus-visible:ring-primary-600 disabled:opacity-40 disabled:cursor-not-allowed";
2368
- return /* @__PURE__ */ jsxs14(
2831
+ return /* @__PURE__ */ jsxs15(
2369
2832
  "button",
2370
2833
  {
2371
2834
  className: cn(baseClasses, stateClasses, className),
@@ -2373,8 +2836,8 @@ var Chips = ({
2373
2836
  type,
2374
2837
  ...props,
2375
2838
  children: [
2376
- selected && /* @__PURE__ */ jsx20("span", { className: `flex items-center`, children: /* @__PURE__ */ jsx20(Check2, { weight: "bold", size: 16 }) }),
2377
- /* @__PURE__ */ jsx20("span", { className: "flex-1", children })
2839
+ selected && /* @__PURE__ */ jsx22("span", { className: `flex items-center`, children: /* @__PURE__ */ jsx22(Check2, { weight: "bold", size: 16 }) }),
2840
+ /* @__PURE__ */ jsx22("span", { className: "flex-1", children })
2378
2841
  ]
2379
2842
  }
2380
2843
  );
@@ -2382,8 +2845,8 @@ var Chips = ({
2382
2845
  var Chips_default = Chips;
2383
2846
 
2384
2847
  // src/components/ProgressBar/ProgressBar.tsx
2385
- import { Fragment as Fragment2, jsx as jsx21, jsxs as jsxs15 } from "react/jsx-runtime";
2386
- var SIZE_CLASSES7 = {
2848
+ import { Fragment as Fragment3, jsx as jsx23, jsxs as jsxs16 } from "react/jsx-runtime";
2849
+ var SIZE_CLASSES8 = {
2387
2850
  small: {
2388
2851
  container: "h-1",
2389
2852
  // 4px height (h-1 = 4px in Tailwind)
@@ -2494,20 +2957,20 @@ var renderStackedHitCountDisplay = (showHitCount, showPercentage, clampedValue,
2494
2957
  max,
2495
2958
  percentage
2496
2959
  );
2497
- return /* @__PURE__ */ jsx21(
2960
+ return /* @__PURE__ */ jsx23(
2498
2961
  "div",
2499
2962
  {
2500
2963
  className: cn(
2501
2964
  "text-xs font-medium leading-[14px] text-right",
2502
2965
  percentageClassName
2503
2966
  ),
2504
- children: displayPriority.type === "hitCount" ? /* @__PURE__ */ jsxs15(Fragment2, { children: [
2505
- /* @__PURE__ */ jsx21("span", { className: "text-success-200", children: Math.round(clampedValue) }),
2506
- /* @__PURE__ */ jsxs15("span", { className: "text-text-600", children: [
2967
+ children: displayPriority.type === "hitCount" ? /* @__PURE__ */ jsxs16(Fragment3, { children: [
2968
+ /* @__PURE__ */ jsx23("span", { className: "text-success-200", children: Math.round(clampedValue) }),
2969
+ /* @__PURE__ */ jsxs16("span", { className: "text-text-600", children: [
2507
2970
  " de ",
2508
2971
  max
2509
2972
  ] })
2510
- ] }) : /* @__PURE__ */ jsxs15(Text_default, { size: "xs", weight: "medium", className: "text-success-200", children: [
2973
+ ] }) : /* @__PURE__ */ jsxs16(Text_default, { size: "xs", weight: "medium", className: "text-success-200", children: [
2511
2974
  Math.round(percentage),
2512
2975
  "%"
2513
2976
  ] })
@@ -2522,7 +2985,7 @@ var ProgressBarBase = ({
2522
2985
  variantClasses,
2523
2986
  containerClassName,
2524
2987
  fillClassName
2525
- }) => /* @__PURE__ */ jsxs15(
2988
+ }) => /* @__PURE__ */ jsxs16(
2526
2989
  "div",
2527
2990
  {
2528
2991
  className: cn(
@@ -2531,7 +2994,7 @@ var ProgressBarBase = ({
2531
2994
  "overflow-hidden relative"
2532
2995
  ),
2533
2996
  children: [
2534
- /* @__PURE__ */ jsx21(
2997
+ /* @__PURE__ */ jsx23(
2535
2998
  "progress",
2536
2999
  {
2537
3000
  value: clampedValue,
@@ -2540,7 +3003,7 @@ var ProgressBarBase = ({
2540
3003
  className: "absolute inset-0 w-full h-full opacity-0"
2541
3004
  }
2542
3005
  ),
2543
- /* @__PURE__ */ jsx21(
3006
+ /* @__PURE__ */ jsx23(
2544
3007
  "div",
2545
3008
  {
2546
3009
  className: cn(
@@ -2566,7 +3029,7 @@ var StackedLayout = ({
2566
3029
  percentage,
2567
3030
  variantClasses,
2568
3031
  dimensions
2569
- }) => /* @__PURE__ */ jsxs15(
3032
+ }) => /* @__PURE__ */ jsxs16(
2570
3033
  "div",
2571
3034
  {
2572
3035
  className: cn(
@@ -2576,8 +3039,8 @@ var StackedLayout = ({
2576
3039
  className
2577
3040
  ),
2578
3041
  children: [
2579
- shouldShowHeader(label, showPercentage, showHitCount) && /* @__PURE__ */ jsxs15("div", { className: "flex flex-row justify-between items-center w-full h-[19px]", children: [
2580
- label && /* @__PURE__ */ jsx21(
3042
+ shouldShowHeader(label, showPercentage, showHitCount) && /* @__PURE__ */ jsxs16("div", { className: "flex flex-row justify-between items-center w-full h-[19px]", children: [
3043
+ label && /* @__PURE__ */ jsx23(
2581
3044
  Text_default,
2582
3045
  {
2583
3046
  as: "div",
@@ -2596,7 +3059,7 @@ var StackedLayout = ({
2596
3059
  percentageClassName
2597
3060
  )
2598
3061
  ] }),
2599
- /* @__PURE__ */ jsx21(
3062
+ /* @__PURE__ */ jsx23(
2600
3063
  ProgressBarBase,
2601
3064
  {
2602
3065
  clampedValue,
@@ -2638,7 +3101,7 @@ var CompactLayout = ({
2638
3101
  percentageClassName,
2639
3102
  labelClassName
2640
3103
  });
2641
- return /* @__PURE__ */ jsxs15(
3104
+ return /* @__PURE__ */ jsxs16(
2642
3105
  "div",
2643
3106
  {
2644
3107
  className: cn(
@@ -2648,7 +3111,7 @@ var CompactLayout = ({
2648
3111
  className
2649
3112
  ),
2650
3113
  children: [
2651
- shouldShowHeader(label, showPercentage, showHitCount) && /* @__PURE__ */ jsx21(
3114
+ shouldShowHeader(label, showPercentage, showHitCount) && /* @__PURE__ */ jsx23(
2652
3115
  Text_default,
2653
3116
  {
2654
3117
  as: "div",
@@ -2659,7 +3122,7 @@ var CompactLayout = ({
2659
3122
  children: content
2660
3123
  }
2661
3124
  ),
2662
- /* @__PURE__ */ jsx21(
3125
+ /* @__PURE__ */ jsx23(
2663
3126
  ProgressBarBase,
2664
3127
  {
2665
3128
  clampedValue,
@@ -2695,9 +3158,9 @@ var DefaultLayout = ({
2695
3158
  label,
2696
3159
  showPercentage
2697
3160
  );
2698
- return /* @__PURE__ */ jsxs15("div", { className: cn("flex", sizeClasses.layout, gapClass, className), children: [
2699
- displayConfig.showHeader && /* @__PURE__ */ jsxs15("div", { className: "flex flex-row items-center justify-between w-full", children: [
2700
- label && /* @__PURE__ */ jsx21(
3161
+ return /* @__PURE__ */ jsxs16("div", { className: cn("flex", sizeClasses.layout, gapClass, className), children: [
3162
+ displayConfig.showHeader && /* @__PURE__ */ jsxs16("div", { className: "flex flex-row items-center justify-between w-full", children: [
3163
+ label && /* @__PURE__ */ jsx23(
2701
3164
  Text_default,
2702
3165
  {
2703
3166
  as: "div",
@@ -2710,7 +3173,7 @@ var DefaultLayout = ({
2710
3173
  children: label
2711
3174
  }
2712
3175
  ),
2713
- showPercentage && /* @__PURE__ */ jsxs15(
3176
+ showPercentage && /* @__PURE__ */ jsxs16(
2714
3177
  Text_default,
2715
3178
  {
2716
3179
  size: "xs",
@@ -2726,7 +3189,7 @@ var DefaultLayout = ({
2726
3189
  }
2727
3190
  )
2728
3191
  ] }),
2729
- /* @__PURE__ */ jsx21(
3192
+ /* @__PURE__ */ jsx23(
2730
3193
  ProgressBarBase,
2731
3194
  {
2732
3195
  clampedValue,
@@ -2746,7 +3209,7 @@ var DefaultLayout = ({
2746
3209
  )
2747
3210
  }
2748
3211
  ),
2749
- displayConfig.showPercentage && /* @__PURE__ */ jsxs15(
3212
+ displayConfig.showPercentage && /* @__PURE__ */ jsxs16(
2750
3213
  Text_default,
2751
3214
  {
2752
3215
  size: "xs",
@@ -2761,7 +3224,7 @@ var DefaultLayout = ({
2761
3224
  ]
2762
3225
  }
2763
3226
  ),
2764
- displayConfig.showLabel && /* @__PURE__ */ jsx21(
3227
+ displayConfig.showLabel && /* @__PURE__ */ jsx23(
2765
3228
  Text_default,
2766
3229
  {
2767
3230
  as: "div",
@@ -2794,10 +3257,10 @@ var ProgressBar = ({
2794
3257
  compactHeight
2795
3258
  }) => {
2796
3259
  const { clampedValue, percentage } = calculateProgressValues(value, max);
2797
- const sizeClasses = SIZE_CLASSES7[size];
3260
+ const sizeClasses = SIZE_CLASSES8[size];
2798
3261
  const variantClasses = VARIANT_CLASSES2[variant];
2799
3262
  if (layout === "stacked") {
2800
- return /* @__PURE__ */ jsx21(
3263
+ return /* @__PURE__ */ jsx23(
2801
3264
  StackedLayout,
2802
3265
  {
2803
3266
  className,
@@ -2818,7 +3281,7 @@ var ProgressBar = ({
2818
3281
  );
2819
3282
  }
2820
3283
  if (layout === "compact") {
2821
- return /* @__PURE__ */ jsx21(
3284
+ return /* @__PURE__ */ jsx23(
2822
3285
  CompactLayout,
2823
3286
  {
2824
3287
  className,
@@ -2838,7 +3301,7 @@ var ProgressBar = ({
2838
3301
  }
2839
3302
  );
2840
3303
  }
2841
- return /* @__PURE__ */ jsx21(
3304
+ return /* @__PURE__ */ jsx23(
2842
3305
  DefaultLayout,
2843
3306
  {
2844
3307
  className,
@@ -2858,8 +3321,8 @@ var ProgressBar = ({
2858
3321
  var ProgressBar_default = ProgressBar;
2859
3322
 
2860
3323
  // src/components/ProgressCircle/ProgressCircle.tsx
2861
- import { jsx as jsx22, jsxs as jsxs16 } from "react/jsx-runtime";
2862
- var SIZE_CLASSES8 = {
3324
+ import { jsx as jsx24, jsxs as jsxs17 } from "react/jsx-runtime";
3325
+ var SIZE_CLASSES9 = {
2863
3326
  small: {
2864
3327
  container: "w-[90px] h-[90px]",
2865
3328
  // 90px circle from design specs
@@ -2933,14 +3396,14 @@ var ProgressCircle = ({
2933
3396
  const safeValue = isNaN(value) ? 0 : value;
2934
3397
  const clampedValue = Math.max(0, Math.min(safeValue, max));
2935
3398
  const percentage = max === 0 ? 0 : clampedValue / max * 100;
2936
- const sizeClasses = SIZE_CLASSES8[size];
3399
+ const sizeClasses = SIZE_CLASSES9[size];
2937
3400
  const variantClasses = VARIANT_CLASSES3[variant];
2938
3401
  const radius = size === "small" ? 37 : 64;
2939
3402
  const circumference = 2 * Math.PI * radius;
2940
3403
  const strokeDashoffset = circumference - percentage / 100 * circumference;
2941
3404
  const center = size === "small" ? 45 : 76;
2942
3405
  const svgSize = size === "small" ? 90 : 152;
2943
- return /* @__PURE__ */ jsxs16(
3406
+ return /* @__PURE__ */ jsxs17(
2944
3407
  "div",
2945
3408
  {
2946
3409
  className: cn(
@@ -2950,7 +3413,7 @@ var ProgressCircle = ({
2950
3413
  className
2951
3414
  ),
2952
3415
  children: [
2953
- /* @__PURE__ */ jsxs16(
3416
+ /* @__PURE__ */ jsxs17(
2954
3417
  "svg",
2955
3418
  {
2956
3419
  className: "absolute inset-0 transform -rotate-90",
@@ -2959,7 +3422,7 @@ var ProgressCircle = ({
2959
3422
  viewBox: `0 0 ${svgSize} ${svgSize}`,
2960
3423
  "aria-hidden": "true",
2961
3424
  children: [
2962
- /* @__PURE__ */ jsx22(
3425
+ /* @__PURE__ */ jsx24(
2963
3426
  "circle",
2964
3427
  {
2965
3428
  cx: center,
@@ -2970,7 +3433,7 @@ var ProgressCircle = ({
2970
3433
  className: cn(variantClasses.background, "rounded-lg")
2971
3434
  }
2972
3435
  ),
2973
- /* @__PURE__ */ jsx22(
3436
+ /* @__PURE__ */ jsx24(
2974
3437
  "circle",
2975
3438
  {
2976
3439
  cx: center,
@@ -2990,7 +3453,7 @@ var ProgressCircle = ({
2990
3453
  ]
2991
3454
  }
2992
3455
  ),
2993
- /* @__PURE__ */ jsx22(
3456
+ /* @__PURE__ */ jsx24(
2994
3457
  "progress",
2995
3458
  {
2996
3459
  value: clampedValue,
@@ -2999,7 +3462,7 @@ var ProgressCircle = ({
2999
3462
  className: "absolute opacity-0 w-0 h-0"
3000
3463
  }
3001
3464
  ),
3002
- /* @__PURE__ */ jsxs16(
3465
+ /* @__PURE__ */ jsxs17(
3003
3466
  "div",
3004
3467
  {
3005
3468
  className: cn(
@@ -3008,7 +3471,7 @@ var ProgressCircle = ({
3008
3471
  sizeClasses.contentWidth
3009
3472
  ),
3010
3473
  children: [
3011
- showPercentage && /* @__PURE__ */ jsxs16(
3474
+ showPercentage && /* @__PURE__ */ jsxs17(
3012
3475
  Text_default,
3013
3476
  {
3014
3477
  size: sizeClasses.textSize,
@@ -3024,7 +3487,7 @@ var ProgressCircle = ({
3024
3487
  ]
3025
3488
  }
3026
3489
  ),
3027
- label && /* @__PURE__ */ jsx22(
3490
+ label && /* @__PURE__ */ jsx24(
3028
3491
  Text_default,
3029
3492
  {
3030
3493
  as: "span",
@@ -3049,8 +3512,8 @@ var ProgressCircle_default = ProgressCircle;
3049
3512
 
3050
3513
  // src/components/Stepper/Stepper.tsx
3051
3514
  import { Check as Check3 } from "phosphor-react";
3052
- import { jsx as jsx23, jsxs as jsxs17 } from "react/jsx-runtime";
3053
- var SIZE_CLASSES9 = {
3515
+ import { jsx as jsx25, jsxs as jsxs18 } from "react/jsx-runtime";
3516
+ var SIZE_CLASSES10 = {
3054
3517
  small: {
3055
3518
  container: "gap-2",
3056
3519
  // 8px gap as specified in CSS
@@ -3176,7 +3639,7 @@ var Step = ({
3176
3639
  }
3177
3640
  return `${step.label}${suffix}`;
3178
3641
  };
3179
- return /* @__PURE__ */ jsxs17(
3642
+ return /* @__PURE__ */ jsxs18(
3180
3643
  "div",
3181
3644
  {
3182
3645
  className: `
@@ -3189,7 +3652,7 @@ var Step = ({
3189
3652
  overflow-visible
3190
3653
  `,
3191
3654
  children: [
3192
- /* @__PURE__ */ jsx23(
3655
+ /* @__PURE__ */ jsx25(
3193
3656
  "div",
3194
3657
  {
3195
3658
  className: `
@@ -3198,7 +3661,7 @@ var Step = ({
3198
3661
  `
3199
3662
  }
3200
3663
  ),
3201
- /* @__PURE__ */ jsxs17(
3664
+ /* @__PURE__ */ jsxs18(
3202
3665
  "div",
3203
3666
  {
3204
3667
  className: `
@@ -3208,7 +3671,7 @@ var Step = ({
3208
3671
  overflow-visible
3209
3672
  `,
3210
3673
  children: [
3211
- /* @__PURE__ */ jsx23(
3674
+ /* @__PURE__ */ jsx25(
3212
3675
  "div",
3213
3676
  {
3214
3677
  className: `
@@ -3218,7 +3681,7 @@ var Step = ({
3218
3681
  w-4 h-4 sm:w-5 sm:h-5 md:w-5 md:h-5 lg:w-6 lg:h-6
3219
3682
  `,
3220
3683
  "aria-label": getAriaLabel(),
3221
- children: isCompleted ? /* @__PURE__ */ jsx23(
3684
+ children: isCompleted ? /* @__PURE__ */ jsx25(
3222
3685
  Check3,
3223
3686
  {
3224
3687
  weight: "bold",
@@ -3227,7 +3690,7 @@ var Step = ({
3227
3690
  w-2.5 h-2.5 sm:w-3 sm:h-3 md:w-3 md:h-3 lg:w-3.5 lg:h-3.5
3228
3691
  `
3229
3692
  }
3230
- ) : /* @__PURE__ */ jsx23(
3693
+ ) : /* @__PURE__ */ jsx25(
3231
3694
  Text_default,
3232
3695
  {
3233
3696
  size: sizeClasses.indicatorTextSize,
@@ -3242,7 +3705,7 @@ var Step = ({
3242
3705
  )
3243
3706
  }
3244
3707
  ),
3245
- /* @__PURE__ */ jsx23(
3708
+ /* @__PURE__ */ jsx25(
3246
3709
  Text_default,
3247
3710
  {
3248
3711
  size: sizeClasses.labelTextSize,
@@ -3292,9 +3755,9 @@ var Stepper = ({
3292
3755
  progressText,
3293
3756
  responsive = true
3294
3757
  }) => {
3295
- const sizeClasses = SIZE_CLASSES9[size];
3758
+ const sizeClasses = SIZE_CLASSES10[size];
3296
3759
  const steps = currentStep !== void 0 ? calculateStepStates(initialSteps, currentStep) : initialSteps;
3297
- return /* @__PURE__ */ jsxs17(
3760
+ return /* @__PURE__ */ jsxs18(
3298
3761
  "fieldset",
3299
3762
  {
3300
3763
  className: cn(
@@ -3303,8 +3766,8 @@ var Stepper = ({
3303
3766
  "border-0 p-0 m-0"
3304
3767
  ),
3305
3768
  children: [
3306
- /* @__PURE__ */ jsx23("legend", { className: "absolute w-px h-px p-0 -m-px overflow-hidden whitespace-nowrap border-0", children: "Stepper de formul\xE1rio" }),
3307
- showProgress && currentStep !== void 0 && /* @__PURE__ */ jsx23(
3769
+ /* @__PURE__ */ jsx25("legend", { className: "absolute w-px h-px p-0 -m-px overflow-hidden whitespace-nowrap border-0", children: "Stepper de formul\xE1rio" }),
3770
+ showProgress && currentStep !== void 0 && /* @__PURE__ */ jsx25(
3308
3771
  Text_default,
3309
3772
  {
3310
3773
  size: "sm",
@@ -3313,7 +3776,7 @@ var Stepper = ({
3313
3776
  children: getProgressText(currentStep, steps.length, progressText)
3314
3777
  }
3315
3778
  ),
3316
- /* @__PURE__ */ jsx23(
3779
+ /* @__PURE__ */ jsx25(
3317
3780
  "div",
3318
3781
  {
3319
3782
  className: cn(
@@ -3326,7 +3789,7 @@ var Stepper = ({
3326
3789
  "aria-label": "Progress steps",
3327
3790
  children: steps.map((step, index) => {
3328
3791
  const stateClasses = STATE_CLASSES6[step.state];
3329
- return /* @__PURE__ */ jsx23(
3792
+ return /* @__PURE__ */ jsx25(
3330
3793
  Step,
3331
3794
  {
3332
3795
  step,
@@ -3350,12 +3813,12 @@ var Stepper_default = Stepper;
3350
3813
 
3351
3814
  // src/components/Calendar/Calendar.tsx
3352
3815
  import {
3353
- useState as useState7,
3816
+ useState as useState9,
3354
3817
  useMemo as useMemo3,
3355
- useEffect as useEffect5,
3356
- useRef as useRef5
3818
+ useEffect as useEffect8,
3819
+ useRef as useRef6
3357
3820
  } from "react";
3358
- import { jsx as jsx24, jsxs as jsxs18 } from "react/jsx-runtime";
3821
+ import { jsx as jsx26, jsxs as jsxs19 } from "react/jsx-runtime";
3359
3822
  var WEEK_DAYS = ["SEG", "TER", "QUA", "QUI", "SEX", "S\xC1B", "DOM"];
3360
3823
  var WEEK_DAYS_SHORT = ["S", "T", "Q", "Q", "S", "S", "D"];
3361
3824
  var MONTH_NAMES = [
@@ -3378,15 +3841,15 @@ var MonthYearPicker = ({
3378
3841
  currentDate,
3379
3842
  onYearChange,
3380
3843
  onMonthChange
3381
- }) => /* @__PURE__ */ jsxs18(
3844
+ }) => /* @__PURE__ */ jsxs19(
3382
3845
  "div",
3383
3846
  {
3384
3847
  ref: monthPickerRef,
3385
3848
  className: "absolute top-full left-0 z-50 mt-1 bg-white rounded-lg shadow-lg border border-border-200 p-4 min-w-[280px]",
3386
3849
  children: [
3387
- /* @__PURE__ */ jsxs18("div", { className: "mb-4", children: [
3388
- /* @__PURE__ */ jsx24("h3", { className: "text-sm font-medium text-text-700 mb-2", children: "Selecionar Ano" }),
3389
- /* @__PURE__ */ jsx24("div", { className: "grid grid-cols-4 gap-1 max-h-32 overflow-y-auto", children: availableYears.map((year) => /* @__PURE__ */ jsx24(
3850
+ /* @__PURE__ */ jsxs19("div", { className: "mb-4", children: [
3851
+ /* @__PURE__ */ jsx26("h3", { className: "text-sm font-medium text-text-700 mb-2", children: "Selecionar Ano" }),
3852
+ /* @__PURE__ */ jsx26("div", { className: "grid grid-cols-4 gap-1 max-h-32 overflow-y-auto", children: availableYears.map((year) => /* @__PURE__ */ jsx26(
3390
3853
  "button",
3391
3854
  {
3392
3855
  onClick: () => onYearChange(year),
@@ -3399,9 +3862,9 @@ var MonthYearPicker = ({
3399
3862
  year
3400
3863
  )) })
3401
3864
  ] }),
3402
- /* @__PURE__ */ jsxs18("div", { children: [
3403
- /* @__PURE__ */ jsx24("h3", { className: "text-sm font-medium text-text-700 mb-2", children: "Selecionar M\xEAs" }),
3404
- /* @__PURE__ */ jsx24("div", { className: "grid grid-cols-3 gap-1", children: MONTH_NAMES.map((month, index) => /* @__PURE__ */ jsx24(
3865
+ /* @__PURE__ */ jsxs19("div", { children: [
3866
+ /* @__PURE__ */ jsx26("h3", { className: "text-sm font-medium text-text-700 mb-2", children: "Selecionar M\xEAs" }),
3867
+ /* @__PURE__ */ jsx26("div", { className: "grid grid-cols-3 gap-1", children: MONTH_NAMES.map((month, index) => /* @__PURE__ */ jsx26(
3405
3868
  "button",
3406
3869
  {
3407
3870
  onClick: () => onMonthChange(index, currentDate.getFullYear()),
@@ -3454,11 +3917,11 @@ var Calendar = ({
3454
3917
  showActivities = true,
3455
3918
  className = ""
3456
3919
  }) => {
3457
- const [currentDate, setCurrentDate] = useState7(selectedDate || /* @__PURE__ */ new Date());
3458
- const [isMonthPickerOpen, setIsMonthPickerOpen] = useState7(false);
3459
- const monthPickerRef = useRef5(null);
3460
- const monthPickerContainerRef = useRef5(null);
3461
- useEffect5(() => {
3920
+ const [currentDate, setCurrentDate] = useState9(selectedDate || /* @__PURE__ */ new Date());
3921
+ const [isMonthPickerOpen, setIsMonthPickerOpen] = useState9(false);
3922
+ const monthPickerRef = useRef6(null);
3923
+ const monthPickerContainerRef = useRef6(null);
3924
+ useEffect8(() => {
3462
3925
  const handleClickOutside = (event) => {
3463
3926
  if (monthPickerContainerRef.current && !monthPickerContainerRef.current.contains(event.target)) {
3464
3927
  setIsMonthPickerOpen(false);
@@ -3533,28 +3996,28 @@ var Calendar = ({
3533
3996
  onDateSelect?.(day.date);
3534
3997
  };
3535
3998
  if (variant === "navigation") {
3536
- return /* @__PURE__ */ jsxs18("div", { className: cn("bg-background rounded-xl pt-6", className), children: [
3537
- /* @__PURE__ */ jsxs18("div", { className: "flex items-center justify-between mb-4 px-6", children: [
3538
- /* @__PURE__ */ jsxs18("div", { className: "relative", ref: monthPickerContainerRef, children: [
3539
- /* @__PURE__ */ jsxs18(
3999
+ return /* @__PURE__ */ jsxs19("div", { className: cn("bg-background rounded-xl pt-6", className), children: [
4000
+ /* @__PURE__ */ jsxs19("div", { className: "flex items-center justify-between mb-4 px-6", children: [
4001
+ /* @__PURE__ */ jsxs19("div", { className: "relative", ref: monthPickerContainerRef, children: [
4002
+ /* @__PURE__ */ jsxs19(
3540
4003
  "button",
3541
4004
  {
3542
4005
  onClick: toggleMonthPicker,
3543
4006
  className: "flex items-center group gap-1 rounded transition-colors cursor-pointer",
3544
4007
  children: [
3545
- /* @__PURE__ */ jsxs18("span", { className: "text-sm font-medium text-text-600 group-hover:text-primary-950", children: [
4008
+ /* @__PURE__ */ jsxs19("span", { className: "text-sm font-medium text-text-600 group-hover:text-primary-950", children: [
3546
4009
  MONTH_NAMES[currentDate.getMonth()],
3547
4010
  " ",
3548
4011
  currentDate.getFullYear()
3549
4012
  ] }),
3550
- /* @__PURE__ */ jsx24(
4013
+ /* @__PURE__ */ jsx26(
3551
4014
  "svg",
3552
4015
  {
3553
4016
  className: `w-4 h-4 text-primary-950 transition-transform ${isMonthPickerOpen ? "rotate-180" : ""}`,
3554
4017
  fill: "none",
3555
4018
  stroke: "currentColor",
3556
4019
  viewBox: "0 0 24 24",
3557
- children: /* @__PURE__ */ jsx24(
4020
+ children: /* @__PURE__ */ jsx26(
3558
4021
  "path",
3559
4022
  {
3560
4023
  strokeLinecap: "round",
@@ -3568,7 +4031,7 @@ var Calendar = ({
3568
4031
  ]
3569
4032
  }
3570
4033
  ),
3571
- isMonthPickerOpen && /* @__PURE__ */ jsx24(
4034
+ isMonthPickerOpen && /* @__PURE__ */ jsx26(
3572
4035
  MonthYearPicker,
3573
4036
  {
3574
4037
  monthPickerRef,
@@ -3579,21 +4042,21 @@ var Calendar = ({
3579
4042
  }
3580
4043
  )
3581
4044
  ] }),
3582
- /* @__PURE__ */ jsxs18("div", { className: "flex items-center gap-10", children: [
3583
- /* @__PURE__ */ jsx24(
4045
+ /* @__PURE__ */ jsxs19("div", { className: "flex items-center gap-10", children: [
4046
+ /* @__PURE__ */ jsx26(
3584
4047
  "button",
3585
4048
  {
3586
4049
  onClick: goToPreviousMonth,
3587
4050
  className: "p-1 rounded hover:bg-background-100 transition-colors",
3588
4051
  "aria-label": "M\xEAs anterior",
3589
- children: /* @__PURE__ */ jsx24(
4052
+ children: /* @__PURE__ */ jsx26(
3590
4053
  "svg",
3591
4054
  {
3592
4055
  className: "w-6 h-6 text-primary-950",
3593
4056
  fill: "none",
3594
4057
  stroke: "currentColor",
3595
4058
  viewBox: "0 0 24 24",
3596
- children: /* @__PURE__ */ jsx24(
4059
+ children: /* @__PURE__ */ jsx26(
3597
4060
  "path",
3598
4061
  {
3599
4062
  strokeLinecap: "round",
@@ -3606,20 +4069,20 @@ var Calendar = ({
3606
4069
  )
3607
4070
  }
3608
4071
  ),
3609
- /* @__PURE__ */ jsx24(
4072
+ /* @__PURE__ */ jsx26(
3610
4073
  "button",
3611
4074
  {
3612
4075
  onClick: goToNextMonth,
3613
4076
  className: "p-1 rounded hover:bg-background-100 transition-colors",
3614
4077
  "aria-label": "Pr\xF3ximo m\xEAs",
3615
- children: /* @__PURE__ */ jsx24(
4078
+ children: /* @__PURE__ */ jsx26(
3616
4079
  "svg",
3617
4080
  {
3618
4081
  className: "w-6 h-6 text-primary-950",
3619
4082
  fill: "none",
3620
4083
  stroke: "currentColor",
3621
4084
  viewBox: "0 0 24 24",
3622
- children: /* @__PURE__ */ jsx24(
4085
+ children: /* @__PURE__ */ jsx26(
3623
4086
  "path",
3624
4087
  {
3625
4088
  strokeLinecap: "round",
@@ -3634,7 +4097,7 @@ var Calendar = ({
3634
4097
  )
3635
4098
  ] })
3636
4099
  ] }),
3637
- /* @__PURE__ */ jsx24("div", { className: "grid grid-cols-7 gap-1 mb-2 px-3", children: WEEK_DAYS_SHORT.map((day, index) => /* @__PURE__ */ jsx24(
4100
+ /* @__PURE__ */ jsx26("div", { className: "grid grid-cols-7 gap-1 mb-2 px-3", children: WEEK_DAYS_SHORT.map((day, index) => /* @__PURE__ */ jsx26(
3638
4101
  "div",
3639
4102
  {
3640
4103
  className: "h-9 flex items-center justify-center text-xs font-normal text-text-600",
@@ -3642,13 +4105,13 @@ var Calendar = ({
3642
4105
  },
3643
4106
  `${day}-${index}`
3644
4107
  )) }),
3645
- /* @__PURE__ */ jsx24("div", { className: "grid grid-cols-7 gap-1 px-3", children: calendarData.map((day) => {
4108
+ /* @__PURE__ */ jsx26("div", { className: "grid grid-cols-7 gap-1 px-3", children: calendarData.map((day) => {
3646
4109
  if (!day.isCurrentMonth) {
3647
- return /* @__PURE__ */ jsx24(
4110
+ return /* @__PURE__ */ jsx26(
3648
4111
  "div",
3649
4112
  {
3650
4113
  className: "flex items-center justify-center",
3651
- children: /* @__PURE__ */ jsx24("div", { className: "w-9 h-9" })
4114
+ children: /* @__PURE__ */ jsx26("div", { className: "w-9 h-9" })
3652
4115
  },
3653
4116
  day.date.getTime()
3654
4117
  );
@@ -3664,11 +4127,11 @@ var Calendar = ({
3664
4127
  } else if (day.isSelected) {
3665
4128
  spanClass = "h-6 w-6 rounded-full bg-primary-950 text-text";
3666
4129
  }
3667
- return /* @__PURE__ */ jsx24(
4130
+ return /* @__PURE__ */ jsx26(
3668
4131
  "div",
3669
4132
  {
3670
4133
  className: "flex items-center justify-center",
3671
- children: /* @__PURE__ */ jsx24(
4134
+ children: /* @__PURE__ */ jsx26(
3672
4135
  "button",
3673
4136
  {
3674
4137
  className: `
@@ -3684,7 +4147,7 @@ var Calendar = ({
3684
4147
  "aria-label": `${day.date.getDate()} de ${MONTH_NAMES[day.date.getMonth()]}`,
3685
4148
  "aria-current": day.isToday ? "date" : void 0,
3686
4149
  tabIndex: 0,
3687
- children: /* @__PURE__ */ jsx24("span", { className: spanClass, children: day.date.getDate() })
4150
+ children: /* @__PURE__ */ jsx26("span", { className: spanClass, children: day.date.getDate() })
3688
4151
  }
3689
4152
  )
3690
4153
  },
@@ -3693,28 +4156,28 @@ var Calendar = ({
3693
4156
  }) })
3694
4157
  ] });
3695
4158
  }
3696
- return /* @__PURE__ */ jsxs18("div", { className: cn("bg-background rounded-xl p-4", className), children: [
3697
- /* @__PURE__ */ jsxs18("div", { className: "flex items-center justify-between mb-3.5", children: [
3698
- /* @__PURE__ */ jsxs18("div", { className: "relative", ref: monthPickerContainerRef, children: [
3699
- /* @__PURE__ */ jsxs18(
4159
+ return /* @__PURE__ */ jsxs19("div", { className: cn("bg-background rounded-xl p-4", className), children: [
4160
+ /* @__PURE__ */ jsxs19("div", { className: "flex items-center justify-between mb-3.5", children: [
4161
+ /* @__PURE__ */ jsxs19("div", { className: "relative", ref: monthPickerContainerRef, children: [
4162
+ /* @__PURE__ */ jsxs19(
3700
4163
  "button",
3701
4164
  {
3702
4165
  onClick: toggleMonthPicker,
3703
4166
  className: "flex items-center gap-2 hover:bg-background-100 rounded px-2 py-1 transition-colors",
3704
4167
  children: [
3705
- /* @__PURE__ */ jsxs18("h2", { className: "text-lg font-semibold text-text-950", children: [
4168
+ /* @__PURE__ */ jsxs19("h2", { className: "text-lg font-semibold text-text-950", children: [
3706
4169
  MONTH_NAMES[currentDate.getMonth()],
3707
4170
  " ",
3708
4171
  currentDate.getFullYear()
3709
4172
  ] }),
3710
- /* @__PURE__ */ jsx24(
4173
+ /* @__PURE__ */ jsx26(
3711
4174
  "svg",
3712
4175
  {
3713
4176
  className: `w-4 h-4 text-text-400 transition-transform ${isMonthPickerOpen ? "rotate-180" : ""}`,
3714
4177
  fill: "none",
3715
4178
  stroke: "currentColor",
3716
4179
  viewBox: "0 0 24 24",
3717
- children: /* @__PURE__ */ jsx24(
4180
+ children: /* @__PURE__ */ jsx26(
3718
4181
  "path",
3719
4182
  {
3720
4183
  strokeLinecap: "round",
@@ -3728,7 +4191,7 @@ var Calendar = ({
3728
4191
  ]
3729
4192
  }
3730
4193
  ),
3731
- isMonthPickerOpen && /* @__PURE__ */ jsx24(
4194
+ isMonthPickerOpen && /* @__PURE__ */ jsx26(
3732
4195
  MonthYearPicker,
3733
4196
  {
3734
4197
  monthPickerRef,
@@ -3739,21 +4202,21 @@ var Calendar = ({
3739
4202
  }
3740
4203
  )
3741
4204
  ] }),
3742
- /* @__PURE__ */ jsxs18("div", { className: "flex items-center gap-1", children: [
3743
- /* @__PURE__ */ jsx24(
4205
+ /* @__PURE__ */ jsxs19("div", { className: "flex items-center gap-1", children: [
4206
+ /* @__PURE__ */ jsx26(
3744
4207
  "button",
3745
4208
  {
3746
4209
  onClick: goToPreviousMonth,
3747
4210
  className: "p-1 rounded-md hover:bg-background-100 transition-colors",
3748
4211
  "aria-label": "M\xEAs anterior",
3749
- children: /* @__PURE__ */ jsx24(
4212
+ children: /* @__PURE__ */ jsx26(
3750
4213
  "svg",
3751
4214
  {
3752
4215
  className: "w-6 h-6 text-primary-950",
3753
4216
  fill: "none",
3754
4217
  stroke: "currentColor",
3755
4218
  viewBox: "0 0 24 24",
3756
- children: /* @__PURE__ */ jsx24(
4219
+ children: /* @__PURE__ */ jsx26(
3757
4220
  "path",
3758
4221
  {
3759
4222
  strokeLinecap: "round",
@@ -3766,20 +4229,20 @@ var Calendar = ({
3766
4229
  )
3767
4230
  }
3768
4231
  ),
3769
- /* @__PURE__ */ jsx24(
4232
+ /* @__PURE__ */ jsx26(
3770
4233
  "button",
3771
4234
  {
3772
4235
  onClick: goToNextMonth,
3773
4236
  className: "p-1 rounded-md hover:bg-background-100 transition-colors",
3774
4237
  "aria-label": "Pr\xF3ximo m\xEAs",
3775
- children: /* @__PURE__ */ jsx24(
4238
+ children: /* @__PURE__ */ jsx26(
3776
4239
  "svg",
3777
4240
  {
3778
4241
  className: "w-6 h-6 text-primary-950",
3779
4242
  fill: "none",
3780
4243
  stroke: "currentColor",
3781
4244
  viewBox: "0 0 24 24",
3782
- children: /* @__PURE__ */ jsx24(
4245
+ children: /* @__PURE__ */ jsx26(
3783
4246
  "path",
3784
4247
  {
3785
4248
  strokeLinecap: "round",
@@ -3794,301 +4257,78 @@ var Calendar = ({
3794
4257
  )
3795
4258
  ] })
3796
4259
  ] }),
3797
- /* @__PURE__ */ jsx24("div", { className: "grid grid-cols-7 mb-2", children: WEEK_DAYS.map((day) => /* @__PURE__ */ jsx24(
4260
+ /* @__PURE__ */ jsx26("div", { className: "grid grid-cols-7 mb-2", children: WEEK_DAYS.map((day) => /* @__PURE__ */ jsx26(
3798
4261
  "div",
3799
4262
  {
3800
4263
  className: "h-4 flex items-center justify-center text-xs font-semibold text-text-500",
3801
4264
  children: day
3802
4265
  },
3803
4266
  day
3804
- )) }),
3805
- /* @__PURE__ */ jsx24("div", { className: "grid grid-cols-7", children: calendarData.map((day) => {
3806
- if (!day.isCurrentMonth) {
3807
- return /* @__PURE__ */ jsx24(
3808
- "div",
3809
- {
3810
- className: "flex items-center justify-center",
3811
- children: /* @__PURE__ */ jsx24("div", { className: "w-10 h-10" })
3812
- },
3813
- day.date.getTime()
3814
- );
3815
- }
3816
- const { dayStyle, textStyle } = getDayStyles(
3817
- day,
3818
- variant,
3819
- showActivities
3820
- );
3821
- return /* @__PURE__ */ jsx24(
3822
- "div",
3823
- {
3824
- className: "flex items-center justify-center",
3825
- children: /* @__PURE__ */ jsx24(
3826
- "button",
3827
- {
3828
- className: `
3829
- w-9 h-9
3830
- flex items-center justify-center
3831
- text-lg font-normal
3832
- cursor-pointer
3833
- rounded-full
3834
- focus:outline-none focus:ring-2 focus:ring-primary-600 focus:ring-offset-1
3835
- ${dayStyle}
3836
- ${textStyle}
3837
- `,
3838
- onClick: () => handleDateSelect(day),
3839
- "aria-label": `${day.date.getDate()} de ${MONTH_NAMES[day.date.getMonth()]}`,
3840
- "aria-current": day.isToday ? "date" : void 0,
3841
- tabIndex: 0,
3842
- children: day.date.getDate()
3843
- }
3844
- )
3845
- },
3846
- day.date.getTime()
3847
- );
3848
- }) })
3849
- ] });
3850
- };
3851
- var Calendar_default = Calendar;
3852
-
3853
- // src/components/Modal/Modal.tsx
3854
- import { useEffect as useEffect6, useId as useId7 } from "react";
3855
- import { X as X3 } from "phosphor-react";
3856
-
3857
- // src/components/Modal/utils/videoUtils.ts
3858
- var isYouTubeUrl = (url) => {
3859
- const youtubeRegex = /^(https?:\/\/)?((www|m|music)\.)?(youtube\.com|youtu\.be|youtube-nocookie\.com)\/.+/i;
3860
- return youtubeRegex.test(url);
3861
- };
3862
- var isValidYouTubeHost = (host) => {
3863
- if (host === "youtu.be") return "youtu.be";
3864
- const isValidYouTubeCom = host === "youtube.com" || host.endsWith(".youtube.com") && /^(www|m|music)\.youtube\.com$/.test(host);
3865
- if (isValidYouTubeCom) return "youtube";
3866
- const isValidNoCookie = host === "youtube-nocookie.com" || host.endsWith(".youtube-nocookie.com") && /^(www|m|music)\.youtube-nocookie\.com$/.test(host);
3867
- if (isValidNoCookie) return "nocookie";
3868
- return null;
3869
- };
3870
- var extractYoutuBeId = (pathname) => {
3871
- const firstSeg = pathname.split("/").filter(Boolean)[0];
3872
- return firstSeg || null;
3873
- };
3874
- var extractYouTubeId = (pathname, searchParams) => {
3875
- const parts = pathname.split("/").filter(Boolean);
3876
- const [first, second] = parts;
3877
- if (first === "embed" && second) return second;
3878
- if (first === "shorts" && second) return second;
3879
- if (first === "live" && second) return second;
3880
- const v = searchParams.get("v");
3881
- if (v) return v;
3882
- return null;
3883
- };
3884
- var getYouTubeVideoId = (url) => {
3885
- try {
3886
- const u = new URL(url);
3887
- const hostType = isValidYouTubeHost(u.hostname.toLowerCase());
3888
- if (!hostType) return null;
3889
- if (hostType === "youtu.be") {
3890
- return extractYoutuBeId(u.pathname);
3891
- }
3892
- return extractYouTubeId(u.pathname, u.searchParams);
3893
- } catch {
3894
- return null;
3895
- }
3896
- };
3897
- var getYouTubeEmbedUrl = (videoId) => {
3898
- return `https://www.youtube-nocookie.com/embed/${videoId}?autoplay=0&rel=0&modestbranding=1`;
3899
- };
3900
-
3901
- // src/components/Modal/Modal.tsx
3902
- import { jsx as jsx25, jsxs as jsxs19 } from "react/jsx-runtime";
3903
- var SIZE_CLASSES10 = {
3904
- xs: "max-w-[360px]",
3905
- sm: "max-w-[420px]",
3906
- md: "max-w-[510px]",
3907
- lg: "max-w-[640px]",
3908
- xl: "max-w-[970px]"
3909
- };
3910
- var Modal = ({
3911
- isOpen,
3912
- onClose,
3913
- title,
3914
- children,
3915
- size = "md",
3916
- className = "",
3917
- closeOnEscape = true,
3918
- footer,
3919
- hideCloseButton = false,
3920
- variant = "default",
3921
- description,
3922
- image,
3923
- imageAlt,
3924
- actionLink,
3925
- actionLabel
3926
- }) => {
3927
- const titleId = useId7();
3928
- useEffect6(() => {
3929
- if (!isOpen || !closeOnEscape) return;
3930
- const handleEscape = (event) => {
3931
- if (event.key === "Escape") {
3932
- onClose();
3933
- }
3934
- };
3935
- document.addEventListener("keydown", handleEscape);
3936
- return () => document.removeEventListener("keydown", handleEscape);
3937
- }, [isOpen, closeOnEscape, onClose]);
3938
- useEffect6(() => {
3939
- const originalOverflow = document.body.style.overflow;
3940
- if (isOpen) {
3941
- document.body.style.overflow = "hidden";
3942
- } else {
3943
- document.body.style.overflow = originalOverflow;
3944
- }
3945
- return () => {
3946
- document.body.style.overflow = originalOverflow;
3947
- };
3948
- }, [isOpen]);
3949
- if (!isOpen) return null;
3950
- const sizeClasses = SIZE_CLASSES10[size];
3951
- const baseClasses = "bg-secondary-50 rounded-3xl shadow-hard-shadow-2 border border-border-100 w-full mx-4";
3952
- const dialogResetClasses = "p-0 m-0 border-none outline-none max-h-none static";
3953
- const modalClasses = cn(
3954
- baseClasses,
3955
- sizeClasses,
3956
- dialogResetClasses,
3957
- className
3958
- );
3959
- const normalizeUrl = (href) => /^https?:\/\//i.test(href) ? href : `https://${href}`;
3960
- const handleActionClick = () => {
3961
- if (actionLink) {
3962
- window.open(normalizeUrl(actionLink), "_blank", "noopener,noreferrer");
3963
- }
3964
- };
3965
- if (variant === "activity") {
3966
- return /* @__PURE__ */ jsx25("div", { className: "fixed inset-0 z-50 flex items-center justify-center bg-black/60 backdrop-blur-xs border-none p-0 m-0 w-full cursor-default", children: /* @__PURE__ */ jsxs19(
3967
- "dialog",
3968
- {
3969
- className: modalClasses,
3970
- "aria-labelledby": titleId,
3971
- "aria-modal": "true",
3972
- open: true,
3973
- children: [
3974
- /* @__PURE__ */ jsx25("div", { className: "flex justify-end p-6 pb-0", children: !hideCloseButton && /* @__PURE__ */ jsx25(
3975
- "button",
3976
- {
3977
- onClick: onClose,
3978
- className: "p-1 text-text-500 hover:text-text-700 hover:bg-background-50 rounded-md transition-colors focus:outline-none focus:ring-2 focus:ring-indicator-info focus:ring-offset-2",
3979
- "aria-label": "Fechar modal",
3980
- children: /* @__PURE__ */ jsx25(X3, { size: 18 })
3981
- }
3982
- ) }),
3983
- /* @__PURE__ */ jsxs19("div", { className: "flex flex-col items-center px-6 pb-6 gap-5", children: [
3984
- image && /* @__PURE__ */ jsx25("div", { className: "flex justify-center", children: /* @__PURE__ */ jsx25(
3985
- "img",
3986
- {
3987
- src: image,
3988
- alt: imageAlt ?? "",
3989
- className: "w-[122px] h-[122px] object-contain"
3990
- }
3991
- ) }),
3992
- /* @__PURE__ */ jsx25(
3993
- "h2",
3994
- {
3995
- id: titleId,
3996
- className: "text-lg font-semibold text-text-950 text-center",
3997
- children: title
3998
- }
3999
- ),
4000
- description && /* @__PURE__ */ jsx25("p", { className: "text-sm font-normal text-text-400 text-center max-w-md leading-[21px]", children: description }),
4001
- actionLink && /* @__PURE__ */ jsxs19("div", { className: "w-full", children: [
4002
- (() => {
4003
- const normalized = normalizeUrl(actionLink);
4004
- const isYT = isYouTubeUrl(normalized);
4005
- if (!isYT) return null;
4006
- const id = getYouTubeVideoId(normalized);
4007
- if (!id) {
4008
- return /* @__PURE__ */ jsx25(
4009
- Button_default,
4010
- {
4011
- variant: "solid",
4012
- action: "primary",
4013
- size: "large",
4014
- className: "w-full",
4015
- onClick: handleActionClick,
4016
- children: actionLabel || "Iniciar Atividade"
4017
- }
4018
- );
4019
- }
4020
- return /* @__PURE__ */ jsx25(
4021
- "iframe",
4022
- {
4023
- src: getYouTubeEmbedUrl(id),
4024
- className: "w-full aspect-video rounded-lg",
4025
- allowFullScreen: true,
4026
- allow: "accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture",
4027
- title: "V\xEDdeo YouTube"
4028
- }
4029
- );
4030
- })(),
4031
- !isYouTubeUrl(normalizeUrl(actionLink)) && /* @__PURE__ */ jsx25(
4032
- Button_default,
4033
- {
4034
- variant: "solid",
4035
- action: "primary",
4036
- size: "large",
4037
- className: "w-full",
4038
- onClick: handleActionClick,
4039
- children: actionLabel || "Iniciar Atividade"
4040
- }
4041
- )
4042
- ] })
4043
- ] })
4044
- ]
4267
+ )) }),
4268
+ /* @__PURE__ */ jsx26("div", { className: "grid grid-cols-7", children: calendarData.map((day) => {
4269
+ if (!day.isCurrentMonth) {
4270
+ return /* @__PURE__ */ jsx26(
4271
+ "div",
4272
+ {
4273
+ className: "flex items-center justify-center",
4274
+ children: /* @__PURE__ */ jsx26("div", { className: "w-10 h-10" })
4275
+ },
4276
+ day.date.getTime()
4277
+ );
4045
4278
  }
4046
- ) });
4047
- }
4048
- return /* @__PURE__ */ jsx25("div", { className: "fixed inset-0 z-50 flex items-center justify-center bg-black/60 backdrop-blur-xs border-none p-0 m-0 w-full cursor-default", children: /* @__PURE__ */ jsxs19(
4049
- "dialog",
4050
- {
4051
- className: modalClasses,
4052
- "aria-labelledby": titleId,
4053
- "aria-modal": "true",
4054
- open: true,
4055
- children: [
4056
- /* @__PURE__ */ jsxs19("div", { className: "flex items-center justify-between px-6 py-6", children: [
4057
- /* @__PURE__ */ jsx25("h2", { id: titleId, className: "text-lg font-semibold text-text-950", children: title }),
4058
- !hideCloseButton && /* @__PURE__ */ jsx25(
4279
+ const { dayStyle, textStyle } = getDayStyles(
4280
+ day,
4281
+ variant,
4282
+ showActivities
4283
+ );
4284
+ return /* @__PURE__ */ jsx26(
4285
+ "div",
4286
+ {
4287
+ className: "flex items-center justify-center",
4288
+ children: /* @__PURE__ */ jsx26(
4059
4289
  "button",
4060
4290
  {
4061
- onClick: onClose,
4062
- className: "p-1 text-text-500 hover:text-text-700 hover:bg-background-50 rounded-md transition-colors focus:outline-none focus:ring-2 focus:ring-indicator-info focus:ring-offset-2",
4063
- "aria-label": "Fechar modal",
4064
- children: /* @__PURE__ */ jsx25(X3, { size: 18 })
4291
+ className: `
4292
+ w-9 h-9
4293
+ flex items-center justify-center
4294
+ text-lg font-normal
4295
+ cursor-pointer
4296
+ rounded-full
4297
+ focus:outline-none focus:ring-2 focus:ring-primary-600 focus:ring-offset-1
4298
+ ${dayStyle}
4299
+ ${textStyle}
4300
+ `,
4301
+ onClick: () => handleDateSelect(day),
4302
+ "aria-label": `${day.date.getDate()} de ${MONTH_NAMES[day.date.getMonth()]}`,
4303
+ "aria-current": day.isToday ? "date" : void 0,
4304
+ tabIndex: 0,
4305
+ children: day.date.getDate()
4065
4306
  }
4066
4307
  )
4067
- ] }),
4068
- children && /* @__PURE__ */ jsx25("div", { className: "px-6 pb-6", children: /* @__PURE__ */ jsx25("div", { className: "text-text-500 font-normal text-sm leading-6", children }) }),
4069
- footer && /* @__PURE__ */ jsx25("div", { className: "flex justify-end gap-3 px-6 pb-6", children: footer })
4070
- ]
4071
- }
4072
- ) });
4308
+ },
4309
+ day.date.getTime()
4310
+ );
4311
+ }) })
4312
+ ] });
4073
4313
  };
4074
- var Modal_default = Modal;
4314
+ var Calendar_default = Calendar;
4075
4315
 
4076
4316
  // src/components/Accordation/Accordation.tsx
4077
4317
  import {
4078
4318
  forwardRef as forwardRef13,
4079
4319
  useId as useId8,
4080
- useState as useState9
4320
+ useState as useState11
4081
4321
  } from "react";
4082
4322
 
4083
4323
  // src/components/Card/Card.tsx
4084
4324
  import {
4085
4325
  forwardRef as forwardRef12,
4086
- Fragment as Fragment3,
4087
- useState as useState8,
4088
- useRef as useRef6
4326
+ Fragment as Fragment4,
4327
+ useState as useState10,
4328
+ useRef as useRef7
4089
4329
  } from "react";
4090
4330
  import {
4091
- CaretRight,
4331
+ CaretRight as CaretRight2,
4092
4332
  ChatCircleText,
4093
4333
  CheckCircle as CheckCircle3,
4094
4334
  Clock,
@@ -4102,7 +4342,7 @@ import {
4102
4342
 
4103
4343
  // src/components/IconRender/IconRender.tsx
4104
4344
  import * as PhosphorIcons from "phosphor-react";
4105
- import { jsx as jsx26, jsxs as jsxs20 } from "react/jsx-runtime";
4345
+ import { jsx as jsx27, jsxs as jsxs20 } from "react/jsx-runtime";
4106
4346
  var ChatPT = ({ size, color }) => /* @__PURE__ */ jsxs20(
4107
4347
  "svg",
4108
4348
  {
@@ -4112,21 +4352,21 @@ var ChatPT = ({ size, color }) => /* @__PURE__ */ jsxs20(
4112
4352
  fill: "none",
4113
4353
  xmlns: "http://www.w3.org/2000/svg",
4114
4354
  children: [
4115
- /* @__PURE__ */ jsx26(
4355
+ /* @__PURE__ */ jsx27(
4116
4356
  "path",
4117
4357
  {
4118
4358
  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",
4119
4359
  fill: color
4120
4360
  }
4121
4361
  ),
4122
- /* @__PURE__ */ jsx26(
4362
+ /* @__PURE__ */ jsx27(
4123
4363
  "path",
4124
4364
  {
4125
4365
  d: "M21.1758 12V20.5312H19.7168V12H21.1758ZM23.8535 12V13.1719H17.0625V12H23.8535Z",
4126
4366
  fill: color
4127
4367
  }
4128
4368
  ),
4129
- /* @__PURE__ */ jsx26(
4369
+ /* @__PURE__ */ jsx27(
4130
4370
  "path",
4131
4371
  {
4132
4372
  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",
@@ -4145,21 +4385,21 @@ var ChatEN = ({ size, color }) => /* @__PURE__ */ jsxs20(
4145
4385
  fill: "none",
4146
4386
  xmlns: "http://www.w3.org/2000/svg",
4147
4387
  children: [
4148
- /* @__PURE__ */ jsx26(
4388
+ /* @__PURE__ */ jsx27(
4149
4389
  "path",
4150
4390
  {
4151
4391
  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",
4152
4392
  fill: color
4153
4393
  }
4154
4394
  ),
4155
- /* @__PURE__ */ jsx26(
4395
+ /* @__PURE__ */ jsx27(
4156
4396
  "path",
4157
4397
  {
4158
4398
  d: "M22.5488 12V20.5312H21.0781L17.252 14.4199V20.5312H15.7812V12H17.252L21.0898 18.123V12H22.5488Z",
4159
4399
  fill: color
4160
4400
  }
4161
4401
  ),
4162
- /* @__PURE__ */ jsx26(
4402
+ /* @__PURE__ */ jsx27(
4163
4403
  "path",
4164
4404
  {
4165
4405
  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",
@@ -4178,21 +4418,21 @@ var ChatES = ({ size, color }) => /* @__PURE__ */ jsxs20(
4178
4418
  fill: "none",
4179
4419
  xmlns: "http://www.w3.org/2000/svg",
4180
4420
  children: [
4181
- /* @__PURE__ */ jsx26(
4421
+ /* @__PURE__ */ jsx27(
4182
4422
  "path",
4183
4423
  {
4184
4424
  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",
4185
4425
  fill: color
4186
4426
  }
4187
4427
  ),
4188
- /* @__PURE__ */ jsx26(
4428
+ /* @__PURE__ */ jsx27(
4189
4429
  "path",
4190
4430
  {
4191
4431
  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",
4192
4432
  fill: color
4193
4433
  }
4194
4434
  ),
4195
- /* @__PURE__ */ jsx26(
4435
+ /* @__PURE__ */ jsx27(
4196
4436
  "path",
4197
4437
  {
4198
4438
  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",
@@ -4210,21 +4450,21 @@ var IconRender = ({
4210
4450
  }) => {
4211
4451
  switch (iconName) {
4212
4452
  case "Chat_PT":
4213
- return /* @__PURE__ */ jsx26(ChatPT, { size, color });
4453
+ return /* @__PURE__ */ jsx27(ChatPT, { size, color });
4214
4454
  case "Chat_EN":
4215
- return /* @__PURE__ */ jsx26(ChatEN, { size, color });
4455
+ return /* @__PURE__ */ jsx27(ChatEN, { size, color });
4216
4456
  case "Chat_ES":
4217
- return /* @__PURE__ */ jsx26(ChatES, { size, color });
4457
+ return /* @__PURE__ */ jsx27(ChatES, { size, color });
4218
4458
  default: {
4219
4459
  const IconComponent = PhosphorIcons[iconName] || PhosphorIcons.Question;
4220
- return /* @__PURE__ */ jsx26(IconComponent, { size, color, weight });
4460
+ return /* @__PURE__ */ jsx27(IconComponent, { size, color, weight });
4221
4461
  }
4222
4462
  }
4223
4463
  };
4224
4464
  var IconRender_default = IconRender;
4225
4465
 
4226
4466
  // src/components/Card/Card.tsx
4227
- import { Fragment as Fragment4, jsx as jsx27, jsxs as jsxs21 } from "react/jsx-runtime";
4467
+ import { Fragment as Fragment5, jsx as jsx28, jsxs as jsxs21 } from "react/jsx-runtime";
4228
4468
  var CARD_BASE_CLASSES = {
4229
4469
  default: "w-full bg-background border border-border-50 rounded-xl",
4230
4470
  compact: "w-full bg-background border border-border-50 rounded-lg",
@@ -4266,7 +4506,7 @@ var CardBase = forwardRef12(
4266
4506
  const minHeightClasses = CARD_MIN_HEIGHT_CLASSES[minHeight];
4267
4507
  const layoutClasses = CARD_LAYOUT_CLASSES[layout];
4268
4508
  const cursorClasses = CARD_CURSOR_CLASSES[cursor];
4269
- return /* @__PURE__ */ jsx27(
4509
+ return /* @__PURE__ */ jsx28(
4270
4510
  "div",
4271
4511
  {
4272
4512
  ref,
@@ -4343,7 +4583,7 @@ var CardActivitiesResults = forwardRef12(
4343
4583
  extended ? "rounded-t-xl" : "rounded-xl"
4344
4584
  ),
4345
4585
  children: [
4346
- /* @__PURE__ */ jsx27(
4586
+ /* @__PURE__ */ jsx28(
4347
4587
  "span",
4348
4588
  {
4349
4589
  className: cn(
@@ -4353,7 +4593,7 @@ var CardActivitiesResults = forwardRef12(
4353
4593
  children: icon
4354
4594
  }
4355
4595
  ),
4356
- /* @__PURE__ */ jsx27(
4596
+ /* @__PURE__ */ jsx28(
4357
4597
  Text_default,
4358
4598
  {
4359
4599
  size: "2xs",
@@ -4362,7 +4602,7 @@ var CardActivitiesResults = forwardRef12(
4362
4602
  children: title
4363
4603
  }
4364
4604
  ),
4365
- /* @__PURE__ */ jsx27(
4605
+ /* @__PURE__ */ jsx28(
4366
4606
  "p",
4367
4607
  {
4368
4608
  className: cn("text-lg font-bold truncate", actionSubTitleClasses),
@@ -4373,7 +4613,7 @@ var CardActivitiesResults = forwardRef12(
4373
4613
  }
4374
4614
  ),
4375
4615
  extended && /* @__PURE__ */ jsxs21("div", { className: "flex flex-col items-center gap-2.5 pb-9.5 pt-2.5", children: [
4376
- /* @__PURE__ */ jsx27(
4616
+ /* @__PURE__ */ jsx28(
4377
4617
  "p",
4378
4618
  {
4379
4619
  className: cn(
@@ -4383,7 +4623,7 @@ var CardActivitiesResults = forwardRef12(
4383
4623
  children: header
4384
4624
  }
4385
4625
  ),
4386
- /* @__PURE__ */ jsx27(Badge_default, { size: "large", action: "info", children: description })
4626
+ /* @__PURE__ */ jsx28(Badge_default, { size: "large", action: "info", children: description })
4387
4627
  ] })
4388
4628
  ]
4389
4629
  }
@@ -4413,9 +4653,9 @@ var CardQuestions = forwardRef12(
4413
4653
  ...props,
4414
4654
  children: [
4415
4655
  /* @__PURE__ */ jsxs21("section", { className: "flex flex-col gap-1 flex-1 min-w-0", children: [
4416
- /* @__PURE__ */ jsx27("p", { className: "font-bold text-xs text-text-950 truncate", children: header }),
4656
+ /* @__PURE__ */ jsx28("p", { className: "font-bold text-xs text-text-950 truncate", children: header }),
4417
4657
  /* @__PURE__ */ jsxs21("div", { className: "flex flex-row gap-6 items-center", children: [
4418
- /* @__PURE__ */ jsx27(
4658
+ /* @__PURE__ */ jsx28(
4419
4659
  Badge_default,
4420
4660
  {
4421
4661
  size: "medium",
@@ -4426,11 +4666,11 @@ var CardQuestions = forwardRef12(
4426
4666
  ),
4427
4667
  /* @__PURE__ */ jsxs21("span", { className: "flex flex-row items-center gap-1 text-text-700 text-xs", children: [
4428
4668
  isDone ? "Nota" : "Sem nota",
4429
- isDone && /* @__PURE__ */ jsx27(Badge_default, { size: "medium", action: "success", children: "00" })
4669
+ isDone && /* @__PURE__ */ jsx28(Badge_default, { size: "medium", action: "success", children: "00" })
4430
4670
  ] })
4431
4671
  ] })
4432
4672
  ] }),
4433
- /* @__PURE__ */ jsx27("span", { className: "flex-shrink-0", children: /* @__PURE__ */ jsx27(
4673
+ /* @__PURE__ */ jsx28("span", { className: "flex-shrink-0", children: /* @__PURE__ */ jsx28(
4434
4674
  Button_default,
4435
4675
  {
4436
4676
  size: "extra-small",
@@ -4461,19 +4701,19 @@ var CardProgress = forwardRef12(
4461
4701
  }, ref) => {
4462
4702
  const isHorizontal = direction === "horizontal";
4463
4703
  const contentComponent = {
4464
- horizontal: /* @__PURE__ */ jsxs21(Fragment4, { children: [
4704
+ horizontal: /* @__PURE__ */ jsxs21(Fragment5, { children: [
4465
4705
  showDates && /* @__PURE__ */ jsxs21("div", { className: "flex flex-row gap-6 items-center", children: [
4466
4706
  initialDate && /* @__PURE__ */ jsxs21("span", { className: "flex flex-row gap-1 items-center text-2xs", children: [
4467
- /* @__PURE__ */ jsx27("p", { className: "text-text-800 font-semibold", children: "In\xEDcio" }),
4468
- /* @__PURE__ */ jsx27("p", { className: "text-text-600", children: initialDate })
4707
+ /* @__PURE__ */ jsx28("p", { className: "text-text-800 font-semibold", children: "In\xEDcio" }),
4708
+ /* @__PURE__ */ jsx28("p", { className: "text-text-600", children: initialDate })
4469
4709
  ] }),
4470
4710
  endDate && /* @__PURE__ */ jsxs21("span", { className: "flex flex-row gap-1 items-center text-2xs", children: [
4471
- /* @__PURE__ */ jsx27("p", { className: "text-text-800 font-semibold", children: "Fim" }),
4472
- /* @__PURE__ */ jsx27("p", { className: "text-text-600", children: endDate })
4711
+ /* @__PURE__ */ jsx28("p", { className: "text-text-800 font-semibold", children: "Fim" }),
4712
+ /* @__PURE__ */ jsx28("p", { className: "text-text-600", children: endDate })
4473
4713
  ] })
4474
4714
  ] }),
4475
4715
  /* @__PURE__ */ jsxs21("span", { className: "grid grid-cols-[1fr_auto] items-center gap-2", children: [
4476
- /* @__PURE__ */ jsx27(
4716
+ /* @__PURE__ */ jsx28(
4477
4717
  ProgressBar_default,
4478
4718
  {
4479
4719
  size: "small",
@@ -4498,7 +4738,7 @@ var CardProgress = forwardRef12(
4498
4738
  )
4499
4739
  ] })
4500
4740
  ] }),
4501
- vertical: /* @__PURE__ */ jsx27("p", { className: "text-sm text-text-800", children: subhead })
4741
+ vertical: /* @__PURE__ */ jsx28("p", { className: "text-sm text-text-800", children: subhead })
4502
4742
  };
4503
4743
  return /* @__PURE__ */ jsxs21(
4504
4744
  CardBase,
@@ -4511,7 +4751,7 @@ var CardProgress = forwardRef12(
4511
4751
  className: cn(isHorizontal ? "h-20" : "", className),
4512
4752
  ...props,
4513
4753
  children: [
4514
- /* @__PURE__ */ jsx27(
4754
+ /* @__PURE__ */ jsx28(
4515
4755
  "div",
4516
4756
  {
4517
4757
  className: cn(
@@ -4532,7 +4772,7 @@ var CardProgress = forwardRef12(
4532
4772
  !isHorizontal && "gap-4"
4533
4773
  ),
4534
4774
  children: [
4535
- /* @__PURE__ */ jsx27(Text_default, { size: "sm", weight: "bold", className: "text-text-950 truncate", children: header }),
4775
+ /* @__PURE__ */ jsx28(Text_default, { size: "sm", weight: "bold", className: "text-text-950 truncate", children: header }),
4536
4776
  contentComponent[direction]
4537
4777
  ]
4538
4778
  }
@@ -4563,13 +4803,13 @@ var CardTopic = forwardRef12(
4563
4803
  className: cn("justify-center gap-2 py-2 px-4", className),
4564
4804
  ...props,
4565
4805
  children: [
4566
- subHead && /* @__PURE__ */ jsx27("span", { className: "text-text-600 text-2xs flex flex-row gap-1", children: subHead.map((text, index) => /* @__PURE__ */ jsxs21(Fragment3, { children: [
4567
- /* @__PURE__ */ jsx27("p", { children: text }),
4568
- index < subHead.length - 1 && /* @__PURE__ */ jsx27("p", { children: "\u2022" })
4806
+ subHead && /* @__PURE__ */ jsx28("span", { className: "text-text-600 text-2xs flex flex-row gap-1", children: subHead.map((text, index) => /* @__PURE__ */ jsxs21(Fragment4, { children: [
4807
+ /* @__PURE__ */ jsx28("p", { children: text }),
4808
+ index < subHead.length - 1 && /* @__PURE__ */ jsx28("p", { children: "\u2022" })
4569
4809
  ] }, `${text} - ${index}`)) }),
4570
- /* @__PURE__ */ jsx27("p", { className: "text-sm text-text-950 font-bold truncate", children: header }),
4810
+ /* @__PURE__ */ jsx28("p", { className: "text-sm text-text-950 font-bold truncate", children: header }),
4571
4811
  /* @__PURE__ */ jsxs21("span", { className: "grid grid-cols-[1fr_auto] items-center gap-2", children: [
4572
- /* @__PURE__ */ jsx27(
4812
+ /* @__PURE__ */ jsx28(
4573
4813
  ProgressBar_default,
4574
4814
  {
4575
4815
  size: "small",
@@ -4628,8 +4868,8 @@ var CardPerformance = forwardRef12(
4628
4868
  children: [
4629
4869
  /* @__PURE__ */ jsxs21("div", { className: "w-full flex flex-col justify-between gap-2", children: [
4630
4870
  /* @__PURE__ */ jsxs21("div", { className: "flex flex-row justify-between items-center gap-2", children: [
4631
- /* @__PURE__ */ jsx27("p", { className: "text-lg font-bold text-text-950 truncate flex-1 min-w-0", children: header }),
4632
- actionVariant === "button" && /* @__PURE__ */ jsx27(
4871
+ /* @__PURE__ */ jsx28("p", { className: "text-lg font-bold text-text-950 truncate flex-1 min-w-0", children: header }),
4872
+ actionVariant === "button" && /* @__PURE__ */ jsx28(
4633
4873
  Button_default,
4634
4874
  {
4635
4875
  variant: "outline",
@@ -4640,17 +4880,17 @@ var CardPerformance = forwardRef12(
4640
4880
  }
4641
4881
  )
4642
4882
  ] }),
4643
- /* @__PURE__ */ jsx27("div", { className: "w-full", children: hasProgress ? /* @__PURE__ */ jsx27(
4883
+ /* @__PURE__ */ jsx28("div", { className: "w-full", children: hasProgress ? /* @__PURE__ */ jsx28(
4644
4884
  ProgressBar_default,
4645
4885
  {
4646
4886
  value: progress,
4647
4887
  label: `${progress}% ${labelProgress}`,
4648
4888
  variant: progressVariant
4649
4889
  }
4650
- ) : /* @__PURE__ */ jsx27("p", { className: "text-xs text-text-600 truncate", children: description }) })
4890
+ ) : /* @__PURE__ */ jsx28("p", { className: "text-xs text-text-600 truncate", children: description }) })
4651
4891
  ] }),
4652
- actionVariant == "caret" && /* @__PURE__ */ jsx27(
4653
- CaretRight,
4892
+ actionVariant == "caret" && /* @__PURE__ */ jsx28(
4893
+ CaretRight2,
4654
4894
  {
4655
4895
  className: "size-4.5 text-text-800 cursor-pointer",
4656
4896
  "data-testid": "caret-icon"
@@ -4683,7 +4923,7 @@ var CardResults = forwardRef12(
4683
4923
  className: cn("items-stretch cursor-pointer pr-4", className),
4684
4924
  ...props,
4685
4925
  children: [
4686
- /* @__PURE__ */ jsx27(
4926
+ /* @__PURE__ */ jsx28(
4687
4927
  "div",
4688
4928
  {
4689
4929
  className: cn(
@@ -4692,7 +4932,7 @@ var CardResults = forwardRef12(
4692
4932
  style: {
4693
4933
  backgroundColor: color
4694
4934
  },
4695
- children: /* @__PURE__ */ jsx27(IconRender_default, { iconName: icon, color: "currentColor", size: 20 })
4935
+ children: /* @__PURE__ */ jsx28(IconRender_default, { iconName: icon, color: "currentColor", size: 20 })
4696
4936
  }
4697
4937
  ),
4698
4938
  /* @__PURE__ */ jsxs21("div", { className: "w-full flex flex-row justify-between items-center", children: [
@@ -4704,7 +4944,7 @@ var CardResults = forwardRef12(
4704
4944
  isRow ? "flex-row items-center gap-2" : "flex-col"
4705
4945
  ),
4706
4946
  children: [
4707
- /* @__PURE__ */ jsx27("p", { className: "text-sm font-bold text-text-950 flex-1", children: header }),
4947
+ /* @__PURE__ */ jsx28("p", { className: "text-sm font-bold text-text-950 flex-1", children: header }),
4708
4948
  /* @__PURE__ */ jsxs21("span", { className: "flex flex-wrap flex-row gap-1 items-center", children: [
4709
4949
  /* @__PURE__ */ jsxs21(
4710
4950
  Badge_default,
@@ -4712,7 +4952,7 @@ var CardResults = forwardRef12(
4712
4952
  action: "success",
4713
4953
  variant: "solid",
4714
4954
  size: "large",
4715
- iconLeft: /* @__PURE__ */ jsx27(CheckCircle3, {}),
4955
+ iconLeft: /* @__PURE__ */ jsx28(CheckCircle3, {}),
4716
4956
  children: [
4717
4957
  correct_answers,
4718
4958
  " Corretas"
@@ -4725,7 +4965,7 @@ var CardResults = forwardRef12(
4725
4965
  action: "error",
4726
4966
  variant: "solid",
4727
4967
  size: "large",
4728
- iconLeft: /* @__PURE__ */ jsx27(XCircle2, {}),
4968
+ iconLeft: /* @__PURE__ */ jsx28(XCircle2, {}),
4729
4969
  children: [
4730
4970
  incorrect_answers,
4731
4971
  " Incorretas"
@@ -4736,7 +4976,7 @@ var CardResults = forwardRef12(
4736
4976
  ]
4737
4977
  }
4738
4978
  ),
4739
- /* @__PURE__ */ jsx27(CaretRight, { className: "min-w-6 min-h-6 text-text-800" })
4979
+ /* @__PURE__ */ jsx28(CaretRight2, { className: "min-w-6 min-h-6 text-text-800" })
4740
4980
  ] })
4741
4981
  ]
4742
4982
  }
@@ -4757,7 +4997,7 @@ var CardStatus = forwardRef12(
4757
4997
  return "Em branco";
4758
4998
  }
4759
4999
  };
4760
- return /* @__PURE__ */ jsx27(
5000
+ return /* @__PURE__ */ jsx28(
4761
5001
  CardBase,
4762
5002
  {
4763
5003
  ref,
@@ -4767,21 +5007,21 @@ var CardStatus = forwardRef12(
4767
5007
  className: cn("items-center cursor-pointer", className),
4768
5008
  ...props,
4769
5009
  children: /* @__PURE__ */ jsxs21("div", { className: "flex justify-between w-full h-full flex-row items-center gap-2", children: [
4770
- /* @__PURE__ */ jsx27("p", { className: "text-sm font-bold text-text-950 truncate flex-1 min-w-0", children: header }),
5010
+ /* @__PURE__ */ jsx28("p", { className: "text-sm font-bold text-text-950 truncate flex-1 min-w-0", children: header }),
4771
5011
  /* @__PURE__ */ jsxs21("span", { className: "flex flex-row gap-1 items-center flex-shrink-0", children: [
4772
- status && /* @__PURE__ */ jsx27(
5012
+ status && /* @__PURE__ */ jsx28(
4773
5013
  Badge_default,
4774
5014
  {
4775
5015
  action: status == "correct" ? "success" : "error",
4776
5016
  variant: "solid",
4777
5017
  size: "medium",
4778
- iconLeft: status == "correct" ? /* @__PURE__ */ jsx27(CheckCircle3, {}) : /* @__PURE__ */ jsx27(XCircle2, {}),
5018
+ iconLeft: status == "correct" ? /* @__PURE__ */ jsx28(CheckCircle3, {}) : /* @__PURE__ */ jsx28(XCircle2, {}),
4779
5019
  children: getLabelBadge(status)
4780
5020
  }
4781
5021
  ),
4782
- label && /* @__PURE__ */ jsx27("p", { className: "text-sm text-text-800", children: label })
5022
+ label && /* @__PURE__ */ jsx28("p", { className: "text-sm text-text-800", children: label })
4783
5023
  ] }),
4784
- /* @__PURE__ */ jsx27(CaretRight, { className: "min-w-6 min-h-6 text-text-800 cursor-pointer flex-shrink-0 ml-2" })
5024
+ /* @__PURE__ */ jsx28(CaretRight2, { className: "min-w-6 min-h-6 text-text-800 cursor-pointer flex-shrink-0 ml-2" })
4785
5025
  ] })
4786
5026
  }
4787
5027
  );
@@ -4802,9 +5042,9 @@ var CardSettings = forwardRef12(
4802
5042
  ),
4803
5043
  ...props,
4804
5044
  children: [
4805
- /* @__PURE__ */ jsx27("span", { className: "[&>svg]:size-6", children: icon }),
4806
- /* @__PURE__ */ jsx27("p", { className: "w-full text-sm truncate", children: header }),
4807
- /* @__PURE__ */ jsx27(CaretRight, { size: 24, className: "cursor-pointer" })
5045
+ /* @__PURE__ */ jsx28("span", { className: "[&>svg]:size-6", children: icon }),
5046
+ /* @__PURE__ */ jsx28("p", { className: "w-full text-sm truncate", children: header }),
5047
+ /* @__PURE__ */ jsx28(CaretRight2, { size: 24, className: "cursor-pointer" })
4808
5048
  ]
4809
5049
  }
4810
5050
  );
@@ -4833,12 +5073,12 @@ var CardSupport = forwardRef12(
4833
5073
  direction == "col" ? "flex-col" : "flex-row items-center"
4834
5074
  ),
4835
5075
  children: [
4836
- /* @__PURE__ */ jsx27("span", { className: "w-full min-w-0", children: /* @__PURE__ */ jsx27("p", { className: "text-sm text-text-950 font-bold truncate", children: header }) }),
4837
- /* @__PURE__ */ jsx27("span", { className: "flex flex-row gap-1", children })
5076
+ /* @__PURE__ */ jsx28("span", { className: "w-full min-w-0", children: /* @__PURE__ */ jsx28("p", { className: "text-sm text-text-950 font-bold truncate", children: header }) }),
5077
+ /* @__PURE__ */ jsx28("span", { className: "flex flex-row gap-1", children })
4838
5078
  ]
4839
5079
  }
4840
5080
  ),
4841
- /* @__PURE__ */ jsx27(CaretRight, { className: "text-text-800 cursor-pointer", size: 24 })
5081
+ /* @__PURE__ */ jsx28(CaretRight2, { className: "text-text-800 cursor-pointer", size: 24 })
4842
5082
  ]
4843
5083
  }
4844
5084
  );
@@ -4869,7 +5109,7 @@ var CardForum = forwardRef12(
4869
5109
  className: cn("w-auto h-auto gap-3", className),
4870
5110
  ...props,
4871
5111
  children: [
4872
- /* @__PURE__ */ jsx27(
5112
+ /* @__PURE__ */ jsx28(
4873
5113
  "button",
4874
5114
  {
4875
5115
  type: "button",
@@ -4880,7 +5120,7 @@ var CardForum = forwardRef12(
4880
5120
  ),
4881
5121
  /* @__PURE__ */ jsxs21("div", { className: "flex flex-col gap-2 flex-1 min-w-0", children: [
4882
5122
  /* @__PURE__ */ jsxs21("div", { className: "flex flex-row gap-1 items-center flex-wrap", children: [
4883
- /* @__PURE__ */ jsx27("p", { className: "text-xs font-semibold text-primary-700 truncate", children: title }),
5123
+ /* @__PURE__ */ jsx28("p", { className: "text-xs font-semibold text-primary-700 truncate", children: title }),
4884
5124
  /* @__PURE__ */ jsxs21("p", { className: "text-xs text-text-600", children: [
4885
5125
  "\u2022 ",
4886
5126
  date,
@@ -4888,7 +5128,7 @@ var CardForum = forwardRef12(
4888
5128
  hour
4889
5129
  ] })
4890
5130
  ] }),
4891
- /* @__PURE__ */ jsx27("p", { className: "text-text-950 text-sm line-clamp-2 truncate", children: content }),
5131
+ /* @__PURE__ */ jsx28("p", { className: "text-text-950 text-sm line-clamp-2 truncate", children: content }),
4892
5132
  /* @__PURE__ */ jsxs21(
4893
5133
  "button",
4894
5134
  {
@@ -4897,7 +5137,7 @@ var CardForum = forwardRef12(
4897
5137
  onClick: () => onClickComments?.(valueComments),
4898
5138
  className: "text-text-600 flex flex-row gap-2 items-center",
4899
5139
  children: [
4900
- /* @__PURE__ */ jsx27(ChatCircleText, { "aria-hidden": "true", size: 16 }),
5140
+ /* @__PURE__ */ jsx28(ChatCircleText, { "aria-hidden": "true", size: 16 }),
4901
5141
  /* @__PURE__ */ jsxs21("p", { className: "text-xs", children: [
4902
5142
  comments,
4903
5143
  " respostas"
@@ -4925,14 +5165,14 @@ var CardAudio = forwardRef12(
4925
5165
  className,
4926
5166
  ...props
4927
5167
  }, ref) => {
4928
- const [isPlaying, setIsPlaying] = useState8(false);
4929
- const [currentTime, setCurrentTime] = useState8(0);
4930
- const [duration, setDuration] = useState8(0);
4931
- const [volume, setVolume] = useState8(1);
4932
- const [showVolumeControl, setShowVolumeControl] = useState8(false);
4933
- const [showSpeedMenu, setShowSpeedMenu] = useState8(false);
4934
- const [playbackRate, setPlaybackRate] = useState8(1);
4935
- const audioRef = useRef6(null);
5168
+ const [isPlaying, setIsPlaying] = useState10(false);
5169
+ const [currentTime, setCurrentTime] = useState10(0);
5170
+ const [duration, setDuration] = useState10(0);
5171
+ const [volume, setVolume] = useState10(1);
5172
+ const [showVolumeControl, setShowVolumeControl] = useState10(false);
5173
+ const [showSpeedMenu, setShowSpeedMenu] = useState10(false);
5174
+ const [playbackRate, setPlaybackRate] = useState10(1);
5175
+ const audioRef = useRef7(null);
4936
5176
  const formatTime2 = (time) => {
4937
5177
  const minutes = Math.floor(time / 60);
4938
5178
  const seconds = Math.floor(time % 60);
@@ -4997,12 +5237,12 @@ var CardAudio = forwardRef12(
4997
5237
  };
4998
5238
  const getVolumeIcon = () => {
4999
5239
  if (volume === 0) {
5000
- return /* @__PURE__ */ jsx27(SpeakerSimpleX, { size: 24 });
5240
+ return /* @__PURE__ */ jsx28(SpeakerSimpleX, { size: 24 });
5001
5241
  }
5002
5242
  if (volume < 0.5) {
5003
- return /* @__PURE__ */ jsx27(SpeakerLow, { size: 24 });
5243
+ return /* @__PURE__ */ jsx28(SpeakerLow, { size: 24 });
5004
5244
  }
5005
- return /* @__PURE__ */ jsx27(SpeakerHigh, { size: 24 });
5245
+ return /* @__PURE__ */ jsx28(SpeakerHigh, { size: 24 });
5006
5246
  };
5007
5247
  return /* @__PURE__ */ jsxs21(
5008
5248
  CardBase,
@@ -5017,7 +5257,7 @@ var CardAudio = forwardRef12(
5017
5257
  ),
5018
5258
  ...props,
5019
5259
  children: [
5020
- /* @__PURE__ */ jsx27(
5260
+ /* @__PURE__ */ jsx28(
5021
5261
  "audio",
5022
5262
  {
5023
5263
  ref: audioRef,
@@ -5029,7 +5269,7 @@ var CardAudio = forwardRef12(
5029
5269
  onEnded: handleEnded,
5030
5270
  "data-testid": "audio-element",
5031
5271
  "aria-label": title,
5032
- children: tracks ? tracks.map((track) => /* @__PURE__ */ jsx27(
5272
+ children: tracks ? tracks.map((track) => /* @__PURE__ */ jsx28(
5033
5273
  "track",
5034
5274
  {
5035
5275
  kind: track.kind,
@@ -5039,7 +5279,7 @@ var CardAudio = forwardRef12(
5039
5279
  default: track.default
5040
5280
  },
5041
5281
  track.src
5042
- )) : /* @__PURE__ */ jsx27(
5282
+ )) : /* @__PURE__ */ jsx28(
5043
5283
  "track",
5044
5284
  {
5045
5285
  kind: "captions",
@@ -5050,7 +5290,7 @@ var CardAudio = forwardRef12(
5050
5290
  )
5051
5291
  }
5052
5292
  ),
5053
- /* @__PURE__ */ jsx27(
5293
+ /* @__PURE__ */ jsx28(
5054
5294
  "button",
5055
5295
  {
5056
5296
  type: "button",
@@ -5058,14 +5298,14 @@ var CardAudio = forwardRef12(
5058
5298
  disabled: !src,
5059
5299
  className: "cursor-pointer text-text-950 hover:text-primary-600 disabled:text-text-400 disabled:cursor-not-allowed",
5060
5300
  "aria-label": isPlaying ? "Pausar" : "Reproduzir",
5061
- children: isPlaying ? /* @__PURE__ */ jsx27("div", { className: "w-6 h-6 flex items-center justify-center", children: /* @__PURE__ */ jsxs21("div", { className: "flex gap-0.5", children: [
5062
- /* @__PURE__ */ jsx27("div", { className: "w-1 h-4 bg-current rounded-sm" }),
5063
- /* @__PURE__ */ jsx27("div", { className: "w-1 h-4 bg-current rounded-sm" })
5064
- ] }) }) : /* @__PURE__ */ jsx27(Play, { size: 24 })
5301
+ children: isPlaying ? /* @__PURE__ */ jsx28("div", { className: "w-6 h-6 flex items-center justify-center", children: /* @__PURE__ */ jsxs21("div", { className: "flex gap-0.5", children: [
5302
+ /* @__PURE__ */ jsx28("div", { className: "w-1 h-4 bg-current rounded-sm" }),
5303
+ /* @__PURE__ */ jsx28("div", { className: "w-1 h-4 bg-current rounded-sm" })
5304
+ ] }) }) : /* @__PURE__ */ jsx28(Play, { size: 24 })
5065
5305
  }
5066
5306
  ),
5067
- /* @__PURE__ */ jsx27("p", { className: "text-text-800 text-md font-medium min-w-[2.5rem]", children: formatTime2(currentTime) }),
5068
- /* @__PURE__ */ jsx27("div", { className: "flex-1 relative", "data-testid": "progress-bar", children: /* @__PURE__ */ jsx27(
5307
+ /* @__PURE__ */ jsx28("p", { className: "text-text-800 text-md font-medium min-w-[2.5rem]", children: formatTime2(currentTime) }),
5308
+ /* @__PURE__ */ jsx28("div", { className: "flex-1 relative", "data-testid": "progress-bar", children: /* @__PURE__ */ jsx28(
5069
5309
  "button",
5070
5310
  {
5071
5311
  type: "button",
@@ -5080,7 +5320,7 @@ var CardAudio = forwardRef12(
5080
5320
  }
5081
5321
  },
5082
5322
  "aria-label": "Barra de progresso do \xE1udio",
5083
- children: /* @__PURE__ */ jsx27(
5323
+ children: /* @__PURE__ */ jsx28(
5084
5324
  "div",
5085
5325
  {
5086
5326
  className: "h-full bg-primary-600 rounded-full transition-all duration-100",
@@ -5091,19 +5331,19 @@ var CardAudio = forwardRef12(
5091
5331
  )
5092
5332
  }
5093
5333
  ) }),
5094
- /* @__PURE__ */ jsx27("p", { className: "text-text-800 text-md font-medium min-w-[2.5rem]", children: formatTime2(duration) }),
5334
+ /* @__PURE__ */ jsx28("p", { className: "text-text-800 text-md font-medium min-w-[2.5rem]", children: formatTime2(duration) }),
5095
5335
  /* @__PURE__ */ jsxs21("div", { className: "relative h-6", children: [
5096
- /* @__PURE__ */ jsx27(
5336
+ /* @__PURE__ */ jsx28(
5097
5337
  "button",
5098
5338
  {
5099
5339
  type: "button",
5100
5340
  onClick: toggleVolumeControl,
5101
5341
  className: "cursor-pointer text-text-950 hover:text-primary-600",
5102
5342
  "aria-label": "Controle de volume",
5103
- children: /* @__PURE__ */ jsx27("div", { className: "w-6 h-6 flex items-center justify-center", children: getVolumeIcon() })
5343
+ children: /* @__PURE__ */ jsx28("div", { className: "w-6 h-6 flex items-center justify-center", children: getVolumeIcon() })
5104
5344
  }
5105
5345
  ),
5106
- showVolumeControl && /* @__PURE__ */ jsx27(
5346
+ showVolumeControl && /* @__PURE__ */ jsx28(
5107
5347
  "button",
5108
5348
  {
5109
5349
  type: "button",
@@ -5113,7 +5353,7 @@ var CardAudio = forwardRef12(
5113
5353
  setShowVolumeControl(false);
5114
5354
  }
5115
5355
  },
5116
- children: /* @__PURE__ */ jsx27(
5356
+ children: /* @__PURE__ */ jsx28(
5117
5357
  "input",
5118
5358
  {
5119
5359
  type: "range",
@@ -5155,21 +5395,21 @@ var CardAudio = forwardRef12(
5155
5395
  )
5156
5396
  ] }),
5157
5397
  /* @__PURE__ */ jsxs21("div", { className: "relative h-6", children: [
5158
- /* @__PURE__ */ jsx27(
5398
+ /* @__PURE__ */ jsx28(
5159
5399
  "button",
5160
5400
  {
5161
5401
  type: "button",
5162
5402
  onClick: toggleSpeedMenu,
5163
5403
  className: "cursor-pointer text-text-950 hover:text-primary-600",
5164
5404
  "aria-label": "Op\xE7\xF5es de velocidade",
5165
- children: /* @__PURE__ */ jsx27(DotsThreeVertical, { size: 24 })
5405
+ children: /* @__PURE__ */ jsx28(DotsThreeVertical, { size: 24 })
5166
5406
  }
5167
5407
  ),
5168
- showSpeedMenu && /* @__PURE__ */ jsx27("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__ */ jsx27("div", { className: "flex flex-col gap-1", children: [
5408
+ showSpeedMenu && /* @__PURE__ */ jsx28("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__ */ jsx28("div", { className: "flex flex-col gap-1", children: [
5169
5409
  { speed: 1, label: "1x" },
5170
5410
  { speed: 1.5, label: "1.5x" },
5171
5411
  { speed: 2, label: "2x" }
5172
- ].map(({ speed, label }) => /* @__PURE__ */ jsx27(
5412
+ ].map(({ speed, label }) => /* @__PURE__ */ jsx28(
5173
5413
  "button",
5174
5414
  {
5175
5415
  type: "button",
@@ -5197,7 +5437,7 @@ var SIMULADO_BACKGROUND_CLASSES = {
5197
5437
  var CardSimulado = forwardRef12(
5198
5438
  ({ title, duration, info, backgroundColor, className, ...props }, ref) => {
5199
5439
  const backgroundClass = SIMULADO_BACKGROUND_CLASSES[backgroundColor];
5200
- return /* @__PURE__ */ jsx27(
5440
+ return /* @__PURE__ */ jsx28(
5201
5441
  CardBase,
5202
5442
  {
5203
5443
  ref,
@@ -5212,17 +5452,17 @@ var CardSimulado = forwardRef12(
5212
5452
  ...props,
5213
5453
  children: /* @__PURE__ */ jsxs21("div", { className: "flex justify-between items-center w-full gap-4", children: [
5214
5454
  /* @__PURE__ */ jsxs21("div", { className: "flex flex-col gap-1 flex-1 min-w-0", children: [
5215
- /* @__PURE__ */ jsx27(Text_default, { size: "lg", weight: "bold", className: "text-text-950 truncate", children: title }),
5455
+ /* @__PURE__ */ jsx28(Text_default, { size: "lg", weight: "bold", className: "text-text-950 truncate", children: title }),
5216
5456
  /* @__PURE__ */ jsxs21("div", { className: "flex items-center gap-4 text-text-700", children: [
5217
5457
  duration && /* @__PURE__ */ jsxs21("div", { className: "flex items-center gap-1", children: [
5218
- /* @__PURE__ */ jsx27(Clock, { size: 16, className: "flex-shrink-0" }),
5219
- /* @__PURE__ */ jsx27(Text_default, { size: "sm", children: duration })
5458
+ /* @__PURE__ */ jsx28(Clock, { size: 16, className: "flex-shrink-0" }),
5459
+ /* @__PURE__ */ jsx28(Text_default, { size: "sm", children: duration })
5220
5460
  ] }),
5221
- /* @__PURE__ */ jsx27(Text_default, { size: "sm", className: "truncate", children: info })
5461
+ /* @__PURE__ */ jsx28(Text_default, { size: "sm", className: "truncate", children: info })
5222
5462
  ] })
5223
5463
  ] }),
5224
- /* @__PURE__ */ jsx27(
5225
- CaretRight,
5464
+ /* @__PURE__ */ jsx28(
5465
+ CaretRight2,
5226
5466
  {
5227
5467
  size: 24,
5228
5468
  className: "text-text-800 flex-shrink-0",
@@ -5266,7 +5506,7 @@ var CardTest = forwardRef12(
5266
5506
  const interactiveClasses = isSelectable ? "cursor-pointer focus:outline-none focus:ring-2 focus:ring-primary-950 focus:ring-offset-2" : "";
5267
5507
  const selectedClasses = selected ? "ring-2 ring-primary-950 ring-offset-2" : "";
5268
5508
  if (isSelectable) {
5269
- return /* @__PURE__ */ jsx27(
5509
+ return /* @__PURE__ */ jsx28(
5270
5510
  "button",
5271
5511
  {
5272
5512
  ref,
@@ -5279,7 +5519,7 @@ var CardTest = forwardRef12(
5279
5519
  "aria-pressed": selected,
5280
5520
  ...props,
5281
5521
  children: /* @__PURE__ */ jsxs21("div", { className: "flex flex-col justify-between gap-[27px] flex-grow min-h-[67px] w-full min-w-0", children: [
5282
- /* @__PURE__ */ jsx27(
5522
+ /* @__PURE__ */ jsx28(
5283
5523
  Text_default,
5284
5524
  {
5285
5525
  size: "md",
@@ -5290,8 +5530,8 @@ var CardTest = forwardRef12(
5290
5530
  ),
5291
5531
  /* @__PURE__ */ jsxs21("div", { className: "flex flex-row justify-start items-end gap-4 w-full", children: [
5292
5532
  duration && /* @__PURE__ */ jsxs21("div", { className: "flex flex-row items-center gap-1 flex-shrink-0", children: [
5293
- /* @__PURE__ */ jsx27(Clock, { size: 16, className: "text-text-700" }),
5294
- /* @__PURE__ */ jsx27(
5533
+ /* @__PURE__ */ jsx28(Clock, { size: 16, className: "text-text-700" }),
5534
+ /* @__PURE__ */ jsx28(
5295
5535
  Text_default,
5296
5536
  {
5297
5537
  size: "sm",
@@ -5300,7 +5540,7 @@ var CardTest = forwardRef12(
5300
5540
  }
5301
5541
  )
5302
5542
  ] }),
5303
- /* @__PURE__ */ jsx27(
5543
+ /* @__PURE__ */ jsx28(
5304
5544
  Text_default,
5305
5545
  {
5306
5546
  size: "sm",
@@ -5313,14 +5553,14 @@ var CardTest = forwardRef12(
5313
5553
  }
5314
5554
  );
5315
5555
  }
5316
- return /* @__PURE__ */ jsx27(
5556
+ return /* @__PURE__ */ jsx28(
5317
5557
  "div",
5318
5558
  {
5319
5559
  ref,
5320
5560
  className: cn(`${baseClasses} ${className}`.trim()),
5321
5561
  ...props,
5322
5562
  children: /* @__PURE__ */ jsxs21("div", { className: "flex flex-col justify-between gap-[27px] flex-grow min-h-[67px] w-full min-w-0", children: [
5323
- /* @__PURE__ */ jsx27(
5563
+ /* @__PURE__ */ jsx28(
5324
5564
  Text_default,
5325
5565
  {
5326
5566
  size: "md",
@@ -5331,8 +5571,8 @@ var CardTest = forwardRef12(
5331
5571
  ),
5332
5572
  /* @__PURE__ */ jsxs21("div", { className: "flex flex-row justify-start items-end gap-4 w-full", children: [
5333
5573
  duration && /* @__PURE__ */ jsxs21("div", { className: "flex flex-row items-center gap-1 flex-shrink-0", children: [
5334
- /* @__PURE__ */ jsx27(Clock, { size: 16, className: "text-text-700" }),
5335
- /* @__PURE__ */ jsx27(
5574
+ /* @__PURE__ */ jsx28(Clock, { size: 16, className: "text-text-700" }),
5575
+ /* @__PURE__ */ jsx28(
5336
5576
  Text_default,
5337
5577
  {
5338
5578
  size: "sm",
@@ -5341,7 +5581,7 @@ var CardTest = forwardRef12(
5341
5581
  }
5342
5582
  )
5343
5583
  ] }),
5344
- /* @__PURE__ */ jsx27(
5584
+ /* @__PURE__ */ jsx28(
5345
5585
  Text_default,
5346
5586
  {
5347
5587
  size: "sm",
@@ -5378,14 +5618,14 @@ var SIMULATION_TYPE_STYLES = {
5378
5618
  }
5379
5619
  };
5380
5620
  var CardSimulationHistory = forwardRef12(({ data, onSimulationClick, className, ...props }, ref) => {
5381
- return /* @__PURE__ */ jsx27(
5621
+ return /* @__PURE__ */ jsx28(
5382
5622
  "div",
5383
5623
  {
5384
5624
  ref,
5385
5625
  className: cn("w-full max-w-[992px] h-auto", className),
5386
5626
  ...props,
5387
5627
  children: /* @__PURE__ */ jsxs21("div", { className: "flex flex-col gap-0", children: [
5388
- data.map((section, sectionIndex) => /* @__PURE__ */ jsx27("div", { className: "flex flex-col", children: /* @__PURE__ */ jsxs21(
5628
+ data.map((section, sectionIndex) => /* @__PURE__ */ jsx28("div", { className: "flex flex-col", children: /* @__PURE__ */ jsxs21(
5389
5629
  "div",
5390
5630
  {
5391
5631
  className: cn(
@@ -5393,7 +5633,7 @@ var CardSimulationHistory = forwardRef12(({ data, onSimulationClick, className,
5393
5633
  sectionIndex === 0 ? "rounded-t-3xl" : ""
5394
5634
  ),
5395
5635
  children: [
5396
- /* @__PURE__ */ jsx27(
5636
+ /* @__PURE__ */ jsx28(
5397
5637
  Text_default,
5398
5638
  {
5399
5639
  size: "xs",
@@ -5402,9 +5642,9 @@ var CardSimulationHistory = forwardRef12(({ data, onSimulationClick, className,
5402
5642
  children: section.date
5403
5643
  }
5404
5644
  ),
5405
- /* @__PURE__ */ jsx27("div", { className: "flex flex-col gap-2 flex-1", children: section.simulations.map((simulation) => {
5645
+ /* @__PURE__ */ jsx28("div", { className: "flex flex-col gap-2 flex-1", children: section.simulations.map((simulation) => {
5406
5646
  const typeStyles = SIMULATION_TYPE_STYLES[simulation.type];
5407
- return /* @__PURE__ */ jsx27(
5647
+ return /* @__PURE__ */ jsx28(
5408
5648
  CardBase,
5409
5649
  {
5410
5650
  layout: "horizontal",
@@ -5418,7 +5658,7 @@ var CardSimulationHistory = forwardRef12(({ data, onSimulationClick, className,
5418
5658
  onClick: () => onSimulationClick?.(simulation),
5419
5659
  children: /* @__PURE__ */ jsxs21("div", { className: "flex justify-between items-center w-full gap-2", children: [
5420
5660
  /* @__PURE__ */ jsxs21("div", { className: "flex flex-wrap flex-col justify-between sm:flex-row gap-2 flex-1 min-w-0", children: [
5421
- /* @__PURE__ */ jsx27(
5661
+ /* @__PURE__ */ jsx28(
5422
5662
  Text_default,
5423
5663
  {
5424
5664
  size: "lg",
@@ -5428,7 +5668,7 @@ var CardSimulationHistory = forwardRef12(({ data, onSimulationClick, className,
5428
5668
  }
5429
5669
  ),
5430
5670
  /* @__PURE__ */ jsxs21("div", { className: "flex items-center gap-2", children: [
5431
- /* @__PURE__ */ jsx27(
5671
+ /* @__PURE__ */ jsx28(
5432
5672
  Badge_default,
5433
5673
  {
5434
5674
  variant: "examsOutlined",
@@ -5437,11 +5677,11 @@ var CardSimulationHistory = forwardRef12(({ data, onSimulationClick, className,
5437
5677
  children: typeStyles.text
5438
5678
  }
5439
5679
  ),
5440
- /* @__PURE__ */ jsx27(Text_default, { size: "sm", className: "text-text-800 truncate", children: simulation.info })
5680
+ /* @__PURE__ */ jsx28(Text_default, { size: "sm", className: "text-text-800 truncate", children: simulation.info })
5441
5681
  ] })
5442
5682
  ] }),
5443
- /* @__PURE__ */ jsx27(
5444
- CaretRight,
5683
+ /* @__PURE__ */ jsx28(
5684
+ CaretRight2,
5445
5685
  {
5446
5686
  size: 24,
5447
5687
  className: "text-text-800 flex-shrink-0",
@@ -5456,15 +5696,15 @@ var CardSimulationHistory = forwardRef12(({ data, onSimulationClick, className,
5456
5696
  ]
5457
5697
  }
5458
5698
  ) }, section.date)),
5459
- data.length > 0 && /* @__PURE__ */ jsx27("div", { className: "w-full h-6 bg-white rounded-b-3xl" })
5699
+ data.length > 0 && /* @__PURE__ */ jsx28("div", { className: "w-full h-6 bg-white rounded-b-3xl" })
5460
5700
  ] })
5461
5701
  }
5462
5702
  );
5463
5703
  });
5464
5704
 
5465
5705
  // src/components/Accordation/Accordation.tsx
5466
- import { CaretRight as CaretRight2 } from "phosphor-react";
5467
- import { jsx as jsx28, jsxs as jsxs22 } from "react/jsx-runtime";
5706
+ import { CaretRight as CaretRight3 } from "phosphor-react";
5707
+ import { jsx as jsx29, jsxs as jsxs22 } from "react/jsx-runtime";
5468
5708
  var CardAccordation = forwardRef13(
5469
5709
  ({
5470
5710
  trigger,
@@ -5474,7 +5714,7 @@ var CardAccordation = forwardRef13(
5474
5714
  onToggleExpanded,
5475
5715
  ...props
5476
5716
  }, ref) => {
5477
- const [isExpanded, setIsExpanded] = useState9(defaultExpanded);
5717
+ const [isExpanded, setIsExpanded] = useState11(defaultExpanded);
5478
5718
  const contentId = useId8();
5479
5719
  const handleToggle = () => {
5480
5720
  const newExpanded = !isExpanded;
@@ -5507,8 +5747,8 @@ var CardAccordation = forwardRef13(
5507
5747
  "aria-controls": "accordion-content",
5508
5748
  children: [
5509
5749
  trigger,
5510
- /* @__PURE__ */ jsx28(
5511
- CaretRight2,
5750
+ /* @__PURE__ */ jsx29(
5751
+ CaretRight3,
5512
5752
  {
5513
5753
  size: 20,
5514
5754
  className: cn(
@@ -5521,7 +5761,7 @@ var CardAccordation = forwardRef13(
5521
5761
  ]
5522
5762
  }
5523
5763
  ),
5524
- /* @__PURE__ */ jsx28(
5764
+ /* @__PURE__ */ jsx29(
5525
5765
  "div",
5526
5766
  {
5527
5767
  id: contentId,
@@ -5530,7 +5770,7 @@ var CardAccordation = forwardRef13(
5530
5770
  isExpanded ? "max-h-screen opacity-100" : "max-h-0 opacity-0"
5531
5771
  ),
5532
5772
  "data-testid": "accordion-content",
5533
- children: /* @__PURE__ */ jsx28("div", { className: "p-4 pt-0 border-border-50", children })
5773
+ children: /* @__PURE__ */ jsx29("div", { className: "p-4 pt-0 border-border-50", children })
5534
5774
  }
5535
5775
  )
5536
5776
  ]
@@ -5541,8 +5781,8 @@ var CardAccordation = forwardRef13(
5541
5781
 
5542
5782
  // src/components/Alternative/Alternative.tsx
5543
5783
  import { CheckCircle as CheckCircle4, XCircle as XCircle3 } from "phosphor-react";
5544
- import { forwardRef as forwardRef14, useId as useId9, useState as useState10 } from "react";
5545
- import { jsx as jsx29, jsxs as jsxs23 } from "react/jsx-runtime";
5784
+ import { forwardRef as forwardRef14, useId as useId9, useState as useState12 } from "react";
5785
+ import { jsx as jsx30, jsxs as jsxs23 } from "react/jsx-runtime";
5546
5786
  var AlternativesList = ({
5547
5787
  alternatives,
5548
5788
  name,
@@ -5557,7 +5797,7 @@ var AlternativesList = ({
5557
5797
  }) => {
5558
5798
  const uniqueId = useId9();
5559
5799
  const groupName = name || `alternatives-${uniqueId}`;
5560
- const [actualValue, setActualValue] = useState10(value);
5800
+ const [actualValue, setActualValue] = useState12(value);
5561
5801
  const isReadonly = mode === "readonly";
5562
5802
  const getStatusStyles2 = (status, isReadonly2) => {
5563
5803
  const hoverClass = isReadonly2 ? "" : "hover:bg-background-50";
@@ -5573,9 +5813,9 @@ var AlternativesList = ({
5573
5813
  const getStatusBadge2 = (status) => {
5574
5814
  switch (status) {
5575
5815
  case "correct":
5576
- return /* @__PURE__ */ jsx29(Badge_default, { variant: "solid", action: "success", iconLeft: /* @__PURE__ */ jsx29(CheckCircle4, {}), children: "Resposta correta" });
5816
+ return /* @__PURE__ */ jsx30(Badge_default, { variant: "solid", action: "success", iconLeft: /* @__PURE__ */ jsx30(CheckCircle4, {}), children: "Resposta correta" });
5577
5817
  case "incorrect":
5578
- return /* @__PURE__ */ jsx29(Badge_default, { variant: "solid", action: "error", iconLeft: /* @__PURE__ */ jsx29(XCircle3, {}), children: "Resposta incorreta" });
5818
+ return /* @__PURE__ */ jsx30(Badge_default, { variant: "solid", action: "error", iconLeft: /* @__PURE__ */ jsx30(XCircle3, {}), children: "Resposta incorreta" });
5579
5819
  default:
5580
5820
  return null;
5581
5821
  }
@@ -5605,10 +5845,10 @@ var AlternativesList = ({
5605
5845
  const renderRadio = () => {
5606
5846
  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"}`;
5607
5847
  const dotClasses = "w-3 h-3 rounded-full bg-primary-950 transition-all duration-200";
5608
- return /* @__PURE__ */ jsx29("div", { className: radioClasses, children: isUserSelected && /* @__PURE__ */ jsx29("div", { className: dotClasses }) });
5848
+ return /* @__PURE__ */ jsx30("div", { className: radioClasses, children: isUserSelected && /* @__PURE__ */ jsx30("div", { className: dotClasses }) });
5609
5849
  };
5610
5850
  if (layout === "detailed") {
5611
- return /* @__PURE__ */ jsx29(
5851
+ return /* @__PURE__ */ jsx30(
5612
5852
  "div",
5613
5853
  {
5614
5854
  className: cn(
@@ -5618,9 +5858,9 @@ var AlternativesList = ({
5618
5858
  ),
5619
5859
  children: /* @__PURE__ */ jsxs23("div", { className: "flex items-start justify-between gap-3", children: [
5620
5860
  /* @__PURE__ */ jsxs23("div", { className: "flex items-start gap-3 flex-1", children: [
5621
- /* @__PURE__ */ jsx29("div", { className: "mt-1", children: renderRadio() }),
5861
+ /* @__PURE__ */ jsx30("div", { className: "mt-1", children: renderRadio() }),
5622
5862
  /* @__PURE__ */ jsxs23("div", { className: "flex-1", children: [
5623
- /* @__PURE__ */ jsx29(
5863
+ /* @__PURE__ */ jsx30(
5624
5864
  "p",
5625
5865
  {
5626
5866
  className: cn(
@@ -5630,10 +5870,10 @@ var AlternativesList = ({
5630
5870
  children: alternative.label
5631
5871
  }
5632
5872
  ),
5633
- alternative.description && /* @__PURE__ */ jsx29("p", { className: "text-sm text-text-600 mt-1", children: alternative.description })
5873
+ alternative.description && /* @__PURE__ */ jsx30("p", { className: "text-sm text-text-600 mt-1", children: alternative.description })
5634
5874
  ] })
5635
5875
  ] }),
5636
- statusBadge && /* @__PURE__ */ jsx29("div", { className: "flex-shrink-0", children: statusBadge })
5876
+ statusBadge && /* @__PURE__ */ jsx30("div", { className: "flex-shrink-0", children: statusBadge })
5637
5877
  ] })
5638
5878
  },
5639
5879
  alternativeId
@@ -5650,7 +5890,7 @@ var AlternativesList = ({
5650
5890
  children: [
5651
5891
  /* @__PURE__ */ jsxs23("div", { className: "flex items-center gap-2 flex-1", children: [
5652
5892
  renderRadio(),
5653
- /* @__PURE__ */ jsx29(
5893
+ /* @__PURE__ */ jsx30(
5654
5894
  "span",
5655
5895
  {
5656
5896
  className: cn(
@@ -5661,14 +5901,14 @@ var AlternativesList = ({
5661
5901
  }
5662
5902
  )
5663
5903
  ] }),
5664
- statusBadge && /* @__PURE__ */ jsx29("div", { className: "flex-shrink-0", children: statusBadge })
5904
+ statusBadge && /* @__PURE__ */ jsx30("div", { className: "flex-shrink-0", children: statusBadge })
5665
5905
  ]
5666
5906
  },
5667
5907
  alternativeId
5668
5908
  );
5669
5909
  };
5670
5910
  if (isReadonly) {
5671
- return /* @__PURE__ */ jsx29(
5911
+ return /* @__PURE__ */ jsx30(
5672
5912
  "div",
5673
5913
  {
5674
5914
  className: cn("flex flex-col", getLayoutClasses(), "w-full", className),
@@ -5678,7 +5918,7 @@ var AlternativesList = ({
5678
5918
  }
5679
5919
  );
5680
5920
  }
5681
- return /* @__PURE__ */ jsx29(
5921
+ return /* @__PURE__ */ jsx30(
5682
5922
  RadioGroup,
5683
5923
  {
5684
5924
  name: groupName,
@@ -5695,7 +5935,7 @@ var AlternativesList = ({
5695
5935
  const statusStyles = getStatusStyles2(alternative.status, false);
5696
5936
  const statusBadge = getStatusBadge2(alternative.status);
5697
5937
  if (layout === "detailed") {
5698
- return /* @__PURE__ */ jsx29(
5938
+ return /* @__PURE__ */ jsx30(
5699
5939
  "div",
5700
5940
  {
5701
5941
  className: cn(
@@ -5705,7 +5945,7 @@ var AlternativesList = ({
5705
5945
  ),
5706
5946
  children: /* @__PURE__ */ jsxs23("div", { className: "flex items-start justify-between gap-3", children: [
5707
5947
  /* @__PURE__ */ jsxs23("div", { className: "flex items-start gap-3 flex-1", children: [
5708
- /* @__PURE__ */ jsx29(
5948
+ /* @__PURE__ */ jsx30(
5709
5949
  RadioGroupItem,
5710
5950
  {
5711
5951
  value: alternative.value,
@@ -5715,7 +5955,7 @@ var AlternativesList = ({
5715
5955
  }
5716
5956
  ),
5717
5957
  /* @__PURE__ */ jsxs23("div", { className: "flex-1", children: [
5718
- /* @__PURE__ */ jsx29(
5958
+ /* @__PURE__ */ jsx30(
5719
5959
  "label",
5720
5960
  {
5721
5961
  htmlFor: alternativeId,
@@ -5727,10 +5967,10 @@ var AlternativesList = ({
5727
5967
  children: alternative.label
5728
5968
  }
5729
5969
  ),
5730
- alternative.description && /* @__PURE__ */ jsx29("p", { className: "text-sm text-text-600 mt-1", children: alternative.description })
5970
+ alternative.description && /* @__PURE__ */ jsx30("p", { className: "text-sm text-text-600 mt-1", children: alternative.description })
5731
5971
  ] })
5732
5972
  ] }),
5733
- statusBadge && /* @__PURE__ */ jsx29("div", { className: "flex-shrink-0", children: statusBadge })
5973
+ statusBadge && /* @__PURE__ */ jsx30("div", { className: "flex-shrink-0", children: statusBadge })
5734
5974
  ] })
5735
5975
  },
5736
5976
  alternativeId
@@ -5746,7 +5986,7 @@ var AlternativesList = ({
5746
5986
  ),
5747
5987
  children: [
5748
5988
  /* @__PURE__ */ jsxs23("div", { className: "flex items-center gap-2 flex-1", children: [
5749
- /* @__PURE__ */ jsx29(
5989
+ /* @__PURE__ */ jsx30(
5750
5990
  RadioGroupItem,
5751
5991
  {
5752
5992
  value: alternative.value,
@@ -5754,7 +5994,7 @@ var AlternativesList = ({
5754
5994
  disabled: alternative.disabled
5755
5995
  }
5756
5996
  ),
5757
- /* @__PURE__ */ jsx29(
5997
+ /* @__PURE__ */ jsx30(
5758
5998
  "label",
5759
5999
  {
5760
6000
  htmlFor: alternativeId,
@@ -5767,7 +6007,7 @@ var AlternativesList = ({
5767
6007
  }
5768
6008
  )
5769
6009
  ] }),
5770
- statusBadge && /* @__PURE__ */ jsx29("div", { className: "flex-shrink-0", children: statusBadge })
6010
+ statusBadge && /* @__PURE__ */ jsx30("div", { className: "flex-shrink-0", children: statusBadge })
5771
6011
  ]
5772
6012
  },
5773
6013
  alternativeId
@@ -5789,10 +6029,10 @@ var HeaderAlternative = forwardRef14(
5789
6029
  ...props,
5790
6030
  children: [
5791
6031
  /* @__PURE__ */ jsxs23("span", { className: "flex flex-col", children: [
5792
- /* @__PURE__ */ jsx29("p", { className: "text-text-950 font-bold text-lg", children: title }),
5793
- /* @__PURE__ */ jsx29("p", { className: "text-text-700 text-sm ", children: subTitle })
6032
+ /* @__PURE__ */ jsx30("p", { className: "text-text-950 font-bold text-lg", children: title }),
6033
+ /* @__PURE__ */ jsx30("p", { className: "text-text-700 text-sm ", children: subTitle })
5794
6034
  ] }),
5795
- /* @__PURE__ */ jsx29("p", { className: "text-text-950 text-md", children: content })
6035
+ /* @__PURE__ */ jsx30("p", { className: "text-text-950 text-md", children: content })
5796
6036
  ]
5797
6037
  }
5798
6038
  );
@@ -5802,9 +6042,9 @@ var HeaderAlternative = forwardRef14(
5802
6042
  // src/components/AlertDialog/AlertDialog.tsx
5803
6043
  import {
5804
6044
  forwardRef as forwardRef15,
5805
- useEffect as useEffect7
6045
+ useEffect as useEffect9
5806
6046
  } from "react";
5807
- import { Fragment as Fragment5, jsx as jsx30, jsxs as jsxs24 } from "react/jsx-runtime";
6047
+ import { Fragment as Fragment6, jsx as jsx31, jsxs as jsxs24 } from "react/jsx-runtime";
5808
6048
  var SIZE_CLASSES11 = {
5809
6049
  "extra-small": "w-screen max-w-[324px]",
5810
6050
  small: "w-screen max-w-[378px]",
@@ -5830,7 +6070,7 @@ var AlertDialog = forwardRef15(
5830
6070
  size = "medium",
5831
6071
  ...props
5832
6072
  }, ref) => {
5833
- useEffect7(() => {
6073
+ useEffect9(() => {
5834
6074
  if (!isOpen || !closeOnEscape) return;
5835
6075
  const handleEscape = (event) => {
5836
6076
  if (event.key === "Escape") {
@@ -5840,7 +6080,7 @@ var AlertDialog = forwardRef15(
5840
6080
  document.addEventListener("keydown", handleEscape);
5841
6081
  return () => document.removeEventListener("keydown", handleEscape);
5842
6082
  }, [isOpen, closeOnEscape]);
5843
- useEffect7(() => {
6083
+ useEffect9(() => {
5844
6084
  if (isOpen) {
5845
6085
  document.body.style.overflow = "hidden";
5846
6086
  } else {
@@ -5869,7 +6109,7 @@ var AlertDialog = forwardRef15(
5869
6109
  onCancel?.(cancelValue);
5870
6110
  };
5871
6111
  const sizeClasses = SIZE_CLASSES11[size];
5872
- return /* @__PURE__ */ jsx30(Fragment5, { children: isOpen && /* @__PURE__ */ jsx30(
6112
+ return /* @__PURE__ */ jsx31(Fragment6, { children: isOpen && /* @__PURE__ */ jsx31(
5873
6113
  "div",
5874
6114
  {
5875
6115
  className: "fixed inset-0 z-50 flex items-center justify-center bg-black/50 backdrop-blur-sm",
@@ -5887,7 +6127,7 @@ var AlertDialog = forwardRef15(
5887
6127
  ),
5888
6128
  ...props,
5889
6129
  children: [
5890
- /* @__PURE__ */ jsx30(
6130
+ /* @__PURE__ */ jsx31(
5891
6131
  "h2",
5892
6132
  {
5893
6133
  id: "alert-dialog-title",
@@ -5895,7 +6135,7 @@ var AlertDialog = forwardRef15(
5895
6135
  children: title
5896
6136
  }
5897
6137
  ),
5898
- /* @__PURE__ */ jsx30(
6138
+ /* @__PURE__ */ jsx31(
5899
6139
  "p",
5900
6140
  {
5901
6141
  id: "alert-dialog-description",
@@ -5904,8 +6144,8 @@ var AlertDialog = forwardRef15(
5904
6144
  }
5905
6145
  ),
5906
6146
  /* @__PURE__ */ jsxs24("div", { className: "flex flex-row items-center justify-end pt-4 gap-3", children: [
5907
- /* @__PURE__ */ jsx30(Button_default, { variant: "outline", size: "small", onClick: handleCancel, children: cancelButtonLabel }),
5908
- /* @__PURE__ */ jsx30(
6147
+ /* @__PURE__ */ jsx31(Button_default, { variant: "outline", size: "small", onClick: handleCancel, children: cancelButtonLabel }),
6148
+ /* @__PURE__ */ jsx31(
5909
6149
  Button_default,
5910
6150
  {
5911
6151
  variant: "solid",
@@ -5926,9 +6166,9 @@ var AlertDialog = forwardRef15(
5926
6166
  AlertDialog.displayName = "AlertDialog";
5927
6167
 
5928
6168
  // src/components/MultipleChoice/MultipleChoice.tsx
5929
- import { useEffect as useEffect8, useState as useState11 } from "react";
6169
+ import { useEffect as useEffect10, useState as useState13 } from "react";
5930
6170
  import { CheckCircle as CheckCircle5, XCircle as XCircle4, Check as Check4 } from "phosphor-react";
5931
- import { jsx as jsx31, jsxs as jsxs25 } from "react/jsx-runtime";
6171
+ import { jsx as jsx32, jsxs as jsxs25 } from "react/jsx-runtime";
5932
6172
  var MultipleChoiceList = ({
5933
6173
  disabled = false,
5934
6174
  className = "",
@@ -5938,16 +6178,16 @@ var MultipleChoiceList = ({
5938
6178
  onHandleSelectedValues,
5939
6179
  mode = "interactive"
5940
6180
  }) => {
5941
- const [actualValue, setActualValue] = useState11(selectedValues);
5942
- useEffect8(() => {
6181
+ const [actualValue, setActualValue] = useState13(selectedValues);
6182
+ useEffect10(() => {
5943
6183
  setActualValue(selectedValues);
5944
6184
  }, [selectedValues]);
5945
6185
  const getStatusBadge2 = (status) => {
5946
6186
  switch (status) {
5947
6187
  case "correct":
5948
- return /* @__PURE__ */ jsx31(Badge_default, { variant: "solid", action: "success", iconLeft: /* @__PURE__ */ jsx31(CheckCircle5, {}), children: "Resposta correta" });
6188
+ return /* @__PURE__ */ jsx32(Badge_default, { variant: "solid", action: "success", iconLeft: /* @__PURE__ */ jsx32(CheckCircle5, {}), children: "Resposta correta" });
5949
6189
  case "incorrect":
5950
- return /* @__PURE__ */ jsx31(Badge_default, { variant: "solid", action: "error", iconLeft: /* @__PURE__ */ jsx31(XCircle4, {}), children: "Resposta incorreta" });
6190
+ return /* @__PURE__ */ jsx32(Badge_default, { variant: "solid", action: "error", iconLeft: /* @__PURE__ */ jsx32(XCircle4, {}), children: "Resposta incorreta" });
5951
6191
  default:
5952
6192
  return null;
5953
6193
  }
@@ -5968,10 +6208,10 @@ var MultipleChoiceList = ({
5968
6208
  isSelected ? "border-primary-950 bg-primary-950 text-text" : "border-border-400 bg-background",
5969
6209
  isDisabled && "opacity-40 cursor-not-allowed"
5970
6210
  );
5971
- return /* @__PURE__ */ jsx31("div", { className: checkboxClasses, children: isSelected && /* @__PURE__ */ jsx31(Check4, { size: 16, weight: "bold" }) });
6211
+ return /* @__PURE__ */ jsx32("div", { className: checkboxClasses, children: isSelected && /* @__PURE__ */ jsx32(Check4, { size: 16, weight: "bold" }) });
5972
6212
  };
5973
6213
  if (mode === "readonly") {
5974
- return /* @__PURE__ */ jsx31("div", { className: cn("flex flex-col gap-2", className), children: choices.map((choice, i) => {
6214
+ return /* @__PURE__ */ jsx32("div", { className: cn("flex flex-col gap-2", className), children: choices.map((choice, i) => {
5975
6215
  const isSelected = actualValue?.includes(choice.value) || false;
5976
6216
  const statusStyles = getStatusStyles2(choice.status);
5977
6217
  const statusBadge = getStatusBadge2(choice.status);
@@ -5986,7 +6226,7 @@ var MultipleChoiceList = ({
5986
6226
  children: [
5987
6227
  /* @__PURE__ */ jsxs25("div", { className: "flex items-center gap-2 flex-1", children: [
5988
6228
  renderVisualCheckbox(isSelected, choice.disabled || disabled),
5989
- /* @__PURE__ */ jsx31(
6229
+ /* @__PURE__ */ jsx32(
5990
6230
  "span",
5991
6231
  {
5992
6232
  className: cn(
@@ -5998,14 +6238,14 @@ var MultipleChoiceList = ({
5998
6238
  }
5999
6239
  )
6000
6240
  ] }),
6001
- statusBadge && /* @__PURE__ */ jsx31("div", { className: "flex-shrink-0", children: statusBadge })
6241
+ statusBadge && /* @__PURE__ */ jsx32("div", { className: "flex-shrink-0", children: statusBadge })
6002
6242
  ]
6003
6243
  },
6004
6244
  `readonly-${choice.value}-${i}`
6005
6245
  );
6006
6246
  }) });
6007
6247
  }
6008
- return /* @__PURE__ */ jsx31(
6248
+ return /* @__PURE__ */ jsx32(
6009
6249
  "div",
6010
6250
  {
6011
6251
  className: cn(
@@ -6013,7 +6253,7 @@ var MultipleChoiceList = ({
6013
6253
  disabled ? "opacity-50 cursor-not-allowed" : "",
6014
6254
  className
6015
6255
  ),
6016
- children: /* @__PURE__ */ jsx31(
6256
+ children: /* @__PURE__ */ jsx32(
6017
6257
  CheckboxList_default,
6018
6258
  {
6019
6259
  name,
@@ -6028,7 +6268,7 @@ var MultipleChoiceList = ({
6028
6268
  {
6029
6269
  className: "flex flex-row gap-2 items-center",
6030
6270
  children: [
6031
- /* @__PURE__ */ jsx31(
6271
+ /* @__PURE__ */ jsx32(
6032
6272
  CheckboxListItem,
6033
6273
  {
6034
6274
  value: choice.value,
@@ -6036,7 +6276,7 @@ var MultipleChoiceList = ({
6036
6276
  disabled: choice.disabled || disabled
6037
6277
  }
6038
6278
  ),
6039
- /* @__PURE__ */ jsx31(
6279
+ /* @__PURE__ */ jsx32(
6040
6280
  "label",
6041
6281
  {
6042
6282
  htmlFor: `interactive-${choice.value}-${i}`,
@@ -6059,7 +6299,7 @@ var MultipleChoiceList = ({
6059
6299
  };
6060
6300
 
6061
6301
  // src/hooks/useMobile.ts
6062
- import { useState as useState12, useEffect as useEffect9 } from "react";
6302
+ import { useState as useState14, useEffect as useEffect11 } from "react";
6063
6303
  var MOBILE_WIDTH = 500;
6064
6304
  var TABLET_WIDTH = 931;
6065
6305
  var DEFAULT_WIDTH = 1200;
@@ -6074,9 +6314,9 @@ var getDeviceType = () => {
6074
6314
  return width < TABLET_WIDTH ? "responsive" : "desktop";
6075
6315
  };
6076
6316
  var useMobile = () => {
6077
- const [isMobile, setIsMobile] = useState12(false);
6078
- const [isTablet, setIsTablet] = useState12(false);
6079
- useEffect9(() => {
6317
+ const [isMobile, setIsMobile] = useState14(false);
6318
+ const [isTablet, setIsTablet] = useState14(false);
6319
+ useEffect11(() => {
6080
6320
  const checkScreenSize = () => {
6081
6321
  const width = getWindowWidth();
6082
6322
  setIsMobile(width < MOBILE_WIDTH);
@@ -6115,218 +6355,19 @@ var useMobile = () => {
6115
6355
  };
6116
6356
  };
6117
6357
 
6118
- // src/hooks/useTheme.ts
6119
- import { useEffect as useEffect10, useState as useState13, useCallback, useRef as useRef7 } from "react";
6120
- var useTheme = () => {
6121
- const [themeMode, setThemeMode] = useState13("system");
6122
- const [isDark, setIsDark] = useState13(false);
6123
- const themeModeRef = useRef7("system");
6124
- const applyTheme = useCallback((mode) => {
6125
- const htmlElement = document.documentElement;
6126
- const originalTheme = htmlElement.getAttribute("data-original-theme");
6127
- if (mode === "dark") {
6128
- htmlElement.setAttribute("data-theme", "dark");
6129
- setIsDark(true);
6130
- } else if (mode === "light") {
6131
- if (originalTheme) {
6132
- htmlElement.setAttribute("data-theme", originalTheme);
6133
- }
6134
- setIsDark(false);
6135
- } else if (mode === "system") {
6136
- const isSystemDark = window.matchMedia(
6137
- "(prefers-color-scheme: dark)"
6138
- ).matches;
6139
- if (isSystemDark) {
6140
- htmlElement.setAttribute("data-theme", "dark");
6141
- setIsDark(true);
6142
- } else if (originalTheme) {
6143
- htmlElement.setAttribute("data-theme", originalTheme);
6144
- setIsDark(false);
6145
- }
6146
- }
6147
- }, []);
6148
- const toggleTheme = useCallback(() => {
6149
- let newMode;
6150
- if (themeMode === "light") {
6151
- newMode = "dark";
6152
- } else if (themeMode === "dark") {
6153
- newMode = "light";
6154
- } else {
6155
- newMode = "dark";
6156
- }
6157
- setThemeMode(newMode);
6158
- themeModeRef.current = newMode;
6159
- applyTheme(newMode);
6160
- localStorage.setItem("theme-mode", newMode);
6161
- }, [themeMode, applyTheme]);
6162
- const setTheme = useCallback(
6163
- (mode) => {
6164
- setThemeMode(mode);
6165
- themeModeRef.current = mode;
6166
- applyTheme(mode);
6167
- localStorage.setItem("theme-mode", mode);
6168
- },
6169
- [applyTheme]
6170
- );
6171
- useEffect10(() => {
6172
- const htmlElement = document.documentElement;
6173
- const currentTheme = htmlElement.getAttribute("data-theme");
6174
- if (currentTheme && !htmlElement.getAttribute("data-original-theme")) {
6175
- htmlElement.setAttribute("data-original-theme", currentTheme);
6176
- }
6177
- const savedThemeMode = localStorage.getItem("theme-mode");
6178
- const initialMode = savedThemeMode || "system";
6179
- if (!savedThemeMode) {
6180
- localStorage.setItem("theme-mode", "system");
6181
- }
6182
- setThemeMode(initialMode);
6183
- themeModeRef.current = initialMode;
6184
- applyTheme(initialMode);
6185
- const mediaQuery = window.matchMedia("(prefers-color-scheme: dark)");
6186
- const handleSystemThemeChange = () => {
6187
- if (themeModeRef.current === "system") {
6188
- applyTheme("system");
6189
- }
6190
- };
6191
- mediaQuery.addEventListener("change", handleSystemThemeChange);
6192
- return () => {
6193
- mediaQuery.removeEventListener("change", handleSystemThemeChange);
6194
- };
6195
- }, [applyTheme]);
6196
- return {
6197
- themeMode,
6198
- isDark,
6199
- toggleTheme,
6200
- setTheme
6201
- };
6202
- };
6203
-
6204
- // src/components/ThemeToggle/ThemeToggle.tsx
6205
- import { forwardRef as forwardRef16 } from "react";
6206
- import { Fragment as Fragment6, jsx as jsx32, jsxs as jsxs26 } from "react/jsx-runtime";
6207
- var ThemeToggle = forwardRef16(
6208
- ({
6209
- variant = "simple",
6210
- size = "md",
6211
- showIcons = true,
6212
- showLabels = true,
6213
- className,
6214
- children,
6215
- ...props
6216
- }, ref) => {
6217
- const { themeMode, isDark, toggleTheme, setTheme } = useTheme();
6218
- const sizeClasses = {
6219
- sm: "text-sm px-3 py-1.5",
6220
- md: "text-md px-4 py-2",
6221
- lg: "text-lg px-5 py-2.5"
6222
- };
6223
- const activeClasses = "bg-primary-500 text-white";
6224
- const inactiveClasses = "bg-gray-200 dark:bg-gray-700 text-gray-700 dark:text-gray-300 hover:bg-gray-300 dark:hover:bg-gray-600";
6225
- const baseButtonClasses = "inline-flex items-center justify-center gap-2 rounded-md border border-gray-300 dark:border-gray-600 transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-primary-500";
6226
- const smallButtonClasses = "px-3 py-1.5 rounded-md text-sm transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-primary-500";
6227
- const renderThemeButton = (theme, icon, label, isActive, buttonSize) => {
6228
- const buttonClasses = buttonSize ? cn(baseButtonClasses, sizeClasses[buttonSize]) : smallButtonClasses;
6229
- const stateClasses = isActive ? activeClasses : inactiveClasses;
6230
- return /* @__PURE__ */ jsxs26(
6231
- "button",
6232
- {
6233
- type: "button",
6234
- onClick: () => setTheme(theme),
6235
- className: cn(buttonClasses, stateClasses),
6236
- ...buttonSize ? props : {},
6237
- children: [
6238
- showIcons && icon,
6239
- showLabels && label
6240
- ]
6241
- }
6242
- );
6243
- };
6244
- if (variant === "simple") {
6245
- return /* @__PURE__ */ jsx32(
6246
- "button",
6247
- {
6248
- type: "button",
6249
- ref,
6250
- onClick: toggleTheme,
6251
- className: cn(
6252
- "inline-flex items-center justify-center gap-2 rounded-md border border-gray-300 dark:border-gray-600 transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-primary-500",
6253
- sizeClasses[size],
6254
- className
6255
- ),
6256
- ...props,
6257
- children: children || /* @__PURE__ */ jsxs26(Fragment6, { children: [
6258
- showIcons && (isDark ? "\u2600\uFE0F" : "\u{1F319}"),
6259
- showLabels && (isDark ? "Claro" : "Escuro")
6260
- ] })
6261
- }
6262
- );
6263
- }
6264
- if (variant === "detailed") {
6265
- const getLabel = () => {
6266
- if (themeMode === "system") return "Sistema";
6267
- if (isDark) return "Escuro";
6268
- return "Claro";
6269
- };
6270
- return /* @__PURE__ */ jsxs26("div", { className: cn("flex flex-col gap-2", className), children: [
6271
- /* @__PURE__ */ jsxs26("div", { className: "text-sm font-medium text-gray-700 dark:text-gray-300", children: [
6272
- "Tema: ",
6273
- getLabel()
6274
- ] }),
6275
- /* @__PURE__ */ jsxs26("div", { className: "flex gap-1", children: [
6276
- renderThemeButton("light", "\u2600\uFE0F ", "Claro", themeMode === "light"),
6277
- renderThemeButton("dark", "\u{1F319} ", "Escuro", themeMode === "dark"),
6278
- renderThemeButton(
6279
- "system",
6280
- "\u2699\uFE0F ",
6281
- "Sistema",
6282
- themeMode === "system"
6283
- )
6284
- ] })
6285
- ] });
6286
- }
6287
- if (variant === "buttons") {
6288
- return /* @__PURE__ */ jsxs26("div", { className: cn("flex gap-2", className), children: [
6289
- renderThemeButton(
6290
- "light",
6291
- "\u2600\uFE0F",
6292
- "Claro",
6293
- themeMode === "light",
6294
- size
6295
- ),
6296
- renderThemeButton(
6297
- "dark",
6298
- "\u{1F319}",
6299
- "Escuro",
6300
- themeMode === "dark",
6301
- size
6302
- ),
6303
- renderThemeButton(
6304
- "system",
6305
- "\u2699\uFE0F",
6306
- "Sistema",
6307
- themeMode === "system",
6308
- size
6309
- )
6310
- ] });
6311
- }
6312
- return null;
6313
- }
6314
- );
6315
- ThemeToggle.displayName = "ThemeToggle";
6316
-
6317
6358
  // src/components/Select/Select.tsx
6318
6359
  import { create as create5, useStore as useStore4 } from "zustand";
6319
6360
  import {
6320
- useEffect as useEffect11,
6361
+ useEffect as useEffect12,
6321
6362
  useRef as useRef8,
6322
- forwardRef as forwardRef17,
6363
+ forwardRef as forwardRef16,
6323
6364
  isValidElement as isValidElement4,
6324
6365
  Children as Children4,
6325
6366
  cloneElement as cloneElement4,
6326
6367
  useId as useId10
6327
6368
  } from "react";
6328
6369
  import { CaretDown, Check as Check5, WarningCircle as WarningCircle5 } from "phosphor-react";
6329
- import { Fragment as Fragment7, jsx as jsx33, jsxs as jsxs27 } from "react/jsx-runtime";
6370
+ import { Fragment as Fragment7, jsx as jsx33, jsxs as jsxs26 } from "react/jsx-runtime";
6330
6371
  var VARIANT_CLASSES4 = {
6331
6372
  outlined: "border-2 rounded-lg focus:border-primary-950",
6332
6373
  underlined: "border-b-2 focus:border-primary-950",
@@ -6448,13 +6489,13 @@ var Select = ({
6448
6489
  search(children2);
6449
6490
  return found;
6450
6491
  };
6451
- useEffect11(() => {
6492
+ useEffect12(() => {
6452
6493
  if (!selectedLabel && defaultValue) {
6453
6494
  const label2 = findLabelForValue(children, defaultValue);
6454
6495
  if (label2) store.setState({ selectedLabel: label2 });
6455
6496
  }
6456
6497
  }, [children, defaultValue, selectedLabel]);
6457
- useEffect11(() => {
6498
+ useEffect12(() => {
6458
6499
  const handleClickOutside = (event) => {
6459
6500
  if (selectRef.current && !selectRef.current.contains(event.target)) {
6460
6501
  setOpen(false);
@@ -6489,7 +6530,7 @@ var Select = ({
6489
6530
  document.removeEventListener("keydown", handleArrowKeys);
6490
6531
  };
6491
6532
  }, [open]);
6492
- useEffect11(() => {
6533
+ useEffect12(() => {
6493
6534
  if (propValue) {
6494
6535
  setValue(propValue);
6495
6536
  const label2 = findLabelForValue(children, propValue);
@@ -6497,7 +6538,7 @@ var Select = ({
6497
6538
  }
6498
6539
  }, [propValue]);
6499
6540
  const sizeClasses = SIZE_CLASSES12[size];
6500
- return /* @__PURE__ */ jsxs27("div", { className: cn("w-full", className), children: [
6541
+ return /* @__PURE__ */ jsxs26("div", { className: cn("w-full", className), children: [
6501
6542
  label && /* @__PURE__ */ jsx33(
6502
6543
  "label",
6503
6544
  {
@@ -6507,9 +6548,9 @@ var Select = ({
6507
6548
  }
6508
6549
  ),
6509
6550
  /* @__PURE__ */ jsx33("div", { className: cn("relative w-full"), ref: selectRef, children: injectStore4(children, store, size, selectId) }),
6510
- (helperText || errorMessage) && /* @__PURE__ */ jsxs27("div", { className: "mt-1.5 gap-1.5", children: [
6551
+ (helperText || errorMessage) && /* @__PURE__ */ jsxs26("div", { className: "mt-1.5 gap-1.5", children: [
6511
6552
  helperText && /* @__PURE__ */ jsx33("p", { className: "text-sm text-text-500", children: helperText }),
6512
- errorMessage && /* @__PURE__ */ jsxs27("p", { className: "flex gap-1 items-center text-sm text-indicator-error", children: [
6553
+ errorMessage && /* @__PURE__ */ jsxs26("p", { className: "flex gap-1 items-center text-sm text-indicator-error", children: [
6513
6554
  /* @__PURE__ */ jsx33(WarningCircle5, { size: 16 }),
6514
6555
  " ",
6515
6556
  errorMessage
@@ -6526,7 +6567,7 @@ var SelectValue = ({
6526
6567
  const value = useStore4(store, (s) => s.value);
6527
6568
  return /* @__PURE__ */ jsx33("span", { className: "text-inherit flex gap-2 items-center", children: selectedLabel || placeholder || value });
6528
6569
  };
6529
- var SelectTrigger = forwardRef17(
6570
+ var SelectTrigger = forwardRef16(
6530
6571
  ({
6531
6572
  className,
6532
6573
  invalid = false,
@@ -6543,7 +6584,7 @@ var SelectTrigger = forwardRef17(
6543
6584
  const variantClasses = VARIANT_CLASSES4[variant];
6544
6585
  const heightClasses = HEIGHT_CLASSES[size];
6545
6586
  const paddingClasses = PADDING_CLASSES[size];
6546
- return /* @__PURE__ */ jsxs27(
6587
+ return /* @__PURE__ */ jsxs26(
6547
6588
  "button",
6548
6589
  {
6549
6590
  ref,
@@ -6580,7 +6621,7 @@ var SelectTrigger = forwardRef17(
6580
6621
  }
6581
6622
  );
6582
6623
  SelectTrigger.displayName = "SelectTrigger";
6583
- var SelectContent = forwardRef17(
6624
+ var SelectContent = forwardRef16(
6584
6625
  ({
6585
6626
  children,
6586
6627
  className,
@@ -6610,7 +6651,7 @@ var SelectContent = forwardRef17(
6610
6651
  }
6611
6652
  );
6612
6653
  SelectContent.displayName = "SelectContent";
6613
- var SelectItem = forwardRef17(
6654
+ var SelectItem = forwardRef16(
6614
6655
  ({
6615
6656
  className,
6616
6657
  children,
@@ -6637,7 +6678,7 @@ var SelectItem = forwardRef17(
6637
6678
  }
6638
6679
  props.onClick?.(e);
6639
6680
  };
6640
- return /* @__PURE__ */ jsxs27(
6681
+ return /* @__PURE__ */ jsxs26(
6641
6682
  "div",
6642
6683
  {
6643
6684
  role: "menuitem",
@@ -6670,16 +6711,16 @@ var Select_default = Select;
6670
6711
  // src/components/Menu/Menu.tsx
6671
6712
  import { create as create6, useStore as useStore5 } from "zustand";
6672
6713
  import {
6673
- useEffect as useEffect12,
6714
+ useEffect as useEffect13,
6674
6715
  useRef as useRef9,
6675
- forwardRef as forwardRef18,
6716
+ forwardRef as forwardRef17,
6676
6717
  isValidElement as isValidElement5,
6677
6718
  Children as Children5,
6678
6719
  cloneElement as cloneElement5,
6679
- useState as useState14
6720
+ useState as useState15
6680
6721
  } from "react";
6681
- import { CaretLeft as CaretLeft2, CaretRight as CaretRight3 } from "phosphor-react";
6682
- import { jsx as jsx34, jsxs as jsxs28 } from "react/jsx-runtime";
6722
+ import { CaretLeft as CaretLeft2, CaretRight as CaretRight4 } from "phosphor-react";
6723
+ import { jsx as jsx34, jsxs as jsxs27 } from "react/jsx-runtime";
6683
6724
  var createMenuStore = (onValueChange) => create6((set) => ({
6684
6725
  value: "",
6685
6726
  setValue: (value) => {
@@ -6698,7 +6739,7 @@ var VARIANT_CLASSES5 = {
6698
6739
  "menu-overflow": "",
6699
6740
  breadcrumb: "bg-transparent shadow-none !px-0"
6700
6741
  };
6701
- var Menu = forwardRef18(
6742
+ var Menu = forwardRef17(
6702
6743
  ({
6703
6744
  className,
6704
6745
  children,
@@ -6712,7 +6753,7 @@ var Menu = forwardRef18(
6712
6753
  storeRef.current ??= createMenuStore(onValueChange);
6713
6754
  const store = storeRef.current;
6714
6755
  const { setValue } = useStore5(store, (s) => s);
6715
- useEffect12(() => {
6756
+ useEffect13(() => {
6716
6757
  setValue(propValue ?? defaultValue);
6717
6758
  }, [defaultValue, propValue, setValue]);
6718
6759
  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";
@@ -6733,7 +6774,7 @@ var Menu = forwardRef18(
6733
6774
  }
6734
6775
  );
6735
6776
  Menu.displayName = "Menu";
6736
- var MenuContent = forwardRef18(
6777
+ var MenuContent = forwardRef17(
6737
6778
  ({ className, children, variant = "menu", ...props }, ref) => {
6738
6779
  const baseClasses = "w-full flex flex-row items-center gap-2";
6739
6780
  const variantClasses = variant === "menu2" || variant === "menu-overflow" ? "overflow-x-auto scroll-smooth" : "";
@@ -6755,7 +6796,7 @@ var MenuContent = forwardRef18(
6755
6796
  }
6756
6797
  );
6757
6798
  MenuContent.displayName = "MenuContent";
6758
- var MenuItem = forwardRef18(
6799
+ var MenuItem = forwardRef17(
6759
6800
  ({
6760
6801
  className,
6761
6802
  children,
@@ -6804,7 +6845,7 @@ var MenuItem = forwardRef18(
6804
6845
  children
6805
6846
  }
6806
6847
  ),
6807
- menu2: /* @__PURE__ */ jsxs28(
6848
+ menu2: /* @__PURE__ */ jsxs27(
6808
6849
  "li",
6809
6850
  {
6810
6851
  "data-variant": "menu2",
@@ -6829,7 +6870,7 @@ var MenuItem = forwardRef18(
6829
6870
  ]
6830
6871
  }
6831
6872
  ),
6832
- "menu-overflow": /* @__PURE__ */ jsxs28(
6873
+ "menu-overflow": /* @__PURE__ */ jsxs27(
6833
6874
  "li",
6834
6875
  {
6835
6876
  "data-variant": "menu-overflow",
@@ -6854,7 +6895,7 @@ var MenuItem = forwardRef18(
6854
6895
  ]
6855
6896
  }
6856
6897
  ),
6857
- breadcrumb: /* @__PURE__ */ jsxs28(
6898
+ breadcrumb: /* @__PURE__ */ jsxs27(
6858
6899
  "li",
6859
6900
  {
6860
6901
  "data-variant": "breadcrumb",
@@ -6877,7 +6918,7 @@ var MenuItem = forwardRef18(
6877
6918
  }
6878
6919
  ),
6879
6920
  separator && /* @__PURE__ */ jsx34(
6880
- CaretRight3,
6921
+ CaretRight4,
6881
6922
  {
6882
6923
  size: 16,
6883
6924
  className: "text-text-600",
@@ -6914,9 +6955,9 @@ var MenuOverflow = ({
6914
6955
  ...props
6915
6956
  }) => {
6916
6957
  const containerRef = useRef9(null);
6917
- const [showLeftArrow, setShowLeftArrow] = useState14(false);
6918
- const [showRightArrow, setShowRightArrow] = useState14(false);
6919
- useEffect12(() => {
6958
+ const [showLeftArrow, setShowLeftArrow] = useState15(false);
6959
+ const [showRightArrow, setShowRightArrow] = useState15(false);
6960
+ useEffect13(() => {
6920
6961
  const checkScroll = () => internalCheckScroll(
6921
6962
  containerRef.current,
6922
6963
  setShowLeftArrow,
@@ -6931,13 +6972,13 @@ var MenuOverflow = ({
6931
6972
  window.removeEventListener("resize", checkScroll);
6932
6973
  };
6933
6974
  }, []);
6934
- return /* @__PURE__ */ jsxs28(
6975
+ return /* @__PURE__ */ jsxs27(
6935
6976
  "div",
6936
6977
  {
6937
6978
  "data-testid": "menu-overflow-wrapper",
6938
6979
  className: cn("relative w-full overflow-hidden", className),
6939
6980
  children: [
6940
- showLeftArrow && /* @__PURE__ */ jsxs28(
6981
+ showLeftArrow && /* @__PURE__ */ jsxs27(
6941
6982
  "button",
6942
6983
  {
6943
6984
  onClick: () => internalScroll(containerRef.current, "left"),
@@ -6960,14 +7001,14 @@ var MenuOverflow = ({
6960
7001
  children: /* @__PURE__ */ jsx34(MenuContent, { ref: containerRef, variant: "menu2", children })
6961
7002
  }
6962
7003
  ),
6963
- showRightArrow && /* @__PURE__ */ jsxs28(
7004
+ showRightArrow && /* @__PURE__ */ jsxs27(
6964
7005
  "button",
6965
7006
  {
6966
7007
  onClick: () => internalScroll(containerRef.current, "right"),
6967
7008
  className: "absolute right-0 top-1/2 -translate-y-1/2 z-10 flex h-8 w-8 items-center justify-center rounded-full bg-white shadow-md cursor-pointer",
6968
7009
  "data-testid": "scroll-right-button",
6969
7010
  children: [
6970
- /* @__PURE__ */ jsx34(CaretRight3, { size: 16 }),
7011
+ /* @__PURE__ */ jsx34(CaretRight4, { size: 16 }),
6971
7012
  /* @__PURE__ */ jsx34("span", { className: "sr-only", children: "Scroll right" })
6972
7013
  ]
6973
7014
  }
@@ -6988,8 +7029,8 @@ var injectStore5 = (children, store) => Children5.map(children, (child) => {
6988
7029
  var Menu_default = Menu;
6989
7030
 
6990
7031
  // src/components/Skeleton/Skeleton.tsx
6991
- import { forwardRef as forwardRef19 } from "react";
6992
- import { jsx as jsx35, jsxs as jsxs29 } from "react/jsx-runtime";
7032
+ import { forwardRef as forwardRef18 } from "react";
7033
+ import { jsx as jsx35, jsxs as jsxs28 } from "react/jsx-runtime";
6993
7034
  var SKELETON_ANIMATION_CLASSES = {
6994
7035
  pulse: "animate-pulse",
6995
7036
  none: ""
@@ -7006,7 +7047,7 @@ var SPACING_CLASSES = {
7006
7047
  medium: "space-y-2",
7007
7048
  large: "space-y-3"
7008
7049
  };
7009
- var Skeleton = forwardRef19(
7050
+ var Skeleton = forwardRef18(
7010
7051
  ({
7011
7052
  variant = "text",
7012
7053
  width,
@@ -7055,13 +7096,13 @@ var Skeleton = forwardRef19(
7055
7096
  );
7056
7097
  }
7057
7098
  );
7058
- var SkeletonText = forwardRef19(
7099
+ var SkeletonText = forwardRef18(
7059
7100
  (props, ref) => /* @__PURE__ */ jsx35(Skeleton, { ref, variant: "text", ...props })
7060
7101
  );
7061
- var SkeletonCircle = forwardRef19((props, ref) => /* @__PURE__ */ jsx35(Skeleton, { ref, variant: "circular", ...props }));
7062
- var SkeletonRectangle = forwardRef19((props, ref) => /* @__PURE__ */ jsx35(Skeleton, { ref, variant: "rectangular", ...props }));
7063
- var SkeletonRounded = forwardRef19((props, ref) => /* @__PURE__ */ jsx35(Skeleton, { ref, variant: "rounded", ...props }));
7064
- var SkeletonCard = forwardRef19(
7102
+ var SkeletonCircle = forwardRef18((props, ref) => /* @__PURE__ */ jsx35(Skeleton, { ref, variant: "circular", ...props }));
7103
+ var SkeletonRectangle = forwardRef18((props, ref) => /* @__PURE__ */ jsx35(Skeleton, { ref, variant: "rectangular", ...props }));
7104
+ var SkeletonRounded = forwardRef18((props, ref) => /* @__PURE__ */ jsx35(Skeleton, { ref, variant: "rounded", ...props }));
7105
+ var SkeletonCard = forwardRef18(
7065
7106
  ({
7066
7107
  showAvatar = true,
7067
7108
  showTitle = true,
@@ -7071,7 +7112,7 @@ var SkeletonCard = forwardRef19(
7071
7112
  className = "",
7072
7113
  ...props
7073
7114
  }, ref) => {
7074
- return /* @__PURE__ */ jsxs29(
7115
+ return /* @__PURE__ */ jsxs28(
7075
7116
  "div",
7076
7117
  {
7077
7118
  ref,
@@ -7081,14 +7122,14 @@ var SkeletonCard = forwardRef19(
7081
7122
  ),
7082
7123
  ...props,
7083
7124
  children: [
7084
- /* @__PURE__ */ jsxs29("div", { className: "flex items-start space-x-3", children: [
7125
+ /* @__PURE__ */ jsxs28("div", { className: "flex items-start space-x-3", children: [
7085
7126
  showAvatar && /* @__PURE__ */ jsx35(SkeletonCircle, { width: 40, height: 40 }),
7086
- /* @__PURE__ */ jsxs29("div", { className: "flex-1 space-y-2", children: [
7127
+ /* @__PURE__ */ jsxs28("div", { className: "flex-1 space-y-2", children: [
7087
7128
  showTitle && /* @__PURE__ */ jsx35(SkeletonText, { width: "60%", height: 20 }),
7088
7129
  showDescription && /* @__PURE__ */ jsx35(SkeletonText, { lines, spacing: "small" })
7089
7130
  ] })
7090
7131
  ] }),
7091
- showActions && /* @__PURE__ */ jsxs29("div", { className: "flex justify-end space-x-2 mt-4", children: [
7132
+ showActions && /* @__PURE__ */ jsxs28("div", { className: "flex justify-end space-x-2 mt-4", children: [
7092
7133
  /* @__PURE__ */ jsx35(SkeletonRectangle, { width: 80, height: 32 }),
7093
7134
  /* @__PURE__ */ jsx35(SkeletonRectangle, { width: 80, height: 32 })
7094
7135
  ] })
@@ -7097,7 +7138,7 @@ var SkeletonCard = forwardRef19(
7097
7138
  );
7098
7139
  }
7099
7140
  );
7100
- var SkeletonList = forwardRef19(
7141
+ var SkeletonList = forwardRef18(
7101
7142
  ({
7102
7143
  items = 3,
7103
7144
  showAvatar = true,
@@ -7107,18 +7148,18 @@ var SkeletonList = forwardRef19(
7107
7148
  className = "",
7108
7149
  ...props
7109
7150
  }, ref) => {
7110
- return /* @__PURE__ */ jsx35("div", { ref, className: cn("space-y-3", className), ...props, children: Array.from({ length: items }, (_, index) => /* @__PURE__ */ jsxs29("div", { className: "flex items-start space-x-3 p-3", children: [
7151
+ return /* @__PURE__ */ jsx35("div", { ref, className: cn("space-y-3", className), ...props, children: Array.from({ length: items }, (_, index) => /* @__PURE__ */ jsxs28("div", { className: "flex items-start space-x-3 p-3", children: [
7111
7152
  showAvatar && /* @__PURE__ */ jsx35(SkeletonCircle, { width: 32, height: 32 }),
7112
- /* @__PURE__ */ jsxs29("div", { className: "flex-1 space-y-2", children: [
7153
+ /* @__PURE__ */ jsxs28("div", { className: "flex-1 space-y-2", children: [
7113
7154
  showTitle && /* @__PURE__ */ jsx35(SkeletonText, { width: "40%", height: 16 }),
7114
7155
  showDescription && /* @__PURE__ */ jsx35(SkeletonText, { lines, spacing: "small" })
7115
7156
  ] })
7116
7157
  ] }, index)) });
7117
7158
  }
7118
7159
  );
7119
- var SkeletonTable = forwardRef19(
7160
+ var SkeletonTable = forwardRef18(
7120
7161
  ({ rows = 5, columns = 4, showHeader = true, className = "", ...props }, ref) => {
7121
- return /* @__PURE__ */ jsxs29("div", { ref, className: cn("w-full", className), ...props, children: [
7162
+ return /* @__PURE__ */ jsxs28("div", { ref, className: cn("w-full", className), ...props, children: [
7122
7163
  showHeader && /* @__PURE__ */ jsx35("div", { className: "flex space-x-2 mb-3", children: Array.from({ length: columns }, (_, index) => /* @__PURE__ */ jsx35(
7123
7164
  SkeletonText,
7124
7165
  {
@@ -7140,7 +7181,7 @@ var SkeletonTable = forwardRef19(
7140
7181
  );
7141
7182
 
7142
7183
  // src/components/NotFound/NotFound.tsx
7143
- import { jsx as jsx36, jsxs as jsxs30 } from "react/jsx-runtime";
7184
+ import { jsx as jsx36, jsxs as jsxs29 } from "react/jsx-runtime";
7144
7185
  var NotFound = ({
7145
7186
  title,
7146
7187
  description,
@@ -7197,7 +7238,7 @@ var NotFound = ({
7197
7238
  "aria-labelledby": "error-title",
7198
7239
  "aria-describedby": "error-description",
7199
7240
  className: "flex flex-col items-center text-center max-w-md space-y-6",
7200
- children: /* @__PURE__ */ jsxs30("section", { "aria-label": `Erro ${errorCode}`, children: [
7241
+ children: /* @__PURE__ */ jsxs29("section", { "aria-label": `Erro ${errorCode}`, children: [
7201
7242
  /* @__PURE__ */ jsx36(
7202
7243
  "div",
7203
7244
  {
@@ -7206,7 +7247,7 @@ var NotFound = ({
7206
7247
  children: errorCode
7207
7248
  }
7208
7249
  ),
7209
- /* @__PURE__ */ jsxs30("header", { className: "space-y-2", children: [
7250
+ /* @__PURE__ */ jsxs29("header", { className: "space-y-2", children: [
7210
7251
  /* @__PURE__ */ jsx36(
7211
7252
  Text_default,
7212
7253
  {
@@ -7243,8 +7284,8 @@ var NotFound_default = NotFound;
7243
7284
  // src/components/VideoPlayer/VideoPlayer.tsx
7244
7285
  import {
7245
7286
  useRef as useRef10,
7246
- useState as useState15,
7247
- useEffect as useEffect13,
7287
+ useState as useState16,
7288
+ useEffect as useEffect14,
7248
7289
  useCallback as useCallback2
7249
7290
  } from "react";
7250
7291
  import { createPortal } from "react-dom";
@@ -7258,7 +7299,7 @@ import {
7258
7299
  ClosedCaptioning,
7259
7300
  DotsThreeVertical as DotsThreeVertical2
7260
7301
  } from "phosphor-react";
7261
- import { jsx as jsx37, jsxs as jsxs31 } from "react/jsx-runtime";
7302
+ import { jsx as jsx37, jsxs as jsxs30 } from "react/jsx-runtime";
7262
7303
  var CONTROLS_HIDE_TIMEOUT = 3e3;
7263
7304
  var LEAVE_HIDE_TIMEOUT = 1e3;
7264
7305
  var INIT_DELAY = 100;
@@ -7293,7 +7334,7 @@ var VolumeControls = ({
7293
7334
  isMuted,
7294
7335
  onVolumeChange,
7295
7336
  onToggleMute
7296
- }) => /* @__PURE__ */ jsxs31("div", { className: "flex items-center gap-2", children: [
7337
+ }) => /* @__PURE__ */ jsxs30("div", { className: "flex items-center gap-2", children: [
7297
7338
  /* @__PURE__ */ jsx37(
7298
7339
  IconButton_default,
7299
7340
  {
@@ -7347,7 +7388,7 @@ var SpeedMenu = ({
7347
7388
  top: `${position.top}px`,
7348
7389
  left: `${position.left}px`
7349
7390
  } : void 0,
7350
- children: [0.5, 0.75, 1, 1.25, 1.5, 2].map((speed) => /* @__PURE__ */ jsxs31(
7391
+ children: [0.5, 0.75, 1, 1.25, 1.5, 2].map((speed) => /* @__PURE__ */ jsxs30(
7351
7392
  "button",
7352
7393
  {
7353
7394
  role: "menuitemradio",
@@ -7364,7 +7405,7 @@ var SpeedMenu = ({
7364
7405
  }
7365
7406
  );
7366
7407
  const portalContent = typeof window !== "undefined" && typeof document !== "undefined" ? createPortal(menuContent, document.body) : null;
7367
- return /* @__PURE__ */ jsxs31("div", { className: "relative", children: [
7408
+ return /* @__PURE__ */ jsxs30("div", { className: "relative", children: [
7368
7409
  /* @__PURE__ */ jsx37(
7369
7410
  IconButton_default,
7370
7411
  {
@@ -7395,20 +7436,20 @@ var VideoPlayer = ({
7395
7436
  storageKey = "video-progress"
7396
7437
  }) => {
7397
7438
  const videoRef = useRef10(null);
7398
- const [isPlaying, setIsPlaying] = useState15(false);
7399
- const [currentTime, setCurrentTime] = useState15(0);
7400
- const [duration, setDuration] = useState15(0);
7401
- const [isMuted, setIsMuted] = useState15(false);
7402
- const [volume, setVolume] = useState15(1);
7403
- const [isFullscreen, setIsFullscreen] = useState15(false);
7404
- const [showControls, setShowControls] = useState15(true);
7405
- const [hasCompleted, setHasCompleted] = useState15(false);
7406
- const [showCaptions, setShowCaptions] = useState15(false);
7407
- useEffect13(() => {
7439
+ const [isPlaying, setIsPlaying] = useState16(false);
7440
+ const [currentTime, setCurrentTime] = useState16(0);
7441
+ const [duration, setDuration] = useState16(0);
7442
+ const [isMuted, setIsMuted] = useState16(false);
7443
+ const [volume, setVolume] = useState16(1);
7444
+ const [isFullscreen, setIsFullscreen] = useState16(false);
7445
+ const [showControls, setShowControls] = useState16(true);
7446
+ const [hasCompleted, setHasCompleted] = useState16(false);
7447
+ const [showCaptions, setShowCaptions] = useState16(false);
7448
+ useEffect14(() => {
7408
7449
  setHasCompleted(false);
7409
7450
  }, [src]);
7410
- const [playbackRate, setPlaybackRate] = useState15(1);
7411
- const [showSpeedMenu, setShowSpeedMenu] = useState15(false);
7451
+ const [playbackRate, setPlaybackRate] = useState16(1);
7452
+ const [showSpeedMenu, setShowSpeedMenu] = useState16(false);
7412
7453
  const lastSaveTimeRef = useRef10(0);
7413
7454
  const trackRef = useRef10(null);
7414
7455
  const controlsTimeoutRef = useRef10(null);
@@ -7476,13 +7517,13 @@ var VideoPlayer = ({
7476
7517
  }, LEAVE_HIDE_TIMEOUT);
7477
7518
  }
7478
7519
  }, [isFullscreen, clearControlsTimeout, isUserInteracting]);
7479
- useEffect13(() => {
7520
+ useEffect14(() => {
7480
7521
  if (videoRef.current) {
7481
7522
  videoRef.current.volume = volume;
7482
7523
  videoRef.current.muted = isMuted;
7483
7524
  }
7484
7525
  }, [volume, isMuted]);
7485
- useEffect13(() => {
7526
+ useEffect14(() => {
7486
7527
  const video = videoRef.current;
7487
7528
  if (!video) return;
7488
7529
  const onPlay = () => setIsPlaying(true);
@@ -7497,7 +7538,7 @@ var VideoPlayer = ({
7497
7538
  video.removeEventListener("ended", onEnded);
7498
7539
  };
7499
7540
  }, []);
7500
- useEffect13(() => {
7541
+ useEffect14(() => {
7501
7542
  if (isPlaying) {
7502
7543
  showControlsWithTimer();
7503
7544
  } else {
@@ -7509,7 +7550,7 @@ var VideoPlayer = ({
7509
7550
  }
7510
7551
  }
7511
7552
  }, [isPlaying, isFullscreen, showControlsWithTimer, clearControlsTimeout]);
7512
- useEffect13(() => {
7553
+ useEffect14(() => {
7513
7554
  const handleFullscreenChange = () => {
7514
7555
  const isCurrentlyFullscreen = !!document.fullscreenElement;
7515
7556
  setIsFullscreen(isCurrentlyFullscreen);
@@ -7522,7 +7563,7 @@ var VideoPlayer = ({
7522
7563
  document.removeEventListener("fullscreenchange", handleFullscreenChange);
7523
7564
  };
7524
7565
  }, [showControlsWithTimer]);
7525
- useEffect13(() => {
7566
+ useEffect14(() => {
7526
7567
  const init = () => {
7527
7568
  if (!isFullscreen) {
7528
7569
  showControlsWithTimer();
@@ -7555,7 +7596,7 @@ var VideoPlayer = ({
7555
7596
  if (hasValidSaved) return saved;
7556
7597
  return void 0;
7557
7598
  }, [autoSave, storageKey, src, initialTime]);
7558
- useEffect13(() => {
7599
+ useEffect14(() => {
7559
7600
  const start = getInitialTime();
7560
7601
  if (start !== void 0 && videoRef.current) {
7561
7602
  videoRef.current.currentTime = start;
@@ -7676,12 +7717,12 @@ var VideoPlayer = ({
7676
7717
  setDuration(videoRef.current.duration);
7677
7718
  }
7678
7719
  }, []);
7679
- useEffect13(() => {
7720
+ useEffect14(() => {
7680
7721
  if (trackRef.current?.track) {
7681
7722
  trackRef.current.track.mode = showCaptions && subtitles ? "showing" : "hidden";
7682
7723
  }
7683
7724
  }, [subtitles, showCaptions]);
7684
- useEffect13(() => {
7725
+ useEffect14(() => {
7685
7726
  const handleVisibilityChange = () => {
7686
7727
  if (document.hidden && isPlaying && videoRef.current) {
7687
7728
  videoRef.current.pause();
@@ -7764,8 +7805,8 @@ var VideoPlayer = ({
7764
7805
  toggleFullscreen
7765
7806
  ]
7766
7807
  );
7767
- return /* @__PURE__ */ jsxs31("div", { className: cn("flex flex-col", className), children: [
7768
- (title || subtitleText) && /* @__PURE__ */ jsx37("div", { className: "bg-subject-1 px-8 py-4 flex items-end justify-between min-h-20", children: /* @__PURE__ */ jsxs31("div", { className: "flex flex-col gap-1", children: [
7808
+ return /* @__PURE__ */ jsxs30("div", { className: cn("flex flex-col", className), children: [
7809
+ (title || subtitleText) && /* @__PURE__ */ jsx37("div", { className: "bg-subject-1 px-8 py-4 flex items-end justify-between min-h-20", children: /* @__PURE__ */ jsxs30("div", { className: "flex flex-col gap-1", children: [
7769
7810
  title && /* @__PURE__ */ jsx37(
7770
7811
  Text_default,
7771
7812
  {
@@ -7789,7 +7830,7 @@ var VideoPlayer = ({
7789
7830
  }
7790
7831
  )
7791
7832
  ] }) }),
7792
- /* @__PURE__ */ jsxs31(
7833
+ /* @__PURE__ */ jsxs30(
7793
7834
  "section",
7794
7835
  {
7795
7836
  className: cn(
@@ -7858,7 +7899,7 @@ var VideoPlayer = ({
7858
7899
  ) })
7859
7900
  }
7860
7901
  ),
7861
- /* @__PURE__ */ jsxs31(
7902
+ /* @__PURE__ */ jsxs30(
7862
7903
  "div",
7863
7904
  {
7864
7905
  className: cn(
@@ -7875,8 +7916,8 @@ var VideoPlayer = ({
7875
7916
  onSeek: handleSeek
7876
7917
  }
7877
7918
  ),
7878
- /* @__PURE__ */ jsxs31("div", { className: "flex items-center justify-between px-4 pb-4", children: [
7879
- /* @__PURE__ */ jsxs31("div", { className: "flex items-center gap-4", children: [
7919
+ /* @__PURE__ */ jsxs30("div", { className: "flex items-center justify-between px-4 pb-4", children: [
7920
+ /* @__PURE__ */ jsxs30("div", { className: "flex items-center gap-4", children: [
7880
7921
  /* @__PURE__ */ jsx37(
7881
7922
  IconButton_default,
7882
7923
  {
@@ -7907,7 +7948,7 @@ var VideoPlayer = ({
7907
7948
  )
7908
7949
  }
7909
7950
  ),
7910
- /* @__PURE__ */ jsxs31(Text_default, { size: "sm", weight: "medium", color: "text-white", children: [
7951
+ /* @__PURE__ */ jsxs30(Text_default, { size: "sm", weight: "medium", color: "text-white", children: [
7911
7952
  formatTime(currentTime),
7912
7953
  " / ",
7913
7954
  formatTime(duration)
@@ -7935,9 +7976,9 @@ var VideoPlayer = ({
7935
7976
  var VideoPlayer_default = VideoPlayer;
7936
7977
 
7937
7978
  // src/components/Whiteboard/Whiteboard.tsx
7938
- import { useCallback as useCallback3, useState as useState16 } from "react";
7979
+ import { useCallback as useCallback3, useState as useState17 } from "react";
7939
7980
  import { ArrowsOut } from "phosphor-react";
7940
- import { Fragment as Fragment8, jsx as jsx38, jsxs as jsxs32 } from "react/jsx-runtime";
7981
+ import { Fragment as Fragment8, jsx as jsx38, jsxs as jsxs31 } from "react/jsx-runtime";
7941
7982
  var IMAGE_WIDTH = 225;
7942
7983
  var IMAGE_HEIGHT = 90;
7943
7984
  var Whiteboard = ({
@@ -7948,7 +7989,7 @@ var Whiteboard = ({
7948
7989
  imagesPerRow = 2,
7949
7990
  ...rest
7950
7991
  }) => {
7951
- const [imageErrors, setImageErrors] = useState16(/* @__PURE__ */ new Set());
7992
+ const [imageErrors, setImageErrors] = useState17(/* @__PURE__ */ new Set());
7952
7993
  const handleDownload = useCallback3(
7953
7994
  (image) => {
7954
7995
  if (onDownload) {
@@ -7995,7 +8036,7 @@ var Whiteboard = ({
7995
8036
  className
7996
8037
  ),
7997
8038
  ...rest,
7998
- children: /* @__PURE__ */ jsx38("div", { className: cn("grid gap-4", gridColsClass), children: images.map((image) => /* @__PURE__ */ jsxs32(
8039
+ children: /* @__PURE__ */ jsx38("div", { className: cn("grid gap-4", gridColsClass), children: images.map((image) => /* @__PURE__ */ jsxs31(
7999
8040
  "div",
8000
8041
  {
8001
8042
  className: "relative group overflow-hidden bg-gray-100 rounded-lg",
@@ -8011,7 +8052,7 @@ var Whiteboard = ({
8011
8052
  width: `${IMAGE_WIDTH}px`,
8012
8053
  height: `${IMAGE_HEIGHT}px`
8013
8054
  },
8014
- children: imageErrors.has(image.id) ? /* @__PURE__ */ jsx38("div", { className: "absolute inset-0 flex items-center justify-center bg-gray-200", children: /* @__PURE__ */ jsx38("p", { className: "text-gray-500 text-sm text-center px-2", children: "Imagem indispon\xEDvel" }) }) : /* @__PURE__ */ jsxs32(Fragment8, { children: [
8055
+ children: imageErrors.has(image.id) ? /* @__PURE__ */ jsx38("div", { className: "absolute inset-0 flex items-center justify-center bg-gray-200", children: /* @__PURE__ */ jsx38("p", { className: "text-gray-500 text-sm text-center px-2", children: "Imagem indispon\xEDvel" }) }) : /* @__PURE__ */ jsxs31(Fragment8, { children: [
8015
8056
  /* @__PURE__ */ jsx38(
8016
8057
  "img",
8017
8058
  {
@@ -8056,8 +8097,8 @@ var Whiteboard_default = Whiteboard;
8056
8097
  import {
8057
8098
  createContext,
8058
8099
  useContext,
8059
- useEffect as useEffect14,
8060
- useState as useState17,
8100
+ useEffect as useEffect15,
8101
+ useState as useState18,
8061
8102
  useCallback as useCallback4,
8062
8103
  useMemo as useMemo4
8063
8104
  } from "react";
@@ -8073,7 +8114,7 @@ var AuthProvider = ({
8073
8114
  getSessionFn,
8074
8115
  getTokensFn
8075
8116
  }) => {
8076
- const [authState, setAuthState] = useState17({
8117
+ const [authState, setAuthState] = useState18({
8077
8118
  isAuthenticated: false,
8078
8119
  isLoading: true,
8079
8120
  ...initialAuthState
@@ -8121,7 +8162,7 @@ var AuthProvider = ({
8121
8162
  tokens: void 0
8122
8163
  }));
8123
8164
  }, [signOutFn]);
8124
- useEffect14(() => {
8165
+ useEffect15(() => {
8125
8166
  checkAuth();
8126
8167
  }, [checkAuth]);
8127
8168
  const contextValue = useMemo4(
@@ -8275,7 +8316,7 @@ function createZustandAuthAdapter(useAuthStore) {
8275
8316
  }
8276
8317
 
8277
8318
  // src/components/Auth/useUrlAuthentication.ts
8278
- import { useEffect as useEffect15, useRef as useRef11 } from "react";
8319
+ import { useEffect as useEffect16, useRef as useRef11 } from "react";
8279
8320
  import { useLocation as useLocation2 } from "react-router-dom";
8280
8321
  var getAuthParams = (location, extractParams) => {
8281
8322
  const searchParams = new URLSearchParams(location.search);
@@ -8324,7 +8365,7 @@ var handleUserData = (responseData, setUser) => {
8324
8365
  function useUrlAuthentication(options) {
8325
8366
  const location = useLocation2();
8326
8367
  const processedRef = useRef11(false);
8327
- useEffect15(() => {
8368
+ useEffect16(() => {
8328
8369
  const handleAuthentication = async () => {
8329
8370
  if (processedRef.current) {
8330
8371
  return;
@@ -8408,7 +8449,7 @@ function useApiConfig(api) {
8408
8449
  // src/components/Quiz/Quiz.tsx
8409
8450
  import {
8410
8451
  CaretLeft as CaretLeft3,
8411
- CaretRight as CaretRight4,
8452
+ CaretRight as CaretRight5,
8412
8453
  Clock as Clock2,
8413
8454
  SquaresFour,
8414
8455
  BookOpen,
@@ -8416,11 +8457,11 @@ import {
8416
8457
  XCircle as XCircle5
8417
8458
  } from "phosphor-react";
8418
8459
  import {
8419
- forwardRef as forwardRef20,
8420
- useEffect as useEffect16,
8460
+ forwardRef as forwardRef19,
8461
+ useEffect as useEffect17,
8421
8462
  useMemo as useMemo6,
8422
8463
  useId as useId11,
8423
- useState as useState18,
8464
+ useState as useState19,
8424
8465
  useCallback as useCallback5,
8425
8466
  useRef as useRef12
8426
8467
  } from "react";
@@ -9059,7 +9100,7 @@ var useQuizStore = create7()(
9059
9100
  var mock_image_question_default = "./mock-image-question-HEZCLFDL.png";
9060
9101
 
9061
9102
  // src/components/Quiz/Quiz.tsx
9062
- import { Fragment as Fragment10, jsx as jsx40, jsxs as jsxs33 } from "react/jsx-runtime";
9103
+ import { Fragment as Fragment10, jsx as jsx40, jsxs as jsxs32 } from "react/jsx-runtime";
9063
9104
  var getStatusBadge = (status) => {
9064
9105
  switch (status) {
9065
9106
  case "correct":
@@ -9078,18 +9119,18 @@ var getStatusStyles = (variantCorrect) => {
9078
9119
  return "bg-error-background border-error-300";
9079
9120
  }
9080
9121
  };
9081
- var Quiz = forwardRef20(({ children, className, variant = "default", ...props }, ref) => {
9122
+ var Quiz = forwardRef19(({ children, className, variant = "default", ...props }, ref) => {
9082
9123
  const { setVariant } = useQuizStore();
9083
- useEffect16(() => {
9124
+ useEffect17(() => {
9084
9125
  setVariant(variant);
9085
9126
  }, [variant, setVariant]);
9086
9127
  return /* @__PURE__ */ jsx40("div", { ref, className: cn("flex flex-col", className), ...props, children });
9087
9128
  });
9088
- var QuizHeaderResult = forwardRef20(
9129
+ var QuizHeaderResult = forwardRef19(
9089
9130
  ({ className, ...props }, ref) => {
9090
9131
  const { getQuestionResultByQuestionId, getCurrentQuestion } = useQuizStore();
9091
- const [status, setStatus] = useState18(void 0);
9092
- useEffect16(() => {
9132
+ const [status, setStatus] = useState19(void 0);
9133
+ useEffect17(() => {
9093
9134
  const cq = getCurrentQuestion();
9094
9135
  if (!cq) {
9095
9136
  setStatus(void 0);
@@ -9124,7 +9165,7 @@ var QuizHeaderResult = forwardRef20(
9124
9165
  return "N\xE3o foi dessa vez...voc\xEA deixou a resposta em branco";
9125
9166
  }
9126
9167
  };
9127
- return /* @__PURE__ */ jsxs33(
9168
+ return /* @__PURE__ */ jsxs32(
9128
9169
  "div",
9129
9170
  {
9130
9171
  ref,
@@ -9142,7 +9183,7 @@ var QuizHeaderResult = forwardRef20(
9142
9183
  );
9143
9184
  }
9144
9185
  );
9145
- var QuizTitle = forwardRef20(
9186
+ var QuizTitle = forwardRef19(
9146
9187
  ({ className, ...props }, ref) => {
9147
9188
  const {
9148
9189
  currentQuestionIndex,
@@ -9152,7 +9193,7 @@ var QuizTitle = forwardRef20(
9152
9193
  formatTime: formatTime2,
9153
9194
  isStarted
9154
9195
  } = useQuizStore();
9155
- const [showExitConfirmation, setShowExitConfirmation] = useState18(false);
9196
+ const [showExitConfirmation, setShowExitConfirmation] = useState19(false);
9156
9197
  const totalQuestions = getTotalQuestions();
9157
9198
  const quizTitle = getQuizTitle();
9158
9199
  const handleBackClick = () => {
@@ -9169,8 +9210,8 @@ var QuizTitle = forwardRef20(
9169
9210
  const handleCancelExit = () => {
9170
9211
  setShowExitConfirmation(false);
9171
9212
  };
9172
- return /* @__PURE__ */ jsxs33(Fragment10, { children: [
9173
- /* @__PURE__ */ jsxs33(
9213
+ return /* @__PURE__ */ jsxs32(Fragment10, { children: [
9214
+ /* @__PURE__ */ jsxs32(
9174
9215
  "div",
9175
9216
  {
9176
9217
  ref,
@@ -9189,7 +9230,7 @@ var QuizTitle = forwardRef20(
9189
9230
  onClick: handleBackClick
9190
9231
  }
9191
9232
  ),
9192
- /* @__PURE__ */ jsxs33("span", { className: "flex flex-col gap-2 text-center", children: [
9233
+ /* @__PURE__ */ jsxs32("span", { className: "flex flex-col gap-2 text-center", children: [
9193
9234
  /* @__PURE__ */ jsx40("p", { className: "text-text-950 font-bold text-md", children: quizTitle }),
9194
9235
  /* @__PURE__ */ jsx40("p", { className: "text-text-600 text-xs", children: totalQuestions > 0 ? `${currentQuestionIndex + 1} de ${totalQuestions}` : "0 de 0" })
9195
9236
  ] }),
@@ -9213,7 +9254,7 @@ var QuizTitle = forwardRef20(
9213
9254
  ] });
9214
9255
  }
9215
9256
  );
9216
- var QuizSubTitle = forwardRef20(
9257
+ var QuizSubTitle = forwardRef19(
9217
9258
  ({ subTitle, ...props }, ref) => {
9218
9259
  return /* @__PURE__ */ jsx40("div", { className: "px-4 pb-2 pt-6", ...props, ref, children: /* @__PURE__ */ jsx40("p", { className: "font-bold text-lg text-text-950", children: subTitle }) });
9219
9260
  }
@@ -9230,7 +9271,7 @@ var QuizHeader = () => {
9230
9271
  }
9231
9272
  );
9232
9273
  };
9233
- var QuizContainer = forwardRef20(({ children, className, ...props }, ref) => {
9274
+ var QuizContainer = forwardRef19(({ children, className, ...props }, ref) => {
9234
9275
  return /* @__PURE__ */ jsx40(
9235
9276
  "div",
9236
9277
  {
@@ -9244,7 +9285,7 @@ var QuizContainer = forwardRef20(({ children, className, ...props }, ref) => {
9244
9285
  }
9245
9286
  );
9246
9287
  });
9247
- var QuizContent = forwardRef20(({ paddingBottom }) => {
9288
+ var QuizContent = forwardRef19(({ paddingBottom }) => {
9248
9289
  const { getCurrentQuestion } = useQuizStore();
9249
9290
  const currentQuestion = getCurrentQuestion();
9250
9291
  const questionComponents = {
@@ -9295,7 +9336,7 @@ var QuizAlternative = ({ paddingBottom }) => {
9295
9336
  });
9296
9337
  if (!alternatives)
9297
9338
  return /* @__PURE__ */ jsx40("div", { children: /* @__PURE__ */ jsx40("p", { children: "N\xE3o h\xE1 Alternativas" }) });
9298
- return /* @__PURE__ */ jsxs33(Fragment10, { children: [
9339
+ return /* @__PURE__ */ jsxs32(Fragment10, { children: [
9299
9340
  /* @__PURE__ */ jsx40(QuizSubTitle, { subTitle: "Alternativas" }),
9300
9341
  /* @__PURE__ */ jsx40(QuizContainer, { className: cn("", paddingBottom), children: /* @__PURE__ */ jsx40("div", { className: "space-y-4", children: /* @__PURE__ */ jsx40(
9301
9342
  AlternativesList,
@@ -9396,7 +9437,7 @@ var QuizMultipleChoice = ({ paddingBottom }) => {
9396
9437
  });
9397
9438
  if (!choices)
9398
9439
  return /* @__PURE__ */ jsx40("div", { children: /* @__PURE__ */ jsx40("p", { children: "N\xE3o h\xE1 Escolhas Multiplas" }) });
9399
- return /* @__PURE__ */ jsxs33(Fragment10, { children: [
9440
+ return /* @__PURE__ */ jsxs32(Fragment10, { children: [
9400
9441
  /* @__PURE__ */ jsx40(QuizSubTitle, { subTitle: "Alternativas" }),
9401
9442
  /* @__PURE__ */ jsx40(QuizContainer, { className: cn("", paddingBottom), children: /* @__PURE__ */ jsx40("div", { className: "space-y-4", children: /* @__PURE__ */ jsx40(
9402
9443
  MultipleChoiceList,
@@ -9440,14 +9481,14 @@ var QuizDissertative = ({ paddingBottom }) => {
9440
9481
  textareaRef.current.style.height = `${newHeight}px`;
9441
9482
  }
9442
9483
  }, []);
9443
- useEffect16(() => {
9484
+ useEffect17(() => {
9444
9485
  adjustTextareaHeight();
9445
9486
  }, [currentAnswer, adjustTextareaHeight]);
9446
9487
  if (!currentQuestion) {
9447
9488
  return /* @__PURE__ */ jsx40("div", { className: "space-y-4", children: /* @__PURE__ */ jsx40("p", { className: "text-text-600 text-md", children: "Nenhuma quest\xE3o dispon\xEDvel" }) });
9448
9489
  }
9449
9490
  const localAnswer = (variant == "result" ? currentQuestionResult?.answer : currentAnswer?.answer) || "";
9450
- return /* @__PURE__ */ jsxs33(Fragment10, { children: [
9491
+ return /* @__PURE__ */ jsxs32(Fragment10, { children: [
9451
9492
  /* @__PURE__ */ jsx40(QuizSubTitle, { subTitle: "Resposta" }),
9452
9493
  /* @__PURE__ */ jsx40(QuizContainer, { className: cn(variant != "result" && paddingBottom), children: /* @__PURE__ */ jsx40("div", { className: "space-y-4 max-h-[600px] overflow-y-auto", children: variant === "default" ? /* @__PURE__ */ jsx40("div", { className: "space-y-4", children: /* @__PURE__ */ jsx40(
9453
9494
  TextArea_default,
@@ -9460,7 +9501,7 @@ var QuizDissertative = ({ paddingBottom }) => {
9460
9501
  className: "min-h-[120px] max-h-[400px] resize-none overflow-y-auto"
9461
9502
  }
9462
9503
  ) }) : /* @__PURE__ */ jsx40("div", { className: "space-y-4", children: /* @__PURE__ */ jsx40("p", { className: "text-text-600 text-md whitespace-pre-wrap", children: localAnswer || "Nenhuma resposta fornecida" }) }) }) }),
9463
- variant === "result" && currentQuestionResult?.answerStatus == "RESPOSTA_INCORRETA" /* RESPOSTA_INCORRETA */ && /* @__PURE__ */ jsxs33(Fragment10, { children: [
9504
+ variant === "result" && currentQuestionResult?.answerStatus == "RESPOSTA_INCORRETA" /* RESPOSTA_INCORRETA */ && /* @__PURE__ */ jsxs32(Fragment10, { children: [
9464
9505
  /* @__PURE__ */ jsx40(QuizSubTitle, { subTitle: "Observa\xE7\xE3o do professor" }),
9465
9506
  /* @__PURE__ */ jsx40(QuizContainer, { className: cn("", paddingBottom), children: /* @__PURE__ */ jsx40("p", { className: "text-text-600 text-md whitespace-pre-wrap", children: "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed euismod, urna eu tincidunt consectetur, nisi nisl aliquam nunc, eget aliquam massa nisl quis neque. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia curae; Integer euismod, urna eu tincidunt consectetur, nisi nisl aliquam nunc, eget aliquam massa nisl quis neque. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Suspendisse potenti. Nullam ac urna eu felis dapibus condimentum sit amet a augue. Sed non neque elit. Sed ut imperdiet nisi. Proin condimentum fermentum nunc. Etiam pharetra, erat sed fermentum feugiat, velit mauris egestas quam, ut aliquam massa nisl quis neque. Suspendisse in orci enim. Mauris euismod, urna eu tincidunt consectetur, nisi nisl aliquam nunc, eget aliquam massa nisl quis neque. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia curae; Integer euismod, urna eu tincidunt consectetur, nisi nisl aliquam nunc, eget aliquam massa nisl quis neque. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Suspendisse potenti. Nullam ac urna eu felis dapibus condimentum sit amet a augue. Sed non neque elit. Sed ut imperdiet nisi. Proin condimentum fermentum nunc. Etiam pharetra, erat sed fermentum feugiat, velit mauris egestas quam, ut aliquam massa nisl quis neque. Suspendisse in orci enim. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia curae; Integer euismod, urna eu tincidunt consectetur, nisi nisl aliquam nunc, eget aliquam massa nisl quis neque. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Suspendisse potenti. Nullam ac urna eu felis dapibus condimentum sit amet a augue. Sed non neque elit. Sed ut imperdiet nisi. Proin condimentum fermentum nunc. Etiam pharetra, erat sed fermentum feugiat, velit mauris egestas quam, ut aliquam massa nisl quis neque. Suspendisse in orci enim." }) })
9466
9507
  ] })
@@ -9488,16 +9529,16 @@ var QuizTrueOrFalse = ({ paddingBottom }) => {
9488
9529
  ];
9489
9530
  const getLetterByIndex = (index) => String.fromCharCode(97 + index);
9490
9531
  const isDefaultVariant = variant == "default";
9491
- return /* @__PURE__ */ jsxs33(Fragment10, { children: [
9532
+ return /* @__PURE__ */ jsxs32(Fragment10, { children: [
9492
9533
  /* @__PURE__ */ jsx40(QuizSubTitle, { subTitle: "Alternativas" }),
9493
9534
  /* @__PURE__ */ jsx40(QuizContainer, { className: cn("", paddingBottom), children: /* @__PURE__ */ jsx40("div", { className: "flex flex-col gap-3.5", children: options.map((option, index) => {
9494
9535
  const variantCorrect = option.isCorrect ? "correct" : "incorrect";
9495
- return /* @__PURE__ */ jsxs33(
9536
+ return /* @__PURE__ */ jsxs32(
9496
9537
  "section",
9497
9538
  {
9498
9539
  className: "flex flex-col gap-2",
9499
9540
  children: [
9500
- /* @__PURE__ */ jsxs33(
9541
+ /* @__PURE__ */ jsxs32(
9501
9542
  "div",
9502
9543
  {
9503
9544
  className: cn(
@@ -9506,9 +9547,9 @@ var QuizTrueOrFalse = ({ paddingBottom }) => {
9506
9547
  ),
9507
9548
  children: [
9508
9549
  /* @__PURE__ */ jsx40("p", { className: "text-text-900 text-sm", children: getLetterByIndex(index).concat(") ").concat(option.label) }),
9509
- isDefaultVariant ? /* @__PURE__ */ jsxs33(Select_default, { size: "medium", children: [
9550
+ isDefaultVariant ? /* @__PURE__ */ jsxs32(Select_default, { size: "medium", children: [
9510
9551
  /* @__PURE__ */ jsx40(SelectTrigger, { className: "w-[180px]", children: /* @__PURE__ */ jsx40(SelectValue, { placeholder: "Selecione opc\xE3o" }) }),
9511
- /* @__PURE__ */ jsxs33(SelectContent, { children: [
9552
+ /* @__PURE__ */ jsxs32(SelectContent, { children: [
9512
9553
  /* @__PURE__ */ jsx40(SelectItem, { value: "V", children: "Verdadeiro" }),
9513
9554
  /* @__PURE__ */ jsx40(SelectItem, { value: "F", children: "Falso" })
9514
9555
  ] })
@@ -9516,7 +9557,7 @@ var QuizTrueOrFalse = ({ paddingBottom }) => {
9516
9557
  ]
9517
9558
  }
9518
9559
  ),
9519
- !isDefaultVariant && /* @__PURE__ */ jsxs33("span", { className: "flex flex-row gap-2 items-center", children: [
9560
+ !isDefaultVariant && /* @__PURE__ */ jsxs32("span", { className: "flex flex-row gap-2 items-center", children: [
9520
9561
  /* @__PURE__ */ jsx40("p", { className: "text-text-800 text-2xs", children: "Resposta selecionada: V" }),
9521
9562
  !option.isCorrect && /* @__PURE__ */ jsx40("p", { className: "text-text-800 text-2xs", children: "Resposta correta: F" })
9522
9563
  ] })
@@ -9579,7 +9620,7 @@ var QuizConnectDots = ({ paddingBottom }) => {
9579
9620
  isCorrect: false
9580
9621
  }
9581
9622
  ];
9582
- const [userAnswers, setUserAnswers] = useState18(() => {
9623
+ const [userAnswers, setUserAnswers] = useState19(() => {
9583
9624
  if (variant === "result") {
9584
9625
  return mockUserAnswers;
9585
9626
  }
@@ -9608,13 +9649,13 @@ var QuizConnectDots = ({ paddingBottom }) => {
9608
9649
  const assignedDots = new Set(
9609
9650
  userAnswers.map((a) => a.dotOption).filter(Boolean)
9610
9651
  );
9611
- return /* @__PURE__ */ jsxs33(Fragment10, { children: [
9652
+ return /* @__PURE__ */ jsxs32(Fragment10, { children: [
9612
9653
  /* @__PURE__ */ jsx40(QuizSubTitle, { subTitle: "Alternativas" }),
9613
9654
  /* @__PURE__ */ jsx40(QuizContainer, { className: cn("", paddingBottom), children: /* @__PURE__ */ jsx40("div", { className: "flex flex-col gap-3.5", children: options.map((option, index) => {
9614
9655
  const answer = userAnswers[index];
9615
9656
  const variantCorrect = answer.isCorrect ? "correct" : "incorrect";
9616
- return /* @__PURE__ */ jsxs33("section", { className: "flex flex-col gap-2", children: [
9617
- /* @__PURE__ */ jsxs33(
9657
+ return /* @__PURE__ */ jsxs32("section", { className: "flex flex-col gap-2", children: [
9658
+ /* @__PURE__ */ jsxs32(
9618
9659
  "div",
9619
9660
  {
9620
9661
  className: cn(
@@ -9623,7 +9664,7 @@ var QuizConnectDots = ({ paddingBottom }) => {
9623
9664
  ),
9624
9665
  children: [
9625
9666
  /* @__PURE__ */ jsx40("p", { className: "text-text-900 text-sm", children: getLetterByIndex(index) + ") " + option.label }),
9626
- isDefaultVariant ? /* @__PURE__ */ jsxs33(
9667
+ isDefaultVariant ? /* @__PURE__ */ jsxs32(
9627
9668
  Select_default,
9628
9669
  {
9629
9670
  size: "medium",
@@ -9640,12 +9681,12 @@ var QuizConnectDots = ({ paddingBottom }) => {
9640
9681
  ]
9641
9682
  }
9642
9683
  ),
9643
- !isDefaultVariant && /* @__PURE__ */ jsxs33("span", { className: "flex flex-row gap-2 items-center", children: [
9644
- /* @__PURE__ */ jsxs33("p", { className: "text-text-800 text-2xs", children: [
9684
+ !isDefaultVariant && /* @__PURE__ */ jsxs32("span", { className: "flex flex-row gap-2 items-center", children: [
9685
+ /* @__PURE__ */ jsxs32("p", { className: "text-text-800 text-2xs", children: [
9645
9686
  "Resposta selecionada: ",
9646
9687
  answer.dotOption || "Nenhuma"
9647
9688
  ] }),
9648
- !answer.isCorrect && /* @__PURE__ */ jsxs33("p", { className: "text-text-800 text-2xs", children: [
9689
+ !answer.isCorrect && /* @__PURE__ */ jsxs32("p", { className: "text-text-800 text-2xs", children: [
9649
9690
  "Resposta correta: ",
9650
9691
  answer.correctOption
9651
9692
  ] })
@@ -9698,7 +9739,7 @@ var QuizFill = ({ paddingBottom }) => {
9698
9739
  isCorrect: true
9699
9740
  }
9700
9741
  ];
9701
- const [answers, setAnswers] = useState18({});
9742
+ const [answers, setAnswers] = useState19({});
9702
9743
  const baseId = useId11();
9703
9744
  const getAvailableOptionsForSelect = (selectId) => {
9704
9745
  const usedOptions = Object.entries(answers).filter(([key]) => key !== selectId).map(([, value]) => value);
@@ -9715,7 +9756,7 @@ var QuizFill = ({ paddingBottom }) => {
9715
9756
  return /* @__PURE__ */ jsx40("p", { className: "inline-flex mb-2.5 text-success-600 font-semibold text-md border-b-2 border-success-600", children: mockAnswer?.correctAnswer });
9716
9757
  };
9717
9758
  const renderDefaultElement = (selectId, startIndex, selectedValue, availableOptionsForThisSelect) => {
9718
- return /* @__PURE__ */ jsxs33(
9759
+ return /* @__PURE__ */ jsxs32(
9719
9760
  Select_default,
9720
9761
  {
9721
9762
  value: selectedValue,
@@ -9800,7 +9841,7 @@ var QuizFill = ({ paddingBottom }) => {
9800
9841
  }
9801
9842
  return elements;
9802
9843
  };
9803
- return /* @__PURE__ */ jsxs33(Fragment10, { children: [
9844
+ return /* @__PURE__ */ jsxs32(Fragment10, { children: [
9804
9845
  /* @__PURE__ */ jsx40(QuizSubTitle, { subTitle: "Alternativas" }),
9805
9846
  /* @__PURE__ */ jsx40(QuizContainer, { className: "h-auto pb-0", children: /* @__PURE__ */ jsx40("div", { className: "space-y-6 px-4 h-auto", children: /* @__PURE__ */ jsx40(
9806
9847
  "div",
@@ -9812,7 +9853,7 @@ var QuizFill = ({ paddingBottom }) => {
9812
9853
  children: renderTextWithSelects(exampleText).map((element) => /* @__PURE__ */ jsx40("span", { children: element.element }, element.id))
9813
9854
  }
9814
9855
  ) }) }),
9815
- variant === "result" && /* @__PURE__ */ jsxs33(Fragment10, { children: [
9856
+ variant === "result" && /* @__PURE__ */ jsxs32(Fragment10, { children: [
9816
9857
  /* @__PURE__ */ jsx40(QuizSubTitle, { subTitle: "Resultado" }),
9817
9858
  /* @__PURE__ */ jsx40(QuizContainer, { className: "h-auto pb-0", children: /* @__PURE__ */ jsx40("div", { className: "space-y-6 px-4", children: /* @__PURE__ */ jsx40(
9818
9859
  "div",
@@ -9836,7 +9877,7 @@ var QuizImageQuestion = ({ paddingBottom }) => {
9836
9877
  };
9837
9878
  const correctRadiusRelative = calculateCorrectRadiusRelative();
9838
9879
  const mockUserAnswerRelative = { x: 0.72, y: 0.348 };
9839
- const [clickPositionRelative, setClickPositionRelative] = useState18(variant == "result" ? mockUserAnswerRelative : null);
9880
+ const [clickPositionRelative, setClickPositionRelative] = useState19(variant == "result" ? mockUserAnswerRelative : null);
9840
9881
  const convertToRelativeCoordinates = (x, y, rect) => {
9841
9882
  const safeWidth = Math.max(rect.width, 1e-3);
9842
9883
  const safeHeight = Math.max(rect.height, 1e-3);
@@ -9872,36 +9913,36 @@ var QuizImageQuestion = ({ paddingBottom }) => {
9872
9913
  }
9873
9914
  return "bg-success-600/70 border-white";
9874
9915
  };
9875
- return /* @__PURE__ */ jsxs33(Fragment10, { children: [
9916
+ return /* @__PURE__ */ jsxs32(Fragment10, { children: [
9876
9917
  /* @__PURE__ */ jsx40(QuizSubTitle, { subTitle: "Clique na \xE1rea correta" }),
9877
- /* @__PURE__ */ jsx40(QuizContainer, { className: cn("", paddingBottom), children: /* @__PURE__ */ jsxs33(
9918
+ /* @__PURE__ */ jsx40(QuizContainer, { className: cn("", paddingBottom), children: /* @__PURE__ */ jsxs32(
9878
9919
  "div",
9879
9920
  {
9880
9921
  "data-testid": "quiz-image-container",
9881
9922
  className: "space-y-6 p-3 relative inline-block",
9882
9923
  children: [
9883
- variant == "result" && /* @__PURE__ */ jsxs33(
9924
+ variant == "result" && /* @__PURE__ */ jsxs32(
9884
9925
  "div",
9885
9926
  {
9886
9927
  "data-testid": "quiz-legend",
9887
9928
  className: "flex items-center gap-4 text-xs",
9888
9929
  children: [
9889
- /* @__PURE__ */ jsxs33("div", { className: "flex items-center gap-2", children: [
9930
+ /* @__PURE__ */ jsxs32("div", { className: "flex items-center gap-2", children: [
9890
9931
  /* @__PURE__ */ jsx40("div", { className: "w-3 h-3 rounded-full bg-indicator-primary/70 border border-[#F8CC2E]" }),
9891
9932
  /* @__PURE__ */ jsx40("span", { className: "text-text-600 font-medium text-sm", children: "\xC1rea correta" })
9892
9933
  ] }),
9893
- /* @__PURE__ */ jsxs33("div", { className: "flex items-center gap-2", children: [
9934
+ /* @__PURE__ */ jsxs32("div", { className: "flex items-center gap-2", children: [
9894
9935
  /* @__PURE__ */ jsx40("div", { className: "w-3 h-3 rounded-full bg-success-600/70 border border-white" }),
9895
9936
  /* @__PURE__ */ jsx40("span", { className: "text-text-600 font-medium text-sm", children: "Resposta correta" })
9896
9937
  ] }),
9897
- /* @__PURE__ */ jsxs33("div", { className: "flex items-center gap-2", children: [
9938
+ /* @__PURE__ */ jsxs32("div", { className: "flex items-center gap-2", children: [
9898
9939
  /* @__PURE__ */ jsx40("div", { className: "w-3 h-3 rounded-full bg-indicator-error/70 border border-white" }),
9899
9940
  /* @__PURE__ */ jsx40("span", { className: "text-text-600 font-medium text-sm", children: "Resposta incorreta" })
9900
9941
  ] })
9901
9942
  ]
9902
9943
  }
9903
9944
  ),
9904
- /* @__PURE__ */ jsxs33(
9945
+ /* @__PURE__ */ jsxs32(
9905
9946
  "button",
9906
9947
  {
9907
9948
  "data-testid": "quiz-image-button",
@@ -10008,11 +10049,11 @@ var QuizQuestionList = ({
10008
10049
  return "Em branco";
10009
10050
  }
10010
10051
  };
10011
- return /* @__PURE__ */ jsxs33("div", { className: "space-y-6 px-4 h-full", children: [
10052
+ return /* @__PURE__ */ jsxs32("div", { className: "space-y-6 px-4 h-full", children: [
10012
10053
  Object.entries(filteredGroupedQuestions).length == 0 && /* @__PURE__ */ jsx40("div", { className: "flex items-center justify-center text-gray-500 py-8 h-full", children: /* @__PURE__ */ jsx40("p", { className: "text-lg", children: "Nenhum resultado" }) }),
10013
10054
  Object.entries(filteredGroupedQuestions).map(
10014
- ([subjectId, questions]) => /* @__PURE__ */ jsxs33("section", { className: "flex flex-col gap-2", children: [
10015
- /* @__PURE__ */ jsxs33("span", { className: "pt-6 pb-4 flex flex-row gap-2", children: [
10055
+ ([subjectId, questions]) => /* @__PURE__ */ jsxs32("section", { className: "flex flex-col gap-2", children: [
10056
+ /* @__PURE__ */ jsxs32("span", { className: "pt-6 pb-4 flex flex-row gap-2", children: [
10016
10057
  /* @__PURE__ */ jsx40("div", { className: "bg-primary-500 p-1 rounded-sm flex items-center justify-center", children: /* @__PURE__ */ jsx40(BookOpen, { size: 17, className: "text-white" }) }),
10017
10058
  /* @__PURE__ */ jsx40("p", { className: "text-text-800 font-bold text-lg", children: questions?.[0]?.knowledgeMatrix?.[0]?.subject?.name ?? "Sem mat\xE9ria" })
10018
10059
  ] }),
@@ -10036,7 +10077,7 @@ var QuizQuestionList = ({
10036
10077
  )
10037
10078
  ] });
10038
10079
  };
10039
- var QuizFooter = forwardRef20(
10080
+ var QuizFooter = forwardRef19(
10040
10081
  ({
10041
10082
  className,
10042
10083
  onGoToSimulated,
@@ -10064,11 +10105,11 @@ var QuizFooter = forwardRef20(
10064
10105
  const currentAnswer = getCurrentAnswer();
10065
10106
  const currentQuestion = getCurrentQuestion();
10066
10107
  const isCurrentQuestionSkipped = currentQuestion ? getQuestionStatusFromUserAnswers(currentQuestion.id) === "skipped" : false;
10067
- const [alertDialogOpen, setAlertDialogOpen] = useState18(false);
10068
- const [modalResultOpen, setModalResultOpen] = useState18(false);
10069
- const [modalNavigateOpen, setModalNavigateOpen] = useState18(false);
10070
- const [modalResolutionOpen, setModalResolutionOpen] = useState18(false);
10071
- const [filterType, setFilterType] = useState18("all");
10108
+ const [alertDialogOpen, setAlertDialogOpen] = useState19(false);
10109
+ const [modalResultOpen, setModalResultOpen] = useState19(false);
10110
+ const [modalNavigateOpen, setModalNavigateOpen] = useState19(false);
10111
+ const [modalResolutionOpen, setModalResolutionOpen] = useState19(false);
10112
+ const [filterType, setFilterType] = useState19("all");
10072
10113
  const unansweredQuestions = getUnansweredQuestionsFromUserAnswers();
10073
10114
  const allQuestions = getTotalQuestions();
10074
10115
  const handleFinishQuiz = async () => {
@@ -10099,7 +10140,7 @@ var QuizFooter = forwardRef20(
10099
10140
  return;
10100
10141
  }
10101
10142
  };
10102
- return /* @__PURE__ */ jsxs33(Fragment10, { children: [
10143
+ return /* @__PURE__ */ jsxs32(Fragment10, { children: [
10103
10144
  /* @__PURE__ */ jsx40(
10104
10145
  "footer",
10105
10146
  {
@@ -10109,8 +10150,8 @@ var QuizFooter = forwardRef20(
10109
10150
  className
10110
10151
  ),
10111
10152
  ...props,
10112
- children: variant === "default" ? /* @__PURE__ */ jsxs33(Fragment10, { children: [
10113
- /* @__PURE__ */ jsxs33("div", { className: "flex flex-row items-center gap-1", children: [
10153
+ children: variant === "default" ? /* @__PURE__ */ jsxs32(Fragment10, { children: [
10154
+ /* @__PURE__ */ jsxs32("div", { className: "flex flex-row items-center gap-1", children: [
10114
10155
  /* @__PURE__ */ jsx40(
10115
10156
  IconButton_default,
10116
10157
  {
@@ -10173,7 +10214,7 @@ var QuizFooter = forwardRef20(
10173
10214
  size: "medium",
10174
10215
  variant: "link",
10175
10216
  action: "primary",
10176
- iconRight: /* @__PURE__ */ jsx40(CaretRight4, { size: 18 }),
10217
+ iconRight: /* @__PURE__ */ jsx40(CaretRight5, { size: 18 }),
10177
10218
  disabled: !currentAnswer && !isCurrentQuestionSkipped,
10178
10219
  onClick: () => {
10179
10220
  goToNextQuestion();
@@ -10214,11 +10255,11 @@ var QuizFooter = forwardRef20(
10214
10255
  closeOnEscape: false,
10215
10256
  hideCloseButton: true,
10216
10257
  size: "md",
10217
- children: /* @__PURE__ */ jsxs33("div", { className: "flex flex-col w-full h-full items-center justify-center gap-4", children: [
10258
+ children: /* @__PURE__ */ jsxs32("div", { className: "flex flex-col w-full h-full items-center justify-center gap-4", children: [
10218
10259
  resultImageComponent ? /* @__PURE__ */ jsx40("div", { className: "w-[282px] h-auto", children: resultImageComponent }) : /* @__PURE__ */ jsx40("div", { className: "w-[282px] h-[200px] bg-gray-100 rounded-md flex items-center justify-center", children: /* @__PURE__ */ jsx40("span", { className: "text-gray-500 text-sm", children: "Imagem de resultado" }) }),
10219
- /* @__PURE__ */ jsxs33("div", { className: "flex flex-col gap-2 text-center", children: [
10260
+ /* @__PURE__ */ jsxs32("div", { className: "flex flex-col gap-2 text-center", children: [
10220
10261
  /* @__PURE__ */ jsx40("h2", { className: "text-text-950 font-bold text-lg", children: "Voc\xEA concluiu o simulado!" }),
10221
- /* @__PURE__ */ jsxs33("p", { className: "text-text-500 font-sm", children: [
10262
+ /* @__PURE__ */ jsxs32("p", { className: "text-text-500 font-sm", children: [
10222
10263
  "Voc\xEA acertou",
10223
10264
  " ",
10224
10265
  getQuestionResultStatistics()?.correctAnswers ?? "--",
@@ -10228,7 +10269,7 @@ var QuizFooter = forwardRef20(
10228
10269
  " quest\xF5es."
10229
10270
  ] })
10230
10271
  ] }),
10231
- /* @__PURE__ */ jsxs33("div", { className: "px-6 flex flex-row items-center gap-2 w-full", children: [
10272
+ /* @__PURE__ */ jsxs32("div", { className: "px-6 flex flex-row items-center gap-2 w-full", children: [
10232
10273
  /* @__PURE__ */ jsx40(
10233
10274
  Button_default,
10234
10275
  {
@@ -10251,10 +10292,10 @@ var QuizFooter = forwardRef20(
10251
10292
  onClose: () => setModalNavigateOpen(false),
10252
10293
  title: "Quest\xF5es",
10253
10294
  size: "lg",
10254
- children: /* @__PURE__ */ jsxs33("div", { className: "flex flex-col w-full not-lg:h-[calc(100vh-200px)] lg:max-h-[687px] lg:h-[687px]", children: [
10255
- /* @__PURE__ */ jsxs33("div", { className: "flex flex-row justify-between items-center py-6 pt-6 pb-4 border-b border-border-200 flex-shrink-0", children: [
10295
+ children: /* @__PURE__ */ jsxs32("div", { className: "flex flex-col w-full not-lg:h-[calc(100vh-200px)] lg:max-h-[687px] lg:h-[687px]", children: [
10296
+ /* @__PURE__ */ jsxs32("div", { className: "flex flex-row justify-between items-center py-6 pt-6 pb-4 border-b border-border-200 flex-shrink-0", children: [
10256
10297
  /* @__PURE__ */ jsx40("p", { className: "text-text-950 font-bold text-lg", children: "Filtrar por" }),
10257
- /* @__PURE__ */ jsx40("span", { className: "max-w-[266px]", children: /* @__PURE__ */ jsxs33(Select_default, { value: filterType, onValueChange: setFilterType, children: [
10298
+ /* @__PURE__ */ jsx40("span", { className: "max-w-[266px]", children: /* @__PURE__ */ jsxs32(Select_default, { value: filterType, onValueChange: setFilterType, children: [
10258
10299
  /* @__PURE__ */ jsx40(
10259
10300
  SelectTrigger,
10260
10301
  {
@@ -10263,7 +10304,7 @@ var QuizFooter = forwardRef20(
10263
10304
  children: /* @__PURE__ */ jsx40(SelectValue, { placeholder: "Selecione uma op\xE7\xE3o" })
10264
10305
  }
10265
10306
  ),
10266
- /* @__PURE__ */ jsxs33(SelectContent, { children: [
10307
+ /* @__PURE__ */ jsxs32(SelectContent, { children: [
10267
10308
  /* @__PURE__ */ jsx40(SelectItem, { value: "all", children: "Todas" }),
10268
10309
  /* @__PURE__ */ jsx40(SelectItem, { value: "unanswered", children: "Em branco" }),
10269
10310
  /* @__PURE__ */ jsx40(SelectItem, { value: "answered", children: "Respondidas" })
@@ -10312,10 +10353,10 @@ var QuizBadge = ({
10312
10353
  return /* @__PURE__ */ jsx40(Badge_default, { variant: "solid", action: "info", "data-testid": "quiz-badge", children: subtype });
10313
10354
  }
10314
10355
  };
10315
- var QuizResultHeaderTitle = forwardRef20(({ className, ...props }, ref) => {
10356
+ var QuizResultHeaderTitle = forwardRef19(({ className, ...props }, ref) => {
10316
10357
  const { getActiveQuiz } = useQuizStore();
10317
10358
  const activeQuiz = getActiveQuiz();
10318
- return /* @__PURE__ */ jsxs33(
10359
+ return /* @__PURE__ */ jsxs32(
10319
10360
  "div",
10320
10361
  {
10321
10362
  ref,
@@ -10328,7 +10369,7 @@ var QuizResultHeaderTitle = forwardRef20(({ className, ...props }, ref) => {
10328
10369
  }
10329
10370
  );
10330
10371
  });
10331
- var QuizResultTitle = forwardRef20(({ className, ...props }, ref) => {
10372
+ var QuizResultTitle = forwardRef19(({ className, ...props }, ref) => {
10332
10373
  const { getQuizTitle } = useQuizStore();
10333
10374
  const quizTitle = getQuizTitle();
10334
10375
  return /* @__PURE__ */ jsx40(
@@ -10341,7 +10382,7 @@ var QuizResultTitle = forwardRef20(({ className, ...props }, ref) => {
10341
10382
  }
10342
10383
  );
10343
10384
  });
10344
- var QuizResultPerformance = forwardRef20(
10385
+ var QuizResultPerformance = forwardRef19(
10345
10386
  ({ ...props }, ref) => {
10346
10387
  const {
10347
10388
  getTotalQuestions,
@@ -10383,14 +10424,14 @@ var QuizResultPerformance = forwardRef20(
10383
10424
  });
10384
10425
  }
10385
10426
  const percentage = totalQuestions > 0 ? Math.round(correctAnswers / totalQuestions * 100) : 0;
10386
- return /* @__PURE__ */ jsxs33(
10427
+ return /* @__PURE__ */ jsxs32(
10387
10428
  "div",
10388
10429
  {
10389
10430
  className: "flex flex-row gap-6 p-6 rounded-xl bg-background justify-between",
10390
10431
  ref,
10391
10432
  ...props,
10392
10433
  children: [
10393
- /* @__PURE__ */ jsxs33("div", { className: "relative", children: [
10434
+ /* @__PURE__ */ jsxs32("div", { className: "relative", children: [
10394
10435
  /* @__PURE__ */ jsx40(
10395
10436
  ProgressCircle_default,
10396
10437
  {
@@ -10401,14 +10442,14 @@ var QuizResultPerformance = forwardRef20(
10401
10442
  label: ""
10402
10443
  }
10403
10444
  ),
10404
- /* @__PURE__ */ jsxs33("div", { className: "absolute inset-0 flex flex-col items-center justify-center", children: [
10405
- /* @__PURE__ */ jsxs33("div", { className: "flex items-center gap-1 mb-1", children: [
10445
+ /* @__PURE__ */ jsxs32("div", { className: "absolute inset-0 flex flex-col items-center justify-center", children: [
10446
+ /* @__PURE__ */ jsxs32("div", { className: "flex items-center gap-1 mb-1", children: [
10406
10447
  /* @__PURE__ */ jsx40(Clock2, { size: 12, weight: "regular", className: "text-text-800" }),
10407
10448
  /* @__PURE__ */ jsx40("span", { className: "text-2xs font-medium text-text-800", children: formatTime2(
10408
10449
  (getQuestionResultStatistics()?.timeSpent ?? 0) * 60
10409
10450
  ) })
10410
10451
  ] }),
10411
- /* @__PURE__ */ jsxs33("div", { className: "text-2xl font-medium text-text-800 leading-7", children: [
10452
+ /* @__PURE__ */ jsxs32("div", { className: "text-2xl font-medium text-text-800 leading-7", children: [
10412
10453
  getQuestionResultStatistics()?.correctAnswers ?? "--",
10413
10454
  " de",
10414
10455
  " ",
@@ -10417,7 +10458,7 @@ var QuizResultPerformance = forwardRef20(
10417
10458
  /* @__PURE__ */ jsx40("div", { className: "text-2xs font-medium text-text-600 mt-1", children: "Corretas" })
10418
10459
  ] })
10419
10460
  ] }),
10420
- /* @__PURE__ */ jsxs33("div", { className: "flex flex-col gap-4 w-full", children: [
10461
+ /* @__PURE__ */ jsxs32("div", { className: "flex flex-col gap-4 w-full", children: [
10421
10462
  /* @__PURE__ */ jsx40(
10422
10463
  ProgressBar_default,
10423
10464
  {
@@ -10466,7 +10507,7 @@ var QuizResultPerformance = forwardRef20(
10466
10507
  );
10467
10508
  }
10468
10509
  );
10469
- var QuizListResult = forwardRef20(({ className, onSubjectClick, ...props }, ref) => {
10510
+ var QuizListResult = forwardRef19(({ className, onSubjectClick, ...props }, ref) => {
10470
10511
  const { getQuestionsGroupedBySubject } = useQuizStore();
10471
10512
  const groupedQuestions = getQuestionsGroupedBySubject();
10472
10513
  const subjectsStats = Object.entries(groupedQuestions).map(
@@ -10493,7 +10534,7 @@ var QuizListResult = forwardRef20(({ className, onSubjectClick, ...props }, ref)
10493
10534
  };
10494
10535
  }
10495
10536
  );
10496
- return /* @__PURE__ */ jsxs33("section", { ref, className, ...props, children: [
10537
+ return /* @__PURE__ */ jsxs32("section", { ref, className, ...props, children: [
10497
10538
  /* @__PURE__ */ jsx40("p", { className: "pt-6 pb-4 text-text-950 font-bold text-lg", children: "Mat\xE9rias" }),
10498
10539
  /* @__PURE__ */ jsx40("ul", { className: "flex flex-col gap-2", children: subjectsStats.map((subject) => /* @__PURE__ */ jsx40("li", { children: /* @__PURE__ */ jsx40(
10499
10540
  CardResults,
@@ -10517,9 +10558,9 @@ var QuizListResultByMateria = ({
10517
10558
  const { getQuestionsGroupedBySubject, getQuestionIndex } = useQuizStore();
10518
10559
  const groupedQuestions = getQuestionsGroupedBySubject();
10519
10560
  const answeredQuestions = groupedQuestions[subject] || [];
10520
- return /* @__PURE__ */ jsxs33("div", { className: "flex flex-col", children: [
10561
+ return /* @__PURE__ */ jsxs32("div", { className: "flex flex-col", children: [
10521
10562
  /* @__PURE__ */ jsx40("div", { className: "flex flex-row pt-4 justify-between", children: /* @__PURE__ */ jsx40("p", { className: "text-text-950 font-bold text-2xl", children: answeredQuestions?.[0]?.knowledgeMatrix?.[0]?.subject?.name ?? "Sem mat\xE9ria" }) }),
10522
- /* @__PURE__ */ jsxs33("section", { className: "flex flex-col ", children: [
10563
+ /* @__PURE__ */ jsxs32("section", { className: "flex flex-col ", children: [
10523
10564
  /* @__PURE__ */ jsx40("p", { className: "pt-6 pb-4 text-text-950 font-bold text-lg", children: "Resultado das quest\xF5es" }),
10524
10565
  /* @__PURE__ */ jsx40("ul", { className: "flex flex-col gap-2 pt-4", children: answeredQuestions.map((question) => {
10525
10566
  const questionIndex = getQuestionIndex(
@@ -10549,9 +10590,9 @@ var QuizListResultByMateria = ({
10549
10590
  };
10550
10591
 
10551
10592
  // src/components/LoadingModal/loadingModal.tsx
10552
- import { forwardRef as forwardRef21 } from "react";
10553
- import { jsx as jsx41, jsxs as jsxs34 } from "react/jsx-runtime";
10554
- var LoadingModal = forwardRef21(
10593
+ import { forwardRef as forwardRef20 } from "react";
10594
+ import { jsx as jsx41, jsxs as jsxs33 } from "react/jsx-runtime";
10595
+ var LoadingModal = forwardRef20(
10555
10596
  ({ open, title = "Titulo...", subtitle = "Subtitulo...", ...props }, ref) => {
10556
10597
  if (!open) return null;
10557
10598
  return /* @__PURE__ */ jsx41(
@@ -10563,8 +10604,8 @@ var LoadingModal = forwardRef21(
10563
10604
  "aria-describedby": "loading-modal-subtitle",
10564
10605
  className: "fixed inset-0 z-50 flex items-center justify-center bg-background/90 backdrop-blur-xs",
10565
10606
  ...props,
10566
- children: /* @__PURE__ */ jsxs34("div", { className: "w-full max-w-[364px] flex flex-col items-center justify-center gap-14", children: [
10567
- /* @__PURE__ */ jsx41("span", { className: "animate-spin", "aria-hidden": "true", children: /* @__PURE__ */ jsxs34(
10607
+ children: /* @__PURE__ */ jsxs33("div", { className: "w-full max-w-[364px] flex flex-col items-center justify-center gap-14", children: [
10608
+ /* @__PURE__ */ jsx41("span", { className: "animate-spin", "aria-hidden": "true", children: /* @__PURE__ */ jsxs33(
10568
10609
  "svg",
10569
10610
  {
10570
10611
  width: "102",
@@ -10592,7 +10633,7 @@ var LoadingModal = forwardRef21(
10592
10633
  ]
10593
10634
  }
10594
10635
  ) }),
10595
- /* @__PURE__ */ jsxs34("span", { className: "flex flex-col gap-4 text-center", children: [
10636
+ /* @__PURE__ */ jsxs33("span", { className: "flex flex-col gap-4 text-center", children: [
10596
10637
  /* @__PURE__ */ jsx41("p", { id: "loading-modal-title", className: "text-text-950 text-lg", children: title }),
10597
10638
  /* @__PURE__ */ jsx41("p", { id: "loading-modal-subtitle", className: "text-text-600 text-lg", children: subtitle })
10598
10639
  ] })
@@ -10605,7 +10646,7 @@ var loadingModal_default = LoadingModal;
10605
10646
 
10606
10647
  // src/components/NotificationCard/NotificationCard.tsx
10607
10648
  import { DotsThreeVertical as DotsThreeVertical3, Bell as Bell2 } from "phosphor-react";
10608
- import { useState as useState19, useEffect as useEffect17 } from "react";
10649
+ import { useState as useState20, useEffect as useEffect18 } from "react";
10609
10650
 
10610
10651
  // src/store/notificationStore.ts
10611
10652
  import { create as create8 } from "zustand";
@@ -10848,13 +10889,13 @@ var createNotificationStore = (apiClient) => {
10848
10889
  };
10849
10890
 
10850
10891
  // src/components/NotificationCard/NotificationCard.tsx
10851
- import { Fragment as Fragment11, jsx as jsx42, jsxs as jsxs35 } from "react/jsx-runtime";
10892
+ import { Fragment as Fragment11, jsx as jsx42, jsxs as jsxs34 } from "react/jsx-runtime";
10852
10893
  var NotificationEmpty = ({
10853
10894
  emptyStateImage,
10854
10895
  emptyStateTitle = "Nenhuma notifica\xE7\xE3o no momento",
10855
10896
  emptyStateDescription = "Voc\xEA est\xE1 em dia com todas as novidades. Volte depois para conferir atualiza\xE7\xF5es!"
10856
10897
  }) => {
10857
- return /* @__PURE__ */ jsxs35("div", { className: "flex flex-col items-center justify-center gap-4 p-6 w-full", children: [
10898
+ return /* @__PURE__ */ jsxs34("div", { className: "flex flex-col items-center justify-center gap-4 p-6 w-full", children: [
10858
10899
  emptyStateImage && /* @__PURE__ */ jsx42("div", { className: "w-20 h-20 flex items-center justify-center", children: /* @__PURE__ */ jsx42(
10859
10900
  "img",
10860
10901
  {
@@ -10873,7 +10914,7 @@ var NotificationHeader = ({
10873
10914
  unreadCount,
10874
10915
  variant = "modal"
10875
10916
  }) => {
10876
- return /* @__PURE__ */ jsxs35("div", { className: "flex items-center justify-between gap-2", children: [
10917
+ return /* @__PURE__ */ jsxs34("div", { className: "flex items-center justify-between gap-2", children: [
10877
10918
  variant === "modal" ? /* @__PURE__ */ jsx42(Text_default, { size: "sm", weight: "bold", className: "text-text-950", children: "Notifica\xE7\xF5es" }) : /* @__PURE__ */ jsx42("h3", { className: "text-sm font-semibold text-text-950", children: "Notifica\xE7\xF5es" }),
10878
10919
  unreadCount > 0 && /* @__PURE__ */ jsx42(
10879
10920
  Badge_default,
@@ -10917,7 +10958,7 @@ var SingleNotificationCard = ({
10917
10958
  onNavigate();
10918
10959
  }
10919
10960
  };
10920
- return /* @__PURE__ */ jsxs35(
10961
+ return /* @__PURE__ */ jsxs34(
10921
10962
  "div",
10922
10963
  {
10923
10964
  className: cn(
@@ -10926,10 +10967,10 @@ var SingleNotificationCard = ({
10926
10967
  className
10927
10968
  ),
10928
10969
  children: [
10929
- /* @__PURE__ */ jsxs35("div", { className: "flex items-center gap-2 w-full", children: [
10970
+ /* @__PURE__ */ jsxs34("div", { className: "flex items-center gap-2 w-full", children: [
10930
10971
  !isRead && /* @__PURE__ */ jsx42("div", { className: "w-[7px] h-[7px] bg-info-300 rounded-full flex-shrink-0" }),
10931
10972
  /* @__PURE__ */ jsx42("h3", { className: "font-bold text-sm leading-4 text-text-950 flex-grow", children: title }),
10932
- /* @__PURE__ */ jsxs35(DropdownMenu_default, { children: [
10973
+ /* @__PURE__ */ jsxs34(DropdownMenu_default, { children: [
10933
10974
  /* @__PURE__ */ jsx42(
10934
10975
  DropdownMenuTrigger,
10935
10976
  {
@@ -10938,7 +10979,7 @@ var SingleNotificationCard = ({
10938
10979
  children: /* @__PURE__ */ jsx42(DotsThreeVertical3, { size: 24 })
10939
10980
  }
10940
10981
  ),
10941
- /* @__PURE__ */ jsxs35(DropdownMenuContent, { align: "end", className: "min-w-[160px]", children: [
10982
+ /* @__PURE__ */ jsxs34(DropdownMenuContent, { align: "end", className: "min-w-[160px]", children: [
10942
10983
  !isRead && /* @__PURE__ */ jsx42(
10943
10984
  DropdownMenuItem,
10944
10985
  {
@@ -10952,7 +10993,7 @@ var SingleNotificationCard = ({
10952
10993
  ] })
10953
10994
  ] }),
10954
10995
  /* @__PURE__ */ jsx42("p", { className: "text-sm leading-[21px] text-text-800 w-full", children: message }),
10955
- /* @__PURE__ */ jsxs35("div", { className: "flex items-center justify-between w-full", children: [
10996
+ /* @__PURE__ */ jsxs34("div", { className: "flex items-center justify-between w-full", children: [
10956
10997
  /* @__PURE__ */ jsx42("span", { className: "text-sm font-medium text-text-400", children: time }),
10957
10998
  onNavigate && actionLabel && /* @__PURE__ */ jsx42(
10958
10999
  "button",
@@ -10981,7 +11022,7 @@ var NotificationList = ({
10981
11022
  className
10982
11023
  }) => {
10983
11024
  if (error) {
10984
- return /* @__PURE__ */ jsxs35("div", { className: "flex flex-col items-center gap-4 p-6 w-full", children: [
11025
+ return /* @__PURE__ */ jsxs34("div", { className: "flex flex-col items-center gap-4 p-6 w-full", children: [
10985
11026
  /* @__PURE__ */ jsx42("p", { className: "text-sm text-error-600", children: error }),
10986
11027
  onRetry && /* @__PURE__ */ jsx42(
10987
11028
  "button",
@@ -11008,7 +11049,7 @@ var NotificationList = ({
11008
11049
  if (!groupedNotifications || groupedNotifications.length === 0) {
11009
11050
  return renderEmpty ? /* @__PURE__ */ jsx42("div", { className: "w-full", children: renderEmpty() }) : /* @__PURE__ */ jsx42(NotificationEmpty, {});
11010
11051
  }
11011
- return /* @__PURE__ */ jsx42("div", { className: cn("flex flex-col gap-0 w-full", className), children: groupedNotifications.map((group, idx) => /* @__PURE__ */ jsxs35("div", { className: "flex flex-col", children: [
11052
+ return /* @__PURE__ */ jsx42("div", { className: cn("flex flex-col gap-0 w-full", className), children: groupedNotifications.map((group, idx) => /* @__PURE__ */ jsxs34("div", { className: "flex flex-col", children: [
11012
11053
  /* @__PURE__ */ jsx42("div", { className: "flex items-end px-4 py-6 pb-4", children: /* @__PURE__ */ jsx42("h4", { className: "text-lg font-bold text-text-500 flex-grow", children: group.label }) }),
11013
11054
  group.notifications.map((notification) => /* @__PURE__ */ jsx42(
11014
11055
  SingleNotificationCard,
@@ -11051,7 +11092,7 @@ var NotificationCenter = ({
11051
11092
  className
11052
11093
  }) => {
11053
11094
  const { isMobile } = useMobile();
11054
- const [isModalOpen, setIsModalOpen] = useState19(false);
11095
+ const [isModalOpen, setIsModalOpen] = useState20(false);
11055
11096
  const handleMobileClick = () => {
11056
11097
  setIsModalOpen(true);
11057
11098
  onFetchNotifications?.();
@@ -11059,7 +11100,7 @@ var NotificationCenter = ({
11059
11100
  const handleDesktopClick = () => {
11060
11101
  onToggleActive?.();
11061
11102
  };
11062
- useEffect17(() => {
11103
+ useEffect18(() => {
11063
11104
  if (isActive) {
11064
11105
  onFetchNotifications?.();
11065
11106
  }
@@ -11077,7 +11118,7 @@ var NotificationCenter = ({
11077
11118
  }
11078
11119
  );
11079
11120
  if (isMobile) {
11080
- return /* @__PURE__ */ jsxs35(Fragment11, { children: [
11121
+ return /* @__PURE__ */ jsxs34(Fragment11, { children: [
11081
11122
  /* @__PURE__ */ jsx42(
11082
11123
  IconButton_default,
11083
11124
  {
@@ -11096,8 +11137,8 @@ var NotificationCenter = ({
11096
11137
  size: "md",
11097
11138
  hideCloseButton: false,
11098
11139
  closeOnEscape: true,
11099
- children: /* @__PURE__ */ jsxs35("div", { className: "flex flex-col h-full max-h-[80vh]", children: [
11100
- /* @__PURE__ */ jsxs35("div", { className: "px-0 pb-3 border-b border-border-200", children: [
11140
+ children: /* @__PURE__ */ jsxs34("div", { className: "flex flex-col h-full max-h-[80vh]", children: [
11141
+ /* @__PURE__ */ jsxs34("div", { className: "px-0 pb-3 border-b border-border-200", children: [
11101
11142
  /* @__PURE__ */ jsx42(NotificationHeader, { unreadCount, variant: "modal" }),
11102
11143
  unreadCount > 0 && onMarkAllAsRead && /* @__PURE__ */ jsx42(
11103
11144
  "button",
@@ -11132,7 +11173,7 @@ var NotificationCenter = ({
11132
11173
  )
11133
11174
  ] });
11134
11175
  }
11135
- return /* @__PURE__ */ jsxs35(DropdownMenu_default, { children: [
11176
+ return /* @__PURE__ */ jsxs34(DropdownMenu_default, { children: [
11136
11177
  /* @__PURE__ */ jsx42(DropdownMenuTrigger, { className: "text-primary cursor-pointer", children: /* @__PURE__ */ jsx42(
11137
11178
  IconButton_default,
11138
11179
  {
@@ -11154,8 +11195,8 @@ var NotificationCenter = ({
11154
11195
  className: "min-w-[320px] max-w-[400px] max-h-[500px] overflow-hidden",
11155
11196
  side: "bottom",
11156
11197
  align: "end",
11157
- children: /* @__PURE__ */ jsxs35("div", { className: "flex flex-col", children: [
11158
- /* @__PURE__ */ jsxs35("div", { className: "px-4 py-3 border-b border-border-200", children: [
11198
+ children: /* @__PURE__ */ jsxs34("div", { className: "flex flex-col", children: [
11199
+ /* @__PURE__ */ jsxs34("div", { className: "px-4 py-3 border-b border-border-200", children: [
11159
11200
  /* @__PURE__ */ jsx42(NotificationHeader, { unreadCount, variant: "dropdown" }),
11160
11201
  unreadCount > 0 && onMarkAllAsRead && /* @__PURE__ */ jsx42(
11161
11202
  "button",
@@ -11398,6 +11439,7 @@ export {
11398
11439
  ProfileMenuHeader,
11399
11440
  ProfileMenuSection,
11400
11441
  ProfileMenuTrigger,
11442
+ ProfileToggleTheme,
11401
11443
  ProgressBar_default as ProgressBar,
11402
11444
  ProgressCircle_default as ProgressCircle,
11403
11445
  ProtectedRoute,