@underverse-ui/underverse 1.0.191 → 1.0.192
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/api-reference.json +1 -1
- package/dist/index.cjs +142 -93
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +14 -0
- package/dist/index.d.ts +14 -0
- package/dist/index.js +142 -93
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -3365,7 +3365,7 @@ var Textarea = forwardRef3(
|
|
|
3365
3365
|
required,
|
|
3366
3366
|
value,
|
|
3367
3367
|
maxLength,
|
|
3368
|
-
borderMode
|
|
3368
|
+
borderMode,
|
|
3369
3369
|
...props
|
|
3370
3370
|
}, ref) => {
|
|
3371
3371
|
const [isFocused, setIsFocused] = useState4(false);
|
|
@@ -6774,9 +6774,12 @@ var Modal = ({
|
|
|
6774
6774
|
noPadding = false,
|
|
6775
6775
|
fullWidth = false,
|
|
6776
6776
|
width,
|
|
6777
|
-
height
|
|
6777
|
+
height,
|
|
6778
|
+
borderMode
|
|
6778
6779
|
}) => {
|
|
6779
6780
|
const gi18n = useGlobalI18n();
|
|
6781
|
+
const globalConfig = useUnderverseUIConfig();
|
|
6782
|
+
const resolvedBorderMode = borderMode ?? globalConfig.borderMode;
|
|
6780
6783
|
const [isMounted, setIsMounted] = React22.useState(false);
|
|
6781
6784
|
const [isVisible, setIsVisible] = React22.useState(false);
|
|
6782
6785
|
const [isAnimating, setIsAnimating] = React22.useState(true);
|
|
@@ -6882,7 +6885,8 @@ var Modal = ({
|
|
|
6882
6885
|
{
|
|
6883
6886
|
ref: modalContentRef,
|
|
6884
6887
|
className: cn(
|
|
6885
|
-
"relative w-full
|
|
6888
|
+
"relative w-full border border-border/40 bg-card text-card-foreground shadow-xl",
|
|
6889
|
+
resolvedBorderMode ? getBorderRadiusClass(resolvedBorderMode) : "rounded-2xl md:rounded-3xl",
|
|
6886
6890
|
"transition-all duration-200 ease-out",
|
|
6887
6891
|
maxWidthClass,
|
|
6888
6892
|
fullWidth && "mx-0",
|
|
@@ -7390,7 +7394,8 @@ var Popover = ({
|
|
|
7390
7394
|
open,
|
|
7391
7395
|
onOpenChange,
|
|
7392
7396
|
matchTriggerWidth = false,
|
|
7393
|
-
contentWidth
|
|
7397
|
+
contentWidth,
|
|
7398
|
+
borderMode
|
|
7394
7399
|
}) => {
|
|
7395
7400
|
const isControlled = open !== void 0;
|
|
7396
7401
|
const [internalOpen, setInternalOpen] = React24.useState(false);
|
|
@@ -7399,6 +7404,8 @@ var Popover = ({
|
|
|
7399
7404
|
const panelRef = React24.useRef(null);
|
|
7400
7405
|
const lastAppliedRef = React24.useRef(null);
|
|
7401
7406
|
useShadCNAnimations();
|
|
7407
|
+
const globalConfig = useUnderverseUIConfig();
|
|
7408
|
+
const resolvedBorderMode = borderMode ?? globalConfig.popover?.borderMode ?? globalConfig.borderMode;
|
|
7402
7409
|
const isOpen = isControlled ? open : internalOpen;
|
|
7403
7410
|
const setIsOpen = React24.useCallback(
|
|
7404
7411
|
(next) => {
|
|
@@ -7579,7 +7586,8 @@ var Popover = ({
|
|
|
7579
7586
|
{
|
|
7580
7587
|
...contentProps,
|
|
7581
7588
|
className: cn(
|
|
7582
|
-
"rounded-2xl md:rounded-3xl
|
|
7589
|
+
resolvedBorderMode ? getBorderRadiusClass(resolvedBorderMode) : "rounded-2xl md:rounded-3xl",
|
|
7590
|
+
"border bg-popover text-popover-foreground shadow-md",
|
|
7583
7591
|
"backdrop-blur-sm bg-popover/95 border-border/60 p-4",
|
|
7584
7592
|
contentProps?.className,
|
|
7585
7593
|
contentClassName
|
|
@@ -7918,7 +7926,9 @@ var SlideOver = (props) => {
|
|
|
7918
7926
|
return /* @__PURE__ */ jsx27(Sheet, { ...props, side: "right", variant: "overlay", size: "lg" });
|
|
7919
7927
|
};
|
|
7920
7928
|
var BottomSheet = ({ snapPoints = ["25%", "50%", "90%"], defaultSnap = 1, ...props }) => {
|
|
7921
|
-
|
|
7929
|
+
const globalConfig = useUnderverseUIConfig();
|
|
7930
|
+
const isSquare = globalConfig.borderMode === "daewoo" || globalConfig.borderMode === "none";
|
|
7931
|
+
return /* @__PURE__ */ jsx27(Sheet, { ...props, side: "bottom", variant: "overlay", className: cn(isSquare ? "" : "rounded-t-3xl", props.className) });
|
|
7922
7932
|
};
|
|
7923
7933
|
var SidebarSheet = ({ navigation, children, ...props }) => {
|
|
7924
7934
|
return /* @__PURE__ */ jsxs17(Sheet, { ...props, side: "left", variant: "push", size: "md", children: [
|
|
@@ -8590,7 +8600,8 @@ var DropdownMenu = ({
|
|
|
8590
8600
|
disabled = false,
|
|
8591
8601
|
isOpen,
|
|
8592
8602
|
onOpenChange,
|
|
8593
|
-
items
|
|
8603
|
+
items,
|
|
8604
|
+
borderMode
|
|
8594
8605
|
}) => {
|
|
8595
8606
|
const [internalOpen, setInternalOpen] = useState18(false);
|
|
8596
8607
|
const open = isOpen !== void 0 ? isOpen : internalOpen;
|
|
@@ -8626,6 +8637,8 @@ var DropdownMenu = ({
|
|
|
8626
8637
|
item.scrollIntoView({ block: "nearest" });
|
|
8627
8638
|
}, [getEnabledMenuItems, setActiveIndex]);
|
|
8628
8639
|
useShadCNAnimations();
|
|
8640
|
+
const globalConfig = useUnderverseUIConfig();
|
|
8641
|
+
const resolvedBorderMode = borderMode ?? globalConfig.dropdownMenu?.borderMode ?? globalConfig.borderMode;
|
|
8629
8642
|
React29.useEffect(() => {
|
|
8630
8643
|
if (!open) return;
|
|
8631
8644
|
const handleKeyNav = (e) => {
|
|
@@ -8693,7 +8706,8 @@ var DropdownMenu = ({
|
|
|
8693
8706
|
animationDelay: open ? `${Math.min(index * 20, 200)}ms` : "0ms"
|
|
8694
8707
|
},
|
|
8695
8708
|
className: cn(
|
|
8696
|
-
"dropdown-item flex w-full items-center gap-2 px-2.5 py-1.5 text-sm
|
|
8709
|
+
"dropdown-item flex w-full items-center gap-2 px-2.5 py-1.5 text-sm",
|
|
8710
|
+
resolvedBorderMode ? getBorderRadiusClass(resolvedBorderMode) : "rounded-lg",
|
|
8697
8711
|
"outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 focus-visible:ring-offset-background",
|
|
8698
8712
|
"hover:bg-accent hover:text-accent-foreground",
|
|
8699
8713
|
"focus:bg-accent focus:text-accent-foreground",
|
|
@@ -8749,6 +8763,7 @@ var DropdownMenu = ({
|
|
|
8749
8763
|
trigger: enhancedTrigger,
|
|
8750
8764
|
placement,
|
|
8751
8765
|
disabled,
|
|
8766
|
+
borderMode: resolvedBorderMode,
|
|
8752
8767
|
contentClassName: cn("p-1", contentClassName),
|
|
8753
8768
|
children: menuBody
|
|
8754
8769
|
}
|
|
@@ -8765,10 +8780,13 @@ var DropdownMenuItem = ({
|
|
|
8765
8780
|
active,
|
|
8766
8781
|
shortcut,
|
|
8767
8782
|
className,
|
|
8768
|
-
closeOnSelect
|
|
8783
|
+
closeOnSelect,
|
|
8784
|
+
borderMode
|
|
8769
8785
|
}) => {
|
|
8770
8786
|
const menu = React29.useContext(DropdownMenuContext);
|
|
8771
8787
|
const shouldCloseOnSelect = closeOnSelect ?? menu?.closeOnSelect ?? false;
|
|
8788
|
+
const globalConfig = useUnderverseUIConfig();
|
|
8789
|
+
const resolvedBorderMode = borderMode ?? globalConfig.dropdownMenu?.borderMode ?? globalConfig.borderMode;
|
|
8772
8790
|
return /* @__PURE__ */ jsxs22(
|
|
8773
8791
|
"button",
|
|
8774
8792
|
{
|
|
@@ -8783,7 +8801,8 @@ var DropdownMenuItem = ({
|
|
|
8783
8801
|
"data-dropdown-menu-item": "",
|
|
8784
8802
|
tabIndex: -1,
|
|
8785
8803
|
className: cn(
|
|
8786
|
-
"flex w-full items-center gap-2 px-3 py-2 text-sm
|
|
8804
|
+
"flex w-full items-center gap-2 px-3 py-2 text-sm transition-colors group cursor-pointer",
|
|
8805
|
+
resolvedBorderMode ? getBorderRadiusClass(resolvedBorderMode) : "rounded-lg",
|
|
8787
8806
|
"hover:bg-accent hover:text-accent-foreground",
|
|
8788
8807
|
"focus:bg-accent focus:text-accent-foreground focus:outline-none",
|
|
8789
8808
|
"disabled:opacity-50 disabled:cursor-not-allowed",
|
|
@@ -8805,56 +8824,67 @@ var DropdownMenuItem = ({
|
|
|
8805
8824
|
);
|
|
8806
8825
|
};
|
|
8807
8826
|
var DropdownMenuSeparator = ({ className }) => /* @__PURE__ */ jsx32("div", { className: cn("h-px bg-border my-1", className) });
|
|
8808
|
-
var DropdownMenuSub = ({ label, icon: Icon, disabled, children }) =>
|
|
8809
|
-
|
|
8810
|
-
|
|
8811
|
-
|
|
8812
|
-
|
|
8813
|
-
|
|
8814
|
-
|
|
8815
|
-
|
|
8816
|
-
|
|
8817
|
-
|
|
8818
|
-
|
|
8819
|
-
|
|
8820
|
-
|
|
8821
|
-
|
|
8822
|
-
|
|
8823
|
-
|
|
8824
|
-
|
|
8825
|
-
|
|
8826
|
-
|
|
8827
|
-
|
|
8828
|
-
|
|
8829
|
-
|
|
8830
|
-
|
|
8831
|
-
|
|
8832
|
-
|
|
8833
|
-
)
|
|
8834
|
-
|
|
8835
|
-
|
|
8836
|
-
|
|
8837
|
-
|
|
8838
|
-
|
|
8839
|
-
|
|
8840
|
-
|
|
8841
|
-
|
|
8842
|
-
|
|
8843
|
-
|
|
8844
|
-
|
|
8845
|
-
|
|
8846
|
-
|
|
8847
|
-
|
|
8848
|
-
|
|
8849
|
-
|
|
8850
|
-
|
|
8851
|
-
|
|
8852
|
-
|
|
8853
|
-
|
|
8854
|
-
|
|
8855
|
-
|
|
8856
|
-
|
|
8857
|
-
)
|
|
8827
|
+
var DropdownMenuSub = ({ label, icon: Icon, disabled, borderMode, children }) => {
|
|
8828
|
+
const globalConfig = useUnderverseUIConfig();
|
|
8829
|
+
const resolvedBorderMode = borderMode ?? globalConfig.dropdownMenu?.borderMode ?? globalConfig.borderMode;
|
|
8830
|
+
return /* @__PURE__ */ jsx32(
|
|
8831
|
+
DropdownMenu,
|
|
8832
|
+
{
|
|
8833
|
+
trigger: /* @__PURE__ */ jsxs22(
|
|
8834
|
+
"button",
|
|
8835
|
+
{
|
|
8836
|
+
type: "button",
|
|
8837
|
+
disabled,
|
|
8838
|
+
onMouseDown: (e) => e.preventDefault(),
|
|
8839
|
+
className: cn(
|
|
8840
|
+
"flex w-full items-center gap-2 px-3 py-2 text-sm transition-colors cursor-pointer",
|
|
8841
|
+
resolvedBorderMode ? getBorderRadiusClass(resolvedBorderMode) : "rounded-lg",
|
|
8842
|
+
"hover:bg-accent hover:text-accent-foreground",
|
|
8843
|
+
"focus:bg-accent focus:text-accent-foreground focus:outline-none",
|
|
8844
|
+
"disabled:opacity-50 disabled:cursor-not-allowed"
|
|
8845
|
+
),
|
|
8846
|
+
children: [
|
|
8847
|
+
Icon && /* @__PURE__ */ jsx32(Icon, { className: "w-4 h-4 shrink-0 opacity-60" }),
|
|
8848
|
+
/* @__PURE__ */ jsx32("span", { className: "flex-1 text-left", children: label }),
|
|
8849
|
+
/* @__PURE__ */ jsx32(ChevronRight2, { className: "w-3 h-3 opacity-50" })
|
|
8850
|
+
]
|
|
8851
|
+
}
|
|
8852
|
+
),
|
|
8853
|
+
placement: "right",
|
|
8854
|
+
children
|
|
8855
|
+
}
|
|
8856
|
+
);
|
|
8857
|
+
};
|
|
8858
|
+
var SelectDropdown = ({ options, value, onChange, placeholder = "Select...", className, borderMode }) => {
|
|
8859
|
+
const globalConfig = useUnderverseUIConfig();
|
|
8860
|
+
const resolvedBorderMode = borderMode ?? globalConfig.dropdownMenu?.borderMode ?? globalConfig.borderMode;
|
|
8861
|
+
return /* @__PURE__ */ jsx32(
|
|
8862
|
+
DropdownMenu,
|
|
8863
|
+
{
|
|
8864
|
+
trigger: /* @__PURE__ */ jsxs22(
|
|
8865
|
+
"button",
|
|
8866
|
+
{
|
|
8867
|
+
className: cn(
|
|
8868
|
+
"inline-flex items-center justify-between gap-2 px-3 py-2 text-sm border bg-background border-border/60",
|
|
8869
|
+
resolvedBorderMode ? getBorderRadiusClass(resolvedBorderMode) : "rounded-2xl",
|
|
8870
|
+
"hover:bg-accent/50",
|
|
8871
|
+
"focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 focus-visible:ring-offset-background",
|
|
8872
|
+
className
|
|
8873
|
+
),
|
|
8874
|
+
children: [
|
|
8875
|
+
/* @__PURE__ */ jsx32("span", { className: "truncate max-w-64 text-foreground/90", children: value || placeholder }),
|
|
8876
|
+
/* @__PURE__ */ jsx32("svg", { width: "16", height: "16", viewBox: "0 0 20 20", fill: "none", className: "opacity-70", children: /* @__PURE__ */ jsx32("path", { d: "M6 8l4 4 4-4", stroke: "currentColor", strokeWidth: "1.5", strokeLinecap: "round", strokeLinejoin: "round" }) })
|
|
8877
|
+
]
|
|
8878
|
+
}
|
|
8879
|
+
),
|
|
8880
|
+
items: options.map((option) => ({
|
|
8881
|
+
label: option,
|
|
8882
|
+
onClick: () => onChange(option)
|
|
8883
|
+
})),
|
|
8884
|
+
borderMode: resolvedBorderMode
|
|
8885
|
+
}
|
|
8886
|
+
);
|
|
8887
|
+
};
|
|
8858
8888
|
var DropdownMenu_default = DropdownMenu;
|
|
8859
8889
|
|
|
8860
8890
|
// src/components/Pagination.tsx
|
|
@@ -8939,6 +8969,9 @@ var Combobox = ({
|
|
|
8939
8969
|
maxInitialOptions,
|
|
8940
8970
|
showSearchPromptWhenEmptyQuery = false
|
|
8941
8971
|
}) => {
|
|
8972
|
+
const globalConfig = useUnderverseUIConfig();
|
|
8973
|
+
const resolvedBorderMode = borderMode ?? globalConfig.borderMode ?? "full";
|
|
8974
|
+
const radiusClass = getBorderRadiusClass(resolvedBorderMode);
|
|
8942
8975
|
const tv = useSmartTranslations("ValidationInput");
|
|
8943
8976
|
const gi18n = useGlobalI18n();
|
|
8944
8977
|
const placeholder = placeholderProp ?? gi18n.selectPlaceholder ?? "Select\u2026";
|
|
@@ -9148,7 +9181,7 @@ var Combobox = ({
|
|
|
9148
9181
|
{
|
|
9149
9182
|
"data-combobox-dropdown": true,
|
|
9150
9183
|
"data-state": open ? "open" : "closed",
|
|
9151
|
-
className: "w-full
|
|
9184
|
+
className: cn("w-full overflow-hidden", getBorderRadiusClass(resolvedBorderMode)),
|
|
9152
9185
|
children: [
|
|
9153
9186
|
enableSearch && /* @__PURE__ */ jsx33("div", { className: cn("relative border-b border-border/30", size === "sm" ? "p-2" : size === "lg" ? "p-3" : "p-2.5"), children: /* @__PURE__ */ jsxs23("div", { className: "relative", children: [
|
|
9154
9187
|
/* @__PURE__ */ jsx33(
|
|
@@ -9290,9 +9323,6 @@ var Combobox = ({
|
|
|
9290
9323
|
filled: "border-0 bg-muted/50 hover:bg-muted/80"
|
|
9291
9324
|
};
|
|
9292
9325
|
const labelSize = size === "sm" ? "text-xs" : size === "lg" ? "text-base" : "text-sm";
|
|
9293
|
-
const globalConfig = useUnderverseUIConfig();
|
|
9294
|
-
const resolvedBorderMode = borderMode ?? globalConfig.borderMode ?? "full";
|
|
9295
|
-
const radiusClass = getBorderRadiusClass(resolvedBorderMode);
|
|
9296
9326
|
const verticalGap = size === "sm" ? "space-y-1.5" : "space-y-2";
|
|
9297
9327
|
const triggerButtonBaseProps = {
|
|
9298
9328
|
ref: triggerRef,
|
|
@@ -9423,12 +9453,13 @@ var Combobox = ({
|
|
|
9423
9453
|
placement: "bottom-start",
|
|
9424
9454
|
matchTriggerWidth: true,
|
|
9425
9455
|
className: "z-9999",
|
|
9426
|
-
|
|
9456
|
+
borderMode: resolvedBorderMode,
|
|
9457
|
+
contentClassName: "p-0 overflow-hidden",
|
|
9427
9458
|
children: dropdownBody
|
|
9428
9459
|
}
|
|
9429
9460
|
) : /* @__PURE__ */ jsxs23("div", { className: "relative", children: [
|
|
9430
9461
|
triggerButtonInline,
|
|
9431
|
-
open && /* @__PURE__ */ jsx33("div", { className: "absolute left-0 top-full mt-1 z-50 w-full", children: /* @__PURE__ */ jsx33("div", { className: "
|
|
9462
|
+
open && /* @__PURE__ */ jsx33("div", { className: "absolute left-0 top-full mt-1 z-50 w-full", children: /* @__PURE__ */ jsx33("div", { className: cn("overflow-hidden border text-popover-foreground shadow-md backdrop-blur-sm bg-popover/95 border-border/60", getBorderRadiusClass(resolvedBorderMode)), children: dropdownBody }) })
|
|
9432
9463
|
] }),
|
|
9433
9464
|
(helperText || effectiveError) && /* @__PURE__ */ jsxs23(
|
|
9434
9465
|
"p",
|
|
@@ -10702,10 +10733,10 @@ var DatePicker = ({
|
|
|
10702
10733
|
placement: "bottom-start",
|
|
10703
10734
|
disabled,
|
|
10704
10735
|
contentWidth: sizeStyles8[size].contentWidth,
|
|
10736
|
+
borderMode: resolvedBorderMode,
|
|
10705
10737
|
contentClassName: cn(
|
|
10706
10738
|
"p-0",
|
|
10707
10739
|
"backdrop-blur-xl bg-popover/95 border-border/40 shadow-2xl",
|
|
10708
|
-
"rounded-2xl md:rounded-3xl",
|
|
10709
10740
|
// Keep usable on small viewports (wheel scroll should stay within the popover if it overflows)
|
|
10710
10741
|
"max-w-[calc(100vw-1rem)] max-h-[calc(100vh-6rem)] overflow-auto overscroll-contain",
|
|
10711
10742
|
sizeStyles8[size].contentPadding,
|
|
@@ -11457,10 +11488,10 @@ var DateRangePicker = ({
|
|
|
11457
11488
|
placement: "bottom-start",
|
|
11458
11489
|
disabled,
|
|
11459
11490
|
contentWidth: sizeStyles8[size].contentWidth,
|
|
11491
|
+
borderMode: resolvedBorderMode,
|
|
11460
11492
|
contentClassName: cn(
|
|
11461
11493
|
"p-0",
|
|
11462
11494
|
"backdrop-blur-xl bg-popover/95 border-border/40 shadow-2xl",
|
|
11463
|
-
"rounded-2xl md:rounded-3xl",
|
|
11464
11495
|
"max-w-[calc(100vw-1rem)] max-h-[calc(100vh-6rem)] overflow-auto overscroll-contain",
|
|
11465
11496
|
sizeStyles8[size].contentPadding,
|
|
11466
11497
|
"animate-in fade-in-0 zoom-in-95 slide-in-from-top-2 duration-300"
|
|
@@ -11860,6 +11891,8 @@ var LunarDatePicker = ({
|
|
|
11860
11891
|
maxDate,
|
|
11861
11892
|
borderMode
|
|
11862
11893
|
}) => {
|
|
11894
|
+
const globalConfig = useUnderverseUIConfig();
|
|
11895
|
+
const resolvedBorderMode = borderMode ?? globalConfig.input?.borderMode ?? globalConfig.borderMode ?? "full";
|
|
11863
11896
|
const t = useSmartTranslations("DatePicker");
|
|
11864
11897
|
const tv = useSmartTranslations("ValidationInput");
|
|
11865
11898
|
const locale = useSmartLocale();
|
|
@@ -12384,12 +12417,12 @@ var LunarDatePicker = ({
|
|
|
12384
12417
|
open: isOpen,
|
|
12385
12418
|
onOpenChange: setIsOpen,
|
|
12386
12419
|
placement: "bottom-start",
|
|
12420
|
+
borderMode: resolvedBorderMode,
|
|
12387
12421
|
disabled,
|
|
12388
12422
|
contentWidth: sizeStyles8[size].contentWidth,
|
|
12389
12423
|
contentClassName: cn(
|
|
12390
12424
|
"p-0",
|
|
12391
12425
|
"backdrop-blur-xl bg-popover/95 border-border/40 shadow-2xl",
|
|
12392
|
-
"rounded-2xl md:rounded-3xl",
|
|
12393
12426
|
// Keep usable on small viewports (wheel scroll should stay within the popover if it overflows)
|
|
12394
12427
|
"max-w-[calc(100vw-1rem)] max-h-[calc(100vh-6rem)] overflow-auto overscroll-contain",
|
|
12395
12428
|
sizeStyles8[size].contentPadding,
|
|
@@ -12407,7 +12440,7 @@ var LunarDatePicker = ({
|
|
|
12407
12440
|
"aria-invalid": !!effectiveError,
|
|
12408
12441
|
className: cn(
|
|
12409
12442
|
"group flex w-full items-center justify-between border bg-background/80 backdrop-blur-sm",
|
|
12410
|
-
getBorderRadiusClass(
|
|
12443
|
+
getBorderRadiusClass(resolvedBorderMode),
|
|
12411
12444
|
sizeStyles8[size].trigger,
|
|
12412
12445
|
disabled ? "border-border/40 opacity-50 cursor-not-allowed" : [
|
|
12413
12446
|
"border-border/60 hover:border-primary/40",
|
|
@@ -13550,6 +13583,8 @@ function MonthYearPicker({
|
|
|
13550
13583
|
borderMode,
|
|
13551
13584
|
...rest
|
|
13552
13585
|
}) {
|
|
13586
|
+
const globalConfig = useUnderverseUIConfig();
|
|
13587
|
+
const resolvedBorderMode = borderMode ?? globalConfig.input?.borderMode ?? globalConfig.borderMode ?? "full";
|
|
13553
13588
|
const gi18n = useGlobalI18n();
|
|
13554
13589
|
const tv = useSmartTranslations("ValidationInput");
|
|
13555
13590
|
const now = /* @__PURE__ */ new Date();
|
|
@@ -13708,7 +13743,7 @@ function MonthYearPicker({
|
|
|
13708
13743
|
"aria-invalid": !!effectiveError,
|
|
13709
13744
|
className: cn(
|
|
13710
13745
|
"group flex w-full items-center justify-between border bg-background/80 backdrop-blur-sm",
|
|
13711
|
-
getBorderRadiusClass(
|
|
13746
|
+
getBorderRadiusClass(resolvedBorderMode),
|
|
13712
13747
|
sz.height,
|
|
13713
13748
|
sz.padding,
|
|
13714
13749
|
sz.text,
|
|
@@ -13890,7 +13925,8 @@ function MonthYearPicker({
|
|
|
13890
13925
|
{
|
|
13891
13926
|
className: cn(
|
|
13892
13927
|
panelSz.contentPadding,
|
|
13893
|
-
"rounded-2xl
|
|
13928
|
+
resolvedBorderMode ? getBorderRadiusClass(resolvedBorderMode) : "rounded-2xl md:rounded-3xl",
|
|
13929
|
+
"border bg-background/80 backdrop-blur-sm",
|
|
13894
13930
|
effectiveError ? "border-destructive/60 bg-destructive/5" : "border-border/50"
|
|
13895
13931
|
),
|
|
13896
13932
|
children: pickerContent
|
|
@@ -13931,7 +13967,8 @@ function MonthYearPicker({
|
|
|
13931
13967
|
contentWidth,
|
|
13932
13968
|
matchTriggerWidth,
|
|
13933
13969
|
disabled,
|
|
13934
|
-
|
|
13970
|
+
borderMode: resolvedBorderMode,
|
|
13971
|
+
contentClassName: cn(panelSz.contentPadding, compactPanel && "max-w-[calc(100vw-2rem)] p-4"),
|
|
13935
13972
|
children: pickerContent
|
|
13936
13973
|
}
|
|
13937
13974
|
),
|
|
@@ -15078,6 +15115,8 @@ function TimePicker({
|
|
|
15078
15115
|
}) {
|
|
15079
15116
|
const tv = useSmartTranslations("ValidationInput");
|
|
15080
15117
|
const gi18n = useGlobalI18n();
|
|
15118
|
+
const globalConfig = useUnderverseUIConfig();
|
|
15119
|
+
const resolvedBorderMode = borderMode ?? globalConfig.input?.borderMode ?? globalConfig.borderMode ?? "full";
|
|
15081
15120
|
const autoId = React38.useId();
|
|
15082
15121
|
const isControlled = value !== void 0;
|
|
15083
15122
|
const now = /* @__PURE__ */ new Date();
|
|
@@ -15415,7 +15454,7 @@ function TimePicker({
|
|
|
15415
15454
|
"aria-invalid": !!effectiveError,
|
|
15416
15455
|
className: cn(
|
|
15417
15456
|
"group flex w-full items-center justify-between border bg-background/80 backdrop-blur-sm",
|
|
15418
|
-
getBorderRadiusClass(
|
|
15457
|
+
getBorderRadiusClass(resolvedBorderMode),
|
|
15419
15458
|
sz.height,
|
|
15420
15459
|
sz.padding,
|
|
15421
15460
|
sz.text,
|
|
@@ -15796,7 +15835,8 @@ function TimePicker({
|
|
|
15796
15835
|
{
|
|
15797
15836
|
className: cn(
|
|
15798
15837
|
panelSz.contentPadding,
|
|
15799
|
-
"rounded-2xl md:rounded-3xl
|
|
15838
|
+
resolvedBorderMode ? getBorderRadiusClass(resolvedBorderMode) : "rounded-2xl md:rounded-3xl",
|
|
15839
|
+
"border bg-card/95 backdrop-blur-sm shadow-xl",
|
|
15800
15840
|
effectiveError ? "border-destructive/60 bg-destructive/5" : "border-border/60",
|
|
15801
15841
|
className
|
|
15802
15842
|
),
|
|
@@ -15852,10 +15892,11 @@ function TimePicker({
|
|
|
15852
15892
|
placement: "bottom-start",
|
|
15853
15893
|
matchTriggerWidth: shouldMatchTriggerWidth,
|
|
15854
15894
|
contentWidth: shouldMatchTriggerWidth ? void 0 : contentWidth,
|
|
15895
|
+
borderMode: resolvedBorderMode,
|
|
15855
15896
|
contentClassName: cn(
|
|
15856
15897
|
panelSz.contentPadding,
|
|
15857
|
-
compactPanel && "max-w-[calc(100vw-2rem)] p-4
|
|
15858
|
-
"
|
|
15898
|
+
compactPanel && "max-w-[calc(100vw-2rem)] p-4",
|
|
15899
|
+
"border bg-popover/98 backdrop-blur-md shadow-2xl",
|
|
15859
15900
|
effectiveError && "border-destructive/40",
|
|
15860
15901
|
success && !effectiveError && "border-success/40",
|
|
15861
15902
|
!effectiveError && !success && "border-border/60",
|
|
@@ -15898,6 +15939,8 @@ var DateTimePicker = ({
|
|
|
15898
15939
|
size = "md",
|
|
15899
15940
|
borderMode
|
|
15900
15941
|
}) => {
|
|
15942
|
+
const globalConfig = useUnderverseUIConfig();
|
|
15943
|
+
const resolvedBorderMode = borderMode ?? globalConfig.input?.borderMode ?? globalConfig.borderMode ?? "full";
|
|
15901
15944
|
const t = useSmartTranslations("DateTimePicker");
|
|
15902
15945
|
const tv = useSmartTranslations("ValidationInput");
|
|
15903
15946
|
const locale = useSmartLocale();
|
|
@@ -16077,7 +16120,7 @@ var DateTimePicker = ({
|
|
|
16077
16120
|
"aria-invalid": !!effectiveError,
|
|
16078
16121
|
className: cn(
|
|
16079
16122
|
"flex w-full items-center justify-between border border-input bg-background",
|
|
16080
|
-
getBorderRadiusClass(
|
|
16123
|
+
getBorderRadiusClass(resolvedBorderMode),
|
|
16081
16124
|
sizeStyles8[size].trigger,
|
|
16082
16125
|
"focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2",
|
|
16083
16126
|
disabled && "opacity-50 cursor-not-allowed",
|
|
@@ -16106,12 +16149,9 @@ var DateTimePicker = ({
|
|
|
16106
16149
|
]
|
|
16107
16150
|
}
|
|
16108
16151
|
),
|
|
16109
|
-
|
|
16110
|
-
|
|
16111
|
-
|
|
16112
|
-
"max-w-[calc(100vw-1rem)] max-h-[calc(100vh-6rem)] overflow-auto"
|
|
16113
|
-
),
|
|
16114
|
-
placement: "bottom-end",
|
|
16152
|
+
placement: "bottom-start",
|
|
16153
|
+
borderMode: resolvedBorderMode,
|
|
16154
|
+
contentClassName: "p-0 overflow-hidden w-auto flex flex-col md:flex-row max-w-[calc(100vw-1rem)] max-h-[calc(100vh-6rem)] overflow-auto",
|
|
16115
16155
|
children: [
|
|
16116
16156
|
/* @__PURE__ */ jsxs30("div", { className: "flex flex-col lg:flex-row divide-y lg:divide-y-0 lg:divide-x divide-border", children: [
|
|
16117
16157
|
/* @__PURE__ */ jsx43("div", { className: sizeStyles8[size].padding, children: /* @__PURE__ */ jsx43(
|
|
@@ -19143,6 +19183,8 @@ var MultiCombobox = ({
|
|
|
19143
19183
|
maxInitialOptions,
|
|
19144
19184
|
showSearchPromptWhenEmptyQuery = false
|
|
19145
19185
|
}) => {
|
|
19186
|
+
const globalConfig = useUnderverseUIConfig();
|
|
19187
|
+
const resolvedBorderMode = borderMode ?? globalConfig.borderMode ?? "full";
|
|
19146
19188
|
const tv = useSmartTranslations("ValidationInput");
|
|
19147
19189
|
const gi18n = useGlobalI18n();
|
|
19148
19190
|
const placeholder = placeholderProp ?? gi18n.selectPlaceholder ?? "Select...";
|
|
@@ -19403,7 +19445,7 @@ var MultiCombobox = ({
|
|
|
19403
19445
|
item.value
|
|
19404
19446
|
);
|
|
19405
19447
|
};
|
|
19406
|
-
const dropdownBody = /* @__PURE__ */ jsxs37("div", { "data-combobox-dropdown": true, "data-state": open ? "open" : "closed", className: "w-full
|
|
19448
|
+
const dropdownBody = /* @__PURE__ */ jsxs37("div", { "data-combobox-dropdown": true, "data-state": open ? "open" : "closed", className: cn("w-full overflow-hidden", getBorderRadiusClass(resolvedBorderMode)), children: [
|
|
19407
19449
|
value.length > 0 && /* @__PURE__ */ jsxs37("div", { className: "px-3 py-2 border-b border-border/40 flex items-center justify-between bg-muted/30", children: [
|
|
19408
19450
|
/* @__PURE__ */ jsx50("span", { className: "text-xs font-medium text-muted-foreground", children: maxSelected ? gi18n.selectedCountWithMax ? gi18n.selectedCountWithMax(value.length, maxSelected) : `${value.length} / ${maxSelected} max` : gi18n.itemSelectedCount ? gi18n.itemSelectedCount(value.length) : `${value.length} selected` }),
|
|
19409
19451
|
showClear && /* @__PURE__ */ jsxs37(
|
|
@@ -19521,8 +19563,6 @@ var MultiCombobox = ({
|
|
|
19521
19563
|
const selectedOptions = value.map((v) => normalizedOptions.find((o) => o.value === v) ?? selectedOptionFallbackMap.get(v)).filter(Boolean);
|
|
19522
19564
|
const visibleTags = maxTagsVisible ? selectedOptions.slice(0, maxTagsVisible) : selectedOptions;
|
|
19523
19565
|
const hiddenCount = maxTagsVisible ? Math.max(0, selectedOptions.length - maxTagsVisible) : 0;
|
|
19524
|
-
const globalConfig = useUnderverseUIConfig();
|
|
19525
|
-
const resolvedBorderMode = borderMode ?? globalConfig.borderMode ?? "full";
|
|
19526
19566
|
const triggerButton = /* @__PURE__ */ jsxs37(
|
|
19527
19567
|
"button",
|
|
19528
19568
|
{
|
|
@@ -19685,7 +19725,8 @@ var MultiCombobox = ({
|
|
|
19685
19725
|
placement: "bottom-start",
|
|
19686
19726
|
matchTriggerWidth: true,
|
|
19687
19727
|
className: "z-9999",
|
|
19688
|
-
|
|
19728
|
+
borderMode: resolvedBorderMode,
|
|
19729
|
+
contentClassName: "p-0 overflow-hidden",
|
|
19689
19730
|
children: dropdownBody
|
|
19690
19731
|
}
|
|
19691
19732
|
),
|
|
@@ -19740,6 +19781,8 @@ var RadioGroup = React47.forwardRef(
|
|
|
19740
19781
|
error = false,
|
|
19741
19782
|
errorMessage
|
|
19742
19783
|
}, ref) => {
|
|
19784
|
+
const globalConfig = useUnderverseUIConfig();
|
|
19785
|
+
const resolvedBorderMode = borderMode ?? globalConfig.input?.borderMode ?? globalConfig.borderMode ?? "full";
|
|
19743
19786
|
const [internalValue, setInternalValue] = React47.useState(defaultValue || "");
|
|
19744
19787
|
const isControlled = value !== void 0;
|
|
19745
19788
|
const currentValue = isControlled ? value : internalValue;
|
|
@@ -19763,7 +19806,7 @@ var RadioGroup = React47.forwardRef(
|
|
|
19763
19806
|
disabled,
|
|
19764
19807
|
size,
|
|
19765
19808
|
variant,
|
|
19766
|
-
borderMode
|
|
19809
|
+
borderMode: resolvedBorderMode
|
|
19767
19810
|
},
|
|
19768
19811
|
children: /* @__PURE__ */ jsxs38("div", { className: "space-y-2", children: [
|
|
19769
19812
|
/* @__PURE__ */ jsx51(
|
|
@@ -21017,6 +21060,8 @@ function CategoryTreeSelect(props) {
|
|
|
21017
21060
|
singleSelect = false,
|
|
21018
21061
|
borderMode
|
|
21019
21062
|
} = props;
|
|
21063
|
+
const globalConfig = useUnderverseUIConfig();
|
|
21064
|
+
const resolvedBorderMode = borderMode ?? globalConfig.input?.borderMode ?? globalConfig.borderMode ?? "full";
|
|
21020
21065
|
const [isOpen, setIsOpen] = useState33(false);
|
|
21021
21066
|
const [expandedNodes, setExpandedNodes] = useState33(
|
|
21022
21067
|
() => getInitialExpandedNodes(categories, { defaultExpanded, defaultExpandedIds, expandToId, viewOnly, inline })
|
|
@@ -21674,10 +21719,11 @@ function CategoryTreeSelect(props) {
|
|
|
21674
21719
|
matchTriggerWidth: true,
|
|
21675
21720
|
className: "z-9999",
|
|
21676
21721
|
contentClassName: cn(
|
|
21677
|
-
"p-0 overflow-hidden
|
|
21722
|
+
"p-0 overflow-hidden",
|
|
21678
21723
|
"border-border/40 bg-popover/95 text-popover-foreground",
|
|
21679
21724
|
"shadow-2xl backdrop-blur-xl"
|
|
21680
21725
|
),
|
|
21726
|
+
borderMode: resolvedBorderMode,
|
|
21681
21727
|
trigger: /* @__PURE__ */ jsxs41(
|
|
21682
21728
|
"div",
|
|
21683
21729
|
{
|
|
@@ -21704,7 +21750,7 @@ function CategoryTreeSelect(props) {
|
|
|
21704
21750
|
},
|
|
21705
21751
|
className: cn(
|
|
21706
21752
|
"group flex w-full items-center justify-between transition-all duration-200",
|
|
21707
|
-
getBorderRadiusClass(
|
|
21753
|
+
getBorderRadiusClass(resolvedBorderMode ?? "full"),
|
|
21708
21754
|
"backdrop-blur-sm",
|
|
21709
21755
|
triggerSizeStyles[size].button,
|
|
21710
21756
|
triggerVariantStyles[variant],
|
|
@@ -24311,6 +24357,8 @@ function ColorPicker({
|
|
|
24311
24357
|
borderMode,
|
|
24312
24358
|
...rest
|
|
24313
24359
|
}) {
|
|
24360
|
+
const globalConfig = useUnderverseUIConfig();
|
|
24361
|
+
const resolvedBorderMode = borderMode ?? globalConfig.input?.borderMode ?? globalConfig.borderMode ?? "full";
|
|
24314
24362
|
const gi18n = useGlobalI18n();
|
|
24315
24363
|
const isControlled = value !== void 0;
|
|
24316
24364
|
const initial = parseAnyColor(isControlled ? value : defaultValue) || { r: 79, g: 70, b: 229, a: 1 };
|
|
@@ -24408,7 +24456,7 @@ function ColorPicker({
|
|
|
24408
24456
|
disabled,
|
|
24409
24457
|
className: cn(
|
|
24410
24458
|
"w-full px-3 border border-input bg-background flex items-center justify-between",
|
|
24411
|
-
getBorderRadiusClass(
|
|
24459
|
+
getBorderRadiusClass(resolvedBorderMode),
|
|
24412
24460
|
sizeClasses2[size],
|
|
24413
24461
|
"hover:border-accent-foreground/30 transition-colors",
|
|
24414
24462
|
disabled && "opacity-50 cursor-not-allowed",
|
|
@@ -24444,8 +24492,9 @@ function ColorPicker({
|
|
|
24444
24492
|
onOpenChange: setOpen,
|
|
24445
24493
|
placement: "bottom-start",
|
|
24446
24494
|
matchTriggerWidth: variant === "minimal",
|
|
24495
|
+
borderMode: resolvedBorderMode,
|
|
24447
24496
|
contentWidth: contentWidthByVariant[variant],
|
|
24448
|
-
contentClassName: cn("p-3
|
|
24497
|
+
contentClassName: cn("p-3 border border-border/50 bg-card shadow-lg", contentClassName),
|
|
24449
24498
|
children: /* @__PURE__ */ jsxs49("div", { className: "space-y-3", children: [
|
|
24450
24499
|
variant !== "minimal" && /* @__PURE__ */ jsxs49("div", { className: "flex items-center gap-2", children: [
|
|
24451
24500
|
/* @__PURE__ */ jsx62(
|