Librería de Formularios para Angular | ng-hub-ui-forms
Campos de formulario accesibles para Angular (input, textarea, slider, select, datepicker) con visualización automática de errores de control/grupo/form, formularios reactivos y variables CSS.
Ejemplos interactivos
Explora ejemplos en vivo que muestran cómo se comporta la librería en casos de uso habituales de Angular.
Campos de texto
El campo `hub-input` con vinculación a reactive forms y visualización de errores automática y sin cableado. Texto, email, contraseña, número y contador, además de etiquetas flotantes y addons de input-group.
Campos de texto y errores automáticos
Campos de contraseña: mostrar/ocultar, medidor de fortaleza y autocompletado
Número, contador, color, interruptor, casilla
Grupos de entrada, archivo y etiqueta flotante
Iconos, botones y campos acoplados a un campo
Máscaras de patrón (tarjeta, IBAN, teléfono, fecha)
Entrada de código de un solo uso (OTP)
Buscador con icono y typeahead
Debounced term (after 300 ms): —
- Angular
- React
- Vue
- Svelte
- Solid
- Qwik
- Preact
- Lit
Multilínea y rango
Textareas que crecen automáticamente con contadores de caracteres, y sliders de rango de un solo control o de doble control.
Área de texto con contador y autoajuste
Slider y rango de doble control
Estilo del slider (gradient y flush)
Selección
El motor ng-select bifurcado y tematizado con los tokens de hub, además de los formatos button, radio y checkbox que renderizan su propia UI para el mismo valor.
Control segmentado
Segmented: plantilla de opción personalizada
Selección y selección múltiple
Opciones agrupadas
Typeahead y búsqueda
Select: typeahead asíncrono
Plantillas de opción y etiqueta
Botones, radio y formatos de casilla
Select dentro de un modal
Addons y acciones acopladas
Selección de fechas
Un selector de fecha o rango construido desde cero sobre Date nativo + CDK Overlay, con límites, navegación por teclado e i18n completa.
Selector de hora — una hora del día
Datepicker y rango
Datepicker con hora
Granularidad: del año al segundo
Formatos de entrada, valor y visualización
Un día con rango de horas
Subida de ficheros
Un campo de ficheros con arrastrar y soltar, pegado desde el portapapeles, restricciones de tipo y tamaño, previsualización y progreso de subida opcional por fichero.
Fichero único y validación
Arrastrar y soltar, límites y previsualización
Progreso de subida, cancelar y reintentar
Contenedores y validación
`form[hubForm]`, `hub-fieldset` y `hub-legend` muestran automáticamente los errores a nivel de grupo y de formulario (entre campos), del mismo modo que los campos muestran los errores de control.
Contenedores y errores entre campos
De derecha a izquierda
Todos los campos se voltean con `dir="rtl"`. Casi todo sale gratis —las primitivas están escritas con propiedades lógicas de CSS—, pero el slider, el switch y el control segmentado necesitaron trato aparte, porque su geometría solo es CSS a medias.
De derecha a izquierda — todos los campos espejados