shadcn-zod-formkit 3.2.0 → 3.4.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
@@ -28,13 +28,13 @@ import * as TabsPrimitive from '@radix-ui/react-tabs';
28
28
  import * as TooltipPrimitive from '@radix-ui/react-tooltip';
29
29
  import { ClassValue } from 'clsx';
30
30
 
31
- interface Props$j {
31
+ interface Props$k {
32
32
  title: string;
33
33
  description: string | ReactNode;
34
34
  className?: string;
35
35
  variant?: "info" | "warning" | "error" | "success";
36
36
  }
37
- declare const CustomAlert: ({ title, description, className, variant, }: Props$j) => react_jsx_runtime.JSX.Element;
37
+ declare const CustomAlert: ({ title, description, className, variant, }: Props$k) => react_jsx_runtime.JSX.Element;
38
38
 
39
39
  declare const validationMessages: {
40
40
  required: string;
@@ -87,7 +87,11 @@ declare enum InputTypes {
87
87
  AUTOCOMPLETE = "autocomplete",
88
88
  EMAIL = "email",
89
89
  SEARCH = "search",
90
- LOCATION_PICKER = "location_picker"
90
+ LOCATION_PICKER = "location_picker",
91
+ DATE_RANGE = "date_range",
92
+ COUNTRY_SELECT = "country_select",
93
+ RANGE = "range",
94
+ FILE_UPLOAD = "file_upload"
91
95
  }
92
96
  declare const inputFieldComp: InputTypes[];
93
97
 
@@ -96,6 +100,7 @@ type FieldConfig<T, RT = Record<string, any>> = FieldProps<T, RT> | FieldConfig<
96
100
  interface FieldProps<T = Record<string, any>, RT = Record<string, any>> {
97
101
  name: keyof T;
98
102
  label: string;
103
+ withKeyboard?: boolean;
99
104
  showWhen?: (values: Record<string, any>) => boolean;
100
105
  step?: number;
101
106
  withAddBtn?: boolean;
@@ -145,24 +150,7 @@ interface FieldProps<T = Record<string, any>, RT = Record<string, any>> {
145
150
  hidden?: boolean;
146
151
  onListOptionChange?: (item: any) => void;
147
152
  listConfig?: ListConfig;
148
- fileConfig?: {
149
- previewSize?: number;
150
- showPreview?: boolean;
151
- accept: string;
152
- multiple: boolean;
153
- maxSize: number;
154
- dragAndDrop?: boolean;
155
- progressBar?: boolean;
156
- uploadUrl?: string;
157
- onUploadProgress?: (progress: number) => void;
158
- onUploadComplete?: (response: any) => void;
159
- previewFormats?: {
160
- image?: boolean;
161
- video?: boolean;
162
- audio?: boolean;
163
- pdf?: boolean;
164
- };
165
- };
153
+ fileConfig?: FileConfig;
166
154
  transform?: 'uppercase' | 'lowercase' | 'capitalize' | 'trim' | ((value: any) => any);
167
155
  inputGroupConfig?: inputGroudConfig;
168
156
  helpText?: string;
@@ -228,6 +216,26 @@ interface inputGroudConfig {
228
216
  copyButton?: boolean;
229
217
  clearButton?: boolean;
230
218
  }
219
+ interface FileConfig {
220
+ previewSize?: number;
221
+ showPreview?: boolean;
222
+ accept: string;
223
+ multiple: boolean;
224
+ maxSize: number;
225
+ dragAndDrop?: boolean;
226
+ progressBar?: boolean;
227
+ uploadUrl?: string;
228
+ onUploadProgress?: (progress: number) => void;
229
+ onUploadComplete?: (response: any) => void;
230
+ maxFiles?: number;
231
+ acceptedFormats?: string[];
232
+ previewFormats?: {
233
+ image?: boolean;
234
+ video?: boolean;
235
+ audio?: boolean;
236
+ pdf?: boolean;
237
+ };
238
+ }
231
239
  interface ListConfig {
232
240
  children?: ReactNode | ((item: any, index: number) => ReactNode);
233
241
  list: InputOption[] | GroupedOption[];
@@ -304,7 +312,7 @@ interface FormResp<T> {
304
312
  form?: UseFormReturn<any>;
305
313
  data: T;
306
314
  }
307
- interface Props$i<T extends Record<string, any>> {
315
+ interface Props$j<T extends Record<string, any>> {
308
316
  showIcon?: boolean;
309
317
  showFormHeader?: boolean;
310
318
  formTitle: string;
@@ -334,7 +342,7 @@ interface Props$i<T extends Record<string, any>> {
334
342
  currentStep?: number;
335
343
  totalSteps?: number;
336
344
  }
337
- declare const DynamicForm: <T extends Record<string, any>>({ formTitle, formSubTitle, fields, readOnly, record, onAnyFieldChange, onSubmit, onClick, extraValidations, children, childrenHeader, showIcon, showFormHeader, withErrorsAlert, errorAlertPosition, withCard, submitBtnClass, listBtnConfig, submitBtnLabel, submitBtnLabelSubmiting, withFormWrapper, btnGroupDirection, withSubmitBtn, debug, isWrapInWizard, totalSteps, currentStep, submitBtnIcon }: Props$i<T>) => react_jsx_runtime.JSX.Element;
345
+ declare const DynamicForm: <T extends Record<string, any>>({ formTitle, formSubTitle, fields, readOnly, record, onAnyFieldChange, onSubmit, onClick, extraValidations, children, childrenHeader, showIcon, showFormHeader, withErrorsAlert, errorAlertPosition, withCard, submitBtnClass, listBtnConfig, submitBtnLabel, submitBtnLabelSubmiting, withFormWrapper, btnGroupDirection, withSubmitBtn, debug, isWrapInWizard, totalSteps, currentStep, submitBtnIcon }: Props$j<T>) => react_jsx_runtime.JSX.Element;
338
346
 
339
347
  interface WizardRenderProps<T> {
340
348
  stepFields: FieldProps<T>[];
@@ -342,7 +350,7 @@ interface WizardRenderProps<T> {
342
350
  totalSteps: number;
343
351
  setCurrentStep: Dispatch<SetStateAction<number>>;
344
352
  }
345
- interface Props$h<T> {
353
+ interface Props$i<T> {
346
354
  onSubmit?: (resp: FormResp<T>) => void;
347
355
  fields: FieldConfig<T>[];
348
356
  record: any;
@@ -350,12 +358,12 @@ interface Props$h<T> {
350
358
  isWrapInWizard?: boolean;
351
359
  skipSteps?: boolean;
352
360
  }
353
- declare const WizardForm: <T extends Record<string, any>>({ fields, record, onSubmit, children, isWrapInWizard, skipSteps, }: Props$h<T>) => react_jsx_runtime.JSX.Element;
361
+ declare const WizardForm: <T extends Record<string, any>>({ fields, record, onSubmit, children, isWrapInWizard, skipSteps, }: Props$i<T>) => react_jsx_runtime.JSX.Element;
354
362
 
355
363
  declare const DynamicFormExample: () => react_jsx_runtime.JSX.Element;
356
364
  declare const mockFields: Array<FieldProps | FieldProps[]>;
357
365
 
358
- interface Props$g<T extends Record<string, any> = Record<string, any>> {
366
+ interface Props$h<T extends Record<string, any> = Record<string, any>> {
359
367
  fields: FieldConfig<T>[];
360
368
  form: UseFormReturn<any>;
361
369
  readOnly?: boolean;
@@ -363,13 +371,13 @@ interface Props$g<T extends Record<string, any> = Record<string, any>> {
363
371
  className?: string;
364
372
  gap?: string;
365
373
  }
366
- declare const FormFieldsGrid: <T extends Record<string, any> = Record<string, any>>({ fields, form, isPending, readOnly, className, gap, }: Props$g<T>) => JSX.Element;
374
+ declare const FormFieldsGrid: <T extends Record<string, any> = Record<string, any>>({ fields, form, isPending, readOnly, className, gap, }: Props$h<T>) => JSX.Element;
367
375
 
368
- interface Props$f<T extends FieldValues = Record<string, any>> {
376
+ interface Props$g<T extends FieldValues = Record<string, any>> {
369
377
  formState: FormState<any>;
370
378
  fields: FieldConfig<T>[];
371
379
  }
372
- declare const FormErrorsAlert: <T extends FieldValues = Record<string, any>>({ formState, fields, }: Props$f<T>) => react_jsx_runtime.JSX.Element;
380
+ declare const FormErrorsAlert: <T extends FieldValues = Record<string, any>>({ formState, fields, }: Props$g<T>) => react_jsx_runtime.JSX.Element;
373
381
  declare const getFieldLabel: <T extends FieldValues>(fieldErrorKey: string, fields: ReadonlyArray<FieldProps<T>>) => string;
374
382
 
375
383
  declare class InputFactory {
@@ -381,25 +389,25 @@ declare const getDynamicSchema: <T extends Record<string, any>>(fields: FieldCon
381
389
  declare class AccordionGroupedSwitchInput extends BaseInput {
382
390
  render(): JSX.Element;
383
391
  }
384
- interface Props$e {
392
+ interface Props$f {
385
393
  form: UseFormReturn;
386
394
  input: FieldProps;
387
395
  groups?: GroupedOption[];
388
396
  isSubmitting?: boolean;
389
397
  onChange?: (optionsUpdated: InputOption[]) => void;
390
398
  }
391
- declare const AccordionGroupedSwitches: ({ form, input, groups, onChange, isSubmitting }: Props$e) => react_jsx_runtime.JSX.Element;
399
+ declare const AccordionGroupedSwitches: ({ form, input, groups, onChange, isSubmitting }: Props$f) => react_jsx_runtime.JSX.Element;
392
400
 
393
401
  declare class ButtonGroupInput extends BaseInput {
394
402
  render(): JSX.Element;
395
403
  }
396
- interface Props$d {
404
+ interface Props$e {
397
405
  input: FieldProps;
398
406
  form: UseFormReturn;
399
407
  isSubmitting?: boolean;
400
408
  className?: string;
401
409
  }
402
- declare const FieldButtonGroup: ({ input, form, isSubmitting, className }: Props$d) => react_jsx_runtime.JSX.Element;
410
+ declare const FieldButtonGroup: ({ input, form, isSubmitting, className }: Props$e) => react_jsx_runtime.JSX.Element;
403
411
 
404
412
  declare class CheckListInput extends BaseInput {
405
413
  render(): JSX.Element;
@@ -434,12 +442,12 @@ declare class CurrencyInput extends BaseInput {
434
442
  * Campo numérico con formato monetario.
435
443
  * Acepta solo números y el punto mientras se edita.
436
444
  */
437
- interface Props$c {
445
+ interface Props$d {
438
446
  form: UseFormReturn;
439
447
  input: FieldProps;
440
448
  isSubmitting?: boolean;
441
449
  }
442
- declare const FieldCurrency: ({ form, input, isSubmitting }: Props$c) => JSX.Element;
450
+ declare const FieldCurrency: ({ form, input, isSubmitting }: Props$d) => JSX.Element;
443
451
 
444
452
  declare class DateInput extends BaseInput {
445
453
  render(): JSX.Element;
@@ -448,12 +456,12 @@ declare class DateInput extends BaseInput {
448
456
  declare class DateTimeInput extends BaseInput {
449
457
  render(): JSX.Element;
450
458
  }
451
- interface Props$b {
459
+ interface Props$c {
452
460
  form: UseFormReturn;
453
461
  input: FieldProps;
454
462
  isSubmitting?: boolean;
455
463
  }
456
- declare const FieldDateTimeInput: ({ form, input, isSubmitting }: Props$b) => react_jsx_runtime.JSX.Element;
464
+ declare const FieldDateTimeInput: ({ form, input, isSubmitting }: Props$c) => react_jsx_runtime.JSX.Element;
457
465
 
458
466
  declare class FileInput extends BaseInput {
459
467
  render(): JSX.Element;
@@ -462,28 +470,28 @@ declare class FileInput extends BaseInput {
462
470
  declare class FileMultiUploadInput extends BaseInput {
463
471
  render(): JSX.Element;
464
472
  }
465
- interface Props$a {
473
+ interface Props$b {
466
474
  form: UseFormReturn;
467
475
  input: FieldProps;
468
476
  isSubmitting?: boolean;
469
477
  }
470
- declare const FieldFileMultiUpload: ({ input, form, isSubmitting }: Props$a) => react_jsx_runtime.JSX.Element;
478
+ declare const FieldFileMultiUpload: ({ input, form, isSubmitting }: Props$b) => react_jsx_runtime.JSX.Element;
471
479
 
472
480
  declare class GroupedSwitchInput extends BaseInput {
473
481
  render(): JSX.Element;
474
482
  }
475
- interface Props$9 {
483
+ interface Props$a {
476
484
  input: FieldProps;
477
485
  options?: InputOption[];
478
486
  isSubmitting?: boolean;
479
487
  onChange?: (optionsUpdated: InputOption[]) => void;
480
488
  }
481
- declare const GroupedSwitches: ({ options, onChange, input, isSubmitting }: Props$9) => react_jsx_runtime.JSX.Element;
489
+ declare const GroupedSwitches: ({ options, onChange, input, isSubmitting }: Props$a) => react_jsx_runtime.JSX.Element;
482
490
 
483
491
  declare class KeyValueListInput extends BaseInput {
484
492
  render(): JSX.Element;
485
493
  }
486
- interface Props$8 {
494
+ interface Props$9 {
487
495
  form: UseFormReturn;
488
496
  input: FieldProps;
489
497
  isSubmitting?: boolean;
@@ -491,7 +499,7 @@ interface Props$8 {
491
499
  /**
492
500
  * 🧠 Lista editable de pares clave-valor
493
501
  */
494
- declare const FieldKeyValueList: ({ form, input, isSubmitting }: Props$8) => react_jsx_runtime.JSX.Element;
502
+ declare const FieldKeyValueList: ({ form, input, isSubmitting }: Props$9) => react_jsx_runtime.JSX.Element;
495
503
 
496
504
  declare class MultiSelectInput extends BaseInput {
497
505
  render(): react_jsx_runtime.JSX.Element;
@@ -512,12 +520,12 @@ declare class RadioGroupInput extends BaseInput {
512
520
  declare class RepeaterInput extends BaseInput {
513
521
  render(): JSX.Element;
514
522
  }
515
- interface Props$7 {
523
+ interface Props$8 {
516
524
  form: UseFormReturn;
517
525
  input: FieldProps;
518
526
  isSubmitting?: boolean;
519
527
  }
520
- declare const FieldRepeater: ({ form, input, isSubmitting }: Props$7) => react_jsx_runtime.JSX.Element;
528
+ declare const FieldRepeater: ({ form, input, isSubmitting }: Props$8) => react_jsx_runtime.JSX.Element;
521
529
 
522
530
  /**
523
531
  * 🧱 Clase que extiende BaseInput
@@ -534,23 +542,23 @@ declare class SelectInput extends BaseInput {
534
542
  declare class SimpleCheckListInput extends BaseInput {
535
543
  render(): JSX.Element;
536
544
  }
537
- interface Props$6 {
545
+ interface Props$7 {
538
546
  input: FieldProps;
539
547
  value: InputOption[];
540
548
  isSubmitting?: boolean;
541
549
  onChange: (value: InputOption[]) => void;
542
550
  }
543
- declare const FieldSimpleCheckList: ({ input, value, onChange, isSubmitting }: Props$6) => react_jsx_runtime.JSX.Element;
551
+ declare const FieldSimpleCheckList: ({ input, value, onChange, isSubmitting }: Props$7) => react_jsx_runtime.JSX.Element;
544
552
 
545
553
  declare class SliderInput extends BaseInput {
546
554
  render(): JSX.Element;
547
555
  }
548
- interface Props$5 {
556
+ interface Props$6 {
549
557
  form: UseFormReturn;
550
558
  input: FieldProps;
551
559
  isSubmitting?: boolean;
552
560
  }
553
- declare const FieldSlider: ({ input, form, isSubmitting }: Props$5) => react_jsx_runtime.JSX.Element;
561
+ declare const FieldSlider: ({ input, form, isSubmitting }: Props$6) => react_jsx_runtime.JSX.Element;
554
562
 
555
563
  declare class SortableListInput<T> extends BaseInput {
556
564
  render(): JSX.Element;
@@ -559,7 +567,7 @@ declare class SortableListInput<T> extends BaseInput {
559
567
  declare class StringValueListInput extends BaseInput {
560
568
  render(): JSX.Element;
561
569
  }
562
- interface Props$4 {
570
+ interface Props$5 {
563
571
  form: UseFormReturn;
564
572
  input: FieldProps;
565
573
  isSubmitting?: boolean;
@@ -567,7 +575,7 @@ interface Props$4 {
567
575
  /**
568
576
  * 🧠 Lista editable de strings
569
577
  */
570
- declare const FieldStringValueList: ({ form, input, isSubmitting }: Props$4) => react_jsx_runtime.JSX.Element;
578
+ declare const FieldStringValueList: ({ form, input, isSubmitting }: Props$5) => react_jsx_runtime.JSX.Element;
571
579
 
572
580
  declare class SwitchInput extends BaseInput {
573
581
  render(): JSX.Element;
@@ -584,12 +592,12 @@ declare class TextAreaInput extends BaseInput {
584
592
  declare class TextInputGroup extends BaseInput {
585
593
  render(): JSX.Element;
586
594
  }
587
- interface Props$3 {
595
+ interface Props$4 {
588
596
  form: UseFormReturn;
589
597
  input: FieldProps;
590
598
  isSubmitting?: boolean;
591
599
  }
592
- declare const FieldTextGroup: ({ form, input, isSubmitting }: Props$3) => react_jsx_runtime.JSX.Element;
600
+ declare const FieldTextGroup: ({ form, input, isSubmitting }: Props$4) => react_jsx_runtime.JSX.Element;
593
601
  interface customInputGroup {
594
602
  value?: any;
595
603
  input: FieldProps<Record<string, any>, Record<string, any>>;
@@ -611,18 +619,28 @@ declare class TextInput extends BaseInput {
611
619
  declare class TimeInput extends BaseInput {
612
620
  render(): JSX.Element;
613
621
  }
614
- interface Props$2 {
622
+ interface Props$3 {
615
623
  form: UseFormReturn;
616
624
  input: FieldProps;
617
625
  isSubmitting?: boolean;
618
626
  }
619
- declare const FieldTimeInput: ({ form, input, isSubmitting }: Props$2) => react_jsx_runtime.JSX.Element;
627
+ declare const FieldTimeInput: ({ form, input, isSubmitting }: Props$3) => react_jsx_runtime.JSX.Element;
620
628
 
621
- interface Props$1 {
629
+ interface Props$2 {
622
630
  handleAddInput: (type: InputTypes, config?: InputSetup) => void;
623
631
  inputsTypes: InputTypes[];
624
632
  }
625
- declare const InputList: ({ handleAddInput, inputsTypes, }: Props$1) => react_jsx_runtime.JSX.Element;
633
+ declare const InputList: ({ handleAddInput, inputsTypes, }: Props$2) => react_jsx_runtime.JSX.Element;
634
+
635
+ interface Props$1 {
636
+ title?: string;
637
+ children?: React.ReactNode;
638
+ childrenHeader?: React.ReactNode;
639
+ isOpen?: boolean;
640
+ side?: 'left' | 'right' | 'top' | 'bottom';
641
+ className?: string;
642
+ }
643
+ declare const CustomSheet: ({ title, children, childrenHeader, isOpen, className, side }: Props$1) => react_jsx_runtime.JSX.Element;
626
644
 
627
645
  interface GenericFilterProps<T> {
628
646
  filters?: Array<FieldProps | FieldProps[]>;
@@ -913,4 +931,4 @@ declare function useFormPersist({ form, storageKey, storage, debounceMs, exclude
913
931
  clearSavedData: () => void;
914
932
  };
915
933
 
916
- export { Accordion, AccordionContent, AccordionGroupedSwitchInput, AccordionGroupedSwitches, AccordionItem, AccordionTrigger, Alert, AlertDescription, AlertTitle, Badge, BaseInput, type BtnConfig, Button, ButtonGroup, ButtonGroupInput, ButtonGroupSeparator, ButtonGroupText, Calendar, CalendarDayButton, Card, CardAction, CardContent, CardDescription, CardFooter, CardHeader, CardTitle, CheckListInput, Checkbox, CheckboxInput, ColorCnInput, type ColorCompProps, ColorInput, ComboboxInput, Command, CommandDialog, CommandEmpty, CommandGroup, CommandInput, CommandItem, CommandList, CommandSeparator, CommandShortcut, CurrencyInput, CustomAlert, CustomInputGroup, DateInput, DateTimeInput, Dialog, DialogClose, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogOverlay, DialogPortal, DialogTitle, DialogTrigger, DynamicForm, DynamicFormExample, Field, FieldButtonGroup, type FieldConfig, FieldContent, FieldCurrency, FieldDateTimeInput, FieldDescription, FieldError, FieldFileMultiUpload, FieldGroup, FieldKeyValueList, FieldLabel, FieldLegend, type FieldProps, FieldRepeater, FieldSeparator, FieldSet, FieldSimpleCheckList, FieldSlider, FieldStringValueList, FieldTextGroup, FieldTimeInput, FieldTitle, FileInput, FileMultiUploadInput, Form, FormControl, FormDescription, FormErrorsAlert, FormField, FormFieldsGrid, FormItem, FormLabel, FormMessage, type FormResp, GenericFilter, type GroupedOption, GroupedSwitchInput, GroupedSwitches, Input, InputFactory, InputGroup, InputGroupAddon, InputGroupButton, InputGroupInput, InputGroupText, InputGroupTextarea, InputList, InputOTP, InputOTPGroup, InputOTPSeparator, InputOTPSlot, type InputOption, type InputSetup, InputTypes, KeyValueListInput, Label, MultiSelectInput, NumberInput, OTPInput, Popover, PopoverAnchor, PopoverContent, PopoverTrigger, type Props, RadioGroup, RadioGroupInput, RadioGroupItem, RepeaterInput, RepeaterTabsInput, ResizableHandle, ResizablePanel, ResizablePanelGroup, ScrollArea, ScrollBar, Select, SelectContent, SelectGroup, SelectInput, SelectItem, SelectLabel, SelectScrollDownButton, SelectScrollUpButton, SelectSeparator, SelectTrigger, SelectValue, Separator, SimpleCheckListInput, Slider, SliderInput, SortableListInput, StringValueListInput, Switch, SwitchInput, Tabs, TabsContent, TabsList, TabsTrigger, TagInput, TextAreaInput, TextInput, TextInputGroup, TextInputType, Textarea, TimeInput, Toaster, Tooltip, TooltipContent, TooltipProvider, TooltipTrigger, WizardForm, badgeVariants, buttonGroupVariants, buttonVariants, cn, entitiesToGroupedOption, entitiesToInputOption, entityToGroupedOption, entityToInputOption, flattenFields, getDefaultValues, getDynamicSchema, getFieldLabel, handleOnChage, inputFieldComp, type inputNumberConfig, isValidField, mockFields, useDynamicForm, useFormField, useFormPersist, validationMessages };
934
+ export { Accordion, AccordionContent, AccordionGroupedSwitchInput, AccordionGroupedSwitches, AccordionItem, AccordionTrigger, Alert, AlertDescription, AlertTitle, Badge, BaseInput, type BtnConfig, Button, ButtonGroup, ButtonGroupInput, ButtonGroupSeparator, ButtonGroupText, Calendar, CalendarDayButton, Card, CardAction, CardContent, CardDescription, CardFooter, CardHeader, CardTitle, CheckListInput, Checkbox, CheckboxInput, ColorCnInput, type ColorCompProps, ColorInput, ComboboxInput, Command, CommandDialog, CommandEmpty, CommandGroup, CommandInput, CommandItem, CommandList, CommandSeparator, CommandShortcut, CurrencyInput, CustomAlert, CustomInputGroup, CustomSheet, DateInput, DateTimeInput, Dialog, DialogClose, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogOverlay, DialogPortal, DialogTitle, DialogTrigger, DynamicForm, DynamicFormExample, Field, FieldButtonGroup, type FieldConfig, FieldContent, FieldCurrency, FieldDateTimeInput, FieldDescription, FieldError, FieldFileMultiUpload, FieldGroup, FieldKeyValueList, FieldLabel, FieldLegend, type FieldProps, FieldRepeater, FieldSeparator, FieldSet, FieldSimpleCheckList, FieldSlider, FieldStringValueList, FieldTextGroup, FieldTimeInput, FieldTitle, type FileConfig, FileInput, FileMultiUploadInput, Form, FormControl, FormDescription, FormErrorsAlert, FormField, FormFieldsGrid, FormItem, FormLabel, FormMessage, type FormResp, GenericFilter, type GroupedOption, GroupedSwitchInput, GroupedSwitches, Input, InputFactory, InputGroup, InputGroupAddon, InputGroupButton, InputGroupInput, InputGroupText, InputGroupTextarea, InputList, InputOTP, InputOTPGroup, InputOTPSeparator, InputOTPSlot, type InputOption, type InputSetup, InputTypes, KeyValueListInput, Label, MultiSelectInput, NumberInput, OTPInput, Popover, PopoverAnchor, PopoverContent, PopoverTrigger, type Props, RadioGroup, RadioGroupInput, RadioGroupItem, RepeaterInput, RepeaterTabsInput, ResizableHandle, ResizablePanel, ResizablePanelGroup, ScrollArea, ScrollBar, Select, SelectContent, SelectGroup, SelectInput, SelectItem, SelectLabel, SelectScrollDownButton, SelectScrollUpButton, SelectSeparator, SelectTrigger, SelectValue, Separator, SimpleCheckListInput, Slider, SliderInput, SortableListInput, StringValueListInput, Switch, SwitchInput, Tabs, TabsContent, TabsList, TabsTrigger, TagInput, TextAreaInput, TextInput, TextInputGroup, TextInputType, Textarea, TimeInput, Toaster, Tooltip, TooltipContent, TooltipProvider, TooltipTrigger, WizardForm, badgeVariants, buttonGroupVariants, buttonVariants, cn, entitiesToGroupedOption, entitiesToInputOption, entityToGroupedOption, entityToInputOption, flattenFields, getDefaultValues, getDynamicSchema, getFieldLabel, handleOnChage, inputFieldComp, type inputNumberConfig, isValidField, mockFields, useDynamicForm, useFormField, useFormPersist, validationMessages };