FormulariosCampos
Selección avanzada
Comboboxes (locales y async), multi-select, transfer y árboles.
Todos los campos comparten el contrato base (control, name, label, description, placeholder, disabled, required, tooltip, className). Aquí se listan solo las props adicionales de cada campo.
FormComboboxField
Combobox con búsqueda local sobre opciones estáticas.
| Prop | Tipo | Requerida |
|---|---|---|
options | SelectOption[] | sí |
emptyMessage | string | — |
searchPlaceholder | string | — |
triggerClassName | string | — |
contentClassName | string | — |
FormSearchableCombobox
Combobox async: busca contra una server action con debounce y paginación.
| Prop | Tipo | Requerida |
|---|---|---|
searchFn | SearchableComboboxProps['searchFn'] | sí |
searchPlaceholder | string | — |
emptyMessage | string | — |
clearable | boolean | — |
pageSize | number | — |
FormMultiSelectField
Selección múltiple con badges removibles y búsqueda.
| Prop | Tipo | Requerida |
|---|---|---|
options | SelectOption[] | sí |
emptyMessage | string | — |
searchPlaceholder | string | — |
maxItems | number | — |
triggerClassName | string | — |
contentClassName | string | — |
badgeVariant | 'default' | 'secondary' | 'destructive' | 'outline' | — |
FormAutoCompleteField
Autocompletado con sugerencias async y mínimo de caracteres.
| Prop | Tipo | Requerida |
|---|---|---|
suggestions | SelectOption[] | — |
onSearch | ((query: string) => void | Promise<void>) | — |
isLoading | boolean | — |
minChars | number | — |
debounceMs | number | — |
allowFreeText | boolean | — |
showIcon | boolean | — |
labels | { | — |
inputClassName | string | — |
highlightMatch | boolean | — |
FormTransferField
Doble lista (disponibles ↔ seleccionados) con búsqueda y mover en bloque.
FormTreeSelectField
Selección jerárquica sobre TreeNode[] con expansión y selección de ramas.