@axzydev/axzy_ui_system 1.4.1 → 1.4.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +2 -2
- package/dist/index.cjs +151 -67
- package/dist/index.cjs.map +1 -1
- package/dist/index.css +1 -1
- package/dist/index.d.cts +46 -4
- package/dist/index.d.ts +46 -4
- package/dist/index.js +151 -67
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
- package/src/App.tsx +3 -0
- package/src/components/organisms/sidebar/sidebar.doc.mdx +47 -2
- package/src/components/organisms/sidebar/sidebar.props.ts +40 -2
- package/src/components/organisms/sidebar/sidebar.stories.tsx +59 -1
- package/src/components/organisms/sidebar/sidebar.tsx +111 -15
- package/src/index.ts +2 -1
- package/src/sandbox/LandingShowcase.tsx +1 -1
- package/src/sandbox/navigation.ts +1 -0
- package/src/showcases/HelpShowcase.tsx +497 -0
- package/src/showcases/StructureShowcases.tsx +58 -5
package/dist/index.js
CHANGED
|
@@ -7575,6 +7575,7 @@ function ITSegmentedControl({
|
|
|
7575
7575
|
|
|
7576
7576
|
// src/components/organisms/sidebar/sidebar.tsx
|
|
7577
7577
|
import { useEffect as useEffect13, useRef as useRef20, useState as useState27 } from "react";
|
|
7578
|
+
import clsx40 from "clsx";
|
|
7578
7579
|
import { FaChevronDown as FaChevronDown4 } from "react-icons/fa";
|
|
7579
7580
|
import { jsx as jsx56, jsxs as jsxs43 } from "react/jsx-runtime";
|
|
7580
7581
|
function isSubItemGroup(entry) {
|
|
@@ -7593,7 +7594,8 @@ function ITSidebar({
|
|
|
7593
7594
|
onItemClick,
|
|
7594
7595
|
onSubItemClick,
|
|
7595
7596
|
subitemConnector = "dot",
|
|
7596
|
-
header
|
|
7597
|
+
header,
|
|
7598
|
+
notification
|
|
7597
7599
|
}) {
|
|
7598
7600
|
const [expandedItems, setExpandedItems] = useState27(/* @__PURE__ */ new Set());
|
|
7599
7601
|
const [isHovering, setIsHovering] = useState27(false);
|
|
@@ -7738,6 +7740,87 @@ function ITSidebar({
|
|
|
7738
7740
|
/* @__PURE__ */ jsx56("ul", { "aria-labelledby": headingId, className: "flex flex-col gap-0", children: group.items.map(renderSubItem) })
|
|
7739
7741
|
] }, group.id);
|
|
7740
7742
|
};
|
|
7743
|
+
const renderNotification = () => {
|
|
7744
|
+
if (!notification) return null;
|
|
7745
|
+
const {
|
|
7746
|
+
count,
|
|
7747
|
+
icon,
|
|
7748
|
+
label = "Notificaciones",
|
|
7749
|
+
onClick,
|
|
7750
|
+
badgeProps
|
|
7751
|
+
} = notification;
|
|
7752
|
+
const { className: badgeClassName, ...badgeRest } = badgeProps ?? {};
|
|
7753
|
+
const badge = /* @__PURE__ */ jsx56(
|
|
7754
|
+
ITBadget,
|
|
7755
|
+
{
|
|
7756
|
+
color: "danger",
|
|
7757
|
+
size: "sm",
|
|
7758
|
+
...badgeRest,
|
|
7759
|
+
className: clsx40("shadow-md", badgeClassName),
|
|
7760
|
+
children: String(count)
|
|
7761
|
+
}
|
|
7762
|
+
);
|
|
7763
|
+
if (isSidebarCollapsed) {
|
|
7764
|
+
return /* @__PURE__ */ jsxs43(
|
|
7765
|
+
"button",
|
|
7766
|
+
{
|
|
7767
|
+
type: "button",
|
|
7768
|
+
"aria-label": label,
|
|
7769
|
+
title: label,
|
|
7770
|
+
onClick,
|
|
7771
|
+
className: "relative flex items-center justify-center w-full p-2 mb-1 rounded-xl transition-all duration-300",
|
|
7772
|
+
style: { color: "var(--it-sidebar-icon-color, var(--color-secondary-500))" },
|
|
7773
|
+
onMouseEnter: (e) => {
|
|
7774
|
+
e.currentTarget.style.backgroundColor = "var(--it-sidebar-hover-bg, var(--color-secondary-100))";
|
|
7775
|
+
},
|
|
7776
|
+
onMouseLeave: (e) => {
|
|
7777
|
+
e.currentTarget.style.backgroundColor = "transparent";
|
|
7778
|
+
},
|
|
7779
|
+
children: [
|
|
7780
|
+
icon && /* @__PURE__ */ jsx56("span", { className: "flex items-center justify-center text-[1.05rem]", children: icon }),
|
|
7781
|
+
/* @__PURE__ */ jsx56("span", { className: "absolute top-0.5 right-0.5 pointer-events-none", children: badge })
|
|
7782
|
+
]
|
|
7783
|
+
}
|
|
7784
|
+
);
|
|
7785
|
+
}
|
|
7786
|
+
return /* @__PURE__ */ jsxs43(
|
|
7787
|
+
"button",
|
|
7788
|
+
{
|
|
7789
|
+
type: "button",
|
|
7790
|
+
"aria-label": label,
|
|
7791
|
+
title: label,
|
|
7792
|
+
onClick,
|
|
7793
|
+
className: "flex items-center gap-2.5 w-full text-left px-3 py-2 mb-1 rounded-xl transition-all duration-300",
|
|
7794
|
+
style: { color: "var(--it-sidebar-label-color, var(--color-secondary-600))" },
|
|
7795
|
+
onMouseEnter: (e) => {
|
|
7796
|
+
e.currentTarget.style.backgroundColor = "var(--it-sidebar-hover-bg, var(--color-secondary-100))";
|
|
7797
|
+
},
|
|
7798
|
+
onMouseLeave: (e) => {
|
|
7799
|
+
e.currentTarget.style.backgroundColor = "transparent";
|
|
7800
|
+
},
|
|
7801
|
+
children: [
|
|
7802
|
+
icon && /* @__PURE__ */ jsx56(
|
|
7803
|
+
"span",
|
|
7804
|
+
{
|
|
7805
|
+
className: "flex-shrink-0 flex items-center justify-center text-[1.05rem]",
|
|
7806
|
+
style: { color: "var(--it-sidebar-icon-color, #9ca3af)" },
|
|
7807
|
+
children: icon
|
|
7808
|
+
}
|
|
7809
|
+
),
|
|
7810
|
+
/* @__PURE__ */ jsx56(
|
|
7811
|
+
ITText,
|
|
7812
|
+
{
|
|
7813
|
+
as: "span",
|
|
7814
|
+
className: "truncate tracking-wide",
|
|
7815
|
+
style: { fontSize: "0.8rem", fontWeight: 500 },
|
|
7816
|
+
children: label
|
|
7817
|
+
}
|
|
7818
|
+
),
|
|
7819
|
+
/* @__PURE__ */ jsx56("span", { className: "ml-auto flex-shrink-0", children: badge })
|
|
7820
|
+
]
|
|
7821
|
+
}
|
|
7822
|
+
);
|
|
7823
|
+
};
|
|
7741
7824
|
return /* @__PURE__ */ jsxs43(
|
|
7742
7825
|
"aside",
|
|
7743
7826
|
{
|
|
@@ -7759,9 +7842,11 @@ function ITSidebar({
|
|
|
7759
7842
|
},
|
|
7760
7843
|
children: [
|
|
7761
7844
|
header && !isSidebarCollapsed && /* @__PURE__ */ jsx56("div", { className: "px-4 pt-4 pb-1 flex-shrink-0", children: header }),
|
|
7845
|
+
notification && /* @__PURE__ */ jsx56("div", { className: "px-4 pt-3 flex-shrink-0", children: renderNotification() }),
|
|
7762
7846
|
/* @__PURE__ */ jsx56("nav", { "aria-label": "Componentes de la librer\xEDa", className: "flex-1 py-4 overflow-y-auto overflow-x-hidden custom-scrollbar px-4", children: /* @__PURE__ */ jsx56("ul", { className: "space-y-1", children: navigationItems.map((item) => {
|
|
7763
7847
|
const hasSubmenu = !!item.subitems && item.subitems.length > 0;
|
|
7764
7848
|
const submenuId = `it-sidebar-submenu-${item.id}`;
|
|
7849
|
+
const { className: badgeClassName, ...badgeRest } = item.badgeProps ?? {};
|
|
7765
7850
|
return /* @__PURE__ */ jsxs43("li", { className: "relative group/navitem", children: [
|
|
7766
7851
|
/* @__PURE__ */ jsxs43(
|
|
7767
7852
|
"div",
|
|
@@ -7838,19 +7923,18 @@ function ITSidebar({
|
|
|
7838
7923
|
children: /* @__PURE__ */ jsx56(FaChevronDown4, { className: "w-3 h-3" })
|
|
7839
7924
|
}
|
|
7840
7925
|
),
|
|
7841
|
-
item.badge && /* @__PURE__ */ jsx56(
|
|
7842
|
-
|
|
7926
|
+
item.badge != null && item.badge !== "" && /* @__PURE__ */ jsx56(
|
|
7927
|
+
ITBadget,
|
|
7843
7928
|
{
|
|
7844
|
-
|
|
7845
|
-
|
|
7846
|
-
|
|
7847
|
-
|
|
7848
|
-
|
|
7849
|
-
|
|
7850
|
-
|
|
7851
|
-
|
|
7852
|
-
|
|
7853
|
-
children: isSidebarCollapsed ? "" : item.badge
|
|
7929
|
+
color: "primary",
|
|
7930
|
+
size: "sm",
|
|
7931
|
+
...badgeRest,
|
|
7932
|
+
className: clsx40(
|
|
7933
|
+
"absolute shadow-md",
|
|
7934
|
+
isSidebarCollapsed ? "top-0.5 right-0.5" : "right-3 top-1/2 -translate-y-1/2",
|
|
7935
|
+
badgeClassName
|
|
7936
|
+
),
|
|
7937
|
+
children: String(item.badge)
|
|
7854
7938
|
}
|
|
7855
7939
|
)
|
|
7856
7940
|
]
|
|
@@ -7916,7 +8000,7 @@ function ITSidebar({
|
|
|
7916
8000
|
|
|
7917
8001
|
// src/components/atoms/slide/slide.tsx
|
|
7918
8002
|
import { useState as useState28, useEffect as useEffect14 } from "react";
|
|
7919
|
-
import
|
|
8003
|
+
import clsx41 from "clsx";
|
|
7920
8004
|
import { jsx as jsx57 } from "react/jsx-runtime";
|
|
7921
8005
|
function ITSlideToggle({
|
|
7922
8006
|
onToggle,
|
|
@@ -7974,7 +8058,7 @@ function ITSlideToggle({
|
|
|
7974
8058
|
"div",
|
|
7975
8059
|
{
|
|
7976
8060
|
onClick: toggleSwitch,
|
|
7977
|
-
className:
|
|
8061
|
+
className: clsx41(
|
|
7978
8062
|
"flex items-center rounded-full p-1 transition-colors duration-300",
|
|
7979
8063
|
container,
|
|
7980
8064
|
disabled ? "opacity-50 cursor-not-allowed" : "cursor-pointer",
|
|
@@ -7993,7 +8077,7 @@ function ITSlideToggle({
|
|
|
7993
8077
|
children: /* @__PURE__ */ jsx57(
|
|
7994
8078
|
"div",
|
|
7995
8079
|
{
|
|
7996
|
-
className:
|
|
8080
|
+
className: clsx41(
|
|
7997
8081
|
"bg-white rounded-full shadow-md transform transition-transform duration-300 pointer-events-none",
|
|
7998
8082
|
knob,
|
|
7999
8083
|
isOn ? translate : "translate-x-0"
|
|
@@ -8005,7 +8089,7 @@ function ITSlideToggle({
|
|
|
8005
8089
|
}
|
|
8006
8090
|
|
|
8007
8091
|
// src/components/atoms/slider/slider.tsx
|
|
8008
|
-
import
|
|
8092
|
+
import clsx42 from "clsx";
|
|
8009
8093
|
import { jsx as jsx58, jsxs as jsxs44 } from "react/jsx-runtime";
|
|
8010
8094
|
function ITSlider({
|
|
8011
8095
|
value,
|
|
@@ -8017,7 +8101,7 @@ function ITSlider({
|
|
|
8017
8101
|
disabled = false,
|
|
8018
8102
|
className
|
|
8019
8103
|
}) {
|
|
8020
|
-
return /* @__PURE__ */ jsxs44("div", { className:
|
|
8104
|
+
return /* @__PURE__ */ jsxs44("div", { className: clsx42("flex flex-col gap-1.5", className), children: [
|
|
8021
8105
|
label && /* @__PURE__ */ jsxs44(ITText, { as: "label", className: "text-xs font-semibold text-secondary-600 dark:text-secondary-400", children: [
|
|
8022
8106
|
label,
|
|
8023
8107
|
": ",
|
|
@@ -8033,7 +8117,7 @@ function ITSlider({
|
|
|
8033
8117
|
value,
|
|
8034
8118
|
onChange: (e) => onChange(Number(e.target.value)),
|
|
8035
8119
|
disabled,
|
|
8036
|
-
className:
|
|
8120
|
+
className: clsx42(
|
|
8037
8121
|
"w-full h-1.5 appearance-none rounded-full outline-none cursor-pointer",
|
|
8038
8122
|
"bg-secondary-200 dark:bg-secondary-700",
|
|
8039
8123
|
"accent-primary-500",
|
|
@@ -8053,7 +8137,7 @@ function ITSlider({
|
|
|
8053
8137
|
}
|
|
8054
8138
|
|
|
8055
8139
|
// src/components/molecules/stat-card/stat-card.tsx
|
|
8056
|
-
import
|
|
8140
|
+
import clsx43 from "clsx";
|
|
8057
8141
|
import { jsx as jsx59, jsxs as jsxs45 } from "react/jsx-runtime";
|
|
8058
8142
|
var trendColors = {
|
|
8059
8143
|
up: "text-emerald-600 bg-emerald-50 dark:text-emerald-400 dark:bg-emerald-950/30",
|
|
@@ -8074,7 +8158,7 @@ function ITStatCard({
|
|
|
8074
8158
|
return /* @__PURE__ */ jsxs45(
|
|
8075
8159
|
"div",
|
|
8076
8160
|
{
|
|
8077
|
-
className:
|
|
8161
|
+
className: clsx43("rounded-xl p-4 border border-slate-100 dark:border-slate-800", color, className),
|
|
8078
8162
|
style,
|
|
8079
8163
|
onClick,
|
|
8080
8164
|
role: onClick ? "button" : void 0,
|
|
@@ -8086,7 +8170,7 @@ function ITStatCard({
|
|
|
8086
8170
|
] }),
|
|
8087
8171
|
/* @__PURE__ */ jsxs45("div", { className: "flex items-baseline gap-2", children: [
|
|
8088
8172
|
/* @__PURE__ */ jsx59(ITText, { as: "span", className: "text-2xl font-bold text-slate-800 dark:text-white", children: value }),
|
|
8089
|
-
trend && /* @__PURE__ */ jsx59(ITText, { as: "span", className:
|
|
8173
|
+
trend && /* @__PURE__ */ jsx59(ITText, { as: "span", className: clsx43("text-[11px] font-semibold px-1.5 py-0.5 rounded-md", trendColors[trendDirection]), children: trend })
|
|
8090
8174
|
] })
|
|
8091
8175
|
]
|
|
8092
8176
|
}
|
|
@@ -8094,7 +8178,7 @@ function ITStatCard({
|
|
|
8094
8178
|
}
|
|
8095
8179
|
|
|
8096
8180
|
// src/components/molecules/table/table.tsx
|
|
8097
|
-
import
|
|
8181
|
+
import clsx44 from "clsx";
|
|
8098
8182
|
import React11, { useState as useState29 } from "react";
|
|
8099
8183
|
import {
|
|
8100
8184
|
FaCheck as FaCheck4,
|
|
@@ -8271,7 +8355,7 @@ function ITTable({
|
|
|
8271
8355
|
children: /* @__PURE__ */ jsx60("div", { className: "relative w-10 h-5 bg-secondary-300 rounded-full", children: /* @__PURE__ */ jsx60(
|
|
8272
8356
|
"div",
|
|
8273
8357
|
{
|
|
8274
|
-
className:
|
|
8358
|
+
className: clsx44(
|
|
8275
8359
|
"absolute top-0.5 w-4 h-4 rounded-full transition-all duration-300 shadow-sm",
|
|
8276
8360
|
{
|
|
8277
8361
|
"left-0.5 bg-secondary-400": currentValue === void 0,
|
|
@@ -8462,7 +8546,7 @@ function ITTable({
|
|
|
8462
8546
|
event.preventDefault();
|
|
8463
8547
|
onRowClick(row, event);
|
|
8464
8548
|
};
|
|
8465
|
-
return /* @__PURE__ */ jsx60("div", { ref: rootRef, className:
|
|
8549
|
+
return /* @__PURE__ */ jsx60("div", { ref: rootRef, className: clsx44("space-y-4 w-full", containerClassName), children: /* @__PURE__ */ jsxs46("div", { className: tableContainer, style: { backgroundColor: "var(--color-table-rowBg, #ffffff)" }, children: [
|
|
8466
8550
|
title && /* @__PURE__ */ jsxs46("div", { className: "px-6 py-5 flex items-center justify-between", style: { backgroundColor: "var(--color-table-rowBg, #ffffff)" }, children: [
|
|
8467
8551
|
/* @__PURE__ */ jsx60(ITText, { as: "h2", className: "text-xl font-bold text-secondary-900 leading-tight", children: title }),
|
|
8468
8552
|
/* @__PURE__ */ jsxs46("div", { className: "flex items-center bg-slate-100 dark:bg-slate-800/80 rounded-lg p-0.5 border border-slate-200 dark:border-slate-700/50", children: [
|
|
@@ -8519,7 +8603,7 @@ function ITTable({
|
|
|
8519
8603
|
effectiveView === "cards" ? /* @__PURE__ */ jsx60("div", { className: "p-4 space-y-3 max-h-[400px] overflow-y-auto", children: currentData.length > 0 ? currentData.map((row, i) => /* @__PURE__ */ jsx60(
|
|
8520
8604
|
"div",
|
|
8521
8605
|
{
|
|
8522
|
-
className:
|
|
8606
|
+
className: clsx44(tableCardHover, onRowClick && tableCardClickable),
|
|
8523
8607
|
role: onRowClick ? "button" : void 0,
|
|
8524
8608
|
tabIndex: onRowClick ? 0 : void 0,
|
|
8525
8609
|
onClick: onRowClick ? handleRowClick(row) : void 0,
|
|
@@ -8527,7 +8611,7 @@ function ITTable({
|
|
|
8527
8611
|
children: renderCard ? renderCard(row) : renderDefaultCard(row)
|
|
8528
8612
|
},
|
|
8529
8613
|
i
|
|
8530
|
-
)) : /* @__PURE__ */ jsxs46("div", { className:
|
|
8614
|
+
)) : /* @__PURE__ */ jsxs46("div", { className: clsx44(tableEmptyContent, "py-12"), children: [
|
|
8531
8615
|
/* @__PURE__ */ jsx60(ITText, { as: "span", className: "text-lg", children: "No se encontraron resultados" }),
|
|
8532
8616
|
/* @__PURE__ */ jsx60(ITText, { as: "span", className: "text-sm mt-1", children: "Intenta ajustar los filtros" })
|
|
8533
8617
|
] }) }) : /* @__PURE__ */ jsx60(
|
|
@@ -8539,7 +8623,7 @@ function ITTable({
|
|
|
8539
8623
|
children: /* @__PURE__ */ jsxs46(
|
|
8540
8624
|
"table",
|
|
8541
8625
|
{
|
|
8542
|
-
className:
|
|
8626
|
+
className: clsx44(
|
|
8543
8627
|
tableLayoutClass,
|
|
8544
8628
|
showVerticalBorder && "[&_th]:border-r [&_th:last-child]:border-r-0 [&_td]:border-r [&_td:last-child]:border-r-0",
|
|
8545
8629
|
showVerticalBorder && (verticalBorderClassname || "[&_th]:border-slate-100 dark:[&_th]:border-slate-700/30 [&_td]:border-slate-100 dark:[&_td]:border-slate-700/30"),
|
|
@@ -8559,7 +8643,7 @@ function ITTable({
|
|
|
8559
8643
|
/* @__PURE__ */ jsx60("thead", { children: /* @__PURE__ */ jsx60(
|
|
8560
8644
|
"tr",
|
|
8561
8645
|
{
|
|
8562
|
-
className:
|
|
8646
|
+
className: clsx44(tableHeaderRow, "dark:text-slate-200"),
|
|
8563
8647
|
"aria-rowindex": isTableVirtual ? 1 : void 0,
|
|
8564
8648
|
children: columns.map((col) => {
|
|
8565
8649
|
const pin = pinnedMeta[col.key];
|
|
@@ -8568,7 +8652,7 @@ function ITTable({
|
|
|
8568
8652
|
"th",
|
|
8569
8653
|
{
|
|
8570
8654
|
scope: "col",
|
|
8571
|
-
className:
|
|
8655
|
+
className: clsx44(
|
|
8572
8656
|
tableHeaderCell(col.className, density),
|
|
8573
8657
|
col.align && tableAlignClasses[col.align],
|
|
8574
8658
|
isPinned && "sticky",
|
|
@@ -8602,7 +8686,7 @@ function ITTable({
|
|
|
8602
8686
|
})
|
|
8603
8687
|
}
|
|
8604
8688
|
) }),
|
|
8605
|
-
/* @__PURE__ */ jsx60("tbody", { className:
|
|
8689
|
+
/* @__PURE__ */ jsx60("tbody", { className: clsx44(tableBody, "dark:divide-slate-700/30"), children: currentData.length > 0 ? /* @__PURE__ */ jsxs46(Fragment9, { children: [
|
|
8606
8690
|
isTableVirtual && topSpacerHeight > 0 && /* @__PURE__ */ jsx60("tr", { "aria-hidden": "true", style: { height: topSpacerHeight }, children: /* @__PURE__ */ jsx60("td", { colSpan: columnCount, style: { padding: 0, border: 0 } }) }),
|
|
8607
8691
|
windowData.map((row, windowIndex) => {
|
|
8608
8692
|
const absoluteIndex = isTableVirtual ? startIndex + windowIndex : windowIndex;
|
|
@@ -8610,7 +8694,7 @@ function ITTable({
|
|
|
8610
8694
|
"tr",
|
|
8611
8695
|
{
|
|
8612
8696
|
"aria-rowindex": isTableVirtual ? absoluteIndex + 2 : void 0,
|
|
8613
|
-
className:
|
|
8697
|
+
className: clsx44(
|
|
8614
8698
|
tableRow,
|
|
8615
8699
|
variant === "striped" && absoluteIndex % 2 === 0 && "bg-secondary-50/40 dark:bg-slate-800/20",
|
|
8616
8700
|
onRowClick && tableRowClickable
|
|
@@ -8626,7 +8710,7 @@ function ITTable({
|
|
|
8626
8710
|
return /* @__PURE__ */ jsx60(
|
|
8627
8711
|
"td",
|
|
8628
8712
|
{
|
|
8629
|
-
className:
|
|
8713
|
+
className: clsx44(
|
|
8630
8714
|
tableCell(col.className, density),
|
|
8631
8715
|
col.align && tableAlignClasses[col.align],
|
|
8632
8716
|
isPinned && "sticky bg-[var(--color-table-rowBg,white)] group-hover:bg-[var(--color-table-rowHover,var(--color-secondary-50))]",
|
|
@@ -8638,7 +8722,7 @@ function ITTable({
|
|
|
8638
8722
|
...isPinned ? pin.side === "left" ? { left: pin.offset } : { right: pin.offset } : {}
|
|
8639
8723
|
} : void 0,
|
|
8640
8724
|
title: truncateTitle,
|
|
8641
|
-
children: col.type === "actions" ? /* @__PURE__ */ jsx60("div", { className: tableActionsCell, children: renderCellContent(col, row) }) : /* @__PURE__ */ jsx60("div", { className:
|
|
8725
|
+
children: col.type === "actions" ? /* @__PURE__ */ jsx60("div", { className: tableActionsCell, children: renderCellContent(col, row) }) : /* @__PURE__ */ jsx60("div", { className: clsx44(tableCellText, col.truncate && "truncate"), children: renderCellContent(col, row) })
|
|
8642
8726
|
},
|
|
8643
8727
|
`${absoluteIndex}-${col.key}`
|
|
8644
8728
|
);
|
|
@@ -8674,7 +8758,7 @@ function ITTable({
|
|
|
8674
8758
|
}
|
|
8675
8759
|
|
|
8676
8760
|
// src/components/atoms/textarea/textarea.tsx
|
|
8677
|
-
import
|
|
8761
|
+
import clsx45 from "clsx";
|
|
8678
8762
|
import { jsx as jsx61, jsxs as jsxs47 } from "react/jsx-runtime";
|
|
8679
8763
|
var resizeMap = {
|
|
8680
8764
|
none: "resize-none",
|
|
@@ -8695,7 +8779,7 @@ function ITTextarea({
|
|
|
8695
8779
|
maxLength,
|
|
8696
8780
|
resize = "vertical"
|
|
8697
8781
|
}) {
|
|
8698
|
-
return /* @__PURE__ */ jsxs47("div", { className:
|
|
8782
|
+
return /* @__PURE__ */ jsxs47("div", { className: clsx45("flex flex-col gap-1.5", className), children: [
|
|
8699
8783
|
label && /* @__PURE__ */ jsx61(ITText, { as: "label", className: inputLabel(!!error), htmlFor: name, children: label }),
|
|
8700
8784
|
/* @__PURE__ */ jsx61(
|
|
8701
8785
|
"textarea",
|
|
@@ -8708,7 +8792,7 @@ function ITTextarea({
|
|
|
8708
8792
|
rows,
|
|
8709
8793
|
disabled,
|
|
8710
8794
|
maxLength,
|
|
8711
|
-
className:
|
|
8795
|
+
className: clsx45(
|
|
8712
8796
|
"w-full border border-solid transition-all duration-200 rounded-lg px-3 py-2 text-sm outline-none",
|
|
8713
8797
|
"focus:ring-2",
|
|
8714
8798
|
resizeMap[resize],
|
|
@@ -8723,7 +8807,7 @@ function ITTextarea({
|
|
|
8723
8807
|
|
|
8724
8808
|
// src/components/molecules/tabs/tabs.tsx
|
|
8725
8809
|
import { useState as useState30 } from "react";
|
|
8726
|
-
import { clsx as
|
|
8810
|
+
import { clsx as clsx46 } from "clsx";
|
|
8727
8811
|
import { jsx as jsx62, jsxs as jsxs48 } from "react/jsx-runtime";
|
|
8728
8812
|
var ITTabs = ({
|
|
8729
8813
|
items,
|
|
@@ -8740,8 +8824,8 @@ var ITTabs = ({
|
|
|
8740
8824
|
if (onChange) onChange(id);
|
|
8741
8825
|
};
|
|
8742
8826
|
const activeContent = items.find((item) => item.id === activeId)?.content;
|
|
8743
|
-
return /* @__PURE__ */ jsxs48("div", { className:
|
|
8744
|
-
/* @__PURE__ */ jsx62("div", { className:
|
|
8827
|
+
return /* @__PURE__ */ jsxs48("div", { className: clsx46("w-full", containerClassName), children: [
|
|
8828
|
+
/* @__PURE__ */ jsx62("div", { className: clsx46(
|
|
8745
8829
|
"flex border-secondary-200 mb-4",
|
|
8746
8830
|
variant === "line" ? "border-b" : "gap-2 p-1 bg-secondary-100 rounded-lg w-fit",
|
|
8747
8831
|
className
|
|
@@ -8752,7 +8836,7 @@ var ITTabs = ({
|
|
|
8752
8836
|
{
|
|
8753
8837
|
onClick: () => handleTabClick(item.id, item.disabled),
|
|
8754
8838
|
disabled: item.disabled,
|
|
8755
|
-
className:
|
|
8839
|
+
className: clsx46(
|
|
8756
8840
|
"flex items-center gap-2 px-4 py-2 text-sm font-medium transition-all duration-200 outline-none",
|
|
8757
8841
|
// LINE VARIANT
|
|
8758
8842
|
variant === "line" && [
|
|
@@ -8780,7 +8864,7 @@ var ITTabs = ({
|
|
|
8780
8864
|
var tabs_default = ITTabs;
|
|
8781
8865
|
|
|
8782
8866
|
// src/components/organisms/triple-filter/tripleFilter.tsx
|
|
8783
|
-
import
|
|
8867
|
+
import clsx47 from "clsx";
|
|
8784
8868
|
import { jsx as jsx63 } from "react/jsx-runtime";
|
|
8785
8869
|
var colorMap2 = {
|
|
8786
8870
|
primary: "text-primary-600",
|
|
@@ -8803,14 +8887,14 @@ var ITTripleFilter = ({
|
|
|
8803
8887
|
return /* @__PURE__ */ jsx63(
|
|
8804
8888
|
"div",
|
|
8805
8889
|
{
|
|
8806
|
-
className:
|
|
8890
|
+
className: clsx47("flex bg-slate-100 p-1 rounded-xl gap-1 w-fit", className),
|
|
8807
8891
|
children: options.map((option) => /* @__PURE__ */ jsx63(
|
|
8808
8892
|
"button",
|
|
8809
8893
|
{
|
|
8810
8894
|
onClick: () => onChange(option.value),
|
|
8811
|
-
className:
|
|
8895
|
+
className: clsx47(
|
|
8812
8896
|
"px-4 py-1.5 rounded-lg text-[10px] font-bold uppercase tracking-wider transition-all duration-200 whitespace-nowrap",
|
|
8813
|
-
value === option.value ?
|
|
8897
|
+
value === option.value ? clsx47("bg-white shadow-sm", colorMap2[color]) : "text-slate-400 hover:text-slate-600"
|
|
8814
8898
|
),
|
|
8815
8899
|
children: /* @__PURE__ */ jsx63(ITText, { as: "span", children: option.label })
|
|
8816
8900
|
},
|
|
@@ -8832,7 +8916,7 @@ var positionStyles = {
|
|
|
8832
8916
|
};
|
|
8833
8917
|
|
|
8834
8918
|
// src/components/organisms/toast/toast.tsx
|
|
8835
|
-
import
|
|
8919
|
+
import clsx48 from "clsx";
|
|
8836
8920
|
import { useEffect as useEffect15, useState as useState31 } from "react";
|
|
8837
8921
|
import { FaTimesCircle as FaTimesCircle2, FaCheckCircle as FaCheckCircle2, FaExclamationTriangle as FaExclamationTriangle3, FaInfoCircle as FaInfoCircle2, FaTimes as FaTimes10 } from "react-icons/fa";
|
|
8838
8922
|
import { jsx as jsx64, jsxs as jsxs49 } from "react/jsx-runtime";
|
|
@@ -8878,7 +8962,7 @@ function ITToast({
|
|
|
8878
8962
|
return /* @__PURE__ */ jsxs49(
|
|
8879
8963
|
"div",
|
|
8880
8964
|
{
|
|
8881
|
-
className:
|
|
8965
|
+
className: clsx48(
|
|
8882
8966
|
"fixed z-[80] p-4 rounded-xl shadow-xl flex items-center justify-between gap-4 transition-all duration-300 text-white min-w-[300px]",
|
|
8883
8967
|
positionStyles[position],
|
|
8884
8968
|
{
|
|
@@ -8916,7 +9000,7 @@ import {
|
|
|
8916
9000
|
useRef as useRef21,
|
|
8917
9001
|
useState as useState33
|
|
8918
9002
|
} from "react";
|
|
8919
|
-
import
|
|
9003
|
+
import clsx50 from "clsx";
|
|
8920
9004
|
import {
|
|
8921
9005
|
FaBold,
|
|
8922
9006
|
FaEraser,
|
|
@@ -8940,7 +9024,7 @@ var toolbarActions = [
|
|
|
8940
9024
|
|
|
8941
9025
|
// src/components/atoms/tooltip/tooltip.tsx
|
|
8942
9026
|
import { useState as useState32 } from "react";
|
|
8943
|
-
import
|
|
9027
|
+
import clsx49 from "clsx";
|
|
8944
9028
|
import { jsx as jsx65, jsxs as jsxs50 } from "react/jsx-runtime";
|
|
8945
9029
|
var positionClasses2 = {
|
|
8946
9030
|
top: "bottom-full left-1/2 -translate-x-1/2 mb-2",
|
|
@@ -8973,14 +9057,14 @@ function ITTooltip({
|
|
|
8973
9057
|
return /* @__PURE__ */ jsxs50(
|
|
8974
9058
|
"div",
|
|
8975
9059
|
{
|
|
8976
|
-
className:
|
|
9060
|
+
className: clsx49("relative inline-flex", className),
|
|
8977
9061
|
onMouseEnter: handleMouseEnter,
|
|
8978
9062
|
onMouseLeave: handleMouseLeave,
|
|
8979
9063
|
children: [
|
|
8980
9064
|
children,
|
|
8981
|
-
visible && /* @__PURE__ */ jsxs50("div", { className:
|
|
9065
|
+
visible && /* @__PURE__ */ jsxs50("div", { className: clsx49("absolute z-[70] pointer-events-none", positionClasses2[position]), children: [
|
|
8982
9066
|
/* @__PURE__ */ jsx65("div", { className: "bg-slate-800 dark:bg-slate-700 text-white text-xs rounded-lg px-2.5 py-1.5 whitespace-nowrap shadow-lg", children: /* @__PURE__ */ jsx65(ITText, { as: "span", children: content }) }),
|
|
8983
|
-
/* @__PURE__ */ jsx65("div", { className:
|
|
9067
|
+
/* @__PURE__ */ jsx65("div", { className: clsx49("absolute", arrowClasses[position]) })
|
|
8984
9068
|
] })
|
|
8985
9069
|
]
|
|
8986
9070
|
}
|
|
@@ -9424,7 +9508,7 @@ function ITWysiwyg({
|
|
|
9424
9508
|
"aria-pressed": isActive,
|
|
9425
9509
|
onMouseDown: (e) => e.preventDefault(),
|
|
9426
9510
|
onClick: () => runAction(action),
|
|
9427
|
-
className:
|
|
9511
|
+
className: clsx50(
|
|
9428
9512
|
"flex h-8 w-8 items-center justify-center rounded-md text-[13px] transition-colors",
|
|
9429
9513
|
isActive ? "bg-primary-100 text-primary-700 dark:bg-primary-900/40 dark:text-primary-300" : "text-secondary-500 hover:bg-secondary-200/70 hover:text-secondary-800 dark:text-secondary-400 dark:hover:bg-slate-700 dark:hover:text-secondary-200",
|
|
9430
9514
|
isLocked && "cursor-not-allowed opacity-40"
|
|
@@ -9438,7 +9522,7 @@ function ITWysiwyg({
|
|
|
9438
9522
|
/* @__PURE__ */ jsxs51(
|
|
9439
9523
|
"div",
|
|
9440
9524
|
{
|
|
9441
|
-
className:
|
|
9525
|
+
className: clsx50(
|
|
9442
9526
|
"w-full border border-solid rounded-lg overflow-hidden transition-all duration-200",
|
|
9443
9527
|
error ? "ring-2 ring-danger-100 border-danger-500" : "border-secondary-300 focus-within:ring-2 focus-within:border-primary-500 focus-within:ring-primary-100",
|
|
9444
9528
|
isLocked && "opacity-50 cursor-not-allowed bg-secondary-100 dark:bg-slate-800"
|
|
@@ -9447,7 +9531,7 @@ function ITWysiwyg({
|
|
|
9447
9531
|
/* @__PURE__ */ jsx66(
|
|
9448
9532
|
"div",
|
|
9449
9533
|
{
|
|
9450
|
-
className:
|
|
9534
|
+
className: clsx50(
|
|
9451
9535
|
"flex flex-wrap items-center gap-0.5 px-1.5 py-1 border-b border-secondary-200 bg-secondary-50 dark:bg-slate-800",
|
|
9452
9536
|
isLocked && "bg-secondary-100 dark:bg-slate-900"
|
|
9453
9537
|
),
|
|
@@ -9474,7 +9558,7 @@ function ITWysiwyg({
|
|
|
9474
9558
|
focusedRef.current = false;
|
|
9475
9559
|
emitChange();
|
|
9476
9560
|
},
|
|
9477
|
-
className:
|
|
9561
|
+
className: clsx50(
|
|
9478
9562
|
"outline-none bg-white dark:bg-slate-900 text-secondary-800 dark:text-secondary-200",
|
|
9479
9563
|
"empty:before:content-[attr(data-placeholder)] empty:before:text-secondary-400 empty:before:pointer-events-none empty:before:select-none",
|
|
9480
9564
|
"[&_ul]:list-disc [&_ol]:list-decimal [&_ul]:pl-5 [&_ol]:pl-5 [&_li]:ml-4",
|
|
@@ -9498,7 +9582,7 @@ function ITWysiwyg({
|
|
|
9498
9582
|
// src/components/organisms/dropfile/dropfile.tsx
|
|
9499
9583
|
import { useState as useState34, useEffect as useEffect17 } from "react";
|
|
9500
9584
|
import { useDropzone } from "react-dropzone";
|
|
9501
|
-
import
|
|
9585
|
+
import clsx51 from "clsx";
|
|
9502
9586
|
|
|
9503
9587
|
// src/components/organisms/dropfile/dropfile.props.ts
|
|
9504
9588
|
var FileTypeEnum = /* @__PURE__ */ ((FileTypeEnum2) => {
|
|
@@ -9801,7 +9885,7 @@ var ITDropfile = ({
|
|
|
9801
9885
|
/* @__PURE__ */ jsx67(ITText, { as: "p", className: "text-[10px] text-secondary-500", children: selectedFile ? (selectedFile.size / 1024 / 1024).toFixed(2) + " MB" : "" })
|
|
9802
9886
|
] })
|
|
9803
9887
|
] }) }),
|
|
9804
|
-
/* @__PURE__ */ jsx67("div", { className:
|
|
9888
|
+
/* @__PURE__ */ jsx67("div", { className: clsx51("relative bg-secondary-100 flex items-center justify-center", !contentClassName ? "max-h-[200px] min-h-[100px] overflow-auto" : contentClassName), children: selectedFile && fileType?.startsWith("image/") || !selectedFile && imagePreview ? /* @__PURE__ */ jsx67(
|
|
9805
9889
|
"img",
|
|
9806
9890
|
{
|
|
9807
9891
|
src: imagePreview,
|
|
@@ -9865,7 +9949,7 @@ var ITDropfile = ({
|
|
|
9865
9949
|
] }) });
|
|
9866
9950
|
if (view === "button") {
|
|
9867
9951
|
const hasFile = Boolean(selectedFile || imagePreview);
|
|
9868
|
-
return /* @__PURE__ */ jsxs52("div", { className:
|
|
9952
|
+
return /* @__PURE__ */ jsxs52("div", { className: clsx51("inline-block", containerClassName), children: [
|
|
9869
9953
|
/* @__PURE__ */ jsx67(
|
|
9870
9954
|
ITButton,
|
|
9871
9955
|
{
|
|
@@ -9887,7 +9971,7 @@ var ITDropfile = ({
|
|
|
9887
9971
|
] }) })
|
|
9888
9972
|
] });
|
|
9889
9973
|
}
|
|
9890
|
-
return /* @__PURE__ */ jsxs52("div", { className:
|
|
9974
|
+
return /* @__PURE__ */ jsxs52("div", { className: clsx51("w-full transition-all duration-300", containerClassName), children: [
|
|
9891
9975
|
headerRow,
|
|
9892
9976
|
dropZoneOrPreview
|
|
9893
9977
|
] });
|
|
@@ -9896,7 +9980,7 @@ var dropfile_default = ITDropfile;
|
|
|
9896
9980
|
|
|
9897
9981
|
// src/components/templates/layout/layout.tsx
|
|
9898
9982
|
import { useState as useState36 } from "react";
|
|
9899
|
-
import
|
|
9983
|
+
import clsx52 from "clsx";
|
|
9900
9984
|
|
|
9901
9985
|
// src/components/organisms/topbar/topbar.tsx
|
|
9902
9986
|
import { FaUserCircle as FaUserCircle2, FaBars } from "react-icons/fa";
|
|
@@ -10154,7 +10238,7 @@ function ITLayout({
|
|
|
10154
10238
|
)
|
|
10155
10239
|
}
|
|
10156
10240
|
),
|
|
10157
|
-
/* @__PURE__ */ jsx69("main", { className: "flex-1 overflow-y-auto w-full custom-scrollbar relative z-0", children: /* @__PURE__ */ jsx69("div", { className:
|
|
10241
|
+
/* @__PURE__ */ jsx69("main", { className: "flex-1 overflow-y-auto w-full custom-scrollbar relative z-0", children: /* @__PURE__ */ jsx69("div", { className: clsx52("mx-auto w-full max-w-7xl px-4 sm:px-6 lg:px-8 py-6 h-full", contentClassName), children }) })
|
|
10158
10242
|
]
|
|
10159
10243
|
}
|
|
10160
10244
|
)
|
|
@@ -10247,7 +10331,7 @@ function ITLoader({
|
|
|
10247
10331
|
}
|
|
10248
10332
|
|
|
10249
10333
|
// src/components/molecules/stepper/stepper.tsx
|
|
10250
|
-
import
|
|
10334
|
+
import clsx53 from "clsx";
|
|
10251
10335
|
import { useEffect as useEffect18, useRef as useRef23, useState as useState37 } from "react";
|
|
10252
10336
|
import { FaChevronLeft as FaChevronLeft4, FaChevronRight as FaChevronRight5, FaCheck as FaCheck5 } from "react-icons/fa";
|
|
10253
10337
|
import { jsx as jsx71, jsxs as jsxs55 } from "react/jsx-runtime";
|
|
@@ -10324,7 +10408,7 @@ function ITStepper({
|
|
|
10324
10408
|
}
|
|
10325
10409
|
return /* @__PURE__ */ jsx71(ITText, { as: "span", className: "text-sm font-semibold", children: index + 1 });
|
|
10326
10410
|
};
|
|
10327
|
-
return /* @__PURE__ */ jsxs55("div", { className:
|
|
10411
|
+
return /* @__PURE__ */ jsxs55("div", { className: clsx53("w-full max-w-5xl mx-auto px-4", containerClassName), children: [
|
|
10328
10412
|
/* @__PURE__ */ jsxs55("div", { className: "relative mb-8", children: [
|
|
10329
10413
|
/* @__PURE__ */ jsx71(
|
|
10330
10414
|
"div",
|
|
@@ -10359,7 +10443,7 @@ function ITStepper({
|
|
|
10359
10443
|
/* @__PURE__ */ jsx71(
|
|
10360
10444
|
"div",
|
|
10361
10445
|
{
|
|
10362
|
-
className:
|
|
10446
|
+
className: clsx53(
|
|
10363
10447
|
"flex items-center justify-center w-11 h-11 rounded-full border-2 transition-all duration-300 transform",
|
|
10364
10448
|
hasIcon && "p-2",
|
|
10365
10449
|
isCompleted && "bg-slate-400 border-slate-400 text-white scale-100 shadow",
|
|
@@ -10374,7 +10458,7 @@ function ITStepper({
|
|
|
10374
10458
|
ITText,
|
|
10375
10459
|
{
|
|
10376
10460
|
as: "span",
|
|
10377
|
-
className:
|
|
10461
|
+
className: clsx53(
|
|
10378
10462
|
"mt-2 text-xs sm:text-sm font-medium transition-colors text-center",
|
|
10379
10463
|
isCompleted ? "text-slate-400" : !isActive && "text-secondary-400"
|
|
10380
10464
|
),
|
|
@@ -10395,7 +10479,7 @@ function ITStepper({
|
|
|
10395
10479
|
tabIndex: -1,
|
|
10396
10480
|
role: "region",
|
|
10397
10481
|
"aria-labelledby": `step-${currentStep}`,
|
|
10398
|
-
className:
|
|
10482
|
+
className: clsx53(
|
|
10399
10483
|
stepClassName,
|
|
10400
10484
|
"bg-white border border-secondary-100 rounded-2xl shadow-lg min-h-[280px] transition-transform duration-400 no-scrollbar p-6",
|
|
10401
10485
|
scrollableContent && "overflow-y-auto hide-scrollbar"
|