@axzydev/axzy_ui_system 1.4.3 → 1.4.5
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.cjs +548 -378
- package/dist/index.cjs.map +1 -1
- package/dist/index.css +1 -1
- package/dist/index.d.cts +57 -3
- package/dist/index.d.ts +57 -3
- package/dist/index.js +511 -342
- package/dist/index.js.map +1 -1
- package/dist/layered.css +3 -0
- package/package.json +1 -1
- package/src/components/molecules/line-bar-chart/line-bar-chart.props.ts +28 -0
- package/src/components/molecules/line-bar-chart/line-bar-chart.tsx +169 -0
- package/src/components/organisms/sidebar/sidebar.doc.mdx +1 -0
- package/src/components/organisms/sidebar/sidebar.props.ts +12 -1
- package/src/components/organisms/sidebar/sidebar.tsx +53 -22
- package/src/components/organisms/topbar/topbar.props.ts +6 -0
- package/src/components/organisms/topbar/topbar.tsx +4 -1
- package/src/components/templates/layout/layout.tsx +13 -3
- package/src/index.ts +4 -2
package/dist/index.js
CHANGED
|
@@ -7606,7 +7606,9 @@ function ITSidebar({
|
|
|
7606
7606
|
subitemConnector = "dot",
|
|
7607
7607
|
header,
|
|
7608
7608
|
notification,
|
|
7609
|
-
brand
|
|
7609
|
+
brand,
|
|
7610
|
+
onToggleCollapse,
|
|
7611
|
+
expandOnHover = true
|
|
7610
7612
|
}) {
|
|
7611
7613
|
const flat = useITFlatAppearance();
|
|
7612
7614
|
const [expandedItems, setExpandedItems] = useState27(/* @__PURE__ */ new Set());
|
|
@@ -7662,6 +7664,9 @@ function ITSidebar({
|
|
|
7662
7664
|
});
|
|
7663
7665
|
}
|
|
7664
7666
|
}, [navigationItems]);
|
|
7667
|
+
const isSidebarCollapsed = visibleOnMobile ? false : isCollapsed && !(expandOnHover && isHovering);
|
|
7668
|
+
const sidebarWidth = isSidebarCollapsed ? flat ? "w-[72px]" : "w-[88px]" : flat ? "w-[248px]" : "w-[280px]";
|
|
7669
|
+
const fixedRail = isSidebarCollapsed && !expandOnHover;
|
|
7665
7670
|
const toggleExpanded = (itemId) => {
|
|
7666
7671
|
const newExpanded = new Set(expandedItems);
|
|
7667
7672
|
if (newExpanded.has(itemId)) newExpanded.delete(itemId);
|
|
@@ -7670,14 +7675,17 @@ function ITSidebar({
|
|
|
7670
7675
|
};
|
|
7671
7676
|
const handleItemClick = (item) => {
|
|
7672
7677
|
if (item.subitems && item.subitems.length > 0) {
|
|
7673
|
-
|
|
7678
|
+
if (isSidebarCollapsed && !expandOnHover) {
|
|
7679
|
+
setExpandedItems((prev) => new Set(prev).add(item.id));
|
|
7680
|
+
onToggleCollapse?.();
|
|
7681
|
+
} else {
|
|
7682
|
+
toggleExpanded(item.id);
|
|
7683
|
+
}
|
|
7674
7684
|
} else {
|
|
7675
7685
|
if (item.action) item.action();
|
|
7676
7686
|
if (onItemClick) onItemClick(item);
|
|
7677
7687
|
}
|
|
7678
7688
|
};
|
|
7679
|
-
const isSidebarCollapsed = visibleOnMobile ? false : !isHovering && isCollapsed;
|
|
7680
|
-
const sidebarWidth = isSidebarCollapsed ? "w-[88px]" : flat ? "w-[248px]" : "w-[280px]";
|
|
7681
7689
|
const renderSubItem = (subitem) => /* @__PURE__ */ jsx56("li", { className: "relative", children: /* @__PURE__ */ jsxs43(
|
|
7682
7690
|
"button",
|
|
7683
7691
|
{
|
|
@@ -7690,7 +7698,7 @@ function ITSidebar({
|
|
|
7690
7698
|
style: {
|
|
7691
7699
|
color: subitem.isActive ? "var(--it-sidebar-active-color, var(--color-secondary-900))" : "var(--it-sidebar-label-color, var(--color-secondary-600))",
|
|
7692
7700
|
backgroundColor: subitem.isActive ? "var(--it-sidebar-active-bg, var(--color-secondary-50))" : "transparent",
|
|
7693
|
-
fontSize: "0.78rem",
|
|
7701
|
+
fontSize: flat ? "0.84rem" : "0.78rem",
|
|
7694
7702
|
fontWeight: subitem.isActive ? 600 : 500,
|
|
7695
7703
|
letterSpacing: "0.01em",
|
|
7696
7704
|
marginLeft: subitemConnector === "|" ? "-1px" : "0"
|
|
@@ -7708,7 +7716,7 @@ function ITSidebar({
|
|
|
7708
7716
|
}
|
|
7709
7717
|
},
|
|
7710
7718
|
children: [
|
|
7711
|
-
subitem.isActive && subitemConnector === "|" && /* @__PURE__ */ jsx56(
|
|
7719
|
+
subitem.isActive && subitemConnector === "|" && !flat && /* @__PURE__ */ jsx56(
|
|
7712
7720
|
"div",
|
|
7713
7721
|
{
|
|
7714
7722
|
className: "absolute left-0 top-1/3 bottom-1/3 w-[2.5px] rounded-r-full transition-all",
|
|
@@ -7872,10 +7880,11 @@ function ITSidebar({
|
|
|
7872
7880
|
),
|
|
7873
7881
|
header && !isSidebarCollapsed && /* @__PURE__ */ jsx56("div", { className: "px-4 pt-4 pb-1 flex-shrink-0", children: header }),
|
|
7874
7882
|
notification && /* @__PURE__ */ jsx56("div", { className: "px-4 pt-3 flex-shrink-0", children: renderNotification() }),
|
|
7875
|
-
/* @__PURE__ */ jsx56("nav", { "aria-label": "Componentes de la librer\xEDa", className:
|
|
7883
|
+
/* @__PURE__ */ jsx56("nav", { "aria-label": "Componentes de la librer\xEDa", className: `flex-1 py-4 custom-scrollbar ${fixedRail ? "overflow-visible" : "overflow-y-auto overflow-x-hidden"} ${flat && isSidebarCollapsed ? "px-3" : "px-4"}`, children: /* @__PURE__ */ jsx56("ul", { className: "space-y-1", children: navigationItems.map((item) => {
|
|
7876
7884
|
const hasSubmenu = !!item.subitems && item.subitems.length > 0;
|
|
7877
7885
|
const submenuId = `it-sidebar-submenu-${item.id}`;
|
|
7878
7886
|
const { className: badgeClassName, ...badgeRest } = item.badgeProps ?? {};
|
|
7887
|
+
const active = !!item.isActive && !(flat && hasSubmenu && !isSidebarCollapsed);
|
|
7879
7888
|
return /* @__PURE__ */ jsxs43("li", { className: "relative group/navitem", children: [
|
|
7880
7889
|
/* @__PURE__ */ jsxs43(
|
|
7881
7890
|
"div",
|
|
@@ -7888,18 +7897,18 @@ function ITSidebar({
|
|
|
7888
7897
|
className: `flex items-center cursor-pointer
|
|
7889
7898
|
transition-all duration-300 ease-[cubic-bezier(0.2,0,0,1)]
|
|
7890
7899
|
rounded-xl relative overflow-visible
|
|
7891
|
-
${isSidebarCollapsed ? "justify-center p-2 mb-1" : "justify-between px-3 py-2 mb-0.5"}
|
|
7900
|
+
${isSidebarCollapsed ? flat ? "justify-center h-10 mb-1" : "justify-center p-2 mb-1" : "justify-between px-3 py-2 mb-0.5"}
|
|
7892
7901
|
`,
|
|
7893
7902
|
style: {
|
|
7894
|
-
backgroundColor:
|
|
7895
|
-
boxShadow:
|
|
7896
|
-
border:
|
|
7903
|
+
backgroundColor: active ? "var(--it-sidebar-active-bg, var(--color-secondary-50))" : "transparent",
|
|
7904
|
+
boxShadow: active && !flat ? "var(--shadow-xs)" : "none",
|
|
7905
|
+
border: active && !flat ? "1px solid var(--it-sidebar-border, var(--color-secondary-200))" : "1px solid transparent"
|
|
7897
7906
|
},
|
|
7898
7907
|
onMouseEnter: (e) => {
|
|
7899
|
-
if (!
|
|
7908
|
+
if (!active) e.currentTarget.style.backgroundColor = "var(--it-sidebar-hover-bg, var(--color-secondary-100))";
|
|
7900
7909
|
},
|
|
7901
7910
|
onMouseLeave: (e) => {
|
|
7902
|
-
if (!
|
|
7911
|
+
if (!active) e.currentTarget.style.backgroundColor = "transparent";
|
|
7903
7912
|
},
|
|
7904
7913
|
onClick: () => handleItemClick(item),
|
|
7905
7914
|
onKeyDown: (e) => {
|
|
@@ -7909,7 +7918,7 @@ function ITSidebar({
|
|
|
7909
7918
|
}
|
|
7910
7919
|
},
|
|
7911
7920
|
children: [
|
|
7912
|
-
|
|
7921
|
+
active && !isSidebarCollapsed && !flat && /* @__PURE__ */ jsx56(
|
|
7913
7922
|
"div",
|
|
7914
7923
|
{
|
|
7915
7924
|
className: "absolute left-0 top-1/4 bottom-1/4 w-[3px] rounded-r-full transition-all",
|
|
@@ -7922,10 +7931,10 @@ function ITSidebar({
|
|
|
7922
7931
|
{
|
|
7923
7932
|
className: `transition-all duration-300 flex-shrink-0 flex items-center justify-center`,
|
|
7924
7933
|
style: {
|
|
7925
|
-
color:
|
|
7926
|
-
opacity:
|
|
7927
|
-
fontSize: flat ? "1rem" :
|
|
7928
|
-
filter:
|
|
7934
|
+
color: active ? "var(--it-sidebar-active-icon, var(--color-primary-500))" : "var(--it-sidebar-icon-color, #9ca3af)",
|
|
7935
|
+
opacity: active ? 1 : 0.8,
|
|
7936
|
+
fontSize: flat ? "1rem" : active ? "1.12rem" : "1.05rem",
|
|
7937
|
+
filter: active && !flat ? "drop-shadow(0 0 8px rgba(255,255,255,0.2))" : "none"
|
|
7929
7938
|
},
|
|
7930
7939
|
children: item.icon
|
|
7931
7940
|
}
|
|
@@ -7936,9 +7945,9 @@ function ITSidebar({
|
|
|
7936
7945
|
as: "span",
|
|
7937
7946
|
className: `transition-all duration-300 truncate tracking-wide`,
|
|
7938
7947
|
style: {
|
|
7939
|
-
color:
|
|
7948
|
+
color: active ? "var(--it-sidebar-active-color, #ffffff)" : "var(--it-sidebar-label-color, var(--color-secondary-300))",
|
|
7940
7949
|
fontSize: flat ? "0.875rem" : "0.8rem",
|
|
7941
|
-
fontWeight:
|
|
7950
|
+
fontWeight: active ? "600" : "500"
|
|
7942
7951
|
},
|
|
7943
7952
|
children: item.label
|
|
7944
7953
|
}
|
|
@@ -7948,7 +7957,7 @@ function ITSidebar({
|
|
|
7948
7957
|
"div",
|
|
7949
7958
|
{
|
|
7950
7959
|
className: `flex-shrink-0 transition-transform duration-300 ease-[cubic-bezier(0.2,0,0,1)] ${expandedItems.has(item.id) ? "rotate-180" : ""}`,
|
|
7951
|
-
style: { color:
|
|
7960
|
+
style: { color: active ? "var(--it-sidebar-active-color, var(--color-secondary-900))" : "var(--it-sidebar-icon-color, var(--color-secondary-500))", opacity: 0.7 },
|
|
7952
7961
|
children: /* @__PURE__ */ jsx56(FaChevronDown4, { className: "w-3 h-3" })
|
|
7953
7962
|
}
|
|
7954
7963
|
),
|
|
@@ -7969,7 +7978,21 @@ function ITSidebar({
|
|
|
7969
7978
|
]
|
|
7970
7979
|
}
|
|
7971
7980
|
),
|
|
7972
|
-
isSidebarCollapsed && /* @__PURE__ */
|
|
7981
|
+
isSidebarCollapsed && flat && /* @__PURE__ */ jsx56(
|
|
7982
|
+
"div",
|
|
7983
|
+
{
|
|
7984
|
+
role: "tooltip",
|
|
7985
|
+
className: "absolute left-full top-1/2 -translate-y-1/2 ml-3 px-2.5 py-1.5 rounded-lg whitespace-nowrap opacity-0 invisible group-hover/navitem:opacity-100 group-hover/navitem:visible transition-opacity duration-150 pointer-events-none z-[70]",
|
|
7986
|
+
style: {
|
|
7987
|
+
backgroundColor: "var(--it-sidebar-tooltip-bg, var(--color-secondary-900))",
|
|
7988
|
+
color: "var(--it-sidebar-tooltip-color, #ffffff)",
|
|
7989
|
+
fontSize: "0.78rem",
|
|
7990
|
+
fontWeight: 500
|
|
7991
|
+
},
|
|
7992
|
+
children: item.label
|
|
7993
|
+
}
|
|
7994
|
+
),
|
|
7995
|
+
isSidebarCollapsed && !flat && /* @__PURE__ */ jsxs43(
|
|
7973
7996
|
"div",
|
|
7974
7997
|
{
|
|
7975
7998
|
className: "absolute left-full top-0 ml-4 rounded-2xl opacity-0 invisible group-hover/navitem:opacity-100 group-hover/navitem:visible transition-all duration-300 pointer-events-none z-[70] min-w-[220px] overflow-hidden -translate-x-2 group-hover/navitem:translate-x-0 shadow-[0_10px_40px_-10px_rgba(0,0,0,0.15)]",
|
|
@@ -8011,7 +8034,7 @@ function ITSidebar({
|
|
|
8011
8034
|
!isSidebarCollapsed && item.subitems && item.subitems.length > 0 && /* @__PURE__ */ jsx56("div", { id: submenuId, role: "group", "aria-label": item.label, className: `overflow-hidden transition-all duration-400 ease-[cubic-bezier(0.2,0,0,1)] ${expandedItems.has(item.id) ? "max-h-[1000px] opacity-100 mt-1" : "max-h-0 opacity-0"}`, children: /* @__PURE__ */ jsx56(
|
|
8012
8035
|
"ul",
|
|
8013
8036
|
{
|
|
8014
|
-
className: "ml-4 flex flex-col gap-0 py-0.5
|
|
8037
|
+
className: `${flat && subitemConnector === "|" ? "ml-[21px] pl-2" : "ml-4"} flex flex-col gap-0 py-0.5`,
|
|
8015
8038
|
style: {
|
|
8016
8039
|
borderLeft: subitemConnector === "|" ? "1px solid var(--it-sidebar-border, var(--color-secondary-200))" : "none"
|
|
8017
8040
|
},
|
|
@@ -8206,9 +8229,145 @@ function ITStatCard({
|
|
|
8206
8229
|
);
|
|
8207
8230
|
}
|
|
8208
8231
|
|
|
8232
|
+
// src/components/molecules/line-bar-chart/line-bar-chart.tsx
|
|
8233
|
+
import { useId, useMemo as useMemo11, useState as useState29 } from "react";
|
|
8234
|
+
import { jsx as jsx60, jsxs as jsxs46 } from "react/jsx-runtime";
|
|
8235
|
+
var compact = (value) => new Intl.NumberFormat("es-MX", { notation: "compact", maximumFractionDigits: 1 }).format(value);
|
|
8236
|
+
var plain = (value) => new Intl.NumberFormat("es-MX").format(value);
|
|
8237
|
+
function ITLineBarChart({
|
|
8238
|
+
data,
|
|
8239
|
+
ariaLabel,
|
|
8240
|
+
lineLabel = "Serie A",
|
|
8241
|
+
barLabel = "Serie B",
|
|
8242
|
+
lineColor = "#10b981",
|
|
8243
|
+
barColor = "#3b82f6",
|
|
8244
|
+
height = 240,
|
|
8245
|
+
formatValue = plain,
|
|
8246
|
+
formatAxis = compact,
|
|
8247
|
+
className = ""
|
|
8248
|
+
}) {
|
|
8249
|
+
const gradientId = useId().replace(/[:]/g, "");
|
|
8250
|
+
const [hover, setHover] = useState29(null);
|
|
8251
|
+
const width = 720;
|
|
8252
|
+
const padding = { top: 16, right: 16, bottom: 28, left: 52 };
|
|
8253
|
+
const plotWidth = width - padding.left - padding.right;
|
|
8254
|
+
const plotHeight = height - padding.top - padding.bottom;
|
|
8255
|
+
const max = useMemo11(
|
|
8256
|
+
() => Math.max(...data.flatMap((d) => [d.line, d.bar]), 1),
|
|
8257
|
+
[data]
|
|
8258
|
+
);
|
|
8259
|
+
const gridValues = [0, 0.25, 0.5, 0.75, 1].map((f) => max * f);
|
|
8260
|
+
const step = data.length > 0 ? plotWidth / data.length : plotWidth;
|
|
8261
|
+
const barWidth = Math.max(Math.min(step * 0.42, 26), 4);
|
|
8262
|
+
const x = (index) => padding.left + step * index + step / 2;
|
|
8263
|
+
const y = (value) => padding.top + plotHeight - value / max * plotHeight;
|
|
8264
|
+
const linePoints = data.map((d, i) => `${x(i)},${y(d.line)}`).join(" ");
|
|
8265
|
+
const areaPath = data.length > 0 ? `M ${x(0)} ${y(data[0].line)} ` + data.slice(1).map((d, i) => `L ${x(i + 1)} ${y(d.line)}`).join(" ") + ` L ${x(data.length - 1)} ${padding.top + plotHeight} L ${x(0)} ${padding.top + plotHeight} Z` : "";
|
|
8266
|
+
const active = hover !== null ? data[hover] : null;
|
|
8267
|
+
return /* @__PURE__ */ jsxs46("div", { className: `flex flex-col gap-3 ${className}`.trim(), children: [
|
|
8268
|
+
/* @__PURE__ */ jsxs46(
|
|
8269
|
+
"svg",
|
|
8270
|
+
{
|
|
8271
|
+
role: "img",
|
|
8272
|
+
"aria-label": ariaLabel,
|
|
8273
|
+
viewBox: `0 0 ${width} ${height}`,
|
|
8274
|
+
style: { height, width: "100%" },
|
|
8275
|
+
onMouseLeave: () => setHover(null),
|
|
8276
|
+
children: [
|
|
8277
|
+
/* @__PURE__ */ jsx60("defs", { children: /* @__PURE__ */ jsxs46("linearGradient", { id: `area-${gradientId}`, x1: "0", y1: "0", x2: "0", y2: "1", children: [
|
|
8278
|
+
/* @__PURE__ */ jsx60("stop", { offset: "0%", stopColor: lineColor, stopOpacity: "0.22" }),
|
|
8279
|
+
/* @__PURE__ */ jsx60("stop", { offset: "100%", stopColor: lineColor, stopOpacity: "0.02" })
|
|
8280
|
+
] }) }),
|
|
8281
|
+
gridValues.map((value, i) => /* @__PURE__ */ jsxs46("g", { children: [
|
|
8282
|
+
/* @__PURE__ */ jsx60(
|
|
8283
|
+
"line",
|
|
8284
|
+
{
|
|
8285
|
+
x1: padding.left,
|
|
8286
|
+
x2: width - padding.right,
|
|
8287
|
+
y1: y(value),
|
|
8288
|
+
y2: y(value),
|
|
8289
|
+
stroke: "#e2e8f0",
|
|
8290
|
+
strokeWidth: 1,
|
|
8291
|
+
strokeDasharray: i === 0 ? void 0 : "3 4"
|
|
8292
|
+
}
|
|
8293
|
+
),
|
|
8294
|
+
/* @__PURE__ */ jsx60("text", { x: padding.left - 8, y: y(value) + 3, textAnchor: "end", fontSize: 10, fill: "#94a3b8", children: formatAxis(Math.round(value)) })
|
|
8295
|
+
] }, i)),
|
|
8296
|
+
data.map((d, i) => /* @__PURE__ */ jsx60(
|
|
8297
|
+
"rect",
|
|
8298
|
+
{
|
|
8299
|
+
x: x(i) - barWidth / 2,
|
|
8300
|
+
y: y(d.bar),
|
|
8301
|
+
width: barWidth,
|
|
8302
|
+
height: Math.max(padding.top + plotHeight - y(d.bar), 1),
|
|
8303
|
+
rx: 3,
|
|
8304
|
+
fill: barColor,
|
|
8305
|
+
opacity: hover === null || hover === i ? 0.85 : 0.35
|
|
8306
|
+
},
|
|
8307
|
+
`bar-${d.label}`
|
|
8308
|
+
)),
|
|
8309
|
+
areaPath && /* @__PURE__ */ jsx60("path", { d: areaPath, fill: `url(#area-${gradientId})` }),
|
|
8310
|
+
data.length > 0 && /* @__PURE__ */ jsx60(
|
|
8311
|
+
"polyline",
|
|
8312
|
+
{
|
|
8313
|
+
points: linePoints,
|
|
8314
|
+
fill: "none",
|
|
8315
|
+
stroke: lineColor,
|
|
8316
|
+
strokeWidth: 2.5,
|
|
8317
|
+
strokeLinecap: "round",
|
|
8318
|
+
strokeLinejoin: "round"
|
|
8319
|
+
}
|
|
8320
|
+
),
|
|
8321
|
+
data.map((d, i) => /* @__PURE__ */ jsx60(
|
|
8322
|
+
"circle",
|
|
8323
|
+
{
|
|
8324
|
+
cx: x(i),
|
|
8325
|
+
cy: y(d.line),
|
|
8326
|
+
r: hover === i ? 4.5 : 3,
|
|
8327
|
+
fill: "#ffffff",
|
|
8328
|
+
stroke: lineColor,
|
|
8329
|
+
strokeWidth: 2
|
|
8330
|
+
},
|
|
8331
|
+
`dot-${d.label}`
|
|
8332
|
+
)),
|
|
8333
|
+
data.map((d, i) => /* @__PURE__ */ jsxs46("g", { onMouseEnter: () => setHover(i), children: [
|
|
8334
|
+
/* @__PURE__ */ jsx60("rect", { x: padding.left + step * i, y: padding.top, width: step, height: plotHeight, fill: "transparent" }),
|
|
8335
|
+
/* @__PURE__ */ jsx60("text", { x: x(i), y: height - 8, textAnchor: "middle", fontSize: 10, fill: "#64748b", children: d.label })
|
|
8336
|
+
] }, `hit-${d.label}`)),
|
|
8337
|
+
active && hover !== null && /* @__PURE__ */ jsxs46("g", { transform: `translate(${Math.min(Math.max(x(hover) - 62, 4), width - 132)}, ${padding.top + 4})`, children: [
|
|
8338
|
+
/* @__PURE__ */ jsx60("rect", { width: 128, height: 46, rx: 6, fill: "#0f172a", opacity: 0.9 }),
|
|
8339
|
+
/* @__PURE__ */ jsx60("text", { x: 10, y: 18, fontSize: 10, fill: "#e2e8f0", children: active.label }),
|
|
8340
|
+
/* @__PURE__ */ jsxs46("text", { x: 10, y: 32, fontSize: 10, fill: lineColor, children: [
|
|
8341
|
+
lineLabel,
|
|
8342
|
+
": ",
|
|
8343
|
+
formatValue(active.line)
|
|
8344
|
+
] }),
|
|
8345
|
+
/* @__PURE__ */ jsxs46("text", { x: 10, y: 44, fontSize: 10, fill: "#93c5fd", children: [
|
|
8346
|
+
barLabel,
|
|
8347
|
+
": ",
|
|
8348
|
+
formatValue(active.bar)
|
|
8349
|
+
] })
|
|
8350
|
+
] })
|
|
8351
|
+
]
|
|
8352
|
+
}
|
|
8353
|
+
),
|
|
8354
|
+
/* @__PURE__ */ jsxs46("ul", { className: "flex flex-wrap items-center gap-4 text-[11px]", style: { color: "#475569" }, children: [
|
|
8355
|
+
/* @__PURE__ */ jsxs46("li", { children: [
|
|
8356
|
+
/* @__PURE__ */ jsx60("span", { className: "h-2.5 w-2.5 rounded-sm", style: { background: lineColor }, "aria-hidden": true }),
|
|
8357
|
+
lineLabel
|
|
8358
|
+
] }),
|
|
8359
|
+
/* @__PURE__ */ jsxs46("li", { children: [
|
|
8360
|
+
/* @__PURE__ */ jsx60("span", { className: "h-2.5 w-2.5 rounded-sm", style: { background: barColor }, "aria-hidden": true }),
|
|
8361
|
+
barLabel
|
|
8362
|
+
] })
|
|
8363
|
+
] })
|
|
8364
|
+
] });
|
|
8365
|
+
}
|
|
8366
|
+
var line_bar_chart_default = ITLineBarChart;
|
|
8367
|
+
|
|
8209
8368
|
// src/components/molecules/table/table.tsx
|
|
8210
8369
|
import clsx44 from "clsx";
|
|
8211
|
-
import React11, { useState as
|
|
8370
|
+
import React11, { useState as useState30 } from "react";
|
|
8212
8371
|
import {
|
|
8213
8372
|
FaCheck as FaCheck4,
|
|
8214
8373
|
FaSpinner as FaSpinner3,
|
|
@@ -8218,7 +8377,7 @@ import {
|
|
|
8218
8377
|
} from "react-icons/fa";
|
|
8219
8378
|
import { MdOutlineSwapVert as MdOutlineSwapVert2 } from "react-icons/md";
|
|
8220
8379
|
import { isSameDay as isSameDay2, startOfDay as startOfDay2, endOfDay } from "date-fns";
|
|
8221
|
-
import { Fragment as Fragment9, jsx as
|
|
8380
|
+
import { Fragment as Fragment9, jsx as jsx61, jsxs as jsxs47 } from "react/jsx-runtime";
|
|
8222
8381
|
function ITTable({
|
|
8223
8382
|
columns,
|
|
8224
8383
|
data = [],
|
|
@@ -8242,7 +8401,7 @@ function ITTable({
|
|
|
8242
8401
|
overscan = 5,
|
|
8243
8402
|
stickyHeader = false
|
|
8244
8403
|
}) {
|
|
8245
|
-
const [viewMode, setViewMode] =
|
|
8404
|
+
const [viewMode, setViewMode] = useState30(defaultView);
|
|
8246
8405
|
const { ref: rootRef, width: containerWidth } = useElementSize();
|
|
8247
8406
|
const isFixed = layout === "fixed";
|
|
8248
8407
|
const forcedCards = autoCardBreakpoint > 0 && containerWidth > 0 && containerWidth < autoCardBreakpoint;
|
|
@@ -8374,14 +8533,14 @@ function ITTable({
|
|
|
8374
8533
|
if (currentValue === true) return "Filtrar solo verdaderos";
|
|
8375
8534
|
return "Filtrar solo falsos";
|
|
8376
8535
|
};
|
|
8377
|
-
return /* @__PURE__ */
|
|
8536
|
+
return /* @__PURE__ */ jsx61(
|
|
8378
8537
|
"button",
|
|
8379
8538
|
{
|
|
8380
8539
|
className: "flex items-center justify-center cursor-pointer focus:outline-none focus:ring-2 focus:ring-slate-400 focus:ring-offset-2 rounded-full p-1 transition-all duration-200",
|
|
8381
8540
|
onClick: () => handleFilterChange(col.key, nextValue),
|
|
8382
8541
|
"aria-label": `${getToggleLabel()} para ${col.label}`,
|
|
8383
8542
|
title: `${getToggleLabel()} para ${col.label}`,
|
|
8384
|
-
children: /* @__PURE__ */
|
|
8543
|
+
children: /* @__PURE__ */ jsx61("div", { className: "relative w-10 h-5 bg-secondary-300 rounded-full", children: /* @__PURE__ */ jsx61(
|
|
8385
8544
|
"div",
|
|
8386
8545
|
{
|
|
8387
8546
|
className: clsx44(
|
|
@@ -8399,7 +8558,7 @@ function ITTable({
|
|
|
8399
8558
|
}
|
|
8400
8559
|
if (col.filter === "catalog" && col.catalogOptions) {
|
|
8401
8560
|
if (col.catalogOptions.loading) {
|
|
8402
|
-
return /* @__PURE__ */
|
|
8561
|
+
return /* @__PURE__ */ jsx61(
|
|
8403
8562
|
FaSpinner3,
|
|
8404
8563
|
{
|
|
8405
8564
|
className: "animate-spin",
|
|
@@ -8409,9 +8568,9 @@ function ITTable({
|
|
|
8409
8568
|
);
|
|
8410
8569
|
}
|
|
8411
8570
|
if (col.catalogOptions.error) {
|
|
8412
|
-
return /* @__PURE__ */
|
|
8571
|
+
return /* @__PURE__ */ jsx61(ITText, { as: "span", className: "text-danger-500 text-xs", children: "Error cargando" });
|
|
8413
8572
|
}
|
|
8414
|
-
return /* @__PURE__ */
|
|
8573
|
+
return /* @__PURE__ */ jsx61(
|
|
8415
8574
|
ITSelect,
|
|
8416
8575
|
{
|
|
8417
8576
|
name: `filter-${col.key}`,
|
|
@@ -8435,7 +8594,7 @@ function ITTable({
|
|
|
8435
8594
|
}
|
|
8436
8595
|
if (col.filter === "search" && col.catalogOptions) {
|
|
8437
8596
|
if (col.catalogOptions.loading) {
|
|
8438
|
-
return /* @__PURE__ */
|
|
8597
|
+
return /* @__PURE__ */ jsx61(
|
|
8439
8598
|
FaSpinner3,
|
|
8440
8599
|
{
|
|
8441
8600
|
className: "animate-spin",
|
|
@@ -8445,10 +8604,10 @@ function ITTable({
|
|
|
8445
8604
|
);
|
|
8446
8605
|
}
|
|
8447
8606
|
if (col.catalogOptions.error) {
|
|
8448
|
-
return /* @__PURE__ */
|
|
8607
|
+
return /* @__PURE__ */ jsx61(ITText, { as: "span", className: "text-danger-500 text-xs", children: "Error cargando" });
|
|
8449
8608
|
}
|
|
8450
8609
|
const searchValue = filters[col.key];
|
|
8451
|
-
return /* @__PURE__ */
|
|
8610
|
+
return /* @__PURE__ */ jsx61(
|
|
8452
8611
|
ITSearchSelect,
|
|
8453
8612
|
{
|
|
8454
8613
|
name: `filter-${col.key}`,
|
|
@@ -8471,7 +8630,7 @@ function ITTable({
|
|
|
8471
8630
|
}
|
|
8472
8631
|
if (col.filter === "date") {
|
|
8473
8632
|
const dateValue = filters[col.key];
|
|
8474
|
-
return /* @__PURE__ */
|
|
8633
|
+
return /* @__PURE__ */ jsx61(
|
|
8475
8634
|
ITDatePicker,
|
|
8476
8635
|
{
|
|
8477
8636
|
name: `filter-${col.key}`,
|
|
@@ -8487,7 +8646,7 @@ function ITTable({
|
|
|
8487
8646
|
}
|
|
8488
8647
|
if (col.filter === "date-range") {
|
|
8489
8648
|
const rangeValue = filters[col.key];
|
|
8490
|
-
return /* @__PURE__ */
|
|
8649
|
+
return /* @__PURE__ */ jsx61(
|
|
8491
8650
|
ITDatePicker,
|
|
8492
8651
|
{
|
|
8493
8652
|
name: `filter-${col.key}`,
|
|
@@ -8502,7 +8661,7 @@ function ITTable({
|
|
|
8502
8661
|
}
|
|
8503
8662
|
);
|
|
8504
8663
|
}
|
|
8505
|
-
return /* @__PURE__ */
|
|
8664
|
+
return /* @__PURE__ */ jsx61(
|
|
8506
8665
|
ITInput,
|
|
8507
8666
|
{
|
|
8508
8667
|
name: `filter-${col.key}`,
|
|
@@ -8524,14 +8683,14 @@ function ITTable({
|
|
|
8524
8683
|
case "number":
|
|
8525
8684
|
return typeof value === "number" && col.currencyMX ? formatCurrencyMX(value) : value;
|
|
8526
8685
|
case "boolean":
|
|
8527
|
-
return value ? /* @__PURE__ */
|
|
8686
|
+
return value ? /* @__PURE__ */ jsx61(
|
|
8528
8687
|
FaCheck4,
|
|
8529
8688
|
{
|
|
8530
8689
|
className: "text-success-500",
|
|
8531
8690
|
"aria-label": "Verdadero",
|
|
8532
8691
|
title: "Verdadero"
|
|
8533
8692
|
}
|
|
8534
|
-
) : /* @__PURE__ */
|
|
8693
|
+
) : /* @__PURE__ */ jsx61(
|
|
8535
8694
|
FaTimes9,
|
|
8536
8695
|
{
|
|
8537
8696
|
className: "text-danger-500",
|
|
@@ -8556,12 +8715,12 @@ function ITTable({
|
|
|
8556
8715
|
const renderDefaultCard = (row) => {
|
|
8557
8716
|
const dataCols = columns.filter((c) => c.type !== "actions");
|
|
8558
8717
|
const actionCol = columns.find((c) => c.type === "actions");
|
|
8559
|
-
return /* @__PURE__ */
|
|
8560
|
-
dataCols.map((col) => /* @__PURE__ */
|
|
8561
|
-
/* @__PURE__ */
|
|
8562
|
-
/* @__PURE__ */
|
|
8718
|
+
return /* @__PURE__ */ jsxs47("div", { className: "bg-white dark:bg-slate-800 rounded-lg border border-slate-200 dark:border-slate-700 p-3 space-y-2 shadow-sm", children: [
|
|
8719
|
+
dataCols.map((col) => /* @__PURE__ */ jsxs47("div", { className: "flex items-center justify-between gap-2", children: [
|
|
8720
|
+
/* @__PURE__ */ jsx61("span", { className: "text-[10px] font-bold uppercase tracking-wider text-slate-400 whitespace-nowrap flex-shrink-0 min-w-[70px]", children: col.label }),
|
|
8721
|
+
/* @__PURE__ */ jsx61("span", { className: "text-sm font-medium text-slate-800 dark:text-white text-right truncate", children: renderCellContent(col, row) })
|
|
8563
8722
|
] }, col.key)),
|
|
8564
|
-
actionCol?.actions && /* @__PURE__ */
|
|
8723
|
+
actionCol?.actions && /* @__PURE__ */ jsx61("div", { className: "flex items-center justify-end gap-2 pt-2 border-t border-slate-100 dark:border-slate-700", children: actionCol.actions(row) })
|
|
8565
8724
|
] });
|
|
8566
8725
|
};
|
|
8567
8726
|
const handleRowClick = (row) => (event) => {
|
|
@@ -8575,61 +8734,61 @@ function ITTable({
|
|
|
8575
8734
|
event.preventDefault();
|
|
8576
8735
|
onRowClick(row, event);
|
|
8577
8736
|
};
|
|
8578
|
-
return /* @__PURE__ */
|
|
8579
|
-
title && /* @__PURE__ */
|
|
8580
|
-
/* @__PURE__ */
|
|
8581
|
-
/* @__PURE__ */
|
|
8582
|
-
/* @__PURE__ */
|
|
8737
|
+
return /* @__PURE__ */ jsx61("div", { ref: rootRef, className: clsx44("space-y-4 w-full", containerClassName), children: /* @__PURE__ */ jsxs47("div", { className: tableContainer, style: { backgroundColor: "var(--color-table-rowBg, #ffffff)" }, children: [
|
|
8738
|
+
title && /* @__PURE__ */ jsxs47("div", { className: "px-6 py-5 flex items-center justify-between", style: { backgroundColor: "var(--color-table-rowBg, #ffffff)" }, children: [
|
|
8739
|
+
/* @__PURE__ */ jsx61(ITText, { as: "h2", className: "text-xl font-bold text-secondary-900 leading-tight", children: title }),
|
|
8740
|
+
/* @__PURE__ */ jsxs47("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: [
|
|
8741
|
+
/* @__PURE__ */ jsxs47(
|
|
8583
8742
|
"button",
|
|
8584
8743
|
{
|
|
8585
8744
|
onClick: () => setViewMode("table"),
|
|
8586
8745
|
disabled: forcedCards,
|
|
8587
8746
|
className: `flex items-center gap-1.5 px-3 py-1.5 rounded-md text-xs font-semibold transition-all ${effectiveView === "table" ? "bg-white dark:bg-slate-900 text-slate-900 dark:text-white shadow-sm border border-slate-200/50 dark:border-slate-700" : "text-slate-500 dark:text-slate-400 hover:text-slate-700 dark:hover:text-slate-200"}`,
|
|
8588
8747
|
children: [
|
|
8589
|
-
/* @__PURE__ */
|
|
8748
|
+
/* @__PURE__ */ jsx61(FaTable2, { size: 11 }),
|
|
8590
8749
|
"Table"
|
|
8591
8750
|
]
|
|
8592
8751
|
}
|
|
8593
8752
|
),
|
|
8594
|
-
/* @__PURE__ */
|
|
8753
|
+
/* @__PURE__ */ jsxs47(
|
|
8595
8754
|
"button",
|
|
8596
8755
|
{
|
|
8597
8756
|
onClick: () => setViewMode("cards"),
|
|
8598
8757
|
className: `flex items-center gap-1.5 px-3 py-1.5 rounded-md text-xs font-semibold transition-all ${effectiveView === "cards" ? "bg-white dark:bg-slate-900 text-slate-900 dark:text-white shadow-sm border border-slate-200/50 dark:border-slate-700" : "text-slate-500 dark:text-slate-400 hover:text-slate-700 dark:hover:text-slate-200"}`,
|
|
8599
8758
|
children: [
|
|
8600
|
-
/* @__PURE__ */
|
|
8759
|
+
/* @__PURE__ */ jsx61(FaThLarge2, { size: 11 }),
|
|
8601
8760
|
"Cards"
|
|
8602
8761
|
]
|
|
8603
8762
|
}
|
|
8604
8763
|
)
|
|
8605
8764
|
] })
|
|
8606
8765
|
] }),
|
|
8607
|
-
!title && /* @__PURE__ */
|
|
8608
|
-
/* @__PURE__ */
|
|
8766
|
+
!title && /* @__PURE__ */ jsx61("div", { className: "flex justify-end px-4 pt-3", children: /* @__PURE__ */ jsxs47("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: [
|
|
8767
|
+
/* @__PURE__ */ jsxs47(
|
|
8609
8768
|
"button",
|
|
8610
8769
|
{
|
|
8611
8770
|
onClick: () => setViewMode("table"),
|
|
8612
8771
|
disabled: forcedCards,
|
|
8613
8772
|
className: `flex items-center gap-1.5 px-3 py-1.5 rounded-md text-xs font-semibold transition-all ${effectiveView === "table" ? "bg-white dark:bg-slate-900 text-slate-900 dark:text-white shadow-sm border border-slate-200/50 dark:border-slate-700" : "text-slate-500 dark:text-slate-400 hover:text-slate-700 dark:hover:text-slate-200"}`,
|
|
8614
8773
|
children: [
|
|
8615
|
-
/* @__PURE__ */
|
|
8774
|
+
/* @__PURE__ */ jsx61(FaTable2, { size: 11 }),
|
|
8616
8775
|
"Table"
|
|
8617
8776
|
]
|
|
8618
8777
|
}
|
|
8619
8778
|
),
|
|
8620
|
-
/* @__PURE__ */
|
|
8779
|
+
/* @__PURE__ */ jsxs47(
|
|
8621
8780
|
"button",
|
|
8622
8781
|
{
|
|
8623
8782
|
onClick: () => setViewMode("cards"),
|
|
8624
8783
|
className: `flex items-center gap-1.5 px-3 py-1.5 rounded-md text-xs font-semibold transition-all ${effectiveView === "cards" ? "bg-white dark:bg-slate-900 text-slate-900 dark:text-white shadow-sm border border-slate-200/50 dark:border-slate-700" : "text-slate-500 dark:text-slate-400 hover:text-slate-700 dark:hover:text-slate-200"}`,
|
|
8625
8784
|
children: [
|
|
8626
|
-
/* @__PURE__ */
|
|
8785
|
+
/* @__PURE__ */ jsx61(FaThLarge2, { size: 11 }),
|
|
8627
8786
|
"Cards"
|
|
8628
8787
|
]
|
|
8629
8788
|
}
|
|
8630
8789
|
)
|
|
8631
8790
|
] }) }),
|
|
8632
|
-
effectiveView === "cards" ? /* @__PURE__ */
|
|
8791
|
+
effectiveView === "cards" ? /* @__PURE__ */ jsx61("div", { className: "p-4 space-y-3 max-h-[400px] overflow-y-auto", children: currentData.length > 0 ? currentData.map((row, i) => /* @__PURE__ */ jsx61(
|
|
8633
8792
|
"div",
|
|
8634
8793
|
{
|
|
8635
8794
|
className: clsx44(tableCardHover, onRowClick && tableCardClickable),
|
|
@@ -8640,16 +8799,16 @@ function ITTable({
|
|
|
8640
8799
|
children: renderCard ? renderCard(row) : renderDefaultCard(row)
|
|
8641
8800
|
},
|
|
8642
8801
|
i
|
|
8643
|
-
)) : /* @__PURE__ */
|
|
8644
|
-
/* @__PURE__ */
|
|
8645
|
-
/* @__PURE__ */
|
|
8646
|
-
] }) }) : /* @__PURE__ */
|
|
8802
|
+
)) : /* @__PURE__ */ jsxs47("div", { className: clsx44(tableEmptyContent, "py-12"), children: [
|
|
8803
|
+
/* @__PURE__ */ jsx61(ITText, { as: "span", className: "text-lg", children: "No se encontraron resultados" }),
|
|
8804
|
+
/* @__PURE__ */ jsx61(ITText, { as: "span", className: "text-sm mt-1", children: "Intenta ajustar los filtros" })
|
|
8805
|
+
] }) }) : /* @__PURE__ */ jsx61(
|
|
8647
8806
|
"div",
|
|
8648
8807
|
{
|
|
8649
8808
|
ref: isTableVirtual ? scrollRef : void 0,
|
|
8650
8809
|
className: isTableVirtual ? "overflow-x-auto overflow-y-auto" : "overflow-x-auto",
|
|
8651
8810
|
style: isTableVirtual ? { maxHeight: virtualizedMaxHeight } : void 0,
|
|
8652
|
-
children: /* @__PURE__ */
|
|
8811
|
+
children: /* @__PURE__ */ jsxs47(
|
|
8653
8812
|
"table",
|
|
8654
8813
|
{
|
|
8655
8814
|
className: clsx44(
|
|
@@ -8662,14 +8821,14 @@ function ITTable({
|
|
|
8662
8821
|
style: isFixed ? { tableLayout: "fixed" } : void 0,
|
|
8663
8822
|
"aria-rowcount": isTableVirtual ? currentData.length + 1 : void 0,
|
|
8664
8823
|
children: [
|
|
8665
|
-
hasColumnWidths && /* @__PURE__ */
|
|
8824
|
+
hasColumnWidths && /* @__PURE__ */ jsx61("colgroup", { children: columns.map((col) => /* @__PURE__ */ jsx61(
|
|
8666
8825
|
"col",
|
|
8667
8826
|
{
|
|
8668
8827
|
style: col.width != null ? { width: typeof col.width === "number" ? `${col.width}px` : col.width } : void 0
|
|
8669
8828
|
},
|
|
8670
8829
|
col.key
|
|
8671
8830
|
)) }),
|
|
8672
|
-
/* @__PURE__ */
|
|
8831
|
+
/* @__PURE__ */ jsx61("thead", { children: /* @__PURE__ */ jsx61(
|
|
8673
8832
|
"tr",
|
|
8674
8833
|
{
|
|
8675
8834
|
className: clsx44(tableHeaderRow, "dark:text-slate-200"),
|
|
@@ -8677,7 +8836,7 @@ function ITTable({
|
|
|
8677
8836
|
children: columns.map((col) => {
|
|
8678
8837
|
const pin = pinnedMeta[col.key];
|
|
8679
8838
|
const isPinned = pin != null;
|
|
8680
|
-
return /* @__PURE__ */
|
|
8839
|
+
return /* @__PURE__ */ jsx61(
|
|
8681
8840
|
"th",
|
|
8682
8841
|
{
|
|
8683
8842
|
scope: "col",
|
|
@@ -8694,20 +8853,20 @@ function ITTable({
|
|
|
8694
8853
|
...isStickyHeader || isPinned ? { backgroundColor: "var(--color-table-headerBg, #f8fafc)" } : {},
|
|
8695
8854
|
...isPinned ? pin.side === "left" ? { left: pin.offset } : { right: pin.offset } : {}
|
|
8696
8855
|
} : void 0,
|
|
8697
|
-
children: /* @__PURE__ */
|
|
8698
|
-
/* @__PURE__ */
|
|
8699
|
-
/* @__PURE__ */
|
|
8700
|
-
col.sortable && col.type !== "actions" && /* @__PURE__ */
|
|
8856
|
+
children: /* @__PURE__ */ jsxs47("div", { className: isFixed ? "flex flex-col gap-3" : "flex flex-col gap-3 min-w-[150px]", children: [
|
|
8857
|
+
/* @__PURE__ */ jsxs47("div", { className: "flex items-center justify-between gap-2", children: [
|
|
8858
|
+
/* @__PURE__ */ jsx61(ITText, { as: "span", className: "text-slate-900 dark:text-white font-bold", children: col.label }),
|
|
8859
|
+
col.sortable && col.type !== "actions" && /* @__PURE__ */ jsx61(
|
|
8701
8860
|
"button",
|
|
8702
8861
|
{
|
|
8703
8862
|
onClick: () => handleSort(col.key),
|
|
8704
8863
|
className: `p-1 rounded-md transition-colors ${sortConfig?.key === col.key ? "bg-secondary-200 text-secondary-900" : "hover:bg-secondary-200 text-secondary-400 hover:text-secondary-700"}`,
|
|
8705
8864
|
title: `Ordenar por ${col.label}`,
|
|
8706
|
-
children: /* @__PURE__ */
|
|
8865
|
+
children: /* @__PURE__ */ jsx61(MdOutlineSwapVert2, { className: "w-4 h-4", "aria-hidden": "true" })
|
|
8707
8866
|
}
|
|
8708
8867
|
)
|
|
8709
8868
|
] }),
|
|
8710
|
-
/* @__PURE__ */
|
|
8869
|
+
/* @__PURE__ */ jsx61("div", { className: "w-full", children: col.filter ? renderFilterInput(col) : null })
|
|
8711
8870
|
] })
|
|
8712
8871
|
},
|
|
8713
8872
|
col.key
|
|
@@ -8715,11 +8874,11 @@ function ITTable({
|
|
|
8715
8874
|
})
|
|
8716
8875
|
}
|
|
8717
8876
|
) }),
|
|
8718
|
-
/* @__PURE__ */
|
|
8719
|
-
isTableVirtual && topSpacerHeight > 0 && /* @__PURE__ */
|
|
8877
|
+
/* @__PURE__ */ jsx61("tbody", { className: clsx44(tableBody, "dark:divide-slate-700/30"), children: currentData.length > 0 ? /* @__PURE__ */ jsxs47(Fragment9, { children: [
|
|
8878
|
+
isTableVirtual && topSpacerHeight > 0 && /* @__PURE__ */ jsx61("tr", { "aria-hidden": "true", style: { height: topSpacerHeight }, children: /* @__PURE__ */ jsx61("td", { colSpan: columnCount, style: { padding: 0, border: 0 } }) }),
|
|
8720
8879
|
windowData.map((row, windowIndex) => {
|
|
8721
8880
|
const absoluteIndex = isTableVirtual ? startIndex + windowIndex : windowIndex;
|
|
8722
|
-
return /* @__PURE__ */
|
|
8881
|
+
return /* @__PURE__ */ jsx61(
|
|
8723
8882
|
"tr",
|
|
8724
8883
|
{
|
|
8725
8884
|
"aria-rowindex": isTableVirtual ? absoluteIndex + 2 : void 0,
|
|
@@ -8736,7 +8895,7 @@ function ITTable({
|
|
|
8736
8895
|
const truncateTitle = col.truncate && (typeof rawValue === "string" || typeof rawValue === "number") ? String(rawValue) : void 0;
|
|
8737
8896
|
const pin = pinnedMeta[col.key];
|
|
8738
8897
|
const isPinned = pin != null;
|
|
8739
|
-
return /* @__PURE__ */
|
|
8898
|
+
return /* @__PURE__ */ jsx61(
|
|
8740
8899
|
"td",
|
|
8741
8900
|
{
|
|
8742
8901
|
className: clsx44(
|
|
@@ -8751,7 +8910,7 @@ function ITTable({
|
|
|
8751
8910
|
...isPinned ? pin.side === "left" ? { left: pin.offset } : { right: pin.offset } : {}
|
|
8752
8911
|
} : void 0,
|
|
8753
8912
|
title: truncateTitle,
|
|
8754
|
-
children: col.type === "actions" ? /* @__PURE__ */
|
|
8913
|
+
children: col.type === "actions" ? /* @__PURE__ */ jsx61("div", { className: tableActionsCell, children: renderCellContent(col, row) }) : /* @__PURE__ */ jsx61("div", { className: clsx44(tableCellText, col.truncate && "truncate"), children: renderCellContent(col, row) })
|
|
8755
8914
|
},
|
|
8756
8915
|
`${absoluteIndex}-${col.key}`
|
|
8757
8916
|
);
|
|
@@ -8760,17 +8919,17 @@ function ITTable({
|
|
|
8760
8919
|
absoluteIndex
|
|
8761
8920
|
);
|
|
8762
8921
|
}),
|
|
8763
|
-
isTableVirtual && bottomSpacerHeight > 0 && /* @__PURE__ */
|
|
8764
|
-
] }) : /* @__PURE__ */
|
|
8765
|
-
/* @__PURE__ */
|
|
8766
|
-
/* @__PURE__ */
|
|
8922
|
+
isTableVirtual && bottomSpacerHeight > 0 && /* @__PURE__ */ jsx61("tr", { "aria-hidden": "true", style: { height: bottomSpacerHeight }, children: /* @__PURE__ */ jsx61("td", { colSpan: columnCount, style: { padding: 0, border: 0 } }) })
|
|
8923
|
+
] }) : /* @__PURE__ */ jsx61("tr", { children: /* @__PURE__ */ jsx61("td", { colSpan: columns.length, className: "px-6 py-12 text-center", children: /* @__PURE__ */ jsxs47("div", { className: tableEmptyContent, children: [
|
|
8924
|
+
/* @__PURE__ */ jsx61(ITText, { as: "span", className: "text-lg", children: "No se encontraron resultados" }),
|
|
8925
|
+
/* @__PURE__ */ jsx61(ITText, { as: "span", className: "text-sm mt-1", children: "Intenta ajustar los filtros" })
|
|
8767
8926
|
] }) }) }) })
|
|
8768
8927
|
]
|
|
8769
8928
|
}
|
|
8770
8929
|
)
|
|
8771
8930
|
}
|
|
8772
8931
|
),
|
|
8773
|
-
/* @__PURE__ */
|
|
8932
|
+
/* @__PURE__ */ jsx61("div", { className: "rounded-b-xl px-6 py-4", style: { backgroundColor: "var(--color-table-rowBg, #ffffff)" }, children: /* @__PURE__ */ jsx61(
|
|
8774
8933
|
ITPagination,
|
|
8775
8934
|
{
|
|
8776
8935
|
currentPage,
|
|
@@ -8788,7 +8947,7 @@ function ITTable({
|
|
|
8788
8947
|
|
|
8789
8948
|
// src/components/atoms/textarea/textarea.tsx
|
|
8790
8949
|
import clsx45 from "clsx";
|
|
8791
|
-
import { jsx as
|
|
8950
|
+
import { jsx as jsx62, jsxs as jsxs48 } from "react/jsx-runtime";
|
|
8792
8951
|
var resizeMap = {
|
|
8793
8952
|
none: "resize-none",
|
|
8794
8953
|
vertical: "resize-y",
|
|
@@ -8808,9 +8967,9 @@ function ITTextarea({
|
|
|
8808
8967
|
maxLength,
|
|
8809
8968
|
resize = "vertical"
|
|
8810
8969
|
}) {
|
|
8811
|
-
return /* @__PURE__ */
|
|
8812
|
-
label && /* @__PURE__ */
|
|
8813
|
-
/* @__PURE__ */
|
|
8970
|
+
return /* @__PURE__ */ jsxs48("div", { className: clsx45("flex flex-col gap-1.5", className), children: [
|
|
8971
|
+
label && /* @__PURE__ */ jsx62(ITText, { as: "label", className: inputLabel(!!error), htmlFor: name, children: label }),
|
|
8972
|
+
/* @__PURE__ */ jsx62(
|
|
8814
8973
|
"textarea",
|
|
8815
8974
|
{
|
|
8816
8975
|
id: name,
|
|
@@ -8830,14 +8989,14 @@ function ITTextarea({
|
|
|
8830
8989
|
)
|
|
8831
8990
|
}
|
|
8832
8991
|
),
|
|
8833
|
-
error && /* @__PURE__ */
|
|
8992
|
+
error && /* @__PURE__ */ jsx62(ITText, { as: "span", className: inputError, children: error })
|
|
8834
8993
|
] });
|
|
8835
8994
|
}
|
|
8836
8995
|
|
|
8837
8996
|
// src/components/molecules/tabs/tabs.tsx
|
|
8838
|
-
import { useState as
|
|
8997
|
+
import { useState as useState31 } from "react";
|
|
8839
8998
|
import { clsx as clsx46 } from "clsx";
|
|
8840
|
-
import { jsx as
|
|
8999
|
+
import { jsx as jsx63, jsxs as jsxs49 } from "react/jsx-runtime";
|
|
8841
9000
|
var ITTabs = ({
|
|
8842
9001
|
items,
|
|
8843
9002
|
defaultActiveId,
|
|
@@ -8846,21 +9005,21 @@ var ITTabs = ({
|
|
|
8846
9005
|
className = "",
|
|
8847
9006
|
containerClassName = ""
|
|
8848
9007
|
}) => {
|
|
8849
|
-
const [activeId, setActiveId] =
|
|
9008
|
+
const [activeId, setActiveId] = useState31(defaultActiveId || items[0]?.id);
|
|
8850
9009
|
const handleTabClick = (id, disabled) => {
|
|
8851
9010
|
if (disabled) return;
|
|
8852
9011
|
setActiveId(id);
|
|
8853
9012
|
if (onChange) onChange(id);
|
|
8854
9013
|
};
|
|
8855
9014
|
const activeContent = items.find((item) => item.id === activeId)?.content;
|
|
8856
|
-
return /* @__PURE__ */
|
|
8857
|
-
/* @__PURE__ */
|
|
9015
|
+
return /* @__PURE__ */ jsxs49("div", { className: clsx46("w-full", containerClassName), children: [
|
|
9016
|
+
/* @__PURE__ */ jsx63("div", { className: clsx46(
|
|
8858
9017
|
"flex border-secondary-200 mb-4",
|
|
8859
9018
|
variant === "line" ? "border-b" : "gap-2 p-1 bg-secondary-100 rounded-lg w-fit",
|
|
8860
9019
|
className
|
|
8861
9020
|
), children: items.map((item) => {
|
|
8862
9021
|
const isActive = item.id === activeId;
|
|
8863
|
-
return /* @__PURE__ */
|
|
9022
|
+
return /* @__PURE__ */ jsxs49(
|
|
8864
9023
|
"button",
|
|
8865
9024
|
{
|
|
8866
9025
|
onClick: () => handleTabClick(item.id, item.disabled),
|
|
@@ -8880,21 +9039,21 @@ var ITTabs = ({
|
|
|
8880
9039
|
item.disabled && "opacity-50 cursor-not-allowed"
|
|
8881
9040
|
),
|
|
8882
9041
|
children: [
|
|
8883
|
-
item.icon && /* @__PURE__ */
|
|
8884
|
-
/* @__PURE__ */
|
|
9042
|
+
item.icon && /* @__PURE__ */ jsx63("span", { className: "w-4 h-4", children: item.icon }),
|
|
9043
|
+
/* @__PURE__ */ jsx63(ITText, { as: "span", children: item.label })
|
|
8885
9044
|
]
|
|
8886
9045
|
},
|
|
8887
9046
|
item.id
|
|
8888
9047
|
);
|
|
8889
9048
|
}) }),
|
|
8890
|
-
/* @__PURE__ */
|
|
9049
|
+
/* @__PURE__ */ jsx63("div", { className: "tab-content animate-fadeIn", children: activeContent })
|
|
8891
9050
|
] });
|
|
8892
9051
|
};
|
|
8893
9052
|
var tabs_default = ITTabs;
|
|
8894
9053
|
|
|
8895
9054
|
// src/components/organisms/triple-filter/tripleFilter.tsx
|
|
8896
9055
|
import clsx47 from "clsx";
|
|
8897
|
-
import { jsx as
|
|
9056
|
+
import { jsx as jsx64 } from "react/jsx-runtime";
|
|
8898
9057
|
var colorMap2 = {
|
|
8899
9058
|
primary: "text-primary-600",
|
|
8900
9059
|
secondary: "text-secondary-600",
|
|
@@ -8913,11 +9072,11 @@ var ITTripleFilter = ({
|
|
|
8913
9072
|
color = "primary",
|
|
8914
9073
|
className
|
|
8915
9074
|
}) => {
|
|
8916
|
-
return /* @__PURE__ */
|
|
9075
|
+
return /* @__PURE__ */ jsx64(
|
|
8917
9076
|
"div",
|
|
8918
9077
|
{
|
|
8919
9078
|
className: clsx47("flex bg-slate-100 p-1 rounded-xl gap-1 w-fit", className),
|
|
8920
|
-
children: options.map((option) => /* @__PURE__ */
|
|
9079
|
+
children: options.map((option) => /* @__PURE__ */ jsx64(
|
|
8921
9080
|
"button",
|
|
8922
9081
|
{
|
|
8923
9082
|
onClick: () => onChange(option.value),
|
|
@@ -8925,7 +9084,7 @@ var ITTripleFilter = ({
|
|
|
8925
9084
|
"px-4 py-1.5 rounded-lg text-[10px] font-bold uppercase tracking-wider transition-all duration-200 whitespace-nowrap",
|
|
8926
9085
|
value === option.value ? clsx47("bg-white shadow-sm", colorMap2[color]) : "text-slate-400 hover:text-slate-600"
|
|
8927
9086
|
),
|
|
8928
|
-
children: /* @__PURE__ */
|
|
9087
|
+
children: /* @__PURE__ */ jsx64(ITText, { as: "span", children: option.label })
|
|
8929
9088
|
},
|
|
8930
9089
|
String(option.value)
|
|
8931
9090
|
))
|
|
@@ -8946,9 +9105,9 @@ var positionStyles = {
|
|
|
8946
9105
|
|
|
8947
9106
|
// src/components/organisms/toast/toast.tsx
|
|
8948
9107
|
import clsx48 from "clsx";
|
|
8949
|
-
import { useEffect as useEffect15, useState as
|
|
9108
|
+
import { useEffect as useEffect15, useState as useState32 } from "react";
|
|
8950
9109
|
import { FaTimesCircle as FaTimesCircle2, FaCheckCircle as FaCheckCircle2, FaExclamationTriangle as FaExclamationTriangle3, FaInfoCircle as FaInfoCircle2, FaTimes as FaTimes10 } from "react-icons/fa";
|
|
8951
|
-
import { jsx as
|
|
9110
|
+
import { jsx as jsx65, jsxs as jsxs50 } from "react/jsx-runtime";
|
|
8952
9111
|
function ITToast({
|
|
8953
9112
|
message,
|
|
8954
9113
|
type = "info",
|
|
@@ -8956,7 +9115,7 @@ function ITToast({
|
|
|
8956
9115
|
position = "top-right",
|
|
8957
9116
|
onClose
|
|
8958
9117
|
}) {
|
|
8959
|
-
const [isVisible, setIsVisible] =
|
|
9118
|
+
const [isVisible, setIsVisible] = useState32(true);
|
|
8960
9119
|
useEffect15(() => {
|
|
8961
9120
|
const timer = setTimeout(() => {
|
|
8962
9121
|
setIsVisible(false);
|
|
@@ -8977,18 +9136,18 @@ function ITToast({
|
|
|
8977
9136
|
const TypeIcon = () => {
|
|
8978
9137
|
switch (type) {
|
|
8979
9138
|
case "success":
|
|
8980
|
-
return /* @__PURE__ */
|
|
9139
|
+
return /* @__PURE__ */ jsx65(FaCheckCircle2, { className: "w-5 h-5 flex-shrink-0" });
|
|
8981
9140
|
case "error":
|
|
8982
9141
|
case "danger":
|
|
8983
|
-
return /* @__PURE__ */
|
|
9142
|
+
return /* @__PURE__ */ jsx65(FaTimesCircle2, { className: "w-5 h-5 flex-shrink-0" });
|
|
8984
9143
|
case "warning":
|
|
8985
|
-
return /* @__PURE__ */
|
|
9144
|
+
return /* @__PURE__ */ jsx65(FaExclamationTriangle3, { className: "w-5 h-5 flex-shrink-0" });
|
|
8986
9145
|
case "info":
|
|
8987
9146
|
default:
|
|
8988
|
-
return /* @__PURE__ */
|
|
9147
|
+
return /* @__PURE__ */ jsx65(FaInfoCircle2, { className: "w-5 h-5 flex-shrink-0" });
|
|
8989
9148
|
}
|
|
8990
9149
|
};
|
|
8991
|
-
return /* @__PURE__ */
|
|
9150
|
+
return /* @__PURE__ */ jsxs50(
|
|
8992
9151
|
"div",
|
|
8993
9152
|
{
|
|
8994
9153
|
className: clsx48(
|
|
@@ -9004,17 +9163,17 @@ function ITToast({
|
|
|
9004
9163
|
style: { backgroundColor },
|
|
9005
9164
|
role: "alert",
|
|
9006
9165
|
children: [
|
|
9007
|
-
/* @__PURE__ */
|
|
9008
|
-
/* @__PURE__ */
|
|
9009
|
-
/* @__PURE__ */
|
|
9166
|
+
/* @__PURE__ */ jsxs50("div", { className: "flex items-center gap-3", children: [
|
|
9167
|
+
/* @__PURE__ */ jsx65(TypeIcon, {}),
|
|
9168
|
+
/* @__PURE__ */ jsx65(ITText, { as: "span", className: "font-medium text-sm sm:text-base leading-snug", children: message })
|
|
9010
9169
|
] }),
|
|
9011
|
-
/* @__PURE__ */
|
|
9170
|
+
/* @__PURE__ */ jsx65(
|
|
9012
9171
|
"button",
|
|
9013
9172
|
{
|
|
9014
9173
|
onClick: handleClose,
|
|
9015
9174
|
className: "p-1.5 rounded-full hover:bg-black/15 transition-colors focus:outline-none focus:ring-2 focus:ring-white/50",
|
|
9016
9175
|
"aria-label": "Close notification",
|
|
9017
|
-
children: /* @__PURE__ */
|
|
9176
|
+
children: /* @__PURE__ */ jsx65(FaTimes10, { className: "w-4 h-4" })
|
|
9018
9177
|
}
|
|
9019
9178
|
)
|
|
9020
9179
|
]
|
|
@@ -9027,7 +9186,7 @@ import {
|
|
|
9027
9186
|
useCallback as useCallback9,
|
|
9028
9187
|
useEffect as useEffect16,
|
|
9029
9188
|
useRef as useRef21,
|
|
9030
|
-
useState as
|
|
9189
|
+
useState as useState34
|
|
9031
9190
|
} from "react";
|
|
9032
9191
|
import clsx50 from "clsx";
|
|
9033
9192
|
import {
|
|
@@ -9052,9 +9211,9 @@ var toolbarActions = [
|
|
|
9052
9211
|
];
|
|
9053
9212
|
|
|
9054
9213
|
// src/components/atoms/tooltip/tooltip.tsx
|
|
9055
|
-
import { useState as
|
|
9214
|
+
import { useState as useState33 } from "react";
|
|
9056
9215
|
import clsx49 from "clsx";
|
|
9057
|
-
import { jsx as
|
|
9216
|
+
import { jsx as jsx66, jsxs as jsxs51 } from "react/jsx-runtime";
|
|
9058
9217
|
var positionClasses2 = {
|
|
9059
9218
|
top: "bottom-full left-1/2 -translate-x-1/2 mb-2",
|
|
9060
9219
|
bottom: "top-full left-1/2 -translate-x-1/2 mt-2",
|
|
@@ -9074,7 +9233,7 @@ function ITTooltip({
|
|
|
9074
9233
|
delay = 200,
|
|
9075
9234
|
className
|
|
9076
9235
|
}) {
|
|
9077
|
-
const [visible, setVisible] =
|
|
9236
|
+
const [visible, setVisible] = useState33(false);
|
|
9078
9237
|
let timeout;
|
|
9079
9238
|
const handleMouseEnter = () => {
|
|
9080
9239
|
timeout = setTimeout(() => setVisible(true), delay);
|
|
@@ -9083,7 +9242,7 @@ function ITTooltip({
|
|
|
9083
9242
|
clearTimeout(timeout);
|
|
9084
9243
|
setVisible(false);
|
|
9085
9244
|
};
|
|
9086
|
-
return /* @__PURE__ */
|
|
9245
|
+
return /* @__PURE__ */ jsxs51(
|
|
9087
9246
|
"div",
|
|
9088
9247
|
{
|
|
9089
9248
|
className: clsx49("relative inline-flex", className),
|
|
@@ -9091,9 +9250,9 @@ function ITTooltip({
|
|
|
9091
9250
|
onMouseLeave: handleMouseLeave,
|
|
9092
9251
|
children: [
|
|
9093
9252
|
children,
|
|
9094
|
-
visible && /* @__PURE__ */
|
|
9095
|
-
/* @__PURE__ */
|
|
9096
|
-
/* @__PURE__ */
|
|
9253
|
+
visible && /* @__PURE__ */ jsxs51("div", { className: clsx49("absolute z-[70] pointer-events-none", positionClasses2[position]), children: [
|
|
9254
|
+
/* @__PURE__ */ jsx66("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__ */ jsx66(ITText, { as: "span", children: content }) }),
|
|
9255
|
+
/* @__PURE__ */ jsx66("div", { className: clsx49("absolute", arrowClasses[position]) })
|
|
9097
9256
|
] })
|
|
9098
9257
|
]
|
|
9099
9258
|
}
|
|
@@ -9101,16 +9260,16 @@ function ITTooltip({
|
|
|
9101
9260
|
}
|
|
9102
9261
|
|
|
9103
9262
|
// src/components/molecules/wysiwyg/wysiwyg.tsx
|
|
9104
|
-
import { jsx as
|
|
9263
|
+
import { jsx as jsx67, jsxs as jsxs52 } from "react/jsx-runtime";
|
|
9105
9264
|
var INLINE_TAGS = /* @__PURE__ */ new Set(["STRONG", "B", "EM", "I", "U", "MARK"]);
|
|
9106
9265
|
var ACTION_META = {
|
|
9107
|
-
bold: { label: "Negrita", icon: /* @__PURE__ */
|
|
9108
|
-
italic: { label: "It\xE1lica", icon: /* @__PURE__ */
|
|
9109
|
-
underline: { label: "Subrayado", icon: /* @__PURE__ */
|
|
9110
|
-
highlight: { label: "Marcador", icon: /* @__PURE__ */
|
|
9111
|
-
ul: { label: "Lista con vi\xF1etas", icon: /* @__PURE__ */
|
|
9112
|
-
ol: { label: "Lista numerada", icon: /* @__PURE__ */
|
|
9113
|
-
clear: { label: "Limpiar formato", icon: /* @__PURE__ */
|
|
9266
|
+
bold: { label: "Negrita", icon: /* @__PURE__ */ jsx67(FaBold, {}) },
|
|
9267
|
+
italic: { label: "It\xE1lica", icon: /* @__PURE__ */ jsx67(FaItalic, {}) },
|
|
9268
|
+
underline: { label: "Subrayado", icon: /* @__PURE__ */ jsx67(FaUnderline, {}) },
|
|
9269
|
+
highlight: { label: "Marcador", icon: /* @__PURE__ */ jsx67(FaHighlighter, {}) },
|
|
9270
|
+
ul: { label: "Lista con vi\xF1etas", icon: /* @__PURE__ */ jsx67(FaListUl, {}) },
|
|
9271
|
+
ol: { label: "Lista numerada", icon: /* @__PURE__ */ jsx67(FaListOl, {}) },
|
|
9272
|
+
clear: { label: "Limpiar formato", icon: /* @__PURE__ */ jsx67(FaEraser, {}) }
|
|
9114
9273
|
};
|
|
9115
9274
|
function ITWysiwyg({
|
|
9116
9275
|
value,
|
|
@@ -9129,7 +9288,7 @@ function ITWysiwyg({
|
|
|
9129
9288
|
}) {
|
|
9130
9289
|
const editorRef = useRef21(null);
|
|
9131
9290
|
const focusedRef = useRef21(false);
|
|
9132
|
-
const [active, setActive] =
|
|
9291
|
+
const [active, setActive] = useState34({});
|
|
9133
9292
|
const isLocked = disabled || readOnly;
|
|
9134
9293
|
const sizeConfig = inputSizeTokens[size] ?? inputSizeTokens.md;
|
|
9135
9294
|
const findAncestor = useCallback9(
|
|
@@ -9526,7 +9685,7 @@ function ITWysiwyg({
|
|
|
9526
9685
|
}) => {
|
|
9527
9686
|
const meta = ACTION_META[action];
|
|
9528
9687
|
const isActive = !!active[action];
|
|
9529
|
-
return /* @__PURE__ */
|
|
9688
|
+
return /* @__PURE__ */ jsx67(ITTooltip, { content: meta.label, children: /* @__PURE__ */ jsx67(
|
|
9530
9689
|
"button",
|
|
9531
9690
|
{
|
|
9532
9691
|
type: "button",
|
|
@@ -9546,9 +9705,9 @@ function ITWysiwyg({
|
|
|
9546
9705
|
}
|
|
9547
9706
|
) });
|
|
9548
9707
|
};
|
|
9549
|
-
return /* @__PURE__ */
|
|
9550
|
-
label && /* @__PURE__ */
|
|
9551
|
-
/* @__PURE__ */
|
|
9708
|
+
return /* @__PURE__ */ jsxs52("div", { className: inputWrapper(className), children: [
|
|
9709
|
+
label && /* @__PURE__ */ jsx67(ITText, { as: "label", className: inputLabel(!!error), htmlFor: name, children: label }),
|
|
9710
|
+
/* @__PURE__ */ jsxs52(
|
|
9552
9711
|
"div",
|
|
9553
9712
|
{
|
|
9554
9713
|
className: clsx50(
|
|
@@ -9557,20 +9716,20 @@ function ITWysiwyg({
|
|
|
9557
9716
|
isLocked && "opacity-50 cursor-not-allowed bg-secondary-100 dark:bg-slate-800"
|
|
9558
9717
|
),
|
|
9559
9718
|
children: [
|
|
9560
|
-
/* @__PURE__ */
|
|
9719
|
+
/* @__PURE__ */ jsx67(
|
|
9561
9720
|
"div",
|
|
9562
9721
|
{
|
|
9563
9722
|
className: clsx50(
|
|
9564
9723
|
"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",
|
|
9565
9724
|
isLocked && "bg-secondary-100 dark:bg-slate-900"
|
|
9566
9725
|
),
|
|
9567
|
-
children: toolbar.map((action, i) => /* @__PURE__ */
|
|
9568
|
-
i > 0 && (action === "ul" || action === "ol" || action === "clear") && /* @__PURE__ */
|
|
9569
|
-
/* @__PURE__ */
|
|
9726
|
+
children: toolbar.map((action, i) => /* @__PURE__ */ jsxs52("span", { className: "flex items-center", children: [
|
|
9727
|
+
i > 0 && (action === "ul" || action === "ol" || action === "clear") && /* @__PURE__ */ jsx67("span", { className: "mx-1 h-4 w-px bg-secondary-200 dark:bg-slate-600" }),
|
|
9728
|
+
/* @__PURE__ */ jsx67(ToolbarButton, { action })
|
|
9570
9729
|
] }, action))
|
|
9571
9730
|
}
|
|
9572
9731
|
),
|
|
9573
|
-
/* @__PURE__ */
|
|
9732
|
+
/* @__PURE__ */ jsx67(
|
|
9574
9733
|
"div",
|
|
9575
9734
|
{
|
|
9576
9735
|
id: name,
|
|
@@ -9604,12 +9763,12 @@ function ITWysiwyg({
|
|
|
9604
9763
|
]
|
|
9605
9764
|
}
|
|
9606
9765
|
),
|
|
9607
|
-
error && /* @__PURE__ */
|
|
9766
|
+
error && /* @__PURE__ */ jsx67(ITText, { as: "span", className: inputError, children: error })
|
|
9608
9767
|
] });
|
|
9609
9768
|
}
|
|
9610
9769
|
|
|
9611
9770
|
// src/components/organisms/dropfile/dropfile.tsx
|
|
9612
|
-
import { useState as
|
|
9771
|
+
import { useState as useState35, useEffect as useEffect17 } from "react";
|
|
9613
9772
|
import { useDropzone } from "react-dropzone";
|
|
9614
9773
|
import clsx51 from "clsx";
|
|
9615
9774
|
|
|
@@ -9639,7 +9798,7 @@ var UploadStatus = /* @__PURE__ */ ((UploadStatus2) => {
|
|
|
9639
9798
|
})(UploadStatus || {});
|
|
9640
9799
|
|
|
9641
9800
|
// src/components/organisms/dropfile/dropfile.tsx
|
|
9642
|
-
import { Fragment as Fragment10, jsx as
|
|
9801
|
+
import { Fragment as Fragment10, jsx as jsx68, jsxs as jsxs53 } from "react/jsx-runtime";
|
|
9643
9802
|
var ITDropfile = ({
|
|
9644
9803
|
onFileSelect,
|
|
9645
9804
|
onCancel,
|
|
@@ -9655,12 +9814,12 @@ var ITDropfile = ({
|
|
|
9655
9814
|
buttonLabel = "Subir archivo",
|
|
9656
9815
|
modalTitle
|
|
9657
9816
|
}) => {
|
|
9658
|
-
const [isModalOpen, setIsModalOpen] =
|
|
9659
|
-
const [selectedFile, setSelectedFile] =
|
|
9660
|
-
const [fileType, setFileType] =
|
|
9661
|
-
const [imagePreview, setImagePreview] =
|
|
9662
|
-
const [isConfirmed, setIsConfirmed] =
|
|
9663
|
-
const [internalUploadStatus, setInternalUploadStatus] =
|
|
9817
|
+
const [isModalOpen, setIsModalOpen] = useState35(false);
|
|
9818
|
+
const [selectedFile, setSelectedFile] = useState35(null);
|
|
9819
|
+
const [fileType, setFileType] = useState35(null);
|
|
9820
|
+
const [imagePreview, setImagePreview] = useState35(initialPreviewUrl || null);
|
|
9821
|
+
const [isConfirmed, setIsConfirmed] = useState35(false);
|
|
9822
|
+
const [internalUploadStatus, setInternalUploadStatus] = useState35(
|
|
9664
9823
|
initialPreviewUrl ? "subido" /* UPLOADED */ : "pendiente" /* PENDING */
|
|
9665
9824
|
);
|
|
9666
9825
|
useEffect17(() => {
|
|
@@ -9778,9 +9937,9 @@ var ITDropfile = ({
|
|
|
9778
9937
|
}
|
|
9779
9938
|
};
|
|
9780
9939
|
const { label, color, dotColor } = config2[status];
|
|
9781
|
-
return /* @__PURE__ */
|
|
9782
|
-
/* @__PURE__ */
|
|
9783
|
-
/* @__PURE__ */
|
|
9940
|
+
return /* @__PURE__ */ jsxs53("div", { className: `inline-flex items-center gap-2 px-2.5 py-1 rounded-full border ${color}`, children: [
|
|
9941
|
+
/* @__PURE__ */ jsx68("div", { className: `w-2 h-2 rounded-full ${dotColor}` }),
|
|
9942
|
+
/* @__PURE__ */ jsx68(ITText, { as: "span", className: "text-xs font-medium flex items-center gap-1.5", children: label })
|
|
9784
9943
|
] });
|
|
9785
9944
|
};
|
|
9786
9945
|
const onDrop = (acceptedFiles) => {
|
|
@@ -9871,18 +10030,18 @@ var ITDropfile = ({
|
|
|
9871
10030
|
return () => clearTimeout(timeout);
|
|
9872
10031
|
}
|
|
9873
10032
|
}, [view, isConfirmed, uploadStatus, externalStatus, onStatusChange]);
|
|
9874
|
-
const headerRow = /* @__PURE__ */
|
|
9875
|
-
/* @__PURE__ */
|
|
9876
|
-
/* @__PURE__ */
|
|
9877
|
-
/* @__PURE__ */
|
|
10033
|
+
const headerRow = /* @__PURE__ */ jsxs53("div", { className: "flex items-center justify-between mb-2", children: [
|
|
10034
|
+
/* @__PURE__ */ jsxs53("label", { className: "block text-sm font-semibold text-secondary-700", children: [
|
|
10035
|
+
/* @__PURE__ */ jsx68(ITText, { as: "span", children: "Subir archivo " }),
|
|
10036
|
+
/* @__PURE__ */ jsxs53(ITText, { as: "span", className: "text-secondary-400 font-normal text-xs", children: [
|
|
9878
10037
|
"(",
|
|
9879
10038
|
getFileExtensions(),
|
|
9880
10039
|
")"
|
|
9881
10040
|
] })
|
|
9882
10041
|
] }),
|
|
9883
|
-
showStatusBadge && selectedFile && /* @__PURE__ */
|
|
10042
|
+
showStatusBadge && selectedFile && /* @__PURE__ */ jsx68(StatusBadge, { status: uploadStatus })
|
|
9884
10043
|
] });
|
|
9885
|
-
const dropZoneOrPreview = /* @__PURE__ */
|
|
10044
|
+
const dropZoneOrPreview = /* @__PURE__ */ jsx68(Fragment10, { children: !selectedFile && !imagePreview ? /* @__PURE__ */ jsxs53(
|
|
9886
10045
|
"div",
|
|
9887
10046
|
{
|
|
9888
10047
|
...getRootProps(),
|
|
@@ -9892,41 +10051,41 @@ var ITDropfile = ({
|
|
|
9892
10051
|
${isDragActive ? "border-primary-500 bg-primary-50 scale-[1.01]" : "border-secondary-300 bg-white hover:border-primary-400 hover:bg-secondary-50"}
|
|
9893
10052
|
`,
|
|
9894
10053
|
children: [
|
|
9895
|
-
/* @__PURE__ */
|
|
9896
|
-
/* @__PURE__ */
|
|
10054
|
+
/* @__PURE__ */ jsx68("input", { ...getInputProps() }),
|
|
10055
|
+
/* @__PURE__ */ jsx68("div", { className: `mb-3 p-3 rounded-full transition-colors duration-300 ${isDragActive ? "bg-primary-100" : "bg-secondary-100 group-hover:bg-primary-50"}`, children: /* @__PURE__ */ jsx68(
|
|
9897
10056
|
"svg",
|
|
9898
10057
|
{
|
|
9899
10058
|
className: `w-6 h-6 transition-colors duration-300 ${isDragActive ? "text-primary-600" : "text-secondary-400 group-hover:text-primary-500"}`,
|
|
9900
10059
|
fill: "none",
|
|
9901
10060
|
viewBox: "0 0 24 24",
|
|
9902
10061
|
stroke: "currentColor",
|
|
9903
|
-
children: /* @__PURE__ */
|
|
10062
|
+
children: /* @__PURE__ */ jsx68("path", { strokeLinecap: "round", strokeLinejoin: "round", strokeWidth: 2, d: "M7 16a4 4 0 01-.88-7.903A5 5 0 1115.9 6L16 6a5 5 0 011 9.9M15 13l-3-3m0 0l-3 3m3-3v12" })
|
|
9904
10063
|
}
|
|
9905
10064
|
) }),
|
|
9906
|
-
/* @__PURE__ */
|
|
10065
|
+
/* @__PURE__ */ jsx68("div", { className: "text-center space-y-1", children: /* @__PURE__ */ jsx68(ITText, { as: "p", className: `text-sm font-medium transition-colors duration-300 ${isDragActive ? "text-primary-700" : "text-secondary-700"}`, children: isDragActive ? "\xA1Suelta aqu\xED!" : "Haz clic o arrastra" }) })
|
|
9907
10066
|
]
|
|
9908
10067
|
}
|
|
9909
|
-
) : /* @__PURE__ */
|
|
9910
|
-
/* @__PURE__ */
|
|
9911
|
-
/* @__PURE__ */
|
|
9912
|
-
/* @__PURE__ */
|
|
9913
|
-
/* @__PURE__ */
|
|
9914
|
-
/* @__PURE__ */
|
|
10068
|
+
) : /* @__PURE__ */ jsxs53("div", { className: "w-full bg-white border border-secondary-200 rounded-xl shadow-sm overflow-hidden animate-fade-in", children: [
|
|
10069
|
+
/* @__PURE__ */ jsx68("div", { className: "flex items-center justify-between p-3 bg-secondary-50 border-b border-secondary-100", children: /* @__PURE__ */ jsxs53("div", { className: "flex items-center gap-3 overflow-hidden", children: [
|
|
10070
|
+
/* @__PURE__ */ jsx68("div", { className: "flex-shrink-0 w-8 h-8 rounded-lg bg-primary-100 flex items-center justify-center text-primary-600", children: selectedFile && fileType?.startsWith("image/") || !selectedFile && imagePreview ? /* @__PURE__ */ jsx68("svg", { className: "w-5 h-5", fill: "none", viewBox: "0 0 24 24", stroke: "currentColor", children: /* @__PURE__ */ jsx68("path", { strokeLinecap: "round", strokeLinejoin: "round", strokeWidth: 2, d: "M4 16l4.586-4.586a2 2 0 012.828 0L16 16m-2-2l1.586-1.586a2 2 0 012.828 0L20 14m-6-6h.01M6 20h12a2 2 0 002-2V6a2 2 0 00-2-2H6a2 2 0 00-2 2v12a2 2 0 002 2z" }) }) : /* @__PURE__ */ jsx68("svg", { className: "w-5 h-5", fill: "none", viewBox: "0 0 24 24", stroke: "currentColor", children: /* @__PURE__ */ jsx68("path", { strokeLinecap: "round", strokeLinejoin: "round", strokeWidth: 2, d: "M9 12h6m-6 4h6m2 5H7a2 2 0 01-2-2V5a2 2 0 012-2h5.586a1 1 0 01.707.293l5.414 5.414a1 1 0 01.293.707V19a2 2 0 01-2 2z" }) }) }),
|
|
10071
|
+
/* @__PURE__ */ jsxs53("div", { className: "min-w-0", children: [
|
|
10072
|
+
/* @__PURE__ */ jsx68(ITText, { as: "p", className: "text-xs font-medium text-secondary-900 truncate", title: selectedFile?.name || "Imagen cargada", children: selectedFile?.name || "Imagen cargada" }),
|
|
10073
|
+
/* @__PURE__ */ jsx68(ITText, { as: "p", className: "text-[10px] text-secondary-500", children: selectedFile ? (selectedFile.size / 1024 / 1024).toFixed(2) + " MB" : "" })
|
|
9915
10074
|
] })
|
|
9916
10075
|
] }) }),
|
|
9917
|
-
/* @__PURE__ */
|
|
10076
|
+
/* @__PURE__ */ jsx68("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__ */ jsx68(
|
|
9918
10077
|
"img",
|
|
9919
10078
|
{
|
|
9920
10079
|
src: imagePreview,
|
|
9921
10080
|
alt: "Vista previa",
|
|
9922
10081
|
className: "w-full h-full object-contain max-h-[200px]"
|
|
9923
10082
|
}
|
|
9924
|
-
) : /* @__PURE__ */
|
|
9925
|
-
/* @__PURE__ */
|
|
9926
|
-
/* @__PURE__ */
|
|
10083
|
+
) : /* @__PURE__ */ jsxs53("div", { className: "py-8 flex flex-col items-center text-secondary-400", children: [
|
|
10084
|
+
/* @__PURE__ */ jsx68("svg", { className: "w-10 h-10 mb-2 opacity-50", fill: "none", viewBox: "0 0 24 24", stroke: "currentColor", children: /* @__PURE__ */ jsx68("path", { strokeLinecap: "round", strokeLinejoin: "round", strokeWidth: 1.5, d: "M7 21h10a2 2 0 002-2V9.414a1 1 0 00-.293-.707l-5.414-5.414A1 1 0 0012.586 3H7a2 2 0 00-2 2v14a2 2 0 002 2z" }) }),
|
|
10085
|
+
/* @__PURE__ */ jsx68(ITText, { as: "span", className: "text-xs", children: "Sin vista previa" })
|
|
9927
10086
|
] }) }),
|
|
9928
|
-
/* @__PURE__ */
|
|
9929
|
-
/* @__PURE__ */
|
|
10087
|
+
/* @__PURE__ */ jsx68("div", { className: "px-3 py-2 bg-white border-t border-secondary-100 flex justify-end gap-2", children: !isConfirmed ? /* @__PURE__ */ jsxs53(Fragment10, { children: [
|
|
10088
|
+
/* @__PURE__ */ jsx68(
|
|
9930
10089
|
ITButton,
|
|
9931
10090
|
{
|
|
9932
10091
|
type: "button",
|
|
@@ -9934,10 +10093,10 @@ var ITDropfile = ({
|
|
|
9934
10093
|
color: "secondary",
|
|
9935
10094
|
size: "sm",
|
|
9936
10095
|
onClick: handleCancel,
|
|
9937
|
-
children: /* @__PURE__ */
|
|
10096
|
+
children: /* @__PURE__ */ jsx68(ITText, { children: "Cancelar" })
|
|
9938
10097
|
}
|
|
9939
10098
|
),
|
|
9940
|
-
/* @__PURE__ */
|
|
10099
|
+
/* @__PURE__ */ jsx68(
|
|
9941
10100
|
ITButton,
|
|
9942
10101
|
{
|
|
9943
10102
|
type: "button",
|
|
@@ -9945,13 +10104,13 @@ var ITDropfile = ({
|
|
|
9945
10104
|
color: "primary",
|
|
9946
10105
|
size: "sm",
|
|
9947
10106
|
onClick: handleConfirm,
|
|
9948
|
-
children: /* @__PURE__ */
|
|
9949
|
-
/* @__PURE__ */
|
|
9950
|
-
/* @__PURE__ */
|
|
10107
|
+
children: /* @__PURE__ */ jsxs53("div", { className: "flex items-center gap-2", children: [
|
|
10108
|
+
/* @__PURE__ */ jsx68(ITText, { children: "Confirmar" }),
|
|
10109
|
+
/* @__PURE__ */ jsx68("svg", { className: "w-3 h-3", fill: "none", viewBox: "0 0 24 24", stroke: "currentColor", children: /* @__PURE__ */ jsx68("path", { strokeLinecap: "round", strokeLinejoin: "round", strokeWidth: 2, d: "M5 13l4 4L19 7" }) })
|
|
9951
10110
|
] })
|
|
9952
10111
|
}
|
|
9953
10112
|
)
|
|
9954
|
-
] }) : /* @__PURE__ */
|
|
10113
|
+
] }) : /* @__PURE__ */ jsxs53(
|
|
9955
10114
|
ITButton,
|
|
9956
10115
|
{
|
|
9957
10116
|
type: "button",
|
|
@@ -9960,12 +10119,12 @@ var ITDropfile = ({
|
|
|
9960
10119
|
size: "sm",
|
|
9961
10120
|
onClick: handleDelete,
|
|
9962
10121
|
children: [
|
|
9963
|
-
/* @__PURE__ */
|
|
9964
|
-
/* @__PURE__ */
|
|
10122
|
+
/* @__PURE__ */ jsx68("svg", { className: "w-3 h-3", fill: "none", viewBox: "0 0 24 24", stroke: "currentColor", children: /* @__PURE__ */ jsx68("path", { strokeLinecap: "round", strokeLinejoin: "round", strokeWidth: 2, d: "M19 7l-.867 12.142A2 2 0 0116.138 21H7.862a2 2 0 01-1.995-1.858L5 7m5 4v6m4-6v6m1-10V4a1 1 0 00-1-1h-4a1 1 0 00-1 1v3M4 7h16" }) }),
|
|
10123
|
+
/* @__PURE__ */ jsx68(ITText, { children: "Eliminar" })
|
|
9965
10124
|
]
|
|
9966
10125
|
}
|
|
9967
10126
|
) }),
|
|
9968
|
-
uploadStatus === "subiendo" /* UPLOADING */ && /* @__PURE__ */
|
|
10127
|
+
uploadStatus === "subiendo" /* UPLOADING */ && /* @__PURE__ */ jsx68("div", { className: "px-4 pb-2", children: /* @__PURE__ */ jsx68("div", { className: "w-full bg-secondary-200 rounded-full h-1.5", children: /* @__PURE__ */ jsx68(
|
|
9969
10128
|
"div",
|
|
9970
10129
|
{
|
|
9971
10130
|
className: "bg-primary-600 h-1.5 rounded-full transition-all duration-1000 ease-out",
|
|
@@ -9978,8 +10137,8 @@ var ITDropfile = ({
|
|
|
9978
10137
|
] }) });
|
|
9979
10138
|
if (view === "button") {
|
|
9980
10139
|
const hasFile = Boolean(selectedFile || imagePreview);
|
|
9981
|
-
return /* @__PURE__ */
|
|
9982
|
-
/* @__PURE__ */
|
|
10140
|
+
return /* @__PURE__ */ jsxs53("div", { className: clsx51("inline-block", containerClassName), children: [
|
|
10141
|
+
/* @__PURE__ */ jsx68(
|
|
9983
10142
|
ITButton,
|
|
9984
10143
|
{
|
|
9985
10144
|
type: "button",
|
|
@@ -9987,20 +10146,20 @@ var ITDropfile = ({
|
|
|
9987
10146
|
color: hasFile ? "primary" : "secondary",
|
|
9988
10147
|
size: "sm",
|
|
9989
10148
|
onClick: () => setIsModalOpen(true),
|
|
9990
|
-
children: /* @__PURE__ */
|
|
9991
|
-
/* @__PURE__ */
|
|
9992
|
-
/* @__PURE__ */
|
|
9993
|
-
showStatusBadge && hasFile && /* @__PURE__ */
|
|
10149
|
+
children: /* @__PURE__ */ jsxs53("div", { className: "flex items-center gap-2 max-w-[220px]", children: [
|
|
10150
|
+
/* @__PURE__ */ jsx68("svg", { className: "w-4 h-4 flex-shrink-0", fill: "none", viewBox: "0 0 24 24", stroke: "currentColor", children: /* @__PURE__ */ jsx68("path", { strokeLinecap: "round", strokeLinejoin: "round", strokeWidth: 2, d: "M7 16a4 4 0 01-.88-7.903A5 5 0 1115.9 6L16 6a5 5 0 011 9.9M15 13l-3-3m0 0l-3 3m3-3v12" }) }),
|
|
10151
|
+
/* @__PURE__ */ jsx68(ITText, { className: "truncate", children: selectedFile?.name || (hasFile ? "Archivo cargado" : buttonLabel) }),
|
|
10152
|
+
showStatusBadge && hasFile && /* @__PURE__ */ jsx68(StatusBadge, { status: uploadStatus })
|
|
9994
10153
|
] })
|
|
9995
10154
|
}
|
|
9996
10155
|
),
|
|
9997
|
-
/* @__PURE__ */
|
|
10156
|
+
/* @__PURE__ */ jsx68(ITDialog, { isOpen: isModalOpen, onClose: () => setIsModalOpen(false), title: modalTitle ?? buttonLabel, children: /* @__PURE__ */ jsxs53("div", { className: "w-full transition-all duration-300", children: [
|
|
9998
10157
|
headerRow,
|
|
9999
10158
|
dropZoneOrPreview
|
|
10000
10159
|
] }) })
|
|
10001
10160
|
] });
|
|
10002
10161
|
}
|
|
10003
|
-
return /* @__PURE__ */
|
|
10162
|
+
return /* @__PURE__ */ jsxs53("div", { className: clsx51("w-full transition-all duration-300", containerClassName), children: [
|
|
10004
10163
|
headerRow,
|
|
10005
10164
|
dropZoneOrPreview
|
|
10006
10165
|
] });
|
|
@@ -10008,13 +10167,13 @@ var ITDropfile = ({
|
|
|
10008
10167
|
var dropfile_default = ITDropfile;
|
|
10009
10168
|
|
|
10010
10169
|
// src/components/templates/layout/layout.tsx
|
|
10011
|
-
import { useState as
|
|
10170
|
+
import { useState as useState37 } from "react";
|
|
10012
10171
|
import clsx52 from "clsx";
|
|
10013
10172
|
|
|
10014
10173
|
// src/components/organisms/topbar/topbar.tsx
|
|
10015
10174
|
import { FaUserCircle as FaUserCircle2, FaBars } from "react-icons/fa";
|
|
10016
|
-
import { useRef as useRef22, useState as
|
|
10017
|
-
import { jsx as
|
|
10175
|
+
import { useRef as useRef22, useState as useState36 } from "react";
|
|
10176
|
+
import { jsx as jsx69, jsxs as jsxs54 } from "react/jsx-runtime";
|
|
10018
10177
|
function ITTopBar({
|
|
10019
10178
|
logo,
|
|
10020
10179
|
logoText,
|
|
@@ -10025,14 +10184,15 @@ function ITTopBar({
|
|
|
10025
10184
|
onToggleMobileMenu,
|
|
10026
10185
|
navItems,
|
|
10027
10186
|
onNavItemClick,
|
|
10028
|
-
hideBrandOnDesktop = false
|
|
10187
|
+
hideBrandOnDesktop = false,
|
|
10188
|
+
showDesktopMenuButton = false
|
|
10029
10189
|
}) {
|
|
10030
10190
|
const flat = useITFlatAppearance();
|
|
10031
10191
|
const initials = (userMenu?.userName ?? "").trim().split(/\s+/).slice(0, 2).map((word) => word.charAt(0).toUpperCase()).join("");
|
|
10032
|
-
const [isUserMenuOpen, setIsUserMenuOpen] =
|
|
10192
|
+
const [isUserMenuOpen, setIsUserMenuOpen] = useState36(false);
|
|
10033
10193
|
const userMenuRef = useRef22(null);
|
|
10034
10194
|
useClickOutside_default(userMenuRef, () => setIsUserMenuOpen(false));
|
|
10035
|
-
return /* @__PURE__ */
|
|
10195
|
+
return /* @__PURE__ */ jsx69(
|
|
10036
10196
|
"header",
|
|
10037
10197
|
{
|
|
10038
10198
|
className: `sticky top-0 z-40 transition-all duration-300 ${flat ? "" : "backdrop-blur-md"}`,
|
|
@@ -10041,24 +10201,26 @@ function ITTopBar({
|
|
|
10041
10201
|
borderBottom: "1px solid var(--it-topbar-border, rgba(15, 23, 42, 0.06))",
|
|
10042
10202
|
boxShadow: flat ? "none" : "var(--shadow-xs)"
|
|
10043
10203
|
},
|
|
10044
|
-
children: /* @__PURE__ */
|
|
10045
|
-
/* @__PURE__ */
|
|
10046
|
-
showMobileMenuButton && /* @__PURE__ */
|
|
10204
|
+
children: /* @__PURE__ */ jsxs54("div", { className: `flex items-center justify-between px-6 lg:px-8 ${flat ? "h-[64px]" : "h-[72px]"}`, children: [
|
|
10205
|
+
/* @__PURE__ */ jsxs54("div", { className: "flex items-center gap-5", children: [
|
|
10206
|
+
showMobileMenuButton && /* @__PURE__ */ jsx69(
|
|
10047
10207
|
"button",
|
|
10048
10208
|
{
|
|
10049
|
-
|
|
10209
|
+
type: "button",
|
|
10210
|
+
"aria-label": "Men\xFA",
|
|
10211
|
+
className: `${showDesktopMenuButton ? "" : "lg:hidden"} p-2.5 -ml-2.5 rounded-xl transition-colors duration-200`,
|
|
10050
10212
|
style: {
|
|
10051
10213
|
color: "var(--it-topbar-icon, #64748b)"
|
|
10052
10214
|
},
|
|
10053
10215
|
onMouseEnter: (e) => e.currentTarget.style.backgroundColor = "var(--it-topbar-user-hover, #f1f5f9)",
|
|
10054
10216
|
onMouseLeave: (e) => e.currentTarget.style.backgroundColor = "transparent",
|
|
10055
10217
|
onClick: onToggleMobileMenu,
|
|
10056
|
-
children: /* @__PURE__ */
|
|
10218
|
+
children: /* @__PURE__ */ jsx69(FaBars, { className: "w-[1.125rem] h-[1.125rem]" })
|
|
10057
10219
|
}
|
|
10058
10220
|
),
|
|
10059
|
-
/* @__PURE__ */
|
|
10060
|
-
logo && /* @__PURE__ */
|
|
10061
|
-
logoText && /* @__PURE__ */
|
|
10221
|
+
/* @__PURE__ */ jsxs54("div", { className: `items-center gap-3 ${hideBrandOnDesktop ? "flex lg:hidden" : "flex"}`, children: [
|
|
10222
|
+
logo && /* @__PURE__ */ jsx69("div", { className: "flex-shrink-0 drop-shadow-sm", children: logo }),
|
|
10223
|
+
logoText && /* @__PURE__ */ jsx69(
|
|
10062
10224
|
ITText,
|
|
10063
10225
|
{
|
|
10064
10226
|
as: "span",
|
|
@@ -10068,7 +10230,7 @@ function ITTopBar({
|
|
|
10068
10230
|
}
|
|
10069
10231
|
)
|
|
10070
10232
|
] }),
|
|
10071
|
-
navItems && navItems.length > 0 && /* @__PURE__ */
|
|
10233
|
+
navItems && navItems.length > 0 && /* @__PURE__ */ jsx69("nav", { className: "hidden md:flex ml-8 space-x-1 border-l pl-8", style: { borderColor: "var(--it-topbar-border, rgba(15, 23, 42, 0.06))" }, children: navItems.map((item) => /* @__PURE__ */ jsx69(
|
|
10072
10234
|
"button",
|
|
10073
10235
|
{
|
|
10074
10236
|
onClick: () => onNavItemClick?.(item.id),
|
|
@@ -10082,19 +10244,19 @@ function ITTopBar({
|
|
|
10082
10244
|
e.currentTarget.style.color = "var(--it-topbar-text, #475569)";
|
|
10083
10245
|
e.currentTarget.style.backgroundColor = "transparent";
|
|
10084
10246
|
},
|
|
10085
|
-
children: /* @__PURE__ */
|
|
10086
|
-
item.icon && /* @__PURE__ */
|
|
10087
|
-
/* @__PURE__ */
|
|
10247
|
+
children: /* @__PURE__ */ jsxs54("div", { className: "flex items-center gap-2", children: [
|
|
10248
|
+
item.icon && /* @__PURE__ */ jsx69("span", { className: "opacity-70", children: item.icon }),
|
|
10249
|
+
/* @__PURE__ */ jsx69(ITText, { as: "span", children: item.label })
|
|
10088
10250
|
] })
|
|
10089
10251
|
},
|
|
10090
10252
|
item.id
|
|
10091
10253
|
)) })
|
|
10092
10254
|
] }),
|
|
10093
|
-
centerContent && /* @__PURE__ */
|
|
10094
|
-
(children || userMenu) && /* @__PURE__ */
|
|
10255
|
+
centerContent && /* @__PURE__ */ jsx69("div", { className: `hidden lg:flex flex-1 min-w-0 items-center ${hideBrandOnDesktop ? "justify-start pr-4" : "justify-center px-4"}`, children: /* @__PURE__ */ jsx69("div", { className: "w-full max-w-[420px]", children: centerContent }) }),
|
|
10256
|
+
(children || userMenu) && /* @__PURE__ */ jsxs54("div", { className: "flex items-center gap-2", children: [
|
|
10095
10257
|
children,
|
|
10096
|
-
userMenu && /* @__PURE__ */
|
|
10097
|
-
/* @__PURE__ */
|
|
10258
|
+
userMenu && /* @__PURE__ */ jsxs54("div", { className: "relative", children: [
|
|
10259
|
+
/* @__PURE__ */ jsxs54(
|
|
10098
10260
|
"button",
|
|
10099
10261
|
{
|
|
10100
10262
|
type: "button",
|
|
@@ -10110,15 +10272,15 @@ function ITTopBar({
|
|
|
10110
10272
|
},
|
|
10111
10273
|
onClick: () => setIsUserMenuOpen(!isUserMenuOpen),
|
|
10112
10274
|
children: [
|
|
10113
|
-
/* @__PURE__ */
|
|
10114
|
-
userMenu.userImage ? /* @__PURE__ */
|
|
10275
|
+
/* @__PURE__ */ jsxs54("div", { className: "relative", children: [
|
|
10276
|
+
userMenu.userImage ? /* @__PURE__ */ jsx69(
|
|
10115
10277
|
"img",
|
|
10116
10278
|
{
|
|
10117
10279
|
className: "w-9 h-9 rounded-full object-cover ring-2 ring-white shadow-sm",
|
|
10118
10280
|
src: userMenu.userImage,
|
|
10119
10281
|
alt: "Current user"
|
|
10120
10282
|
}
|
|
10121
|
-
) : flat && initials ? /* @__PURE__ */
|
|
10283
|
+
) : flat && initials ? /* @__PURE__ */ jsx69(
|
|
10122
10284
|
"div",
|
|
10123
10285
|
{
|
|
10124
10286
|
"aria-hidden": "true",
|
|
@@ -10129,11 +10291,11 @@ function ITTopBar({
|
|
|
10129
10291
|
},
|
|
10130
10292
|
children: initials
|
|
10131
10293
|
}
|
|
10132
|
-
) : /* @__PURE__ */
|
|
10133
|
-
!flat && /* @__PURE__ */
|
|
10294
|
+
) : /* @__PURE__ */ jsx69("div", { className: "w-9 h-9 rounded-full bg-slate-100 flex items-center justify-center ring-2 ring-white shadow-sm", children: /* @__PURE__ */ jsx69(FaUserCircle2, { className: "w-6 h-6", style: { color: "var(--it-topbar-icon, #94a3b8)" } }) }),
|
|
10295
|
+
!flat && /* @__PURE__ */ jsx69("div", { className: "absolute bottom-0 right-0 w-2.5 h-2.5 bg-green-500 border-2 border-white rounded-full" })
|
|
10134
10296
|
] }),
|
|
10135
|
-
/* @__PURE__ */
|
|
10136
|
-
/* @__PURE__ */
|
|
10297
|
+
/* @__PURE__ */ jsxs54("div", { className: `hidden sm:flex flex-col py-0.5 ${flat ? "text-right" : "text-left"}`, children: [
|
|
10298
|
+
/* @__PURE__ */ jsx69(
|
|
10137
10299
|
ITText,
|
|
10138
10300
|
{
|
|
10139
10301
|
as: "span",
|
|
@@ -10142,7 +10304,7 @@ function ITTopBar({
|
|
|
10142
10304
|
children: userMenu.userName
|
|
10143
10305
|
}
|
|
10144
10306
|
),
|
|
10145
|
-
/* @__PURE__ */
|
|
10307
|
+
/* @__PURE__ */ jsx69(
|
|
10146
10308
|
ITText,
|
|
10147
10309
|
{
|
|
10148
10310
|
as: "span",
|
|
@@ -10155,7 +10317,7 @@ function ITTopBar({
|
|
|
10155
10317
|
]
|
|
10156
10318
|
}
|
|
10157
10319
|
),
|
|
10158
|
-
/* @__PURE__ */
|
|
10320
|
+
/* @__PURE__ */ jsxs54(
|
|
10159
10321
|
"div",
|
|
10160
10322
|
{
|
|
10161
10323
|
ref: userMenuRef,
|
|
@@ -10168,15 +10330,15 @@ function ITTopBar({
|
|
|
10168
10330
|
border: "1px solid var(--it-topbar-user-dropdown-border, #f1f5f9)"
|
|
10169
10331
|
},
|
|
10170
10332
|
children: [
|
|
10171
|
-
/* @__PURE__ */
|
|
10172
|
-
/* @__PURE__ */
|
|
10173
|
-
/* @__PURE__ */
|
|
10333
|
+
/* @__PURE__ */ jsxs54("div", { className: "px-5 py-4 border-b", style: { borderColor: "var(--it-topbar-user-dropdown-border, #f1f5f9)", backgroundColor: "var(--it-topbar-user-bg, #f8fafc)" }, children: [
|
|
10334
|
+
/* @__PURE__ */ jsx69(ITText, { as: "span", className: "block font-bold text-[0.9rem]", style: { color: "var(--it-topbar-user-text, #0f172a)" }, children: userMenu.userName }),
|
|
10335
|
+
/* @__PURE__ */ jsx69(ITText, { as: "span", className: "block text-xs font-medium truncate mt-0.5", style: { color: "var(--it-topbar-user-subtitle, #64748b)" }, children: userMenu.userEmail })
|
|
10174
10336
|
] }),
|
|
10175
|
-
/* @__PURE__ */
|
|
10337
|
+
/* @__PURE__ */ jsx69("ul", { className: "py-2", children: userMenu.menuItems.map((m, i) => {
|
|
10176
10338
|
const isDestructive = m.label.toLowerCase().includes("salir") || m.label.toLowerCase().includes("cerrar") || m.label.toLowerCase().includes("logout");
|
|
10177
|
-
return /* @__PURE__ */
|
|
10178
|
-
i === userMenu.menuItems.length - 1 && isDestructive && i > 0 && /* @__PURE__ */
|
|
10179
|
-
/* @__PURE__ */
|
|
10339
|
+
return /* @__PURE__ */ jsxs54("li", { className: "px-2", children: [
|
|
10340
|
+
i === userMenu.menuItems.length - 1 && isDestructive && i > 0 && /* @__PURE__ */ jsx69("div", { className: "h-px bg-slate-100 my-1 mx-2" }),
|
|
10341
|
+
/* @__PURE__ */ jsx69(
|
|
10180
10342
|
"button",
|
|
10181
10343
|
{
|
|
10182
10344
|
onClick: () => {
|
|
@@ -10191,7 +10353,7 @@ function ITTopBar({
|
|
|
10191
10353
|
onMouseLeave: (e) => {
|
|
10192
10354
|
e.currentTarget.style.backgroundColor = "transparent";
|
|
10193
10355
|
},
|
|
10194
|
-
children: /* @__PURE__ */
|
|
10356
|
+
children: /* @__PURE__ */ jsx69(ITText, { as: "span", children: m.label })
|
|
10195
10357
|
}
|
|
10196
10358
|
)
|
|
10197
10359
|
] }, i);
|
|
@@ -10207,7 +10369,7 @@ function ITTopBar({
|
|
|
10207
10369
|
}
|
|
10208
10370
|
|
|
10209
10371
|
// src/components/templates/layout/layout.tsx
|
|
10210
|
-
import { jsx as
|
|
10372
|
+
import { jsx as jsx70, jsxs as jsxs55 } from "react/jsx-runtime";
|
|
10211
10373
|
function ITLayout({
|
|
10212
10374
|
topBar,
|
|
10213
10375
|
sidebar,
|
|
@@ -10216,31 +10378,37 @@ function ITLayout({
|
|
|
10216
10378
|
contentClassName = "",
|
|
10217
10379
|
sidebarFullHeight = false
|
|
10218
10380
|
}) {
|
|
10219
|
-
const [internalCollapsed, setInternalCollapsed] =
|
|
10220
|
-
const [mobileSidebarOpen, setMobileSidebarOpen] =
|
|
10381
|
+
const [internalCollapsed, setInternalCollapsed] = useState37(true);
|
|
10382
|
+
const [mobileSidebarOpen, setMobileSidebarOpen] = useState37(false);
|
|
10221
10383
|
const flat = useITFlatAppearance();
|
|
10222
10384
|
const isControlled = sidebar.isCollapsed !== void 0;
|
|
10223
10385
|
const desktopCollapsed = isControlled ? sidebar.isCollapsed : internalCollapsed;
|
|
10224
10386
|
const handleToggleCollapse = isControlled ? sidebar.onToggleCollapse ?? (() => {
|
|
10225
10387
|
}) : () => setInternalCollapsed((v) => !v);
|
|
10226
10388
|
const layoutTokens = theme.layout;
|
|
10227
|
-
const reservedWidth = desktopCollapsed ? "w-[88px]" : flat ? "w-[248px]" : "w-[280px]";
|
|
10389
|
+
const reservedWidth = desktopCollapsed ? flat ? "w-[72px]" : "w-[88px]" : flat ? "w-[248px]" : "w-[280px]";
|
|
10390
|
+
const toggleByButton = sidebar.expandOnHover === false;
|
|
10391
|
+
const handleMenuButton = () => {
|
|
10392
|
+
if (toggleByButton && window.matchMedia("(min-width: 1024px)").matches) handleToggleCollapse();
|
|
10393
|
+
else setMobileSidebarOpen((v) => !v);
|
|
10394
|
+
};
|
|
10228
10395
|
const brand = sidebarFullHeight ? sidebar.brand ?? { logo: topBar.logo, text: topBar.logoText } : sidebar.brand;
|
|
10229
|
-
const topBarNode = /* @__PURE__ */
|
|
10396
|
+
const topBarNode = /* @__PURE__ */ jsx70(
|
|
10230
10397
|
ITTopBar,
|
|
10231
10398
|
{
|
|
10232
10399
|
...topBar,
|
|
10233
10400
|
hideBrandOnDesktop: sidebarFullHeight || topBar.hideBrandOnDesktop,
|
|
10234
10401
|
showMobileMenuButton: true,
|
|
10235
|
-
|
|
10402
|
+
showDesktopMenuButton: toggleByButton || topBar.showDesktopMenuButton,
|
|
10403
|
+
onToggleMobileMenu: handleMenuButton
|
|
10236
10404
|
}
|
|
10237
10405
|
);
|
|
10238
10406
|
const desktopSidebar = (
|
|
10239
10407
|
// Full-height: the sidebar sits beside the top bar, so it needs to win the
|
|
10240
10408
|
// stacking order when the collapsed rail expands over the content on hover.
|
|
10241
|
-
/* @__PURE__ */
|
|
10242
|
-
/* @__PURE__ */
|
|
10243
|
-
/* @__PURE__ */
|
|
10409
|
+
/* @__PURE__ */ jsxs55("div", { className: `hidden lg:block relative h-full ${sidebarFullHeight ? "z-50" : "z-40"}`, children: [
|
|
10410
|
+
/* @__PURE__ */ jsx70("div", { className: `${reservedWidth} h-full flex-shrink-0` }),
|
|
10411
|
+
/* @__PURE__ */ jsx70("div", { className: "absolute top-0 left-0 h-full", children: /* @__PURE__ */ jsx70(
|
|
10244
10412
|
ITSidebar,
|
|
10245
10413
|
{
|
|
10246
10414
|
...sidebar,
|
|
@@ -10253,17 +10421,17 @@ function ITLayout({
|
|
|
10253
10421
|
) })
|
|
10254
10422
|
] })
|
|
10255
10423
|
);
|
|
10256
|
-
const mobileSidebar = mobileSidebarOpen && /* @__PURE__ */
|
|
10424
|
+
const mobileSidebar = mobileSidebarOpen && /* @__PURE__ */ jsx70(
|
|
10257
10425
|
"div",
|
|
10258
10426
|
{
|
|
10259
10427
|
className: "lg:hidden fixed inset-0 z-[40] transition-opacity duration-300 backdrop-blur-sm bg-black/40",
|
|
10260
10428
|
onClick: () => setMobileSidebarOpen(false),
|
|
10261
|
-
children: /* @__PURE__ */
|
|
10429
|
+
children: /* @__PURE__ */ jsx70(
|
|
10262
10430
|
"div",
|
|
10263
10431
|
{
|
|
10264
10432
|
className: "h-full w-fit flex transform transition-transform duration-300 ease-[cubic-bezier(0.2,0,0,1)]",
|
|
10265
10433
|
onClick: (e) => e.stopPropagation(),
|
|
10266
|
-
children: /* @__PURE__ */
|
|
10434
|
+
children: /* @__PURE__ */ jsx70(
|
|
10267
10435
|
ITSidebar,
|
|
10268
10436
|
{
|
|
10269
10437
|
...sidebar,
|
|
@@ -10280,16 +10448,16 @@ function ITLayout({
|
|
|
10280
10448
|
)
|
|
10281
10449
|
}
|
|
10282
10450
|
);
|
|
10283
|
-
const main = /* @__PURE__ */
|
|
10451
|
+
const main = /* @__PURE__ */ jsx70("main", { className: "flex-1 overflow-y-auto w-full custom-scrollbar relative z-0", children: /* @__PURE__ */ jsx70("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
10452
|
if (sidebarFullHeight) {
|
|
10285
|
-
return /* @__PURE__ */
|
|
10453
|
+
return /* @__PURE__ */ jsxs55(
|
|
10286
10454
|
"div",
|
|
10287
10455
|
{
|
|
10288
10456
|
className: `flex h-screen overflow-hidden w-full relative ${className}`,
|
|
10289
10457
|
style: { backgroundColor: layoutTokens.backgroundColor },
|
|
10290
10458
|
children: [
|
|
10291
10459
|
desktopSidebar,
|
|
10292
|
-
/* @__PURE__ */
|
|
10460
|
+
/* @__PURE__ */ jsxs55("div", { className: "flex flex-col flex-1 min-w-0 overflow-hidden", children: [
|
|
10293
10461
|
topBarNode,
|
|
10294
10462
|
main
|
|
10295
10463
|
] }),
|
|
@@ -10298,9 +10466,9 @@ function ITLayout({
|
|
|
10298
10466
|
}
|
|
10299
10467
|
);
|
|
10300
10468
|
}
|
|
10301
|
-
return /* @__PURE__ */
|
|
10469
|
+
return /* @__PURE__ */ jsxs55("div", { className: `flex flex-col h-screen overflow-hidden w-full ${className}`, children: [
|
|
10302
10470
|
topBarNode,
|
|
10303
|
-
/* @__PURE__ */
|
|
10471
|
+
/* @__PURE__ */ jsxs55(
|
|
10304
10472
|
"div",
|
|
10305
10473
|
{
|
|
10306
10474
|
className: "flex flex-1 overflow-hidden relative",
|
|
@@ -10324,7 +10492,7 @@ var sizeClasses = {
|
|
|
10324
10492
|
};
|
|
10325
10493
|
|
|
10326
10494
|
// src/components/atoms/loader/loader.tsx
|
|
10327
|
-
import { jsx as
|
|
10495
|
+
import { jsx as jsx71 } from "react/jsx-runtime";
|
|
10328
10496
|
function ITLoader({
|
|
10329
10497
|
size = "md",
|
|
10330
10498
|
variant = "spinner",
|
|
@@ -10339,22 +10507,22 @@ function ITLoader({
|
|
|
10339
10507
|
const bgStyle = isCssValue ? { backgroundColor: resolvedColor } : {};
|
|
10340
10508
|
const colorClass = !isCssValue ? color : "";
|
|
10341
10509
|
if (variant === "spinner") {
|
|
10342
|
-
return /* @__PURE__ */
|
|
10510
|
+
return /* @__PURE__ */ jsx71(
|
|
10343
10511
|
"div",
|
|
10344
10512
|
{
|
|
10345
10513
|
className: `inline-block ${sizeClasses[size]} animate-spin rounded-full border-2 border-solid border-current border-r-transparent align-[-0.125em] motion-reduce:animate-[spin_1.5s_linear_infinite] ${colorClass} ${className}`,
|
|
10346
10514
|
role: "status",
|
|
10347
10515
|
style,
|
|
10348
|
-
children: /* @__PURE__ */
|
|
10516
|
+
children: /* @__PURE__ */ jsx71(ITText, { as: "span", className: "!absolute !-m-px !h-px !w-px !overflow-hidden !whitespace-nowrap !border-0 !p-0 ![clip:rect(0,0,0,0)]", children: "Loading..." })
|
|
10349
10517
|
}
|
|
10350
10518
|
);
|
|
10351
10519
|
}
|
|
10352
10520
|
if (variant === "dots") {
|
|
10353
|
-
return /* @__PURE__ */
|
|
10521
|
+
return /* @__PURE__ */ jsx71(
|
|
10354
10522
|
"div",
|
|
10355
10523
|
{
|
|
10356
10524
|
className: `flex items-center justify-center space-x-2 ${className}`,
|
|
10357
|
-
children: [...Array(3)].map((_, i) => /* @__PURE__ */
|
|
10525
|
+
children: [...Array(3)].map((_, i) => /* @__PURE__ */ jsx71(
|
|
10358
10526
|
"div",
|
|
10359
10527
|
{
|
|
10360
10528
|
className: `${sizeClasses[size.replace(/l|g/, "")]} animate-bounce rounded-full ${colorClass}`,
|
|
@@ -10369,11 +10537,11 @@ function ITLoader({
|
|
|
10369
10537
|
);
|
|
10370
10538
|
}
|
|
10371
10539
|
if (variant === "bar") {
|
|
10372
|
-
return /* @__PURE__ */
|
|
10540
|
+
return /* @__PURE__ */ jsx71(
|
|
10373
10541
|
"div",
|
|
10374
10542
|
{
|
|
10375
10543
|
className: `w-full ${size === "sm" ? "h-1" : size === "md" ? "h-1.5" : size === "lg" ? "h-2" : "h-2.5"} bg-secondary-200 rounded-full overflow-hidden ${className}`,
|
|
10376
|
-
children: /* @__PURE__ */
|
|
10544
|
+
children: /* @__PURE__ */ jsx71(
|
|
10377
10545
|
"div",
|
|
10378
10546
|
{
|
|
10379
10547
|
className: `h-full animate-progress ${colorClass}`,
|
|
@@ -10389,7 +10557,7 @@ function ITLoader({
|
|
|
10389
10557
|
);
|
|
10390
10558
|
}
|
|
10391
10559
|
if (variant === "pulse") {
|
|
10392
|
-
return /* @__PURE__ */
|
|
10560
|
+
return /* @__PURE__ */ jsx71(
|
|
10393
10561
|
"div",
|
|
10394
10562
|
{
|
|
10395
10563
|
className: `rounded-full ${sizeClasses[size]} animate-pulse ${colorClass} ${className}`,
|
|
@@ -10402,9 +10570,9 @@ function ITLoader({
|
|
|
10402
10570
|
|
|
10403
10571
|
// src/components/molecules/stepper/stepper.tsx
|
|
10404
10572
|
import clsx53 from "clsx";
|
|
10405
|
-
import { useEffect as useEffect18, useRef as useRef23, useState as
|
|
10573
|
+
import { useEffect as useEffect18, useRef as useRef23, useState as useState38 } from "react";
|
|
10406
10574
|
import { FaChevronLeft as FaChevronLeft4, FaChevronRight as FaChevronRight5, FaCheck as FaCheck5 } from "react-icons/fa";
|
|
10407
|
-
import { jsx as
|
|
10575
|
+
import { jsx as jsx72, jsxs as jsxs56 } from "react/jsx-runtime";
|
|
10408
10576
|
function ITStepper({
|
|
10409
10577
|
steps,
|
|
10410
10578
|
currentStep,
|
|
@@ -10419,7 +10587,7 @@ function ITStepper({
|
|
|
10419
10587
|
maxContentHeight = "400px",
|
|
10420
10588
|
color = "primary"
|
|
10421
10589
|
}) {
|
|
10422
|
-
const [direction, setDirection] =
|
|
10590
|
+
const [direction, setDirection] = useState38("next");
|
|
10423
10591
|
const contentRef = useRef23(null);
|
|
10424
10592
|
const progressRef = useRef23(null);
|
|
10425
10593
|
const isThemeColor = color in theme.colors;
|
|
@@ -10471,23 +10639,23 @@ function ITStepper({
|
|
|
10471
10639
|
const renderStepContent = (index, isCompleted) => {
|
|
10472
10640
|
const step = steps[index];
|
|
10473
10641
|
if (isCompleted) {
|
|
10474
|
-
return /* @__PURE__ */
|
|
10642
|
+
return /* @__PURE__ */ jsx72(FaCheck5, { className: "w-4 h-4" });
|
|
10475
10643
|
}
|
|
10476
10644
|
if (step.icon && useIcons) {
|
|
10477
|
-
return /* @__PURE__ */
|
|
10645
|
+
return /* @__PURE__ */ jsx72("div", { className: "flex items-center justify-center w-5 h-5", children: step.icon });
|
|
10478
10646
|
}
|
|
10479
|
-
return /* @__PURE__ */
|
|
10647
|
+
return /* @__PURE__ */ jsx72(ITText, { as: "span", className: "text-sm font-semibold", children: index + 1 });
|
|
10480
10648
|
};
|
|
10481
|
-
return /* @__PURE__ */
|
|
10482
|
-
/* @__PURE__ */
|
|
10483
|
-
/* @__PURE__ */
|
|
10649
|
+
return /* @__PURE__ */ jsxs56("div", { className: clsx53("w-full max-w-5xl mx-auto px-4", containerClassName), children: [
|
|
10650
|
+
/* @__PURE__ */ jsxs56("div", { className: "relative mb-8", children: [
|
|
10651
|
+
/* @__PURE__ */ jsx72(
|
|
10484
10652
|
"div",
|
|
10485
10653
|
{
|
|
10486
10654
|
className: "absolute left-6 right-6 top-5 h-1 bg-secondary-200 rounded-full z-0",
|
|
10487
10655
|
"aria-hidden": true
|
|
10488
10656
|
}
|
|
10489
10657
|
),
|
|
10490
|
-
/* @__PURE__ */
|
|
10658
|
+
/* @__PURE__ */ jsx72(
|
|
10491
10659
|
"div",
|
|
10492
10660
|
{
|
|
10493
10661
|
ref: progressRef,
|
|
@@ -10495,11 +10663,11 @@ function ITStepper({
|
|
|
10495
10663
|
"aria-hidden": true
|
|
10496
10664
|
}
|
|
10497
10665
|
),
|
|
10498
|
-
/* @__PURE__ */
|
|
10666
|
+
/* @__PURE__ */ jsx72("div", { className: "flex items-start justify-between space-x-2 relative z-20", children: steps.map((step, idx) => {
|
|
10499
10667
|
const isActive = idx === currentStep;
|
|
10500
10668
|
const isCompleted = idx < currentStep;
|
|
10501
10669
|
const hasIcon = step.icon && useIcons;
|
|
10502
|
-
return /* @__PURE__ */
|
|
10670
|
+
return /* @__PURE__ */ jsx72(
|
|
10503
10671
|
"button",
|
|
10504
10672
|
{
|
|
10505
10673
|
type: "button",
|
|
@@ -10509,8 +10677,8 @@ function ITStepper({
|
|
|
10509
10677
|
"aria-label": `Paso ${idx + 1} ${step.label}`,
|
|
10510
10678
|
className: "flex-1 group",
|
|
10511
10679
|
title: step.label,
|
|
10512
|
-
children: /* @__PURE__ */
|
|
10513
|
-
/* @__PURE__ */
|
|
10680
|
+
children: /* @__PURE__ */ jsxs56("div", { className: "flex flex-col items-center", children: [
|
|
10681
|
+
/* @__PURE__ */ jsx72(
|
|
10514
10682
|
"div",
|
|
10515
10683
|
{
|
|
10516
10684
|
className: clsx53(
|
|
@@ -10524,7 +10692,7 @@ function ITStepper({
|
|
|
10524
10692
|
children: renderStepContent(idx, isCompleted)
|
|
10525
10693
|
}
|
|
10526
10694
|
),
|
|
10527
|
-
/* @__PURE__ */
|
|
10695
|
+
/* @__PURE__ */ jsx72(
|
|
10528
10696
|
ITText,
|
|
10529
10697
|
{
|
|
10530
10698
|
as: "span",
|
|
@@ -10542,7 +10710,7 @@ function ITStepper({
|
|
|
10542
10710
|
);
|
|
10543
10711
|
}) })
|
|
10544
10712
|
] }),
|
|
10545
|
-
/* @__PURE__ */
|
|
10713
|
+
/* @__PURE__ */ jsx72(
|
|
10546
10714
|
"div",
|
|
10547
10715
|
{
|
|
10548
10716
|
ref: contentRef,
|
|
@@ -10558,37 +10726,37 @@ function ITStepper({
|
|
|
10558
10726
|
children: steps[currentStep].content
|
|
10559
10727
|
}
|
|
10560
10728
|
),
|
|
10561
|
-
/* @__PURE__ */
|
|
10562
|
-
/* @__PURE__ */
|
|
10729
|
+
/* @__PURE__ */ jsxs56("div", { className: "flex justify-between items-center mt-6", children: [
|
|
10730
|
+
/* @__PURE__ */ jsx72(
|
|
10563
10731
|
ITButton,
|
|
10564
10732
|
{
|
|
10565
10733
|
variant: "outlined",
|
|
10566
10734
|
color: "secondary",
|
|
10567
10735
|
disabled: currentStep === 0,
|
|
10568
10736
|
onClick: prevStep,
|
|
10569
|
-
children: /* @__PURE__ */
|
|
10570
|
-
/* @__PURE__ */
|
|
10571
|
-
/* @__PURE__ */
|
|
10737
|
+
children: /* @__PURE__ */ jsxs56("div", { className: "flex items-center gap-2", children: [
|
|
10738
|
+
/* @__PURE__ */ jsx72(FaChevronLeft4, {}),
|
|
10739
|
+
/* @__PURE__ */ jsx72(ITText, { as: "span", children: "Atr\xE1s" })
|
|
10572
10740
|
] })
|
|
10573
10741
|
}
|
|
10574
10742
|
),
|
|
10575
|
-
/* @__PURE__ */
|
|
10576
|
-
/* @__PURE__ */
|
|
10743
|
+
/* @__PURE__ */ jsxs56("div", { className: "flex items-center gap-3", children: [
|
|
10744
|
+
/* @__PURE__ */ jsxs56(ITText, { as: "div", className: "text-sm text-secondary-500 mr-2 hidden sm:block", children: [
|
|
10577
10745
|
"Paso ",
|
|
10578
10746
|
currentStep + 1,
|
|
10579
10747
|
" de ",
|
|
10580
10748
|
steps.length
|
|
10581
10749
|
] }),
|
|
10582
|
-
/* @__PURE__ */
|
|
10750
|
+
/* @__PURE__ */ jsx72(
|
|
10583
10751
|
ITButton,
|
|
10584
10752
|
{
|
|
10585
10753
|
variant: "solid",
|
|
10586
10754
|
color,
|
|
10587
10755
|
disabled: disableNext,
|
|
10588
10756
|
onClick: nextStep,
|
|
10589
|
-
children: /* @__PURE__ */
|
|
10590
|
-
/* @__PURE__ */
|
|
10591
|
-
currentStep === steps.length - 1 ? /* @__PURE__ */
|
|
10757
|
+
children: /* @__PURE__ */ jsxs56("div", { className: "flex items-center gap-2", children: [
|
|
10758
|
+
/* @__PURE__ */ jsx72(ITText, { as: "span", children: currentStep === steps.length - 1 ? "Finalizar" : "Siguiente" }),
|
|
10759
|
+
currentStep === steps.length - 1 ? /* @__PURE__ */ jsx72(FaCheck5, {}) : /* @__PURE__ */ jsx72(FaChevronRight5, {})
|
|
10592
10760
|
] })
|
|
10593
10761
|
}
|
|
10594
10762
|
)
|
|
@@ -10598,7 +10766,7 @@ function ITStepper({
|
|
|
10598
10766
|
}
|
|
10599
10767
|
|
|
10600
10768
|
// src/components/theme-provider/themeProvider.tsx
|
|
10601
|
-
import { useState as
|
|
10769
|
+
import { useState as useState39, useEffect as useEffect19, useLayoutEffect as useLayoutEffect4 } from "react";
|
|
10602
10770
|
import { MdPalette, MdClose, MdRefresh } from "react-icons/md";
|
|
10603
10771
|
|
|
10604
10772
|
// src/components/theme-provider/themePresets.ts
|
|
@@ -10776,7 +10944,7 @@ var PRESETS = [
|
|
|
10776
10944
|
];
|
|
10777
10945
|
|
|
10778
10946
|
// src/components/theme-provider/themeProvider.tsx
|
|
10779
|
-
import { jsx as
|
|
10947
|
+
import { jsx as jsx73, jsxs as jsxs57 } from "react/jsx-runtime";
|
|
10780
10948
|
var STORAGE_KEY = "it-theme-palette";
|
|
10781
10949
|
var SHADOW_LEVELS = {
|
|
10782
10950
|
0: {
|
|
@@ -10871,7 +11039,7 @@ function ITThemeProvider({
|
|
|
10871
11039
|
shadow,
|
|
10872
11040
|
appearance = "soft"
|
|
10873
11041
|
}) {
|
|
10874
|
-
const [palette2, setPaletteState] =
|
|
11042
|
+
const [palette2, setPaletteState] = useState39(() => {
|
|
10875
11043
|
const basePalette = {
|
|
10876
11044
|
...DEFAULT_PALETTE,
|
|
10877
11045
|
...theme2,
|
|
@@ -10897,8 +11065,8 @@ function ITThemeProvider({
|
|
|
10897
11065
|
}
|
|
10898
11066
|
return basePalette;
|
|
10899
11067
|
});
|
|
10900
|
-
const [isOpen, setIsOpen] =
|
|
10901
|
-
const [customPresets, setCustomPresets] =
|
|
11068
|
+
const [isOpen, setIsOpen] = useState39(false);
|
|
11069
|
+
const [customPresets, setCustomPresets] = useState39(() => {
|
|
10902
11070
|
try {
|
|
10903
11071
|
const saved = localStorage.getItem("it-theme-custom-presets");
|
|
10904
11072
|
return saved ? JSON.parse(saved) : [];
|
|
@@ -10907,8 +11075,8 @@ function ITThemeProvider({
|
|
|
10907
11075
|
return [];
|
|
10908
11076
|
}
|
|
10909
11077
|
});
|
|
10910
|
-
const [newPresetName, setNewPresetName] =
|
|
10911
|
-
const [isSavingPreset, setIsSavingPreset] =
|
|
11078
|
+
const [newPresetName, setNewPresetName] = useState39("");
|
|
11079
|
+
const [isSavingPreset, setIsSavingPreset] = useState39(false);
|
|
10912
11080
|
const handleSavePreset = () => {
|
|
10913
11081
|
if (!newPresetName.trim()) return;
|
|
10914
11082
|
const newPreset = {
|
|
@@ -10927,8 +11095,8 @@ function ITThemeProvider({
|
|
|
10927
11095
|
setCustomPresets(updated);
|
|
10928
11096
|
localStorage.setItem("it-theme-custom-presets", JSON.stringify(updated));
|
|
10929
11097
|
};
|
|
10930
|
-
const [resolvedTheme, setResolvedTheme] =
|
|
10931
|
-
const [darkModeMode, setDarkModeMode] =
|
|
11098
|
+
const [resolvedTheme, setResolvedTheme] = useState39("light");
|
|
11099
|
+
const [darkModeMode, setDarkModeMode] = useState39(
|
|
10932
11100
|
() => {
|
|
10933
11101
|
const saved = localStorage.getItem("it-theme-dark-mode");
|
|
10934
11102
|
if (saved === "light" || saved === "dark" || saved === "system") {
|
|
@@ -12173,14 +12341,14 @@ function ITThemeProvider({
|
|
|
12173
12341
|
const isNested = colorKey.includes(".");
|
|
12174
12342
|
const label = isNested ? colorKey.split(".")[1] : colorKey;
|
|
12175
12343
|
const value = getNestedValue3(palette2, colorKey);
|
|
12176
|
-
return /* @__PURE__ */
|
|
12344
|
+
return /* @__PURE__ */ jsxs57(
|
|
12177
12345
|
"div",
|
|
12178
12346
|
{
|
|
12179
12347
|
className: "flex items-center justify-between p-3 rounded-xl border border-slate-100 dark:border-slate-800 bg-white dark:bg-slate-900/50 gap-3 hover:border-slate-200 dark:hover:border-slate-700 transition-colors",
|
|
12180
12348
|
children: [
|
|
12181
|
-
/* @__PURE__ */
|
|
12182
|
-
/* @__PURE__ */
|
|
12183
|
-
/* @__PURE__ */
|
|
12349
|
+
/* @__PURE__ */ jsxs57("div", { className: "flex items-center gap-3 flex-1 min-w-0", children: [
|
|
12350
|
+
/* @__PURE__ */ jsxs57("div", { className: "relative w-10 h-10 rounded-xl border-2 border-slate-200 dark:border-slate-700 overflow-hidden cursor-pointer flex-shrink-0 shadow-sm hover:scale-105 transition-transform", children: [
|
|
12351
|
+
/* @__PURE__ */ jsx73(
|
|
12184
12352
|
"input",
|
|
12185
12353
|
{
|
|
12186
12354
|
type: "color",
|
|
@@ -12189,23 +12357,23 @@ function ITThemeProvider({
|
|
|
12189
12357
|
className: "absolute inset-0 opacity-0 cursor-pointer w-full h-full"
|
|
12190
12358
|
}
|
|
12191
12359
|
),
|
|
12192
|
-
/* @__PURE__ */
|
|
12360
|
+
/* @__PURE__ */ jsx73("div", { className: "w-full h-full", style: { backgroundColor: value } })
|
|
12193
12361
|
] }),
|
|
12194
|
-
/* @__PURE__ */
|
|
12195
|
-
/* @__PURE__ */
|
|
12196
|
-
/* @__PURE__ */
|
|
12197
|
-
/* @__PURE__ */
|
|
12362
|
+
/* @__PURE__ */ jsxs57("div", { className: "flex flex-col min-w-0", children: [
|
|
12363
|
+
/* @__PURE__ */ jsx73(ITText, { as: "span", className: "text-xs font-bold text-slate-700 dark:text-slate-300 truncate capitalize", children: label.replace(/([A-Z])/g, " $1").trim() }),
|
|
12364
|
+
/* @__PURE__ */ jsxs57("div", { className: "flex items-center gap-2 mt-0.5", children: [
|
|
12365
|
+
/* @__PURE__ */ jsx73(
|
|
12198
12366
|
"span",
|
|
12199
12367
|
{
|
|
12200
12368
|
className: "w-3 h-3 rounded-full border border-slate-200 dark:border-slate-600",
|
|
12201
12369
|
style: { backgroundColor: value }
|
|
12202
12370
|
}
|
|
12203
12371
|
),
|
|
12204
|
-
/* @__PURE__ */
|
|
12372
|
+
/* @__PURE__ */ jsx73(ITText, { as: "span", className: "font-mono text-[11px] text-slate-400", children: value })
|
|
12205
12373
|
] })
|
|
12206
12374
|
] })
|
|
12207
12375
|
] }),
|
|
12208
|
-
/* @__PURE__ */
|
|
12376
|
+
/* @__PURE__ */ jsx73(
|
|
12209
12377
|
"input",
|
|
12210
12378
|
{
|
|
12211
12379
|
type: "text",
|
|
@@ -12224,14 +12392,14 @@ function ITThemeProvider({
|
|
|
12224
12392
|
isCustom
|
|
12225
12393
|
}) => {
|
|
12226
12394
|
const isSelected = JSON.stringify(preset.colors) === JSON.stringify(palette2);
|
|
12227
|
-
return /* @__PURE__ */
|
|
12395
|
+
return /* @__PURE__ */ jsxs57(
|
|
12228
12396
|
"button",
|
|
12229
12397
|
{
|
|
12230
12398
|
type: "button",
|
|
12231
12399
|
onClick: () => applyPreset(preset.colors),
|
|
12232
12400
|
className: `relative flex flex-col items-start p-2.5 rounded-xl border text-left transition-all group ${isSelected ? "border-primary-500 bg-primary-500/5 shadow-sm ring-1 ring-primary-500/20" : "border-slate-200 dark:border-slate-700 bg-white dark:bg-slate-900/50 hover:border-slate-300 dark:hover:border-slate-600"}`,
|
|
12233
12401
|
children: [
|
|
12234
|
-
isCustom && /* @__PURE__ */
|
|
12402
|
+
isCustom && /* @__PURE__ */ jsx73(
|
|
12235
12403
|
"span",
|
|
12236
12404
|
{
|
|
12237
12405
|
onClick: (e) => {
|
|
@@ -12240,11 +12408,11 @@ function ITThemeProvider({
|
|
|
12240
12408
|
},
|
|
12241
12409
|
className: "absolute top-1.5 right-1.5 opacity-0 group-hover:opacity-100 p-0.5 rounded-md hover:bg-danger-500/10 hover:text-danger-500 text-slate-400 dark:text-slate-500 cursor-pointer transition-all z-10",
|
|
12242
12410
|
title: "Eliminar",
|
|
12243
|
-
children: /* @__PURE__ */
|
|
12411
|
+
children: /* @__PURE__ */ jsx73(MdClose, { size: 12 })
|
|
12244
12412
|
}
|
|
12245
12413
|
),
|
|
12246
|
-
/* @__PURE__ */
|
|
12247
|
-
/* @__PURE__ */
|
|
12414
|
+
/* @__PURE__ */ jsx73(ITText, { as: "span", className: "text-xs font-semibold truncate w-full mb-1.5 pr-4 text-slate-700 dark:text-slate-300", children: preset.name }),
|
|
12415
|
+
/* @__PURE__ */ jsx73("div", { className: "flex gap-1", children: ["primary", "secondary", "ternary", "success"].map((c) => /* @__PURE__ */ jsx73(
|
|
12248
12416
|
"span",
|
|
12249
12417
|
{
|
|
12250
12418
|
className: "w-3 h-3 rounded-full border border-black/10",
|
|
@@ -12256,7 +12424,7 @@ function ITThemeProvider({
|
|
|
12256
12424
|
}
|
|
12257
12425
|
);
|
|
12258
12426
|
};
|
|
12259
|
-
return /* @__PURE__ */
|
|
12427
|
+
return /* @__PURE__ */ jsxs57(
|
|
12260
12428
|
ITThemeContext.Provider,
|
|
12261
12429
|
{
|
|
12262
12430
|
value: {
|
|
@@ -12273,28 +12441,28 @@ function ITThemeProvider({
|
|
|
12273
12441
|
},
|
|
12274
12442
|
children: [
|
|
12275
12443
|
children,
|
|
12276
|
-
showFab && /* @__PURE__ */
|
|
12444
|
+
showFab && /* @__PURE__ */ jsx73(
|
|
12277
12445
|
"button",
|
|
12278
12446
|
{
|
|
12279
12447
|
onClick: () => setIsOpen((prev) => !prev),
|
|
12280
12448
|
className: "it-theme-fab it-theme-bounce",
|
|
12281
12449
|
style: { backgroundColor: "var(--color-primary)" },
|
|
12282
12450
|
"aria-label": "Configurar Paleta de Colores",
|
|
12283
|
-
children: /* @__PURE__ */
|
|
12451
|
+
children: /* @__PURE__ */ jsx73(MdPalette, { size: 28 })
|
|
12284
12452
|
}
|
|
12285
12453
|
),
|
|
12286
|
-
showFab && /* @__PURE__ */
|
|
12454
|
+
showFab && /* @__PURE__ */ jsx73(
|
|
12287
12455
|
ITDialog,
|
|
12288
12456
|
{
|
|
12289
12457
|
isOpen,
|
|
12290
12458
|
onClose: () => setIsOpen(false),
|
|
12291
12459
|
title: "Dise\xF1ador de Temas",
|
|
12292
12460
|
useFormHeader: true,
|
|
12293
|
-
children: /* @__PURE__ */
|
|
12294
|
-
/* @__PURE__ */
|
|
12295
|
-
/* @__PURE__ */
|
|
12296
|
-
/* @__PURE__ */
|
|
12297
|
-
/* @__PURE__ */
|
|
12461
|
+
children: /* @__PURE__ */ jsxs57("div", { className: "flex gap-6 h-[580px]", children: [
|
|
12462
|
+
/* @__PURE__ */ jsxs57("div", { className: "w-64 flex-shrink-0 flex flex-col gap-5 overflow-y-auto pr-1", children: [
|
|
12463
|
+
/* @__PURE__ */ jsxs57("div", { children: [
|
|
12464
|
+
/* @__PURE__ */ jsx73(ITText, { as: "span", className: "text-[11px] font-bold uppercase tracking-wider text-slate-400 dark:text-slate-500 mb-2.5 block", children: "Apariencia" }),
|
|
12465
|
+
/* @__PURE__ */ jsx73(
|
|
12298
12466
|
ITSegmentedControl,
|
|
12299
12467
|
{
|
|
12300
12468
|
options: [
|
|
@@ -12308,16 +12476,16 @@ function ITThemeProvider({
|
|
|
12308
12476
|
}
|
|
12309
12477
|
)
|
|
12310
12478
|
] }),
|
|
12311
|
-
/* @__PURE__ */
|
|
12312
|
-
/* @__PURE__ */
|
|
12313
|
-
/* @__PURE__ */
|
|
12479
|
+
/* @__PURE__ */ jsxs57("div", { children: [
|
|
12480
|
+
/* @__PURE__ */ jsx73("div", { className: "flex items-center justify-between mb-2.5", children: /* @__PURE__ */ jsx73(ITText, { as: "span", className: "text-[11px] font-bold uppercase tracking-wider text-slate-400 dark:text-slate-500", children: "Presets" }) }),
|
|
12481
|
+
/* @__PURE__ */ jsx73("div", { className: "grid grid-cols-2 gap-2", children: PRESETS.map((preset) => /* @__PURE__ */ jsx73(PresetCard, { preset }, preset.name)) })
|
|
12314
12482
|
] }),
|
|
12315
|
-
customPresets.length > 0 && /* @__PURE__ */
|
|
12316
|
-
/* @__PURE__ */
|
|
12317
|
-
/* @__PURE__ */
|
|
12483
|
+
customPresets.length > 0 && /* @__PURE__ */ jsxs57("div", { children: [
|
|
12484
|
+
/* @__PURE__ */ jsx73(ITText, { as: "span", className: "text-[11px] font-bold uppercase tracking-wider text-slate-400 dark:text-slate-500 mb-2.5 block", children: "Mis Temas" }),
|
|
12485
|
+
/* @__PURE__ */ jsx73("div", { className: "flex flex-col gap-1.5", children: customPresets.map((preset) => /* @__PURE__ */ jsx73(PresetCard, { preset, isCustom: true }, preset.name)) })
|
|
12318
12486
|
] }),
|
|
12319
|
-
isSavingPreset && /* @__PURE__ */
|
|
12320
|
-
/* @__PURE__ */
|
|
12487
|
+
isSavingPreset && /* @__PURE__ */ jsxs57("div", { className: "flex flex-col gap-2 p-3 rounded-xl border border-slate-200 dark:border-slate-700 bg-white dark:bg-slate-900/50", children: [
|
|
12488
|
+
/* @__PURE__ */ jsx73(
|
|
12321
12489
|
ITInput,
|
|
12322
12490
|
{
|
|
12323
12491
|
name: "presetName",
|
|
@@ -12335,8 +12503,8 @@ function ITThemeProvider({
|
|
|
12335
12503
|
}
|
|
12336
12504
|
}
|
|
12337
12505
|
),
|
|
12338
|
-
/* @__PURE__ */
|
|
12339
|
-
/* @__PURE__ */
|
|
12506
|
+
/* @__PURE__ */ jsxs57("div", { className: "flex gap-2", children: [
|
|
12507
|
+
/* @__PURE__ */ jsx73(
|
|
12340
12508
|
ITButton,
|
|
12341
12509
|
{
|
|
12342
12510
|
label: "Guardar",
|
|
@@ -12347,7 +12515,7 @@ function ITThemeProvider({
|
|
|
12347
12515
|
className: "flex-1"
|
|
12348
12516
|
}
|
|
12349
12517
|
),
|
|
12350
|
-
/* @__PURE__ */
|
|
12518
|
+
/* @__PURE__ */ jsx73(
|
|
12351
12519
|
ITButton,
|
|
12352
12520
|
{
|
|
12353
12521
|
label: "X",
|
|
@@ -12361,31 +12529,31 @@ function ITThemeProvider({
|
|
|
12361
12529
|
)
|
|
12362
12530
|
] })
|
|
12363
12531
|
] }),
|
|
12364
|
-
!isSavingPreset && /* @__PURE__ */
|
|
12532
|
+
!isSavingPreset && /* @__PURE__ */ jsx73(
|
|
12365
12533
|
ITButton,
|
|
12366
12534
|
{
|
|
12367
12535
|
variant: "outlined",
|
|
12368
|
-
icon: /* @__PURE__ */
|
|
12536
|
+
icon: /* @__PURE__ */ jsx73(MdPalette, { size: 14 }),
|
|
12369
12537
|
label: "Guardar actual",
|
|
12370
12538
|
onClick: () => setIsSavingPreset(true),
|
|
12371
12539
|
size: "sm"
|
|
12372
12540
|
}
|
|
12373
12541
|
),
|
|
12374
|
-
/* @__PURE__ */
|
|
12542
|
+
/* @__PURE__ */ jsx73(
|
|
12375
12543
|
ITButton,
|
|
12376
12544
|
{
|
|
12377
12545
|
variant: "outlined",
|
|
12378
12546
|
color: "danger",
|
|
12379
|
-
icon: /* @__PURE__ */
|
|
12547
|
+
icon: /* @__PURE__ */ jsx73(MdRefresh, { size: 14 }),
|
|
12380
12548
|
label: "Restaurar default",
|
|
12381
12549
|
onClick: resetTheme,
|
|
12382
12550
|
size: "sm"
|
|
12383
12551
|
}
|
|
12384
12552
|
)
|
|
12385
12553
|
] }),
|
|
12386
|
-
/* @__PURE__ */
|
|
12387
|
-
/* @__PURE__ */
|
|
12388
|
-
/* @__PURE__ */
|
|
12554
|
+
/* @__PURE__ */ jsx73(ITDivider, { orientation: "vertical" }),
|
|
12555
|
+
/* @__PURE__ */ jsxs57("div", { className: "flex-1 flex flex-col min-w-0", children: [
|
|
12556
|
+
/* @__PURE__ */ jsx73(
|
|
12389
12557
|
tabs_default,
|
|
12390
12558
|
{
|
|
12391
12559
|
variant: "pill",
|
|
@@ -12393,7 +12561,7 @@ function ITThemeProvider({
|
|
|
12393
12561
|
{
|
|
12394
12562
|
id: "brand",
|
|
12395
12563
|
label: "Marca",
|
|
12396
|
-
content: /* @__PURE__ */
|
|
12564
|
+
content: /* @__PURE__ */ jsx73("div", { className: "grid grid-cols-1 sm:grid-cols-2 gap-3 max-h-[480px] overflow-y-auto pr-2 mt-3", children: [
|
|
12397
12565
|
"primary",
|
|
12398
12566
|
"secondary",
|
|
12399
12567
|
"ternary",
|
|
@@ -12402,35 +12570,35 @@ function ITThemeProvider({
|
|
|
12402
12570
|
"info",
|
|
12403
12571
|
"alert",
|
|
12404
12572
|
"warning"
|
|
12405
|
-
].map((key) => /* @__PURE__ */
|
|
12573
|
+
].map((key) => /* @__PURE__ */ jsx73(ColorRow, { colorKey: key }, key)) })
|
|
12406
12574
|
},
|
|
12407
12575
|
{
|
|
12408
12576
|
id: "layout",
|
|
12409
12577
|
label: "Nav & Sidebar",
|
|
12410
|
-
content: /* @__PURE__ */
|
|
12578
|
+
content: /* @__PURE__ */ jsx73("div", { className: "grid grid-cols-1 sm:grid-cols-2 gap-3 max-h-[480px] overflow-y-auto pr-2 mt-3", children: [
|
|
12411
12579
|
"layout.sidebarBg",
|
|
12412
12580
|
"layout.sidebarText",
|
|
12413
12581
|
"layout.navbarBg",
|
|
12414
12582
|
"layout.navbarText"
|
|
12415
|
-
].map((key) => /* @__PURE__ */
|
|
12583
|
+
].map((key) => /* @__PURE__ */ jsx73(ColorRow, { colorKey: key }, key)) })
|
|
12416
12584
|
},
|
|
12417
12585
|
{
|
|
12418
12586
|
id: "tables",
|
|
12419
12587
|
label: "Tablas",
|
|
12420
|
-
content: /* @__PURE__ */
|
|
12588
|
+
content: /* @__PURE__ */ jsx73("div", { className: "grid grid-cols-1 sm:grid-cols-2 gap-3 max-h-[480px] overflow-y-auto pr-2 mt-3", children: [
|
|
12421
12589
|
"table.headerBg",
|
|
12422
12590
|
"table.headerText",
|
|
12423
12591
|
"table.rowBg",
|
|
12424
12592
|
"table.rowText",
|
|
12425
12593
|
"table.rowHover"
|
|
12426
|
-
].map((key) => /* @__PURE__ */
|
|
12594
|
+
].map((key) => /* @__PURE__ */ jsx73(ColorRow, { colorKey: key }, key)) })
|
|
12427
12595
|
}
|
|
12428
12596
|
]
|
|
12429
12597
|
}
|
|
12430
12598
|
),
|
|
12431
|
-
/* @__PURE__ */
|
|
12432
|
-
/* @__PURE__ */
|
|
12433
|
-
/* @__PURE__ */
|
|
12599
|
+
/* @__PURE__ */ jsxs57("div", { className: "flex items-center justify-end gap-3 mt-auto pt-4 border-t border-slate-100 dark:border-slate-800", children: [
|
|
12600
|
+
/* @__PURE__ */ jsx73(ITText, { as: "p", className: "text-[11px] text-slate-400 mr-auto", children: "Los cambios se guardan autom\xE1ticamente" }),
|
|
12601
|
+
/* @__PURE__ */ jsx73(
|
|
12434
12602
|
ITButton,
|
|
12435
12603
|
{
|
|
12436
12604
|
label: "Cerrar",
|
|
@@ -12490,6 +12658,7 @@ export {
|
|
|
12490
12658
|
ITInput,
|
|
12491
12659
|
ITInputNumber,
|
|
12492
12660
|
ITLayout,
|
|
12661
|
+
line_bar_chart_default as ITLineBarChart,
|
|
12493
12662
|
ITLoader,
|
|
12494
12663
|
ITMaskedInput,
|
|
12495
12664
|
ITMultiSelect,
|