Select

Un input que permite seleccionar una opción de una lista. La funcionalidad de este componente esta hecha usando la librería React-select ✅. Una librería para crear Selects accesibles y customizables.

Selecciona una opción

Utilización

import { SelectInput } from "firefly-components/select"; 

<SelectInput
    placeholder="Selecciona una opción"
    label="Selecciona un sabor:"
    name="select"
    id="firefly-select"
    options={options}
    value={form.select}
    handleChange={handleChange}
/>

Props

labelEs el texto que contendrá la etiqueta label asociada al select. Si no se especifica, no se agrega la etiqueta label al select.
idEs el id único que tendrá el select y servirá para asociar el input con la etiqueta label.
nameEl atributo name del select.
valuePermite especificar el valor del atributo value del select este valor debe coincidir con el valor value de alguna de las opciones del select. Mira las sección Opciones del select para saber más sobre agregar opciones al select.
handleChangeRecibe una función que se ejecuta cuando el usuario selecciona alguna opción del select.
errorStatusRecibe un string que permite cambiar el color del borde del select y dar retroalimentación al usuario de si hay errores de validación entre otros. Los valores disponibles son:
  • success
  • danger
  • warning
  • primary
  • purple
  • default
Para ver como luce cada opción revisa la sección Ejemplos. Si no se especifica, su valor por defecto es default.
validationEs texto que se puede colocar debajo del select para dar retroalimentación al usuario sobre validaciones u otras operaciones. El texto tendrá un color diferente dependiendo de la propiedad errorStatus.
placeholderEs el texto que se muestra por defecto cuando no hay ninguna opción seleccionada.
disabledRecibe un valor booleano que permite deshabilitar el select impidiendo que usuario pueda ingresar información.
loadingRecibe un valor booleano que permite mostrar un loader en el select para indicar que se están cargando datos de forma asíncrona.
optionsRecibe un array con las opciones del select. Para saber mas sobre como se usa esta prop mira la sección Opciones del select

Opciones del select

Para agregar opciones al select se usa la prop options. Esta prop recibe un array con las opciones. Un ejemplo de este array se muestra a continuación:

const options = [
    { value: "chocolate", label: "Chocolate" },
    { value: "strawberry", label: "Strawberry" },
    { value: "vanilla", label: "Vanilla" },
]

Como puede verse, el array esta compuesto de objetos que representan las opciones del select. Cada uno de los objetos tiene unas propiedades particulares que se explican a continuación:

valueActúa como un identificador único para la opción. Esta propiedad actúa igual que la propiedad value de una etiqueta option.
labelEs el texto de cada opción.