@almadar/ui 5.129.0 → 5.131.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 +87 -40
- package/dist/avl/index.js +87 -40
- package/dist/components/index.cjs +89 -42
- package/dist/components/index.d.cts +0 -4
- package/dist/components/index.d.ts +0 -4
- package/dist/components/index.js +89 -42
- package/dist/marketing/index.cjs +2 -2
- package/dist/marketing/index.js +2 -2
- package/dist/providers/index.cjs +87 -40
- package/dist/providers/index.js +87 -40
- package/dist/runtime/index.cjs +87 -40
- package/dist/runtime/index.js +87 -40
- package/package.json +2 -2
|
@@ -1857,7 +1857,7 @@ var init_Button = __esm({
|
|
|
1857
1857
|
"cursor-pointer",
|
|
1858
1858
|
"chrome-button",
|
|
1859
1859
|
"transition-all duration-normal",
|
|
1860
|
-
"focus:outline-none focus:ring-[length:var(--focus-ring-width)] focus:ring-ring focus:ring-offset-[length:var(--focus-ring-offset)]",
|
|
1860
|
+
"focus:outline-none focus-visible:ring-[length:var(--focus-ring-width)] focus-visible:ring-ring focus-visible:ring-offset-[length:var(--focus-ring-offset)]",
|
|
1861
1861
|
"disabled:opacity-50 disabled:cursor-not-allowed",
|
|
1862
1862
|
variantStyles[variant],
|
|
1863
1863
|
sizeStyles[size],
|
|
@@ -2155,7 +2155,7 @@ function NativeSelect({
|
|
|
2155
2155
|
"block w-full border-[length:var(--border-width)] shadow-sm appearance-none",
|
|
2156
2156
|
"px-3 py-2 pr-10 text-sm text-foreground font-medium",
|
|
2157
2157
|
"bg-card",
|
|
2158
|
-
"focus:outline-none focus:ring-2 focus:ring-offset-0 focus:ring-ring",
|
|
2158
|
+
"focus:outline-none focus-visible:ring-2 focus-visible:ring-offset-0 focus-visible:ring-ring",
|
|
2159
2159
|
"disabled:bg-muted disabled:text-muted-foreground disabled:cursor-not-allowed",
|
|
2160
2160
|
error ? "border-error focus:border-error" : "border-border focus:border-primary",
|
|
2161
2161
|
className
|
|
@@ -2262,7 +2262,7 @@ function RichSelect({
|
|
|
2262
2262
|
"block w-full border-[length:var(--border-width)] shadow-sm",
|
|
2263
2263
|
"px-3 py-2 pr-10 text-sm text-start font-medium",
|
|
2264
2264
|
"bg-card rounded-sm",
|
|
2265
|
-
"focus:outline-none focus:ring-2 focus:ring-offset-0 focus:ring-ring",
|
|
2265
|
+
"focus:outline-none focus-visible:ring-2 focus-visible:ring-offset-0 focus-visible:ring-ring",
|
|
2266
2266
|
"disabled:bg-muted disabled:text-muted-foreground disabled:cursor-not-allowed",
|
|
2267
2267
|
error ? "border-error focus:border-error" : "border-border focus:border-primary",
|
|
2268
2268
|
!hasValue && "text-muted-foreground"
|
|
@@ -2636,7 +2636,7 @@ var init_Badge = __esm({
|
|
|
2636
2636
|
},
|
|
2637
2637
|
className: cn(
|
|
2638
2638
|
"inline-flex items-center justify-center rounded-sm",
|
|
2639
|
-
"hover:bg-foreground/10 focus:outline-none focus:ring-1 focus:ring-ring",
|
|
2639
|
+
"hover:bg-foreground/10 focus:outline-none focus-visible:ring-1 focus-visible:ring-ring",
|
|
2640
2640
|
"transition-colors",
|
|
2641
2641
|
size === "sm" ? "w-4 h-4 ml-0.5" : size === "md" ? "w-5 h-5 ml-1" : "w-6 h-6 ml-1"
|
|
2642
2642
|
),
|
|
@@ -3536,9 +3536,9 @@ var init_Radio = __esm({
|
|
|
3536
3536
|
"flex items-center justify-center",
|
|
3537
3537
|
"border-[length:var(--border-width)] transition-all cursor-pointer",
|
|
3538
3538
|
sizeClasses3[size],
|
|
3539
|
-
hasError ? "border-error peer-focus:ring-error/20" : "border-border peer-focus:ring-ring/20",
|
|
3539
|
+
hasError ? "border-error peer-focus-visible:ring-error/20" : "border-border peer-focus-visible:ring-ring/20",
|
|
3540
3540
|
isChecked2 ? hasError ? "border-error" : "border-primary bg-primary" : "",
|
|
3541
|
-
"peer-focus:outline-none peer-focus:ring-2 peer-focus:ring-offset-2",
|
|
3541
|
+
"peer-focus:outline-none peer-focus-visible:ring-2 peer-focus-visible:ring-offset-2",
|
|
3542
3542
|
disabled && "opacity-50 cursor-not-allowed",
|
|
3543
3543
|
!disabled && "hover:border-[var(--color-border-hover)]"
|
|
3544
3544
|
),
|
|
@@ -4133,7 +4133,7 @@ var init_ThemeToggle = __esm({
|
|
|
4133
4133
|
"inline-flex items-center justify-center gap-2",
|
|
4134
4134
|
"text-foreground",
|
|
4135
4135
|
"hover:bg-muted border-[length:var(--border-width)] border-transparent hover:border-border",
|
|
4136
|
-
"focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2",
|
|
4136
|
+
"focus:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2",
|
|
4137
4137
|
"transition-colors duration-fast",
|
|
4138
4138
|
sizeClasses4[size],
|
|
4139
4139
|
className
|
|
@@ -7032,10 +7032,12 @@ var init_Container = __esm({
|
|
|
7032
7032
|
};
|
|
7033
7033
|
paddingStyles3 = {
|
|
7034
7034
|
none: "px-0",
|
|
7035
|
-
|
|
7036
|
-
|
|
7037
|
-
|
|
7038
|
-
|
|
7035
|
+
// Mobile-tighter, desktop-identical: fixed px-6 on a 360px phone eats ~13% of
|
|
7036
|
+
// the viewport, so each token steps down below the sm breakpoint.
|
|
7037
|
+
sm: "px-3 sm:px-4",
|
|
7038
|
+
md: "px-4 sm:px-6",
|
|
7039
|
+
lg: "px-4 sm:px-6 md:px-8",
|
|
7040
|
+
xl: "px-4 sm:px-8 md:px-12"
|
|
7039
7041
|
};
|
|
7040
7042
|
exports.Container = ({
|
|
7041
7043
|
size,
|
|
@@ -7734,7 +7736,7 @@ var init_Accordion = __esm({
|
|
|
7734
7736
|
"bg-card",
|
|
7735
7737
|
"hover:bg-muted",
|
|
7736
7738
|
"transition-colors duration-fast",
|
|
7737
|
-
"focus:outline-none focus:ring-2 focus:ring-ring focus:ring-inset",
|
|
7739
|
+
"focus:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-inset",
|
|
7738
7740
|
"disabled:opacity-50 disabled:cursor-not-allowed",
|
|
7739
7741
|
isOpen && "bg-muted font-bold"
|
|
7740
7742
|
),
|
|
@@ -14338,7 +14340,7 @@ var init_Breadcrumb = __esm({
|
|
|
14338
14340
|
},
|
|
14339
14341
|
className: cn(
|
|
14340
14342
|
"flex items-center gap-1.5 transition-colors",
|
|
14341
|
-
"focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2",
|
|
14343
|
+
"focus:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2",
|
|
14342
14344
|
isLast ? "text-foreground font-bold cursor-default" : "text-muted-foreground hover:text-foreground"
|
|
14343
14345
|
),
|
|
14344
14346
|
"aria-current": isLast ? "page" : void 0,
|
|
@@ -20941,7 +20943,7 @@ function DataGrid({
|
|
|
20941
20943
|
] }, field.name);
|
|
20942
20944
|
}) })
|
|
20943
20945
|
] }),
|
|
20944
|
-
dangerActions.length > 0 && /* @__PURE__ */ jsxRuntime.jsx(exports.HStack, { gap: "xs", className: "flex-shrink-0", children: dangerActions.map((action, idx) => /* @__PURE__ */ jsxRuntime.
|
|
20946
|
+
dangerActions.length > 0 && /* @__PURE__ */ jsxRuntime.jsx(exports.HStack, { gap: "xs", className: "flex-shrink-0", children: dangerActions.map((action, idx) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
20945
20947
|
exports.Button,
|
|
20946
20948
|
{
|
|
20947
20949
|
variant: "ghost",
|
|
@@ -20949,11 +20951,10 @@ function DataGrid({
|
|
|
20949
20951
|
onClick: handleActionClick(action, itemData),
|
|
20950
20952
|
"data-testid": `action-${action.event}`,
|
|
20951
20953
|
"data-row-id": String(itemData.id),
|
|
20954
|
+
"aria-label": action.label,
|
|
20955
|
+
title: action.label,
|
|
20952
20956
|
className: "text-error hover:text-error hover:bg-error/10 px-2",
|
|
20953
|
-
children:
|
|
20954
|
-
action.icon && renderIconInput(action.icon, { size: "xs" }),
|
|
20955
|
-
action.label
|
|
20956
|
-
]
|
|
20957
|
+
children: action.icon ? renderIconInput(action.icon, { size: "xs" }) : action.label
|
|
20957
20958
|
},
|
|
20958
20959
|
idx
|
|
20959
20960
|
)) })
|
|
@@ -22589,10 +22590,7 @@ var init_FileTree = __esm({
|
|
|
22589
22590
|
className,
|
|
22590
22591
|
indent = 16
|
|
22591
22592
|
}) => {
|
|
22592
|
-
|
|
22593
|
-
if (tree.length === 0) {
|
|
22594
|
-
return /* @__PURE__ */ jsxRuntime.jsx(exports.Box, { className: `p-4 ${className ?? ""}`, children: /* @__PURE__ */ jsxRuntime.jsx(exports.Typography, { variant: "caption", color: "muted", children: t("fileTree.noFiles") }) });
|
|
22595
|
-
}
|
|
22593
|
+
if (tree.length === 0) return null;
|
|
22596
22594
|
return /* @__PURE__ */ jsxRuntime.jsx(exports.Box, { className: `py-1 overflow-y-auto ${className ?? ""}`, role: "tree", children: tree.map((node) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
22597
22595
|
TreeNodeItem,
|
|
22598
22596
|
{
|
|
@@ -22705,7 +22703,7 @@ var init_useQuerySingleton = __esm({
|
|
|
22705
22703
|
queryStores = /* @__PURE__ */ new Map();
|
|
22706
22704
|
}
|
|
22707
22705
|
});
|
|
22708
|
-
var resolveFilterType, lookStyles6; exports.FilterGroup = void 0;
|
|
22706
|
+
var resolveFilterType, lookStyles6, FilterGroupControls, FilterGroupPopover; exports.FilterGroup = void 0;
|
|
22709
22707
|
var init_FilterGroup = __esm({
|
|
22710
22708
|
"components/core/molecules/FilterGroup.tsx"() {
|
|
22711
22709
|
"use client";
|
|
@@ -22723,10 +22721,10 @@ var init_FilterGroup = __esm({
|
|
|
22723
22721
|
toolbar: "",
|
|
22724
22722
|
chips: "gap-1 [&_input]:rounded-pill [&_select]:rounded-pill [&_button]:rounded-pill [&_input]:!px-3 [&_select]:!px-3 [&_input]:bg-muted [&_select]:bg-muted [&_label]:hidden",
|
|
22725
22723
|
pills: "gap-2 [&_input]:rounded-pill [&_select]:rounded-pill [&_button]:rounded-pill",
|
|
22726
|
-
"popover-trigger": "
|
|
22724
|
+
"popover-trigger": "",
|
|
22727
22725
|
"inline-column-header": "hidden"
|
|
22728
22726
|
};
|
|
22729
|
-
|
|
22727
|
+
FilterGroupControls = ({
|
|
22730
22728
|
entity,
|
|
22731
22729
|
filters,
|
|
22732
22730
|
onFilterChange,
|
|
@@ -23062,7 +23060,7 @@ var init_FilterGroup = __esm({
|
|
|
23062
23060
|
className: "text-muted-foreground",
|
|
23063
23061
|
children: [
|
|
23064
23062
|
/* @__PURE__ */ jsxRuntime.jsx(exports.Icon, { name: "filter", className: "h-4 w-4" }),
|
|
23065
|
-
/* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-
|
|
23063
|
+
/* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-xs font-bold uppercase tracking-wide", children: t("filterGroup.filters") })
|
|
23066
23064
|
]
|
|
23067
23065
|
}
|
|
23068
23066
|
),
|
|
@@ -23153,6 +23151,42 @@ var init_FilterGroup = __esm({
|
|
|
23153
23151
|
}
|
|
23154
23152
|
);
|
|
23155
23153
|
};
|
|
23154
|
+
FilterGroupControls.displayName = "FilterGroupControls";
|
|
23155
|
+
FilterGroupPopover = (props) => {
|
|
23156
|
+
const { t } = hooks.useTranslate();
|
|
23157
|
+
const [open, setOpen] = React74.useState(false);
|
|
23158
|
+
const queryState = useQuerySingleton(props.query);
|
|
23159
|
+
const activeFilterCount = queryState?.filters ? Object.values(queryState.filters).filter((v) => v !== null && v !== void 0).length : 0;
|
|
23160
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: cn("relative inline-block", props.className), children: [
|
|
23161
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
23162
|
+
exports.Button,
|
|
23163
|
+
{
|
|
23164
|
+
variant: activeFilterCount > 0 ? "secondary" : "ghost",
|
|
23165
|
+
size: "sm",
|
|
23166
|
+
leftIcon: "filter",
|
|
23167
|
+
onClick: () => setOpen((o) => !o),
|
|
23168
|
+
"aria-expanded": open,
|
|
23169
|
+
"aria-haspopup": "true",
|
|
23170
|
+
children: /* @__PURE__ */ jsxRuntime.jsxs(exports.HStack, { gap: "xs", align: "center", children: [
|
|
23171
|
+
/* @__PURE__ */ jsxRuntime.jsx("span", { children: t("filterGroup.filters") }),
|
|
23172
|
+
activeFilterCount > 0 && /* @__PURE__ */ jsxRuntime.jsx(exports.Badge, { variant: "primary", size: "sm", children: activeFilterCount })
|
|
23173
|
+
] })
|
|
23174
|
+
}
|
|
23175
|
+
),
|
|
23176
|
+
open && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "absolute left-0 z-50 mt-2 min-w-[16rem] rounded-lg border border-[var(--color-border)] bg-[var(--color-card)] p-card-md shadow-main", children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
23177
|
+
FilterGroupControls,
|
|
23178
|
+
{
|
|
23179
|
+
...props,
|
|
23180
|
+
className: void 0,
|
|
23181
|
+
look: "toolbar",
|
|
23182
|
+
variant: "vertical",
|
|
23183
|
+
showIcon: false
|
|
23184
|
+
}
|
|
23185
|
+
) })
|
|
23186
|
+
] });
|
|
23187
|
+
};
|
|
23188
|
+
FilterGroupPopover.displayName = "FilterGroupPopover";
|
|
23189
|
+
exports.FilterGroup = (props) => props.look === "popover-trigger" ? /* @__PURE__ */ jsxRuntime.jsx(FilterGroupPopover, { ...props }) : /* @__PURE__ */ jsxRuntime.jsx(FilterGroupControls, { ...props });
|
|
23156
23190
|
exports.FilterGroup.displayName = "FilterGroup";
|
|
23157
23191
|
}
|
|
23158
23192
|
});
|
|
@@ -28879,7 +28913,7 @@ var init_NumberStepper = __esm({
|
|
|
28879
28913
|
"active:bg-muted",
|
|
28880
28914
|
"transition-colors duration-instant",
|
|
28881
28915
|
"disabled:opacity-40 disabled:cursor-not-allowed disabled:hover:bg-transparent",
|
|
28882
|
-
"focus:outline-none focus:ring-[length:var(--focus-ring-width)] focus:ring-ring focus:ring-inset",
|
|
28916
|
+
"focus:outline-none focus-visible:ring-[length:var(--focus-ring-width)] focus-visible:ring-ring focus-visible:ring-inset",
|
|
28883
28917
|
styles.button
|
|
28884
28918
|
),
|
|
28885
28919
|
"aria-label": t("aria.decrease"),
|
|
@@ -28920,7 +28954,7 @@ var init_NumberStepper = __esm({
|
|
|
28920
28954
|
"active:bg-muted",
|
|
28921
28955
|
"transition-colors duration-instant",
|
|
28922
28956
|
"disabled:opacity-40 disabled:cursor-not-allowed disabled:hover:bg-transparent",
|
|
28923
|
-
"focus:outline-none focus:ring-[length:var(--focus-ring-width)] focus:ring-ring focus:ring-inset",
|
|
28957
|
+
"focus:outline-none focus-visible:ring-[length:var(--focus-ring-width)] focus-visible:ring-ring focus-visible:ring-inset",
|
|
28924
28958
|
styles.button
|
|
28925
28959
|
),
|
|
28926
28960
|
"aria-label": t("aria.increase"),
|
|
@@ -29376,7 +29410,7 @@ var init_Lightbox = __esm({
|
|
|
29376
29410
|
"p-2 rounded-full",
|
|
29377
29411
|
"text-[var(--color-foreground)] bg-[var(--color-card)]",
|
|
29378
29412
|
"hover:bg-opacity-70 transition-opacity",
|
|
29379
|
-
"focus:outline-none focus:ring-2 focus:ring-ring"
|
|
29413
|
+
"focus:outline-none focus-visible:ring-2 focus-visible:ring-ring"
|
|
29380
29414
|
),
|
|
29381
29415
|
"aria-label": t("aria.closeModal"),
|
|
29382
29416
|
children: /* @__PURE__ */ jsxRuntime.jsx(exports.Icon, { name: "x", className: "w-6 h-6" })
|
|
@@ -29395,7 +29429,7 @@ var init_Lightbox = __esm({
|
|
|
29395
29429
|
"p-2 rounded-full",
|
|
29396
29430
|
"text-[var(--color-foreground)] bg-[var(--color-card)]",
|
|
29397
29431
|
"hover:bg-opacity-70 transition-opacity",
|
|
29398
|
-
"focus:outline-none focus:ring-2 focus:ring-ring"
|
|
29432
|
+
"focus:outline-none focus-visible:ring-2 focus-visible:ring-ring"
|
|
29399
29433
|
),
|
|
29400
29434
|
"aria-label": t("aria.previousImage"),
|
|
29401
29435
|
children: /* @__PURE__ */ jsxRuntime.jsx(exports.Icon, { name: "chevron-left", className: "w-8 h-8" })
|
|
@@ -29432,7 +29466,7 @@ var init_Lightbox = __esm({
|
|
|
29432
29466
|
"p-2 rounded-full",
|
|
29433
29467
|
"text-[var(--color-foreground)] bg-[var(--color-card)]",
|
|
29434
29468
|
"hover:bg-opacity-70 transition-opacity",
|
|
29435
|
-
"focus:outline-none focus:ring-2 focus:ring-ring"
|
|
29469
|
+
"focus:outline-none focus-visible:ring-2 focus-visible:ring-ring"
|
|
29436
29470
|
),
|
|
29437
29471
|
"aria-label": t("aria.nextImage"),
|
|
29438
29472
|
children: /* @__PURE__ */ jsxRuntime.jsx(exports.Icon, { name: "chevron-right", className: "w-8 h-8" })
|
|
@@ -29606,9 +29640,20 @@ function TableView({
|
|
|
29606
29640
|
const inlineActionCount = hasActions ? maxInlineActions != null ? Math.min(itemActions.length, maxInlineActions) : itemActions.length : 0;
|
|
29607
29641
|
const hasOverflowActions = hasActions && maxInlineActions != null && itemActions.length > maxInlineActions;
|
|
29608
29642
|
const actionsTrack = hasActions ? `${inlineActionCount * 6 + (hasOverflowActions ? 3 : 0)}rem` : null;
|
|
29643
|
+
const colFloors = React74__namespace.default.useMemo(
|
|
29644
|
+
() => colDefs.map((col) => {
|
|
29645
|
+
const longest = data.reduce((widest, row) => {
|
|
29646
|
+
const cell = formatCell(asFieldValue(getNestedValue(row, col.field ?? col.key)), col.format);
|
|
29647
|
+
return Math.max(widest, cell.length);
|
|
29648
|
+
}, columnLabel(col).length);
|
|
29649
|
+
const chrome = col.format === "badge" ? BADGE_CHROME_CH : 0;
|
|
29650
|
+
return Math.min(longest + chrome, MAX_MEASURED_COL_CH);
|
|
29651
|
+
}),
|
|
29652
|
+
[colDefs, data]
|
|
29653
|
+
);
|
|
29609
29654
|
const gridTemplateColumns = [
|
|
29610
29655
|
selectable ? "auto" : null,
|
|
29611
|
-
...colDefs.map((c) => c.width ??
|
|
29656
|
+
...colDefs.map((c, i) => c.width ?? `minmax(${colFloors[i]}ch, 1fr)`),
|
|
29612
29657
|
actionsTrack
|
|
29613
29658
|
].filter(Boolean).join(" ");
|
|
29614
29659
|
const header = /* @__PURE__ */ jsxRuntime.jsxs(
|
|
@@ -29692,7 +29737,7 @@ function TableView({
|
|
|
29692
29737
|
col.className
|
|
29693
29738
|
);
|
|
29694
29739
|
if (col.format === "badge" && raw != null && raw !== "") {
|
|
29695
|
-
return /* @__PURE__ */ jsxRuntime.jsx(exports.Box, { role: "cell", className: cellBase, children: /* @__PURE__ */ jsxRuntime.jsx(exports.Badge, { variant: statusVariant4(String(raw)), size: "sm", children: String(raw) }) }, col.key);
|
|
29740
|
+
return /* @__PURE__ */ jsxRuntime.jsx(exports.Box, { role: "cell", className: cellBase, children: /* @__PURE__ */ jsxRuntime.jsx(exports.Badge, { variant: statusVariant4(String(raw)), size: "sm", className: "whitespace-nowrap", children: String(raw) }) }, col.key);
|
|
29696
29741
|
}
|
|
29697
29742
|
return /* @__PURE__ */ jsxRuntime.jsx(exports.Box, { role: "cell", className: cellBase, children: /* @__PURE__ */ jsxRuntime.jsx("span", { className: "truncate", children: formatCell(raw, col.format) }) }, col.key);
|
|
29698
29743
|
}),
|
|
@@ -29775,7 +29820,7 @@ function TableView({
|
|
|
29775
29820
|
}
|
|
29776
29821
|
);
|
|
29777
29822
|
}
|
|
29778
|
-
var alignClass, weightClass, LOOKS;
|
|
29823
|
+
var MAX_MEASURED_COL_CH, BADGE_CHROME_CH, alignClass, weightClass, LOOKS;
|
|
29779
29824
|
var init_TableView = __esm({
|
|
29780
29825
|
"components/core/molecules/TableView.tsx"() {
|
|
29781
29826
|
"use client";
|
|
@@ -29793,6 +29838,8 @@ var init_TableView = __esm({
|
|
|
29793
29838
|
init_Menu();
|
|
29794
29839
|
init_useDataDnd();
|
|
29795
29840
|
logger.createLogger("almadar:ui:table-view");
|
|
29841
|
+
MAX_MEASURED_COL_CH = 32;
|
|
29842
|
+
BADGE_CHROME_CH = 4;
|
|
29796
29843
|
alignClass = {
|
|
29797
29844
|
left: "justify-start text-left",
|
|
29798
29845
|
center: "justify-center text-center",
|
|
@@ -32028,7 +32075,7 @@ var init_VoteStack = __esm({
|
|
|
32028
32075
|
"active:bg-muted",
|
|
32029
32076
|
"transition-colors duration-instant",
|
|
32030
32077
|
"disabled:opacity-40 disabled:cursor-not-allowed disabled:hover:bg-transparent",
|
|
32031
|
-
"focus:outline-none focus:ring-[length:var(--focus-ring-width)] focus:ring-ring focus:ring-inset",
|
|
32078
|
+
"focus:outline-none focus-visible:ring-[length:var(--focus-ring-width)] focus-visible:ring-ring focus-visible:ring-inset",
|
|
32032
32079
|
styles.button
|
|
32033
32080
|
),
|
|
32034
32081
|
children: /* @__PURE__ */ jsxRuntime.jsx(exports.Icon, { name: "chevron-up", className: styles.icon })
|
|
@@ -32065,7 +32112,7 @@ var init_VoteStack = __esm({
|
|
|
32065
32112
|
"active:bg-muted",
|
|
32066
32113
|
"transition-colors duration-instant",
|
|
32067
32114
|
"disabled:opacity-40 disabled:cursor-not-allowed disabled:hover:bg-transparent",
|
|
32068
|
-
"focus:outline-none focus:ring-[length:var(--focus-ring-width)] focus:ring-ring focus:ring-inset",
|
|
32115
|
+
"focus:outline-none focus-visible:ring-[length:var(--focus-ring-width)] focus-visible:ring-ring focus-visible:ring-inset",
|
|
32069
32116
|
styles.button
|
|
32070
32117
|
),
|
|
32071
32118
|
children: /* @__PURE__ */ jsxRuntime.jsx(exports.Icon, { name: "chevron-down", className: styles.icon })
|
|
@@ -32586,7 +32633,7 @@ var init_QrScanner = __esm({
|
|
|
32586
32633
|
// eslint-disable-next-line almadar/no-hardcoded-colors -- media overlay: always over a dark scrim
|
|
32587
32634
|
"rounded-full bg-black bg-opacity-60 p-2 text-white",
|
|
32588
32635
|
// eslint-disable-next-line almadar/no-hardcoded-colors -- media overlay: always over a dark scrim
|
|
32589
|
-
"hover:bg-opacity-80 focus:outline-none focus:ring-2 focus:ring-white"
|
|
32636
|
+
"hover:bg-opacity-80 focus:outline-none focus-visible:ring-2 focus-visible:ring-white"
|
|
32590
32637
|
),
|
|
32591
32638
|
"aria-label": isPaused ? t("qrScanner.resumeScanning") : t("qrScanner.pauseScanning"),
|
|
32592
32639
|
children: isPaused ? /* @__PURE__ */ jsxRuntime.jsx(exports.Icon, { name: "play", className: "h-4 w-4" }) : /* @__PURE__ */ jsxRuntime.jsx(exports.Icon, { name: "pause", className: "h-4 w-4" })
|
|
@@ -32601,7 +32648,7 @@ var init_QrScanner = __esm({
|
|
|
32601
32648
|
// eslint-disable-next-line almadar/no-hardcoded-colors -- media overlay: always over a dark scrim
|
|
32602
32649
|
"rounded-full bg-black bg-opacity-60 p-2 text-white",
|
|
32603
32650
|
// eslint-disable-next-line almadar/no-hardcoded-colors -- media overlay: always over a dark scrim
|
|
32604
|
-
"hover:bg-opacity-80 focus:outline-none focus:ring-2 focus:ring-white"
|
|
32651
|
+
"hover:bg-opacity-80 focus:outline-none focus-visible:ring-2 focus-visible:ring-white"
|
|
32605
32652
|
),
|
|
32606
32653
|
"aria-label": currentFacing === "environment" ? t("qrScanner.switchToFrontCamera") : t("qrScanner.switchToRearCamera"),
|
|
32607
32654
|
children: /* @__PURE__ */ jsxRuntime.jsx(exports.Icon, { name: "refresh-cw", className: "h-4 w-4" })
|
|
@@ -32616,7 +32663,7 @@ var init_QrScanner = __esm({
|
|
|
32616
32663
|
// eslint-disable-next-line almadar/no-hardcoded-colors -- media overlay: always over a dark scrim
|
|
32617
32664
|
"rounded-full bg-black bg-opacity-60 px-3 py-2 text-xs text-white",
|
|
32618
32665
|
// eslint-disable-next-line almadar/no-hardcoded-colors -- media overlay: always over a dark scrim
|
|
32619
|
-
"hover:bg-opacity-80 focus:outline-none focus:ring-2 focus:ring-white"
|
|
32666
|
+
"hover:bg-opacity-80 focus:outline-none focus-visible:ring-2 focus-visible:ring-white"
|
|
32620
32667
|
),
|
|
32621
32668
|
"aria-label": t("aria.mockScanDev"),
|
|
32622
32669
|
children: t("qrScanner.mockScan")
|
|
@@ -44655,7 +44702,7 @@ var init_TabbedContainer = __esm({
|
|
|
44655
44702
|
onClick: () => !isDisabled && handleTabChange(tab.id),
|
|
44656
44703
|
className: cn(
|
|
44657
44704
|
"flex items-center gap-2 px-4 py-3 text-sm font-medium transition-colors",
|
|
44658
|
-
"focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2",
|
|
44705
|
+
"focus:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2",
|
|
44659
44706
|
"disabled:opacity-50 disabled:cursor-not-allowed",
|
|
44660
44707
|
isActive ? "bg-primary text-primary-foreground" : "bg-card text-foreground hover:bg-muted",
|
|
44661
44708
|
isVertical ? "justify-start" : "justify-center"
|
|
@@ -48662,7 +48709,7 @@ var I18nContext = React74.createContext({
|
|
|
48662
48709
|
});
|
|
48663
48710
|
I18nContext.displayName = "I18nContext";
|
|
48664
48711
|
var I18nProvider = I18nContext.Provider;
|
|
48665
|
-
function
|
|
48712
|
+
function useTranslate114() {
|
|
48666
48713
|
return React74.useContext(I18nContext);
|
|
48667
48714
|
}
|
|
48668
48715
|
function createTranslate(messages) {
|
|
@@ -49081,7 +49128,7 @@ exports.useSharedEntityStoreContext = useSharedEntityStoreContext;
|
|
|
49081
49128
|
exports.useSwipeGesture = useSwipeGesture;
|
|
49082
49129
|
exports.useTapReveal = useTapReveal;
|
|
49083
49130
|
exports.useTraitListens = useTraitListens;
|
|
49084
|
-
exports.useTranslate =
|
|
49131
|
+
exports.useTranslate = useTranslate114;
|
|
49085
49132
|
exports.useUIEvents = useUIEvents;
|
|
49086
49133
|
exports.useUISlotManager = useUISlotManager;
|
|
49087
49134
|
exports.useUnitSpriteAtlas = useUnitSpriteAtlas;
|
|
@@ -4011,10 +4011,6 @@ interface FilterGroupProps {
|
|
|
4011
4011
|
/** Declarative clear event — emits UI:{clearEvent} via eventBus on clear-all (alongside canonical UI:CLEAR_FILTERS) */
|
|
4012
4012
|
clearEvent?: EventKey;
|
|
4013
4013
|
}
|
|
4014
|
-
/**
|
|
4015
|
-
* FilterGroup - Renders filter controls for entity data
|
|
4016
|
-
* Uses atoms: Button, Select, Badge, HStack
|
|
4017
|
-
*/
|
|
4018
4014
|
declare const FilterGroup: React__default.FC<FilterGroupProps>;
|
|
4019
4015
|
|
|
4020
4016
|
/**
|
|
@@ -4011,10 +4011,6 @@ interface FilterGroupProps {
|
|
|
4011
4011
|
/** Declarative clear event — emits UI:{clearEvent} via eventBus on clear-all (alongside canonical UI:CLEAR_FILTERS) */
|
|
4012
4012
|
clearEvent?: EventKey;
|
|
4013
4013
|
}
|
|
4014
|
-
/**
|
|
4015
|
-
* FilterGroup - Renders filter controls for entity data
|
|
4016
|
-
* Uses atoms: Button, Select, Badge, HStack
|
|
4017
|
-
*/
|
|
4018
4014
|
declare const FilterGroup: React__default.FC<FilterGroupProps>;
|
|
4019
4015
|
|
|
4020
4016
|
/**
|