infinity-ui-elements 1.9.4 → 1.9.5

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/index.js CHANGED
@@ -2666,7 +2666,7 @@ const formatMonthYear = (date) => {
2666
2666
  year: "numeric",
2667
2667
  });
2668
2668
  };
2669
- const DateRangePicker = React__namespace.forwardRef(({ className, value: controlledValue, defaultValue, onChange, placeholder = "Select date range", isDisabled = false, size = "medium", triggerClassName, calendarClassName, minDate, maxDate, formatDate = formatDateDefault, presets = defaultPresets, showPresets = true, selectedPresetLabel, ...props }, ref) => {
2669
+ const DateRangePicker = React__namespace.forwardRef(({ className, value: controlledValue, defaultValue, onChange, placeholder = "Select date range", isDisabled = false, size = "medium", trigger, renderTrigger, triggerClassName, calendarClassName, minDate, maxDate, formatDate = formatDateDefault, presets = defaultPresets, showPresets = true, selectedPresetLabel, ...props }, ref) => {
2670
2670
  const [uncontrolledValue, setUncontrolledValue] = React__namespace.useState(defaultValue || { startDate: null, endDate: null });
2671
2671
  const [tempValue, setTempValue] = React__namespace.useState(defaultValue || { startDate: null, endDate: null });
2672
2672
  const [isOpen, setIsOpen] = React__namespace.useState(false);
@@ -2889,14 +2889,19 @@ const DateRangePicker = React__namespace.forwardRef(({ className, value: control
2889
2889
  }
2890
2890
  return placeholder;
2891
2891
  };
2892
- return (jsxRuntime.jsxs("div", { ref: datePickerRef, className: cn("relative w-fit", className), children: [jsxRuntime.jsxs("div", { className: cn(dateRangePickerVariants({
2893
- size,
2894
- isDisabled,
2895
- }), "cursor-pointer", triggerClassName), onClick: !isDisabled ? toggleOpen : undefined, role: "button", "aria-haspopup": "dialog", "aria-expanded": isOpen, "aria-disabled": isDisabled, ...props, children: [jsxRuntime.jsx(lucideReact.Calendar, { className: cn("shrink-0 w-4 h-4", isDisabled
2896
- ? "text-surface-ink-neutral-disabled"
2897
- : "text-surface-ink-neutral-muted") }), jsxRuntime.jsx("span", { className: cn("flex-1 text-left truncate", !hasValue && "text-surface-ink-neutral-muted", isDisabled && "text-surface-ink-neutral-disabled"), children: getDisplayText() }), jsxRuntime.jsx(Icon, { name: "chevronDown", size: 16, className: cn("shrink-0 transition-transform", isDisabled
2898
- ? "text-surface-ink-neutral-disabled"
2899
- : "text-surface-ink-neutral-muted", isOpen && "rotate-180") })] }), typeof document !== "undefined" &&
2892
+ const displayText = getDisplayText();
2893
+ // Render custom trigger if provided
2894
+ const triggerElement = renderTrigger ? (renderTrigger({ displayText, isOpen, onClick: toggleOpen })) : trigger ? (jsxRuntime.jsx("div", { onClick: !isDisabled ? toggleOpen : undefined, children: trigger })) : (
2895
+ // Default trigger
2896
+ jsxRuntime.jsxs("div", { className: cn(dateRangePickerVariants({
2897
+ size,
2898
+ isDisabled,
2899
+ }), "cursor-pointer", triggerClassName), onClick: !isDisabled ? toggleOpen : undefined, role: "button", "aria-haspopup": "dialog", "aria-expanded": isOpen, "aria-disabled": isDisabled, ...props, children: [jsxRuntime.jsx(lucideReact.Calendar, { className: cn("shrink-0 w-4 h-4", isDisabled
2900
+ ? "text-surface-ink-neutral-disabled"
2901
+ : "text-surface-ink-neutral-muted") }), jsxRuntime.jsx("span", { className: cn("flex-1 text-left truncate", !hasValue && "text-surface-ink-neutral-muted", isDisabled && "text-surface-ink-neutral-disabled"), children: displayText }), jsxRuntime.jsx(Icon, { name: "chevronDown", size: 16, className: cn("shrink-0 transition-transform", isDisabled
2902
+ ? "text-surface-ink-neutral-disabled"
2903
+ : "text-surface-ink-neutral-muted", isOpen && "rotate-180") })] }));
2904
+ return (jsxRuntime.jsxs("div", { ref: datePickerRef, className: cn("relative w-fit", className), children: [triggerElement, typeof document !== "undefined" &&
2900
2905
  isOpen &&
2901
2906
  !isDisabled &&
2902
2907
  (() => {