@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
|
@@ -2332,7 +2332,7 @@ var init_Checkbox = __esm({
|
|
|
2332
2332
|
exports.Checkbox.displayName = "Checkbox";
|
|
2333
2333
|
}
|
|
2334
2334
|
});
|
|
2335
|
-
var variantStyles2, paddingStyles, shadowStyles; exports.Card = void 0; exports.CardHeader = void 0; exports.CardTitle = void 0; exports.CardContent = void 0; exports.CardBody = void 0; exports.CardFooter = void 0;
|
|
2335
|
+
var variantStyles2, paddingStyles, shadowStyles, lookStyles; exports.Card = void 0; exports.CardHeader = void 0; exports.CardTitle = void 0; exports.CardContent = void 0; exports.CardBody = void 0; exports.CardFooter = void 0;
|
|
2336
2336
|
var init_Card = __esm({
|
|
2337
2337
|
"components/atoms/Card.tsx"() {
|
|
2338
2338
|
init_cn();
|
|
@@ -2380,6 +2380,15 @@ var init_Card = __esm({
|
|
|
2380
2380
|
md: "shadow",
|
|
2381
2381
|
lg: "shadow-elevation-dialog"
|
|
2382
2382
|
};
|
|
2383
|
+
lookStyles = {
|
|
2384
|
+
elevated: "",
|
|
2385
|
+
"flat-bordered": "shadow-none border-[length:var(--border-width)] border-border",
|
|
2386
|
+
"borderless-divider": "shadow-none border-0 border-b border-border rounded-none",
|
|
2387
|
+
ticket: "shadow-none border-dashed border-[length:var(--border-width)] border-border",
|
|
2388
|
+
invoice: "shadow-none border-[length:var(--border-width-thick)] border-border rounded-sm",
|
|
2389
|
+
chip: "shadow-none rounded-pill border-[length:var(--border-width)] border-border",
|
|
2390
|
+
"tile-image-first": "p-0 overflow-hidden"
|
|
2391
|
+
};
|
|
2383
2392
|
exports.Card = React80__namespace.default.forwardRef(
|
|
2384
2393
|
({
|
|
2385
2394
|
className,
|
|
@@ -2388,6 +2397,7 @@ var init_Card = __esm({
|
|
|
2388
2397
|
title,
|
|
2389
2398
|
subtitle,
|
|
2390
2399
|
shadow,
|
|
2400
|
+
look = "elevated",
|
|
2391
2401
|
children,
|
|
2392
2402
|
...props
|
|
2393
2403
|
}, ref) => {
|
|
@@ -2400,6 +2410,7 @@ var init_Card = __esm({
|
|
|
2400
2410
|
"transition-all duration-[var(--transition-normal)]",
|
|
2401
2411
|
variantStyles2[variant],
|
|
2402
2412
|
paddingStyles[padding],
|
|
2413
|
+
lookStyles[look],
|
|
2403
2414
|
shadow && shadowStyles[shadow],
|
|
2404
2415
|
className
|
|
2405
2416
|
),
|
|
@@ -6212,7 +6223,7 @@ var init_EntitySchemaContext = __esm({
|
|
|
6212
6223
|
EntitySchemaContext = React80.createContext(null);
|
|
6213
6224
|
}
|
|
6214
6225
|
});
|
|
6215
|
-
var sizeClasses5, minWidthClasses; exports.Modal = void 0;
|
|
6226
|
+
var sizeClasses5, minWidthClasses, lookStyles2; exports.Modal = void 0;
|
|
6216
6227
|
var init_Modal = __esm({
|
|
6217
6228
|
"components/molecules/Modal.tsx"() {
|
|
6218
6229
|
"use client";
|
|
@@ -6237,6 +6248,12 @@ var init_Modal = __esm({
|
|
|
6237
6248
|
xl: "min-w-[700px] max-sm:min-w-0",
|
|
6238
6249
|
full: "min-w-0"
|
|
6239
6250
|
};
|
|
6251
|
+
lookStyles2 = {
|
|
6252
|
+
"centered-card": "",
|
|
6253
|
+
"top-sheet": "top-0 rounded-t-none rounded-b-container max-w-full w-full",
|
|
6254
|
+
"side-drawer": "right-0 top-0 bottom-0 h-full rounded-l-container rounded-r-none w-[400px] max-w-full",
|
|
6255
|
+
"full-screen": "inset-0 rounded-none w-full h-full max-w-full"
|
|
6256
|
+
};
|
|
6240
6257
|
exports.Modal = ({
|
|
6241
6258
|
isOpen = true,
|
|
6242
6259
|
onClose = () => {
|
|
@@ -6250,7 +6267,8 @@ var init_Modal = __esm({
|
|
|
6250
6267
|
closeOnEscape = true,
|
|
6251
6268
|
className,
|
|
6252
6269
|
closeEvent,
|
|
6253
|
-
swipeDownToClose = true
|
|
6270
|
+
swipeDownToClose = true,
|
|
6271
|
+
look = "centered-card"
|
|
6254
6272
|
}) => {
|
|
6255
6273
|
const eventBus = useEventBus();
|
|
6256
6274
|
const modalRef = React80.useRef(null);
|
|
@@ -6335,6 +6353,7 @@ var init_Modal = __esm({
|
|
|
6335
6353
|
// Mobile: take the entire screen. Override desktop max-w cap,
|
|
6336
6354
|
// full height, no rounded corners, no min-width.
|
|
6337
6355
|
"max-sm:max-w-none max-sm:max-h-none max-sm:w-full max-sm:h-full max-sm:rounded-none",
|
|
6356
|
+
lookStyles2[look],
|
|
6338
6357
|
className
|
|
6339
6358
|
),
|
|
6340
6359
|
style: dragY > 0 ? {
|
|
@@ -14856,7 +14875,7 @@ var init_BookTableOfContents = __esm({
|
|
|
14856
14875
|
exports.BookTableOfContents.displayName = "BookTableOfContents";
|
|
14857
14876
|
}
|
|
14858
14877
|
});
|
|
14859
|
-
var ICON_NAME_ALIASES; exports.EmptyState = void 0;
|
|
14878
|
+
var ICON_NAME_ALIASES, lookStyles3; exports.EmptyState = void 0;
|
|
14860
14879
|
var init_EmptyState = __esm({
|
|
14861
14880
|
"components/molecules/EmptyState.tsx"() {
|
|
14862
14881
|
"use client";
|
|
@@ -14873,6 +14892,12 @@ var init_EmptyState = __esm({
|
|
|
14873
14892
|
error: "x-circle",
|
|
14874
14893
|
warning: "alert-circle"
|
|
14875
14894
|
};
|
|
14895
|
+
lookStyles3 = {
|
|
14896
|
+
"icon-only": "",
|
|
14897
|
+
illustrated: "[&_svg]:w-32 [&_svg]:h-32",
|
|
14898
|
+
"text-only": "[&_svg]:hidden",
|
|
14899
|
+
mascot: "[&_svg]:w-24 [&_svg]:h-24 [&_svg]:rounded-pill"
|
|
14900
|
+
};
|
|
14876
14901
|
exports.EmptyState = ({
|
|
14877
14902
|
icon,
|
|
14878
14903
|
title,
|
|
@@ -14883,7 +14908,8 @@ var init_EmptyState = __esm({
|
|
|
14883
14908
|
className,
|
|
14884
14909
|
destructive,
|
|
14885
14910
|
variant,
|
|
14886
|
-
actionEvent
|
|
14911
|
+
actionEvent,
|
|
14912
|
+
look = "icon-only"
|
|
14887
14913
|
}) => {
|
|
14888
14914
|
const eventBus = useEventBus();
|
|
14889
14915
|
const { t } = useTranslate();
|
|
@@ -14903,6 +14929,7 @@ var init_EmptyState = __esm({
|
|
|
14903
14929
|
align: "center",
|
|
14904
14930
|
className: cn(
|
|
14905
14931
|
"justify-center py-12 text-center",
|
|
14932
|
+
lookStyles3[look],
|
|
14906
14933
|
className
|
|
14907
14934
|
),
|
|
14908
14935
|
children: [
|
|
@@ -16143,7 +16170,7 @@ function useSafeEventBus2() {
|
|
|
16143
16170
|
} };
|
|
16144
16171
|
}
|
|
16145
16172
|
}
|
|
16146
|
-
var log6; exports.ButtonGroup = void 0;
|
|
16173
|
+
var log6, lookStyles4; exports.ButtonGroup = void 0;
|
|
16147
16174
|
var init_ButtonGroup = __esm({
|
|
16148
16175
|
"components/molecules/ButtonGroup.tsx"() {
|
|
16149
16176
|
"use client";
|
|
@@ -16151,6 +16178,13 @@ var init_ButtonGroup = __esm({
|
|
|
16151
16178
|
init_atoms();
|
|
16152
16179
|
init_useEventBus();
|
|
16153
16180
|
log6 = logger.createLogger("almadar:ui:button-group");
|
|
16181
|
+
lookStyles4 = {
|
|
16182
|
+
"right-aligned-buttons": "",
|
|
16183
|
+
"floating-bar": "fixed bottom-section left-1/2 -translate-x-1/2 shadow-elevation-toast bg-card p-card-sm rounded-container",
|
|
16184
|
+
"inline-row": "gap-2 inline-flex",
|
|
16185
|
+
"dropdown-menu": "[&>button:not(:first-child)]:hidden",
|
|
16186
|
+
"command-palette-trigger": "[&>button:not(:first-child)]:hidden"
|
|
16187
|
+
};
|
|
16154
16188
|
exports.ButtonGroup = ({
|
|
16155
16189
|
children,
|
|
16156
16190
|
primary,
|
|
@@ -16160,7 +16194,8 @@ var init_ButtonGroup = __esm({
|
|
|
16160
16194
|
className,
|
|
16161
16195
|
// Filter-group pattern props (entity and filters are used for schema-driven filtering)
|
|
16162
16196
|
entity: _entity,
|
|
16163
|
-
filters
|
|
16197
|
+
filters,
|
|
16198
|
+
look = "right-aligned-buttons"
|
|
16164
16199
|
}) => {
|
|
16165
16200
|
const eventBus = useSafeEventBus2();
|
|
16166
16201
|
const variantClasses2 = {
|
|
@@ -16237,6 +16272,7 @@ var init_ButtonGroup = __esm({
|
|
|
16237
16272
|
"inline-flex gap-2",
|
|
16238
16273
|
variantClasses2[variant],
|
|
16239
16274
|
orientationClasses[orientation],
|
|
16275
|
+
lookStyles4[look],
|
|
16240
16276
|
className
|
|
16241
16277
|
),
|
|
16242
16278
|
role: "group",
|
|
@@ -18768,7 +18804,7 @@ var init_CastleTemplate = __esm({
|
|
|
18768
18804
|
CastleTemplate.displayName = "CastleTemplate";
|
|
18769
18805
|
}
|
|
18770
18806
|
});
|
|
18771
|
-
var CHART_COLORS, seriesColor, monthFormatter, formatTimeLabel, BarChart, PieChart, LineChart, ScatterChart; exports.Chart = void 0;
|
|
18807
|
+
var CHART_COLORS, seriesColor, monthFormatter, formatTimeLabel, BarChart, PieChart, LineChart, ScatterChart, LOOK_FROM_CHART_TYPE; exports.Chart = void 0;
|
|
18772
18808
|
var init_Chart = __esm({
|
|
18773
18809
|
"components/organisms/Chart.tsx"() {
|
|
18774
18810
|
"use client";
|
|
@@ -18798,7 +18834,7 @@ var init_Chart = __esm({
|
|
|
18798
18834
|
if (Number.isNaN(parsed.getTime())) return raw;
|
|
18799
18835
|
return monthFormatter.format(parsed);
|
|
18800
18836
|
};
|
|
18801
|
-
BarChart = ({ series, height, showValues, stack, timeAxis, histogram = false, onPointClick }) => {
|
|
18837
|
+
BarChart = ({ series, height, showValues, stack, timeAxis, histogram = false, horizontal = false, onPointClick }) => {
|
|
18802
18838
|
const categories = React80.useMemo(() => {
|
|
18803
18839
|
const set = [];
|
|
18804
18840
|
const seen = /* @__PURE__ */ new Set();
|
|
@@ -18836,6 +18872,64 @@ var init_Chart = __esm({
|
|
|
18836
18872
|
}
|
|
18837
18873
|
return m;
|
|
18838
18874
|
}, [series, stack, columnTotals]);
|
|
18875
|
+
if (horizontal) {
|
|
18876
|
+
return /* @__PURE__ */ jsxRuntime.jsx(exports.VStack, { gap: "xs", align: "stretch", className: "w-full", style: { minHeight: height }, children: categories.map((label, catIdx) => {
|
|
18877
|
+
const displayLabel = timeAxis ? formatTimeLabel(label) : label;
|
|
18878
|
+
const total = columnTotals?.[catIdx] ?? 1;
|
|
18879
|
+
return /* @__PURE__ */ jsxRuntime.jsxs(exports.HStack, { gap: "sm", align: "center", className: "w-full", children: [
|
|
18880
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
18881
|
+
exports.Typography,
|
|
18882
|
+
{
|
|
18883
|
+
variant: "caption",
|
|
18884
|
+
color: "secondary",
|
|
18885
|
+
className: "truncate text-right",
|
|
18886
|
+
style: { width: 80, flexShrink: 0 },
|
|
18887
|
+
children: displayLabel
|
|
18888
|
+
}
|
|
18889
|
+
),
|
|
18890
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
18891
|
+
exports.HStack,
|
|
18892
|
+
{
|
|
18893
|
+
gap: stack === "none" ? "xs" : "none",
|
|
18894
|
+
align: "center",
|
|
18895
|
+
className: "flex-1 min-w-0",
|
|
18896
|
+
style: { height: 24 },
|
|
18897
|
+
children: series.map((s, sIdx) => {
|
|
18898
|
+
const value = valueAt(s, label);
|
|
18899
|
+
const ratio = stack === "normalize" ? total === 0 ? 0 : value / total * 100 : value / maxValue * 100;
|
|
18900
|
+
const color = seriesColor(s, sIdx);
|
|
18901
|
+
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
18902
|
+
exports.Box,
|
|
18903
|
+
{
|
|
18904
|
+
className: "h-full rounded-r-sm transition-all duration-500 ease-out min-w-[2px] cursor-pointer hover:opacity-80",
|
|
18905
|
+
style: {
|
|
18906
|
+
width: `${ratio}%`,
|
|
18907
|
+
backgroundColor: color
|
|
18908
|
+
},
|
|
18909
|
+
onClick: () => onPointClick?.(
|
|
18910
|
+
{ label, value, color },
|
|
18911
|
+
s.name
|
|
18912
|
+
),
|
|
18913
|
+
title: `${s.name}: ${value}`
|
|
18914
|
+
},
|
|
18915
|
+
s.name
|
|
18916
|
+
);
|
|
18917
|
+
})
|
|
18918
|
+
}
|
|
18919
|
+
),
|
|
18920
|
+
showValues && series.length === 1 && /* @__PURE__ */ jsxRuntime.jsx(
|
|
18921
|
+
exports.Typography,
|
|
18922
|
+
{
|
|
18923
|
+
variant: "caption",
|
|
18924
|
+
color: "secondary",
|
|
18925
|
+
className: "tabular-nums",
|
|
18926
|
+
style: { width: 40, flexShrink: 0 },
|
|
18927
|
+
children: valueAt(series[0], label)
|
|
18928
|
+
}
|
|
18929
|
+
)
|
|
18930
|
+
] }, label);
|
|
18931
|
+
}) });
|
|
18932
|
+
}
|
|
18839
18933
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
18840
18934
|
exports.HStack,
|
|
18841
18935
|
{
|
|
@@ -19263,10 +19357,20 @@ var init_Chart = __esm({
|
|
|
19263
19357
|
}
|
|
19264
19358
|
);
|
|
19265
19359
|
};
|
|
19360
|
+
LOOK_FROM_CHART_TYPE = {
|
|
19361
|
+
bar: "bar-vertical",
|
|
19362
|
+
line: "line",
|
|
19363
|
+
pie: "pie",
|
|
19364
|
+
area: "area",
|
|
19365
|
+
donut: "donut",
|
|
19366
|
+
scatter: "scatter",
|
|
19367
|
+
histogram: "histogram"
|
|
19368
|
+
};
|
|
19266
19369
|
exports.Chart = ({
|
|
19267
19370
|
title,
|
|
19268
19371
|
subtitle,
|
|
19269
|
-
chartType
|
|
19372
|
+
chartType,
|
|
19373
|
+
look,
|
|
19270
19374
|
series,
|
|
19271
19375
|
data: simpleData,
|
|
19272
19376
|
scatterData,
|
|
@@ -19282,6 +19386,7 @@ var init_Chart = __esm({
|
|
|
19282
19386
|
error,
|
|
19283
19387
|
className
|
|
19284
19388
|
}) => {
|
|
19389
|
+
const resolvedLook = look ?? (chartType ? LOOK_FROM_CHART_TYPE[chartType] : "bar-vertical");
|
|
19285
19390
|
const eventBus = useEventBus();
|
|
19286
19391
|
const { t } = useTranslate();
|
|
19287
19392
|
const handleAction = React80.useCallback(
|
|
@@ -19310,7 +19415,7 @@ var init_Chart = __esm({
|
|
|
19310
19415
|
return [];
|
|
19311
19416
|
}, [simpleData, series]);
|
|
19312
19417
|
const firstSeriesData = normalizedSeries[0]?.data ?? [];
|
|
19313
|
-
const hasContent =
|
|
19418
|
+
const hasContent = resolvedLook === "scatter" ? (scatterData?.length ?? 0) > 0 : normalizedSeries.some((s) => s.data.length > 0);
|
|
19314
19419
|
if (isLoading) {
|
|
19315
19420
|
return /* @__PURE__ */ jsxRuntime.jsx(exports.LoadingState, { message: "Loading chart...", className });
|
|
19316
19421
|
}
|
|
@@ -19345,7 +19450,7 @@ var init_Chart = __esm({
|
|
|
19345
19450
|
)) })
|
|
19346
19451
|
] }),
|
|
19347
19452
|
/* @__PURE__ */ jsxRuntime.jsxs(exports.Box, { className: "w-full", children: [
|
|
19348
|
-
|
|
19453
|
+
resolvedLook === "bar-vertical" && /* @__PURE__ */ jsxRuntime.jsx(
|
|
19349
19454
|
BarChart,
|
|
19350
19455
|
{
|
|
19351
19456
|
series: normalizedSeries,
|
|
@@ -19356,7 +19461,19 @@ var init_Chart = __esm({
|
|
|
19356
19461
|
onPointClick: handlePointClick
|
|
19357
19462
|
}
|
|
19358
19463
|
),
|
|
19359
|
-
|
|
19464
|
+
resolvedLook === "bar-horizontal" && /* @__PURE__ */ jsxRuntime.jsx(
|
|
19465
|
+
BarChart,
|
|
19466
|
+
{
|
|
19467
|
+
series: normalizedSeries,
|
|
19468
|
+
height,
|
|
19469
|
+
showValues,
|
|
19470
|
+
stack,
|
|
19471
|
+
timeAxis,
|
|
19472
|
+
horizontal: true,
|
|
19473
|
+
onPointClick: handlePointClick
|
|
19474
|
+
}
|
|
19475
|
+
),
|
|
19476
|
+
resolvedLook === "histogram" && /* @__PURE__ */ jsxRuntime.jsx(
|
|
19360
19477
|
BarChart,
|
|
19361
19478
|
{
|
|
19362
19479
|
series: normalizedSeries,
|
|
@@ -19368,7 +19485,7 @@ var init_Chart = __esm({
|
|
|
19368
19485
|
onPointClick: handlePointClick
|
|
19369
19486
|
}
|
|
19370
19487
|
),
|
|
19371
|
-
|
|
19488
|
+
resolvedLook === "line" && /* @__PURE__ */ jsxRuntime.jsx(
|
|
19372
19489
|
LineChart,
|
|
19373
19490
|
{
|
|
19374
19491
|
series: normalizedSeries,
|
|
@@ -19378,7 +19495,7 @@ var init_Chart = __esm({
|
|
|
19378
19495
|
onPointClick: handlePointClick
|
|
19379
19496
|
}
|
|
19380
19497
|
),
|
|
19381
|
-
|
|
19498
|
+
resolvedLook === "area" && /* @__PURE__ */ jsxRuntime.jsx(
|
|
19382
19499
|
LineChart,
|
|
19383
19500
|
{
|
|
19384
19501
|
series: normalizedSeries,
|
|
@@ -19389,7 +19506,7 @@ var init_Chart = __esm({
|
|
|
19389
19506
|
onPointClick: handlePointClick
|
|
19390
19507
|
}
|
|
19391
19508
|
),
|
|
19392
|
-
|
|
19509
|
+
resolvedLook === "pie" && /* @__PURE__ */ jsxRuntime.jsx(
|
|
19393
19510
|
PieChart,
|
|
19394
19511
|
{
|
|
19395
19512
|
data: firstSeriesData,
|
|
@@ -19398,7 +19515,7 @@ var init_Chart = __esm({
|
|
|
19398
19515
|
onPointClick: handlePointClick
|
|
19399
19516
|
}
|
|
19400
19517
|
),
|
|
19401
|
-
|
|
19518
|
+
resolvedLook === "donut" && /* @__PURE__ */ jsxRuntime.jsx(
|
|
19402
19519
|
PieChart,
|
|
19403
19520
|
{
|
|
19404
19521
|
data: firstSeriesData,
|
|
@@ -19408,7 +19525,7 @@ var init_Chart = __esm({
|
|
|
19408
19525
|
onPointClick: handlePointClick
|
|
19409
19526
|
}
|
|
19410
19527
|
),
|
|
19411
|
-
|
|
19528
|
+
resolvedLook === "scatter" && /* @__PURE__ */ jsxRuntime.jsx(
|
|
19412
19529
|
ScatterChart,
|
|
19413
19530
|
{
|
|
19414
19531
|
data: scatterData ?? [],
|
|
@@ -23070,7 +23187,7 @@ var init_useQuerySingleton = __esm({
|
|
|
23070
23187
|
queryStores = /* @__PURE__ */ new Map();
|
|
23071
23188
|
}
|
|
23072
23189
|
});
|
|
23073
|
-
var resolveFilterType; exports.FilterGroup = void 0;
|
|
23190
|
+
var resolveFilterType, lookStyles5; exports.FilterGroup = void 0;
|
|
23074
23191
|
var init_FilterGroup = __esm({
|
|
23075
23192
|
"components/molecules/FilterGroup.tsx"() {
|
|
23076
23193
|
"use client";
|
|
@@ -23084,6 +23201,13 @@ var init_FilterGroup = __esm({
|
|
|
23084
23201
|
init_useEventBus();
|
|
23085
23202
|
init_useQuerySingleton();
|
|
23086
23203
|
resolveFilterType = (filter) => filter.filterType ?? filter.type;
|
|
23204
|
+
lookStyles5 = {
|
|
23205
|
+
toolbar: "",
|
|
23206
|
+
chips: "gap-2 [&>*]:rounded-pill [&>*]:px-3 [&>*]:py-1",
|
|
23207
|
+
pills: "gap-2 [&>*]:rounded-pill",
|
|
23208
|
+
"popover-trigger": "[&>*:not(:first-child)]:hidden",
|
|
23209
|
+
"inline-column-header": "hidden"
|
|
23210
|
+
};
|
|
23087
23211
|
exports.FilterGroup = ({
|
|
23088
23212
|
entity,
|
|
23089
23213
|
filters,
|
|
@@ -23093,7 +23217,8 @@ var init_FilterGroup = __esm({
|
|
|
23093
23217
|
variant = "default",
|
|
23094
23218
|
showIcon = true,
|
|
23095
23219
|
query,
|
|
23096
|
-
isLoading
|
|
23220
|
+
isLoading,
|
|
23221
|
+
look = "toolbar"
|
|
23097
23222
|
}) => {
|
|
23098
23223
|
const eventBus = useEventBus();
|
|
23099
23224
|
const queryState = useQuerySingleton(query);
|
|
@@ -23148,63 +23273,71 @@ var init_FilterGroup = __esm({
|
|
|
23148
23273
|
}, [onClearAll, queryState, eventBus, entity, query]);
|
|
23149
23274
|
const activeFilterCount = Object.keys(selectedValues).length;
|
|
23150
23275
|
if (variant === "pills") {
|
|
23151
|
-
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
23152
|
-
|
|
23153
|
-
|
|
23154
|
-
|
|
23155
|
-
|
|
23156
|
-
|
|
23157
|
-
|
|
23158
|
-
|
|
23159
|
-
exports.HStack,
|
|
23160
|
-
|
|
23161
|
-
|
|
23162
|
-
|
|
23163
|
-
|
|
23164
|
-
|
|
23165
|
-
|
|
23166
|
-
|
|
23167
|
-
|
|
23168
|
-
|
|
23169
|
-
|
|
23170
|
-
|
|
23171
|
-
|
|
23172
|
-
|
|
23173
|
-
|
|
23174
|
-
|
|
23175
|
-
|
|
23176
|
-
|
|
23177
|
-
|
|
23178
|
-
|
|
23179
|
-
|
|
23180
|
-
|
|
23181
|
-
className: cn(
|
|
23182
|
-
"px-3 py-1.5 text-sm font-medium transition-all duration-[var(--transition-fast)]",
|
|
23183
|
-
"border-l-[length:var(--border-width)] border-border",
|
|
23184
|
-
selectedValues[filter.field] === option ? "bg-primary text-primary-foreground" : "bg-card text-muted-foreground hover:bg-muted"
|
|
23276
|
+
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
23277
|
+
exports.HStack,
|
|
23278
|
+
{
|
|
23279
|
+
gap: "md",
|
|
23280
|
+
align: "center",
|
|
23281
|
+
className: cn("flex-wrap", lookStyles5[look], className),
|
|
23282
|
+
children: [
|
|
23283
|
+
showIcon && /* @__PURE__ */ jsxRuntime.jsx(exports.Icon, { name: "filter", className: "h-4 w-4 text-muted-foreground" }),
|
|
23284
|
+
filters.map((filter) => /* @__PURE__ */ jsxRuntime.jsxs(exports.HStack, { gap: "xs", align: "center", children: [
|
|
23285
|
+
/* @__PURE__ */ jsxRuntime.jsxs("span", { className: "text-sm font-medium text-muted-foreground", children: [
|
|
23286
|
+
filter.label,
|
|
23287
|
+
":"
|
|
23288
|
+
] }),
|
|
23289
|
+
/* @__PURE__ */ jsxRuntime.jsxs(
|
|
23290
|
+
exports.HStack,
|
|
23291
|
+
{
|
|
23292
|
+
gap: "none",
|
|
23293
|
+
className: "rounded-sm overflow-hidden border-[length:var(--border-width)] border-border",
|
|
23294
|
+
children: [
|
|
23295
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
23296
|
+
"button",
|
|
23297
|
+
{
|
|
23298
|
+
type: "button",
|
|
23299
|
+
onClick: () => handleFilterSelect(filter.field, null),
|
|
23300
|
+
className: cn(
|
|
23301
|
+
"px-3 py-1.5 text-sm font-medium transition-all duration-[var(--transition-fast)]",
|
|
23302
|
+
!selectedValues[filter.field] ? "bg-primary text-primary-foreground" : "bg-card text-muted-foreground hover:bg-muted"
|
|
23303
|
+
),
|
|
23304
|
+
children: "All"
|
|
23305
|
+
}
|
|
23185
23306
|
),
|
|
23186
|
-
|
|
23187
|
-
|
|
23188
|
-
|
|
23189
|
-
|
|
23190
|
-
|
|
23191
|
-
|
|
23192
|
-
|
|
23193
|
-
|
|
23194
|
-
|
|
23195
|
-
|
|
23196
|
-
|
|
23197
|
-
|
|
23198
|
-
|
|
23199
|
-
|
|
23200
|
-
|
|
23201
|
-
|
|
23202
|
-
|
|
23203
|
-
|
|
23204
|
-
|
|
23307
|
+
filter.options?.map((option) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
23308
|
+
"button",
|
|
23309
|
+
{
|
|
23310
|
+
type: "button",
|
|
23311
|
+
onClick: () => handleFilterSelect(filter.field, option),
|
|
23312
|
+
className: cn(
|
|
23313
|
+
"px-3 py-1.5 text-sm font-medium transition-all duration-[var(--transition-fast)]",
|
|
23314
|
+
"border-l-[length:var(--border-width)] border-border",
|
|
23315
|
+
selectedValues[filter.field] === option ? "bg-primary text-primary-foreground" : "bg-card text-muted-foreground hover:bg-muted"
|
|
23316
|
+
),
|
|
23317
|
+
children: option
|
|
23318
|
+
},
|
|
23319
|
+
option
|
|
23320
|
+
))
|
|
23321
|
+
]
|
|
23322
|
+
}
|
|
23323
|
+
)
|
|
23324
|
+
] }, filter.field)),
|
|
23325
|
+
activeFilterCount > 0 && /* @__PURE__ */ jsxRuntime.jsx(
|
|
23326
|
+
exports.Button,
|
|
23327
|
+
{
|
|
23328
|
+
variant: "ghost",
|
|
23329
|
+
size: "sm",
|
|
23330
|
+
onClick: handleClearAll,
|
|
23331
|
+
leftIcon: /* @__PURE__ */ jsxRuntime.jsx(exports.Icon, { name: "x", className: "h-3.5 w-3.5" }),
|
|
23332
|
+
children: "Clear"
|
|
23333
|
+
}
|
|
23334
|
+
)
|
|
23335
|
+
]
|
|
23336
|
+
}
|
|
23337
|
+
);
|
|
23205
23338
|
}
|
|
23206
23339
|
if (variant === "vertical") {
|
|
23207
|
-
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: cn("flex flex-col gap-4", className), children: [
|
|
23340
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: cn("flex flex-col gap-4", lookStyles5[look], className), children: [
|
|
23208
23341
|
showIcon && /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex items-center gap-2 text-muted-foreground", children: [
|
|
23209
23342
|
/* @__PURE__ */ jsxRuntime.jsx(exports.Icon, { name: "filter", className: "h-4 w-4" }),
|
|
23210
23343
|
/* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-sm font-bold uppercase tracking-wide", children: "Filters" })
|
|
@@ -23287,92 +23420,100 @@ var init_FilterGroup = __esm({
|
|
|
23287
23420
|
] });
|
|
23288
23421
|
}
|
|
23289
23422
|
if (variant === "compact") {
|
|
23290
|
-
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
23291
|
-
|
|
23292
|
-
|
|
23293
|
-
|
|
23294
|
-
|
|
23295
|
-
|
|
23296
|
-
|
|
23297
|
-
|
|
23298
|
-
|
|
23299
|
-
|
|
23300
|
-
|
|
23301
|
-
|
|
23302
|
-
|
|
23303
|
-
|
|
23304
|
-
|
|
23305
|
-
|
|
23306
|
-
|
|
23307
|
-
|
|
23308
|
-
|
|
23309
|
-
|
|
23310
|
-
|
|
23311
|
-
|
|
23312
|
-
|
|
23313
|
-
|
|
23314
|
-
|
|
23315
|
-
|
|
23316
|
-
|
|
23317
|
-
|
|
23318
|
-
|
|
23319
|
-
|
|
23320
|
-
value: selectedValues[`${filter.field}_to`] || "",
|
|
23321
|
-
onChange: (e) => handleFilterSelect(
|
|
23322
|
-
`${filter.field}_to`,
|
|
23323
|
-
e.target.value || null
|
|
23423
|
+
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
23424
|
+
exports.HStack,
|
|
23425
|
+
{
|
|
23426
|
+
gap: "sm",
|
|
23427
|
+
align: "center",
|
|
23428
|
+
className: cn("flex-wrap", lookStyles5[look], className),
|
|
23429
|
+
children: [
|
|
23430
|
+
showIcon && /* @__PURE__ */ jsxRuntime.jsx(exports.Icon, { name: "filter", className: "h-4 w-4 text-muted-foreground" }),
|
|
23431
|
+
filters.map((filter) => /* @__PURE__ */ jsxRuntime.jsx("div", { className: "min-w-[120px]", children: resolveFilterType(filter) === "date" ? /* @__PURE__ */ jsxRuntime.jsx(
|
|
23432
|
+
exports.Input,
|
|
23433
|
+
{
|
|
23434
|
+
type: "date",
|
|
23435
|
+
value: selectedValues[filter.field] || "",
|
|
23436
|
+
onChange: (e) => handleFilterSelect(filter.field, e.target.value || null),
|
|
23437
|
+
clearable: true,
|
|
23438
|
+
onClear: () => handleFilterSelect(filter.field, null),
|
|
23439
|
+
className: "text-sm"
|
|
23440
|
+
}
|
|
23441
|
+
) : resolveFilterType(filter) === "daterange" || resolveFilterType(filter) === "date-range" ? /* @__PURE__ */ jsxRuntime.jsxs(exports.HStack, { gap: "xs", align: "center", children: [
|
|
23442
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
23443
|
+
exports.Input,
|
|
23444
|
+
{
|
|
23445
|
+
type: "date",
|
|
23446
|
+
value: selectedValues[`${filter.field}_from`] || "",
|
|
23447
|
+
onChange: (e) => handleFilterSelect(
|
|
23448
|
+
`${filter.field}_from`,
|
|
23449
|
+
e.target.value || null
|
|
23450
|
+
),
|
|
23451
|
+
className: "text-sm min-w-[100px]"
|
|
23452
|
+
}
|
|
23324
23453
|
),
|
|
23325
|
-
className: "text-
|
|
23326
|
-
|
|
23327
|
-
|
|
23328
|
-
|
|
23329
|
-
|
|
23330
|
-
|
|
23331
|
-
|
|
23332
|
-
|
|
23333
|
-
|
|
23334
|
-
|
|
23335
|
-
|
|
23336
|
-
|
|
23337
|
-
|
|
23338
|
-
|
|
23339
|
-
|
|
23340
|
-
{
|
|
23341
|
-
value: selectedValues[filter.field] || "all",
|
|
23342
|
-
onChange: (e) => handleFilterSelect(filter.field, e.target.value),
|
|
23343
|
-
options: [
|
|
23344
|
-
{ value: "all", label: `All ${filter.label}` },
|
|
23345
|
-
...filter.options?.map((opt) => ({
|
|
23346
|
-
value: opt,
|
|
23347
|
-
label: opt
|
|
23348
|
-
})) || []
|
|
23349
|
-
],
|
|
23350
|
-
className: "text-sm"
|
|
23351
|
-
}
|
|
23352
|
-
) }, filter.field)),
|
|
23353
|
-
activeFilterCount > 0 && /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
|
|
23354
|
-
Object.entries(selectedValues).map(([field, value]) => {
|
|
23355
|
-
const filterDef = filters.find((f3) => f3.field === field);
|
|
23356
|
-
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
23357
|
-
exports.Badge,
|
|
23454
|
+
/* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-muted-foreground", children: "-" }),
|
|
23455
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
23456
|
+
exports.Input,
|
|
23457
|
+
{
|
|
23458
|
+
type: "date",
|
|
23459
|
+
value: selectedValues[`${filter.field}_to`] || "",
|
|
23460
|
+
onChange: (e) => handleFilterSelect(
|
|
23461
|
+
`${filter.field}_to`,
|
|
23462
|
+
e.target.value || null
|
|
23463
|
+
),
|
|
23464
|
+
className: "text-sm min-w-[100px]"
|
|
23465
|
+
}
|
|
23466
|
+
)
|
|
23467
|
+
] }) : resolveFilterType(filter) === "text" ? /* @__PURE__ */ jsxRuntime.jsx(
|
|
23468
|
+
exports.Input,
|
|
23358
23469
|
{
|
|
23359
|
-
|
|
23360
|
-
|
|
23361
|
-
|
|
23362
|
-
|
|
23363
|
-
|
|
23364
|
-
|
|
23365
|
-
|
|
23366
|
-
|
|
23367
|
-
|
|
23368
|
-
|
|
23369
|
-
|
|
23370
|
-
|
|
23371
|
-
|
|
23372
|
-
|
|
23373
|
-
|
|
23374
|
-
|
|
23375
|
-
|
|
23470
|
+
value: selectedValues[filter.field] || "",
|
|
23471
|
+
onChange: (e) => handleFilterSelect(filter.field, e.target.value || null),
|
|
23472
|
+
placeholder: filter.label,
|
|
23473
|
+
clearable: true,
|
|
23474
|
+
onClear: () => handleFilterSelect(filter.field, null),
|
|
23475
|
+
className: "text-sm"
|
|
23476
|
+
}
|
|
23477
|
+
) : /* @__PURE__ */ jsxRuntime.jsx(
|
|
23478
|
+
exports.Select,
|
|
23479
|
+
{
|
|
23480
|
+
value: selectedValues[filter.field] || "all",
|
|
23481
|
+
onChange: (e) => handleFilterSelect(filter.field, e.target.value),
|
|
23482
|
+
options: [
|
|
23483
|
+
{ value: "all", label: `All ${filter.label}` },
|
|
23484
|
+
...filter.options?.map((opt) => ({
|
|
23485
|
+
value: opt,
|
|
23486
|
+
label: opt
|
|
23487
|
+
})) || []
|
|
23488
|
+
],
|
|
23489
|
+
className: "text-sm"
|
|
23490
|
+
}
|
|
23491
|
+
) }, filter.field)),
|
|
23492
|
+
activeFilterCount > 0 && /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
|
|
23493
|
+
Object.entries(selectedValues).map(([field, value]) => {
|
|
23494
|
+
const filterDef = filters.find((f3) => f3.field === field);
|
|
23495
|
+
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
23496
|
+
exports.Badge,
|
|
23497
|
+
{
|
|
23498
|
+
variant: "primary",
|
|
23499
|
+
size: "md",
|
|
23500
|
+
className: "cursor-pointer",
|
|
23501
|
+
onClick: () => handleFilterSelect(field, null),
|
|
23502
|
+
children: [
|
|
23503
|
+
filterDef?.label,
|
|
23504
|
+
": ",
|
|
23505
|
+
value,
|
|
23506
|
+
/* @__PURE__ */ jsxRuntime.jsx(exports.Icon, { name: "x", className: "ml-1 h-3 w-3" })
|
|
23507
|
+
]
|
|
23508
|
+
},
|
|
23509
|
+
field
|
|
23510
|
+
);
|
|
23511
|
+
}),
|
|
23512
|
+
/* @__PURE__ */ jsxRuntime.jsx(exports.Button, { variant: "ghost", size: "sm", onClick: handleClearAll, children: "Clear all" })
|
|
23513
|
+
] })
|
|
23514
|
+
]
|
|
23515
|
+
}
|
|
23516
|
+
);
|
|
23376
23517
|
}
|
|
23377
23518
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
23378
23519
|
"div",
|
|
@@ -23381,6 +23522,7 @@ var init_FilterGroup = __esm({
|
|
|
23381
23522
|
"p-4 rounded-container",
|
|
23382
23523
|
"bg-card",
|
|
23383
23524
|
"border-[length:var(--border-width)] border-border",
|
|
23525
|
+
lookStyles5[look],
|
|
23384
23526
|
className
|
|
23385
23527
|
),
|
|
23386
23528
|
children: /* @__PURE__ */ jsxRuntime.jsxs(exports.HStack, { gap: "md", align: "center", className: "flex-wrap", children: [
|
|
@@ -28138,7 +28280,7 @@ function composeDisplayValue(value, format, max, prefix, suffix) {
|
|
|
28138
28280
|
const withMax = max != null && max > 0 ? `${formatted} / ${max}` : formatted;
|
|
28139
28281
|
return `${prefix ?? ""}${withMax}${suffix ?? ""}`;
|
|
28140
28282
|
}
|
|
28141
|
-
var variantColor; exports.StatDisplay = void 0;
|
|
28283
|
+
var lookStyles6, variantColor; exports.StatDisplay = void 0;
|
|
28142
28284
|
var init_StatDisplay = __esm({
|
|
28143
28285
|
"components/molecules/StatDisplay.tsx"() {
|
|
28144
28286
|
"use client";
|
|
@@ -28150,6 +28292,13 @@ var init_StatDisplay = __esm({
|
|
|
28150
28292
|
init_Sparkline();
|
|
28151
28293
|
init_Icon();
|
|
28152
28294
|
init_useEventBus();
|
|
28295
|
+
lookStyles6 = {
|
|
28296
|
+
elevated: "",
|
|
28297
|
+
flat: "shadow-none border-[length:var(--border-width)] border-border",
|
|
28298
|
+
"progress-backed": "",
|
|
28299
|
+
gauge: "",
|
|
28300
|
+
sparkline: ""
|
|
28301
|
+
};
|
|
28153
28302
|
variantColor = {
|
|
28154
28303
|
default: "text-foreground",
|
|
28155
28304
|
primary: "text-primary",
|
|
@@ -28177,6 +28326,7 @@ var init_StatDisplay = __esm({
|
|
|
28177
28326
|
size = "md",
|
|
28178
28327
|
variant = "default",
|
|
28179
28328
|
compact = false,
|
|
28329
|
+
look = "elevated",
|
|
28180
28330
|
className,
|
|
28181
28331
|
isLoading = false,
|
|
28182
28332
|
error = null
|
|
@@ -28229,7 +28379,7 @@ var init_StatDisplay = __esm({
|
|
|
28229
28379
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
28230
28380
|
exports.Card,
|
|
28231
28381
|
{
|
|
28232
|
-
className: cn(padSizes[size], clickEvent && "cursor-pointer hover:shadow-md transition-shadow", className),
|
|
28382
|
+
className: cn(padSizes[size], lookStyles6[look], clickEvent && "cursor-pointer hover:shadow-md transition-shadow", className),
|
|
28233
28383
|
onClick: clickEvent ? handleClick : void 0,
|
|
28234
28384
|
children: /* @__PURE__ */ jsxRuntime.jsxs(exports.HStack, { align: "start", justify: "between", children: [
|
|
28235
28385
|
/* @__PURE__ */ jsxRuntime.jsxs(exports.VStack, { gap: "none", className: "space-y-1 flex-1", children: [
|
|
@@ -33912,7 +34062,8 @@ function DataTable({
|
|
|
33912
34062
|
bulkActions,
|
|
33913
34063
|
headerActions,
|
|
33914
34064
|
showTotal = true,
|
|
33915
|
-
className
|
|
34065
|
+
className,
|
|
34066
|
+
look = "dense"
|
|
33916
34067
|
}) {
|
|
33917
34068
|
const [openActionMenu, setOpenActionMenu] = React80.useState(
|
|
33918
34069
|
null
|
|
@@ -34039,6 +34190,7 @@ function DataTable({
|
|
|
34039
34190
|
{
|
|
34040
34191
|
className: cn(
|
|
34041
34192
|
"bg-card border-2 border-border rounded-none overflow-hidden",
|
|
34193
|
+
lookStyles7[look],
|
|
34042
34194
|
className
|
|
34043
34195
|
),
|
|
34044
34196
|
children: [
|
|
@@ -34265,6 +34417,7 @@ function DataTable({
|
|
|
34265
34417
|
}
|
|
34266
34418
|
);
|
|
34267
34419
|
}
|
|
34420
|
+
var lookStyles7;
|
|
34268
34421
|
var init_DataTable = __esm({
|
|
34269
34422
|
"components/organisms/DataTable.tsx"() {
|
|
34270
34423
|
"use client";
|
|
@@ -34278,6 +34431,13 @@ var init_DataTable = __esm({
|
|
|
34278
34431
|
init_useEventBus();
|
|
34279
34432
|
init_useTranslate();
|
|
34280
34433
|
init_types3();
|
|
34434
|
+
lookStyles7 = {
|
|
34435
|
+
dense: "",
|
|
34436
|
+
spacious: "[&_tbody_tr_td]:py-5 [&_thead_tr_th]:py-4",
|
|
34437
|
+
striped: "[&_tbody_tr:nth-child(odd)]:bg-muted/30",
|
|
34438
|
+
borderless: "border-0 [&_thead]:border-b-0 [&_tbody_tr]:border-b-0 [&_tbody]:divide-y-0",
|
|
34439
|
+
"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"
|
|
34440
|
+
};
|
|
34281
34441
|
DataTable.displayName = "DataTable";
|
|
34282
34442
|
}
|
|
34283
34443
|
});
|
|
@@ -37531,7 +37691,7 @@ var init_GraphCanvas = __esm({
|
|
|
37531
37691
|
exports.GraphCanvas.displayName = "GraphCanvas";
|
|
37532
37692
|
}
|
|
37533
37693
|
});
|
|
37534
|
-
exports.Header = void 0;
|
|
37694
|
+
var lookStyles8; exports.Header = void 0;
|
|
37535
37695
|
var init_Header = __esm({
|
|
37536
37696
|
"components/organisms/Header.tsx"() {
|
|
37537
37697
|
"use client";
|
|
@@ -37544,6 +37704,13 @@ var init_Header = __esm({
|
|
|
37544
37704
|
init_Typography();
|
|
37545
37705
|
init_cn();
|
|
37546
37706
|
init_useTranslate();
|
|
37707
|
+
lookStyles8 = {
|
|
37708
|
+
"compact-bar": "",
|
|
37709
|
+
hero: "py-section min-h-[200px] [&_h1]:text-display-1",
|
|
37710
|
+
breadcrumb: "py-2 text-sm [&_h1]:text-base [&_h1]:font-medium",
|
|
37711
|
+
contextual: "py-3 [&_h1]:text-lg",
|
|
37712
|
+
"editorial-banner": "py-12 [&_h1]:text-display-2 [&_h1]:font-display-bold border-b border-border"
|
|
37713
|
+
};
|
|
37547
37714
|
exports.Header = ({
|
|
37548
37715
|
logo,
|
|
37549
37716
|
logoSrc,
|
|
@@ -37561,6 +37728,7 @@ var init_Header = __esm({
|
|
|
37561
37728
|
actions,
|
|
37562
37729
|
sticky = true,
|
|
37563
37730
|
variant = "mobile",
|
|
37731
|
+
look = "compact-bar",
|
|
37564
37732
|
onLogoClick,
|
|
37565
37733
|
className
|
|
37566
37734
|
}) => {
|
|
@@ -37576,6 +37744,7 @@ var init_Header = __esm({
|
|
|
37576
37744
|
"flex items-center px-4 justify-between bg-card",
|
|
37577
37745
|
sticky && "sticky top-0 z-50",
|
|
37578
37746
|
variant === "mobile" && "lg:hidden",
|
|
37747
|
+
lookStyles8[look],
|
|
37579
37748
|
className
|
|
37580
37749
|
),
|
|
37581
37750
|
children: [
|
|
@@ -44572,7 +44741,7 @@ var init_TeamOrganism = __esm({
|
|
|
44572
44741
|
exports.TeamOrganism.displayName = "TeamOrganism";
|
|
44573
44742
|
}
|
|
44574
44743
|
});
|
|
44575
|
-
var STATUS_STYLES3; exports.Timeline = void 0;
|
|
44744
|
+
var lookStyles9, STATUS_STYLES3; exports.Timeline = void 0;
|
|
44576
44745
|
var init_Timeline = __esm({
|
|
44577
44746
|
"components/organisms/Timeline.tsx"() {
|
|
44578
44747
|
"use client";
|
|
@@ -44583,6 +44752,12 @@ var init_Timeline = __esm({
|
|
|
44583
44752
|
init_ErrorState();
|
|
44584
44753
|
init_EmptyState();
|
|
44585
44754
|
init_useTranslate();
|
|
44755
|
+
lookStyles9 = {
|
|
44756
|
+
"vertical-compact": "gap-1 [&>*]:py-1",
|
|
44757
|
+
"vertical-spacious": "",
|
|
44758
|
+
horizontal: "flex-row [&>*]:flex-row [&>*]:items-center",
|
|
44759
|
+
swimlane: "flex-row gap-6 [&>*]:flex-row [&>*]:items-center"
|
|
44760
|
+
};
|
|
44586
44761
|
STATUS_STYLES3 = {
|
|
44587
44762
|
complete: {
|
|
44588
44763
|
dotColor: "text-success",
|
|
@@ -44613,7 +44788,8 @@ var init_Timeline = __esm({
|
|
|
44613
44788
|
entity,
|
|
44614
44789
|
isLoading = false,
|
|
44615
44790
|
error,
|
|
44616
|
-
className
|
|
44791
|
+
className,
|
|
44792
|
+
look = "vertical-spacious"
|
|
44617
44793
|
}) => {
|
|
44618
44794
|
const { t } = useTranslate();
|
|
44619
44795
|
const entityData = Array.isArray(entity) ? entity : [];
|
|
@@ -44669,7 +44845,7 @@ var init_Timeline = __esm({
|
|
|
44669
44845
|
}
|
|
44670
44846
|
return /* @__PURE__ */ jsxRuntime.jsx(exports.Card, { className: cn("p-6", className), children: /* @__PURE__ */ jsxRuntime.jsxs(exports.VStack, { gap: "md", children: [
|
|
44671
44847
|
title && /* @__PURE__ */ jsxRuntime.jsx(exports.Typography, { variant: "h5", weight: "semibold", children: title }),
|
|
44672
|
-
/* @__PURE__ */ jsxRuntime.jsx(exports.VStack, { gap: "none", className: "relative", children: items.map((item, idx) => {
|
|
44848
|
+
/* @__PURE__ */ jsxRuntime.jsx(exports.VStack, { gap: "none", className: cn("relative", lookStyles9[look]), children: items.map((item, idx) => {
|
|
44673
44849
|
const status = item.status || "pending";
|
|
44674
44850
|
const style = STATUS_STYLES3[status] || STATUS_STYLES3.pending;
|
|
44675
44851
|
const ItemIcon = item.icon || style.icon;
|