analytica-frontend-lib 1.0.79 → 1.0.81

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.
@@ -110,6 +110,12 @@ var VARIANT_ACTION_CLASSES2 = {
110
110
  exam3: "bg-exam-3 text-typography-2 focus-visible:outline-none",
111
111
  exam4: "bg-exam-4 text-success-700 focus-visible:outline-none"
112
112
  },
113
+ examsOutlined: {
114
+ exam1: "bg-exam-1 text-info-700 border border-info-700 focus-visible:outline-none",
115
+ exam2: "bg-exam-2 text-typography-1 border border-typography-1 focus-visible:outline-none",
116
+ exam3: "bg-exam-3 text-typography-2 border border-typography-2 focus-visible:outline-none",
117
+ exam4: "bg-exam-4 text-success-700 border border-success-700 focus-visible:outline-none"
118
+ },
113
119
  resultStatus: {
114
120
  negative: "bg-error text-error-800 focus-visible:outline-none",
115
121
  positive: "bg-success text-success-800 focus-visible:outline-none"
@@ -1703,6 +1709,166 @@ var CardTest = (0, import_react.forwardRef)(
1703
1709
  );
1704
1710
  }
1705
1711
  );
1712
+ var SIMULATION_TYPE_STYLES = {
1713
+ enem: {
1714
+ background: "bg-exam-1",
1715
+ badge: "exam1",
1716
+ text: "Enem"
1717
+ },
1718
+ prova: {
1719
+ background: "bg-exam-2",
1720
+ badge: "exam2",
1721
+ text: "Prova"
1722
+ },
1723
+ simulado: {
1724
+ background: "bg-exam-3",
1725
+ badge: "exam3",
1726
+ text: "Simulado"
1727
+ },
1728
+ vestibular: {
1729
+ background: "bg-exam-4",
1730
+ badge: "exam4",
1731
+ text: "Vestibular"
1732
+ }
1733
+ };
1734
+ var CardSimulationHistory = (0, import_react.forwardRef)(
1735
+ ({
1736
+ title = "Simulados",
1737
+ activeTab = "history",
1738
+ data,
1739
+ onTabChange,
1740
+ onSimulationClick,
1741
+ className,
1742
+ ...props
1743
+ }, ref) => {
1744
+ return /* @__PURE__ */ (0, import_jsx_runtime5.jsxs)(
1745
+ "div",
1746
+ {
1747
+ ref,
1748
+ className: `w-full max-w-[992px] h-auto ${className}`,
1749
+ ...props,
1750
+ children: [
1751
+ /* @__PURE__ */ (0, import_jsx_runtime5.jsxs)("div", { className: "flex flex-row items-end justify-between gap-4 mb-4", children: [
1752
+ /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(Text_default, { size: "2xl", weight: "bold", className: "text-text-950 flex-1", children: title }),
1753
+ /* @__PURE__ */ (0, import_jsx_runtime5.jsxs)("div", { className: "flex flex-row gap-2", children: [
1754
+ /* @__PURE__ */ (0, import_jsx_runtime5.jsxs)(
1755
+ "button",
1756
+ {
1757
+ type: "button",
1758
+ onClick: () => onTabChange?.("create"),
1759
+ className: `
1760
+ flex flex-row justify-center items-center px-4 py-3 gap-2 rounded-md relative
1761
+ ${activeTab === "create" ? "text-text-950" : "text-text-950 hover:bg-background-50"}
1762
+ `,
1763
+ children: [
1764
+ /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(Text_default, { size: "xs", weight: "bold", className: "leading-4 tracking-wide", children: "Criar Simulado" }),
1765
+ activeTab === "create" && /* @__PURE__ */ (0, import_jsx_runtime5.jsx)("div", { className: "absolute bottom-0 left-2 right-2 h-1 bg-primary-950 rounded-lg" })
1766
+ ]
1767
+ }
1768
+ ),
1769
+ /* @__PURE__ */ (0, import_jsx_runtime5.jsxs)(
1770
+ "button",
1771
+ {
1772
+ type: "button",
1773
+ onClick: () => onTabChange?.("history"),
1774
+ className: `
1775
+ flex flex-row justify-center items-center px-4 py-3 gap-2 rounded-md relative
1776
+ ${activeTab === "history" ? "text-text-950" : "text-text-950 hover:bg-background-50"}
1777
+ `,
1778
+ children: [
1779
+ /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(Text_default, { size: "xs", weight: "bold", className: "leading-4 tracking-wide", children: "Hist\xF3rico" }),
1780
+ activeTab === "history" && /* @__PURE__ */ (0, import_jsx_runtime5.jsx)("div", { className: "absolute bottom-0 left-2 right-2 h-1 bg-primary-950 rounded-lg" })
1781
+ ]
1782
+ }
1783
+ )
1784
+ ] })
1785
+ ] }),
1786
+ /* @__PURE__ */ (0, import_jsx_runtime5.jsxs)("div", { className: "flex flex-col gap-0", children: [
1787
+ data.map((section, sectionIndex) => /* @__PURE__ */ (0, import_jsx_runtime5.jsx)("div", { className: "flex flex-col", children: /* @__PURE__ */ (0, import_jsx_runtime5.jsxs)(
1788
+ "div",
1789
+ {
1790
+ className: `
1791
+ flex flex-row justify-center items-start px-4 py-6 gap-2 w-full bg-white
1792
+ ${sectionIndex === 0 ? "rounded-t-3xl" : ""}
1793
+ `,
1794
+ children: [
1795
+ /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(
1796
+ Text_default,
1797
+ {
1798
+ size: "xs",
1799
+ weight: "bold",
1800
+ className: "text-text-800 w-11 flex-shrink-0",
1801
+ children: section.date
1802
+ }
1803
+ ),
1804
+ /* @__PURE__ */ (0, import_jsx_runtime5.jsx)("div", { className: "flex flex-col gap-2 flex-1", children: section.simulations.map((simulation) => {
1805
+ const typeStyles = SIMULATION_TYPE_STYLES[simulation.type];
1806
+ return /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(
1807
+ CardBase,
1808
+ {
1809
+ layout: "horizontal",
1810
+ padding: "medium",
1811
+ minHeight: "none",
1812
+ cursor: "pointer",
1813
+ className: `
1814
+ ${typeStyles.background} rounded-xl hover:shadow-soft-shadow-2
1815
+ transition-shadow duration-200 h-auto min-h-[61px]
1816
+ `,
1817
+ onClick: () => onSimulationClick?.(simulation),
1818
+ children: /* @__PURE__ */ (0, import_jsx_runtime5.jsxs)("div", { className: "flex justify-between items-center w-full gap-2", children: [
1819
+ /* @__PURE__ */ (0, import_jsx_runtime5.jsxs)("div", { className: "flex flex-col gap-2 flex-1 min-w-0", children: [
1820
+ /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(
1821
+ Text_default,
1822
+ {
1823
+ size: "lg",
1824
+ weight: "bold",
1825
+ className: "text-text-950 truncate",
1826
+ children: simulation.title
1827
+ }
1828
+ ),
1829
+ /* @__PURE__ */ (0, import_jsx_runtime5.jsxs)("div", { className: "flex items-center gap-2", children: [
1830
+ /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(
1831
+ Badge_default,
1832
+ {
1833
+ variant: "examsOutlined",
1834
+ action: typeStyles.badge,
1835
+ size: "medium",
1836
+ children: typeStyles.text
1837
+ }
1838
+ ),
1839
+ /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(
1840
+ Text_default,
1841
+ {
1842
+ size: "sm",
1843
+ className: "text-text-800 truncate",
1844
+ children: simulation.info
1845
+ }
1846
+ )
1847
+ ] })
1848
+ ] }),
1849
+ /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(
1850
+ import_phosphor_react2.CaretRight,
1851
+ {
1852
+ size: 24,
1853
+ className: "text-text-800 flex-shrink-0",
1854
+ "data-testid": "caret-icon"
1855
+ }
1856
+ )
1857
+ ] })
1858
+ },
1859
+ simulation.id
1860
+ );
1861
+ }) })
1862
+ ]
1863
+ }
1864
+ ) }, section.date)),
1865
+ data.length > 0 && /* @__PURE__ */ (0, import_jsx_runtime5.jsx)("div", { className: "w-full h-6 bg-white rounded-b-3xl" })
1866
+ ] })
1867
+ ]
1868
+ }
1869
+ );
1870
+ }
1871
+ );
1706
1872
 
1707
1873
  // src/components/Accordation/Accordation.tsx
1708
1874
  var import_phosphor_react3 = require("phosphor-react");