@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/runtime/index.js
CHANGED
|
@@ -2141,7 +2141,7 @@ var init_Overlay = __esm({
|
|
|
2141
2141
|
};
|
|
2142
2142
|
}
|
|
2143
2143
|
});
|
|
2144
|
-
var sizeClasses2, minWidthClasses, Modal;
|
|
2144
|
+
var sizeClasses2, minWidthClasses, lookStyles, Modal;
|
|
2145
2145
|
var init_Modal = __esm({
|
|
2146
2146
|
"components/molecules/Modal.tsx"() {
|
|
2147
2147
|
"use client";
|
|
@@ -2166,6 +2166,12 @@ var init_Modal = __esm({
|
|
|
2166
2166
|
xl: "min-w-[700px] max-sm:min-w-0",
|
|
2167
2167
|
full: "min-w-0"
|
|
2168
2168
|
};
|
|
2169
|
+
lookStyles = {
|
|
2170
|
+
"centered-card": "",
|
|
2171
|
+
"top-sheet": "top-0 rounded-t-none rounded-b-container max-w-full w-full",
|
|
2172
|
+
"side-drawer": "right-0 top-0 bottom-0 h-full rounded-l-container rounded-r-none w-[400px] max-w-full",
|
|
2173
|
+
"full-screen": "inset-0 rounded-none w-full h-full max-w-full"
|
|
2174
|
+
};
|
|
2169
2175
|
Modal = ({
|
|
2170
2176
|
isOpen = true,
|
|
2171
2177
|
onClose = () => {
|
|
@@ -2179,7 +2185,8 @@ var init_Modal = __esm({
|
|
|
2179
2185
|
closeOnEscape = true,
|
|
2180
2186
|
className,
|
|
2181
2187
|
closeEvent,
|
|
2182
|
-
swipeDownToClose = true
|
|
2188
|
+
swipeDownToClose = true,
|
|
2189
|
+
look = "centered-card"
|
|
2183
2190
|
}) => {
|
|
2184
2191
|
const eventBus = useEventBus();
|
|
2185
2192
|
const modalRef = useRef(null);
|
|
@@ -2264,6 +2271,7 @@ var init_Modal = __esm({
|
|
|
2264
2271
|
// Mobile: take the entire screen. Override desktop max-w cap,
|
|
2265
2272
|
// full height, no rounded corners, no min-width.
|
|
2266
2273
|
"max-sm:max-w-none max-sm:max-h-none max-sm:w-full max-sm:h-full max-sm:rounded-none",
|
|
2274
|
+
lookStyles[look],
|
|
2267
2275
|
className
|
|
2268
2276
|
),
|
|
2269
2277
|
style: dragY > 0 ? {
|
|
@@ -3838,7 +3846,7 @@ var init_Checkbox = __esm({
|
|
|
3838
3846
|
Checkbox.displayName = "Checkbox";
|
|
3839
3847
|
}
|
|
3840
3848
|
});
|
|
3841
|
-
var variantStyles4, paddingStyles2, shadowStyles2, Card, CardHeader, CardTitle, CardContent, CardBody, CardFooter;
|
|
3849
|
+
var variantStyles4, paddingStyles2, shadowStyles2, lookStyles2, Card, CardHeader, CardTitle, CardContent, CardBody, CardFooter;
|
|
3842
3850
|
var init_Card = __esm({
|
|
3843
3851
|
"components/atoms/Card.tsx"() {
|
|
3844
3852
|
init_cn();
|
|
@@ -3886,6 +3894,15 @@ var init_Card = __esm({
|
|
|
3886
3894
|
md: "shadow",
|
|
3887
3895
|
lg: "shadow-elevation-dialog"
|
|
3888
3896
|
};
|
|
3897
|
+
lookStyles2 = {
|
|
3898
|
+
elevated: "",
|
|
3899
|
+
"flat-bordered": "shadow-none border-[length:var(--border-width)] border-border",
|
|
3900
|
+
"borderless-divider": "shadow-none border-0 border-b border-border rounded-none",
|
|
3901
|
+
ticket: "shadow-none border-dashed border-[length:var(--border-width)] border-border",
|
|
3902
|
+
invoice: "shadow-none border-[length:var(--border-width-thick)] border-border rounded-sm",
|
|
3903
|
+
chip: "shadow-none rounded-pill border-[length:var(--border-width)] border-border",
|
|
3904
|
+
"tile-image-first": "p-0 overflow-hidden"
|
|
3905
|
+
};
|
|
3889
3906
|
Card = React85__default.forwardRef(
|
|
3890
3907
|
({
|
|
3891
3908
|
className,
|
|
@@ -3894,6 +3911,7 @@ var init_Card = __esm({
|
|
|
3894
3911
|
title,
|
|
3895
3912
|
subtitle,
|
|
3896
3913
|
shadow,
|
|
3914
|
+
look = "elevated",
|
|
3897
3915
|
children,
|
|
3898
3916
|
...props
|
|
3899
3917
|
}, ref) => {
|
|
@@ -3906,6 +3924,7 @@ var init_Card = __esm({
|
|
|
3906
3924
|
"transition-all duration-[var(--transition-normal)]",
|
|
3907
3925
|
variantStyles4[variant],
|
|
3908
3926
|
paddingStyles2[padding],
|
|
3927
|
+
lookStyles2[look],
|
|
3909
3928
|
shadow && shadowStyles2[shadow],
|
|
3910
3929
|
className
|
|
3911
3930
|
),
|
|
@@ -16133,7 +16152,7 @@ var init_BookTableOfContents = __esm({
|
|
|
16133
16152
|
BookTableOfContents.displayName = "BookTableOfContents";
|
|
16134
16153
|
}
|
|
16135
16154
|
});
|
|
16136
|
-
var ICON_NAME_ALIASES, EmptyState;
|
|
16155
|
+
var ICON_NAME_ALIASES, lookStyles3, EmptyState;
|
|
16137
16156
|
var init_EmptyState = __esm({
|
|
16138
16157
|
"components/molecules/EmptyState.tsx"() {
|
|
16139
16158
|
"use client";
|
|
@@ -16150,6 +16169,12 @@ var init_EmptyState = __esm({
|
|
|
16150
16169
|
error: "x-circle",
|
|
16151
16170
|
warning: "alert-circle"
|
|
16152
16171
|
};
|
|
16172
|
+
lookStyles3 = {
|
|
16173
|
+
"icon-only": "",
|
|
16174
|
+
illustrated: "[&_svg]:w-32 [&_svg]:h-32",
|
|
16175
|
+
"text-only": "[&_svg]:hidden",
|
|
16176
|
+
mascot: "[&_svg]:w-24 [&_svg]:h-24 [&_svg]:rounded-pill"
|
|
16177
|
+
};
|
|
16153
16178
|
EmptyState = ({
|
|
16154
16179
|
icon,
|
|
16155
16180
|
title,
|
|
@@ -16160,7 +16185,8 @@ var init_EmptyState = __esm({
|
|
|
16160
16185
|
className,
|
|
16161
16186
|
destructive,
|
|
16162
16187
|
variant,
|
|
16163
|
-
actionEvent
|
|
16188
|
+
actionEvent,
|
|
16189
|
+
look = "icon-only"
|
|
16164
16190
|
}) => {
|
|
16165
16191
|
const eventBus = useEventBus();
|
|
16166
16192
|
const { t } = useTranslate();
|
|
@@ -16180,6 +16206,7 @@ var init_EmptyState = __esm({
|
|
|
16180
16206
|
align: "center",
|
|
16181
16207
|
className: cn(
|
|
16182
16208
|
"justify-center py-12 text-center",
|
|
16209
|
+
lookStyles3[look],
|
|
16183
16210
|
className
|
|
16184
16211
|
),
|
|
16185
16212
|
children: [
|
|
@@ -17420,7 +17447,7 @@ function useSafeEventBus2() {
|
|
|
17420
17447
|
} };
|
|
17421
17448
|
}
|
|
17422
17449
|
}
|
|
17423
|
-
var log8, ButtonGroup;
|
|
17450
|
+
var log8, lookStyles4, ButtonGroup;
|
|
17424
17451
|
var init_ButtonGroup = __esm({
|
|
17425
17452
|
"components/molecules/ButtonGroup.tsx"() {
|
|
17426
17453
|
"use client";
|
|
@@ -17428,6 +17455,13 @@ var init_ButtonGroup = __esm({
|
|
|
17428
17455
|
init_atoms();
|
|
17429
17456
|
init_useEventBus();
|
|
17430
17457
|
log8 = createLogger("almadar:ui:button-group");
|
|
17458
|
+
lookStyles4 = {
|
|
17459
|
+
"right-aligned-buttons": "",
|
|
17460
|
+
"floating-bar": "fixed bottom-section left-1/2 -translate-x-1/2 shadow-elevation-toast bg-card p-card-sm rounded-container",
|
|
17461
|
+
"inline-row": "gap-2 inline-flex",
|
|
17462
|
+
"dropdown-menu": "[&>button:not(:first-child)]:hidden",
|
|
17463
|
+
"command-palette-trigger": "[&>button:not(:first-child)]:hidden"
|
|
17464
|
+
};
|
|
17431
17465
|
ButtonGroup = ({
|
|
17432
17466
|
children,
|
|
17433
17467
|
primary,
|
|
@@ -17437,7 +17471,8 @@ var init_ButtonGroup = __esm({
|
|
|
17437
17471
|
className,
|
|
17438
17472
|
// Filter-group pattern props (entity and filters are used for schema-driven filtering)
|
|
17439
17473
|
entity: _entity,
|
|
17440
|
-
filters
|
|
17474
|
+
filters,
|
|
17475
|
+
look = "right-aligned-buttons"
|
|
17441
17476
|
}) => {
|
|
17442
17477
|
const eventBus = useSafeEventBus2();
|
|
17443
17478
|
const variantClasses2 = {
|
|
@@ -17514,6 +17549,7 @@ var init_ButtonGroup = __esm({
|
|
|
17514
17549
|
"inline-flex gap-2",
|
|
17515
17550
|
variantClasses2[variant],
|
|
17516
17551
|
orientationClasses[orientation],
|
|
17552
|
+
lookStyles4[look],
|
|
17517
17553
|
className
|
|
17518
17554
|
),
|
|
17519
17555
|
role: "group",
|
|
@@ -19978,7 +20014,7 @@ var init_CastleTemplate = __esm({
|
|
|
19978
20014
|
CastleTemplate.displayName = "CastleTemplate";
|
|
19979
20015
|
}
|
|
19980
20016
|
});
|
|
19981
|
-
var CHART_COLORS, seriesColor, monthFormatter, formatTimeLabel, BarChart, PieChart, LineChart, ScatterChart, Chart;
|
|
20017
|
+
var CHART_COLORS, seriesColor, monthFormatter, formatTimeLabel, BarChart, PieChart, LineChart, ScatterChart, LOOK_FROM_CHART_TYPE, Chart;
|
|
19982
20018
|
var init_Chart = __esm({
|
|
19983
20019
|
"components/organisms/Chart.tsx"() {
|
|
19984
20020
|
"use client";
|
|
@@ -20008,7 +20044,7 @@ var init_Chart = __esm({
|
|
|
20008
20044
|
if (Number.isNaN(parsed.getTime())) return raw;
|
|
20009
20045
|
return monthFormatter.format(parsed);
|
|
20010
20046
|
};
|
|
20011
|
-
BarChart = ({ series, height, showValues, stack, timeAxis, histogram = false, onPointClick }) => {
|
|
20047
|
+
BarChart = ({ series, height, showValues, stack, timeAxis, histogram = false, horizontal = false, onPointClick }) => {
|
|
20012
20048
|
const categories = useMemo(() => {
|
|
20013
20049
|
const set = [];
|
|
20014
20050
|
const seen = /* @__PURE__ */ new Set();
|
|
@@ -20046,6 +20082,64 @@ var init_Chart = __esm({
|
|
|
20046
20082
|
}
|
|
20047
20083
|
return m;
|
|
20048
20084
|
}, [series, stack, columnTotals]);
|
|
20085
|
+
if (horizontal) {
|
|
20086
|
+
return /* @__PURE__ */ jsx(VStack, { gap: "xs", align: "stretch", className: "w-full", style: { minHeight: height }, children: categories.map((label, catIdx) => {
|
|
20087
|
+
const displayLabel = timeAxis ? formatTimeLabel(label) : label;
|
|
20088
|
+
const total = columnTotals?.[catIdx] ?? 1;
|
|
20089
|
+
return /* @__PURE__ */ jsxs(HStack, { gap: "sm", align: "center", className: "w-full", children: [
|
|
20090
|
+
/* @__PURE__ */ jsx(
|
|
20091
|
+
Typography,
|
|
20092
|
+
{
|
|
20093
|
+
variant: "caption",
|
|
20094
|
+
color: "secondary",
|
|
20095
|
+
className: "truncate text-right",
|
|
20096
|
+
style: { width: 80, flexShrink: 0 },
|
|
20097
|
+
children: displayLabel
|
|
20098
|
+
}
|
|
20099
|
+
),
|
|
20100
|
+
/* @__PURE__ */ jsx(
|
|
20101
|
+
HStack,
|
|
20102
|
+
{
|
|
20103
|
+
gap: stack === "none" ? "xs" : "none",
|
|
20104
|
+
align: "center",
|
|
20105
|
+
className: "flex-1 min-w-0",
|
|
20106
|
+
style: { height: 24 },
|
|
20107
|
+
children: series.map((s, sIdx) => {
|
|
20108
|
+
const value = valueAt(s, label);
|
|
20109
|
+
const ratio = stack === "normalize" ? total === 0 ? 0 : value / total * 100 : value / maxValue * 100;
|
|
20110
|
+
const color = seriesColor(s, sIdx);
|
|
20111
|
+
return /* @__PURE__ */ jsx(
|
|
20112
|
+
Box,
|
|
20113
|
+
{
|
|
20114
|
+
className: "h-full rounded-r-sm transition-all duration-500 ease-out min-w-[2px] cursor-pointer hover:opacity-80",
|
|
20115
|
+
style: {
|
|
20116
|
+
width: `${ratio}%`,
|
|
20117
|
+
backgroundColor: color
|
|
20118
|
+
},
|
|
20119
|
+
onClick: () => onPointClick?.(
|
|
20120
|
+
{ label, value, color },
|
|
20121
|
+
s.name
|
|
20122
|
+
),
|
|
20123
|
+
title: `${s.name}: ${value}`
|
|
20124
|
+
},
|
|
20125
|
+
s.name
|
|
20126
|
+
);
|
|
20127
|
+
})
|
|
20128
|
+
}
|
|
20129
|
+
),
|
|
20130
|
+
showValues && series.length === 1 && /* @__PURE__ */ jsx(
|
|
20131
|
+
Typography,
|
|
20132
|
+
{
|
|
20133
|
+
variant: "caption",
|
|
20134
|
+
color: "secondary",
|
|
20135
|
+
className: "tabular-nums",
|
|
20136
|
+
style: { width: 40, flexShrink: 0 },
|
|
20137
|
+
children: valueAt(series[0], label)
|
|
20138
|
+
}
|
|
20139
|
+
)
|
|
20140
|
+
] }, label);
|
|
20141
|
+
}) });
|
|
20142
|
+
}
|
|
20049
20143
|
return /* @__PURE__ */ jsx(
|
|
20050
20144
|
HStack,
|
|
20051
20145
|
{
|
|
@@ -20473,10 +20567,20 @@ var init_Chart = __esm({
|
|
|
20473
20567
|
}
|
|
20474
20568
|
);
|
|
20475
20569
|
};
|
|
20570
|
+
LOOK_FROM_CHART_TYPE = {
|
|
20571
|
+
bar: "bar-vertical",
|
|
20572
|
+
line: "line",
|
|
20573
|
+
pie: "pie",
|
|
20574
|
+
area: "area",
|
|
20575
|
+
donut: "donut",
|
|
20576
|
+
scatter: "scatter",
|
|
20577
|
+
histogram: "histogram"
|
|
20578
|
+
};
|
|
20476
20579
|
Chart = ({
|
|
20477
20580
|
title,
|
|
20478
20581
|
subtitle,
|
|
20479
|
-
chartType
|
|
20582
|
+
chartType,
|
|
20583
|
+
look,
|
|
20480
20584
|
series,
|
|
20481
20585
|
data: simpleData,
|
|
20482
20586
|
scatterData,
|
|
@@ -20492,6 +20596,7 @@ var init_Chart = __esm({
|
|
|
20492
20596
|
error,
|
|
20493
20597
|
className
|
|
20494
20598
|
}) => {
|
|
20599
|
+
const resolvedLook = look ?? (chartType ? LOOK_FROM_CHART_TYPE[chartType] : "bar-vertical");
|
|
20495
20600
|
const eventBus = useEventBus();
|
|
20496
20601
|
const { t } = useTranslate();
|
|
20497
20602
|
const handleAction = useCallback(
|
|
@@ -20520,7 +20625,7 @@ var init_Chart = __esm({
|
|
|
20520
20625
|
return [];
|
|
20521
20626
|
}, [simpleData, series]);
|
|
20522
20627
|
const firstSeriesData = normalizedSeries[0]?.data ?? [];
|
|
20523
|
-
const hasContent =
|
|
20628
|
+
const hasContent = resolvedLook === "scatter" ? (scatterData?.length ?? 0) > 0 : normalizedSeries.some((s) => s.data.length > 0);
|
|
20524
20629
|
if (isLoading) {
|
|
20525
20630
|
return /* @__PURE__ */ jsx(LoadingState, { message: "Loading chart...", className });
|
|
20526
20631
|
}
|
|
@@ -20555,7 +20660,7 @@ var init_Chart = __esm({
|
|
|
20555
20660
|
)) })
|
|
20556
20661
|
] }),
|
|
20557
20662
|
/* @__PURE__ */ jsxs(Box, { className: "w-full", children: [
|
|
20558
|
-
|
|
20663
|
+
resolvedLook === "bar-vertical" && /* @__PURE__ */ jsx(
|
|
20559
20664
|
BarChart,
|
|
20560
20665
|
{
|
|
20561
20666
|
series: normalizedSeries,
|
|
@@ -20566,7 +20671,19 @@ var init_Chart = __esm({
|
|
|
20566
20671
|
onPointClick: handlePointClick
|
|
20567
20672
|
}
|
|
20568
20673
|
),
|
|
20569
|
-
|
|
20674
|
+
resolvedLook === "bar-horizontal" && /* @__PURE__ */ jsx(
|
|
20675
|
+
BarChart,
|
|
20676
|
+
{
|
|
20677
|
+
series: normalizedSeries,
|
|
20678
|
+
height,
|
|
20679
|
+
showValues,
|
|
20680
|
+
stack,
|
|
20681
|
+
timeAxis,
|
|
20682
|
+
horizontal: true,
|
|
20683
|
+
onPointClick: handlePointClick
|
|
20684
|
+
}
|
|
20685
|
+
),
|
|
20686
|
+
resolvedLook === "histogram" && /* @__PURE__ */ jsx(
|
|
20570
20687
|
BarChart,
|
|
20571
20688
|
{
|
|
20572
20689
|
series: normalizedSeries,
|
|
@@ -20578,7 +20695,7 @@ var init_Chart = __esm({
|
|
|
20578
20695
|
onPointClick: handlePointClick
|
|
20579
20696
|
}
|
|
20580
20697
|
),
|
|
20581
|
-
|
|
20698
|
+
resolvedLook === "line" && /* @__PURE__ */ jsx(
|
|
20582
20699
|
LineChart,
|
|
20583
20700
|
{
|
|
20584
20701
|
series: normalizedSeries,
|
|
@@ -20588,7 +20705,7 @@ var init_Chart = __esm({
|
|
|
20588
20705
|
onPointClick: handlePointClick
|
|
20589
20706
|
}
|
|
20590
20707
|
),
|
|
20591
|
-
|
|
20708
|
+
resolvedLook === "area" && /* @__PURE__ */ jsx(
|
|
20592
20709
|
LineChart,
|
|
20593
20710
|
{
|
|
20594
20711
|
series: normalizedSeries,
|
|
@@ -20599,7 +20716,7 @@ var init_Chart = __esm({
|
|
|
20599
20716
|
onPointClick: handlePointClick
|
|
20600
20717
|
}
|
|
20601
20718
|
),
|
|
20602
|
-
|
|
20719
|
+
resolvedLook === "pie" && /* @__PURE__ */ jsx(
|
|
20603
20720
|
PieChart,
|
|
20604
20721
|
{
|
|
20605
20722
|
data: firstSeriesData,
|
|
@@ -20608,7 +20725,7 @@ var init_Chart = __esm({
|
|
|
20608
20725
|
onPointClick: handlePointClick
|
|
20609
20726
|
}
|
|
20610
20727
|
),
|
|
20611
|
-
|
|
20728
|
+
resolvedLook === "donut" && /* @__PURE__ */ jsx(
|
|
20612
20729
|
PieChart,
|
|
20613
20730
|
{
|
|
20614
20731
|
data: firstSeriesData,
|
|
@@ -20618,7 +20735,7 @@ var init_Chart = __esm({
|
|
|
20618
20735
|
onPointClick: handlePointClick
|
|
20619
20736
|
}
|
|
20620
20737
|
),
|
|
20621
|
-
|
|
20738
|
+
resolvedLook === "scatter" && /* @__PURE__ */ jsx(
|
|
20622
20739
|
ScatterChart,
|
|
20623
20740
|
{
|
|
20624
20741
|
data: scatterData ?? [],
|
|
@@ -23963,7 +24080,7 @@ var init_FormField = __esm({
|
|
|
23963
24080
|
FormField.displayName = "FormField";
|
|
23964
24081
|
}
|
|
23965
24082
|
});
|
|
23966
|
-
var resolveFilterType, FilterGroup;
|
|
24083
|
+
var resolveFilterType, lookStyles5, FilterGroup;
|
|
23967
24084
|
var init_FilterGroup = __esm({
|
|
23968
24085
|
"components/molecules/FilterGroup.tsx"() {
|
|
23969
24086
|
"use client";
|
|
@@ -23977,6 +24094,13 @@ var init_FilterGroup = __esm({
|
|
|
23977
24094
|
init_useEventBus();
|
|
23978
24095
|
init_useQuerySingleton();
|
|
23979
24096
|
resolveFilterType = (filter) => filter.filterType ?? filter.type;
|
|
24097
|
+
lookStyles5 = {
|
|
24098
|
+
toolbar: "",
|
|
24099
|
+
chips: "gap-2 [&>*]:rounded-pill [&>*]:px-3 [&>*]:py-1",
|
|
24100
|
+
pills: "gap-2 [&>*]:rounded-pill",
|
|
24101
|
+
"popover-trigger": "[&>*:not(:first-child)]:hidden",
|
|
24102
|
+
"inline-column-header": "hidden"
|
|
24103
|
+
};
|
|
23980
24104
|
FilterGroup = ({
|
|
23981
24105
|
entity,
|
|
23982
24106
|
filters,
|
|
@@ -23986,7 +24110,8 @@ var init_FilterGroup = __esm({
|
|
|
23986
24110
|
variant = "default",
|
|
23987
24111
|
showIcon = true,
|
|
23988
24112
|
query,
|
|
23989
|
-
isLoading
|
|
24113
|
+
isLoading,
|
|
24114
|
+
look = "toolbar"
|
|
23990
24115
|
}) => {
|
|
23991
24116
|
const eventBus = useEventBus();
|
|
23992
24117
|
const queryState = useQuerySingleton(query);
|
|
@@ -24041,63 +24166,71 @@ var init_FilterGroup = __esm({
|
|
|
24041
24166
|
}, [onClearAll, queryState, eventBus, entity, query]);
|
|
24042
24167
|
const activeFilterCount = Object.keys(selectedValues).length;
|
|
24043
24168
|
if (variant === "pills") {
|
|
24044
|
-
return /* @__PURE__ */ jsxs(
|
|
24045
|
-
|
|
24046
|
-
|
|
24047
|
-
|
|
24048
|
-
|
|
24049
|
-
|
|
24050
|
-
|
|
24051
|
-
|
|
24052
|
-
HStack,
|
|
24053
|
-
|
|
24054
|
-
|
|
24055
|
-
|
|
24056
|
-
|
|
24057
|
-
|
|
24058
|
-
|
|
24059
|
-
|
|
24060
|
-
|
|
24061
|
-
|
|
24062
|
-
|
|
24063
|
-
|
|
24064
|
-
|
|
24065
|
-
|
|
24066
|
-
|
|
24067
|
-
|
|
24068
|
-
|
|
24069
|
-
|
|
24070
|
-
|
|
24071
|
-
|
|
24072
|
-
|
|
24073
|
-
|
|
24074
|
-
className: cn(
|
|
24075
|
-
"px-3 py-1.5 text-sm font-medium transition-all duration-[var(--transition-fast)]",
|
|
24076
|
-
"border-l-[length:var(--border-width)] border-border",
|
|
24077
|
-
selectedValues[filter.field] === option ? "bg-primary text-primary-foreground" : "bg-card text-muted-foreground hover:bg-muted"
|
|
24169
|
+
return /* @__PURE__ */ jsxs(
|
|
24170
|
+
HStack,
|
|
24171
|
+
{
|
|
24172
|
+
gap: "md",
|
|
24173
|
+
align: "center",
|
|
24174
|
+
className: cn("flex-wrap", lookStyles5[look], className),
|
|
24175
|
+
children: [
|
|
24176
|
+
showIcon && /* @__PURE__ */ jsx(Icon, { name: "filter", className: "h-4 w-4 text-muted-foreground" }),
|
|
24177
|
+
filters.map((filter) => /* @__PURE__ */ jsxs(HStack, { gap: "xs", align: "center", children: [
|
|
24178
|
+
/* @__PURE__ */ jsxs("span", { className: "text-sm font-medium text-muted-foreground", children: [
|
|
24179
|
+
filter.label,
|
|
24180
|
+
":"
|
|
24181
|
+
] }),
|
|
24182
|
+
/* @__PURE__ */ jsxs(
|
|
24183
|
+
HStack,
|
|
24184
|
+
{
|
|
24185
|
+
gap: "none",
|
|
24186
|
+
className: "rounded-sm overflow-hidden border-[length:var(--border-width)] border-border",
|
|
24187
|
+
children: [
|
|
24188
|
+
/* @__PURE__ */ jsx(
|
|
24189
|
+
"button",
|
|
24190
|
+
{
|
|
24191
|
+
type: "button",
|
|
24192
|
+
onClick: () => handleFilterSelect(filter.field, null),
|
|
24193
|
+
className: cn(
|
|
24194
|
+
"px-3 py-1.5 text-sm font-medium transition-all duration-[var(--transition-fast)]",
|
|
24195
|
+
!selectedValues[filter.field] ? "bg-primary text-primary-foreground" : "bg-card text-muted-foreground hover:bg-muted"
|
|
24196
|
+
),
|
|
24197
|
+
children: "All"
|
|
24198
|
+
}
|
|
24078
24199
|
),
|
|
24079
|
-
|
|
24080
|
-
|
|
24081
|
-
|
|
24082
|
-
|
|
24083
|
-
|
|
24084
|
-
|
|
24085
|
-
|
|
24086
|
-
|
|
24087
|
-
|
|
24088
|
-
|
|
24089
|
-
|
|
24090
|
-
|
|
24091
|
-
|
|
24092
|
-
|
|
24093
|
-
|
|
24094
|
-
|
|
24095
|
-
|
|
24096
|
-
|
|
24097
|
-
|
|
24200
|
+
filter.options?.map((option) => /* @__PURE__ */ jsx(
|
|
24201
|
+
"button",
|
|
24202
|
+
{
|
|
24203
|
+
type: "button",
|
|
24204
|
+
onClick: () => handleFilterSelect(filter.field, option),
|
|
24205
|
+
className: cn(
|
|
24206
|
+
"px-3 py-1.5 text-sm font-medium transition-all duration-[var(--transition-fast)]",
|
|
24207
|
+
"border-l-[length:var(--border-width)] border-border",
|
|
24208
|
+
selectedValues[filter.field] === option ? "bg-primary text-primary-foreground" : "bg-card text-muted-foreground hover:bg-muted"
|
|
24209
|
+
),
|
|
24210
|
+
children: option
|
|
24211
|
+
},
|
|
24212
|
+
option
|
|
24213
|
+
))
|
|
24214
|
+
]
|
|
24215
|
+
}
|
|
24216
|
+
)
|
|
24217
|
+
] }, filter.field)),
|
|
24218
|
+
activeFilterCount > 0 && /* @__PURE__ */ jsx(
|
|
24219
|
+
Button,
|
|
24220
|
+
{
|
|
24221
|
+
variant: "ghost",
|
|
24222
|
+
size: "sm",
|
|
24223
|
+
onClick: handleClearAll,
|
|
24224
|
+
leftIcon: /* @__PURE__ */ jsx(Icon, { name: "x", className: "h-3.5 w-3.5" }),
|
|
24225
|
+
children: "Clear"
|
|
24226
|
+
}
|
|
24227
|
+
)
|
|
24228
|
+
]
|
|
24229
|
+
}
|
|
24230
|
+
);
|
|
24098
24231
|
}
|
|
24099
24232
|
if (variant === "vertical") {
|
|
24100
|
-
return /* @__PURE__ */ jsxs("div", { className: cn("flex flex-col gap-4", className), children: [
|
|
24233
|
+
return /* @__PURE__ */ jsxs("div", { className: cn("flex flex-col gap-4", lookStyles5[look], className), children: [
|
|
24101
24234
|
showIcon && /* @__PURE__ */ jsxs("div", { className: "flex items-center gap-2 text-muted-foreground", children: [
|
|
24102
24235
|
/* @__PURE__ */ jsx(Icon, { name: "filter", className: "h-4 w-4" }),
|
|
24103
24236
|
/* @__PURE__ */ jsx("span", { className: "text-sm font-bold uppercase tracking-wide", children: "Filters" })
|
|
@@ -24180,92 +24313,100 @@ var init_FilterGroup = __esm({
|
|
|
24180
24313
|
] });
|
|
24181
24314
|
}
|
|
24182
24315
|
if (variant === "compact") {
|
|
24183
|
-
return /* @__PURE__ */ jsxs(
|
|
24184
|
-
|
|
24185
|
-
|
|
24186
|
-
|
|
24187
|
-
|
|
24188
|
-
|
|
24189
|
-
|
|
24190
|
-
|
|
24191
|
-
|
|
24192
|
-
|
|
24193
|
-
|
|
24194
|
-
|
|
24195
|
-
|
|
24196
|
-
|
|
24197
|
-
|
|
24198
|
-
|
|
24199
|
-
|
|
24200
|
-
|
|
24201
|
-
|
|
24202
|
-
|
|
24203
|
-
|
|
24204
|
-
|
|
24205
|
-
|
|
24206
|
-
|
|
24207
|
-
|
|
24208
|
-
|
|
24209
|
-
|
|
24210
|
-
|
|
24211
|
-
|
|
24212
|
-
|
|
24213
|
-
value: selectedValues[`${filter.field}_to`] || "",
|
|
24214
|
-
onChange: (e) => handleFilterSelect(
|
|
24215
|
-
`${filter.field}_to`,
|
|
24216
|
-
e.target.value || null
|
|
24316
|
+
return /* @__PURE__ */ jsxs(
|
|
24317
|
+
HStack,
|
|
24318
|
+
{
|
|
24319
|
+
gap: "sm",
|
|
24320
|
+
align: "center",
|
|
24321
|
+
className: cn("flex-wrap", lookStyles5[look], className),
|
|
24322
|
+
children: [
|
|
24323
|
+
showIcon && /* @__PURE__ */ jsx(Icon, { name: "filter", className: "h-4 w-4 text-muted-foreground" }),
|
|
24324
|
+
filters.map((filter) => /* @__PURE__ */ jsx("div", { className: "min-w-[120px]", children: resolveFilterType(filter) === "date" ? /* @__PURE__ */ jsx(
|
|
24325
|
+
Input,
|
|
24326
|
+
{
|
|
24327
|
+
type: "date",
|
|
24328
|
+
value: selectedValues[filter.field] || "",
|
|
24329
|
+
onChange: (e) => handleFilterSelect(filter.field, e.target.value || null),
|
|
24330
|
+
clearable: true,
|
|
24331
|
+
onClear: () => handleFilterSelect(filter.field, null),
|
|
24332
|
+
className: "text-sm"
|
|
24333
|
+
}
|
|
24334
|
+
) : resolveFilterType(filter) === "daterange" || resolveFilterType(filter) === "date-range" ? /* @__PURE__ */ jsxs(HStack, { gap: "xs", align: "center", children: [
|
|
24335
|
+
/* @__PURE__ */ jsx(
|
|
24336
|
+
Input,
|
|
24337
|
+
{
|
|
24338
|
+
type: "date",
|
|
24339
|
+
value: selectedValues[`${filter.field}_from`] || "",
|
|
24340
|
+
onChange: (e) => handleFilterSelect(
|
|
24341
|
+
`${filter.field}_from`,
|
|
24342
|
+
e.target.value || null
|
|
24343
|
+
),
|
|
24344
|
+
className: "text-sm min-w-[100px]"
|
|
24345
|
+
}
|
|
24217
24346
|
),
|
|
24218
|
-
className: "text-
|
|
24219
|
-
|
|
24220
|
-
|
|
24221
|
-
|
|
24222
|
-
|
|
24223
|
-
|
|
24224
|
-
|
|
24225
|
-
|
|
24226
|
-
|
|
24227
|
-
|
|
24228
|
-
|
|
24229
|
-
|
|
24230
|
-
|
|
24231
|
-
|
|
24232
|
-
|
|
24233
|
-
{
|
|
24234
|
-
value: selectedValues[filter.field] || "all",
|
|
24235
|
-
onChange: (e) => handleFilterSelect(filter.field, e.target.value),
|
|
24236
|
-
options: [
|
|
24237
|
-
{ value: "all", label: `All ${filter.label}` },
|
|
24238
|
-
...filter.options?.map((opt) => ({
|
|
24239
|
-
value: opt,
|
|
24240
|
-
label: opt
|
|
24241
|
-
})) || []
|
|
24242
|
-
],
|
|
24243
|
-
className: "text-sm"
|
|
24244
|
-
}
|
|
24245
|
-
) }, filter.field)),
|
|
24246
|
-
activeFilterCount > 0 && /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
24247
|
-
Object.entries(selectedValues).map(([field, value]) => {
|
|
24248
|
-
const filterDef = filters.find((f3) => f3.field === field);
|
|
24249
|
-
return /* @__PURE__ */ jsxs(
|
|
24250
|
-
Badge,
|
|
24347
|
+
/* @__PURE__ */ jsx("span", { className: "text-muted-foreground", children: "-" }),
|
|
24348
|
+
/* @__PURE__ */ jsx(
|
|
24349
|
+
Input,
|
|
24350
|
+
{
|
|
24351
|
+
type: "date",
|
|
24352
|
+
value: selectedValues[`${filter.field}_to`] || "",
|
|
24353
|
+
onChange: (e) => handleFilterSelect(
|
|
24354
|
+
`${filter.field}_to`,
|
|
24355
|
+
e.target.value || null
|
|
24356
|
+
),
|
|
24357
|
+
className: "text-sm min-w-[100px]"
|
|
24358
|
+
}
|
|
24359
|
+
)
|
|
24360
|
+
] }) : resolveFilterType(filter) === "text" ? /* @__PURE__ */ jsx(
|
|
24361
|
+
Input,
|
|
24251
24362
|
{
|
|
24252
|
-
|
|
24253
|
-
|
|
24254
|
-
|
|
24255
|
-
|
|
24256
|
-
|
|
24257
|
-
|
|
24258
|
-
|
|
24259
|
-
|
|
24260
|
-
|
|
24261
|
-
|
|
24262
|
-
|
|
24263
|
-
|
|
24264
|
-
|
|
24265
|
-
|
|
24266
|
-
|
|
24267
|
-
|
|
24268
|
-
|
|
24363
|
+
value: selectedValues[filter.field] || "",
|
|
24364
|
+
onChange: (e) => handleFilterSelect(filter.field, e.target.value || null),
|
|
24365
|
+
placeholder: filter.label,
|
|
24366
|
+
clearable: true,
|
|
24367
|
+
onClear: () => handleFilterSelect(filter.field, null),
|
|
24368
|
+
className: "text-sm"
|
|
24369
|
+
}
|
|
24370
|
+
) : /* @__PURE__ */ jsx(
|
|
24371
|
+
Select,
|
|
24372
|
+
{
|
|
24373
|
+
value: selectedValues[filter.field] || "all",
|
|
24374
|
+
onChange: (e) => handleFilterSelect(filter.field, e.target.value),
|
|
24375
|
+
options: [
|
|
24376
|
+
{ value: "all", label: `All ${filter.label}` },
|
|
24377
|
+
...filter.options?.map((opt) => ({
|
|
24378
|
+
value: opt,
|
|
24379
|
+
label: opt
|
|
24380
|
+
})) || []
|
|
24381
|
+
],
|
|
24382
|
+
className: "text-sm"
|
|
24383
|
+
}
|
|
24384
|
+
) }, filter.field)),
|
|
24385
|
+
activeFilterCount > 0 && /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
24386
|
+
Object.entries(selectedValues).map(([field, value]) => {
|
|
24387
|
+
const filterDef = filters.find((f3) => f3.field === field);
|
|
24388
|
+
return /* @__PURE__ */ jsxs(
|
|
24389
|
+
Badge,
|
|
24390
|
+
{
|
|
24391
|
+
variant: "primary",
|
|
24392
|
+
size: "md",
|
|
24393
|
+
className: "cursor-pointer",
|
|
24394
|
+
onClick: () => handleFilterSelect(field, null),
|
|
24395
|
+
children: [
|
|
24396
|
+
filterDef?.label,
|
|
24397
|
+
": ",
|
|
24398
|
+
value,
|
|
24399
|
+
/* @__PURE__ */ jsx(Icon, { name: "x", className: "ml-1 h-3 w-3" })
|
|
24400
|
+
]
|
|
24401
|
+
},
|
|
24402
|
+
field
|
|
24403
|
+
);
|
|
24404
|
+
}),
|
|
24405
|
+
/* @__PURE__ */ jsx(Button, { variant: "ghost", size: "sm", onClick: handleClearAll, children: "Clear all" })
|
|
24406
|
+
] })
|
|
24407
|
+
]
|
|
24408
|
+
}
|
|
24409
|
+
);
|
|
24269
24410
|
}
|
|
24270
24411
|
return /* @__PURE__ */ jsx(
|
|
24271
24412
|
"div",
|
|
@@ -24274,6 +24415,7 @@ var init_FilterGroup = __esm({
|
|
|
24274
24415
|
"p-4 rounded-container",
|
|
24275
24416
|
"bg-card",
|
|
24276
24417
|
"border-[length:var(--border-width)] border-border",
|
|
24418
|
+
lookStyles5[look],
|
|
24277
24419
|
className
|
|
24278
24420
|
),
|
|
24279
24421
|
children: /* @__PURE__ */ jsxs(HStack, { gap: "md", align: "center", className: "flex-wrap", children: [
|
|
@@ -28747,7 +28889,7 @@ function composeDisplayValue(value, format, max, prefix, suffix) {
|
|
|
28747
28889
|
const withMax = max != null && max > 0 ? `${formatted} / ${max}` : formatted;
|
|
28748
28890
|
return `${prefix ?? ""}${withMax}${suffix ?? ""}`;
|
|
28749
28891
|
}
|
|
28750
|
-
var variantColor, StatDisplay;
|
|
28892
|
+
var lookStyles6, variantColor, StatDisplay;
|
|
28751
28893
|
var init_StatDisplay = __esm({
|
|
28752
28894
|
"components/molecules/StatDisplay.tsx"() {
|
|
28753
28895
|
"use client";
|
|
@@ -28759,6 +28901,13 @@ var init_StatDisplay = __esm({
|
|
|
28759
28901
|
init_Sparkline();
|
|
28760
28902
|
init_Icon();
|
|
28761
28903
|
init_useEventBus();
|
|
28904
|
+
lookStyles6 = {
|
|
28905
|
+
elevated: "",
|
|
28906
|
+
flat: "shadow-none border-[length:var(--border-width)] border-border",
|
|
28907
|
+
"progress-backed": "",
|
|
28908
|
+
gauge: "",
|
|
28909
|
+
sparkline: ""
|
|
28910
|
+
};
|
|
28762
28911
|
variantColor = {
|
|
28763
28912
|
default: "text-foreground",
|
|
28764
28913
|
primary: "text-primary",
|
|
@@ -28786,6 +28935,7 @@ var init_StatDisplay = __esm({
|
|
|
28786
28935
|
size = "md",
|
|
28787
28936
|
variant = "default",
|
|
28788
28937
|
compact = false,
|
|
28938
|
+
look = "elevated",
|
|
28789
28939
|
className,
|
|
28790
28940
|
isLoading = false,
|
|
28791
28941
|
error = null
|
|
@@ -28838,7 +28988,7 @@ var init_StatDisplay = __esm({
|
|
|
28838
28988
|
return /* @__PURE__ */ jsx(
|
|
28839
28989
|
Card,
|
|
28840
28990
|
{
|
|
28841
|
-
className: cn(padSizes[size], clickEvent && "cursor-pointer hover:shadow-md transition-shadow", className),
|
|
28991
|
+
className: cn(padSizes[size], lookStyles6[look], clickEvent && "cursor-pointer hover:shadow-md transition-shadow", className),
|
|
28842
28992
|
onClick: clickEvent ? handleClick : void 0,
|
|
28843
28993
|
children: /* @__PURE__ */ jsxs(HStack, { align: "start", justify: "between", children: [
|
|
28844
28994
|
/* @__PURE__ */ jsxs(VStack, { gap: "none", className: "space-y-1 flex-1", children: [
|
|
@@ -34282,7 +34432,8 @@ function DataTable({
|
|
|
34282
34432
|
bulkActions,
|
|
34283
34433
|
headerActions,
|
|
34284
34434
|
showTotal = true,
|
|
34285
|
-
className
|
|
34435
|
+
className,
|
|
34436
|
+
look = "dense"
|
|
34286
34437
|
}) {
|
|
34287
34438
|
const [openActionMenu, setOpenActionMenu] = useState(
|
|
34288
34439
|
null
|
|
@@ -34409,6 +34560,7 @@ function DataTable({
|
|
|
34409
34560
|
{
|
|
34410
34561
|
className: cn(
|
|
34411
34562
|
"bg-card border-2 border-border rounded-none overflow-hidden",
|
|
34563
|
+
lookStyles7[look],
|
|
34412
34564
|
className
|
|
34413
34565
|
),
|
|
34414
34566
|
children: [
|
|
@@ -34635,6 +34787,7 @@ function DataTable({
|
|
|
34635
34787
|
}
|
|
34636
34788
|
);
|
|
34637
34789
|
}
|
|
34790
|
+
var lookStyles7;
|
|
34638
34791
|
var init_DataTable = __esm({
|
|
34639
34792
|
"components/organisms/DataTable.tsx"() {
|
|
34640
34793
|
"use client";
|
|
@@ -34648,6 +34801,13 @@ var init_DataTable = __esm({
|
|
|
34648
34801
|
init_useEventBus();
|
|
34649
34802
|
init_useTranslate();
|
|
34650
34803
|
init_types3();
|
|
34804
|
+
lookStyles7 = {
|
|
34805
|
+
dense: "",
|
|
34806
|
+
spacious: "[&_tbody_tr_td]:py-5 [&_thead_tr_th]:py-4",
|
|
34807
|
+
striped: "[&_tbody_tr:nth-child(odd)]:bg-muted/30",
|
|
34808
|
+
borderless: "border-0 [&_thead]:border-b-0 [&_tbody_tr]:border-b-0 [&_tbody]:divide-y-0",
|
|
34809
|
+
"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"
|
|
34810
|
+
};
|
|
34651
34811
|
DataTable.displayName = "DataTable";
|
|
34652
34812
|
}
|
|
34653
34813
|
});
|
|
@@ -37806,7 +37966,7 @@ var init_GraphCanvas = __esm({
|
|
|
37806
37966
|
GraphCanvas.displayName = "GraphCanvas";
|
|
37807
37967
|
}
|
|
37808
37968
|
});
|
|
37809
|
-
var Header;
|
|
37969
|
+
var lookStyles8, Header;
|
|
37810
37970
|
var init_Header = __esm({
|
|
37811
37971
|
"components/organisms/Header.tsx"() {
|
|
37812
37972
|
"use client";
|
|
@@ -37819,6 +37979,13 @@ var init_Header = __esm({
|
|
|
37819
37979
|
init_Typography();
|
|
37820
37980
|
init_cn();
|
|
37821
37981
|
init_useTranslate();
|
|
37982
|
+
lookStyles8 = {
|
|
37983
|
+
"compact-bar": "",
|
|
37984
|
+
hero: "py-section min-h-[200px] [&_h1]:text-display-1",
|
|
37985
|
+
breadcrumb: "py-2 text-sm [&_h1]:text-base [&_h1]:font-medium",
|
|
37986
|
+
contextual: "py-3 [&_h1]:text-lg",
|
|
37987
|
+
"editorial-banner": "py-12 [&_h1]:text-display-2 [&_h1]:font-display-bold border-b border-border"
|
|
37988
|
+
};
|
|
37822
37989
|
Header = ({
|
|
37823
37990
|
logo,
|
|
37824
37991
|
logoSrc,
|
|
@@ -37836,6 +38003,7 @@ var init_Header = __esm({
|
|
|
37836
38003
|
actions,
|
|
37837
38004
|
sticky = true,
|
|
37838
38005
|
variant = "mobile",
|
|
38006
|
+
look = "compact-bar",
|
|
37839
38007
|
onLogoClick,
|
|
37840
38008
|
className
|
|
37841
38009
|
}) => {
|
|
@@ -37851,6 +38019,7 @@ var init_Header = __esm({
|
|
|
37851
38019
|
"flex items-center px-4 justify-between bg-card",
|
|
37852
38020
|
sticky && "sticky top-0 z-50",
|
|
37853
38021
|
variant === "mobile" && "lg:hidden",
|
|
38022
|
+
lookStyles8[look],
|
|
37854
38023
|
className
|
|
37855
38024
|
),
|
|
37856
38025
|
children: [
|
|
@@ -44546,7 +44715,7 @@ var init_TeamOrganism = __esm({
|
|
|
44546
44715
|
TeamOrganism.displayName = "TeamOrganism";
|
|
44547
44716
|
}
|
|
44548
44717
|
});
|
|
44549
|
-
var STATUS_STYLES3, Timeline;
|
|
44718
|
+
var lookStyles9, STATUS_STYLES3, Timeline;
|
|
44550
44719
|
var init_Timeline = __esm({
|
|
44551
44720
|
"components/organisms/Timeline.tsx"() {
|
|
44552
44721
|
"use client";
|
|
@@ -44557,6 +44726,12 @@ var init_Timeline = __esm({
|
|
|
44557
44726
|
init_ErrorState();
|
|
44558
44727
|
init_EmptyState();
|
|
44559
44728
|
init_useTranslate();
|
|
44729
|
+
lookStyles9 = {
|
|
44730
|
+
"vertical-compact": "gap-1 [&>*]:py-1",
|
|
44731
|
+
"vertical-spacious": "",
|
|
44732
|
+
horizontal: "flex-row [&>*]:flex-row [&>*]:items-center",
|
|
44733
|
+
swimlane: "flex-row gap-6 [&>*]:flex-row [&>*]:items-center"
|
|
44734
|
+
};
|
|
44560
44735
|
STATUS_STYLES3 = {
|
|
44561
44736
|
complete: {
|
|
44562
44737
|
dotColor: "text-success",
|
|
@@ -44587,7 +44762,8 @@ var init_Timeline = __esm({
|
|
|
44587
44762
|
entity,
|
|
44588
44763
|
isLoading = false,
|
|
44589
44764
|
error,
|
|
44590
|
-
className
|
|
44765
|
+
className,
|
|
44766
|
+
look = "vertical-spacious"
|
|
44591
44767
|
}) => {
|
|
44592
44768
|
const { t } = useTranslate();
|
|
44593
44769
|
const entityData = Array.isArray(entity) ? entity : [];
|
|
@@ -44643,7 +44819,7 @@ var init_Timeline = __esm({
|
|
|
44643
44819
|
}
|
|
44644
44820
|
return /* @__PURE__ */ jsx(Card, { className: cn("p-6", className), children: /* @__PURE__ */ jsxs(VStack, { gap: "md", children: [
|
|
44645
44821
|
title && /* @__PURE__ */ jsx(Typography, { variant: "h5", weight: "semibold", children: title }),
|
|
44646
|
-
/* @__PURE__ */ jsx(VStack, { gap: "none", className: "relative", children: items.map((item, idx) => {
|
|
44822
|
+
/* @__PURE__ */ jsx(VStack, { gap: "none", className: cn("relative", lookStyles9[look]), children: items.map((item, idx) => {
|
|
44647
44823
|
const status = item.status || "pending";
|
|
44648
44824
|
const style = STATUS_STYLES3[status] || STATUS_STYLES3.pending;
|
|
44649
44825
|
const ItemIcon = item.icon || style.icon;
|