@almadar/ui 5.3.1 → 5.5.0
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/avl/index.cjs +341 -165
- package/dist/avl/index.js +341 -165
- package/dist/components/atoms/Card.d.ts +7 -0
- package/dist/components/index.cjs +341 -165
- package/dist/components/index.js +341 -165
- package/dist/components/molecules/ButtonGroup.d.ts +10 -0
- package/dist/components/molecules/DataGrid.d.ts +5 -0
- package/dist/components/molecules/DataList.d.ts +5 -0
- package/dist/components/molecules/EmptyState.d.ts +3 -0
- package/dist/components/molecules/FilterGroup.d.ts +7 -0
- package/dist/components/molecules/Modal.d.ts +7 -0
- package/dist/components/molecules/StatDisplay.d.ts +3 -0
- package/dist/components/organisms/Chart.d.ts +20 -1
- package/dist/components/organisms/DataTable.d.ts +4 -1
- package/dist/components/organisms/Header.d.ts +3 -0
- package/dist/components/organisms/Timeline.d.ts +7 -0
- package/dist/docs/index.cjs +11 -0
- package/dist/docs/index.d.cts +7 -0
- package/dist/docs/index.js +11 -0
- package/dist/marketing/index.cjs +11 -0
- package/dist/marketing/index.d.cts +7 -0
- package/dist/marketing/index.js +11 -0
- package/dist/providers/index.cjs +341 -165
- package/dist/providers/index.js +341 -165
- package/dist/runtime/index.cjs +341 -165
- package/dist/runtime/index.js +341 -165
- package/package.json +1 -1
package/dist/providers/index.js
CHANGED
|
@@ -1906,7 +1906,7 @@ var init_Overlay = __esm({
|
|
|
1906
1906
|
};
|
|
1907
1907
|
}
|
|
1908
1908
|
});
|
|
1909
|
-
var sizeClasses2, minWidthClasses, Modal;
|
|
1909
|
+
var sizeClasses2, minWidthClasses, lookStyles, Modal;
|
|
1910
1910
|
var init_Modal = __esm({
|
|
1911
1911
|
"components/molecules/Modal.tsx"() {
|
|
1912
1912
|
"use client";
|
|
@@ -1931,6 +1931,12 @@ var init_Modal = __esm({
|
|
|
1931
1931
|
xl: "min-w-[700px] max-sm:min-w-0",
|
|
1932
1932
|
full: "min-w-0"
|
|
1933
1933
|
};
|
|
1934
|
+
lookStyles = {
|
|
1935
|
+
"centered-card": "",
|
|
1936
|
+
"top-sheet": "top-0 rounded-t-none rounded-b-container max-w-full w-full",
|
|
1937
|
+
"side-drawer": "right-0 top-0 bottom-0 h-full rounded-l-container rounded-r-none w-[400px] max-w-full",
|
|
1938
|
+
"full-screen": "inset-0 rounded-none w-full h-full max-w-full"
|
|
1939
|
+
};
|
|
1934
1940
|
Modal = ({
|
|
1935
1941
|
isOpen = true,
|
|
1936
1942
|
onClose = () => {
|
|
@@ -1944,7 +1950,8 @@ var init_Modal = __esm({
|
|
|
1944
1950
|
closeOnEscape = true,
|
|
1945
1951
|
className,
|
|
1946
1952
|
closeEvent,
|
|
1947
|
-
swipeDownToClose = true
|
|
1953
|
+
swipeDownToClose = true,
|
|
1954
|
+
look = "centered-card"
|
|
1948
1955
|
}) => {
|
|
1949
1956
|
const eventBus = useEventBus();
|
|
1950
1957
|
const modalRef = useRef(null);
|
|
@@ -2029,6 +2036,7 @@ var init_Modal = __esm({
|
|
|
2029
2036
|
// Mobile: take the entire screen. Override desktop max-w cap,
|
|
2030
2037
|
// full height, no rounded corners, no min-width.
|
|
2031
2038
|
"max-sm:max-w-none max-sm:max-h-none max-sm:w-full max-sm:h-full max-sm:rounded-none",
|
|
2039
|
+
lookStyles[look],
|
|
2032
2040
|
className
|
|
2033
2041
|
),
|
|
2034
2042
|
style: dragY > 0 ? {
|
|
@@ -3603,7 +3611,7 @@ var init_Checkbox = __esm({
|
|
|
3603
3611
|
Checkbox.displayName = "Checkbox";
|
|
3604
3612
|
}
|
|
3605
3613
|
});
|
|
3606
|
-
var variantStyles4, paddingStyles2, shadowStyles2, Card, CardHeader, CardTitle, CardContent, CardBody, CardFooter;
|
|
3614
|
+
var variantStyles4, paddingStyles2, shadowStyles2, lookStyles2, Card, CardHeader, CardTitle, CardContent, CardBody, CardFooter;
|
|
3607
3615
|
var init_Card = __esm({
|
|
3608
3616
|
"components/atoms/Card.tsx"() {
|
|
3609
3617
|
init_cn();
|
|
@@ -3651,6 +3659,15 @@ var init_Card = __esm({
|
|
|
3651
3659
|
md: "shadow",
|
|
3652
3660
|
lg: "shadow-elevation-dialog"
|
|
3653
3661
|
};
|
|
3662
|
+
lookStyles2 = {
|
|
3663
|
+
elevated: "",
|
|
3664
|
+
"flat-bordered": "shadow-none border-[length:var(--border-width)] border-border",
|
|
3665
|
+
"borderless-divider": "shadow-none border-0 border-b border-border rounded-none",
|
|
3666
|
+
ticket: "shadow-none border-dashed border-[length:var(--border-width)] border-border",
|
|
3667
|
+
invoice: "shadow-none border-[length:var(--border-width-thick)] border-border rounded-sm",
|
|
3668
|
+
chip: "shadow-none rounded-pill border-[length:var(--border-width)] border-border",
|
|
3669
|
+
"tile-image-first": "p-0 overflow-hidden"
|
|
3670
|
+
};
|
|
3654
3671
|
Card = React86__default.forwardRef(
|
|
3655
3672
|
({
|
|
3656
3673
|
className,
|
|
@@ -3659,6 +3676,7 @@ var init_Card = __esm({
|
|
|
3659
3676
|
title,
|
|
3660
3677
|
subtitle,
|
|
3661
3678
|
shadow,
|
|
3679
|
+
look = "elevated",
|
|
3662
3680
|
children,
|
|
3663
3681
|
...props
|
|
3664
3682
|
}, ref) => {
|
|
@@ -3671,6 +3689,7 @@ var init_Card = __esm({
|
|
|
3671
3689
|
"transition-all duration-[var(--transition-normal)]",
|
|
3672
3690
|
variantStyles4[variant],
|
|
3673
3691
|
paddingStyles2[padding],
|
|
3692
|
+
lookStyles2[look],
|
|
3674
3693
|
shadow && shadowStyles2[shadow],
|
|
3675
3694
|
className
|
|
3676
3695
|
),
|
|
@@ -16283,7 +16302,7 @@ var init_BookTableOfContents = __esm({
|
|
|
16283
16302
|
BookTableOfContents.displayName = "BookTableOfContents";
|
|
16284
16303
|
}
|
|
16285
16304
|
});
|
|
16286
|
-
var ICON_NAME_ALIASES, EmptyState;
|
|
16305
|
+
var ICON_NAME_ALIASES, lookStyles3, EmptyState;
|
|
16287
16306
|
var init_EmptyState = __esm({
|
|
16288
16307
|
"components/molecules/EmptyState.tsx"() {
|
|
16289
16308
|
"use client";
|
|
@@ -16300,6 +16319,12 @@ var init_EmptyState = __esm({
|
|
|
16300
16319
|
error: "x-circle",
|
|
16301
16320
|
warning: "alert-circle"
|
|
16302
16321
|
};
|
|
16322
|
+
lookStyles3 = {
|
|
16323
|
+
"icon-only": "",
|
|
16324
|
+
illustrated: "[&_svg]:w-32 [&_svg]:h-32",
|
|
16325
|
+
"text-only": "[&_svg]:hidden",
|
|
16326
|
+
mascot: "[&_svg]:w-24 [&_svg]:h-24 [&_svg]:rounded-pill"
|
|
16327
|
+
};
|
|
16303
16328
|
EmptyState = ({
|
|
16304
16329
|
icon,
|
|
16305
16330
|
title,
|
|
@@ -16310,7 +16335,8 @@ var init_EmptyState = __esm({
|
|
|
16310
16335
|
className,
|
|
16311
16336
|
destructive,
|
|
16312
16337
|
variant,
|
|
16313
|
-
actionEvent
|
|
16338
|
+
actionEvent,
|
|
16339
|
+
look = "icon-only"
|
|
16314
16340
|
}) => {
|
|
16315
16341
|
const eventBus = useEventBus();
|
|
16316
16342
|
const { t } = useTranslate();
|
|
@@ -16330,6 +16356,7 @@ var init_EmptyState = __esm({
|
|
|
16330
16356
|
align: "center",
|
|
16331
16357
|
className: cn(
|
|
16332
16358
|
"justify-center py-12 text-center",
|
|
16359
|
+
lookStyles3[look],
|
|
16333
16360
|
className
|
|
16334
16361
|
),
|
|
16335
16362
|
children: [
|
|
@@ -17570,7 +17597,7 @@ function useSafeEventBus2() {
|
|
|
17570
17597
|
} };
|
|
17571
17598
|
}
|
|
17572
17599
|
}
|
|
17573
|
-
var log9, ButtonGroup;
|
|
17600
|
+
var log9, lookStyles4, ButtonGroup;
|
|
17574
17601
|
var init_ButtonGroup = __esm({
|
|
17575
17602
|
"components/molecules/ButtonGroup.tsx"() {
|
|
17576
17603
|
"use client";
|
|
@@ -17578,6 +17605,13 @@ var init_ButtonGroup = __esm({
|
|
|
17578
17605
|
init_atoms();
|
|
17579
17606
|
init_useEventBus();
|
|
17580
17607
|
log9 = createLogger("almadar:ui:button-group");
|
|
17608
|
+
lookStyles4 = {
|
|
17609
|
+
"right-aligned-buttons": "",
|
|
17610
|
+
"floating-bar": "fixed bottom-section left-1/2 -translate-x-1/2 shadow-elevation-toast bg-card p-card-sm rounded-container",
|
|
17611
|
+
"inline-row": "gap-2 inline-flex",
|
|
17612
|
+
"dropdown-menu": "[&>button:not(:first-child)]:hidden",
|
|
17613
|
+
"command-palette-trigger": "[&>button:not(:first-child)]:hidden"
|
|
17614
|
+
};
|
|
17581
17615
|
ButtonGroup = ({
|
|
17582
17616
|
children,
|
|
17583
17617
|
primary,
|
|
@@ -17587,7 +17621,8 @@ var init_ButtonGroup = __esm({
|
|
|
17587
17621
|
className,
|
|
17588
17622
|
// Filter-group pattern props (entity and filters are used for schema-driven filtering)
|
|
17589
17623
|
entity: _entity,
|
|
17590
|
-
filters
|
|
17624
|
+
filters,
|
|
17625
|
+
look = "right-aligned-buttons"
|
|
17591
17626
|
}) => {
|
|
17592
17627
|
const eventBus = useSafeEventBus2();
|
|
17593
17628
|
const variantClasses2 = {
|
|
@@ -17664,6 +17699,7 @@ var init_ButtonGroup = __esm({
|
|
|
17664
17699
|
"inline-flex gap-2",
|
|
17665
17700
|
variantClasses2[variant],
|
|
17666
17701
|
orientationClasses[orientation],
|
|
17702
|
+
lookStyles4[look],
|
|
17667
17703
|
className
|
|
17668
17704
|
),
|
|
17669
17705
|
role: "group",
|
|
@@ -20195,7 +20231,7 @@ var init_CastleTemplate = __esm({
|
|
|
20195
20231
|
CastleTemplate.displayName = "CastleTemplate";
|
|
20196
20232
|
}
|
|
20197
20233
|
});
|
|
20198
|
-
var CHART_COLORS, seriesColor, monthFormatter, formatTimeLabel, BarChart, PieChart, LineChart, ScatterChart, Chart;
|
|
20234
|
+
var CHART_COLORS, seriesColor, monthFormatter, formatTimeLabel, BarChart, PieChart, LineChart, ScatterChart, LOOK_FROM_CHART_TYPE, Chart;
|
|
20199
20235
|
var init_Chart = __esm({
|
|
20200
20236
|
"components/organisms/Chart.tsx"() {
|
|
20201
20237
|
"use client";
|
|
@@ -20225,7 +20261,7 @@ var init_Chart = __esm({
|
|
|
20225
20261
|
if (Number.isNaN(parsed.getTime())) return raw;
|
|
20226
20262
|
return monthFormatter.format(parsed);
|
|
20227
20263
|
};
|
|
20228
|
-
BarChart = ({ series, height, showValues, stack, timeAxis, histogram = false, onPointClick }) => {
|
|
20264
|
+
BarChart = ({ series, height, showValues, stack, timeAxis, histogram = false, horizontal = false, onPointClick }) => {
|
|
20229
20265
|
const categories = useMemo(() => {
|
|
20230
20266
|
const set = [];
|
|
20231
20267
|
const seen = /* @__PURE__ */ new Set();
|
|
@@ -20263,6 +20299,64 @@ var init_Chart = __esm({
|
|
|
20263
20299
|
}
|
|
20264
20300
|
return m;
|
|
20265
20301
|
}, [series, stack, columnTotals]);
|
|
20302
|
+
if (horizontal) {
|
|
20303
|
+
return /* @__PURE__ */ jsx(VStack, { gap: "xs", align: "stretch", className: "w-full", style: { minHeight: height }, children: categories.map((label, catIdx) => {
|
|
20304
|
+
const displayLabel = timeAxis ? formatTimeLabel(label) : label;
|
|
20305
|
+
const total = columnTotals?.[catIdx] ?? 1;
|
|
20306
|
+
return /* @__PURE__ */ jsxs(HStack, { gap: "sm", align: "center", className: "w-full", children: [
|
|
20307
|
+
/* @__PURE__ */ jsx(
|
|
20308
|
+
Typography,
|
|
20309
|
+
{
|
|
20310
|
+
variant: "caption",
|
|
20311
|
+
color: "secondary",
|
|
20312
|
+
className: "truncate text-right",
|
|
20313
|
+
style: { width: 80, flexShrink: 0 },
|
|
20314
|
+
children: displayLabel
|
|
20315
|
+
}
|
|
20316
|
+
),
|
|
20317
|
+
/* @__PURE__ */ jsx(
|
|
20318
|
+
HStack,
|
|
20319
|
+
{
|
|
20320
|
+
gap: stack === "none" ? "xs" : "none",
|
|
20321
|
+
align: "center",
|
|
20322
|
+
className: "flex-1 min-w-0",
|
|
20323
|
+
style: { height: 24 },
|
|
20324
|
+
children: series.map((s, sIdx) => {
|
|
20325
|
+
const value = valueAt(s, label);
|
|
20326
|
+
const ratio = stack === "normalize" ? total === 0 ? 0 : value / total * 100 : value / maxValue * 100;
|
|
20327
|
+
const color = seriesColor(s, sIdx);
|
|
20328
|
+
return /* @__PURE__ */ jsx(
|
|
20329
|
+
Box,
|
|
20330
|
+
{
|
|
20331
|
+
className: "h-full rounded-r-sm transition-all duration-500 ease-out min-w-[2px] cursor-pointer hover:opacity-80",
|
|
20332
|
+
style: {
|
|
20333
|
+
width: `${ratio}%`,
|
|
20334
|
+
backgroundColor: color
|
|
20335
|
+
},
|
|
20336
|
+
onClick: () => onPointClick?.(
|
|
20337
|
+
{ label, value, color },
|
|
20338
|
+
s.name
|
|
20339
|
+
),
|
|
20340
|
+
title: `${s.name}: ${value}`
|
|
20341
|
+
},
|
|
20342
|
+
s.name
|
|
20343
|
+
);
|
|
20344
|
+
})
|
|
20345
|
+
}
|
|
20346
|
+
),
|
|
20347
|
+
showValues && series.length === 1 && /* @__PURE__ */ jsx(
|
|
20348
|
+
Typography,
|
|
20349
|
+
{
|
|
20350
|
+
variant: "caption",
|
|
20351
|
+
color: "secondary",
|
|
20352
|
+
className: "tabular-nums",
|
|
20353
|
+
style: { width: 40, flexShrink: 0 },
|
|
20354
|
+
children: valueAt(series[0], label)
|
|
20355
|
+
}
|
|
20356
|
+
)
|
|
20357
|
+
] }, label);
|
|
20358
|
+
}) });
|
|
20359
|
+
}
|
|
20266
20360
|
return /* @__PURE__ */ jsx(
|
|
20267
20361
|
HStack,
|
|
20268
20362
|
{
|
|
@@ -20690,10 +20784,20 @@ var init_Chart = __esm({
|
|
|
20690
20784
|
}
|
|
20691
20785
|
);
|
|
20692
20786
|
};
|
|
20787
|
+
LOOK_FROM_CHART_TYPE = {
|
|
20788
|
+
bar: "bar-vertical",
|
|
20789
|
+
line: "line",
|
|
20790
|
+
pie: "pie",
|
|
20791
|
+
area: "area",
|
|
20792
|
+
donut: "donut",
|
|
20793
|
+
scatter: "scatter",
|
|
20794
|
+
histogram: "histogram"
|
|
20795
|
+
};
|
|
20693
20796
|
Chart = ({
|
|
20694
20797
|
title,
|
|
20695
20798
|
subtitle,
|
|
20696
|
-
chartType
|
|
20799
|
+
chartType,
|
|
20800
|
+
look,
|
|
20697
20801
|
series,
|
|
20698
20802
|
data: simpleData,
|
|
20699
20803
|
scatterData,
|
|
@@ -20709,6 +20813,7 @@ var init_Chart = __esm({
|
|
|
20709
20813
|
error,
|
|
20710
20814
|
className
|
|
20711
20815
|
}) => {
|
|
20816
|
+
const resolvedLook = look ?? (chartType ? LOOK_FROM_CHART_TYPE[chartType] : "bar-vertical");
|
|
20712
20817
|
const eventBus = useEventBus();
|
|
20713
20818
|
const { t } = useTranslate();
|
|
20714
20819
|
const handleAction = useCallback(
|
|
@@ -20737,7 +20842,7 @@ var init_Chart = __esm({
|
|
|
20737
20842
|
return [];
|
|
20738
20843
|
}, [simpleData, series]);
|
|
20739
20844
|
const firstSeriesData = normalizedSeries[0]?.data ?? [];
|
|
20740
|
-
const hasContent =
|
|
20845
|
+
const hasContent = resolvedLook === "scatter" ? (scatterData?.length ?? 0) > 0 : normalizedSeries.some((s) => s.data.length > 0);
|
|
20741
20846
|
if (isLoading) {
|
|
20742
20847
|
return /* @__PURE__ */ jsx(LoadingState, { message: "Loading chart...", className });
|
|
20743
20848
|
}
|
|
@@ -20772,7 +20877,7 @@ var init_Chart = __esm({
|
|
|
20772
20877
|
)) })
|
|
20773
20878
|
] }),
|
|
20774
20879
|
/* @__PURE__ */ jsxs(Box, { className: "w-full", children: [
|
|
20775
|
-
|
|
20880
|
+
resolvedLook === "bar-vertical" && /* @__PURE__ */ jsx(
|
|
20776
20881
|
BarChart,
|
|
20777
20882
|
{
|
|
20778
20883
|
series: normalizedSeries,
|
|
@@ -20783,7 +20888,19 @@ var init_Chart = __esm({
|
|
|
20783
20888
|
onPointClick: handlePointClick
|
|
20784
20889
|
}
|
|
20785
20890
|
),
|
|
20786
|
-
|
|
20891
|
+
resolvedLook === "bar-horizontal" && /* @__PURE__ */ jsx(
|
|
20892
|
+
BarChart,
|
|
20893
|
+
{
|
|
20894
|
+
series: normalizedSeries,
|
|
20895
|
+
height,
|
|
20896
|
+
showValues,
|
|
20897
|
+
stack,
|
|
20898
|
+
timeAxis,
|
|
20899
|
+
horizontal: true,
|
|
20900
|
+
onPointClick: handlePointClick
|
|
20901
|
+
}
|
|
20902
|
+
),
|
|
20903
|
+
resolvedLook === "histogram" && /* @__PURE__ */ jsx(
|
|
20787
20904
|
BarChart,
|
|
20788
20905
|
{
|
|
20789
20906
|
series: normalizedSeries,
|
|
@@ -20795,7 +20912,7 @@ var init_Chart = __esm({
|
|
|
20795
20912
|
onPointClick: handlePointClick
|
|
20796
20913
|
}
|
|
20797
20914
|
),
|
|
20798
|
-
|
|
20915
|
+
resolvedLook === "line" && /* @__PURE__ */ jsx(
|
|
20799
20916
|
LineChart,
|
|
20800
20917
|
{
|
|
20801
20918
|
series: normalizedSeries,
|
|
@@ -20805,7 +20922,7 @@ var init_Chart = __esm({
|
|
|
20805
20922
|
onPointClick: handlePointClick
|
|
20806
20923
|
}
|
|
20807
20924
|
),
|
|
20808
|
-
|
|
20925
|
+
resolvedLook === "area" && /* @__PURE__ */ jsx(
|
|
20809
20926
|
LineChart,
|
|
20810
20927
|
{
|
|
20811
20928
|
series: normalizedSeries,
|
|
@@ -20816,7 +20933,7 @@ var init_Chart = __esm({
|
|
|
20816
20933
|
onPointClick: handlePointClick
|
|
20817
20934
|
}
|
|
20818
20935
|
),
|
|
20819
|
-
|
|
20936
|
+
resolvedLook === "pie" && /* @__PURE__ */ jsx(
|
|
20820
20937
|
PieChart,
|
|
20821
20938
|
{
|
|
20822
20939
|
data: firstSeriesData,
|
|
@@ -20825,7 +20942,7 @@ var init_Chart = __esm({
|
|
|
20825
20942
|
onPointClick: handlePointClick
|
|
20826
20943
|
}
|
|
20827
20944
|
),
|
|
20828
|
-
|
|
20945
|
+
resolvedLook === "donut" && /* @__PURE__ */ jsx(
|
|
20829
20946
|
PieChart,
|
|
20830
20947
|
{
|
|
20831
20948
|
data: firstSeriesData,
|
|
@@ -20835,7 +20952,7 @@ var init_Chart = __esm({
|
|
|
20835
20952
|
onPointClick: handlePointClick
|
|
20836
20953
|
}
|
|
20837
20954
|
),
|
|
20838
|
-
|
|
20955
|
+
resolvedLook === "scatter" && /* @__PURE__ */ jsx(
|
|
20839
20956
|
ScatterChart,
|
|
20840
20957
|
{
|
|
20841
20958
|
data: scatterData ?? [],
|
|
@@ -24258,7 +24375,7 @@ var init_useQuerySingleton = __esm({
|
|
|
24258
24375
|
queryStores = /* @__PURE__ */ new Map();
|
|
24259
24376
|
}
|
|
24260
24377
|
});
|
|
24261
|
-
var resolveFilterType, FilterGroup;
|
|
24378
|
+
var resolveFilterType, lookStyles5, FilterGroup;
|
|
24262
24379
|
var init_FilterGroup = __esm({
|
|
24263
24380
|
"components/molecules/FilterGroup.tsx"() {
|
|
24264
24381
|
"use client";
|
|
@@ -24272,6 +24389,13 @@ var init_FilterGroup = __esm({
|
|
|
24272
24389
|
init_useEventBus();
|
|
24273
24390
|
init_useQuerySingleton();
|
|
24274
24391
|
resolveFilterType = (filter) => filter.filterType ?? filter.type;
|
|
24392
|
+
lookStyles5 = {
|
|
24393
|
+
toolbar: "",
|
|
24394
|
+
chips: "gap-2 [&>*]:rounded-pill [&>*]:px-3 [&>*]:py-1",
|
|
24395
|
+
pills: "gap-2 [&>*]:rounded-pill",
|
|
24396
|
+
"popover-trigger": "[&>*:not(:first-child)]:hidden",
|
|
24397
|
+
"inline-column-header": "hidden"
|
|
24398
|
+
};
|
|
24275
24399
|
FilterGroup = ({
|
|
24276
24400
|
entity,
|
|
24277
24401
|
filters,
|
|
@@ -24281,7 +24405,8 @@ var init_FilterGroup = __esm({
|
|
|
24281
24405
|
variant = "default",
|
|
24282
24406
|
showIcon = true,
|
|
24283
24407
|
query,
|
|
24284
|
-
isLoading
|
|
24408
|
+
isLoading,
|
|
24409
|
+
look = "toolbar"
|
|
24285
24410
|
}) => {
|
|
24286
24411
|
const eventBus = useEventBus();
|
|
24287
24412
|
const queryState = useQuerySingleton(query);
|
|
@@ -24336,63 +24461,71 @@ var init_FilterGroup = __esm({
|
|
|
24336
24461
|
}, [onClearAll, queryState, eventBus, entity, query]);
|
|
24337
24462
|
const activeFilterCount = Object.keys(selectedValues).length;
|
|
24338
24463
|
if (variant === "pills") {
|
|
24339
|
-
return /* @__PURE__ */ jsxs(
|
|
24340
|
-
|
|
24341
|
-
|
|
24342
|
-
|
|
24343
|
-
|
|
24344
|
-
|
|
24345
|
-
|
|
24346
|
-
|
|
24347
|
-
HStack,
|
|
24348
|
-
|
|
24349
|
-
|
|
24350
|
-
|
|
24351
|
-
|
|
24352
|
-
|
|
24353
|
-
|
|
24354
|
-
|
|
24355
|
-
|
|
24356
|
-
|
|
24357
|
-
|
|
24358
|
-
|
|
24359
|
-
|
|
24360
|
-
|
|
24361
|
-
|
|
24362
|
-
|
|
24363
|
-
|
|
24364
|
-
|
|
24365
|
-
|
|
24366
|
-
|
|
24367
|
-
|
|
24368
|
-
|
|
24369
|
-
className: cn(
|
|
24370
|
-
"px-3 py-1.5 text-sm font-medium transition-all duration-[var(--transition-fast)]",
|
|
24371
|
-
"border-l-[length:var(--border-width)] border-border",
|
|
24372
|
-
selectedValues[filter.field] === option ? "bg-primary text-primary-foreground" : "bg-card text-muted-foreground hover:bg-muted"
|
|
24464
|
+
return /* @__PURE__ */ jsxs(
|
|
24465
|
+
HStack,
|
|
24466
|
+
{
|
|
24467
|
+
gap: "md",
|
|
24468
|
+
align: "center",
|
|
24469
|
+
className: cn("flex-wrap", lookStyles5[look], className),
|
|
24470
|
+
children: [
|
|
24471
|
+
showIcon && /* @__PURE__ */ jsx(Icon, { name: "filter", className: "h-4 w-4 text-muted-foreground" }),
|
|
24472
|
+
filters.map((filter) => /* @__PURE__ */ jsxs(HStack, { gap: "xs", align: "center", children: [
|
|
24473
|
+
/* @__PURE__ */ jsxs("span", { className: "text-sm font-medium text-muted-foreground", children: [
|
|
24474
|
+
filter.label,
|
|
24475
|
+
":"
|
|
24476
|
+
] }),
|
|
24477
|
+
/* @__PURE__ */ jsxs(
|
|
24478
|
+
HStack,
|
|
24479
|
+
{
|
|
24480
|
+
gap: "none",
|
|
24481
|
+
className: "rounded-sm overflow-hidden border-[length:var(--border-width)] border-border",
|
|
24482
|
+
children: [
|
|
24483
|
+
/* @__PURE__ */ jsx(
|
|
24484
|
+
"button",
|
|
24485
|
+
{
|
|
24486
|
+
type: "button",
|
|
24487
|
+
onClick: () => handleFilterSelect(filter.field, null),
|
|
24488
|
+
className: cn(
|
|
24489
|
+
"px-3 py-1.5 text-sm font-medium transition-all duration-[var(--transition-fast)]",
|
|
24490
|
+
!selectedValues[filter.field] ? "bg-primary text-primary-foreground" : "bg-card text-muted-foreground hover:bg-muted"
|
|
24491
|
+
),
|
|
24492
|
+
children: "All"
|
|
24493
|
+
}
|
|
24373
24494
|
),
|
|
24374
|
-
|
|
24375
|
-
|
|
24376
|
-
|
|
24377
|
-
|
|
24378
|
-
|
|
24379
|
-
|
|
24380
|
-
|
|
24381
|
-
|
|
24382
|
-
|
|
24383
|
-
|
|
24384
|
-
|
|
24385
|
-
|
|
24386
|
-
|
|
24387
|
-
|
|
24388
|
-
|
|
24389
|
-
|
|
24390
|
-
|
|
24391
|
-
|
|
24392
|
-
|
|
24495
|
+
filter.options?.map((option) => /* @__PURE__ */ jsx(
|
|
24496
|
+
"button",
|
|
24497
|
+
{
|
|
24498
|
+
type: "button",
|
|
24499
|
+
onClick: () => handleFilterSelect(filter.field, option),
|
|
24500
|
+
className: cn(
|
|
24501
|
+
"px-3 py-1.5 text-sm font-medium transition-all duration-[var(--transition-fast)]",
|
|
24502
|
+
"border-l-[length:var(--border-width)] border-border",
|
|
24503
|
+
selectedValues[filter.field] === option ? "bg-primary text-primary-foreground" : "bg-card text-muted-foreground hover:bg-muted"
|
|
24504
|
+
),
|
|
24505
|
+
children: option
|
|
24506
|
+
},
|
|
24507
|
+
option
|
|
24508
|
+
))
|
|
24509
|
+
]
|
|
24510
|
+
}
|
|
24511
|
+
)
|
|
24512
|
+
] }, filter.field)),
|
|
24513
|
+
activeFilterCount > 0 && /* @__PURE__ */ jsx(
|
|
24514
|
+
Button,
|
|
24515
|
+
{
|
|
24516
|
+
variant: "ghost",
|
|
24517
|
+
size: "sm",
|
|
24518
|
+
onClick: handleClearAll,
|
|
24519
|
+
leftIcon: /* @__PURE__ */ jsx(Icon, { name: "x", className: "h-3.5 w-3.5" }),
|
|
24520
|
+
children: "Clear"
|
|
24521
|
+
}
|
|
24522
|
+
)
|
|
24523
|
+
]
|
|
24524
|
+
}
|
|
24525
|
+
);
|
|
24393
24526
|
}
|
|
24394
24527
|
if (variant === "vertical") {
|
|
24395
|
-
return /* @__PURE__ */ jsxs("div", { className: cn("flex flex-col gap-4", className), children: [
|
|
24528
|
+
return /* @__PURE__ */ jsxs("div", { className: cn("flex flex-col gap-4", lookStyles5[look], className), children: [
|
|
24396
24529
|
showIcon && /* @__PURE__ */ jsxs("div", { className: "flex items-center gap-2 text-muted-foreground", children: [
|
|
24397
24530
|
/* @__PURE__ */ jsx(Icon, { name: "filter", className: "h-4 w-4" }),
|
|
24398
24531
|
/* @__PURE__ */ jsx("span", { className: "text-sm font-bold uppercase tracking-wide", children: "Filters" })
|
|
@@ -24475,92 +24608,100 @@ var init_FilterGroup = __esm({
|
|
|
24475
24608
|
] });
|
|
24476
24609
|
}
|
|
24477
24610
|
if (variant === "compact") {
|
|
24478
|
-
return /* @__PURE__ */ jsxs(
|
|
24479
|
-
|
|
24480
|
-
|
|
24481
|
-
|
|
24482
|
-
|
|
24483
|
-
|
|
24484
|
-
|
|
24485
|
-
|
|
24486
|
-
|
|
24487
|
-
|
|
24488
|
-
|
|
24489
|
-
|
|
24490
|
-
|
|
24491
|
-
|
|
24492
|
-
|
|
24493
|
-
|
|
24494
|
-
|
|
24495
|
-
|
|
24496
|
-
|
|
24497
|
-
|
|
24498
|
-
|
|
24499
|
-
|
|
24500
|
-
|
|
24501
|
-
|
|
24502
|
-
|
|
24503
|
-
|
|
24504
|
-
|
|
24505
|
-
|
|
24506
|
-
|
|
24507
|
-
|
|
24508
|
-
value: selectedValues[`${filter.field}_to`] || "",
|
|
24509
|
-
onChange: (e) => handleFilterSelect(
|
|
24510
|
-
`${filter.field}_to`,
|
|
24511
|
-
e.target.value || null
|
|
24611
|
+
return /* @__PURE__ */ jsxs(
|
|
24612
|
+
HStack,
|
|
24613
|
+
{
|
|
24614
|
+
gap: "sm",
|
|
24615
|
+
align: "center",
|
|
24616
|
+
className: cn("flex-wrap", lookStyles5[look], className),
|
|
24617
|
+
children: [
|
|
24618
|
+
showIcon && /* @__PURE__ */ jsx(Icon, { name: "filter", className: "h-4 w-4 text-muted-foreground" }),
|
|
24619
|
+
filters.map((filter) => /* @__PURE__ */ jsx("div", { className: "min-w-[120px]", children: resolveFilterType(filter) === "date" ? /* @__PURE__ */ jsx(
|
|
24620
|
+
Input,
|
|
24621
|
+
{
|
|
24622
|
+
type: "date",
|
|
24623
|
+
value: selectedValues[filter.field] || "",
|
|
24624
|
+
onChange: (e) => handleFilterSelect(filter.field, e.target.value || null),
|
|
24625
|
+
clearable: true,
|
|
24626
|
+
onClear: () => handleFilterSelect(filter.field, null),
|
|
24627
|
+
className: "text-sm"
|
|
24628
|
+
}
|
|
24629
|
+
) : resolveFilterType(filter) === "daterange" || resolveFilterType(filter) === "date-range" ? /* @__PURE__ */ jsxs(HStack, { gap: "xs", align: "center", children: [
|
|
24630
|
+
/* @__PURE__ */ jsx(
|
|
24631
|
+
Input,
|
|
24632
|
+
{
|
|
24633
|
+
type: "date",
|
|
24634
|
+
value: selectedValues[`${filter.field}_from`] || "",
|
|
24635
|
+
onChange: (e) => handleFilterSelect(
|
|
24636
|
+
`${filter.field}_from`,
|
|
24637
|
+
e.target.value || null
|
|
24638
|
+
),
|
|
24639
|
+
className: "text-sm min-w-[100px]"
|
|
24640
|
+
}
|
|
24512
24641
|
),
|
|
24513
|
-
className: "text-
|
|
24514
|
-
|
|
24515
|
-
|
|
24516
|
-
|
|
24517
|
-
|
|
24518
|
-
|
|
24519
|
-
|
|
24520
|
-
|
|
24521
|
-
|
|
24522
|
-
|
|
24523
|
-
|
|
24524
|
-
|
|
24525
|
-
|
|
24526
|
-
|
|
24527
|
-
|
|
24528
|
-
{
|
|
24529
|
-
value: selectedValues[filter.field] || "all",
|
|
24530
|
-
onChange: (e) => handleFilterSelect(filter.field, e.target.value),
|
|
24531
|
-
options: [
|
|
24532
|
-
{ value: "all", label: `All ${filter.label}` },
|
|
24533
|
-
...filter.options?.map((opt) => ({
|
|
24534
|
-
value: opt,
|
|
24535
|
-
label: opt
|
|
24536
|
-
})) || []
|
|
24537
|
-
],
|
|
24538
|
-
className: "text-sm"
|
|
24539
|
-
}
|
|
24540
|
-
) }, filter.field)),
|
|
24541
|
-
activeFilterCount > 0 && /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
24542
|
-
Object.entries(selectedValues).map(([field, value]) => {
|
|
24543
|
-
const filterDef = filters.find((f3) => f3.field === field);
|
|
24544
|
-
return /* @__PURE__ */ jsxs(
|
|
24545
|
-
Badge,
|
|
24642
|
+
/* @__PURE__ */ jsx("span", { className: "text-muted-foreground", children: "-" }),
|
|
24643
|
+
/* @__PURE__ */ jsx(
|
|
24644
|
+
Input,
|
|
24645
|
+
{
|
|
24646
|
+
type: "date",
|
|
24647
|
+
value: selectedValues[`${filter.field}_to`] || "",
|
|
24648
|
+
onChange: (e) => handleFilterSelect(
|
|
24649
|
+
`${filter.field}_to`,
|
|
24650
|
+
e.target.value || null
|
|
24651
|
+
),
|
|
24652
|
+
className: "text-sm min-w-[100px]"
|
|
24653
|
+
}
|
|
24654
|
+
)
|
|
24655
|
+
] }) : resolveFilterType(filter) === "text" ? /* @__PURE__ */ jsx(
|
|
24656
|
+
Input,
|
|
24546
24657
|
{
|
|
24547
|
-
|
|
24548
|
-
|
|
24549
|
-
|
|
24550
|
-
|
|
24551
|
-
|
|
24552
|
-
|
|
24553
|
-
|
|
24554
|
-
|
|
24555
|
-
|
|
24556
|
-
|
|
24557
|
-
|
|
24558
|
-
|
|
24559
|
-
|
|
24560
|
-
|
|
24561
|
-
|
|
24562
|
-
|
|
24563
|
-
|
|
24658
|
+
value: selectedValues[filter.field] || "",
|
|
24659
|
+
onChange: (e) => handleFilterSelect(filter.field, e.target.value || null),
|
|
24660
|
+
placeholder: filter.label,
|
|
24661
|
+
clearable: true,
|
|
24662
|
+
onClear: () => handleFilterSelect(filter.field, null),
|
|
24663
|
+
className: "text-sm"
|
|
24664
|
+
}
|
|
24665
|
+
) : /* @__PURE__ */ jsx(
|
|
24666
|
+
Select,
|
|
24667
|
+
{
|
|
24668
|
+
value: selectedValues[filter.field] || "all",
|
|
24669
|
+
onChange: (e) => handleFilterSelect(filter.field, e.target.value),
|
|
24670
|
+
options: [
|
|
24671
|
+
{ value: "all", label: `All ${filter.label}` },
|
|
24672
|
+
...filter.options?.map((opt) => ({
|
|
24673
|
+
value: opt,
|
|
24674
|
+
label: opt
|
|
24675
|
+
})) || []
|
|
24676
|
+
],
|
|
24677
|
+
className: "text-sm"
|
|
24678
|
+
}
|
|
24679
|
+
) }, filter.field)),
|
|
24680
|
+
activeFilterCount > 0 && /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
24681
|
+
Object.entries(selectedValues).map(([field, value]) => {
|
|
24682
|
+
const filterDef = filters.find((f3) => f3.field === field);
|
|
24683
|
+
return /* @__PURE__ */ jsxs(
|
|
24684
|
+
Badge,
|
|
24685
|
+
{
|
|
24686
|
+
variant: "primary",
|
|
24687
|
+
size: "md",
|
|
24688
|
+
className: "cursor-pointer",
|
|
24689
|
+
onClick: () => handleFilterSelect(field, null),
|
|
24690
|
+
children: [
|
|
24691
|
+
filterDef?.label,
|
|
24692
|
+
": ",
|
|
24693
|
+
value,
|
|
24694
|
+
/* @__PURE__ */ jsx(Icon, { name: "x", className: "ml-1 h-3 w-3" })
|
|
24695
|
+
]
|
|
24696
|
+
},
|
|
24697
|
+
field
|
|
24698
|
+
);
|
|
24699
|
+
}),
|
|
24700
|
+
/* @__PURE__ */ jsx(Button, { variant: "ghost", size: "sm", onClick: handleClearAll, children: "Clear all" })
|
|
24701
|
+
] })
|
|
24702
|
+
]
|
|
24703
|
+
}
|
|
24704
|
+
);
|
|
24564
24705
|
}
|
|
24565
24706
|
return /* @__PURE__ */ jsx(
|
|
24566
24707
|
"div",
|
|
@@ -24569,6 +24710,7 @@ var init_FilterGroup = __esm({
|
|
|
24569
24710
|
"p-4 rounded-container",
|
|
24570
24711
|
"bg-card",
|
|
24571
24712
|
"border-[length:var(--border-width)] border-border",
|
|
24713
|
+
lookStyles5[look],
|
|
24572
24714
|
className
|
|
24573
24715
|
),
|
|
24574
24716
|
children: /* @__PURE__ */ jsxs(HStack, { gap: "md", align: "center", className: "flex-wrap", children: [
|
|
@@ -29042,7 +29184,7 @@ function composeDisplayValue(value, format, max, prefix, suffix) {
|
|
|
29042
29184
|
const withMax = max != null && max > 0 ? `${formatted} / ${max}` : formatted;
|
|
29043
29185
|
return `${prefix ?? ""}${withMax}${suffix ?? ""}`;
|
|
29044
29186
|
}
|
|
29045
|
-
var variantColor, StatDisplay;
|
|
29187
|
+
var lookStyles6, variantColor, StatDisplay;
|
|
29046
29188
|
var init_StatDisplay = __esm({
|
|
29047
29189
|
"components/molecules/StatDisplay.tsx"() {
|
|
29048
29190
|
"use client";
|
|
@@ -29054,6 +29196,13 @@ var init_StatDisplay = __esm({
|
|
|
29054
29196
|
init_Sparkline();
|
|
29055
29197
|
init_Icon();
|
|
29056
29198
|
init_useEventBus();
|
|
29199
|
+
lookStyles6 = {
|
|
29200
|
+
elevated: "",
|
|
29201
|
+
flat: "shadow-none border-[length:var(--border-width)] border-border",
|
|
29202
|
+
"progress-backed": "",
|
|
29203
|
+
gauge: "",
|
|
29204
|
+
sparkline: ""
|
|
29205
|
+
};
|
|
29057
29206
|
variantColor = {
|
|
29058
29207
|
default: "text-foreground",
|
|
29059
29208
|
primary: "text-primary",
|
|
@@ -29081,6 +29230,7 @@ var init_StatDisplay = __esm({
|
|
|
29081
29230
|
size = "md",
|
|
29082
29231
|
variant = "default",
|
|
29083
29232
|
compact = false,
|
|
29233
|
+
look = "elevated",
|
|
29084
29234
|
className,
|
|
29085
29235
|
isLoading = false,
|
|
29086
29236
|
error = null
|
|
@@ -29133,7 +29283,7 @@ var init_StatDisplay = __esm({
|
|
|
29133
29283
|
return /* @__PURE__ */ jsx(
|
|
29134
29284
|
Card,
|
|
29135
29285
|
{
|
|
29136
|
-
className: cn(padSizes[size], clickEvent && "cursor-pointer hover:shadow-md transition-shadow", className),
|
|
29286
|
+
className: cn(padSizes[size], lookStyles6[look], clickEvent && "cursor-pointer hover:shadow-md transition-shadow", className),
|
|
29137
29287
|
onClick: clickEvent ? handleClick : void 0,
|
|
29138
29288
|
children: /* @__PURE__ */ jsxs(HStack, { align: "start", justify: "between", children: [
|
|
29139
29289
|
/* @__PURE__ */ jsxs(VStack, { gap: "none", className: "space-y-1 flex-1", children: [
|
|
@@ -34715,7 +34865,8 @@ function DataTable({
|
|
|
34715
34865
|
bulkActions,
|
|
34716
34866
|
headerActions,
|
|
34717
34867
|
showTotal = true,
|
|
34718
|
-
className
|
|
34868
|
+
className,
|
|
34869
|
+
look = "dense"
|
|
34719
34870
|
}) {
|
|
34720
34871
|
const [openActionMenu, setOpenActionMenu] = useState(
|
|
34721
34872
|
null
|
|
@@ -34842,6 +34993,7 @@ function DataTable({
|
|
|
34842
34993
|
{
|
|
34843
34994
|
className: cn(
|
|
34844
34995
|
"bg-card border-2 border-border rounded-none overflow-hidden",
|
|
34996
|
+
lookStyles7[look],
|
|
34845
34997
|
className
|
|
34846
34998
|
),
|
|
34847
34999
|
children: [
|
|
@@ -35068,6 +35220,7 @@ function DataTable({
|
|
|
35068
35220
|
}
|
|
35069
35221
|
);
|
|
35070
35222
|
}
|
|
35223
|
+
var lookStyles7;
|
|
35071
35224
|
var init_DataTable = __esm({
|
|
35072
35225
|
"components/organisms/DataTable.tsx"() {
|
|
35073
35226
|
"use client";
|
|
@@ -35081,6 +35234,13 @@ var init_DataTable = __esm({
|
|
|
35081
35234
|
init_useEventBus();
|
|
35082
35235
|
init_useTranslate();
|
|
35083
35236
|
init_types3();
|
|
35237
|
+
lookStyles7 = {
|
|
35238
|
+
dense: "",
|
|
35239
|
+
spacious: "[&_tbody_tr_td]:py-5 [&_thead_tr_th]:py-4",
|
|
35240
|
+
striped: "[&_tbody_tr:nth-child(odd)]:bg-muted/30",
|
|
35241
|
+
borderless: "border-0 [&_thead]:border-b-0 [&_tbody_tr]:border-b-0 [&_tbody]:divide-y-0",
|
|
35242
|
+
"card-rows": "border-0 [&_tbody]:divide-y-0 [&_tbody_tr]:border-b-0 [&_tbody_tr]:shadow-elevation-card [&_tbody_tr]:rounded-container [&_tbody_tr]:bg-card [&_tbody]:[&_tr]:my-2"
|
|
35243
|
+
};
|
|
35084
35244
|
DataTable.displayName = "DataTable";
|
|
35085
35245
|
}
|
|
35086
35246
|
});
|
|
@@ -38239,7 +38399,7 @@ var init_GraphCanvas = __esm({
|
|
|
38239
38399
|
GraphCanvas.displayName = "GraphCanvas";
|
|
38240
38400
|
}
|
|
38241
38401
|
});
|
|
38242
|
-
var Header;
|
|
38402
|
+
var lookStyles8, Header;
|
|
38243
38403
|
var init_Header = __esm({
|
|
38244
38404
|
"components/organisms/Header.tsx"() {
|
|
38245
38405
|
"use client";
|
|
@@ -38252,6 +38412,13 @@ var init_Header = __esm({
|
|
|
38252
38412
|
init_Typography();
|
|
38253
38413
|
init_cn();
|
|
38254
38414
|
init_useTranslate();
|
|
38415
|
+
lookStyles8 = {
|
|
38416
|
+
"compact-bar": "",
|
|
38417
|
+
hero: "py-section min-h-[200px] [&_h1]:text-display-1",
|
|
38418
|
+
breadcrumb: "py-2 text-sm [&_h1]:text-base [&_h1]:font-medium",
|
|
38419
|
+
contextual: "py-3 [&_h1]:text-lg",
|
|
38420
|
+
"editorial-banner": "py-12 [&_h1]:text-display-2 [&_h1]:font-display-bold border-b border-border"
|
|
38421
|
+
};
|
|
38255
38422
|
Header = ({
|
|
38256
38423
|
logo,
|
|
38257
38424
|
logoSrc,
|
|
@@ -38269,6 +38436,7 @@ var init_Header = __esm({
|
|
|
38269
38436
|
actions,
|
|
38270
38437
|
sticky = true,
|
|
38271
38438
|
variant = "mobile",
|
|
38439
|
+
look = "compact-bar",
|
|
38272
38440
|
onLogoClick,
|
|
38273
38441
|
className
|
|
38274
38442
|
}) => {
|
|
@@ -38284,6 +38452,7 @@ var init_Header = __esm({
|
|
|
38284
38452
|
"flex items-center px-4 justify-between bg-card",
|
|
38285
38453
|
sticky && "sticky top-0 z-50",
|
|
38286
38454
|
variant === "mobile" && "lg:hidden",
|
|
38455
|
+
lookStyles8[look],
|
|
38287
38456
|
className
|
|
38288
38457
|
),
|
|
38289
38458
|
children: [
|
|
@@ -44960,7 +45129,7 @@ var init_TeamOrganism = __esm({
|
|
|
44960
45129
|
TeamOrganism.displayName = "TeamOrganism";
|
|
44961
45130
|
}
|
|
44962
45131
|
});
|
|
44963
|
-
var STATUS_STYLES3, Timeline;
|
|
45132
|
+
var lookStyles9, STATUS_STYLES3, Timeline;
|
|
44964
45133
|
var init_Timeline = __esm({
|
|
44965
45134
|
"components/organisms/Timeline.tsx"() {
|
|
44966
45135
|
"use client";
|
|
@@ -44971,6 +45140,12 @@ var init_Timeline = __esm({
|
|
|
44971
45140
|
init_ErrorState();
|
|
44972
45141
|
init_EmptyState();
|
|
44973
45142
|
init_useTranslate();
|
|
45143
|
+
lookStyles9 = {
|
|
45144
|
+
"vertical-compact": "gap-1 [&>*]:py-1",
|
|
45145
|
+
"vertical-spacious": "",
|
|
45146
|
+
horizontal: "flex-row [&>*]:flex-row [&>*]:items-center",
|
|
45147
|
+
swimlane: "flex-row gap-6 [&>*]:flex-row [&>*]:items-center"
|
|
45148
|
+
};
|
|
44974
45149
|
STATUS_STYLES3 = {
|
|
44975
45150
|
complete: {
|
|
44976
45151
|
dotColor: "text-success",
|
|
@@ -45001,7 +45176,8 @@ var init_Timeline = __esm({
|
|
|
45001
45176
|
entity,
|
|
45002
45177
|
isLoading = false,
|
|
45003
45178
|
error,
|
|
45004
|
-
className
|
|
45179
|
+
className,
|
|
45180
|
+
look = "vertical-spacious"
|
|
45005
45181
|
}) => {
|
|
45006
45182
|
const { t } = useTranslate();
|
|
45007
45183
|
const entityData = Array.isArray(entity) ? entity : [];
|
|
@@ -45057,7 +45233,7 @@ var init_Timeline = __esm({
|
|
|
45057
45233
|
}
|
|
45058
45234
|
return /* @__PURE__ */ jsx(Card, { className: cn("p-6", className), children: /* @__PURE__ */ jsxs(VStack, { gap: "md", children: [
|
|
45059
45235
|
title && /* @__PURE__ */ jsx(Typography, { variant: "h5", weight: "semibold", children: title }),
|
|
45060
|
-
/* @__PURE__ */ jsx(VStack, { gap: "none", className: "relative", children: items.map((item, idx) => {
|
|
45236
|
+
/* @__PURE__ */ jsx(VStack, { gap: "none", className: cn("relative", lookStyles9[look]), children: items.map((item, idx) => {
|
|
45061
45237
|
const status = item.status || "pending";
|
|
45062
45238
|
const style = STATUS_STYLES3[status] || STATUS_STYLES3.pending;
|
|
45063
45239
|
const ItemIcon = item.icon || style.icon;
|