@geckoui/geckoui 1.3.3 → 1.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/index.d.mts CHANGED
@@ -344,7 +344,7 @@ interface CounterInputProps extends Omit<InputHTMLAttributes<HTMLInputElement>,
344
344
  */
345
345
  declare const CounterInput: react.ForwardRefExoticComponent<CounterInputProps & react.RefAttributes<HTMLInputElement>>;
346
346
 
347
- type DateFormat$2 = "DD/MM/YYYY" | "MM/DD/YYYY" | "YYYY/MM/DD";
347
+ type DateFormat$2 = "DD/MM/YYYY" | "MM/DD/YYYY" | "YYYY-MM-DD";
348
348
  interface BaseDateInputProps {
349
349
  value?: string | null;
350
350
  onChange?: (value: string | null) => void;
@@ -370,7 +370,7 @@ interface BaseDateInputProps {
370
370
  hasFocus?: boolean;
371
371
  }
372
372
 
373
- type DateFormat$1 = "DD/MM/YYYY" | "MM/DD/YYYY" | "YYYY/MM/DD";
373
+ type DateFormat$1 = "DD/MM/YYYY" | "MM/DD/YYYY" | "YYYY-MM-DD";
374
374
  interface DateInputProps extends Omit<BaseDateInputProps, "hasFocus" | "renderCalendarIcon"> {
375
375
  /**
376
376
  * Whether to hide the calendar popup. When false (default), calendar will be shown.
@@ -400,7 +400,7 @@ interface DateInputProps extends Omit<BaseDateInputProps, "hasFocus" | "renderCa
400
400
  /**
401
401
  * DateInput is an accessible date picker component that provides an intuitive keyboard-driven
402
402
  * interface for date entry. It features intelligent auto-completion, cross-field validation,
403
- * and support for multiple date formats (DD/MM/YYYY, MM/DD/YYYY, YYYY/MM/DD).
403
+ * and support for multiple date formats (DD/MM/YYYY, MM/DD/YYYY, YYYY-MM-DD).
404
404
  *
405
405
  * The component emits ISO 8601 formatted dates (YYYY-MM-DD) while displaying dates in the
406
406
  * user's preferred format. It automatically handles leap years, month-specific day limits,
@@ -569,11 +569,6 @@ interface CalendarRangeModeProps extends BaseCalendarProps {
569
569
  * Callback function that is called when a date range is selected
570
570
  * */
571
571
  onSelectRange?: (range: DateRange | null) => void;
572
- /**
573
- * Number of months to display side by side
574
- * @default 2
575
- * */
576
- numberOfMonths?: 1 | 2;
577
572
  }
578
573
  type CalendarProps = CalendarSingleModeProps | CalendarRangeModeProps;
579
574
  interface CalendarOverload {
@@ -598,7 +593,7 @@ declare enum CalendarType {
598
593
  Year = "year"
599
594
  }
600
595
 
601
- type DateFormat = "DD/MM/YYYY" | "MM/DD/YYYY" | "YYYY/MM/DD";
596
+ type DateFormat = "DD/MM/YYYY" | "MM/DD/YYYY" | "YYYY-MM-DD";
602
597
  interface BaseDateRangeInputProps extends Omit<React.HTMLAttributes<HTMLDivElement>, "onChange" | "onBlur" | "prefix" | "onSubmit"> {
603
598
  value?: DateRange;
604
599
  onChange?: (value: DateRange | null) => void;
@@ -636,7 +631,6 @@ interface DateRangeInputProps extends Omit<BaseDateRangeInputProps, "hasFocus" |
636
631
  calendarClassName?: string;
637
632
  calendarPlacement?: Placement;
638
633
  floatingStrategy?: Strategy;
639
- numberOfMonths?: 1 | 2;
640
634
  }
641
635
 
642
636
  declare const DateRangeInput: FC<DateRangeInputProps>;
@@ -1092,7 +1086,7 @@ interface RHFCounterInputProps extends RHFBaseProps, Omit<CounterInputProps, "na
1092
1086
  */
1093
1087
  declare const RHFCounterInput: FC<RHFCounterInputProps>;
1094
1088
 
1095
- interface InputTransformer {
1089
+ interface InputTransformer$1 {
1096
1090
  input?: (value: string) => string;
1097
1091
  output?: (value: string) => string;
1098
1092
  }
@@ -1104,7 +1098,7 @@ interface RHFInputProps extends RHFBaseProps, Omit<InputProps, "name" | "prefix"
1104
1098
  * This is the recommended way of transforming in React Hook Form.
1105
1099
  * See the documentation for more information: https://react-hook-form.com/advanced-usage#TransformandParse
1106
1100
  * */
1107
- transform?: InputTransformer;
1101
+ transform?: InputTransformer$1;
1108
1102
  /**
1109
1103
  * Component to render before the input element.
1110
1104
  *
@@ -1144,7 +1138,7 @@ interface RHFInputProps extends RHFBaseProps, Omit<InputProps, "name" | "prefix"
1144
1138
  * Callback fired when the value changes
1145
1139
  * This is the actual value of the input not the event object
1146
1140
  * */
1147
- onChange?: (value: string | null) => void;
1141
+ onChange?: (value: string) => void;
1148
1142
  /**
1149
1143
  * Callback fired when the input is blurred
1150
1144
  * */
@@ -1216,10 +1210,6 @@ interface RHFErrorProps extends RHFBaseProps {
1216
1210
  * ```
1217
1211
  * */
1218
1212
  render?: ReactNode | ((props: RHFErrorRenderProps) => JSX.Element);
1219
- /**
1220
- * @deprecated - Use `render` prop instead
1221
- * */
1222
- children?: ReactNode;
1223
1213
  }
1224
1214
 
1225
1215
  /**
@@ -1407,8 +1397,8 @@ interface RHFNumberInputProps extends RHFInputProps {
1407
1397
  declare const RHFNumberInput: FC<RHFNumberInputProps>;
1408
1398
 
1409
1399
  interface Currency {
1410
- symbol: string;
1411
- code: string;
1400
+ symbol?: string;
1401
+ code?: string;
1412
1402
  }
1413
1403
  interface RHFCurrencyInputProps extends Omit<RHFNumberInputProps, "strict"> {
1414
1404
  /**
@@ -1499,12 +1489,24 @@ interface TextareaProps extends TextareaAutosizeProps {
1499
1489
  */
1500
1490
  declare const Textarea: react.ForwardRefExoticComponent<TextareaProps & react.RefAttributes<HTMLTextAreaElement>>;
1501
1491
 
1492
+ interface InputTransformer {
1493
+ input?: (value: string) => string;
1494
+ output?: (value: string) => string;
1495
+ }
1502
1496
  interface RHFTextareaProps extends RHFBaseProps, Omit<TextareaProps, "name" | "onChange" | "onBlur"> {
1497
+ /**
1498
+ * This transform object allows you to transform the input value before it is passed to the form.
1499
+ * You can also transform the output value before it is passed to the input element.
1500
+ *
1501
+ * This is the recommended way of transforming in React Hook Form.
1502
+ * See the documentation for more information: https://react-hook-form.com/advanced-usage#TransformandParse
1503
+ * */
1504
+ transform?: InputTransformer;
1503
1505
  /**
1504
1506
  * Callback fired when the value changes
1505
1507
  * This is the actual value of the textarea not the event object
1506
1508
  * */
1507
- onChange?: (value: string | null) => void;
1509
+ onChange?: (value: string) => void;
1508
1510
  /**
1509
1511
  * Callback fired when the input is blurred
1510
1512
  * ```
@@ -1936,7 +1938,17 @@ interface OTPInputProps {
1936
1938
  */
1937
1939
  declare const OTPInput: react__default.ForwardRefExoticComponent<OTPInputProps & react__default.RefAttributes<HTMLInputElement>>;
1938
1940
 
1939
- interface RHFOTPInputProps extends RHFBaseProps, Omit<OTPInputProps, "value" | "onChange"> {
1941
+ interface RHFOTPInputProps extends RHFBaseProps, Omit<OTPInputProps, "value" | "onChange" | "onBlur"> {
1942
+ /**
1943
+ * Callback fired when the value changes
1944
+ * Called alongside React Hook Form's onChange with the new code
1945
+ * */
1946
+ onChange?: (value: string) => void;
1947
+ /**
1948
+ * Callback fired when the input is blurred
1949
+ * Called alongside React Hook Form's onBlur
1950
+ * */
1951
+ onBlur?: () => void;
1940
1952
  }
1941
1953
 
1942
1954
  /**
@@ -2949,7 +2961,7 @@ interface TooltipProps extends PropsWithChildren {
2949
2961
  /**
2950
2962
  * The side of the tooltip to display
2951
2963
  * */
2952
- side?: Placement;
2964
+ placement?: Placement;
2953
2965
  /**
2954
2966
  * The offset of the tooltip from the trigger
2955
2967
  * */
package/dist/index.d.ts CHANGED
@@ -344,7 +344,7 @@ interface CounterInputProps extends Omit<InputHTMLAttributes<HTMLInputElement>,
344
344
  */
345
345
  declare const CounterInput: react.ForwardRefExoticComponent<CounterInputProps & react.RefAttributes<HTMLInputElement>>;
346
346
 
347
- type DateFormat$2 = "DD/MM/YYYY" | "MM/DD/YYYY" | "YYYY/MM/DD";
347
+ type DateFormat$2 = "DD/MM/YYYY" | "MM/DD/YYYY" | "YYYY-MM-DD";
348
348
  interface BaseDateInputProps {
349
349
  value?: string | null;
350
350
  onChange?: (value: string | null) => void;
@@ -370,7 +370,7 @@ interface BaseDateInputProps {
370
370
  hasFocus?: boolean;
371
371
  }
372
372
 
373
- type DateFormat$1 = "DD/MM/YYYY" | "MM/DD/YYYY" | "YYYY/MM/DD";
373
+ type DateFormat$1 = "DD/MM/YYYY" | "MM/DD/YYYY" | "YYYY-MM-DD";
374
374
  interface DateInputProps extends Omit<BaseDateInputProps, "hasFocus" | "renderCalendarIcon"> {
375
375
  /**
376
376
  * Whether to hide the calendar popup. When false (default), calendar will be shown.
@@ -400,7 +400,7 @@ interface DateInputProps extends Omit<BaseDateInputProps, "hasFocus" | "renderCa
400
400
  /**
401
401
  * DateInput is an accessible date picker component that provides an intuitive keyboard-driven
402
402
  * interface for date entry. It features intelligent auto-completion, cross-field validation,
403
- * and support for multiple date formats (DD/MM/YYYY, MM/DD/YYYY, YYYY/MM/DD).
403
+ * and support for multiple date formats (DD/MM/YYYY, MM/DD/YYYY, YYYY-MM-DD).
404
404
  *
405
405
  * The component emits ISO 8601 formatted dates (YYYY-MM-DD) while displaying dates in the
406
406
  * user's preferred format. It automatically handles leap years, month-specific day limits,
@@ -569,11 +569,6 @@ interface CalendarRangeModeProps extends BaseCalendarProps {
569
569
  * Callback function that is called when a date range is selected
570
570
  * */
571
571
  onSelectRange?: (range: DateRange | null) => void;
572
- /**
573
- * Number of months to display side by side
574
- * @default 2
575
- * */
576
- numberOfMonths?: 1 | 2;
577
572
  }
578
573
  type CalendarProps = CalendarSingleModeProps | CalendarRangeModeProps;
579
574
  interface CalendarOverload {
@@ -598,7 +593,7 @@ declare enum CalendarType {
598
593
  Year = "year"
599
594
  }
600
595
 
601
- type DateFormat = "DD/MM/YYYY" | "MM/DD/YYYY" | "YYYY/MM/DD";
596
+ type DateFormat = "DD/MM/YYYY" | "MM/DD/YYYY" | "YYYY-MM-DD";
602
597
  interface BaseDateRangeInputProps extends Omit<React.HTMLAttributes<HTMLDivElement>, "onChange" | "onBlur" | "prefix" | "onSubmit"> {
603
598
  value?: DateRange;
604
599
  onChange?: (value: DateRange | null) => void;
@@ -636,7 +631,6 @@ interface DateRangeInputProps extends Omit<BaseDateRangeInputProps, "hasFocus" |
636
631
  calendarClassName?: string;
637
632
  calendarPlacement?: Placement;
638
633
  floatingStrategy?: Strategy;
639
- numberOfMonths?: 1 | 2;
640
634
  }
641
635
 
642
636
  declare const DateRangeInput: FC<DateRangeInputProps>;
@@ -1092,7 +1086,7 @@ interface RHFCounterInputProps extends RHFBaseProps, Omit<CounterInputProps, "na
1092
1086
  */
1093
1087
  declare const RHFCounterInput: FC<RHFCounterInputProps>;
1094
1088
 
1095
- interface InputTransformer {
1089
+ interface InputTransformer$1 {
1096
1090
  input?: (value: string) => string;
1097
1091
  output?: (value: string) => string;
1098
1092
  }
@@ -1104,7 +1098,7 @@ interface RHFInputProps extends RHFBaseProps, Omit<InputProps, "name" | "prefix"
1104
1098
  * This is the recommended way of transforming in React Hook Form.
1105
1099
  * See the documentation for more information: https://react-hook-form.com/advanced-usage#TransformandParse
1106
1100
  * */
1107
- transform?: InputTransformer;
1101
+ transform?: InputTransformer$1;
1108
1102
  /**
1109
1103
  * Component to render before the input element.
1110
1104
  *
@@ -1144,7 +1138,7 @@ interface RHFInputProps extends RHFBaseProps, Omit<InputProps, "name" | "prefix"
1144
1138
  * Callback fired when the value changes
1145
1139
  * This is the actual value of the input not the event object
1146
1140
  * */
1147
- onChange?: (value: string | null) => void;
1141
+ onChange?: (value: string) => void;
1148
1142
  /**
1149
1143
  * Callback fired when the input is blurred
1150
1144
  * */
@@ -1216,10 +1210,6 @@ interface RHFErrorProps extends RHFBaseProps {
1216
1210
  * ```
1217
1211
  * */
1218
1212
  render?: ReactNode | ((props: RHFErrorRenderProps) => JSX.Element);
1219
- /**
1220
- * @deprecated - Use `render` prop instead
1221
- * */
1222
- children?: ReactNode;
1223
1213
  }
1224
1214
 
1225
1215
  /**
@@ -1407,8 +1397,8 @@ interface RHFNumberInputProps extends RHFInputProps {
1407
1397
  declare const RHFNumberInput: FC<RHFNumberInputProps>;
1408
1398
 
1409
1399
  interface Currency {
1410
- symbol: string;
1411
- code: string;
1400
+ symbol?: string;
1401
+ code?: string;
1412
1402
  }
1413
1403
  interface RHFCurrencyInputProps extends Omit<RHFNumberInputProps, "strict"> {
1414
1404
  /**
@@ -1499,12 +1489,24 @@ interface TextareaProps extends TextareaAutosizeProps {
1499
1489
  */
1500
1490
  declare const Textarea: react.ForwardRefExoticComponent<TextareaProps & react.RefAttributes<HTMLTextAreaElement>>;
1501
1491
 
1492
+ interface InputTransformer {
1493
+ input?: (value: string) => string;
1494
+ output?: (value: string) => string;
1495
+ }
1502
1496
  interface RHFTextareaProps extends RHFBaseProps, Omit<TextareaProps, "name" | "onChange" | "onBlur"> {
1497
+ /**
1498
+ * This transform object allows you to transform the input value before it is passed to the form.
1499
+ * You can also transform the output value before it is passed to the input element.
1500
+ *
1501
+ * This is the recommended way of transforming in React Hook Form.
1502
+ * See the documentation for more information: https://react-hook-form.com/advanced-usage#TransformandParse
1503
+ * */
1504
+ transform?: InputTransformer;
1503
1505
  /**
1504
1506
  * Callback fired when the value changes
1505
1507
  * This is the actual value of the textarea not the event object
1506
1508
  * */
1507
- onChange?: (value: string | null) => void;
1509
+ onChange?: (value: string) => void;
1508
1510
  /**
1509
1511
  * Callback fired when the input is blurred
1510
1512
  * ```
@@ -1936,7 +1938,17 @@ interface OTPInputProps {
1936
1938
  */
1937
1939
  declare const OTPInput: react__default.ForwardRefExoticComponent<OTPInputProps & react__default.RefAttributes<HTMLInputElement>>;
1938
1940
 
1939
- interface RHFOTPInputProps extends RHFBaseProps, Omit<OTPInputProps, "value" | "onChange"> {
1941
+ interface RHFOTPInputProps extends RHFBaseProps, Omit<OTPInputProps, "value" | "onChange" | "onBlur"> {
1942
+ /**
1943
+ * Callback fired when the value changes
1944
+ * Called alongside React Hook Form's onChange with the new code
1945
+ * */
1946
+ onChange?: (value: string) => void;
1947
+ /**
1948
+ * Callback fired when the input is blurred
1949
+ * Called alongside React Hook Form's onBlur
1950
+ * */
1951
+ onBlur?: () => void;
1940
1952
  }
1941
1953
 
1942
1954
  /**
@@ -2949,7 +2961,7 @@ interface TooltipProps extends PropsWithChildren {
2949
2961
  /**
2950
2962
  * The side of the tooltip to display
2951
2963
  * */
2952
- side?: Placement;
2964
+ placement?: Placement;
2953
2965
  /**
2954
2966
  * The offset of the tooltip from the trigger
2955
2967
  * */
package/dist/index.js CHANGED
@@ -977,7 +977,7 @@ var getSegmentOrder = (format) => {
977
977
  return ["day", "month", "year"];
978
978
  case "MM/DD/YYYY":
979
979
  return ["month", "day", "year"];
980
- case "YYYY/MM/DD":
980
+ case "YYYY-MM-DD":
981
981
  return ["year", "month", "day"];
982
982
  default:
983
983
  return ["day", "month", "year"];
@@ -1603,7 +1603,6 @@ var CalendarType = /* @__PURE__ */ ((CalendarType2) => {
1603
1603
  // src/components/Calendar/Calendar/Calendar.tsx
1604
1604
  var import_jsx_runtime13 = require("react/jsx-runtime");
1605
1605
  var Calendar = (props) => {
1606
- var _a;
1607
1606
  const { className, style, calendarRef, disableDate, renderDayCell, mode = "single" } = props;
1608
1607
  const [view, setView] = (0, import_react10.useState)("day" /* Day */);
1609
1608
  const [rangeSelectionStart, setRangeSelectionStart] = (0, import_react10.useState)(null);
@@ -1612,7 +1611,6 @@ var Calendar = (props) => {
1612
1611
  const onSelectDate = mode === "single" ? props.onSelectDate : void 0;
1613
1612
  const selectedRange = mode === "range" ? props.selectedRange : void 0;
1614
1613
  const onSelectRange = mode === "range" ? props.onSelectRange : void 0;
1615
- const numberOfMonths = mode === "range" ? (_a = props.numberOfMonths) != null ? _a : 2 : 1;
1616
1614
  let initialDate;
1617
1615
  if (mode === "range") {
1618
1616
  initialDate = (selectedRange == null ? void 0 : selectedRange.from) || (selectedRange == null ? void 0 : selectedRange.to) || getTodayDate();
@@ -1718,44 +1716,23 @@ Provided value: ${selectedRange.to}`
1718
1716
  };
1719
1717
  if (view === "day" /* Day */) {
1720
1718
  if (mode === "range") {
1721
- const secondMonth = activeMonth === 11 ? 0 : activeMonth + 1;
1722
- const secondYear = activeMonth === 11 ? activeYear + 1 : activeYear;
1723
- return /* @__PURE__ */ (0, import_jsx_runtime13.jsxs)("div", { className: "GeckoUICalendar__dual", children: [
1724
- /* @__PURE__ */ (0, import_jsx_runtime13.jsx)("div", { className: "GeckoUICalendar__dual__item", "data-position": "first", children: /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(
1725
- CalendarDayPicker_default,
1726
- {
1727
- mode: "range",
1728
- disableDate,
1729
- renderDayCell,
1730
- activeMonth,
1731
- activeYear,
1732
- onClickHeader: () => setView("month" /* Month */),
1733
- onClickLeftArrow: decreaseMonth,
1734
- onClickRightArrow: increaseMonth,
1735
- selectedRange,
1736
- onSelectRange: handleRangeDateClick,
1737
- hoveredDate,
1738
- onHoverDate: handleHoverDate
1739
- }
1740
- ) }),
1741
- numberOfMonths === 2 && /* @__PURE__ */ (0, import_jsx_runtime13.jsx)("div", { className: "GeckoUICalendar__dual__item", "data-position": "second", children: /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(
1742
- CalendarDayPicker_default,
1743
- {
1744
- mode: "range",
1745
- disableDate,
1746
- renderDayCell,
1747
- activeMonth: secondMonth,
1748
- activeYear: secondYear,
1749
- onClickHeader: () => setView("month" /* Month */),
1750
- onClickLeftArrow: decreaseMonth,
1751
- onClickRightArrow: increaseMonth,
1752
- selectedRange,
1753
- onSelectRange: handleRangeDateClick,
1754
- hoveredDate,
1755
- onHoverDate: handleHoverDate
1756
- }
1757
- ) })
1758
- ] });
1719
+ return /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(
1720
+ CalendarDayPicker_default,
1721
+ {
1722
+ mode: "range",
1723
+ disableDate,
1724
+ renderDayCell,
1725
+ activeMonth,
1726
+ activeYear,
1727
+ onClickHeader: () => setView("month" /* Month */),
1728
+ onClickLeftArrow: decreaseMonth,
1729
+ onClickRightArrow: increaseMonth,
1730
+ selectedRange,
1731
+ onSelectRange: handleRangeDateClick,
1732
+ hoveredDate,
1733
+ onHoverDate: handleHoverDate
1734
+ }
1735
+ );
1759
1736
  }
1760
1737
  return /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(
1761
1738
  CalendarDayPicker_default,
@@ -1794,7 +1771,6 @@ Provided value: ${selectedRange.to}`
1794
1771
  className: classNames(`GeckoUICalendar`, className),
1795
1772
  "data-mode": view,
1796
1773
  "data-selection": mode,
1797
- "data-calendars": mode === "range" && view === "day" /* Day */ && numberOfMonths || void 0,
1798
1774
  style,
1799
1775
  children: renderContent()
1800
1776
  }
@@ -2416,7 +2392,6 @@ var DateRangeInput = (_a) => {
2416
2392
  calendarPlacement = "bottom-start",
2417
2393
  floatingStrategy = "absolute",
2418
2394
  wrapperClassName,
2419
- numberOfMonths = 2,
2420
2395
  onStateUpdate,
2421
2396
  onSubmit
2422
2397
  } = _b, rest = __objRest(_b, [
@@ -2440,7 +2415,6 @@ var DateRangeInput = (_a) => {
2440
2415
  "calendarPlacement",
2441
2416
  "floatingStrategy",
2442
2417
  "wrapperClassName",
2443
- "numberOfMonths",
2444
2418
  "onStateUpdate",
2445
2419
  "onSubmit"
2446
2420
  ]);
@@ -2534,8 +2508,7 @@ var DateRangeInput = (_a) => {
2534
2508
  calendarRef,
2535
2509
  className: classNames("GeckoUIDateRangeInput__calendar", calendarClassName),
2536
2510
  onSelectRange: handleRangeSelect,
2537
- selectedRange: value,
2538
- numberOfMonths
2511
+ selectedRange: value
2539
2512
  }
2540
2513
  ) })
2541
2514
  ]
@@ -2595,7 +2568,7 @@ var Tooltip = ({
2595
2568
  triggerAsChild = false,
2596
2569
  arrowClassName,
2597
2570
  backgroundColor,
2598
- side = "top",
2571
+ placement = "top",
2599
2572
  sideOffset = 12
2600
2573
  }) => {
2601
2574
  const [isOpen, setIsOpen] = (0, import_react18.useState)(false);
@@ -2604,7 +2577,7 @@ var Tooltip = ({
2604
2577
  const { refs, floatingStyles, context } = (0, import_react17.useFloating)({
2605
2578
  open: isOpen,
2606
2579
  onOpenChange: setIsOpen,
2607
- placement: side,
2580
+ placement,
2608
2581
  middleware: [(0, import_react17.offset)(sideOffset), (0, import_react17.flip)(), (0, import_react17.shift)({ padding: 5 }), (0, import_react17.arrow)({ element: arrowRef })]
2609
2582
  });
2610
2583
  const handleMouseEnter = () => {
@@ -2881,7 +2854,7 @@ var RHFCheckbox = (_a) => {
2881
2854
  render: (renderProps) => {
2882
2855
  const { field } = renderProps;
2883
2856
  const isChecked = () => {
2884
- if (value === void 0) return false;
2857
+ if (value === void 0) return field.value === true;
2885
2858
  if (single) return isEqual_default(field.value, value);
2886
2859
  if (!Array.isArray(field.value)) return false;
2887
2860
  return field.value.map((e) => JSON.stringify(e)).includes(JSON.stringify(value));
@@ -2900,7 +2873,9 @@ var RHFCheckbox = (_a) => {
2900
2873
  onChange: () => {
2901
2874
  var _a2;
2902
2875
  let v;
2903
- if (single) {
2876
+ if (value === void 0) {
2877
+ v = !field.value;
2878
+ } else if (single) {
2904
2879
  v = isEqual_default(field.value, value) ? uncheckedValue != null ? uncheckedValue : null : value;
2905
2880
  } else {
2906
2881
  v = (_a2 = field.value) != null ? _a2 : [];
@@ -3218,6 +3193,7 @@ var RHFTextarea = (_a) => {
3218
3193
  rules,
3219
3194
  disabled,
3220
3195
  className,
3196
+ transform,
3221
3197
  onChange,
3222
3198
  onBlur
3223
3199
  } = _b, rest = __objRest(_b, [
@@ -3226,6 +3202,7 @@ var RHFTextarea = (_a) => {
3226
3202
  "rules",
3227
3203
  "disabled",
3228
3204
  "className",
3205
+ "transform",
3229
3206
  "onChange",
3230
3207
  "onBlur"
3231
3208
  ]);
@@ -3237,6 +3214,7 @@ var RHFTextarea = (_a) => {
3237
3214
  rules,
3238
3215
  render: (renderProps) => {
3239
3216
  const { field, fieldState } = renderProps;
3217
+ const value = (transform == null ? void 0 : transform.input) ? transform.input(field.value) : field.value;
3240
3218
  return /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(
3241
3219
  Textarea_default,
3242
3220
  __spreadProps(__spreadValues(__spreadValues({
@@ -3249,9 +3227,11 @@ var RHFTextarea = (_a) => {
3249
3227
  onBlur == null ? void 0 : onBlur(e.target.value);
3250
3228
  },
3251
3229
  onChange: (e) => {
3252
- field.onChange(e.target.value);
3253
- onChange == null ? void 0 : onChange(e.target.value);
3254
- }
3230
+ const outputValue = (transform == null ? void 0 : transform.output) ? transform.output(e.target.value) : e.target.value;
3231
+ field.onChange(outputValue);
3232
+ onChange == null ? void 0 : onChange(outputValue);
3233
+ },
3234
+ value: value != null ? value : ""
3255
3235
  })
3256
3236
  );
3257
3237
  }
@@ -3645,7 +3625,6 @@ var OTPInput = (0, import_react26.forwardRef)(
3645
3625
  className: classNames("GeckoUIOTPInput", className),
3646
3626
  "data-state": disabled ? "disabled" : "enabled",
3647
3627
  ref: divRef,
3648
- style: { gridTemplateColumns: `repeat(${length}, minmax(0, 1fr))` },
3649
3628
  children: Array.from({ length }).map((_, i) => i).map((key, index) => {
3650
3629
  const isLast = index === length - 1;
3651
3630
  return /* @__PURE__ */ (0, import_jsx_runtime41.jsxs)(
@@ -3653,6 +3632,8 @@ var OTPInput = (0, import_react26.forwardRef)(
3653
3632
  {
3654
3633
  style: {
3655
3634
  position: "relative",
3635
+ flex: 1,
3636
+ maxWidth: 56,
3656
3637
  aspectRatio: aspectRatio === void 0 ? 0.94 : aspectRatio
3657
3638
  },
3658
3639
  children: [
@@ -3724,13 +3705,17 @@ var RHFOTPInput = (_a) => {
3724
3705
  name,
3725
3706
  rules,
3726
3707
  disabled,
3727
- className
3708
+ className,
3709
+ onChange,
3710
+ onBlur
3728
3711
  } = _b, rest = __objRest(_b, [
3729
3712
  "control",
3730
3713
  "name",
3731
3714
  "rules",
3732
3715
  "disabled",
3733
- "className"
3716
+ "className",
3717
+ "onChange",
3718
+ "onBlur"
3734
3719
  ]);
3735
3720
  return /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(
3736
3721
  RHFController_default,
@@ -3742,11 +3727,20 @@ var RHFOTPInput = (_a) => {
3742
3727
  render: ({ field, fieldState }) => {
3743
3728
  return /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(
3744
3729
  OTPInput_default,
3745
- __spreadValues(__spreadValues({
3730
+ __spreadProps(__spreadValues(__spreadValues({
3746
3731
  className: classNames("GeckoUIRHFOTPInput", className),
3747
3732
  "data-error": !disabled && fieldState.error ? "" : void 0,
3748
3733
  disabled
3749
- }, rest), field)
3734
+ }, rest), field), {
3735
+ onBlur: () => {
3736
+ field.onBlur();
3737
+ onBlur == null ? void 0 : onBlur();
3738
+ },
3739
+ onChange: (value) => {
3740
+ field.onChange(value);
3741
+ onChange == null ? void 0 : onChange(value);
3742
+ }
3743
+ })
3750
3744
  );
3751
3745
  }
3752
3746
  }
@@ -4163,7 +4157,7 @@ function SelectButton({ prefix, suffix, className }) {
4163
4157
  className: classNames("GeckoUISelectButton__value", placeholderClassName),
4164
4158
  "data-placeholder": ""
4165
4159
  }, keyword && filterable && { "data-hidden": "" }), {
4166
- children: placeholder != null ? placeholder : "Select Item"
4160
+ children: placeholder != null ? placeholder : "Select option"
4167
4161
  })
4168
4162
  ),
4169
4163
  /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(