@datum-cloud/datum-ui 0.6.0-alpha.a49f238 → 0.6.0-alpha.a9a8815

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.
Files changed (103) hide show
  1. package/README.md +3 -0
  2. package/dist/combobox/index.mjs +2 -0
  3. package/dist/combobox-cKTFK4uN.mjs +96 -0
  4. package/dist/components/features/combobox/combobox.d.ts +27 -0
  5. package/dist/components/features/combobox/combobox.d.ts.map +1 -0
  6. package/dist/components/features/combobox/index.d.ts +3 -0
  7. package/dist/components/features/combobox/index.d.ts.map +1 -0
  8. package/dist/components/features/combobox/types.d.ts +78 -0
  9. package/dist/components/features/combobox/types.d.ts.map +1 -0
  10. package/dist/components/features/date-time-picker/date-time-picker.d.ts +9 -0
  11. package/dist/components/features/date-time-picker/date-time-picker.d.ts.map +1 -0
  12. package/dist/components/features/date-time-picker/index.d.ts +3 -0
  13. package/dist/components/features/date-time-picker/index.d.ts.map +1 -0
  14. package/dist/components/features/date-time-picker/types.d.ts +53 -0
  15. package/dist/components/features/date-time-picker/types.d.ts.map +1 -0
  16. package/dist/components/features/date-time-picker/utils/format.d.ts +13 -0
  17. package/dist/components/features/date-time-picker/utils/format.d.ts.map +1 -0
  18. package/dist/components/features/date-time-picker/utils/index.d.ts +3 -0
  19. package/dist/components/features/date-time-picker/utils/index.d.ts.map +1 -0
  20. package/dist/components/features/date-time-picker/utils/timezone.d.ts +23 -0
  21. package/dist/components/features/date-time-picker/utils/timezone.d.ts.map +1 -0
  22. package/dist/components/features/form/adapters/conform/conform-adapter.d.ts.map +1 -1
  23. package/dist/components/features/form/components/form-autosearch.d.ts +25 -0
  24. package/dist/components/features/form/components/form-autosearch.d.ts.map +1 -0
  25. package/dist/components/features/form/components/form-combobox.d.ts +76 -0
  26. package/dist/components/features/form/components/form-combobox.d.ts.map +1 -0
  27. package/dist/components/features/form/components/form-date-picker.d.ts +38 -0
  28. package/dist/components/features/form/components/form-date-picker.d.ts.map +1 -0
  29. package/dist/components/features/form/components/form-date-time-picker.d.ts +37 -0
  30. package/dist/components/features/form/components/form-date-time-picker.d.ts.map +1 -0
  31. package/dist/components/features/form/components/form-time-picker.d.ts +21 -0
  32. package/dist/components/features/form/components/form-time-picker.d.ts.map +1 -0
  33. package/dist/components/features/form/components/form-transfer.d.ts +37 -0
  34. package/dist/components/features/form/components/form-transfer.d.ts.map +1 -0
  35. package/dist/components/features/form/components/index.d.ts +6 -0
  36. package/dist/components/features/form/components/index.d.ts.map +1 -1
  37. package/dist/components/features/form/index.d.ts +8 -2
  38. package/dist/components/features/form/index.d.ts.map +1 -1
  39. package/dist/components/features/form/utils/get-field-constraints.d.ts +33 -1
  40. package/dist/components/features/form/utils/get-field-constraints.d.ts.map +1 -1
  41. package/dist/components/features/time-picker/index.d.ts +3 -0
  42. package/dist/components/features/time-picker/index.d.ts.map +1 -0
  43. package/dist/components/features/time-picker/time-picker.d.ts +22 -0
  44. package/dist/components/features/time-picker/time-picker.d.ts.map +1 -0
  45. package/dist/components/features/time-picker/types.d.ts +31 -0
  46. package/dist/components/features/time-picker/types.d.ts.map +1 -0
  47. package/dist/components/features/transfer/components/index.d.ts +9 -0
  48. package/dist/components/features/transfer/components/index.d.ts.map +1 -0
  49. package/dist/components/features/transfer/components/transfer-group.d.ts +7 -0
  50. package/dist/components/features/transfer/components/transfer-group.d.ts.map +1 -0
  51. package/dist/components/features/transfer/components/transfer-item.d.ts +10 -0
  52. package/dist/components/features/transfer/components/transfer-item.d.ts.map +1 -0
  53. package/dist/components/features/transfer/components/transfer-panel.d.ts +18 -0
  54. package/dist/components/features/transfer/components/transfer-panel.d.ts.map +1 -0
  55. package/dist/components/features/transfer/components/transfer-search.d.ts +9 -0
  56. package/dist/components/features/transfer/components/transfer-search.d.ts.map +1 -0
  57. package/dist/components/features/transfer/hooks/use-transfer-dnd.d.ts +26 -0
  58. package/dist/components/features/transfer/hooks/use-transfer-dnd.d.ts.map +1 -0
  59. package/dist/components/features/transfer/hooks/use-transfer-state.d.ts +20 -0
  60. package/dist/components/features/transfer/hooks/use-transfer-state.d.ts.map +1 -0
  61. package/dist/components/features/transfer/index.d.ts +3 -0
  62. package/dist/components/features/transfer/index.d.ts.map +1 -0
  63. package/dist/components/features/transfer/transfer.d.ts +6 -0
  64. package/dist/components/features/transfer/transfer.d.ts.map +1 -0
  65. package/dist/components/features/transfer/types.d.ts +69 -0
  66. package/dist/components/features/transfer/types.d.ts.map +1 -0
  67. package/dist/date-picker/index.mjs +1 -1
  68. package/dist/date-time-picker/index.mjs +2 -0
  69. package/dist/date-time-picker-Bx_n4nEJ.mjs +177 -0
  70. package/dist/form/adapters/conform/index.mjs +8 -2
  71. package/dist/form/adapters/rhf/index.mjs +2 -2
  72. package/dist/form/index.mjs +3 -3
  73. package/dist/form/stepper/index.mjs +2 -2
  74. package/dist/{form-C6AOB2f4.mjs → form-zf5QOnAk.mjs} +217 -3
  75. package/dist/{get-field-constraints-D4xnXJEg.mjs → get-field-constraints-CxfZ753o.mjs} +1 -0
  76. package/dist/grid/index.mjs +1 -1
  77. package/dist/hooks/index.mjs +2 -2
  78. package/dist/index.mjs +14 -14
  79. package/dist/input-number/index.mjs +1 -1
  80. package/dist/map/index.mjs +1 -1
  81. package/dist/{map-BqpteT_8.mjs → map-CWIQ-eql.mjs} +1 -1
  82. package/dist/more-actions/index.mjs +1 -1
  83. package/dist/page-title/index.mjs +1 -1
  84. package/dist/stepper/index.mjs +1 -1
  85. package/dist/tag-input/index.mjs +1 -1
  86. package/dist/task-queue/index.mjs +1 -1
  87. package/dist/time-picker/index.mjs +2 -0
  88. package/dist/time-picker-BoF7pZZ2.mjs +43 -0
  89. package/dist/transfer/index.mjs +2 -0
  90. package/dist/transfer-C55XfEXy.mjs +243 -0
  91. package/package.json +32 -1
  92. /package/dist/{adapter-context-BFqfq4Io.mjs → adapter-context-rWveHhDd.mjs} +0 -0
  93. /package/dist/{col-CiSpQPUT.mjs → col-1T0Q3SlH.mjs} +0 -0
  94. /package/dist/{hooks-DNjmSsJT.mjs → hooks-D8r2M2U6.mjs} +0 -0
  95. /package/dist/{input-number-BTQdHqVZ.mjs → input-number-a7uydAsw.mjs} +0 -0
  96. /package/dist/{map-leaflet-imports-CT4SpoDi.mjs → map-leaflet-imports-CRSKA79m.mjs} +0 -0
  97. /package/dist/{more-actions-CucrYUnA.mjs → more-actions-ILnEZq_E.mjs} +0 -0
  98. /package/dist/{page-title-CmsIi_A3.mjs → page-title-ChsnpBiH.mjs} +0 -0
  99. /package/dist/{stepper-C92Ib8Iy.mjs → stepper-DvIOp0hh.mjs} +0 -0
  100. /package/dist/{tag-input-B91C2wdr.mjs → tag-input-T9cUX9-G.mjs} +0 -0
  101. /package/dist/{task-queue-dropdown-OOFuJcHb.mjs → task-queue-dropdown-Wcbj-f0V.mjs} +0 -0
  102. /package/dist/{to-api-format-P0gmlqe8.mjs → to-api-format-Bh3c01gr.mjs} +0 -0
  103. /package/dist/{use-copy-to-clipboard-C2IEmhDn.mjs → use-copy-to-clipboard-uNeeVHC4.mjs} +0 -0
package/README.md CHANGED
@@ -141,8 +141,10 @@ Complex, fully-customized components with significant business logic.
141
141
  | `Autocomplete` | — | Search autocomplete input |
142
142
  | `AvatarStack` | — | Stacked avatar display |
143
143
  | `CalendarDatePicker` | `react-day-picker`, `date-fns` | Date/range picker with presets |
144
+ | `Combobox` | — | Searchable single-select dropdown |
144
145
  | `CodeEditor`, `CodeEditorTabs` | `@monaco-editor/react`, `monaco-editor` | Monaco-based code editor with VS Code UX |
145
146
  | `DataTable`, `DataTableColumnHeader`, `DataTablePagination`, `DataTableToolbar`, `DataTableViewOptions` | `@tanstack/react-table` | Advanced data table with sorting/filtering |
147
+ | `DateTimePicker`, `TimePicker` | `date-fns`, `date-fns-tz` | Date/time picker with timezone support |
146
148
  | `Dropdown`, `DropdownHeader`, `DropdownItem`, `DropdownSection` | — | Dropdown menu |
147
149
  | `Dropzone` | `react-dropzone` | File drag-and-drop upload area |
148
150
  | `EmptyContent` | — | Empty state placeholder |
@@ -160,6 +162,7 @@ Complex, fully-customized components with significant business logic.
160
162
  | `TagInput` | — | Tag/chip input |
161
163
  | `TaskQueue`, `TaskQueueProvider`, `TaskQueueDropdown`, `TaskPanelHeader`, `TaskSummaryDialog` | — | Background task queue with progress UI |
162
164
  | `TimeRangePicker` | `date-fns`, `date-fns-tz` | Time range selector with timezone support |
165
+ | `Transfer` | — | Dual-panel item selector with search |
163
166
  | `Toast`, `Toaster`, `useToast` | `sonner` | Toast notifications |
164
167
 
165
168
  ## Usage Examples
@@ -0,0 +1,2 @@
1
+ import { t as Combobox } from "../combobox-cKTFK4uN.mjs";
2
+ export { Combobox };
@@ -0,0 +1,96 @@
1
+ import { t as cn } from "./cn-D2KYQ917.mjs";
2
+ import { a as CommandInput, i as CommandGroup, o as CommandItem, r as CommandEmpty, s as CommandList, t as Command } from "./command-DqHWukGK.mjs";
3
+ import { i as PopoverTrigger, r as PopoverContent, t as Popover } from "./popover-FJAcbYoH.mjs";
4
+ import { CheckIcon, ChevronDown, X } from "lucide-react";
5
+ import * as React$1 from "react";
6
+ import { jsx, jsxs } from "react/jsx-runtime";
7
+ //#region src/components/features/combobox/combobox.tsx
8
+ /**
9
+ * Combobox - Single-select dropdown with search
10
+ *
11
+ * A simpler alternative to Autocomplete for basic select scenarios.
12
+ * Supports grouped options and search filtering.
13
+ *
14
+ * @example
15
+ * ```tsx
16
+ * const options = [
17
+ * { value: '1', label: 'Option 1' },
18
+ * { value: '2', label: 'Option 2' },
19
+ * ]
20
+ *
21
+ * <Combobox
22
+ * options={options}
23
+ * value={value}
24
+ * onChange={setValue}
25
+ * placeholder="Select an option"
26
+ * />
27
+ * ```
28
+ */
29
+ function Combobox({ options, value, onChange, placeholder = "Select option...", searchPlaceholder = "Search...", emptyMessage = "No options found.", disabled = false, className, triggerClassName, contentClassName, searchable = true, showDropdownArrow = true, clearable = false, id, "data-testid": testId }) {
30
+ const [open, setOpen] = React$1.useState(false);
31
+ const isGrouped = options.length > 0 && "options" in options[0];
32
+ const selectedOption = React$1.useMemo(() => {
33
+ if (isGrouped) return options.flatMap((group) => group.options);
34
+ return options;
35
+ }, [options, isGrouped]).find((opt) => opt.value === value);
36
+ const handleSelect = React$1.useCallback((selectedValue) => {
37
+ onChange?.(selectedValue === value ? void 0 : selectedValue);
38
+ setOpen(false);
39
+ }, [value, onChange]);
40
+ const handleClear = React$1.useCallback((e) => {
41
+ e.stopPropagation();
42
+ onChange?.(void 0);
43
+ }, [onChange]);
44
+ return /* @__PURE__ */ jsxs(Popover, {
45
+ open,
46
+ onOpenChange: setOpen,
47
+ children: [/* @__PURE__ */ jsx(PopoverTrigger, {
48
+ asChild: true,
49
+ children: /* @__PURE__ */ jsxs("button", {
50
+ type: "button",
51
+ role: "combobox",
52
+ "aria-expanded": open,
53
+ disabled,
54
+ id,
55
+ "data-testid": testId,
56
+ className: cn("flex h-10 w-full items-center justify-between rounded-lg border border-input bg-background px-3 py-2 text-sm", "ring-offset-background placeholder:text-muted-foreground", "focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2", "disabled:cursor-not-allowed disabled:opacity-50", triggerClassName, className),
57
+ children: [/* @__PURE__ */ jsx("span", {
58
+ className: "truncate",
59
+ children: selectedOption ? selectedOption.label : placeholder
60
+ }), /* @__PURE__ */ jsxs("div", {
61
+ className: "ml-2 flex shrink-0 items-center gap-1",
62
+ children: [clearable && selectedOption && !disabled && /* @__PURE__ */ jsx(X, {
63
+ className: "size-4 opacity-50 hover:opacity-100",
64
+ onClick: handleClear
65
+ }), showDropdownArrow && /* @__PURE__ */ jsx(ChevronDown, { className: "size-4 opacity-50" })]
66
+ })]
67
+ })
68
+ }), /* @__PURE__ */ jsx(PopoverContent, {
69
+ className: cn("w-[--radix-popover-trigger-width] p-0", contentClassName),
70
+ align: "start",
71
+ children: /* @__PURE__ */ jsxs(Command, { children: [searchable && /* @__PURE__ */ jsx(CommandInput, {
72
+ placeholder: searchPlaceholder,
73
+ className: "h-9"
74
+ }), /* @__PURE__ */ jsxs(CommandList, {
75
+ className: "max-h-[300px]",
76
+ children: [/* @__PURE__ */ jsx(CommandEmpty, { children: emptyMessage }), isGrouped ? options.map((group) => /* @__PURE__ */ jsx(CommandGroup, {
77
+ heading: group.label,
78
+ children: group.options.map((option) => /* @__PURE__ */ jsxs(CommandItem, {
79
+ value: option.value,
80
+ disabled: option.disabled,
81
+ onSelect: handleSelect,
82
+ children: [option.label, /* @__PURE__ */ jsx(CheckIcon, { className: cn("ml-auto size-4", value === option.value ? "opacity-100" : "opacity-0") })]
83
+ }, option.value))
84
+ }, group.label)) : /* @__PURE__ */ jsx(CommandGroup, { children: options.map((option) => /* @__PURE__ */ jsxs(CommandItem, {
85
+ value: option.value,
86
+ disabled: option.disabled,
87
+ onSelect: handleSelect,
88
+ children: [option.label, /* @__PURE__ */ jsx(CheckIcon, { className: cn("ml-auto size-4", value === option.value ? "opacity-100" : "opacity-0") })]
89
+ }, option.value)) })]
90
+ })] })
91
+ })]
92
+ });
93
+ }
94
+ Combobox.displayName = "Combobox";
95
+ //#endregion
96
+ export { Combobox as t };
@@ -0,0 +1,27 @@
1
+ import type { ComboboxProps } from './types';
2
+ /**
3
+ * Combobox - Single-select dropdown with search
4
+ *
5
+ * A simpler alternative to Autocomplete for basic select scenarios.
6
+ * Supports grouped options and search filtering.
7
+ *
8
+ * @example
9
+ * ```tsx
10
+ * const options = [
11
+ * { value: '1', label: 'Option 1' },
12
+ * { value: '2', label: 'Option 2' },
13
+ * ]
14
+ *
15
+ * <Combobox
16
+ * options={options}
17
+ * value={value}
18
+ * onChange={setValue}
19
+ * placeholder="Select an option"
20
+ * />
21
+ * ```
22
+ */
23
+ export declare function Combobox({ options, value, onChange, placeholder, searchPlaceholder, emptyMessage, disabled, className, triggerClassName, contentClassName, searchable, showDropdownArrow, clearable, id, 'data-testid': testId, }: ComboboxProps): import("react/jsx-runtime").JSX.Element;
24
+ export declare namespace Combobox {
25
+ var displayName: string;
26
+ }
27
+ //# sourceMappingURL=combobox.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"combobox.d.ts","sourceRoot":"","sources":["../../../../src/components/features/combobox/combobox.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAiC,aAAa,EAAE,MAAM,SAAS,CAAA;AAc3E;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAgB,QAAQ,CAAC,EACvB,OAAO,EACP,KAAK,EACL,QAAQ,EACR,WAAgC,EAChC,iBAA+B,EAC/B,YAAkC,EAClC,QAAgB,EAChB,SAAS,EACT,gBAAgB,EAChB,gBAAgB,EAChB,UAAiB,EACjB,iBAAwB,EACxB,SAAiB,EACjB,EAAE,EACF,aAAa,EAAE,MAAM,GACtB,EAAE,aAAa,2CAgIf;yBAhJe,QAAQ"}
@@ -0,0 +1,3 @@
1
+ export { Combobox } from './combobox';
2
+ export type { ComboboxGroup, ComboboxOption, ComboboxProps } from './types';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/features/combobox/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AACrC,YAAY,EAAE,aAAa,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,SAAS,CAAA"}
@@ -0,0 +1,78 @@
1
+ export interface ComboboxOption {
2
+ value: string;
3
+ label: string;
4
+ disabled?: boolean;
5
+ }
6
+ export interface ComboboxGroup {
7
+ label: string;
8
+ options: ComboboxOption[];
9
+ }
10
+ export interface ComboboxProps {
11
+ /**
12
+ * Available options (flat or grouped)
13
+ */
14
+ 'options': ComboboxOption[] | ComboboxGroup[];
15
+ /**
16
+ * Selected value
17
+ */
18
+ 'value'?: string;
19
+ /**
20
+ * Called when selection changes
21
+ */
22
+ 'onChange'?: (value: string | undefined) => void;
23
+ /**
24
+ * Placeholder for trigger button
25
+ * @default "Select option..."
26
+ */
27
+ 'placeholder'?: string;
28
+ /**
29
+ * Placeholder for search input
30
+ * @default "Search..."
31
+ */
32
+ 'searchPlaceholder'?: string;
33
+ /**
34
+ * Message shown when no options match
35
+ * @default "No options found."
36
+ */
37
+ 'emptyMessage'?: string;
38
+ /**
39
+ * Disable the combobox
40
+ */
41
+ 'disabled'?: boolean;
42
+ /**
43
+ * Additional CSS classes for container
44
+ */
45
+ 'className'?: string;
46
+ /**
47
+ * Additional CSS classes for trigger button
48
+ */
49
+ 'triggerClassName'?: string;
50
+ /**
51
+ * Additional CSS classes for popover content
52
+ */
53
+ 'contentClassName'?: string;
54
+ /**
55
+ * Enable search functionality
56
+ * @default true
57
+ */
58
+ 'searchable'?: boolean;
59
+ /**
60
+ * Show dropdown arrow icon
61
+ * @default true
62
+ */
63
+ 'showDropdownArrow'?: boolean;
64
+ /**
65
+ * Allow clearing the selection
66
+ * @default false
67
+ */
68
+ 'clearable'?: boolean;
69
+ /**
70
+ * ID for the combobox
71
+ */
72
+ 'id'?: string;
73
+ /**
74
+ * Test ID
75
+ */
76
+ 'data-testid'?: string;
77
+ }
78
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/components/features/combobox/types.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,cAAc;IAC7B,KAAK,EAAE,MAAM,CAAA;IACb,KAAK,EAAE,MAAM,CAAA;IACb,QAAQ,CAAC,EAAE,OAAO,CAAA;CACnB;AAED,MAAM,WAAW,aAAa;IAC5B,KAAK,EAAE,MAAM,CAAA;IACb,OAAO,EAAE,cAAc,EAAE,CAAA;CAC1B;AAED,MAAM,WAAW,aAAa;IAC5B;;OAEG;IACH,SAAS,EAAE,cAAc,EAAE,GAAG,aAAa,EAAE,CAAA;IAE7C;;OAEG;IACH,OAAO,CAAC,EAAE,MAAM,CAAA;IAEhB;;OAEG;IACH,UAAU,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,KAAK,IAAI,CAAA;IAEhD;;;OAGG;IACH,aAAa,CAAC,EAAE,MAAM,CAAA;IAEtB;;;OAGG;IACH,mBAAmB,CAAC,EAAE,MAAM,CAAA;IAE5B;;;OAGG;IACH,cAAc,CAAC,EAAE,MAAM,CAAA;IAEvB;;OAEG;IACH,UAAU,CAAC,EAAE,OAAO,CAAA;IAEpB;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,CAAA;IAEpB;;OAEG;IACH,kBAAkB,CAAC,EAAE,MAAM,CAAA;IAE3B;;OAEG;IACH,kBAAkB,CAAC,EAAE,MAAM,CAAA;IAE3B;;;OAGG;IACH,YAAY,CAAC,EAAE,OAAO,CAAA;IAEtB;;;OAGG;IACH,mBAAmB,CAAC,EAAE,OAAO,CAAA;IAE7B;;;OAGG;IACH,WAAW,CAAC,EAAE,OAAO,CAAA;IAErB;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,CAAA;IAEb;;OAEG;IACH,aAAa,CAAC,EAAE,MAAM,CAAA;CACvB"}
@@ -0,0 +1,9 @@
1
+ import type { DateTimePickerProps } from './types';
2
+ import * as React from 'react';
3
+ export declare function DateTimePicker({ ref, value, onChange, minDate, maxDate, disabledDates, timezone, showTimezoneIndicator, placeholder, disabled, className }: DateTimePickerProps & {
4
+ ref?: React.RefObject<HTMLDivElement | null>;
5
+ }): import("react/jsx-runtime").JSX.Element;
6
+ export declare namespace DateTimePicker {
7
+ var displayName: string;
8
+ }
9
+ //# sourceMappingURL=date-time-picker.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"date-time-picker.d.ts","sourceRoot":"","sources":["../../../../src/components/features/date-time-picker/date-time-picker.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAiB,MAAM,SAAS,CAAA;AAIjE,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAY9B,wBAAgB,cAAc,CAAC,EAAE,GAAG,EAAE,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,EAAE,aAAa,EAAE,QAA2B,EAAE,qBAA6B,EAAE,WAAoC,EAAE,QAAgB,EAAE,SAAS,EAAE,EAAE,mBAAmB,GAAG;IAAE,GAAG,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC,cAAc,GAAG,IAAI,CAAC,CAAA;CAAE,2CAkH9R;yBAlHe,cAAc"}
@@ -0,0 +1,3 @@
1
+ export { DateTimePicker } from './date-time-picker';
2
+ export type { DateTimePickerProps, DateTimeState } from './types';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/features/date-time-picker/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAA;AACnD,YAAY,EAAE,mBAAmB,EAAE,aAAa,EAAE,MAAM,SAAS,CAAA"}
@@ -0,0 +1,53 @@
1
+ export interface DateTimePickerProps {
2
+ /**
3
+ * Current value (UTC ISO string)
4
+ * @example "2024-01-15T14:30:00Z"
5
+ */
6
+ value?: string;
7
+ /**
8
+ * Called when value changes
9
+ */
10
+ onChange?: (value: string) => void;
11
+ /**
12
+ * Minimum selectable date
13
+ */
14
+ minDate?: Date;
15
+ /**
16
+ * Maximum selectable date
17
+ */
18
+ maxDate?: Date;
19
+ /**
20
+ * Dates that should be disabled
21
+ */
22
+ disabledDates?: Date[] | ((date: Date) => boolean);
23
+ /**
24
+ * Timezone for display (defaults to browser timezone)
25
+ * @example "America/New_York"
26
+ */
27
+ timezone?: string;
28
+ /**
29
+ * Show timezone indicator below input
30
+ * @default false
31
+ */
32
+ showTimezoneIndicator?: boolean;
33
+ /**
34
+ * Input placeholder text
35
+ */
36
+ placeholder?: string;
37
+ /**
38
+ * Disable the input
39
+ */
40
+ disabled?: boolean;
41
+ /**
42
+ * Additional CSS class
43
+ */
44
+ className?: string;
45
+ }
46
+ /**
47
+ * Internal state for date + time selection
48
+ */
49
+ export interface DateTimeState {
50
+ date: Date | undefined;
51
+ time: string;
52
+ }
53
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/components/features/date-time-picker/types.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,mBAAmB;IAClC;;;OAGG;IACH,KAAK,CAAC,EAAE,MAAM,CAAA;IAEd;;OAEG;IACH,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAA;IAElC;;OAEG;IACH,OAAO,CAAC,EAAE,IAAI,CAAA;IAEd;;OAEG;IACH,OAAO,CAAC,EAAE,IAAI,CAAA;IAEd;;OAEG;IACH,aAAa,CAAC,EAAE,IAAI,EAAE,GAAG,CAAC,CAAC,IAAI,EAAE,IAAI,KAAK,OAAO,CAAC,CAAA;IAElD;;;OAGG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAA;IAEjB;;;OAGG;IACH,qBAAqB,CAAC,EAAE,OAAO,CAAA;IAE/B;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,CAAA;IAEpB;;OAEG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAA;IAElB;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB;AAED;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,IAAI,GAAG,SAAS,CAAA;IACtB,IAAI,EAAE,MAAM,CAAA;CACb"}
@@ -0,0 +1,13 @@
1
+ /**
2
+ * Format date for display
3
+ */
4
+ export declare function formatDate(date: Date | undefined): string;
5
+ /**
6
+ * Format time for display
7
+ */
8
+ export declare function formatTime(time: string): string;
9
+ /**
10
+ * Format full date-time for display
11
+ */
12
+ export declare function formatDateTime(date: Date | undefined, time: string): string;
13
+ //# sourceMappingURL=format.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"format.d.ts","sourceRoot":"","sources":["../../../../../src/components/features/date-time-picker/utils/format.ts"],"names":[],"mappings":"AAEA;;GAEG;AACH,wBAAgB,UAAU,CAAC,IAAI,EAAE,IAAI,GAAG,SAAS,GAAG,MAAM,CAIzD;AAED;;GAEG;AACH,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAI/C;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,IAAI,EAAE,IAAI,GAAG,SAAS,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,CAI3E"}
@@ -0,0 +1,3 @@
1
+ export * from './format';
2
+ export * from './timezone';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/components/features/date-time-picker/utils/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAA;AACxB,cAAc,YAAY,CAAA"}
@@ -0,0 +1,23 @@
1
+ /**
2
+ * Get the browser's timezone
3
+ */
4
+ export declare function getBrowserTimezone(): string;
5
+ /**
6
+ * Convert local date + time to UTC ISO string
7
+ * @param date - Date object (date part)
8
+ * @param time - Time string in HH:mm format
9
+ * @param timezone - IANA timezone (e.g., "America/New_York")
10
+ * @returns UTC ISO string
11
+ */
12
+ export declare function localDateTimeToUtc(date: Date, time: string, timezone: string): string;
13
+ /**
14
+ * Convert UTC ISO string to local date + time
15
+ * @param utcString - UTC ISO string
16
+ * @param timezone - IANA timezone
17
+ * @returns Object with date and time (HH:mm)
18
+ */
19
+ export declare function utcToLocalDateTime(utcString: string, timezone: string): {
20
+ date: Date;
21
+ time: string;
22
+ };
23
+ //# sourceMappingURL=timezone.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"timezone.d.ts","sourceRoot":"","sources":["../../../../../src/components/features/date-time-picker/utils/timezone.ts"],"names":[],"mappings":"AAEA;;GAEG;AACH,wBAAgB,kBAAkB,IAAI,MAAM,CAE3C;AAED;;;;;;GAMG;AACH,wBAAgB,kBAAkB,CAChC,IAAI,EAAE,IAAI,EACV,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,MAAM,GACf,MAAM,CAwBR;AAED;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAChC,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,MAAM,GACf;IAAE,IAAI,EAAE,IAAI,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CA4B9B"}
@@ -1 +1 @@
1
- {"version":3,"file":"conform-adapter.d.ts","sourceRoot":"","sources":["../../../../../../src/components/features/form/adapters/conform/conform-adapter.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAEV,WAAW,EAMZ,MAAM,qBAAqB,CAAA;AA6b5B;;;;;GAKG;AACH,eAAO,MAAM,cAAc,EAAE,WAQ5B,CAAA"}
1
+ {"version":3,"file":"conform-adapter.d.ts","sourceRoot":"","sources":["../../../../../../src/components/features/form/adapters/conform/conform-adapter.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAEV,WAAW,EAMZ,MAAM,qBAAqB,CAAA;AA0c5B;;;;;GAKG;AACH,eAAO,MAAM,cAAc,EAAE,WAQ5B,CAAA"}
@@ -0,0 +1,25 @@
1
+ import type { FormAutocompleteProps } from '../../autocomplete/autocomplete.types';
2
+ /**
3
+ * Form.Autosearch - Alias to Form.Autocomplete with search-first focus
4
+ *
5
+ * This is a convenience wrapper around Form.Autocomplete that emphasizes
6
+ * the search functionality. It's functionally identical to Form.Autocomplete.
7
+ *
8
+ * @example Basic usage
9
+ * ```tsx
10
+ * <Form.Field name="search" label="Search">
11
+ * <Form.Autosearch
12
+ * options={options}
13
+ * placeholder="Type to search..."
14
+ * />
15
+ * </Form.Field>
16
+ * ```
17
+ */
18
+ export declare function FormAutosearch<T extends {
19
+ value: string;
20
+ label: string;
21
+ }>(props: FormAutocompleteProps<T>): import("react/jsx-runtime").JSX.Element;
22
+ export declare namespace FormAutosearch {
23
+ var displayName: string;
24
+ }
25
+ //# sourceMappingURL=form-autosearch.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"form-autosearch.d.ts","sourceRoot":"","sources":["../../../../../src/components/features/form/components/form-autosearch.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,uCAAuC,CAAA;AAGlF;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,cAAc,CAAC,CAAC,SAAS;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,EACvE,KAAK,EAAE,qBAAqB,CAAC,CAAC,CAAC,2CAGhC;yBAJe,cAAc"}
@@ -0,0 +1,76 @@
1
+ import type { ComboboxGroup, ComboboxOption } from '../../combobox';
2
+ /**
3
+ * Form.Combobox - Single-select dropdown with search for forms
4
+ *
5
+ * Automatically wired to the parent Form.Field context.
6
+ *
7
+ * @example
8
+ * ```tsx
9
+ * const options = [
10
+ * { value: '1', label: 'Option 1' },
11
+ * { value: '2', label: 'Option 2' },
12
+ * ]
13
+ *
14
+ * <Form.Field name="country" label="Country" required>
15
+ * <Form.Combobox options={options} placeholder="Select a country" />
16
+ * </Form.Field>
17
+ * ```
18
+ */
19
+ export interface FormComboboxProps {
20
+ /**
21
+ * Available options (flat or grouped)
22
+ */
23
+ 'options': ComboboxOption[] | ComboboxGroup[];
24
+ /**
25
+ * Placeholder for trigger button
26
+ */
27
+ 'placeholder'?: string;
28
+ /**
29
+ * Placeholder for search input
30
+ */
31
+ 'searchPlaceholder'?: string;
32
+ /**
33
+ * Message shown when no options match
34
+ */
35
+ 'emptyMessage'?: string;
36
+ /**
37
+ * Disable the combobox
38
+ */
39
+ 'disabled'?: boolean;
40
+ /**
41
+ * Additional CSS classes
42
+ */
43
+ 'className'?: string;
44
+ /**
45
+ * Additional CSS classes for trigger button
46
+ */
47
+ 'triggerClassName'?: string;
48
+ /**
49
+ * Additional CSS classes for popover content
50
+ */
51
+ 'contentClassName'?: string;
52
+ /**
53
+ * Enable search functionality
54
+ * @default true
55
+ */
56
+ 'searchable'?: boolean;
57
+ /**
58
+ * Show dropdown arrow icon
59
+ * @default true
60
+ */
61
+ 'showDropdownArrow'?: boolean;
62
+ /**
63
+ * Allow clearing the selection
64
+ * @default false
65
+ */
66
+ 'clearable'?: boolean;
67
+ /**
68
+ * Test ID
69
+ */
70
+ 'data-testid'?: string;
71
+ }
72
+ export declare function FormCombobox({ options, placeholder, searchPlaceholder, emptyMessage, disabled, className, triggerClassName, contentClassName, searchable, showDropdownArrow, clearable, 'data-testid': testId, }: FormComboboxProps): import("react/jsx-runtime").JSX.Element;
73
+ export declare namespace FormCombobox {
74
+ var displayName: string;
75
+ }
76
+ //# sourceMappingURL=form-combobox.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"form-combobox.d.ts","sourceRoot":"","sources":["../../../../../src/components/features/form/components/form-combobox.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAA;AAMnE;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,WAAW,iBAAiB;IAChC;;OAEG;IACH,SAAS,EAAE,cAAc,EAAE,GAAG,aAAa,EAAE,CAAA;IAE7C;;OAEG;IACH,aAAa,CAAC,EAAE,MAAM,CAAA;IAEtB;;OAEG;IACH,mBAAmB,CAAC,EAAE,MAAM,CAAA;IAE5B;;OAEG;IACH,cAAc,CAAC,EAAE,MAAM,CAAA;IAEvB;;OAEG;IACH,UAAU,CAAC,EAAE,OAAO,CAAA;IAEpB;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,CAAA;IAEpB;;OAEG;IACH,kBAAkB,CAAC,EAAE,MAAM,CAAA;IAE3B;;OAEG;IACH,kBAAkB,CAAC,EAAE,MAAM,CAAA;IAE3B;;;OAGG;IACH,YAAY,CAAC,EAAE,OAAO,CAAA;IAEtB;;;OAGG;IACH,mBAAmB,CAAC,EAAE,OAAO,CAAA;IAE7B;;;OAGG;IACH,WAAW,CAAC,EAAE,OAAO,CAAA;IAErB;;OAEG;IACH,aAAa,CAAC,EAAE,MAAM,CAAA;CACvB;AAED,wBAAgB,YAAY,CAAC,EAC3B,OAAO,EACP,WAAW,EACX,iBAAiB,EACjB,YAAY,EACZ,QAAQ,EACR,SAAS,EACT,gBAAgB,EAChB,gBAAgB,EAChB,UAAiB,EACjB,iBAAwB,EACxB,SAAiB,EACjB,aAAa,EAAE,MAAM,GACtB,EAAE,iBAAiB,2CA+BnB;yBA5Ce,YAAY"}
@@ -0,0 +1,38 @@
1
+ /**
2
+ * Form.DatePicker - Date picker component for forms
3
+ *
4
+ * Automatically wired to the parent Form.Field context.
5
+ * Extracts minDate/maxDate constraints from Zod schema.
6
+ *
7
+ * @example
8
+ * ```tsx
9
+ * <Form.Field name="startDate" label="Start Date" required>
10
+ * <Form.DatePicker />
11
+ * </Form.Field>
12
+ * ```
13
+ */
14
+ export interface FormDatePickerProps {
15
+ /** Placeholder text */
16
+ placeholder?: string;
17
+ /** Disable the picker */
18
+ disabled?: boolean;
19
+ /** Additional CSS classes */
20
+ className?: string;
21
+ /** Custom trigger button className */
22
+ triggerClassName?: string;
23
+ /** Number of months to display (1 = single date, 2 = date range) */
24
+ numberOfMonths?: 1 | 2;
25
+ /** Minimum selectable date (overrides schema) */
26
+ minDate?: Date;
27
+ /** Maximum selectable date (overrides schema) */
28
+ maxDate?: Date;
29
+ /** Disable future dates */
30
+ disableFuture?: boolean;
31
+ /** Disable past dates */
32
+ disablePast?: boolean;
33
+ }
34
+ export declare function FormDatePicker({ placeholder, disabled, className, triggerClassName, numberOfMonths, minDate: minDateProp, maxDate: maxDateProp, disableFuture, disablePast, }: FormDatePickerProps): import("react/jsx-runtime").JSX.Element;
35
+ export declare namespace FormDatePicker {
36
+ var displayName: string;
37
+ }
38
+ //# sourceMappingURL=form-date-picker.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"form-date-picker.d.ts","sourceRoot":"","sources":["../../../../../src/components/features/form/components/form-date-picker.tsx"],"names":[],"mappings":"AAMA;;;;;;;;;;;;GAYG;AACH,MAAM,WAAW,mBAAmB;IAClC,uBAAuB;IACvB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,yBAAyB;IACzB,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,6BAA6B;IAC7B,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,sCAAsC;IACtC,gBAAgB,CAAC,EAAE,MAAM,CAAA;IACzB,oEAAoE;IACpE,cAAc,CAAC,EAAE,CAAC,GAAG,CAAC,CAAA;IACtB,iDAAiD;IACjD,OAAO,CAAC,EAAE,IAAI,CAAA;IACd,iDAAiD;IACjD,OAAO,CAAC,EAAE,IAAI,CAAA;IACd,2BAA2B;IAC3B,aAAa,CAAC,EAAE,OAAO,CAAA;IACvB,yBAAyB;IACzB,WAAW,CAAC,EAAE,OAAO,CAAA;CACtB;AAED,wBAAgB,cAAc,CAAC,EAC7B,WAAW,EACX,QAAQ,EACR,SAAS,EACT,gBAAgB,EAChB,cAAkB,EAClB,OAAO,EAAE,WAAW,EACpB,OAAO,EAAE,WAAW,EACpB,aAAa,EACb,WAAW,GACZ,EAAE,mBAAmB,2CA+ErB;yBAzFe,cAAc"}
@@ -0,0 +1,37 @@
1
+ /**
2
+ * Form.DateTimePicker - Date and time picker component for forms
3
+ *
4
+ * Automatically wired to the parent Form.Field context.
5
+ * Extracts minDate/maxDate constraints from Zod schema.
6
+ * Value is stored as UTC ISO string.
7
+ *
8
+ * @example
9
+ * ```tsx
10
+ * <Form.Field name="scheduledAt" label="Scheduled At" required>
11
+ * <Form.DateTimePicker />
12
+ * </Form.Field>
13
+ * ```
14
+ */
15
+ export interface FormDateTimePickerProps {
16
+ /** Minimum selectable date (overrides schema) */
17
+ minDate?: Date;
18
+ /** Maximum selectable date (overrides schema) */
19
+ maxDate?: Date;
20
+ /** Function to disable specific dates */
21
+ disabledDates?: (date: Date) => boolean;
22
+ /** User's timezone (defaults to browser timezone) */
23
+ timezone?: string;
24
+ /** Show timezone indicator */
25
+ showTimezoneIndicator?: boolean;
26
+ /** Placeholder text */
27
+ placeholder?: string;
28
+ /** Disable the picker */
29
+ disabled?: boolean;
30
+ /** Additional CSS classes */
31
+ className?: string;
32
+ }
33
+ export declare function FormDateTimePicker({ minDate: minDateProp, maxDate: maxDateProp, disabledDates, timezone, showTimezoneIndicator, placeholder, disabled, className, }: FormDateTimePickerProps): import("react/jsx-runtime").JSX.Element;
34
+ export declare namespace FormDateTimePicker {
35
+ var displayName: string;
36
+ }
37
+ //# sourceMappingURL=form-date-time-picker.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"form-date-time-picker.d.ts","sourceRoot":"","sources":["../../../../../src/components/features/form/components/form-date-time-picker.tsx"],"names":[],"mappings":"AAKA;;;;;;;;;;;;;GAaG;AACH,MAAM,WAAW,uBAAuB;IACtC,iDAAiD;IACjD,OAAO,CAAC,EAAE,IAAI,CAAA;IACd,iDAAiD;IACjD,OAAO,CAAC,EAAE,IAAI,CAAA;IACd,yCAAyC;IACzC,aAAa,CAAC,EAAE,CAAC,IAAI,EAAE,IAAI,KAAK,OAAO,CAAA;IACvC,qDAAqD;IACrD,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,8BAA8B;IAC9B,qBAAqB,CAAC,EAAE,OAAO,CAAA;IAC/B,uBAAuB;IACvB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,yBAAyB;IACzB,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,6BAA6B;IAC7B,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB;AAED,wBAAgB,kBAAkB,CAAC,EACjC,OAAO,EAAE,WAAW,EACpB,OAAO,EAAE,WAAW,EACpB,aAAa,EACb,QAAQ,EACR,qBAAqB,EACrB,WAAW,EACX,QAAQ,EACR,SAAS,GACV,EAAE,uBAAuB,2CA6CzB;yBAtDe,kBAAkB"}
@@ -0,0 +1,21 @@
1
+ import type { TimePickerProps } from '../../time-picker/types';
2
+ /**
3
+ * Form.TimePicker - Simple time input component for forms
4
+ *
5
+ * Automatically wired to the parent Form.Field context.
6
+ * Value format: "HH:mm" (e.g., "14:30")
7
+ *
8
+ * @example
9
+ * ```tsx
10
+ * <Form.Field name="time" label="Time">
11
+ * <Form.TimePicker />
12
+ * </Form.Field>
13
+ * ```
14
+ */
15
+ export interface FormTimePickerProps extends Omit<TimePickerProps, 'value' | 'onChange' | 'id' | 'aria-invalid' | 'aria-describedby'> {
16
+ }
17
+ export declare function FormTimePicker({ min, max, step, placeholder, disabled, className, }: FormTimePickerProps): import("react/jsx-runtime").JSX.Element;
18
+ export declare namespace FormTimePicker {
19
+ var displayName: string;
20
+ }
21
+ //# sourceMappingURL=form-time-picker.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"form-time-picker.d.ts","sourceRoot":"","sources":["../../../../../src/components/features/form/components/form-time-picker.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAA;AAM9D;;;;;;;;;;;;GAYG;AACH,MAAM,WAAW,mBAAoB,SAAQ,IAAI,CAAC,eAAe,EAAE,OAAO,GAAG,UAAU,GAAG,IAAI,GAAG,cAAc,GAAG,kBAAkB,CAAC;CAEpI;AAED,wBAAgB,cAAc,CAAC,EAC7B,GAAG,EACH,GAAG,EACH,IAAI,EACJ,WAAW,EACX,QAAQ,EACR,SAAS,GACV,EAAE,mBAAmB,2CA+BrB;yBAtCe,cAAc"}
@@ -0,0 +1,37 @@
1
+ import type { TransferProps } from '../../transfer/types';
2
+ export interface FormTransferProps<T> extends Omit<TransferProps<T>, 'value' | 'onChange'> {
3
+ /**
4
+ * Minimum number of items that must be selected (for display purposes).
5
+ * Extracted automatically from schema but can be overridden.
6
+ */
7
+ minItems?: number;
8
+ /**
9
+ * Maximum number of items that can be selected (for display purposes).
10
+ * Extracted automatically from schema but can be overridden.
11
+ */
12
+ maxItems?: number;
13
+ }
14
+ /**
15
+ * Form.Transfer - Transfer list component for selecting multiple items
16
+ *
17
+ * Automatically wired to the parent Form.Field context.
18
+ * Displays minItems/maxItems constraints when provided.
19
+ *
20
+ * @example
21
+ * ```tsx
22
+ * <Form.Field name="teams" label="Select Teams">
23
+ * <Form.Transfer
24
+ * items={teams}
25
+ * itemKey="id"
26
+ * itemLabel="name"
27
+ * minItems={2}
28
+ * maxItems={5}
29
+ * />
30
+ * </Form.Field>
31
+ * ```
32
+ */
33
+ export declare function FormTransfer<T>({ disabled, minItems, maxItems, ...props }: FormTransferProps<T>): import("react/jsx-runtime").JSX.Element;
34
+ export declare namespace FormTransfer {
35
+ var displayName: string;
36
+ }
37
+ //# sourceMappingURL=form-transfer.d.ts.map