@axzydev/axzy_ui_system 1.4.1 → 1.4.3
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/README.md +2 -2
- package/dist/index.cjs +422 -259
- package/dist/index.cjs.map +1 -1
- package/dist/index.css +1 -1
- package/dist/index.d.cts +169 -70
- package/dist/index.d.ts +169 -70
- package/dist/index.js +324 -162
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
- package/src/App.tsx +3 -0
- package/src/components/molecules/card/card.tsx +22 -9
- package/src/components/organisms/page-header/page-header.tsx +14 -3
- package/src/components/organisms/sidebar/sidebar.doc.mdx +48 -2
- package/src/components/organisms/sidebar/sidebar.props.ts +58 -3
- package/src/components/organisms/sidebar/sidebar.stories.tsx +59 -1
- package/src/components/organisms/sidebar/sidebar.tsx +141 -25
- package/src/components/organisms/topbar/topbar.props.ts +7 -0
- package/src/components/organisms/topbar/topbar.tsx +31 -8
- package/src/components/templates/layout/layout.props.ts +8 -0
- package/src/components/templates/layout/layout.tsx +101 -54
- package/src/components/theme-provider/themeProvider.doc.mdx +1 -0
- package/src/components/theme-provider/themeProvider.props.ts +6 -0
- package/src/components/theme-provider/themeProvider.tsx +11 -1
- package/src/index.ts +6 -5
- package/src/sandbox/LandingShowcase.tsx +1 -1
- package/src/sandbox/navigation.ts +1 -0
- package/src/showcases/HelpShowcase.tsx +497 -0
- package/src/showcases/StructureShowcases.tsx +58 -5
- package/src/theme/theme-context.ts +11 -1
- package/src/theme/theme.types.ts +7 -0
package/dist/index.js
CHANGED
|
@@ -1809,6 +1809,25 @@ var calendar_default = ITCalendar;
|
|
|
1809
1809
|
// src/components/molecules/card/card.tsx
|
|
1810
1810
|
import clsx8 from "clsx";
|
|
1811
1811
|
import { useState as useState8 } from "react";
|
|
1812
|
+
|
|
1813
|
+
// src/theme/theme-context.ts
|
|
1814
|
+
import { createContext, useContext } from "react";
|
|
1815
|
+
var ITThemeContext = createContext(void 0);
|
|
1816
|
+
var useITTheme = () => {
|
|
1817
|
+
const context = useContext(ITThemeContext);
|
|
1818
|
+
if (!context) {
|
|
1819
|
+
throw new Error("useITTheme must be used within an ITThemeProvider");
|
|
1820
|
+
}
|
|
1821
|
+
return context;
|
|
1822
|
+
};
|
|
1823
|
+
var useITThemeSafe = () => {
|
|
1824
|
+
return useContext(ITThemeContext);
|
|
1825
|
+
};
|
|
1826
|
+
var useITFlatAppearance = () => {
|
|
1827
|
+
return useContext(ITThemeContext)?.appearance === "flat";
|
|
1828
|
+
};
|
|
1829
|
+
|
|
1830
|
+
// src/components/molecules/card/card.tsx
|
|
1812
1831
|
import { jsx as jsx9, jsxs as jsxs7 } from "react/jsx-runtime";
|
|
1813
1832
|
function ITCard({
|
|
1814
1833
|
title,
|
|
@@ -1824,16 +1843,20 @@ function ITCard({
|
|
|
1824
1843
|
onClick
|
|
1825
1844
|
}) {
|
|
1826
1845
|
const [isHovered, setIsHovered] = useState8(false);
|
|
1846
|
+
const flat = useITFlatAppearance();
|
|
1827
1847
|
const containerStyle = {
|
|
1828
1848
|
backgroundColor: "var(--it-card-bg, #ffffff)",
|
|
1829
|
-
borderColor: "var(--it-card-border, rgba(15, 23, 42, 0.06))",
|
|
1849
|
+
borderColor: flat ? "var(--it-card-flat-border, var(--color-secondary-200))" : "var(--it-card-border, rgba(15, 23, 42, 0.06))",
|
|
1830
1850
|
borderWidth: "1px",
|
|
1831
|
-
|
|
1851
|
+
borderStyle: "solid",
|
|
1852
|
+
borderRadius: flat ? "var(--it-card-radius, var(--radius-lg))" : "var(--it-card-radius, var(--radius-2xl))",
|
|
1832
1853
|
// Soft depth: every card floats a little at rest; interactive cards
|
|
1833
1854
|
// gain visual weight on hover instead of appearing flat until clicked.
|
|
1834
|
-
|
|
1855
|
+
// Flat appearance: the hairline border carries the surface, so a card
|
|
1856
|
+
// only gets a shadow as hover feedback when it is clickable.
|
|
1857
|
+
boxShadow: flat ? onClick && isHovered ? "var(--shadow-sm)" : "none" : onClick ? isHovered ? "var(--shadow-lg)" : "var(--shadow-sm)" : "var(--shadow-sm)",
|
|
1835
1858
|
transition: onClick ? "box-shadow 0.2s ease-in-out, transform 0.2s ease-in-out" : "none",
|
|
1836
|
-
transform: onClick && isHovered ? "translateY(-2px)" : "translateY(0)",
|
|
1859
|
+
transform: onClick && isHovered && !flat ? "translateY(-2px)" : "translateY(0)",
|
|
1837
1860
|
cursor: onClick ? "pointer" : "default"
|
|
1838
1861
|
};
|
|
1839
1862
|
const bodyStyle = {
|
|
@@ -1861,7 +1884,7 @@ function ITCard({
|
|
|
1861
1884
|
ITText,
|
|
1862
1885
|
{
|
|
1863
1886
|
as: "h3",
|
|
1864
|
-
className: clsx8("text-xl font-semibold mb-2", titleClassName),
|
|
1887
|
+
className: clsx8(flat ? "text-base font-semibold mb-3" : "text-xl font-semibold mb-2", titleClassName),
|
|
1865
1888
|
children: title
|
|
1866
1889
|
}
|
|
1867
1890
|
),
|
|
@@ -4940,20 +4963,6 @@ import { FaRegTimesCircle } from "react-icons/fa";
|
|
|
4940
4963
|
// src/components/molecules/form-header/form-header.tsx
|
|
4941
4964
|
import { FaTimes as FaTimes6 } from "react-icons/fa";
|
|
4942
4965
|
|
|
4943
|
-
// src/theme/theme-context.ts
|
|
4944
|
-
import { createContext, useContext } from "react";
|
|
4945
|
-
var ITThemeContext = createContext(void 0);
|
|
4946
|
-
var useITTheme = () => {
|
|
4947
|
-
const context = useContext(ITThemeContext);
|
|
4948
|
-
if (!context) {
|
|
4949
|
-
throw new Error("useITTheme must be used within an ITThemeProvider");
|
|
4950
|
-
}
|
|
4951
|
-
return context;
|
|
4952
|
-
};
|
|
4953
|
-
var useITThemeSafe = () => {
|
|
4954
|
-
return useContext(ITThemeContext);
|
|
4955
|
-
};
|
|
4956
|
-
|
|
4957
4966
|
// src/utils/color.utils.ts
|
|
4958
4967
|
var isLightColor = (hex) => {
|
|
4959
4968
|
if (!hex || typeof hex !== "string") return false;
|
|
@@ -6519,6 +6528,7 @@ function ITPageHeader({
|
|
|
6519
6528
|
className
|
|
6520
6529
|
}) {
|
|
6521
6530
|
const showTopRow = breadcrumbs?.length || backAction;
|
|
6531
|
+
const flat = useITFlatAppearance();
|
|
6522
6532
|
return /* @__PURE__ */ jsxs29("div", { className: `${className} space-y-3`, children: [
|
|
6523
6533
|
showTopRow && /* @__PURE__ */ jsxs29("div", { className: "flex items-center justify-between gap-4", children: [
|
|
6524
6534
|
/* @__PURE__ */ jsxs29("div", { className: "flex items-center gap-2 min-w-0", children: [
|
|
@@ -6537,7 +6547,7 @@ function ITPageHeader({
|
|
|
6537
6547
|
] }),
|
|
6538
6548
|
/* @__PURE__ */ jsxs29("div", { className: "flex items-start justify-between gap-6", children: [
|
|
6539
6549
|
/* @__PURE__ */ jsxs29("div", { className: "flex items-start gap-4 min-w-0", children: [
|
|
6540
|
-
icon && /* @__PURE__ */ jsx38(
|
|
6550
|
+
icon && !flat && /* @__PURE__ */ jsx38(
|
|
6541
6551
|
"div",
|
|
6542
6552
|
{
|
|
6543
6553
|
className: "flex items-center justify-center w-12 h-12 rounded-full border border-slate-200 dark:border-slate-700 bg-slate-50/50 dark:bg-slate-800/50 text-slate-600 dark:text-slate-300 flex-shrink-0 transition-all duration-200 hover:border-slate-300 dark:hover:border-slate-500 hover:shadow-sm",
|
|
@@ -6550,7 +6560,7 @@ function ITPageHeader({
|
|
|
6550
6560
|
ITText,
|
|
6551
6561
|
{
|
|
6552
6562
|
as: "h1",
|
|
6553
|
-
className: "text-3xl font-bold text-slate-800 dark:text-white tracking-tight leading-tight",
|
|
6563
|
+
className: flat ? "text-[1.625rem] font-bold text-slate-900 dark:text-white tracking-tight leading-tight" : "text-3xl font-bold text-slate-800 dark:text-white tracking-tight leading-tight",
|
|
6554
6564
|
children: title
|
|
6555
6565
|
}
|
|
6556
6566
|
),
|
|
@@ -6558,7 +6568,7 @@ function ITPageHeader({
|
|
|
6558
6568
|
ITText,
|
|
6559
6569
|
{
|
|
6560
6570
|
as: "p",
|
|
6561
|
-
className: "text-sm font-light text-slate-500 dark:text-slate-400 mt-1 leading-relaxed",
|
|
6571
|
+
className: flat ? "text-sm font-normal text-slate-500 dark:text-slate-400 mt-0.5 leading-relaxed" : "text-sm font-light text-slate-500 dark:text-slate-400 mt-1 leading-relaxed",
|
|
6562
6572
|
children: description
|
|
6563
6573
|
}
|
|
6564
6574
|
)
|
|
@@ -7575,6 +7585,7 @@ function ITSegmentedControl({
|
|
|
7575
7585
|
|
|
7576
7586
|
// src/components/organisms/sidebar/sidebar.tsx
|
|
7577
7587
|
import { useEffect as useEffect13, useRef as useRef20, useState as useState27 } from "react";
|
|
7588
|
+
import clsx40 from "clsx";
|
|
7578
7589
|
import { FaChevronDown as FaChevronDown4 } from "react-icons/fa";
|
|
7579
7590
|
import { jsx as jsx56, jsxs as jsxs43 } from "react/jsx-runtime";
|
|
7580
7591
|
function isSubItemGroup(entry) {
|
|
@@ -7593,8 +7604,11 @@ function ITSidebar({
|
|
|
7593
7604
|
onItemClick,
|
|
7594
7605
|
onSubItemClick,
|
|
7595
7606
|
subitemConnector = "dot",
|
|
7596
|
-
header
|
|
7607
|
+
header,
|
|
7608
|
+
notification,
|
|
7609
|
+
brand
|
|
7597
7610
|
}) {
|
|
7611
|
+
const flat = useITFlatAppearance();
|
|
7598
7612
|
const [expandedItems, setExpandedItems] = useState27(/* @__PURE__ */ new Set());
|
|
7599
7613
|
const [isHovering, setIsHovering] = useState27(false);
|
|
7600
7614
|
const sidebarRef = useRef20(null);
|
|
@@ -7663,7 +7677,7 @@ function ITSidebar({
|
|
|
7663
7677
|
}
|
|
7664
7678
|
};
|
|
7665
7679
|
const isSidebarCollapsed = visibleOnMobile ? false : !isHovering && isCollapsed;
|
|
7666
|
-
const sidebarWidth = isSidebarCollapsed ? "w-[88px]" : "w-[280px]";
|
|
7680
|
+
const sidebarWidth = isSidebarCollapsed ? "w-[88px]" : flat ? "w-[248px]" : "w-[280px]";
|
|
7667
7681
|
const renderSubItem = (subitem) => /* @__PURE__ */ jsx56("li", { className: "relative", children: /* @__PURE__ */ jsxs43(
|
|
7668
7682
|
"button",
|
|
7669
7683
|
{
|
|
@@ -7738,6 +7752,87 @@ function ITSidebar({
|
|
|
7738
7752
|
/* @__PURE__ */ jsx56("ul", { "aria-labelledby": headingId, className: "flex flex-col gap-0", children: group.items.map(renderSubItem) })
|
|
7739
7753
|
] }, group.id);
|
|
7740
7754
|
};
|
|
7755
|
+
const renderNotification = () => {
|
|
7756
|
+
if (!notification) return null;
|
|
7757
|
+
const {
|
|
7758
|
+
count,
|
|
7759
|
+
icon,
|
|
7760
|
+
label = "Notificaciones",
|
|
7761
|
+
onClick,
|
|
7762
|
+
badgeProps
|
|
7763
|
+
} = notification;
|
|
7764
|
+
const { className: badgeClassName, ...badgeRest } = badgeProps ?? {};
|
|
7765
|
+
const badge = /* @__PURE__ */ jsx56(
|
|
7766
|
+
ITBadget,
|
|
7767
|
+
{
|
|
7768
|
+
color: "danger",
|
|
7769
|
+
size: "sm",
|
|
7770
|
+
...badgeRest,
|
|
7771
|
+
className: clsx40("shadow-md", badgeClassName),
|
|
7772
|
+
children: String(count)
|
|
7773
|
+
}
|
|
7774
|
+
);
|
|
7775
|
+
if (isSidebarCollapsed) {
|
|
7776
|
+
return /* @__PURE__ */ jsxs43(
|
|
7777
|
+
"button",
|
|
7778
|
+
{
|
|
7779
|
+
type: "button",
|
|
7780
|
+
"aria-label": label,
|
|
7781
|
+
title: label,
|
|
7782
|
+
onClick,
|
|
7783
|
+
className: "relative flex items-center justify-center w-full p-2 mb-1 rounded-xl transition-all duration-300",
|
|
7784
|
+
style: { color: "var(--it-sidebar-icon-color, var(--color-secondary-500))" },
|
|
7785
|
+
onMouseEnter: (e) => {
|
|
7786
|
+
e.currentTarget.style.backgroundColor = "var(--it-sidebar-hover-bg, var(--color-secondary-100))";
|
|
7787
|
+
},
|
|
7788
|
+
onMouseLeave: (e) => {
|
|
7789
|
+
e.currentTarget.style.backgroundColor = "transparent";
|
|
7790
|
+
},
|
|
7791
|
+
children: [
|
|
7792
|
+
icon && /* @__PURE__ */ jsx56("span", { className: "flex items-center justify-center text-[1.05rem]", children: icon }),
|
|
7793
|
+
/* @__PURE__ */ jsx56("span", { className: "absolute top-0.5 right-0.5 pointer-events-none", children: badge })
|
|
7794
|
+
]
|
|
7795
|
+
}
|
|
7796
|
+
);
|
|
7797
|
+
}
|
|
7798
|
+
return /* @__PURE__ */ jsxs43(
|
|
7799
|
+
"button",
|
|
7800
|
+
{
|
|
7801
|
+
type: "button",
|
|
7802
|
+
"aria-label": label,
|
|
7803
|
+
title: label,
|
|
7804
|
+
onClick,
|
|
7805
|
+
className: "flex items-center gap-2.5 w-full text-left px-3 py-2 mb-1 rounded-xl transition-all duration-300",
|
|
7806
|
+
style: { color: "var(--it-sidebar-label-color, var(--color-secondary-600))" },
|
|
7807
|
+
onMouseEnter: (e) => {
|
|
7808
|
+
e.currentTarget.style.backgroundColor = "var(--it-sidebar-hover-bg, var(--color-secondary-100))";
|
|
7809
|
+
},
|
|
7810
|
+
onMouseLeave: (e) => {
|
|
7811
|
+
e.currentTarget.style.backgroundColor = "transparent";
|
|
7812
|
+
},
|
|
7813
|
+
children: [
|
|
7814
|
+
icon && /* @__PURE__ */ jsx56(
|
|
7815
|
+
"span",
|
|
7816
|
+
{
|
|
7817
|
+
className: "flex-shrink-0 flex items-center justify-center text-[1.05rem]",
|
|
7818
|
+
style: { color: "var(--it-sidebar-icon-color, #9ca3af)" },
|
|
7819
|
+
children: icon
|
|
7820
|
+
}
|
|
7821
|
+
),
|
|
7822
|
+
/* @__PURE__ */ jsx56(
|
|
7823
|
+
ITText,
|
|
7824
|
+
{
|
|
7825
|
+
as: "span",
|
|
7826
|
+
className: "truncate tracking-wide",
|
|
7827
|
+
style: { fontSize: "0.8rem", fontWeight: 500 },
|
|
7828
|
+
children: label
|
|
7829
|
+
}
|
|
7830
|
+
),
|
|
7831
|
+
/* @__PURE__ */ jsx56("span", { className: "ml-auto flex-shrink-0", children: badge })
|
|
7832
|
+
]
|
|
7833
|
+
}
|
|
7834
|
+
);
|
|
7835
|
+
};
|
|
7741
7836
|
return /* @__PURE__ */ jsxs43(
|
|
7742
7837
|
"aside",
|
|
7743
7838
|
{
|
|
@@ -7748,20 +7843,39 @@ function ITSidebar({
|
|
|
7748
7843
|
${sidebarWidth}
|
|
7749
7844
|
${className}
|
|
7750
7845
|
${!visibleOnMobile ? "hidden lg:flex" : "flex"}
|
|
7751
|
-
shadow-[4px_0_32px_rgba(15,23,42,0.04)]
|
|
7846
|
+
${flat ? "" : "shadow-[4px_0_32px_rgba(15,23,42,0.04)]"}
|
|
7752
7847
|
`,
|
|
7753
7848
|
style: {
|
|
7754
7849
|
zIndex: 50,
|
|
7755
7850
|
backgroundColor: "var(--it-sidebar-bg, rgba(255, 255, 255, 0.90))",
|
|
7756
7851
|
borderRight: "1px solid var(--it-sidebar-border, var(--color-secondary-200))",
|
|
7757
|
-
WebkitBackdropFilter: "blur(12px)",
|
|
7758
|
-
backdropFilter: "blur(12px)"
|
|
7852
|
+
...flat ? {} : { WebkitBackdropFilter: "blur(12px)", backdropFilter: "blur(12px)" }
|
|
7759
7853
|
},
|
|
7760
7854
|
children: [
|
|
7855
|
+
brand && (brand.logo || brand.text) && /* @__PURE__ */ jsxs43(
|
|
7856
|
+
"div",
|
|
7857
|
+
{
|
|
7858
|
+
className: `flex items-center flex-shrink-0 h-[64px] ${isSidebarCollapsed ? "justify-center px-2" : "gap-2.5 px-7"}`,
|
|
7859
|
+
children: [
|
|
7860
|
+
brand.logo && /* @__PURE__ */ jsx56("div", { className: "flex-shrink-0 flex items-center", children: brand.logo }),
|
|
7861
|
+
brand.text && !isSidebarCollapsed && /* @__PURE__ */ jsx56(
|
|
7862
|
+
ITText,
|
|
7863
|
+
{
|
|
7864
|
+
as: "span",
|
|
7865
|
+
className: "text-[1.05rem] font-bold tracking-tight truncate",
|
|
7866
|
+
style: { color: "var(--it-sidebar-brand-color, var(--it-sidebar-label-color, var(--color-secondary-900)))" },
|
|
7867
|
+
children: brand.text
|
|
7868
|
+
}
|
|
7869
|
+
)
|
|
7870
|
+
]
|
|
7871
|
+
}
|
|
7872
|
+
),
|
|
7761
7873
|
header && !isSidebarCollapsed && /* @__PURE__ */ jsx56("div", { className: "px-4 pt-4 pb-1 flex-shrink-0", children: header }),
|
|
7874
|
+
notification && /* @__PURE__ */ jsx56("div", { className: "px-4 pt-3 flex-shrink-0", children: renderNotification() }),
|
|
7762
7875
|
/* @__PURE__ */ jsx56("nav", { "aria-label": "Componentes de la librer\xEDa", className: "flex-1 py-4 overflow-y-auto overflow-x-hidden custom-scrollbar px-4", children: /* @__PURE__ */ jsx56("ul", { className: "space-y-1", children: navigationItems.map((item) => {
|
|
7763
7876
|
const hasSubmenu = !!item.subitems && item.subitems.length > 0;
|
|
7764
7877
|
const submenuId = `it-sidebar-submenu-${item.id}`;
|
|
7878
|
+
const { className: badgeClassName, ...badgeRest } = item.badgeProps ?? {};
|
|
7765
7879
|
return /* @__PURE__ */ jsxs43("li", { className: "relative group/navitem", children: [
|
|
7766
7880
|
/* @__PURE__ */ jsxs43(
|
|
7767
7881
|
"div",
|
|
@@ -7778,8 +7892,8 @@ function ITSidebar({
|
|
|
7778
7892
|
`,
|
|
7779
7893
|
style: {
|
|
7780
7894
|
backgroundColor: item.isActive ? "var(--it-sidebar-active-bg, var(--color-secondary-50))" : "transparent",
|
|
7781
|
-
boxShadow: item.isActive ? "var(--shadow-xs)" : "none",
|
|
7782
|
-
border: item.isActive ? "1px solid var(--it-sidebar-border, var(--color-secondary-200))" : "1px solid transparent"
|
|
7895
|
+
boxShadow: item.isActive && !flat ? "var(--shadow-xs)" : "none",
|
|
7896
|
+
border: item.isActive && !flat ? "1px solid var(--it-sidebar-border, var(--color-secondary-200))" : "1px solid transparent"
|
|
7783
7897
|
},
|
|
7784
7898
|
onMouseEnter: (e) => {
|
|
7785
7899
|
if (!item.isActive) e.currentTarget.style.backgroundColor = "var(--it-sidebar-hover-bg, var(--color-secondary-100))";
|
|
@@ -7795,7 +7909,7 @@ function ITSidebar({
|
|
|
7795
7909
|
}
|
|
7796
7910
|
},
|
|
7797
7911
|
children: [
|
|
7798
|
-
item.isActive && !isSidebarCollapsed && /* @__PURE__ */ jsx56(
|
|
7912
|
+
item.isActive && !isSidebarCollapsed && !flat && /* @__PURE__ */ jsx56(
|
|
7799
7913
|
"div",
|
|
7800
7914
|
{
|
|
7801
7915
|
className: "absolute left-0 top-1/4 bottom-1/4 w-[3px] rounded-r-full transition-all",
|
|
@@ -7810,8 +7924,8 @@ function ITSidebar({
|
|
|
7810
7924
|
style: {
|
|
7811
7925
|
color: item.isActive ? "var(--it-sidebar-active-icon, var(--color-primary-500))" : "var(--it-sidebar-icon-color, #9ca3af)",
|
|
7812
7926
|
opacity: item.isActive ? 1 : 0.8,
|
|
7813
|
-
fontSize: item.isActive ? "1.12rem" : "1.05rem",
|
|
7814
|
-
filter: item.isActive ? "drop-shadow(0 0 8px rgba(255,255,255,0.2))" : "none"
|
|
7927
|
+
fontSize: flat ? "1rem" : item.isActive ? "1.12rem" : "1.05rem",
|
|
7928
|
+
filter: item.isActive && !flat ? "drop-shadow(0 0 8px rgba(255,255,255,0.2))" : "none"
|
|
7815
7929
|
},
|
|
7816
7930
|
children: item.icon
|
|
7817
7931
|
}
|
|
@@ -7823,7 +7937,7 @@ function ITSidebar({
|
|
|
7823
7937
|
className: `transition-all duration-300 truncate tracking-wide`,
|
|
7824
7938
|
style: {
|
|
7825
7939
|
color: item.isActive ? "var(--it-sidebar-active-color, #ffffff)" : "var(--it-sidebar-label-color, var(--color-secondary-300))",
|
|
7826
|
-
fontSize: "0.8rem",
|
|
7940
|
+
fontSize: flat ? "0.875rem" : "0.8rem",
|
|
7827
7941
|
fontWeight: item.isActive ? "600" : "500"
|
|
7828
7942
|
},
|
|
7829
7943
|
children: item.label
|
|
@@ -7838,19 +7952,18 @@ function ITSidebar({
|
|
|
7838
7952
|
children: /* @__PURE__ */ jsx56(FaChevronDown4, { className: "w-3 h-3" })
|
|
7839
7953
|
}
|
|
7840
7954
|
),
|
|
7841
|
-
item.badge && /* @__PURE__ */ jsx56(
|
|
7842
|
-
|
|
7955
|
+
item.badge != null && item.badge !== "" && /* @__PURE__ */ jsx56(
|
|
7956
|
+
ITBadget,
|
|
7843
7957
|
{
|
|
7844
|
-
|
|
7845
|
-
|
|
7846
|
-
|
|
7847
|
-
|
|
7848
|
-
|
|
7849
|
-
|
|
7850
|
-
|
|
7851
|
-
|
|
7852
|
-
|
|
7853
|
-
children: isSidebarCollapsed ? "" : item.badge
|
|
7958
|
+
color: "primary",
|
|
7959
|
+
size: "sm",
|
|
7960
|
+
...badgeRest,
|
|
7961
|
+
className: clsx40(
|
|
7962
|
+
"absolute shadow-md",
|
|
7963
|
+
isSidebarCollapsed ? "top-0.5 right-0.5" : "right-3 top-1/2 -translate-y-1/2",
|
|
7964
|
+
badgeClassName
|
|
7965
|
+
),
|
|
7966
|
+
children: String(item.badge)
|
|
7854
7967
|
}
|
|
7855
7968
|
)
|
|
7856
7969
|
]
|
|
@@ -7916,7 +8029,7 @@ function ITSidebar({
|
|
|
7916
8029
|
|
|
7917
8030
|
// src/components/atoms/slide/slide.tsx
|
|
7918
8031
|
import { useState as useState28, useEffect as useEffect14 } from "react";
|
|
7919
|
-
import
|
|
8032
|
+
import clsx41 from "clsx";
|
|
7920
8033
|
import { jsx as jsx57 } from "react/jsx-runtime";
|
|
7921
8034
|
function ITSlideToggle({
|
|
7922
8035
|
onToggle,
|
|
@@ -7974,7 +8087,7 @@ function ITSlideToggle({
|
|
|
7974
8087
|
"div",
|
|
7975
8088
|
{
|
|
7976
8089
|
onClick: toggleSwitch,
|
|
7977
|
-
className:
|
|
8090
|
+
className: clsx41(
|
|
7978
8091
|
"flex items-center rounded-full p-1 transition-colors duration-300",
|
|
7979
8092
|
container,
|
|
7980
8093
|
disabled ? "opacity-50 cursor-not-allowed" : "cursor-pointer",
|
|
@@ -7993,7 +8106,7 @@ function ITSlideToggle({
|
|
|
7993
8106
|
children: /* @__PURE__ */ jsx57(
|
|
7994
8107
|
"div",
|
|
7995
8108
|
{
|
|
7996
|
-
className:
|
|
8109
|
+
className: clsx41(
|
|
7997
8110
|
"bg-white rounded-full shadow-md transform transition-transform duration-300 pointer-events-none",
|
|
7998
8111
|
knob,
|
|
7999
8112
|
isOn ? translate : "translate-x-0"
|
|
@@ -8005,7 +8118,7 @@ function ITSlideToggle({
|
|
|
8005
8118
|
}
|
|
8006
8119
|
|
|
8007
8120
|
// src/components/atoms/slider/slider.tsx
|
|
8008
|
-
import
|
|
8121
|
+
import clsx42 from "clsx";
|
|
8009
8122
|
import { jsx as jsx58, jsxs as jsxs44 } from "react/jsx-runtime";
|
|
8010
8123
|
function ITSlider({
|
|
8011
8124
|
value,
|
|
@@ -8017,7 +8130,7 @@ function ITSlider({
|
|
|
8017
8130
|
disabled = false,
|
|
8018
8131
|
className
|
|
8019
8132
|
}) {
|
|
8020
|
-
return /* @__PURE__ */ jsxs44("div", { className:
|
|
8133
|
+
return /* @__PURE__ */ jsxs44("div", { className: clsx42("flex flex-col gap-1.5", className), children: [
|
|
8021
8134
|
label && /* @__PURE__ */ jsxs44(ITText, { as: "label", className: "text-xs font-semibold text-secondary-600 dark:text-secondary-400", children: [
|
|
8022
8135
|
label,
|
|
8023
8136
|
": ",
|
|
@@ -8033,7 +8146,7 @@ function ITSlider({
|
|
|
8033
8146
|
value,
|
|
8034
8147
|
onChange: (e) => onChange(Number(e.target.value)),
|
|
8035
8148
|
disabled,
|
|
8036
|
-
className:
|
|
8149
|
+
className: clsx42(
|
|
8037
8150
|
"w-full h-1.5 appearance-none rounded-full outline-none cursor-pointer",
|
|
8038
8151
|
"bg-secondary-200 dark:bg-secondary-700",
|
|
8039
8152
|
"accent-primary-500",
|
|
@@ -8053,7 +8166,7 @@ function ITSlider({
|
|
|
8053
8166
|
}
|
|
8054
8167
|
|
|
8055
8168
|
// src/components/molecules/stat-card/stat-card.tsx
|
|
8056
|
-
import
|
|
8169
|
+
import clsx43 from "clsx";
|
|
8057
8170
|
import { jsx as jsx59, jsxs as jsxs45 } from "react/jsx-runtime";
|
|
8058
8171
|
var trendColors = {
|
|
8059
8172
|
up: "text-emerald-600 bg-emerald-50 dark:text-emerald-400 dark:bg-emerald-950/30",
|
|
@@ -8074,7 +8187,7 @@ function ITStatCard({
|
|
|
8074
8187
|
return /* @__PURE__ */ jsxs45(
|
|
8075
8188
|
"div",
|
|
8076
8189
|
{
|
|
8077
|
-
className:
|
|
8190
|
+
className: clsx43("rounded-xl p-4 border border-slate-100 dark:border-slate-800", color, className),
|
|
8078
8191
|
style,
|
|
8079
8192
|
onClick,
|
|
8080
8193
|
role: onClick ? "button" : void 0,
|
|
@@ -8086,7 +8199,7 @@ function ITStatCard({
|
|
|
8086
8199
|
] }),
|
|
8087
8200
|
/* @__PURE__ */ jsxs45("div", { className: "flex items-baseline gap-2", children: [
|
|
8088
8201
|
/* @__PURE__ */ jsx59(ITText, { as: "span", className: "text-2xl font-bold text-slate-800 dark:text-white", children: value }),
|
|
8089
|
-
trend && /* @__PURE__ */ jsx59(ITText, { as: "span", className:
|
|
8202
|
+
trend && /* @__PURE__ */ jsx59(ITText, { as: "span", className: clsx43("text-[11px] font-semibold px-1.5 py-0.5 rounded-md", trendColors[trendDirection]), children: trend })
|
|
8090
8203
|
] })
|
|
8091
8204
|
]
|
|
8092
8205
|
}
|
|
@@ -8094,7 +8207,7 @@ function ITStatCard({
|
|
|
8094
8207
|
}
|
|
8095
8208
|
|
|
8096
8209
|
// src/components/molecules/table/table.tsx
|
|
8097
|
-
import
|
|
8210
|
+
import clsx44 from "clsx";
|
|
8098
8211
|
import React11, { useState as useState29 } from "react";
|
|
8099
8212
|
import {
|
|
8100
8213
|
FaCheck as FaCheck4,
|
|
@@ -8271,7 +8384,7 @@ function ITTable({
|
|
|
8271
8384
|
children: /* @__PURE__ */ jsx60("div", { className: "relative w-10 h-5 bg-secondary-300 rounded-full", children: /* @__PURE__ */ jsx60(
|
|
8272
8385
|
"div",
|
|
8273
8386
|
{
|
|
8274
|
-
className:
|
|
8387
|
+
className: clsx44(
|
|
8275
8388
|
"absolute top-0.5 w-4 h-4 rounded-full transition-all duration-300 shadow-sm",
|
|
8276
8389
|
{
|
|
8277
8390
|
"left-0.5 bg-secondary-400": currentValue === void 0,
|
|
@@ -8462,7 +8575,7 @@ function ITTable({
|
|
|
8462
8575
|
event.preventDefault();
|
|
8463
8576
|
onRowClick(row, event);
|
|
8464
8577
|
};
|
|
8465
|
-
return /* @__PURE__ */ jsx60("div", { ref: rootRef, className:
|
|
8578
|
+
return /* @__PURE__ */ jsx60("div", { ref: rootRef, className: clsx44("space-y-4 w-full", containerClassName), children: /* @__PURE__ */ jsxs46("div", { className: tableContainer, style: { backgroundColor: "var(--color-table-rowBg, #ffffff)" }, children: [
|
|
8466
8579
|
title && /* @__PURE__ */ jsxs46("div", { className: "px-6 py-5 flex items-center justify-between", style: { backgroundColor: "var(--color-table-rowBg, #ffffff)" }, children: [
|
|
8467
8580
|
/* @__PURE__ */ jsx60(ITText, { as: "h2", className: "text-xl font-bold text-secondary-900 leading-tight", children: title }),
|
|
8468
8581
|
/* @__PURE__ */ jsxs46("div", { className: "flex items-center bg-slate-100 dark:bg-slate-800/80 rounded-lg p-0.5 border border-slate-200 dark:border-slate-700/50", children: [
|
|
@@ -8519,7 +8632,7 @@ function ITTable({
|
|
|
8519
8632
|
effectiveView === "cards" ? /* @__PURE__ */ jsx60("div", { className: "p-4 space-y-3 max-h-[400px] overflow-y-auto", children: currentData.length > 0 ? currentData.map((row, i) => /* @__PURE__ */ jsx60(
|
|
8520
8633
|
"div",
|
|
8521
8634
|
{
|
|
8522
|
-
className:
|
|
8635
|
+
className: clsx44(tableCardHover, onRowClick && tableCardClickable),
|
|
8523
8636
|
role: onRowClick ? "button" : void 0,
|
|
8524
8637
|
tabIndex: onRowClick ? 0 : void 0,
|
|
8525
8638
|
onClick: onRowClick ? handleRowClick(row) : void 0,
|
|
@@ -8527,7 +8640,7 @@ function ITTable({
|
|
|
8527
8640
|
children: renderCard ? renderCard(row) : renderDefaultCard(row)
|
|
8528
8641
|
},
|
|
8529
8642
|
i
|
|
8530
|
-
)) : /* @__PURE__ */ jsxs46("div", { className:
|
|
8643
|
+
)) : /* @__PURE__ */ jsxs46("div", { className: clsx44(tableEmptyContent, "py-12"), children: [
|
|
8531
8644
|
/* @__PURE__ */ jsx60(ITText, { as: "span", className: "text-lg", children: "No se encontraron resultados" }),
|
|
8532
8645
|
/* @__PURE__ */ jsx60(ITText, { as: "span", className: "text-sm mt-1", children: "Intenta ajustar los filtros" })
|
|
8533
8646
|
] }) }) : /* @__PURE__ */ jsx60(
|
|
@@ -8539,7 +8652,7 @@ function ITTable({
|
|
|
8539
8652
|
children: /* @__PURE__ */ jsxs46(
|
|
8540
8653
|
"table",
|
|
8541
8654
|
{
|
|
8542
|
-
className:
|
|
8655
|
+
className: clsx44(
|
|
8543
8656
|
tableLayoutClass,
|
|
8544
8657
|
showVerticalBorder && "[&_th]:border-r [&_th:last-child]:border-r-0 [&_td]:border-r [&_td:last-child]:border-r-0",
|
|
8545
8658
|
showVerticalBorder && (verticalBorderClassname || "[&_th]:border-slate-100 dark:[&_th]:border-slate-700/30 [&_td]:border-slate-100 dark:[&_td]:border-slate-700/30"),
|
|
@@ -8559,7 +8672,7 @@ function ITTable({
|
|
|
8559
8672
|
/* @__PURE__ */ jsx60("thead", { children: /* @__PURE__ */ jsx60(
|
|
8560
8673
|
"tr",
|
|
8561
8674
|
{
|
|
8562
|
-
className:
|
|
8675
|
+
className: clsx44(tableHeaderRow, "dark:text-slate-200"),
|
|
8563
8676
|
"aria-rowindex": isTableVirtual ? 1 : void 0,
|
|
8564
8677
|
children: columns.map((col) => {
|
|
8565
8678
|
const pin = pinnedMeta[col.key];
|
|
@@ -8568,7 +8681,7 @@ function ITTable({
|
|
|
8568
8681
|
"th",
|
|
8569
8682
|
{
|
|
8570
8683
|
scope: "col",
|
|
8571
|
-
className:
|
|
8684
|
+
className: clsx44(
|
|
8572
8685
|
tableHeaderCell(col.className, density),
|
|
8573
8686
|
col.align && tableAlignClasses[col.align],
|
|
8574
8687
|
isPinned && "sticky",
|
|
@@ -8602,7 +8715,7 @@ function ITTable({
|
|
|
8602
8715
|
})
|
|
8603
8716
|
}
|
|
8604
8717
|
) }),
|
|
8605
|
-
/* @__PURE__ */ jsx60("tbody", { className:
|
|
8718
|
+
/* @__PURE__ */ jsx60("tbody", { className: clsx44(tableBody, "dark:divide-slate-700/30"), children: currentData.length > 0 ? /* @__PURE__ */ jsxs46(Fragment9, { children: [
|
|
8606
8719
|
isTableVirtual && topSpacerHeight > 0 && /* @__PURE__ */ jsx60("tr", { "aria-hidden": "true", style: { height: topSpacerHeight }, children: /* @__PURE__ */ jsx60("td", { colSpan: columnCount, style: { padding: 0, border: 0 } }) }),
|
|
8607
8720
|
windowData.map((row, windowIndex) => {
|
|
8608
8721
|
const absoluteIndex = isTableVirtual ? startIndex + windowIndex : windowIndex;
|
|
@@ -8610,7 +8723,7 @@ function ITTable({
|
|
|
8610
8723
|
"tr",
|
|
8611
8724
|
{
|
|
8612
8725
|
"aria-rowindex": isTableVirtual ? absoluteIndex + 2 : void 0,
|
|
8613
|
-
className:
|
|
8726
|
+
className: clsx44(
|
|
8614
8727
|
tableRow,
|
|
8615
8728
|
variant === "striped" && absoluteIndex % 2 === 0 && "bg-secondary-50/40 dark:bg-slate-800/20",
|
|
8616
8729
|
onRowClick && tableRowClickable
|
|
@@ -8626,7 +8739,7 @@ function ITTable({
|
|
|
8626
8739
|
return /* @__PURE__ */ jsx60(
|
|
8627
8740
|
"td",
|
|
8628
8741
|
{
|
|
8629
|
-
className:
|
|
8742
|
+
className: clsx44(
|
|
8630
8743
|
tableCell(col.className, density),
|
|
8631
8744
|
col.align && tableAlignClasses[col.align],
|
|
8632
8745
|
isPinned && "sticky bg-[var(--color-table-rowBg,white)] group-hover:bg-[var(--color-table-rowHover,var(--color-secondary-50))]",
|
|
@@ -8638,7 +8751,7 @@ function ITTable({
|
|
|
8638
8751
|
...isPinned ? pin.side === "left" ? { left: pin.offset } : { right: pin.offset } : {}
|
|
8639
8752
|
} : void 0,
|
|
8640
8753
|
title: truncateTitle,
|
|
8641
|
-
children: col.type === "actions" ? /* @__PURE__ */ jsx60("div", { className: tableActionsCell, children: renderCellContent(col, row) }) : /* @__PURE__ */ jsx60("div", { className:
|
|
8754
|
+
children: col.type === "actions" ? /* @__PURE__ */ jsx60("div", { className: tableActionsCell, children: renderCellContent(col, row) }) : /* @__PURE__ */ jsx60("div", { className: clsx44(tableCellText, col.truncate && "truncate"), children: renderCellContent(col, row) })
|
|
8642
8755
|
},
|
|
8643
8756
|
`${absoluteIndex}-${col.key}`
|
|
8644
8757
|
);
|
|
@@ -8674,7 +8787,7 @@ function ITTable({
|
|
|
8674
8787
|
}
|
|
8675
8788
|
|
|
8676
8789
|
// src/components/atoms/textarea/textarea.tsx
|
|
8677
|
-
import
|
|
8790
|
+
import clsx45 from "clsx";
|
|
8678
8791
|
import { jsx as jsx61, jsxs as jsxs47 } from "react/jsx-runtime";
|
|
8679
8792
|
var resizeMap = {
|
|
8680
8793
|
none: "resize-none",
|
|
@@ -8695,7 +8808,7 @@ function ITTextarea({
|
|
|
8695
8808
|
maxLength,
|
|
8696
8809
|
resize = "vertical"
|
|
8697
8810
|
}) {
|
|
8698
|
-
return /* @__PURE__ */ jsxs47("div", { className:
|
|
8811
|
+
return /* @__PURE__ */ jsxs47("div", { className: clsx45("flex flex-col gap-1.5", className), children: [
|
|
8699
8812
|
label && /* @__PURE__ */ jsx61(ITText, { as: "label", className: inputLabel(!!error), htmlFor: name, children: label }),
|
|
8700
8813
|
/* @__PURE__ */ jsx61(
|
|
8701
8814
|
"textarea",
|
|
@@ -8708,7 +8821,7 @@ function ITTextarea({
|
|
|
8708
8821
|
rows,
|
|
8709
8822
|
disabled,
|
|
8710
8823
|
maxLength,
|
|
8711
|
-
className:
|
|
8824
|
+
className: clsx45(
|
|
8712
8825
|
"w-full border border-solid transition-all duration-200 rounded-lg px-3 py-2 text-sm outline-none",
|
|
8713
8826
|
"focus:ring-2",
|
|
8714
8827
|
resizeMap[resize],
|
|
@@ -8723,7 +8836,7 @@ function ITTextarea({
|
|
|
8723
8836
|
|
|
8724
8837
|
// src/components/molecules/tabs/tabs.tsx
|
|
8725
8838
|
import { useState as useState30 } from "react";
|
|
8726
|
-
import { clsx as
|
|
8839
|
+
import { clsx as clsx46 } from "clsx";
|
|
8727
8840
|
import { jsx as jsx62, jsxs as jsxs48 } from "react/jsx-runtime";
|
|
8728
8841
|
var ITTabs = ({
|
|
8729
8842
|
items,
|
|
@@ -8740,8 +8853,8 @@ var ITTabs = ({
|
|
|
8740
8853
|
if (onChange) onChange(id);
|
|
8741
8854
|
};
|
|
8742
8855
|
const activeContent = items.find((item) => item.id === activeId)?.content;
|
|
8743
|
-
return /* @__PURE__ */ jsxs48("div", { className:
|
|
8744
|
-
/* @__PURE__ */ jsx62("div", { className:
|
|
8856
|
+
return /* @__PURE__ */ jsxs48("div", { className: clsx46("w-full", containerClassName), children: [
|
|
8857
|
+
/* @__PURE__ */ jsx62("div", { className: clsx46(
|
|
8745
8858
|
"flex border-secondary-200 mb-4",
|
|
8746
8859
|
variant === "line" ? "border-b" : "gap-2 p-1 bg-secondary-100 rounded-lg w-fit",
|
|
8747
8860
|
className
|
|
@@ -8752,7 +8865,7 @@ var ITTabs = ({
|
|
|
8752
8865
|
{
|
|
8753
8866
|
onClick: () => handleTabClick(item.id, item.disabled),
|
|
8754
8867
|
disabled: item.disabled,
|
|
8755
|
-
className:
|
|
8868
|
+
className: clsx46(
|
|
8756
8869
|
"flex items-center gap-2 px-4 py-2 text-sm font-medium transition-all duration-200 outline-none",
|
|
8757
8870
|
// LINE VARIANT
|
|
8758
8871
|
variant === "line" && [
|
|
@@ -8780,7 +8893,7 @@ var ITTabs = ({
|
|
|
8780
8893
|
var tabs_default = ITTabs;
|
|
8781
8894
|
|
|
8782
8895
|
// src/components/organisms/triple-filter/tripleFilter.tsx
|
|
8783
|
-
import
|
|
8896
|
+
import clsx47 from "clsx";
|
|
8784
8897
|
import { jsx as jsx63 } from "react/jsx-runtime";
|
|
8785
8898
|
var colorMap2 = {
|
|
8786
8899
|
primary: "text-primary-600",
|
|
@@ -8803,14 +8916,14 @@ var ITTripleFilter = ({
|
|
|
8803
8916
|
return /* @__PURE__ */ jsx63(
|
|
8804
8917
|
"div",
|
|
8805
8918
|
{
|
|
8806
|
-
className:
|
|
8919
|
+
className: clsx47("flex bg-slate-100 p-1 rounded-xl gap-1 w-fit", className),
|
|
8807
8920
|
children: options.map((option) => /* @__PURE__ */ jsx63(
|
|
8808
8921
|
"button",
|
|
8809
8922
|
{
|
|
8810
8923
|
onClick: () => onChange(option.value),
|
|
8811
|
-
className:
|
|
8924
|
+
className: clsx47(
|
|
8812
8925
|
"px-4 py-1.5 rounded-lg text-[10px] font-bold uppercase tracking-wider transition-all duration-200 whitespace-nowrap",
|
|
8813
|
-
value === option.value ?
|
|
8926
|
+
value === option.value ? clsx47("bg-white shadow-sm", colorMap2[color]) : "text-slate-400 hover:text-slate-600"
|
|
8814
8927
|
),
|
|
8815
8928
|
children: /* @__PURE__ */ jsx63(ITText, { as: "span", children: option.label })
|
|
8816
8929
|
},
|
|
@@ -8832,7 +8945,7 @@ var positionStyles = {
|
|
|
8832
8945
|
};
|
|
8833
8946
|
|
|
8834
8947
|
// src/components/organisms/toast/toast.tsx
|
|
8835
|
-
import
|
|
8948
|
+
import clsx48 from "clsx";
|
|
8836
8949
|
import { useEffect as useEffect15, useState as useState31 } from "react";
|
|
8837
8950
|
import { FaTimesCircle as FaTimesCircle2, FaCheckCircle as FaCheckCircle2, FaExclamationTriangle as FaExclamationTriangle3, FaInfoCircle as FaInfoCircle2, FaTimes as FaTimes10 } from "react-icons/fa";
|
|
8838
8951
|
import { jsx as jsx64, jsxs as jsxs49 } from "react/jsx-runtime";
|
|
@@ -8878,7 +8991,7 @@ function ITToast({
|
|
|
8878
8991
|
return /* @__PURE__ */ jsxs49(
|
|
8879
8992
|
"div",
|
|
8880
8993
|
{
|
|
8881
|
-
className:
|
|
8994
|
+
className: clsx48(
|
|
8882
8995
|
"fixed z-[80] p-4 rounded-xl shadow-xl flex items-center justify-between gap-4 transition-all duration-300 text-white min-w-[300px]",
|
|
8883
8996
|
positionStyles[position],
|
|
8884
8997
|
{
|
|
@@ -8916,7 +9029,7 @@ import {
|
|
|
8916
9029
|
useRef as useRef21,
|
|
8917
9030
|
useState as useState33
|
|
8918
9031
|
} from "react";
|
|
8919
|
-
import
|
|
9032
|
+
import clsx50 from "clsx";
|
|
8920
9033
|
import {
|
|
8921
9034
|
FaBold,
|
|
8922
9035
|
FaEraser,
|
|
@@ -8940,7 +9053,7 @@ var toolbarActions = [
|
|
|
8940
9053
|
|
|
8941
9054
|
// src/components/atoms/tooltip/tooltip.tsx
|
|
8942
9055
|
import { useState as useState32 } from "react";
|
|
8943
|
-
import
|
|
9056
|
+
import clsx49 from "clsx";
|
|
8944
9057
|
import { jsx as jsx65, jsxs as jsxs50 } from "react/jsx-runtime";
|
|
8945
9058
|
var positionClasses2 = {
|
|
8946
9059
|
top: "bottom-full left-1/2 -translate-x-1/2 mb-2",
|
|
@@ -8973,14 +9086,14 @@ function ITTooltip({
|
|
|
8973
9086
|
return /* @__PURE__ */ jsxs50(
|
|
8974
9087
|
"div",
|
|
8975
9088
|
{
|
|
8976
|
-
className:
|
|
9089
|
+
className: clsx49("relative inline-flex", className),
|
|
8977
9090
|
onMouseEnter: handleMouseEnter,
|
|
8978
9091
|
onMouseLeave: handleMouseLeave,
|
|
8979
9092
|
children: [
|
|
8980
9093
|
children,
|
|
8981
|
-
visible && /* @__PURE__ */ jsxs50("div", { className:
|
|
9094
|
+
visible && /* @__PURE__ */ jsxs50("div", { className: clsx49("absolute z-[70] pointer-events-none", positionClasses2[position]), children: [
|
|
8982
9095
|
/* @__PURE__ */ jsx65("div", { className: "bg-slate-800 dark:bg-slate-700 text-white text-xs rounded-lg px-2.5 py-1.5 whitespace-nowrap shadow-lg", children: /* @__PURE__ */ jsx65(ITText, { as: "span", children: content }) }),
|
|
8983
|
-
/* @__PURE__ */ jsx65("div", { className:
|
|
9096
|
+
/* @__PURE__ */ jsx65("div", { className: clsx49("absolute", arrowClasses[position]) })
|
|
8984
9097
|
] })
|
|
8985
9098
|
]
|
|
8986
9099
|
}
|
|
@@ -9424,7 +9537,7 @@ function ITWysiwyg({
|
|
|
9424
9537
|
"aria-pressed": isActive,
|
|
9425
9538
|
onMouseDown: (e) => e.preventDefault(),
|
|
9426
9539
|
onClick: () => runAction(action),
|
|
9427
|
-
className:
|
|
9540
|
+
className: clsx50(
|
|
9428
9541
|
"flex h-8 w-8 items-center justify-center rounded-md text-[13px] transition-colors",
|
|
9429
9542
|
isActive ? "bg-primary-100 text-primary-700 dark:bg-primary-900/40 dark:text-primary-300" : "text-secondary-500 hover:bg-secondary-200/70 hover:text-secondary-800 dark:text-secondary-400 dark:hover:bg-slate-700 dark:hover:text-secondary-200",
|
|
9430
9543
|
isLocked && "cursor-not-allowed opacity-40"
|
|
@@ -9438,7 +9551,7 @@ function ITWysiwyg({
|
|
|
9438
9551
|
/* @__PURE__ */ jsxs51(
|
|
9439
9552
|
"div",
|
|
9440
9553
|
{
|
|
9441
|
-
className:
|
|
9554
|
+
className: clsx50(
|
|
9442
9555
|
"w-full border border-solid rounded-lg overflow-hidden transition-all duration-200",
|
|
9443
9556
|
error ? "ring-2 ring-danger-100 border-danger-500" : "border-secondary-300 focus-within:ring-2 focus-within:border-primary-500 focus-within:ring-primary-100",
|
|
9444
9557
|
isLocked && "opacity-50 cursor-not-allowed bg-secondary-100 dark:bg-slate-800"
|
|
@@ -9447,7 +9560,7 @@ function ITWysiwyg({
|
|
|
9447
9560
|
/* @__PURE__ */ jsx66(
|
|
9448
9561
|
"div",
|
|
9449
9562
|
{
|
|
9450
|
-
className:
|
|
9563
|
+
className: clsx50(
|
|
9451
9564
|
"flex flex-wrap items-center gap-0.5 px-1.5 py-1 border-b border-secondary-200 bg-secondary-50 dark:bg-slate-800",
|
|
9452
9565
|
isLocked && "bg-secondary-100 dark:bg-slate-900"
|
|
9453
9566
|
),
|
|
@@ -9474,7 +9587,7 @@ function ITWysiwyg({
|
|
|
9474
9587
|
focusedRef.current = false;
|
|
9475
9588
|
emitChange();
|
|
9476
9589
|
},
|
|
9477
|
-
className:
|
|
9590
|
+
className: clsx50(
|
|
9478
9591
|
"outline-none bg-white dark:bg-slate-900 text-secondary-800 dark:text-secondary-200",
|
|
9479
9592
|
"empty:before:content-[attr(data-placeholder)] empty:before:text-secondary-400 empty:before:pointer-events-none empty:before:select-none",
|
|
9480
9593
|
"[&_ul]:list-disc [&_ol]:list-decimal [&_ul]:pl-5 [&_ol]:pl-5 [&_li]:ml-4",
|
|
@@ -9498,7 +9611,7 @@ function ITWysiwyg({
|
|
|
9498
9611
|
// src/components/organisms/dropfile/dropfile.tsx
|
|
9499
9612
|
import { useState as useState34, useEffect as useEffect17 } from "react";
|
|
9500
9613
|
import { useDropzone } from "react-dropzone";
|
|
9501
|
-
import
|
|
9614
|
+
import clsx51 from "clsx";
|
|
9502
9615
|
|
|
9503
9616
|
// src/components/organisms/dropfile/dropfile.props.ts
|
|
9504
9617
|
var FileTypeEnum = /* @__PURE__ */ ((FileTypeEnum2) => {
|
|
@@ -9801,7 +9914,7 @@ var ITDropfile = ({
|
|
|
9801
9914
|
/* @__PURE__ */ jsx67(ITText, { as: "p", className: "text-[10px] text-secondary-500", children: selectedFile ? (selectedFile.size / 1024 / 1024).toFixed(2) + " MB" : "" })
|
|
9802
9915
|
] })
|
|
9803
9916
|
] }) }),
|
|
9804
|
-
/* @__PURE__ */ jsx67("div", { className:
|
|
9917
|
+
/* @__PURE__ */ jsx67("div", { className: clsx51("relative bg-secondary-100 flex items-center justify-center", !contentClassName ? "max-h-[200px] min-h-[100px] overflow-auto" : contentClassName), children: selectedFile && fileType?.startsWith("image/") || !selectedFile && imagePreview ? /* @__PURE__ */ jsx67(
|
|
9805
9918
|
"img",
|
|
9806
9919
|
{
|
|
9807
9920
|
src: imagePreview,
|
|
@@ -9865,7 +9978,7 @@ var ITDropfile = ({
|
|
|
9865
9978
|
] }) });
|
|
9866
9979
|
if (view === "button") {
|
|
9867
9980
|
const hasFile = Boolean(selectedFile || imagePreview);
|
|
9868
|
-
return /* @__PURE__ */ jsxs52("div", { className:
|
|
9981
|
+
return /* @__PURE__ */ jsxs52("div", { className: clsx51("inline-block", containerClassName), children: [
|
|
9869
9982
|
/* @__PURE__ */ jsx67(
|
|
9870
9983
|
ITButton,
|
|
9871
9984
|
{
|
|
@@ -9887,7 +10000,7 @@ var ITDropfile = ({
|
|
|
9887
10000
|
] }) })
|
|
9888
10001
|
] });
|
|
9889
10002
|
}
|
|
9890
|
-
return /* @__PURE__ */ jsxs52("div", { className:
|
|
10003
|
+
return /* @__PURE__ */ jsxs52("div", { className: clsx51("w-full transition-all duration-300", containerClassName), children: [
|
|
9891
10004
|
headerRow,
|
|
9892
10005
|
dropZoneOrPreview
|
|
9893
10006
|
] });
|
|
@@ -9896,7 +10009,7 @@ var dropfile_default = ITDropfile;
|
|
|
9896
10009
|
|
|
9897
10010
|
// src/components/templates/layout/layout.tsx
|
|
9898
10011
|
import { useState as useState36 } from "react";
|
|
9899
|
-
import
|
|
10012
|
+
import clsx52 from "clsx";
|
|
9900
10013
|
|
|
9901
10014
|
// src/components/organisms/topbar/topbar.tsx
|
|
9902
10015
|
import { FaUserCircle as FaUserCircle2, FaBars } from "react-icons/fa";
|
|
@@ -9911,21 +10024,24 @@ function ITTopBar({
|
|
|
9911
10024
|
showMobileMenuButton,
|
|
9912
10025
|
onToggleMobileMenu,
|
|
9913
10026
|
navItems,
|
|
9914
|
-
onNavItemClick
|
|
10027
|
+
onNavItemClick,
|
|
10028
|
+
hideBrandOnDesktop = false
|
|
9915
10029
|
}) {
|
|
10030
|
+
const flat = useITFlatAppearance();
|
|
10031
|
+
const initials = (userMenu?.userName ?? "").trim().split(/\s+/).slice(0, 2).map((word) => word.charAt(0).toUpperCase()).join("");
|
|
9916
10032
|
const [isUserMenuOpen, setIsUserMenuOpen] = useState35(false);
|
|
9917
10033
|
const userMenuRef = useRef22(null);
|
|
9918
10034
|
useClickOutside_default(userMenuRef, () => setIsUserMenuOpen(false));
|
|
9919
10035
|
return /* @__PURE__ */ jsx68(
|
|
9920
10036
|
"header",
|
|
9921
10037
|
{
|
|
9922
|
-
className:
|
|
10038
|
+
className: `sticky top-0 z-40 transition-all duration-300 ${flat ? "" : "backdrop-blur-md"}`,
|
|
9923
10039
|
style: {
|
|
9924
10040
|
backgroundColor: "var(--it-topbar-bg, rgba(255, 255, 255, 0.9))",
|
|
9925
10041
|
borderBottom: "1px solid var(--it-topbar-border, rgba(15, 23, 42, 0.06))",
|
|
9926
|
-
boxShadow: "var(--shadow-xs)"
|
|
10042
|
+
boxShadow: flat ? "none" : "var(--shadow-xs)"
|
|
9927
10043
|
},
|
|
9928
|
-
children: /* @__PURE__ */ jsxs53("div", { className:
|
|
10044
|
+
children: /* @__PURE__ */ jsxs53("div", { className: `flex items-center justify-between px-6 lg:px-8 ${flat ? "h-[64px]" : "h-[72px]"}`, children: [
|
|
9929
10045
|
/* @__PURE__ */ jsxs53("div", { className: "flex items-center gap-5", children: [
|
|
9930
10046
|
showMobileMenuButton && /* @__PURE__ */ jsx68(
|
|
9931
10047
|
"button",
|
|
@@ -9940,7 +10056,7 @@ function ITTopBar({
|
|
|
9940
10056
|
children: /* @__PURE__ */ jsx68(FaBars, { className: "w-[1.125rem] h-[1.125rem]" })
|
|
9941
10057
|
}
|
|
9942
10058
|
),
|
|
9943
|
-
/* @__PURE__ */ jsxs53("div", { className:
|
|
10059
|
+
/* @__PURE__ */ jsxs53("div", { className: `items-center gap-3 ${hideBrandOnDesktop ? "flex lg:hidden" : "flex"}`, children: [
|
|
9944
10060
|
logo && /* @__PURE__ */ jsx68("div", { className: "flex-shrink-0 drop-shadow-sm", children: logo }),
|
|
9945
10061
|
logoText && /* @__PURE__ */ jsx68(
|
|
9946
10062
|
ITText,
|
|
@@ -9974,7 +10090,7 @@ function ITTopBar({
|
|
|
9974
10090
|
item.id
|
|
9975
10091
|
)) })
|
|
9976
10092
|
] }),
|
|
9977
|
-
centerContent && /* @__PURE__ */ jsx68("div", { className:
|
|
10093
|
+
centerContent && /* @__PURE__ */ jsx68("div", { className: `hidden lg:flex flex-1 min-w-0 items-center ${hideBrandOnDesktop ? "justify-start pr-4" : "justify-center px-4"}`, children: /* @__PURE__ */ jsx68("div", { className: "w-full max-w-[420px]", children: centerContent }) }),
|
|
9978
10094
|
(children || userMenu) && /* @__PURE__ */ jsxs53("div", { className: "flex items-center gap-2", children: [
|
|
9979
10095
|
children,
|
|
9980
10096
|
userMenu && /* @__PURE__ */ jsxs53("div", { className: "relative", children: [
|
|
@@ -9982,7 +10098,7 @@ function ITTopBar({
|
|
|
9982
10098
|
"button",
|
|
9983
10099
|
{
|
|
9984
10100
|
type: "button",
|
|
9985
|
-
className:
|
|
10101
|
+
className: `flex items-center gap-3 rounded-full py-1.5 transition-all duration-200 ease-[cubic-bezier(0.2,0,0,1)] border border-transparent hover:border-secondary-200 ${flat ? "flex-row-reverse pl-4 pr-2" : "pl-2 pr-4"}`,
|
|
9986
10102
|
style: {
|
|
9987
10103
|
backgroundColor: isUserMenuOpen ? "var(--it-topbar-user-hover, #f1f5f9)" : "transparent"
|
|
9988
10104
|
},
|
|
@@ -10002,10 +10118,21 @@ function ITTopBar({
|
|
|
10002
10118
|
src: userMenu.userImage,
|
|
10003
10119
|
alt: "Current user"
|
|
10004
10120
|
}
|
|
10121
|
+
) : flat && initials ? /* @__PURE__ */ jsx68(
|
|
10122
|
+
"div",
|
|
10123
|
+
{
|
|
10124
|
+
"aria-hidden": "true",
|
|
10125
|
+
className: "w-9 h-9 rounded-full flex items-center justify-center text-[0.8rem] font-semibold",
|
|
10126
|
+
style: {
|
|
10127
|
+
backgroundColor: "color-mix(in srgb, var(--color-primary, #3b82f6) 14%, transparent)",
|
|
10128
|
+
color: "var(--color-primary, #2563eb)"
|
|
10129
|
+
},
|
|
10130
|
+
children: initials
|
|
10131
|
+
}
|
|
10005
10132
|
) : /* @__PURE__ */ jsx68("div", { className: "w-9 h-9 rounded-full bg-slate-100 flex items-center justify-center ring-2 ring-white shadow-sm", children: /* @__PURE__ */ jsx68(FaUserCircle2, { className: "w-6 h-6", style: { color: "var(--it-topbar-icon, #94a3b8)" } }) }),
|
|
10006
|
-
/* @__PURE__ */ jsx68("div", { className: "absolute bottom-0 right-0 w-2.5 h-2.5 bg-green-500 border-2 border-white rounded-full" })
|
|
10133
|
+
!flat && /* @__PURE__ */ jsx68("div", { className: "absolute bottom-0 right-0 w-2.5 h-2.5 bg-green-500 border-2 border-white rounded-full" })
|
|
10007
10134
|
] }),
|
|
10008
|
-
/* @__PURE__ */ jsxs53("div", { className:
|
|
10135
|
+
/* @__PURE__ */ jsxs53("div", { className: `hidden sm:flex flex-col py-0.5 ${flat ? "text-right" : "text-left"}`, children: [
|
|
10009
10136
|
/* @__PURE__ */ jsx68(
|
|
10010
10137
|
ITText,
|
|
10011
10138
|
{
|
|
@@ -10086,75 +10213,102 @@ function ITLayout({
|
|
|
10086
10213
|
sidebar,
|
|
10087
10214
|
children,
|
|
10088
10215
|
className = "",
|
|
10089
|
-
contentClassName = ""
|
|
10216
|
+
contentClassName = "",
|
|
10217
|
+
sidebarFullHeight = false
|
|
10090
10218
|
}) {
|
|
10091
10219
|
const [internalCollapsed, setInternalCollapsed] = useState36(true);
|
|
10092
10220
|
const [mobileSidebarOpen, setMobileSidebarOpen] = useState36(false);
|
|
10221
|
+
const flat = useITFlatAppearance();
|
|
10093
10222
|
const isControlled = sidebar.isCollapsed !== void 0;
|
|
10094
10223
|
const desktopCollapsed = isControlled ? sidebar.isCollapsed : internalCollapsed;
|
|
10095
10224
|
const handleToggleCollapse = isControlled ? sidebar.onToggleCollapse ?? (() => {
|
|
10096
10225
|
}) : () => setInternalCollapsed((v) => !v);
|
|
10097
10226
|
const layoutTokens = theme.layout;
|
|
10098
|
-
|
|
10099
|
-
|
|
10100
|
-
|
|
10227
|
+
const reservedWidth = desktopCollapsed ? "w-[88px]" : flat ? "w-[248px]" : "w-[280px]";
|
|
10228
|
+
const brand = sidebarFullHeight ? sidebar.brand ?? { logo: topBar.logo, text: topBar.logoText } : sidebar.brand;
|
|
10229
|
+
const topBarNode = /* @__PURE__ */ jsx69(
|
|
10230
|
+
ITTopBar,
|
|
10231
|
+
{
|
|
10232
|
+
...topBar,
|
|
10233
|
+
hideBrandOnDesktop: sidebarFullHeight || topBar.hideBrandOnDesktop,
|
|
10234
|
+
showMobileMenuButton: true,
|
|
10235
|
+
onToggleMobileMenu: () => setMobileSidebarOpen((v) => !v)
|
|
10236
|
+
}
|
|
10237
|
+
);
|
|
10238
|
+
const desktopSidebar = (
|
|
10239
|
+
// Full-height: the sidebar sits beside the top bar, so it needs to win the
|
|
10240
|
+
// stacking order when the collapsed rail expands over the content on hover.
|
|
10241
|
+
/* @__PURE__ */ jsxs54("div", { className: `hidden lg:block relative h-full ${sidebarFullHeight ? "z-50" : "z-40"}`, children: [
|
|
10242
|
+
/* @__PURE__ */ jsx69("div", { className: `${reservedWidth} h-full flex-shrink-0` }),
|
|
10243
|
+
/* @__PURE__ */ jsx69("div", { className: "absolute top-0 left-0 h-full", children: /* @__PURE__ */ jsx69(
|
|
10244
|
+
ITSidebar,
|
|
10245
|
+
{
|
|
10246
|
+
...sidebar,
|
|
10247
|
+
brand,
|
|
10248
|
+
isCollapsed: desktopCollapsed,
|
|
10249
|
+
onToggleCollapse: handleToggleCollapse,
|
|
10250
|
+
visibleOnMobile: false,
|
|
10251
|
+
className: `h-full ${flat ? "" : "drop-shadow-2xl"} transition-all duration-400 ease-[cubic-bezier(0.2,0,0,1)] flex-shrink-0`
|
|
10252
|
+
}
|
|
10253
|
+
) })
|
|
10254
|
+
] })
|
|
10255
|
+
);
|
|
10256
|
+
const mobileSidebar = mobileSidebarOpen && /* @__PURE__ */ jsx69(
|
|
10257
|
+
"div",
|
|
10258
|
+
{
|
|
10259
|
+
className: "lg:hidden fixed inset-0 z-[40] transition-opacity duration-300 backdrop-blur-sm bg-black/40",
|
|
10260
|
+
onClick: () => setMobileSidebarOpen(false),
|
|
10261
|
+
children: /* @__PURE__ */ jsx69(
|
|
10262
|
+
"div",
|
|
10263
|
+
{
|
|
10264
|
+
className: "h-full w-fit flex transform transition-transform duration-300 ease-[cubic-bezier(0.2,0,0,1)]",
|
|
10265
|
+
onClick: (e) => e.stopPropagation(),
|
|
10266
|
+
children: /* @__PURE__ */ jsx69(
|
|
10267
|
+
ITSidebar,
|
|
10268
|
+
{
|
|
10269
|
+
...sidebar,
|
|
10270
|
+
brand,
|
|
10271
|
+
isCollapsed: false,
|
|
10272
|
+
visibleOnMobile: true,
|
|
10273
|
+
className: "h-full shadow-2xl relative z-[60]",
|
|
10274
|
+
onToggleCollapse: () => setMobileSidebarOpen(false),
|
|
10275
|
+
onItemClick: () => setMobileSidebarOpen(false),
|
|
10276
|
+
onSubItemClick: () => setMobileSidebarOpen(false)
|
|
10277
|
+
}
|
|
10278
|
+
)
|
|
10279
|
+
}
|
|
10280
|
+
)
|
|
10281
|
+
}
|
|
10282
|
+
);
|
|
10283
|
+
const main = /* @__PURE__ */ jsx69("main", { className: "flex-1 overflow-y-auto w-full custom-scrollbar relative z-0", children: /* @__PURE__ */ jsx69("div", { className: clsx52("mx-auto w-full max-w-7xl px-4 sm:px-6 lg:px-8 py-6 h-full", contentClassName), children }) });
|
|
10284
|
+
if (sidebarFullHeight) {
|
|
10285
|
+
return /* @__PURE__ */ jsxs54(
|
|
10286
|
+
"div",
|
|
10101
10287
|
{
|
|
10102
|
-
|
|
10103
|
-
|
|
10104
|
-
|
|
10288
|
+
className: `flex h-screen overflow-hidden w-full relative ${className}`,
|
|
10289
|
+
style: { backgroundColor: layoutTokens.backgroundColor },
|
|
10290
|
+
children: [
|
|
10291
|
+
desktopSidebar,
|
|
10292
|
+
/* @__PURE__ */ jsxs54("div", { className: "flex flex-col flex-1 min-w-0 overflow-hidden", children: [
|
|
10293
|
+
topBarNode,
|
|
10294
|
+
main
|
|
10295
|
+
] }),
|
|
10296
|
+
mobileSidebar
|
|
10297
|
+
]
|
|
10105
10298
|
}
|
|
10106
|
-
)
|
|
10299
|
+
);
|
|
10300
|
+
}
|
|
10301
|
+
return /* @__PURE__ */ jsxs54("div", { className: `flex flex-col h-screen overflow-hidden w-full ${className}`, children: [
|
|
10302
|
+
topBarNode,
|
|
10107
10303
|
/* @__PURE__ */ jsxs54(
|
|
10108
10304
|
"div",
|
|
10109
10305
|
{
|
|
10110
10306
|
className: "flex flex-1 overflow-hidden relative",
|
|
10111
10307
|
style: { backgroundColor: layoutTokens.backgroundColor },
|
|
10112
10308
|
children: [
|
|
10113
|
-
|
|
10114
|
-
|
|
10115
|
-
|
|
10116
|
-
{
|
|
10117
|
-
className: `${desktopCollapsed ? "w-[88px]" : "w-[280px]"} h-full flex-shrink-0`
|
|
10118
|
-
}
|
|
10119
|
-
),
|
|
10120
|
-
/* @__PURE__ */ jsx69("div", { className: "absolute top-0 left-0 h-full", children: /* @__PURE__ */ jsx69(
|
|
10121
|
-
ITSidebar,
|
|
10122
|
-
{
|
|
10123
|
-
...sidebar,
|
|
10124
|
-
isCollapsed: desktopCollapsed,
|
|
10125
|
-
onToggleCollapse: handleToggleCollapse,
|
|
10126
|
-
visibleOnMobile: false,
|
|
10127
|
-
className: "h-full drop-shadow-2xl transition-all duration-400 ease-[cubic-bezier(0.2,0,0,1)] flex-shrink-0"
|
|
10128
|
-
}
|
|
10129
|
-
) })
|
|
10130
|
-
] }),
|
|
10131
|
-
mobileSidebarOpen && /* @__PURE__ */ jsx69(
|
|
10132
|
-
"div",
|
|
10133
|
-
{
|
|
10134
|
-
className: "lg:hidden fixed inset-0 z-[40] transition-opacity duration-300 backdrop-blur-sm bg-black/40",
|
|
10135
|
-
onClick: () => setMobileSidebarOpen(false),
|
|
10136
|
-
children: /* @__PURE__ */ jsx69(
|
|
10137
|
-
"div",
|
|
10138
|
-
{
|
|
10139
|
-
className: "h-full w-fit flex transform transition-transform duration-300 ease-[cubic-bezier(0.2,0,0,1)]",
|
|
10140
|
-
onClick: (e) => e.stopPropagation(),
|
|
10141
|
-
children: /* @__PURE__ */ jsx69(
|
|
10142
|
-
ITSidebar,
|
|
10143
|
-
{
|
|
10144
|
-
...sidebar,
|
|
10145
|
-
isCollapsed: false,
|
|
10146
|
-
visibleOnMobile: true,
|
|
10147
|
-
className: "h-full shadow-2xl relative z-[60]",
|
|
10148
|
-
onToggleCollapse: () => setMobileSidebarOpen(false),
|
|
10149
|
-
onItemClick: () => setMobileSidebarOpen(false),
|
|
10150
|
-
onSubItemClick: () => setMobileSidebarOpen(false)
|
|
10151
|
-
}
|
|
10152
|
-
)
|
|
10153
|
-
}
|
|
10154
|
-
)
|
|
10155
|
-
}
|
|
10156
|
-
),
|
|
10157
|
-
/* @__PURE__ */ jsx69("main", { className: "flex-1 overflow-y-auto w-full custom-scrollbar relative z-0", children: /* @__PURE__ */ jsx69("div", { className: clsx51("mx-auto w-full max-w-7xl px-4 sm:px-6 lg:px-8 py-6 h-full", contentClassName), children }) })
|
|
10309
|
+
desktopSidebar,
|
|
10310
|
+
mobileSidebar,
|
|
10311
|
+
main
|
|
10158
10312
|
]
|
|
10159
10313
|
}
|
|
10160
10314
|
)
|
|
@@ -10247,7 +10401,7 @@ function ITLoader({
|
|
|
10247
10401
|
}
|
|
10248
10402
|
|
|
10249
10403
|
// src/components/molecules/stepper/stepper.tsx
|
|
10250
|
-
import
|
|
10404
|
+
import clsx53 from "clsx";
|
|
10251
10405
|
import { useEffect as useEffect18, useRef as useRef23, useState as useState37 } from "react";
|
|
10252
10406
|
import { FaChevronLeft as FaChevronLeft4, FaChevronRight as FaChevronRight5, FaCheck as FaCheck5 } from "react-icons/fa";
|
|
10253
10407
|
import { jsx as jsx71, jsxs as jsxs55 } from "react/jsx-runtime";
|
|
@@ -10324,7 +10478,7 @@ function ITStepper({
|
|
|
10324
10478
|
}
|
|
10325
10479
|
return /* @__PURE__ */ jsx71(ITText, { as: "span", className: "text-sm font-semibold", children: index + 1 });
|
|
10326
10480
|
};
|
|
10327
|
-
return /* @__PURE__ */ jsxs55("div", { className:
|
|
10481
|
+
return /* @__PURE__ */ jsxs55("div", { className: clsx53("w-full max-w-5xl mx-auto px-4", containerClassName), children: [
|
|
10328
10482
|
/* @__PURE__ */ jsxs55("div", { className: "relative mb-8", children: [
|
|
10329
10483
|
/* @__PURE__ */ jsx71(
|
|
10330
10484
|
"div",
|
|
@@ -10359,7 +10513,7 @@ function ITStepper({
|
|
|
10359
10513
|
/* @__PURE__ */ jsx71(
|
|
10360
10514
|
"div",
|
|
10361
10515
|
{
|
|
10362
|
-
className:
|
|
10516
|
+
className: clsx53(
|
|
10363
10517
|
"flex items-center justify-center w-11 h-11 rounded-full border-2 transition-all duration-300 transform",
|
|
10364
10518
|
hasIcon && "p-2",
|
|
10365
10519
|
isCompleted && "bg-slate-400 border-slate-400 text-white scale-100 shadow",
|
|
@@ -10374,7 +10528,7 @@ function ITStepper({
|
|
|
10374
10528
|
ITText,
|
|
10375
10529
|
{
|
|
10376
10530
|
as: "span",
|
|
10377
|
-
className:
|
|
10531
|
+
className: clsx53(
|
|
10378
10532
|
"mt-2 text-xs sm:text-sm font-medium transition-colors text-center",
|
|
10379
10533
|
isCompleted ? "text-slate-400" : !isActive && "text-secondary-400"
|
|
10380
10534
|
),
|
|
@@ -10395,7 +10549,7 @@ function ITStepper({
|
|
|
10395
10549
|
tabIndex: -1,
|
|
10396
10550
|
role: "region",
|
|
10397
10551
|
"aria-labelledby": `step-${currentStep}`,
|
|
10398
|
-
className:
|
|
10552
|
+
className: clsx53(
|
|
10399
10553
|
stepClassName,
|
|
10400
10554
|
"bg-white border border-secondary-100 rounded-2xl shadow-lg min-h-[280px] transition-transform duration-400 no-scrollbar p-6",
|
|
10401
10555
|
scrollableContent && "overflow-y-auto hide-scrollbar"
|
|
@@ -10714,7 +10868,8 @@ function ITThemeProvider({
|
|
|
10714
10868
|
showFab = true,
|
|
10715
10869
|
density = 1,
|
|
10716
10870
|
radius,
|
|
10717
|
-
shadow
|
|
10871
|
+
shadow,
|
|
10872
|
+
appearance = "soft"
|
|
10718
10873
|
}) {
|
|
10719
10874
|
const [palette2, setPaletteState] = useState38(() => {
|
|
10720
10875
|
const basePalette = {
|
|
@@ -10827,6 +10982,11 @@ function ITThemeProvider({
|
|
|
10827
10982
|
root.style.fontSize = "";
|
|
10828
10983
|
};
|
|
10829
10984
|
}, [density]);
|
|
10985
|
+
useLayoutEffect4(() => {
|
|
10986
|
+
const root = document.documentElement;
|
|
10987
|
+
root.setAttribute("data-it-appearance", appearance);
|
|
10988
|
+
return () => root.removeAttribute("data-it-appearance");
|
|
10989
|
+
}, [appearance]);
|
|
10830
10990
|
useLayoutEffect4(() => {
|
|
10831
10991
|
const root = document.documentElement;
|
|
10832
10992
|
const radiusTokens = ["xs", "sm", "md", "lg", "xl", "2xl", "3xl"];
|
|
@@ -12108,7 +12268,8 @@ function ITThemeProvider({
|
|
|
12108
12268
|
applyPreset,
|
|
12109
12269
|
resolvedTheme,
|
|
12110
12270
|
darkModeMode,
|
|
12111
|
-
setDarkModeMode
|
|
12271
|
+
setDarkModeMode,
|
|
12272
|
+
appearance
|
|
12112
12273
|
},
|
|
12113
12274
|
children: [
|
|
12114
12275
|
children,
|
|
@@ -12368,6 +12529,7 @@ export {
|
|
|
12368
12529
|
useDebouncedSearch,
|
|
12369
12530
|
useEditableRow,
|
|
12370
12531
|
useFloatingPanel,
|
|
12532
|
+
useITFlatAppearance,
|
|
12371
12533
|
useITTheme,
|
|
12372
12534
|
useITThemeSafe,
|
|
12373
12535
|
useTableState
|